diff --git a/site/components/ui/ThemeSwitcher/ThemeIcon.tsx b/site/components/ui/ThemeSwitcher/ThemeIcon.tsx index ae998602c..c65442a74 100644 --- a/site/components/ui/ThemeSwitcher/ThemeIcon.tsx +++ b/site/components/ui/ThemeSwitcher/ThemeIcon.tsx @@ -1,7 +1,7 @@ import { Moon, Sun, System } from '@components/icons' interface ThemeIconProps { - theme: string + theme?: string width: number height: number } diff --git a/site/components/ui/ThemeSwitcher/ThemeSwitcher.tsx b/site/components/ui/ThemeSwitcher/ThemeSwitcher.tsx index c754d1242..3056a719b 100644 --- a/site/components/ui/ThemeSwitcher/ThemeSwitcher.tsx +++ b/site/components/ui/ThemeSwitcher/ThemeSwitcher.tsx @@ -1,19 +1,13 @@ -import { useEffect, useState } from 'react' -import { useTheme } from 'next-themes' +import { useState } from 'react' import { ChevronRight, Cross } from '@components/icons' - +import { useToggleTheme } from '@lib/hooks/useToggleTheme' import cn from 'clsx' import ClickOutside from '@lib/click-outside' import ThemeIcon from './ThemeIcon' const ThemeSwitcher = () => { - const [mounted, setMounted] = useState(false) const [display, setDisplay] = useState(false) - const { theme, themes, setTheme } = useTheme() - - useEffect(() => setMounted(true), []) - - if (!mounted) return null + const { theme, themes, setTheme } = useToggleTheme() return ( setDisplay(false)}> @@ -24,12 +18,12 @@ const ThemeSwitcher = () => { >