"use client"; import * as React from "react"; import { Moon, Sun } from "lucide-react"; import { useTheme } from "next-themes"; import { motion } from "framer-motion"; export function ThemeToggle() { const { theme, setTheme } = useTheme(); const [mounted, setMounted] = React.useState(false); React.useEffect(() => { setMounted(true); }, []); if (!mounted) { return
; } return ( setTheme(theme === "dark" ? "light" : "dark")} className="p-2 rounded-full bg-stone-100 dark:bg-stone-800 text-stone-800 dark:text-stone-100 hover:bg-stone-200 dark:hover:bg-stone-700 transition-colors border border-stone-200 dark:border-stone-700 shadow-sm" aria-label="Toggle theme" > {theme === "dark" ? ( ) : ( )} ); }