import React, { useEffect, useState, useRef } from 'react' import { Menu, Sun, Moon, FileText, Mail, Check, Copy } from 'lucide-react' import { COLORS, EMAIL, RESUME } from '../constants' import { Tooltip } from './Tooltip' interface NavProps { darkMode: boolean toggleDarkMode: () => void } const Navbar: React.FC = ({ toggleDarkMode, darkMode }) => { const [copied, setCopied] = useState(false) const [isMenuOpen, setIsMenuOpen] = useState(false) const menuRef = useRef(null) const copyText = copied ? 'Copied!' : 'Click to copy' const handleCopyEmail = async () => { try { await navigator.clipboard.writeText(EMAIL) setCopied(true) setTimeout(() => setCopied(false), 2000) } catch (err) { console.error('Failed to copy email', err) } } useEffect(() => { localStorage.setItem('DARK_MODE', String(darkMode)) }, [darkMode]) useEffect(() => { const handleClickoutside = (event: MouseEvent) => { if (menuRef.current && !menuRef.current.contains(event.target as Node)) { setIsMenuOpen(false) } } if (isMenuOpen) { document.addEventListener('mousedown', handleClickoutside) } return () => { document.removeEventListener('mousedown', handleClickoutside) } }, [isMenuOpen]) const menuItem = [ { title: 'Home', href: '/' }, { title: 'Experience', href: '/experience' }, { title: 'Projects', href: '/projects' }, { title: 'Interests', href: '/interests' }, ] return (
) } export default Navbar