19 lines
569 B
TypeScript
19 lines
569 B
TypeScript
import { useT } from "../i18n";
|
|||
|
|
import { useTheme } from "../lib/theme";
|
||
|
|
|
||
|
|
// Quick light/dark flip (the full light/dark/system selector lives in Settings).
|
||
|
|
export function ThemeToggle() {
|
||
|
|
const t = useT();
|
||
|
|
const { resolved, setTheme } = useTheme();
|
||
|
|
return (
|
||
|
|
<button
|
||
|
|
className="rounded p-2 text-app-muted hover:bg-app-hover hover:text-app-fg"
|
||
|
|
title={t("theme.toggle")}
|
||
|
|
aria-label={t("theme.toggle")}
|
||
|
|
onClick={() => setTheme(resolved === "dark" ? "light" : "dark")}
|
||
|
|
>
|
||
|
|
{resolved === "dark" ? "☀" : "☾"}
|
||
|
|
</button>
|
||
|
|
);
|
||
|
|
}
|