WEB.BUILDING.GENIOUS / components /theme-toggle.tsx
Humbl3m33's picture
Rename theme-toggle.tsx to components/theme-toggle.tsx
616c009 verified
Raw History Blame
621 Bytes
"use client"
import { Moon, Sun } from "lucide-react"
import { useTheme } from "next-themes"
import { Button } from "@/components/ui/button"
import { useEffect, useState } from "react"
export function ThemeToggle() {
const { theme, setTheme } = useTheme()
const [mounted, setMounted] = useState(false)
useEffect(() => {
setMounted(true)
}, [])
if (!mounted) {
return null
}
return (
<Button variant="outline" size="sm" onClick={() => setTheme(theme === "light" ? "dark" : "light")}>
{theme === "light" ? <Moon className="h-4 w-4" /> : <Sun className="h-4 w-4" />}
</Button>
)
}