mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-09-29 22:06:38 +08:00
21 lines
634 B
TypeScript
21 lines
634 B
TypeScript
import { create } from 'zustand';
|
|
|
|
interface AppShellState {
|
|
isSidebarCollapsed: boolean;
|
|
isMobileSidebarOpen: boolean;
|
|
toggleSidebar: () => void;
|
|
setSidebarCollapsed: (value: boolean) => void;
|
|
setMobileSidebarOpen: (value: boolean) => void;
|
|
}
|
|
|
|
export const useAppShellStore = create<AppShellState>((set) => ({
|
|
isSidebarCollapsed: false,
|
|
isMobileSidebarOpen: false,
|
|
toggleSidebar: () =>
|
|
set((state) => ({
|
|
isSidebarCollapsed: !state.isSidebarCollapsed,
|
|
})),
|
|
setSidebarCollapsed: (value) => set({ isSidebarCollapsed: value }),
|
|
setMobileSidebarOpen: (value) => set({ isMobileSidebarOpen: value }),
|
|
}));
|