mirror of
https://github.com/KivotosRailway/website.git
synced 2026-11-03 11:06:32 +09:00
21 lines
976 B
JavaScript
21 lines
976 B
JavaScript
(() => {
|
|
const isTheme = (value) => value === "light" || value === "system" || value === "dark";
|
|
let preference = "system";
|
|
try {
|
|
const cookieTheme = document.cookie.split(";").map((entry) => entry.trim()).find((entry) => entry.startsWith("kr-theme="))?.slice("kr-theme=".length);
|
|
if (isTheme(cookieTheme)) preference = cookieTheme;
|
|
else {
|
|
try {
|
|
const saved = localStorage.getItem("kr-theme");
|
|
if (isTheme(saved)) preference = saved;
|
|
} catch {}
|
|
}
|
|
} catch {}
|
|
const theme = preference === "system" ? (matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light") : preference;
|
|
document.documentElement.dataset.theme = theme;
|
|
document.documentElement.style.colorScheme = theme;
|
|
const color = theme === "dark" ? "#10151d" : "#ffffff";
|
|
document.documentElement.style.backgroundColor = color;
|
|
document.querySelectorAll('meta[name="theme-color"]').forEach((meta) => meta.setAttribute("content", color));
|
|
})();
|