el.xwx.moe/pages/settings/appearance.tsx

40 lines
1.6 KiB
TypeScript
Raw Normal View History

import SettingsLayout from "@/layouts/SettingsLayout";
2023-10-18 16:50:55 -05:00
import { useTheme } from "next-themes";
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
import { faSun, faMoon } from "@fortawesome/free-solid-svg-icons";
2023-10-18 23:09:28 -05:00
export default function Appearance() {
2023-10-18 16:50:55 -05:00
const { theme, setTheme } = useTheme();
return (
<SettingsLayout>
<p className="mb-3 text-sm">Select Theme</p>
2023-10-18 16:50:55 -05:00
<div className="flex gap-3 w-full">
<div
className={`w-full text-center outline-solid outline-sky-100 outline dark:outline-neutral-700 h-40 duration-100 rounded-md flex items-center justify-center cursor-pointer select-none bg-black ${
theme === "dark"
? "dark:outline-sky-500 text-sky-500"
: "text-white"
}`}
2023-10-18 16:50:55 -05:00
onClick={() => setTheme("dark")}
>
<FontAwesomeIcon icon={faMoon} className="w-1/2 h-1/2" />
<p className="text-2xl">Dark Theme</p>
2023-10-18 16:50:55 -05:00
{/* <hr className="my-3 outline-1 outline-sky-100 dark:outline-neutral-700" /> */}
2023-10-18 16:50:55 -05:00
</div>
<div
className={`w-full text-center outline-solid outline-sky-100 outline dark:outline-neutral-700 h-40 duration-100 rounded-md flex items-center justify-center cursor-pointer select-none bg-white ${
theme === "light" ? "outline-sky-500 text-sky-500" : "text-black"
}`}
2023-10-18 16:50:55 -05:00
onClick={() => setTheme("light")}
>
<FontAwesomeIcon icon={faSun} className="w-1/2 h-1/2" />
<p className="text-2xl">Light Theme</p>
{/* <hr className="my-3 outline-1 outline-sky-100 dark:outline-neutral-700" /> */}
2023-10-18 16:50:55 -05:00
</div>
</div>
</SettingsLayout>
);
}