feat(confidence-engine): add dark mode

This commit is contained in:
2026-09-08 11:04:49 +01:00
parent 24d9e466f6
commit 1c17452bee
5 changed files with 184 additions and 1 deletions
+22
View File
@@ -0,0 +1,22 @@
export const THEME_STORAGE_KEY = "confidence-engine-theme";
export function resolveTheme({ savedTheme, systemPrefersDark = false } = {}) {
if (savedTheme === "light" || savedTheme === "dark") return savedTheme;
return systemPrefersDark ? "dark" : "light";
}
export function toggleTheme(theme) {
return theme === "dark" ? "light" : "dark";
}
export function readThemePreference(storage) {
try {
return storage?.getItem(THEME_STORAGE_KEY) ?? null;
} catch {
return null;
}
}
export function saveThemePreference(theme, storage) {
storage?.setItem(THEME_STORAGE_KEY, theme);
}