'use client'; import * as React from 'react'; import { ThemeProvider as NextThemesProvider } from 'next-themes'; import { Moon, Sun } from 'lucide-react'; import { useTheme } from 'next-themes'; import { Button } from '@/components/ui/button'; export const ThemeProvider = ({ children, ...props }: React.ComponentProps) => { const [mounted, setMounted] = React.useState(false); React.useEffect(() => { setMounted(true); }, []); if (!mounted) return null; return {children}; }; export const ThemeToggle = () => { const { setTheme, resolvedTheme } = useTheme(); const [mounted, setMounted] = React.useState(false); React.useEffect(() => { setMounted(true); }, []); if (!mounted) { return ( ); } const toggleTheme = () => { if (resolvedTheme === 'dark') setTheme('light'); else setTheme('dark'); }; return ( ); };