"use client"; import {usePathname} from "next/navigation"; import Link from "next/link"; import React, {useContext, useEffect, useState} from "react"; import {HiBars3BottomRight} from "react-icons/hi2"; import {ThemeContext} from "@/components/provider/ThemeProvider"; import {useThemeColors} from "@/utils/useThemeColors"; import {navLinks} from "@/constant/Constant"; type Props = { openNav: () => void; }; const Nav = ({openNav}: Props) => { const [navBg, setNavBg] = useState(false); const [navHeight, setNavHeight] = useState("h-[10vh]"); const [contentSize, setContentSize] = useState("text-base md:text-lg"); const [buttonSize, setButtonSize] = useState("md:px-6 md:py-2 px-4 py-1 text-sm"); const {theme, toggleTheme} = useContext(ThemeContext); const colors = useThemeColors(); const pathname = usePathname(); const navColorClass = theme === "dark" || !navBg ? "text-white" : "text-black"; useEffect(() => { const handler = () => { if (window.scrollY >= 90) { setNavBg(true); setNavHeight("h-[8vh]"); setContentSize("text-sm md:text-base"); setButtonSize("md:px-5 md:py-1.5 px-3 py-1 text-xs"); } else { setNavBg(false); setNavHeight("h-[10vh]"); setContentSize("text-base md:text-lg"); setButtonSize("md:px-6 md:py-2 px-4 py-1 text-sm"); } }; window.addEventListener("scroll", handler); return () => window.removeEventListener("scroll", handler); }, []); return (
{link.label} {pathname !== link.url && ( )}
))}