PMFlow/frontend/src/components/ThemeInit.tsx

12 lines
420 B
TypeScript

import { useEffect } from "react";
export function ThemeInit() {
useEffect(() => {
const stored = localStorage.getItem("pmflow_theme") as "light" | "dark" | null;
const theme = stored ?? (window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light");
document.documentElement.classList.remove("light", "dark");
document.documentElement.classList.add(theme);
}, []);
return null;
}