This commit is contained in:
alorig
2025-11-20 09:34:54 +05:00
parent 09232aa1c0
commit 8489b2ea48
5 changed files with 751 additions and 386 deletions

View File

@@ -0,0 +1,33 @@
/**
* Onboarding Store (Zustand)
* Manages welcome/guide screen state and dismissal
*/
import { create } from 'zustand';
import { persist } from 'zustand/middleware';
interface OnboardingState {
isGuideDismissed: boolean;
isGuideVisible: boolean;
// Actions
dismissGuide: () => void;
showGuide: () => void;
toggleGuide: () => void;
}
export const useOnboardingStore = create<OnboardingState>()(
persist<OnboardingState>(
(set) => ({
isGuideDismissed: false,
isGuideVisible: false,
dismissGuide: () => set({ isGuideDismissed: true, isGuideVisible: false }),
showGuide: () => set({ isGuideVisible: true }),
toggleGuide: () => set((state) => ({ isGuideVisible: !state.isGuideVisible })),
}),
{
name: 'onboarding-storage',
}
)
);