"use client" import * as React from "react" import { Moon, Sun, Monitor } from "lucide-react" import { useTheme } from "next-themes" import { Button } from "@/components/ui/button" import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, } from "@/components/ui/dropdown-menu" type ThemeIconProps = { theme?: string } const ThemeIcon = ({ theme }: ThemeIconProps) => { const [mounted, setMounted] = React.useState(false) React.useEffect(() => { setMounted(true) }, []) if (!mounted) { return null } switch (theme) { case "light": return ( ) case "dark": return ( ) case "system": return ( ) default: return (<> ) } } export function ModeToggle() { const { setTheme, theme } = useTheme() return ( setTheme("light")}> Light setTheme("dark")}> Dark setTheme("system")}> System ) }