'use client'; import { useState, useEffect } from 'react'; import Image from 'next/image'; import ProductMenu from './ProductMenu'; import ResourceMenu from './ResourceMenu'; export default function Navbar() { const [scrolled, setScrolled] = useState(false); const [language, setLanguage] = useState<'zh' | 'en'>('zh'); const [showLangMenu, setShowLangMenu] = useState(false); const [showProductMenu, setShowProductMenu] = useState(false); const [showResourceMenu, setShowResourceMenu] = useState(false); useEffect(() => { const handleScroll = () => { setScrolled(window.scrollY > 50); }; window.addEventListener('scroll', handleScroll); return () => window.removeEventListener('scroll', handleScroll); }, []); useEffect(() => { const handleClickOutside = (e: MouseEvent) => { const target = e.target as Element; if (showLangMenu && !target.closest('.language-selector')) { setShowLangMenu(false); } if (showProductMenu && !target.closest('.product-menu-container')) { setShowProductMenu(false); } if (showResourceMenu && !target.closest('.resource-menu-container')) { setShowResourceMenu(false); } }; document.addEventListener('click', handleClickOutside); return () => document.removeEventListener('click', handleClickOutside); }, [showLangMenu, showProductMenu, showResourceMenu]); const toggleLanguage = (lang: 'zh' | 'en') => { setLanguage(lang); setShowLangMenu(false); }; return ( <> {/* Logo Section */} {/* Navigation Menu */} {/* Product - Active */} { setShowProductMenu(!showProductMenu); setShowResourceMenu(false); }} > {language === 'zh' ? '产品' : 'Product'} {/* Ecosystem */} {language === 'zh' ? '生态' : 'Ecosystem'} {/* Resource */} { setShowResourceMenu(!showResourceMenu); setShowProductMenu(false); }} > {language === 'zh' ? '资源' : 'Resource'} {/* Launch App Button & Language Selector */} {language === 'zh' ? '启动应用' : 'Launch App'} {/* Language Selector */} setShowLangMenu(!showLangMenu)} > {language === 'zh' ? '中文' : 'EN'} {/* Dropdown Menu */} {showLangMenu && ( toggleLanguage('zh')} > 中文 toggleLanguage('en')} > English )} setShowProductMenu(false)} language={language} /> setShowResourceMenu(false)} language={language} /> > ); }