{
	"$schema": "https://ui.shadcn.com/schema/registry-item.json",
	"name": "navigation-menu",
	"dependencies": [],
	"registryDependencies": [],
	"files": [
		{
			"path": "ui/navigation-menu.tsx",
			"content": "import * as React from \"react\"\nimport { NavigationMenu as BaseNavigationMenu } from \"@base-ui/react/navigation-menu\"\nimport { cva } from \"class-variance-authority\"\nimport { ChevronDownIcon } from \"lucide-react\"\n\nimport { cn } from \"@/lib/utils\"\n\nfunction NavigationMenu({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Root>) {\n\treturn (\n\t\t<BaseNavigationMenu.Root\n\t\t\tdata-slot=\"navigation-menu\"\n\t\t\tclassName={cn(\"min-w-max\", className)}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<NavigationMenuViewport />\n\t\t</BaseNavigationMenu.Root>\n\t)\n}\n\nfunction NavigationMenuList({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.List>) {\n\treturn (\n\t\t<BaseNavigationMenu.List\n\t\t\tdata-slot=\"navigation-menu-list\"\n\t\t\tclassName={cn(\n\t\t\t\t\"relative flex items-center justify-center gap-1\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction NavigationMenuItem({\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Item>) {\n\treturn <BaseNavigationMenu.Item data-slot=\"navigation-menu-item\" {...props} />\n}\n\nfunction NavigationMenuIcon({\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Icon>) {\n\treturn <BaseNavigationMenu.Icon data-slot=\"navigation-menu-icon\" {...props} />\n}\n\nconst navigationMenuTriggerStyle = cva(\n\t\"inline-flex w-max items-center justify-center gap-1.5 h-9 rounded-md bg-background px-4 py-2 text-sm font-medium hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 data-popup-open:hover:bg-accent data-popup-open:text-accent-foreground data-popup-open:focus:bg-accent data-popup-open:bg-accent/50 focus-visible:ring-ring/50 outline-none transition-[color,box-shadow] focus-visible:ring-3 focus-visible:outline-1 select-none no-underline [&_svg:not([class*='size-'])]:size-3 shrink-0 [&_svg]:shrink-0\"\n)\n\nfunction NavigationMenuTrigger({\n\tclassName,\n\tchildren,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Trigger>) {\n\treturn (\n\t\t<BaseNavigationMenu.Trigger\n\t\t\tdata-slot=\"navigation-menu-trigger\"\n\t\t\tclassName={cn(navigationMenuTriggerStyle(), className)}\n\t\t\tdata-disabled={props.disabled}\n\t\t\t{...props}\n\t\t>\n\t\t\t{children}\n\t\t\t<NavigationMenuIcon className=\"transition-transform duration-200 data-popup-open:rotate-180\">\n\t\t\t\t<ChevronDownIcon aria-hidden=\"true\" />\n\t\t\t</NavigationMenuIcon>\n\t\t</BaseNavigationMenu.Trigger>\n\t)\n}\n\nfunction NavigationMenuContent({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Content>) {\n\treturn (\n\t\t<BaseNavigationMenu.Content\n\t\t\tdata-slot=\"navigation-menu-content\"\n\t\t\tclassName={cn(\"w-full p-2 md:w-auto\", className)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction NavigationMenuLink({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Link>) {\n\treturn (\n\t\t<BaseNavigationMenu.Link\n\t\t\tdata-slot=\"navigation-menu-link\"\n\t\t\tclassName={cn(\n\t\t\t\t\"hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus-visible:ring-ring/50 [&_svg:not([class*='text-'])]:text-muted-foreground flex flex-col gap-1 rounded-sm p-2 text-sm transition-all outline-none focus-visible:ring-3 focus-visible:outline-1 [&_svg:not([class*='size-'])]:size-4\",\n\t\t\t\tclassName\n\t\t\t)}\n\t\t\t{...props}\n\t\t/>\n\t)\n}\n\nfunction NavigationMenuViewport({\n\tclassName,\n\t...props\n}: React.ComponentProps<typeof BaseNavigationMenu.Popup>) {\n\treturn (\n\t\t<BaseNavigationMenu.Portal data-slot=\"navigation-menu-portal\">\n\t\t\t<BaseNavigationMenu.Positioner\n\t\t\t\tsideOffset={4}\n\t\t\t\talign=\"start\"\n\t\t\t\tclassName=\"h-[var(--positioner-height)] w-[var(--positioner-width)] max-w-[var(--available-width)] origin-[var(--transform-origin)] duration-200\"\n\t\t\t\tdata-slot=\"navigation-menu-positioner\"\n\t\t\t>\n\t\t\t\t<BaseNavigationMenu.Popup\n\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\"bg-popover text-popover-foreground h-[var(--popup-height)] w-[var(--popup-width)] origin-[var(--transform-origin)] overflow-hidden rounded-md border shadow-md transition-all data-ending-style:scale-98 data-ending-style:opacity-0 data-starting-style:scale-98 data-starting-style:opacity-0\",\n\t\t\t\t\t\tclassName\n\t\t\t\t\t)}\n\t\t\t\t\tdata-slot=\"navigation-menu-popup\"\n\t\t\t\t\t{...props}\n\t\t\t\t>\n\t\t\t\t\t<BaseNavigationMenu.Viewport data-slot=\"navigation-menu-viewport\" />\n\t\t\t\t</BaseNavigationMenu.Popup>\n\t\t\t</BaseNavigationMenu.Positioner>\n\t\t</BaseNavigationMenu.Portal>\n\t)\n}\n\nexport {\n\tNavigationMenu,\n\tNavigationMenuList,\n\tNavigationMenuItem,\n\tNavigationMenuTrigger,\n\tNavigationMenuContent,\n\tNavigationMenuLink,\n\tnavigationMenuTriggerStyle,\n}\n",
			"type": "registry:ui",
			"target": ""
		}
	],
	"type": "registry:ui"
}
