'use client' import React, { useContext, useEffect, useState } from "react"; import Link from "next/link"; import { menuItems } from "@/utils"; import ProductContext from "@/app/contexts/productContext"; const FullWidthMenu = ({ isOpen, onClose, isScrolled }) => { const [isRendered, setIsRendered] = useState(false); const { category } = useContext(ProductContext); const categoryItems = category?.map((category) => ({ label: category.category_name, url: `/collections/${category.id}`, })) || [] useEffect(() => { if (isOpen) { setIsRendered(true); } else { const timer = setTimeout(() => setIsRendered(false), 300); // Match this with the transition duration return () => clearTimeout(timer); } }, [isOpen]); if (!isRendered && !isOpen) { return null; } return (
{/* hidden items only show on mobile devices */}
{categoryItems.map((item) => ( {item.label} ))}
{/* left section */}
{menuItems.map((menuItem, index) => (

{menuItem.name}

))}
{/* right section */}
{categoryItems?.map((item) => (

{item.label}

))}
); }; export default FullWidthMenu;