import { useEffect, useState } from "react" import { MoonStarIcon } from "@/components/tiptap-icons/moon-star-icon" import { SunIcon } from "@/components/tiptap-icons/sun-icon" import { Button } from "@/components/tiptap-ui-primitive/button" // --- Icons --- export function ThemeToggle() { const [isDarkMode, setIsDarkMode] = useState(false) useEffect(() => { const mediaQuery = window.matchMedia("(prefers-color-scheme: dark)") const handleChange = () => setIsDarkMode(mediaQuery.matches) mediaQuery.addEventListener("change", handleChange) return () => mediaQuery.removeEventListener("change", handleChange) }, []) useEffect(() => { const initialDarkMode = !!document.querySelector('meta[name="color-scheme"][content="dark"]') || window.matchMedia("(prefers-color-scheme: dark)").matches setIsDarkMode(initialDarkMode) }, []) useEffect(() => { document.documentElement.classList.toggle("dark", isDarkMode) }, [isDarkMode]) const toggleDarkMode = () => setIsDarkMode((isDark) => !isDark) return ( ) }