Merge branch 'dev' into new-profile-view

This commit is contained in:
Ajay Bura 2025-08-08 15:20:34 +05:30
commit ad3916b70d
42 changed files with 1719 additions and 95 deletions

View file

@ -0,0 +1,7 @@
import { atom } from 'jotai';
export type CreateRoomModalState = {
spaceId?: string;
};
export const createRoomModalAtom = atom<CreateRoomModalState | undefined>(undefined);

View file

@ -0,0 +1,7 @@
import { atom } from 'jotai';
export type CreateSpaceModalState = {
spaceId?: string;
};
export const createSpaceModalAtom = atom<CreateSpaceModalState | undefined>(undefined);

View file

@ -0,0 +1,34 @@
import { useCallback } from 'react';
import { useAtomValue, useSetAtom } from 'jotai';
import { createRoomModalAtom, CreateRoomModalState } from '../createRoomModal';
export const useCreateRoomModalState = (): CreateRoomModalState | undefined => {
const data = useAtomValue(createRoomModalAtom);
return data;
};
type CloseCallback = () => void;
export const useCloseCreateRoomModal = (): CloseCallback => {
const setSettings = useSetAtom(createRoomModalAtom);
const close: CloseCallback = useCallback(() => {
setSettings(undefined);
}, [setSettings]);
return close;
};
type OpenCallback = (space?: string) => void;
export const useOpenCreateRoomModal = (): OpenCallback => {
const setSettings = useSetAtom(createRoomModalAtom);
const open: OpenCallback = useCallback(
(spaceId) => {
setSettings({ spaceId });
},
[setSettings]
);
return open;
};

View file

@ -0,0 +1,34 @@
import { useCallback } from 'react';
import { useAtomValue, useSetAtom } from 'jotai';
import { createSpaceModalAtom, CreateSpaceModalState } from '../createSpaceModal';
export const useCreateSpaceModalState = (): CreateSpaceModalState | undefined => {
const data = useAtomValue(createSpaceModalAtom);
return data;
};
type CloseCallback = () => void;
export const useCloseCreateSpaceModal = (): CloseCallback => {
const setSettings = useSetAtom(createSpaceModalAtom);
const close: CloseCallback = useCallback(() => {
setSettings(undefined);
}, [setSettings]);
return close;
};
type OpenCallback = (space?: string) => void;
export const useOpenCreateSpaceModal = (): OpenCallback => {
const setSettings = useSetAtom(createSpaceModalAtom);
const open: OpenCallback = useCallback(
(spaceId) => {
setSettings({ spaceId });
},
[setSettings]
);
return open;
};