// src/components/nav_foot/navbar.tsx "use client"; import { useEffect, useState } from "react"; import i18n from "@/i18n"; import { animateScroll as scroll } from "react-scroll"; import Text from "../lib_components/text"; import "./navbar.css"; import { logoImg } from "@/assets"; import Image from "next/image"; import { usePathname, useRouter } from "next/navigation"; import { X } from "lucide-react"; // ❗ exit icon export default function Navbar() { const router = useRouter(); const pathname = usePathname(); const [toggle, setToggle] = useState(false); const [togglerIcon, setTogglerIcon] = useState("toggler"); const [lang, setLang] = useState<"uz" | "ru">("uz"); const handleChangeLang = (lng: "uz" | "ru") => { setLang(lng); i18n.changeLanguage(lng); }; const changeToggler = () => { setToggle(!toggle); togglerIcon === "toggler" ? setTogglerIcon("toggler toggle") : setTogglerIcon("toggler"); }; const scrollOrRoute = (id: string) => { if (pathname !== `/${lang}`) { // Agar user boshqa sahifada bo'lsa asosiy sahifaga yo'naltirish router.push(`/${lang}#${id}`); } else { // Agar main page-da bo'lsa scroll qilish scroll.scrollTo(document.getElementById(id)!.offsetTop - 100); } changeToggler(); }; const goHome = () => { router.push(`/${lang}`); }; // ❗ Scrollni bloklash uchun effect useEffect(() => { if (toggle) { document.body.style.overflow = "hidden"; // orqa scrollni o‘chir } else { document.body.style.overflow = "auto"; // qayta yoq } }, [toggle]); return ( <> {toggle && (
)}