import { useState, useEffect } from 'react' import { Menu, X } from 'lucide-react' const navItems = [ { label: 'About', href: '#about' }, { label: 'Interests', href: '#interests' }, { label: 'Projects', href: '#projects' }, { label: 'Experience', href: '#experience' }, { label: 'Topics', href: '#topics' }, { label: 'Contact', href: '#contact' }, ] export default function Navigation() { const [visible, setVisible] = useState(false) const [mobileOpen, setMobileOpen] = useState(false) const [activeSection, setActiveSection] = useState('') useEffect(() => { const handleScroll = () => { setVisible(window.scrollY > window.innerHeight * 0.6) } window.addEventListener('scroll', handleScroll, { passive: true }) return () => window.removeEventListener('scroll', handleScroll) }, []) useEffect(() => { const observer = new IntersectionObserver( (entries) => { entries.forEach((entry) => { if (entry.isIntersecting) { setActiveSection(entry.target.id) } }) }, { rootMargin: '-40% 0px -40% 0px' } ) navItems.forEach((item) => { const el = document.querySelector(item.href) if (el) observer.observe(el) }) return () => observer.disconnect() }, []) const handleClick = (e: React.MouseEvent, href: string) => { e.preventDefault() const el = document.querySelector(href) if (el) { el.scrollIntoView({ behavior: 'smooth' }) setMobileOpen(false) } } return ( <> ) }