'use client'; import { useTheme } from 'next-themes'; import { useEffect, useState } from 'react'; interface Props { onNewConversation: () => void; onMenuClick?: () => void; } export function Header({ onNewConversation: _onNewConversation, onMenuClick }: Props) { const { resolvedTheme, setTheme } = useTheme(); const [mounted, setMounted] = useState(false); useEffect(() => { setMounted(true); }, []); return ( {onMenuClick && ( )} {mounted ? ( setTheme(resolvedTheme === 'dark' ? 'light' : 'dark')} aria-label={resolvedTheme === 'dark' ? 'Switch to light mode' : 'Switch to dark mode'} className="grid h-8 w-8 place-items-center rounded-[6px] text-zinc-400 transition-[background-color,color,transform] duration-150 ease-out hover:bg-white/5 hover:text-white/70 active:scale-[0.97]" > {resolvedTheme === 'dark' ? : } ) : null} ); } function MoonIcon() { return ( ); } function SunIcon() { return ( ); } function MenuIcon() { return ( menu ); }