diff --git a/frontend/src/stores/uiStore.ts b/frontend/src/stores/uiStore.ts new file mode 100644 index 0000000..333132d --- /dev/null +++ b/frontend/src/stores/uiStore.ts @@ -0,0 +1,24 @@ +// UI State Store +import { create } from 'zustand'; +import { persist } from 'zustand/middleware'; + +interface UiState { + sidebarCollapsed: boolean; + toggleSidebar: () => void; + setSidebarCollapsed: (collapsed: boolean) => void; +} + +export const useUiStore = create()( + persist( + (set) => ({ + sidebarCollapsed: false, + toggleSidebar: () => + set((state) => ({ sidebarCollapsed: !state.sidebarCollapsed })), + setSidebarCollapsed: (collapsed) => + set(() => ({ sidebarCollapsed: collapsed })), + }), + { + name: 'ui-storage', + } + ) +);