mirror of
https://github.com/Sonny93/my-links.git
synced 2025-12-08 14:43:24 +00:00
26 lines
665 B
TypeScript
26 lines
665 B
TypeScript
import { ActionIcon, useMantineColorScheme } from '@mantine/core';
|
|
import { TbMoonStars, TbSun } from 'react-icons/tb';
|
|
import { makeRequest } from '~/lib/request';
|
|
|
|
export function ThemeSwitcher() {
|
|
const { colorScheme, toggleColorScheme } = useMantineColorScheme();
|
|
const handleThemeChange = () => {
|
|
toggleColorScheme();
|
|
makeRequest({
|
|
url: '/user/theme',
|
|
method: 'POST',
|
|
body: { theme: colorScheme === 'dark' ? 'light' : 'dark' },
|
|
});
|
|
};
|
|
return (
|
|
<ActionIcon
|
|
variant="light"
|
|
aria-label="Toggle color scheme"
|
|
onClick={handleThemeChange}
|
|
size="lg"
|
|
>
|
|
{colorScheme === 'dark' ? <TbSun /> : <TbMoonStars />}
|
|
</ActionIcon>
|
|
);
|
|
}
|