From 5c6d3a94c8503e09c1104af91e6dc701727b31ac Mon Sep 17 00:00:00 2001 From: cond0r <1243434+cond0r@users.noreply.github.com> Date: Wed, 30 Nov 2022 00:29:08 +0200 Subject: [PATCH] Changes --- site/components/ui/ThemeSwitcher/ThemeIcon.tsx | 2 +- .../ui/ThemeSwitcher/ThemeSwitcher.tsx | 16 +++++----------- site/lib/hooks/useToggleTheme.ts | 10 ++++++++++ 3 files changed, 16 insertions(+), 12 deletions(-) create mode 100644 site/lib/hooks/useToggleTheme.ts 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 = () => { >