- filterStore.setFilter({ mineOnly: value !== "ALL" })}>
+ viewStore.setFilter({ mineOnly: value !== "ALL" })}
+ >
All
Mine
diff --git a/web/src/stores/v1/filter.ts b/web/src/stores/v1/filter.ts
index cc6b967..36dbd86 100644
--- a/web/src/stores/v1/filter.ts
+++ b/web/src/stores/v1/filter.ts
@@ -1,20 +1,28 @@
import { create } from "zustand";
+import { persist } from "zustand/middleware";
export interface Filter {
tag?: string;
mineOnly?: boolean;
}
-interface FilterState {
+interface ViewState {
filter: Filter;
setFilter: (filter: Partial) => void;
}
-const useFilterStore = create()((set, get) => ({
- filter: {},
- setFilter: (filter: Partial) => {
- set({ filter: { ...get().filter, ...filter } });
- },
-}));
+const useViewStore = create()(
+ persist(
+ (set, get) => ({
+ filter: {},
+ setFilter: (filter: Partial) => {
+ set({ filter: { ...get().filter, ...filter } });
+ },
+ }),
+ {
+ name: "view",
+ }
+ )
+);
-export default useFilterStore;
+export default useViewStore;