feat(ui): add workspace customization and simplify navigation

This commit is contained in:
poyrazavsever
2026-07-17 12:47:54 +03:00
parent b04031a3e3
commit dafd9eb344
24 changed files with 855 additions and 224 deletions
+27
View File
@@ -0,0 +1,27 @@
"use client";
import { useEffect } from "react";
import {
COLOR_MODE_COOKIE,
COLOR_MODE_COOKIE_MAX_AGE,
type ColorMode,
} from "@/lib/color-mode";
export function ColorModeSync({ colorMode }: { colorMode: ColorMode }) {
useEffect(() => {
applyColorMode(colorMode);
}, [colorMode]);
return null;
}
export function applyColorMode(colorMode: ColorMode): void {
const root = document.documentElement;
const prefersDark = window.matchMedia("(prefers-color-scheme: dark)").matches;
root.dataset.colorMode = colorMode;
root.classList.toggle("dark", colorMode === "dark" || (colorMode === "system" && prefersDark));
const secure = window.location.protocol === "https:" ? "; Secure" : "";
document.cookie = `${COLOR_MODE_COOKIE}=${colorMode}; Path=/; Max-Age=${COLOR_MODE_COOKIE_MAX_AGE}; SameSite=Lax${secure}`;
}