pl-fe: use more specific zustand selectors

Signed-off-by: nicole mikołajczyk <git@mkljczk.pl>
This commit is contained in:
nicole mikołajczyk
2025-10-22 21:42:11 +02:00
parent 80654146a2
commit ea86246647
93 changed files with 398 additions and 349 deletions

View File

@ -2,21 +2,29 @@ import { create } from 'zustand';
type State = {
isDropdownMenuOpen: boolean;
isSidebarOpen: boolean;
actions: {
openDropdownMenu: () => void;
closeDropdownMenu: () => void;
isSidebarOpen: boolean;
openSidebar: () => void;
closeSidebar: () => void;
};
}
const useUiStore = create<State>((set) => ({
isDropdownMenuOpen: false,
openDropdownMenu: () => set({ isDropdownMenuOpen: true }),
closeDropdownMenu: () => set({ isDropdownMenuOpen: false }),
isSidebarOpen: false,
openSidebar: () => set({ isSidebarOpen: true }),
closeSidebar: () => set({ isSidebarOpen: false }),
actions: {
openDropdownMenu: () => set({ isDropdownMenuOpen: true }),
closeDropdownMenu: () => set({ isDropdownMenuOpen: false }),
openSidebar: () => set({ isSidebarOpen: true }),
closeSidebar: () => set({ isSidebarOpen: false }),
},
}));
export { useUiStore };
const useIsDropdownMenuOpen = () => useUiStore((state) => state.isDropdownMenuOpen);
const useIsSidebarOpen = () => useUiStore((state) => state.isSidebarOpen);
const useUiStoreActions = () => useUiStore((state) => state.actions);
export { useUiStore, useUiStoreActions, useIsDropdownMenuOpen, useIsSidebarOpen };