"use client"; import Link from "next/link"; import { MENU_CATEGORIES, SHOP_INFO } from "@/lib/constants"; import type { MenuCategory } from "@/lib/types"; interface NavbarProps { /** Whether the sidebar is expanded (true) or icon-only (false) */ isOpen: boolean; /** Toggle expand / collapse */ onToggle: () => void; /** Currently selected category id */ activeCategory?: string; /** Fired when user clicks a category */ onCategoryChange?: (id: string) => void; } /** * Left sidebar — always visible, collapsible on all screen sizes. * * Collapsed → 64 px wide, icon only * Expanded → 240 px wide, icon + label * * Width transition is handled by Tailwind w-16 / w-60 + transition-all. * Parent controls open/close state via isOpen + onToggle props. */ export default function Navbar({ isOpen, onToggle, activeCategory = "all", onCategoryChange, }: NavbarProps) { const handleClick = (id: string) => { onCategoryChange?.(id); }; return ( ); }