import { createStore } from 'zustand/vanilla' import { persist } from 'zustand/middleware' import { idbStorage } from './middleware/persistence.js' export const store = createStore( persist( (set, get) => ({ _hydrated: false, user: null, items: [], route: 'home', setUser: (user) => set({ user }), addItem: (item) => set(s => ({ items: [...s.items, item] })), removeItem: (id) => set(s => ({ items: s.items.filter(i => i.id !== id) })), navigate: (route) => set({ route }), }), { name: 'app-store', storage: idbStorage, onRehydrateStorage: () => (state) => { if (state) state._hydrated = true }, } ) )