'use client'; import { ConnectButton } from '@rainbow-me/rainbowkit'; import { useTheme } from 'next-themes'; import { useTranslation } from 'react-i18next'; import { Button } from '@/components/ui/button'; import { LanguageSelector } from '@/components/language-selector'; import { Moon, Sun, Menu, X } from 'lucide-react'; import { useEffect, useState } from 'react'; import Link from 'next/link'; import { usePathname } from 'next/navigation'; export function Header() { const { theme, setTheme } = useTheme(); const { t } = useTranslation(); const [mounted, setMounted] = useState(false); const [mobileMenuOpen, setMobileMenuOpen] = useState(false); const pathname = usePathname(); useEffect(() => { setMounted(true); }, []); useEffect(() => { // Close mobile menu when route changes setMobileMenuOpen(false); }, [pathname]); const toggleTheme = () => { console.log('Toggle clicked, current theme:', theme); const newTheme = theme === 'dark' ? 'light' : 'dark'; console.log('Setting theme to:', newTheme); setTheme(newTheme); }; const logoSrc = !mounted ? '/logo-dark.svg' : theme === 'dark' ? '/logo-dark.svg' : '/logo-light.svg'; const mobileLogoSrc = '/logo-splash.svg'; const navLinks = [ { href: '/', label: 'Swap' }, { href: '/stake', label: 'Stake' }, { href: '/unstake', label: 'Unstake' }, { href: '/about', label: 'About' }, ]; return (
{/* Desktop logo - just a link */} Liquidity Party {/* Mobile logo - toggles menu */} BETA
{/* Desktop Navigation Links */} {/* Language Selector - Hidden on small screens */}
{/* Theme Toggle - Hidden on mobile */} {/* Wallet Connect - Always visible */}
{/* Mobile Menu */} {mobileMenuOpen && (
)}
); }