From 7514a46d366ce0fd6f419d3c3f0c39108bb8e709 Mon Sep 17 00:00:00 2001 From: Oliver Bryan <04oliverbryan@gmail.com> Date: Wed, 21 Jan 2026 12:19:29 +0000 Subject: [PATCH] moved ThemeToggle to account settings --- .../src/components/account-dialog.tsx | 72 ++++++++++--------- .../frontend/src/components/theme-toggle.tsx | 21 +++--- packages/frontend/src/pages/App.tsx | 2 - 3 files changed, 52 insertions(+), 43 deletions(-) diff --git a/packages/frontend/src/components/account-dialog.tsx b/packages/frontend/src/components/account-dialog.tsx index e66d7d6..3cd5b46 100644 --- a/packages/frontend/src/components/account-dialog.tsx +++ b/packages/frontend/src/components/account-dialog.tsx @@ -12,6 +12,8 @@ import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@ import { UploadAvatar } from "@/components/upload-avatar"; import { useUpdateUser } from "@/lib/query/hooks"; import { parseError } from "@/lib/server"; +import { cn } from "@/lib/utils"; +import ThemeToggle from "./theme-toggle"; function AccountDialog({ trigger }: { trigger?: ReactNode }) { const { user: currentUser, setUser } = useAuthenticatedSession(); @@ -82,7 +84,7 @@ function AccountDialog({ trigger }: { trigger?: ReactNode }) { )} - + Account @@ -122,41 +124,47 @@ function AccountDialog({ trigger }: { trigger?: ReactNode }) { /> -
- - +
+
+ + +
+
+ + +
{error !== "" && } -
+
diff --git a/packages/frontend/src/components/theme-toggle.tsx b/packages/frontend/src/components/theme-toggle.tsx index 9847db7..f365d0b 100644 --- a/packages/frontend/src/components/theme-toggle.tsx +++ b/packages/frontend/src/components/theme-toggle.tsx @@ -3,7 +3,7 @@ import Icon from "@/components/ui/icon"; import { IconButton } from "@/components/ui/icon-button"; import { cn } from "@/lib/utils"; -function ThemeToggle({ className }: { className?: string }) { +function ThemeToggle({ withText, className }: { withText?: boolean; className?: string }) { const { theme, setTheme } = useTheme(); const resolvedTheme = theme === "system" @@ -14,14 +14,17 @@ function ThemeToggle({ className }: { className?: string }) { const isDark = resolvedTheme === "dark"; return ( - setTheme(isDark ? "light" : "dark")} - title={isDark ? "Switch to light mode" : "Switch to dark mode"} - > - {isDark ? : } - +
+ setTheme(isDark ? "light" : "dark")} + title={isDark ? "Switch to light mode" : "Switch to dark mode"} + > + {isDark ? : } + + {withText && (isDark ? "Dark Mode" : "Light Mode")} +
); } diff --git a/packages/frontend/src/pages/App.tsx b/packages/frontend/src/pages/App.tsx index 55198c2..7a7ec65 100644 --- a/packages/frontend/src/pages/App.tsx +++ b/packages/frontend/src/pages/App.tsx @@ -15,7 +15,6 @@ import { useSelection } from "@/components/selection-provider"; import { ServerConfigurationDialog } from "@/components/server-configuration-dialog"; import { useAuthenticatedSession } from "@/components/session-provider"; import SmallUserDisplay from "@/components/small-user-display"; -import ThemeToggle from "@/components/theme-toggle"; import { Button } from "@/components/ui/button"; import { DropdownMenu, @@ -217,7 +216,6 @@ export default function App() { )}
-