2023-02-08 09:15:47 -05:00
|
|
|
import React, { useState, useContext } from 'react';
|
|
|
|
|
import DarkModeIcon from '../svg/DarkModeIcon';
|
2023-02-08 10:49:38 -05:00
|
|
|
import LightModeIcon from '../svg/LightModeIcon';
|
2023-02-08 09:15:47 -05:00
|
|
|
import { ThemeContext } from '~/hooks/ThemeContext';
|
|
|
|
|
|
|
|
|
|
export default function DarkMode() {
|
|
|
|
|
const { theme, setTheme } = useContext(ThemeContext);
|
|
|
|
|
|
|
|
|
|
const clickHandler = () => setTheme(theme === 'dark' ? 'light' : 'dark');
|
2023-02-08 10:49:38 -05:00
|
|
|
const mode = theme === 'dark' ? 'Light mode' : 'Dark mode';
|
2023-02-08 09:15:47 -05:00
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<a
|
|
|
|
|
className="flex cursor-pointer items-center gap-3 rounded-md py-3 px-3 text-sm text-white transition-colors duration-200 hover:bg-gray-500/10"
|
|
|
|
|
onClick={clickHandler}
|
|
|
|
|
>
|
2023-02-08 10:49:38 -05:00
|
|
|
{theme === 'dark' ? <LightModeIcon /> : <DarkModeIcon />}
|
|
|
|
|
{mode}
|
2023-02-08 09:15:47 -05:00
|
|
|
</a>
|
|
|
|
|
);
|
|
|
|
|
}
|