From 498d909d062ef3332fbbb068ac94b2df5d7c4003 Mon Sep 17 00:00:00 2001 From: k4rli Date: Sat, 24 Jan 2026 14:45:12 +0200 Subject: [PATCH] update --- .../src/pages/home/components/PageHeader.tsx | 22 +++++++++++++++++-- web/frontend/src/theme/styles.css | 14 +++++++++--- 2 files changed, 31 insertions(+), 5 deletions(-) diff --git a/web/frontend/src/pages/home/components/PageHeader.tsx b/web/frontend/src/pages/home/components/PageHeader.tsx index 8287ff9..c29ec64 100644 --- a/web/frontend/src/pages/home/components/PageHeader.tsx +++ b/web/frontend/src/pages/home/components/PageHeader.tsx @@ -1,10 +1,11 @@ -import { Logout } from "@carbon/icons-react"; +import { Light, Logout, Asleep } from "@carbon/icons-react"; import { TextUtil } from "@greatness/util"; import { useCallback } from "react"; import { useSessionContext } from "@/components/SessionContext"; import createUseStyles from "@/theme/createUseStyles"; import { cn } from "@/util/cn"; +import { useDarkMode } from "@/util/useDarkMode"; const useStyles = createUseStyles(({ sizes, media }) => ({ closeButton: { @@ -12,6 +13,10 @@ const useStyles = createUseStyles(({ sizes, media }) => ({ height: 64, marginLeft: "auto", }, + themeButton: { + border: "none", + height: 64, + }, pageHeader: { margin: "0 auto", maxWidth: sizes.maxWidthValue, @@ -39,6 +44,7 @@ export default function PageHeader({ }) { const classes = useStyles(); const { isAuthenticated, logout } = useSessionContext(); + const { isDarkMode, toggleDarkMode } = useDarkMode(); const handleClose = useCallback( () => (isAuthenticated ? logout() : window.close()), @@ -53,10 +59,22 @@ export default function PageHeader({

{title!}

)} + + + diff --git a/web/frontend/src/theme/styles.css b/web/frontend/src/theme/styles.css index 4c8a8cd..588ad8a 100644 --- a/web/frontend/src/theme/styles.css +++ b/web/frontend/src/theme/styles.css @@ -23,8 +23,8 @@ body { font-style: normal; font-weight: 600; font-size: 15px; - background: rgba(0, 0, 0, 1); - color: rgba(255, 255, 255, 1); + background: var(--body-bg, rgba(255, 255, 255, 1)); + color: var(--body-text, rgba(0, 0, 0, 1)); word-break: break-word; word-wrap: break-word; @@ -93,6 +93,10 @@ body::-webkit-scrollbar-thumb:hover { } :root { + /* Light mode body colors */ + --body-bg: rgba(255, 255, 255, 1); + --body-text: rgba(0, 0, 0, 1); + --color-white: rgba(255, 255, 255, 1); --color-whiteOpacity: rgba(255, 255, 255, 0.3); @@ -192,7 +196,7 @@ h6 { font-style: normal; font-weight: bold; letter-spacing: var(--font-letterSpacing-m); - color: var(--color-white); + color: var(--body-text); } h1 { @@ -284,6 +288,10 @@ input:-moz-autofill { .dark { + /* Dark mode body colors */ + --body-bg: rgba(0, 0, 0, 1); + --body-text: rgba(255, 255, 255, 1); + --background: oklch(0.145 0 0); --foreground: oklch(0.985 0 0); --card: oklch(0.205 0 0);