UNPKG

fumadocs-ui

Version:

The Radix UI version of Fumadocs UI

44 lines (41 loc) 2.21 kB
'use client'; import { cn } from "@fumadocs/ui/cn"; import { jsx } from "react/jsx-runtime"; import * as React from "react"; import * as Primitive from "@radix-ui/react-navigation-menu"; //#region src/components/ui/navigation-menu.tsx const NavigationMenu = Primitive.Root; const NavigationMenuList = Primitive.List; const NavigationMenuItem = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(Primitive.NavigationMenuItem, { ref, className: cn("list-none", className), ...props, children })); NavigationMenuItem.displayName = Primitive.NavigationMenuItem.displayName; const NavigationMenuTrigger = React.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsx(Primitive.Trigger, { ref, className: cn("data-[state=open]:bg-fd-accent/50", className), ...props, children })); NavigationMenuTrigger.displayName = Primitive.Trigger.displayName; const NavigationMenuContent = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(Primitive.Content, { ref, className: cn("absolute inset-x-0 top-0 overflow-auto fd-scroll-container max-h-[80svh] data-[motion=from-end]:animate-fd-enterFromRight data-[motion=from-start]:animate-fd-enterFromLeft data-[motion=to-end]:animate-fd-exitToRight data-[motion=to-start]:animate-fd-exitToLeft", className), ...props })); NavigationMenuContent.displayName = Primitive.Content.displayName; const NavigationMenuLink = Primitive.Link; const NavigationMenuViewport = React.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx("div", { ref, className: "flex w-full justify-center", children: /* @__PURE__ */ jsx(Primitive.Viewport, { ...props, className: cn("relative h-(--radix-navigation-menu-viewport-height) w-full origin-[top_center] overflow-hidden transition-[width,height] duration-300 data-[state=closed]:animate-fd-nav-menu-out data-[state=open]:animate-fd-nav-menu-in", className) }) })); NavigationMenuViewport.displayName = Primitive.Viewport.displayName; //#endregion export { NavigationMenu, NavigationMenuContent, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport }; //# sourceMappingURL=navigation-menu.js.map