import { useTheme } from "next-themes"; import { useEffect, useState } from "react"; import { siteConfig } from "../config/siteConfig"; export default function ThemeSelector() { const [mounted, setMounted] = useState(false); const { theme, setTheme } = useTheme(); useEffect(() => setMounted(true), []); /** Avoid Hydration Mismatch * https://github.com/pacocoursey/next-themes#avoid-hydration-mismatch */ if (!mounted) return null; if (!siteConfig.theme.default) return null; return ( ); }