"use client"; import { motion, AnimatePresence, useScroll } from "framer-motion"; import { useState, useEffect } from "react"; import Link from "next/link"; import { usePathname } from "next/navigation"; import type { Locale } from "@/i18n-config"; const expo = [0.16, 1, 0.3, 1] as [number, number, number, number]; export default function Header({ lang, dict }: { lang: Locale; dict: any }) { const [menuOpen, setMenuOpen] = useState(false); const [scrolled, setScrolled] = useState(false); const pathname = usePathname(); const { scrollY } = useScroll(); useEffect(() => { const unsub = scrollY.on("change", (v) => setScrolled(v > 40)); return () => unsub(); }, [scrollY]); const links = [ { name: dict.services, href: `/${lang}/services` }, { name: dict.work, href: `/${lang}/work` }, { name: dict.process, href: `/${lang}/process` }, { name: dict.blog, href: `/${lang}/blog` }, { name: dict.partners, href: `/${lang}/partners` }, { name: dict.faq, href: `/${lang}/faq` }, ]; const otherLang = lang === "tr" ? "en" : "tr"; return ( <> {/* Logo */} A {dict.brandName}{dict.brandSub} {/* Desktop nav */} {links.map(item => { const isActive = pathname === item.href; return ( {item.name} ); })} {/* Right: lang + CTA */} {otherLang.toUpperCase()} {dict.quote} {/* Mobile hamburger */} setMenuOpen(!menuOpen)} aria-label="Toggle Menu" > {/* Mobile menu overlay */} {menuOpen && ( {links.map((item, idx) => ( setMenuOpen(false)} > {item.name} ))} setMenuOpen(false)} > {dict.quote} )} > ); }