"use client"; import { useState, useEffect, useCallback } from "react"; import { Link, useLocale, usePathname, useRouter, useTranslation } from "@/i18n/navigation"; import { getStoredUserEmail, pbLogout } from "@/app/lib/pocketbase"; import { getNavLinks } from "@/config"; import AuthModal from "./AuthModal"; import ThemeToggle from "./ThemeToggle"; import SiteMenu from "./SiteMenu"; export default function NavbarComponent() { const { t } = useTranslation("common"); const { t: tNav } = useTranslation("nav"); const locale = useLocale(); const pathname = usePathname(); const router = useRouter(); const [mobileOpen, setMobileOpen] = useState(false); const [menuOpen, setMenuOpen] = useState(false); const [authOpen, setAuthOpen] = useState(false); const [userEmail, setUserEmail] = useState(null); const navLinks = getNavLinks(); useEffect(() => { setUserEmail(getStoredUserEmail()); }, []); const handleLogout = useCallback(() => { pbLogout(); setUserEmail(null); }, []); const isActive = useCallback((href: string) => { if (href.startsWith("/#")) return false; if (href === "/") return pathname === "/"; return pathname.startsWith(href); }, [pathname]); return ( ); }