From 4246c94ac5a5b1c9bdea4a49bac0e5382ee4a0ce Mon Sep 17 00:00:00 2001 From: Brian Kirkpatrick Date: Wed, 4 Mar 2026 18:14:40 -0800 Subject: [PATCH] fixed missing del, hydration flag, and duplicate storage --- store/index.js | 49 ++++++++++--------------------------------------- 1 file changed, 10 insertions(+), 39 deletions(-) diff --git a/store/index.js b/store/index.js index 86bedc5..3328f31 100644 --- a/store/index.js +++ b/store/index.js @@ -1,42 +1,13 @@ import { createStore } from 'zustand/vanilla' -import { persist, createJSONStorage } from 'zustand/middleware' -import { get, set, del } from 'idb-keyval' -const storage = createJSONStorage(() => ({ - getItem: async (name) => { - const value = await get(name) - return value ?? null - }, - setItem: async (name, value) => { - await set(name, value) - }, - removeItem: async (name) => { - await del(name) - }, +export const store = createStore((set, get) => ({ + user: null, + items: [], + route: 'home', + + // Actions + 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 }), })) - -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, - onRehydrateStorage: () => { - return (state, error) => { - if (!error) { - store.setState({ _hydrated: true }) - } - } - }, - } - ) -)