import { useState, useEffect, useCallback } from "react"; import { ThemeContext } from "./ThemeContext"; export function ThemeProvider({ children }) { const [dark, setDark] = useState(() => { const stored = localStorage.getItem("signal-theme"); if (stored) return stored === "dark"; return true; }); useEffect(() => { if (dark) { document.documentElement.classList.add("dark"); } else { document.documentElement.classList.remove("dark"); } localStorage.setItem("signal-theme", dark ? "dark" : "light"); }, [dark]); const toggle = useCallback(() => setDark((prev) => !prev), []); return ( {children} ); }