Files
ttstd-infinite-canvas/web/src/stores/use-theme-store.ts

20 lines
443 B
TypeScript

import { create } from "zustand";
import { persist } from "zustand/middleware";
export type ThemeName = "light" | "dark";
type ThemeStore = {
theme: ThemeName;
setTheme: (theme: ThemeName) => void;
};
export const useThemeStore = create<ThemeStore>()(
persist(
(set) => ({
theme: "dark",
setTheme: (theme) => set({ theme }),
}),
{ name: "infinite-canvas:theme_store" },
),
);