@wow-two-beta/ui 0.0.9 → 0.0.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/dist/chunk-52DFDWY3.js +678 -0
  2. package/dist/chunk-52DFDWY3.js.map +1 -0
  3. package/dist/{chunk-SBVWECJP.js → chunk-6KCV4GOI.js} +3 -3
  4. package/dist/{chunk-SBVWECJP.js.map → chunk-6KCV4GOI.js.map} +1 -1
  5. package/dist/{chunk-55Y2JOBV.js → chunk-VTLWHUMD.js} +3 -3
  6. package/dist/{chunk-55Y2JOBV.js.map → chunk-VTLWHUMD.js.map} +1 -1
  7. package/dist/{chunk-CZ6FQILQ.js → chunk-YANOG5YR.js} +21 -3
  8. package/dist/chunk-YANOG5YR.js.map +1 -0
  9. package/dist/{chunk-3KGYKBW6.js → chunk-ZTHJ5OTI.js} +3 -3
  10. package/dist/{chunk-3KGYKBW6.js.map → chunk-ZTHJ5OTI.js.map} +1 -1
  11. package/dist/display/index.js +2 -2
  12. package/dist/forms/index.js +2 -2
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +5 -4
  16. package/dist/nav/index.js +2 -2
  17. package/dist/overlays/alertDialog/AlertDialog.d.ts +29 -0
  18. package/dist/overlays/alertDialog/AlertDialog.d.ts.map +1 -0
  19. package/dist/overlays/alertDialog/index.d.ts +2 -0
  20. package/dist/overlays/alertDialog/index.d.ts.map +1 -0
  21. package/dist/overlays/backdrop/Backdrop.d.ts +17 -0
  22. package/dist/overlays/backdrop/Backdrop.d.ts.map +1 -0
  23. package/dist/overlays/backdrop/index.d.ts +2 -0
  24. package/dist/overlays/backdrop/index.d.ts.map +1 -0
  25. package/dist/overlays/dialog/Dialog.d.ts +63 -0
  26. package/dist/overlays/dialog/Dialog.d.ts.map +1 -0
  27. package/dist/overlays/dialog/index.d.ts +2 -0
  28. package/dist/overlays/dialog/index.d.ts.map +1 -0
  29. package/dist/overlays/drawer/Drawer.d.ts +57 -0
  30. package/dist/overlays/drawer/Drawer.d.ts.map +1 -0
  31. package/dist/overlays/drawer/index.d.ts +2 -0
  32. package/dist/overlays/drawer/index.d.ts.map +1 -0
  33. package/dist/overlays/hoverCard/HoverCard.d.ts +37 -0
  34. package/dist/overlays/hoverCard/HoverCard.d.ts.map +1 -0
  35. package/dist/overlays/hoverCard/index.d.ts +2 -0
  36. package/dist/overlays/hoverCard/index.d.ts.map +1 -0
  37. package/dist/overlays/index.d.ts +7 -0
  38. package/dist/overlays/index.d.ts.map +1 -0
  39. package/dist/overlays/index.js +11 -0
  40. package/dist/overlays/index.js.map +1 -0
  41. package/dist/overlays/popover/Popover.d.ts +31 -0
  42. package/dist/overlays/popover/Popover.d.ts.map +1 -0
  43. package/dist/overlays/popover/index.d.ts +2 -0
  44. package/dist/overlays/popover/index.d.ts.map +1 -0
  45. package/dist/primitives/index.d.ts +1 -0
  46. package/dist/primitives/index.d.ts.map +1 -1
  47. package/dist/primitives/index.js +1 -1
  48. package/dist/primitives/overlayArrow/OverlayArrow.d.ts +19 -0
  49. package/dist/primitives/overlayArrow/OverlayArrow.d.ts.map +1 -0
  50. package/dist/primitives/overlayArrow/index.d.ts +2 -0
  51. package/dist/primitives/overlayArrow/index.d.ts.map +1 -0
  52. package/package.json +5 -1
  53. package/dist/chunk-CZ6FQILQ.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/nav/breadcrumb/Breadcrumb.tsx","../src/nav/pagination/Pagination.tsx","../src/nav/navItem/NavItem.tsx","../src/nav/menu/Menu.variants.ts","../src/nav/menu/Menu.tsx","../src/nav/dropdownMenu/DropdownMenu.tsx","../src/nav/contextMenu/ContextMenu.tsx","../src/nav/menubar/Menubar.variants.ts","../src/nav/menubar/Menubar.tsx"],"names":["forwardRef","jsxs","jsx","ChevronRight","MenuItem","createContext","useContext","useRef","useMemo","DropdownMenuTrigger","useCallback","ContextMenuTrigger","Menubar","MenubarTrigger","useEffect"],"mappings":"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","file":"chunk-3KGYKBW6.js","sourcesContent":["import { Fragment, forwardRef, type ComponentPropsWithoutRef, type ReactNode } from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils';\nimport { Icon } from '../../icons';\n\nexport interface BreadcrumbItem {\n label: ReactNode;\n /** Make this item a link. Last item is typically rendered as plain text. */\n href?: string;\n}\n\nexport interface BreadcrumbProps extends ComponentPropsWithoutRef<'nav'> {\n items: BreadcrumbItem[];\n /** Custom separator element. Default chevron-right icon. */\n separator?: ReactNode;\n}\n\n/**\n * Linear position trail — list of links + separators. The last item is\n * always rendered as `aria-current=\"page\"` and not a link. Use the L5\n * collapsing version when the chain gets long.\n */\nexport const Breadcrumb = forwardRef<HTMLElement, BreadcrumbProps>(\n ({ items, separator, className, ...props }, ref) => {\n const sep = separator ?? <Icon icon={ChevronRight} size={14} />;\n return (\n <nav ref={ref} aria-label=\"Breadcrumb\" className={cn('text-sm', className)} {...props}>\n <ol className=\"flex flex-wrap items-center gap-1.5\">\n {items.map((item, i) => {\n const isLast = i === items.length - 1;\n return (\n <Fragment key={i}>\n <li>\n {item.href && !isLast ? (\n <a\n href={item.href}\n className=\"text-muted-foreground hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-sm\"\n >\n {item.label}\n </a>\n ) : (\n <span aria-current={isLast ? 'page' : undefined} className=\"text-foreground\">\n {item.label}\n </span>\n )}\n </li>\n {!isLast && (\n <li aria-hidden=\"true\" className=\"text-subtle-foreground\">\n {sep}\n </li>\n )}\n </Fragment>\n );\n })}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumb.displayName = 'Breadcrumb';\n","import { forwardRef, type ComponentPropsWithoutRef } from 'react';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils';\nimport { Icon } from '../../icons';\n\nexport interface PaginationProps extends Omit<ComponentPropsWithoutRef<'nav'>, 'onChange'> {\n /** Total page count (1-based). */\n total: number;\n /** Current page (1-based). */\n page: number;\n /** Fires with the new page on click. */\n onPageChange: (page: number) => void;\n /** Number of page buttons surrounding the current. Default `1` (so 1 + current + 1 = 3). */\n siblings?: number;\n /** Hide first/last buttons (just show prev/next + numbers). */\n hideFirstLast?: boolean;\n}\n\nfunction range(start: number, end: number): number[] {\n return Array.from({ length: end - start + 1 }, (_, i) => start + i);\n}\n\nfunction buildPages(total: number, page: number, siblings: number): (number | 'ellipsis')[] {\n if (total <= 1) return [1];\n const left = Math.max(2, page - siblings);\n const right = Math.min(total - 1, page + siblings);\n const pages: (number | 'ellipsis')[] = [1];\n if (left > 2) pages.push('ellipsis');\n pages.push(...range(left, right));\n if (right < total - 1) pages.push('ellipsis');\n if (total > 1) pages.push(total);\n return pages;\n}\n\n/**\n * Compact page-number row with prev/next + ellipses for skipped ranges.\n * Stateless — consumer drives `page` and reacts to `onPageChange`.\n */\nexport const Pagination = forwardRef<HTMLElement, PaginationProps>(\n (\n { total, page, onPageChange, siblings = 1, className, ...props },\n ref,\n ) => {\n const pages = buildPages(total, page, siblings);\n const go = (p: number) => onPageChange(Math.min(total, Math.max(1, p)));\n\n const baseBtn =\n 'inline-flex h-8 min-w-8 items-center justify-center rounded-md border border-transparent px-2 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50';\n\n return (\n <nav ref={ref} aria-label=\"Pagination\" className={cn('inline-flex items-center gap-1', className)} {...props}>\n <button\n type=\"button\"\n aria-label=\"Previous page\"\n disabled={page <= 1}\n onClick={() => go(page - 1)}\n className={cn(baseBtn, 'hover:bg-muted')}\n >\n <Icon icon={ChevronLeft} size={16} />\n </button>\n {pages.map((p, i) =>\n p === 'ellipsis' ? (\n <span key={`e-${i}`} className=\"px-1 text-muted-foreground\">…</span>\n ) : (\n <button\n key={p}\n type=\"button\"\n aria-current={p === page ? 'page' : undefined}\n onClick={() => go(p)}\n className={cn(\n baseBtn,\n p === page ? 'border-primary bg-primary text-primary-foreground' : 'hover:bg-muted',\n )}\n >\n {p}\n </button>\n ),\n )}\n <button\n type=\"button\"\n aria-label=\"Next page\"\n disabled={page >= total}\n onClick={() => go(page + 1)}\n className={cn(baseBtn, 'hover:bg-muted')}\n >\n <Icon icon={ChevronRight} size={16} />\n </button>\n </nav>\n );\n },\n);\nPagination.displayName = 'Pagination';\n","import { forwardRef, type AnchorHTMLAttributes, type ReactNode } from 'react';\nimport { cn, dataAttr } from '../../utils';\nimport { Slot } from '../../primitives';\n\nexport interface NavItemProps extends AnchorHTMLAttributes<HTMLAnchorElement> {\n /** When true, render the child element instead of an `<a>` (router Link). */\n asChild?: boolean;\n /** Optional leading icon. */\n icon?: ReactNode;\n /** Visual label. */\n children: ReactNode;\n /** Trailing slot — typically a count badge or status dot. */\n trailing?: ReactNode;\n /** Mark active (visual + `aria-current=\"page\"`). */\n isActive?: boolean;\n /** Visual size. Default `md`. */\n size?: 'sm' | 'md' | 'lg';\n}\n\nconst SIZE: Record<NonNullable<NavItemProps['size']>, string> = {\n sm: 'h-8 px-2 text-sm gap-2',\n md: 'h-9 px-2.5 text-sm gap-2.5',\n lg: 'h-11 px-3 text-base gap-3',\n};\n\n/**\n * Sidebar / nav row — icon + label + trailing slot + active state. Use as\n * a clickable Link (default `<a>`) or pass `asChild` to forward to a router\n * Link. Sets `aria-current=\"page\"` when `isActive`.\n */\nexport const NavItem = forwardRef<HTMLAnchorElement, NavItemProps>(\n ({ asChild, icon, children, trailing, isActive, size = 'md', className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a';\n return (\n <Comp\n ref={ref}\n aria-current={isActive ? 'page' : undefined}\n data-active={dataAttr(isActive)}\n className={cn(\n 'group inline-flex w-full items-center rounded-md font-medium text-foreground transition-colors',\n 'hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring',\n 'data-[active]:bg-primary-soft data-[active]:text-primary-soft-foreground',\n SIZE[size],\n className,\n )}\n {...(props as AnchorHTMLAttributes<HTMLAnchorElement>)}\n >\n {icon && <span className=\"text-muted-foreground group-data-[active]:text-current\">{icon}</span>}\n <span className=\"flex-1 truncate text-left\">{children}</span>\n {trailing && <span className=\"shrink-0\">{trailing}</span>}\n </Comp>\n );\n },\n);\nNavItem.displayName = 'NavItem';\n","import { tv, type VariantProps } from '../../utils';\n\nexport const menuVariants = tv({\n base: 'flex min-w-[8rem] flex-col gap-0.5 rounded-md border border-border bg-popover p-1 text-sm text-popover-foreground shadow-md outline-none',\n});\n\nexport const menuItemVariants = tv({\n base: 'relative flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-left text-sm outline-none transition-colors focus:bg-muted focus:text-foreground hover:bg-muted hover:text-foreground',\n variants: {\n state: {\n default: 'text-popover-foreground',\n destructive: 'text-destructive focus:bg-destructive-soft hover:bg-destructive-soft',\n disabled: 'pointer-events-none opacity-50',\n },\n },\n defaultVariants: { state: 'default' },\n});\n\nexport const menuLabelVariants = tv({\n base: 'px-2 py-1.5 text-xs font-semibold text-muted-foreground',\n});\n\nexport const menuSeparatorVariants = tv({\n base: '-mx-1 my-1 h-px bg-border',\n});\n\nexport type MenuVariants = VariantProps<typeof menuVariants>;\nexport type MenuItemVariants = VariantProps<typeof menuItemVariants>;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type HTMLAttributes,\n type KeyboardEvent,\n type ReactNode,\n} from 'react';\nimport { FocusScope } from '@radix-ui/react-focus-scope';\nimport { cn, composeRefs } from '../../utils';\nimport { AnchoredPositioner, DismissableLayer, Portal } from '../../primitives';\nimport {\n menuItemVariants,\n menuLabelVariants,\n menuSeparatorVariants,\n menuVariants,\n type MenuItemVariants,\n} from './Menu.variants';\n\ninterface MenuItemEntry {\n id: string;\n ref: HTMLButtonElement | null;\n disabled: boolean;\n}\n\ninterface MenuContextValue {\n registerItem: (entry: MenuItemEntry) => void;\n unregisterItem: (id: string) => void;\n itemsRef: React.MutableRefObject<MenuItemEntry[]>;\n onClose: () => void;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nfunction useMenuContext() {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu.Item / Group / Label / Separator must be used inside <Menu>');\n return ctx;\n}\n\nexport interface MenuProps {\n open: boolean;\n anchor: HTMLElement | null;\n onClose: () => void;\n placement?: React.ComponentProps<typeof AnchoredPositioner>['placement'];\n offset?: number;\n /** A11y label for screen readers. */\n 'aria-label'?: string;\n className?: string;\n children: ReactNode;\n}\n\nexport function Menu({\n open,\n anchor,\n onClose,\n placement = 'bottom-start',\n offset = 6,\n 'aria-label': ariaLabel,\n className,\n children,\n}: MenuProps) {\n const itemsRef = useRef<MenuItemEntry[]>([]);\n\n const registerItem = useCallback((entry: MenuItemEntry) => {\n const idx = itemsRef.current.findIndex((i) => i.id === entry.id);\n if (idx >= 0) itemsRef.current[idx] = entry;\n else itemsRef.current.push(entry);\n }, []);\n const unregisterItem = useCallback((id: string) => {\n itemsRef.current = itemsRef.current.filter((i) => i.id !== id);\n }, []);\n\n const ctx = useMemo<MenuContextValue>(\n () => ({ registerItem, unregisterItem, itemsRef, onClose }),\n [registerItem, unregisterItem, onClose],\n );\n\n if (!open) return null;\n return (\n <MenuContext.Provider value={ctx}>\n <Portal>\n <AnchoredPositioner anchor={anchor} placement={placement} offset={offset}>\n <FocusScope asChild trapped loop>\n <DismissableLayer\n onEscape={onClose}\n onOutsidePointerDown={(e) => {\n if (anchor?.contains(e.target as Node)) return;\n onClose();\n }}\n >\n <div\n role=\"menu\"\n aria-label={ariaLabel}\n className={cn(menuVariants(), className)}\n onKeyDown={(e) => {\n if (e.key === 'Tab') {\n e.preventDefault();\n onClose();\n }\n }}\n >\n {children}\n </div>\n </DismissableLayer>\n </FocusScope>\n </AnchoredPositioner>\n </Portal>\n </MenuContext.Provider>\n );\n}\n\nexport interface MenuItemProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onSelect'>,\n MenuItemVariants {\n /** Fired when the item is activated (Enter / Space / click). Menu closes after. */\n onSelect?: () => void;\n /** Disable activation. */\n disabled?: boolean;\n}\n\nexport const MenuItem = forwardRef<HTMLButtonElement, MenuItemProps>(function MenuItem(\n { onSelect, disabled = false, state, className, onClick, onKeyDown, children, ...rest },\n forwardedRef,\n) {\n const ctx = useMenuContext();\n const id = useId();\n const ref = useRef<HTMLButtonElement | null>(null);\n\n useEffect(() => {\n ctx.registerItem({ id, ref: ref.current, disabled });\n return () => ctx.unregisterItem(id);\n }, [ctx, id, disabled]);\n\n const moveFocus = useCallback(\n (direction: 1 | -1, jump = 1) => {\n const list = ctx.itemsRef.current.filter((i) => !i.disabled);\n if (list.length === 0) return;\n const idx = list.findIndex((i) => i.id === id);\n let nextIdx = idx + direction * jump;\n if (idx === -1) nextIdx = direction === 1 ? 0 : list.length - 1;\n if (nextIdx < 0) nextIdx = list.length - 1;\n if (nextIdx >= list.length) nextIdx = 0;\n list[nextIdx]?.ref?.focus();\n },\n [ctx, id],\n );\n\n const handleKeyDown = (e: KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented || disabled) return;\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n moveFocus(1);\n break;\n case 'ArrowUp':\n e.preventDefault();\n moveFocus(-1);\n break;\n case 'Home':\n e.preventDefault();\n moveFocus(-1, ctx.itemsRef.current.length);\n break;\n case 'End':\n e.preventDefault();\n moveFocus(1, ctx.itemsRef.current.length);\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n onSelect?.();\n ctx.onClose();\n break;\n }\n };\n\n const itemState = state ?? (disabled ? 'disabled' : 'default');\n return (\n <button\n ref={composeRefs(forwardedRef, ref)}\n type=\"button\"\n role=\"menuitem\"\n disabled={disabled}\n aria-disabled={disabled || undefined}\n data-disabled={disabled ? '' : undefined}\n onClick={(e) => {\n onClick?.(e);\n if (e.defaultPrevented || disabled) return;\n onSelect?.();\n ctx.onClose();\n }}\n onKeyDown={handleKeyDown}\n className={cn(menuItemVariants({ state: itemState }), className)}\n {...rest}\n >\n {children}\n </button>\n );\n});\n\nexport interface MenuGroupProps extends HTMLAttributes<HTMLDivElement> {\n label?: ReactNode;\n children: ReactNode;\n}\n\nexport function MenuGroup({ label, children, className, ...rest }: MenuGroupProps) {\n const labelId = useId();\n return (\n <div\n role=\"group\"\n aria-labelledby={label ? labelId : undefined}\n className={className}\n {...rest}\n >\n {label && (\n <div id={labelId} className={menuLabelVariants()}>\n {label}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nexport function MenuLabel({\n children,\n className,\n ...rest\n}: HTMLAttributes<HTMLDivElement>) {\n return (\n <div className={cn(menuLabelVariants(), className)} {...rest}>\n {children}\n </div>\n );\n}\n\nexport function MenuSeparator(props: HTMLAttributes<HTMLDivElement>) {\n return <div role=\"separator\" className={menuSeparatorVariants()} {...props} />;\n}\n\ntype MenuComponent = typeof Menu & {\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(Menu as MenuComponent).Item = MenuItem;\n(Menu as MenuComponent).Group = MenuGroup;\n(Menu as MenuComponent).Label = MenuLabel;\n(Menu as MenuComponent).Separator = MenuSeparator;\n\nexport default Menu as MenuComponent;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { composeRefs } from '../../utils';\nimport { Slot } from '../../primitives';\nimport { useControlled } from '../../hooks';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\n\ninterface DropdownMenuContextValue {\n open: boolean;\n setOpen: (open: boolean) => void;\n triggerRef: React.MutableRefObject<HTMLButtonElement | null>;\n placement: MenuProps['placement'];\n offset: number;\n}\n\nconst DropdownMenuContext = createContext<DropdownMenuContextValue | null>(null);\n\nfunction useDropdownMenuContext() {\n const ctx = useContext(DropdownMenuContext);\n if (!ctx) throw new Error('DropdownMenu.* must be used inside <DropdownMenu>');\n return ctx;\n}\n\nexport interface DropdownMenuProps {\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n placement?: MenuProps['placement'];\n offset?: number;\n children: ReactNode;\n}\n\nexport function DropdownMenu({\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n placement = 'bottom-start',\n offset = 6,\n children,\n}: DropdownMenuProps) {\n const [open, setOpen] = useControlled({\n controlled: openProp,\n default: defaultOpen,\n onChange: onOpenChange,\n });\n const triggerRef = useRef<HTMLButtonElement | null>(null);\n\n const ctx = useMemo<DropdownMenuContextValue>(\n () => ({ open, setOpen, triggerRef, placement, offset }),\n [open, setOpen, placement, offset],\n );\n\n return <DropdownMenuContext.Provider value={ctx}>{children}</DropdownMenuContext.Provider>;\n}\n\nexport interface DropdownMenuTriggerProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {\n /** Render the trigger as the single child (e.g., `<Button>`). */\n asChild?: boolean;\n children: ReactNode;\n}\n\nexport const DropdownMenuTrigger = forwardRef<HTMLButtonElement, DropdownMenuTriggerProps>(\n function DropdownMenuTrigger(\n { asChild, onClick, onKeyDown, children, ...rest },\n forwardedRef,\n ) {\n const ctx = useDropdownMenuContext();\n const Component = asChild ? Slot : 'button';\n\n const handleClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.setOpen(!ctx.open);\n },\n [ctx, onClick],\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n if (e.key === 'ArrowDown' || e.key === 'ArrowUp' || e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n ctx.setOpen(true);\n }\n },\n [ctx, onKeyDown],\n );\n\n return (\n <Component\n ref={composeRefs(forwardedRef, ctx.triggerRef) as never}\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded={ctx.open}\n data-state={ctx.open ? 'open' : 'closed'}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\n\nexport interface DropdownMenuContentProps {\n className?: string;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function DropdownMenuContent({\n className,\n 'aria-label': ariaLabel,\n children,\n}: DropdownMenuContentProps) {\n const ctx = useDropdownMenuContext();\n return (\n <Menu\n open={ctx.open}\n anchor={ctx.triggerRef.current}\n onClose={() => {\n ctx.setOpen(false);\n requestAnimationFrame(() => ctx.triggerRef.current?.focus());\n }}\n placement={ctx.placement}\n offset={ctx.offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype DropdownMenuComponent = typeof DropdownMenu & {\n Trigger: typeof DropdownMenuTrigger;\n Content: typeof DropdownMenuContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(DropdownMenu as DropdownMenuComponent).Trigger = DropdownMenuTrigger;\n(DropdownMenu as DropdownMenuComponent).Content = DropdownMenuContent;\n(DropdownMenu as DropdownMenuComponent).Item = MenuItem;\n(DropdownMenu as DropdownMenuComponent).Group = MenuGroup;\n(DropdownMenu as DropdownMenuComponent).Label = MenuLabel;\n(DropdownMenu as DropdownMenuComponent).Separator = MenuSeparator;\n\nexport default DropdownMenu as DropdownMenuComponent;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { composeRefs } from '../../utils';\nimport { Slot } from '../../primitives';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\n\ninterface ContextMenuContextValue {\n open: boolean;\n setOpen: (open: boolean) => void;\n anchor: HTMLElement | null;\n setAnchor: (el: HTMLElement | null) => void;\n triggerRef: React.MutableRefObject<HTMLElement | null>;\n}\n\nconst ContextMenuContext = createContext<ContextMenuContextValue | null>(null);\n\nfunction useContextMenuContext() {\n const ctx = useContext(ContextMenuContext);\n if (!ctx) throw new Error('ContextMenu.* must be used inside <ContextMenu>');\n return ctx;\n}\n\nexport interface ContextMenuProps {\n children: ReactNode;\n}\n\n/**\n * Build a virtual element at coordinates — Floating UI accepts a\n * getBoundingClientRect-only object as a \"reference\".\n */\nfunction makeVirtualAnchor(x: number, y: number): HTMLElement {\n const el = document.createElement('div');\n el.style.position = 'fixed';\n el.style.left = `${x}px`;\n el.style.top = `${y}px`;\n el.style.width = '0px';\n el.style.height = '0px';\n el.style.pointerEvents = 'none';\n document.body.appendChild(el);\n return el;\n}\n\nexport function ContextMenu({ children }: ContextMenuProps) {\n const [open, setOpen] = useState(false);\n const [anchor, setAnchorState] = useState<HTMLElement | null>(null);\n const triggerRef = useRef<HTMLElement | null>(null);\n\n const setAnchor = useCallback((el: HTMLElement | null) => {\n setAnchorState((prev) => {\n if (prev && prev.parentNode === document.body) prev.remove();\n return el;\n });\n }, []);\n\n const handleSetOpen = useCallback(\n (next: boolean) => {\n setOpen(next);\n if (!next) setAnchor(null);\n },\n [setAnchor],\n );\n\n const ctx = useMemo<ContextMenuContextValue>(\n () => ({ open, setOpen: handleSetOpen, anchor, setAnchor, triggerRef }),\n [open, handleSetOpen, anchor, setAnchor],\n );\n\n return <ContextMenuContext.Provider value={ctx}>{children}</ContextMenuContext.Provider>;\n}\n\nexport interface ContextMenuTriggerProps extends HTMLAttributes<HTMLDivElement> {\n asChild?: boolean;\n disabled?: boolean;\n children: ReactNode;\n}\n\nexport const ContextMenuTrigger = forwardRef<HTMLDivElement, ContextMenuTriggerProps>(\n function ContextMenuTrigger(\n { asChild, disabled, onContextMenu, onPointerDown, onPointerCancel, onPointerUp, children, ...rest },\n forwardedRef,\n ) {\n const ctx = useContextMenuContext();\n const longPressTimer = useRef<ReturnType<typeof setTimeout> | null>(null);\n const Component = asChild ? Slot : 'div';\n\n const handleContextMenu = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n onContextMenu?.(e);\n if (e.defaultPrevented || disabled) return;\n e.preventDefault();\n ctx.setAnchor(makeVirtualAnchor(e.clientX, e.clientY));\n ctx.setOpen(true);\n },\n [ctx, disabled, onContextMenu],\n );\n\n const clearLongPress = useCallback(() => {\n if (longPressTimer.current) clearTimeout(longPressTimer.current);\n longPressTimer.current = null;\n }, []);\n\n return (\n <Component\n ref={composeRefs(forwardedRef, ctx.triggerRef) as never}\n onContextMenu={handleContextMenu}\n onPointerDown={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerDown?.(e);\n if (e.defaultPrevented || disabled || e.pointerType !== 'touch') return;\n const x = e.clientX;\n const y = e.clientY;\n longPressTimer.current = setTimeout(() => {\n ctx.setAnchor(makeVirtualAnchor(x, y));\n ctx.setOpen(true);\n }, 600);\n }}\n onPointerUp={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerUp?.(e);\n clearLongPress();\n }}\n onPointerCancel={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerCancel?.(e);\n clearLongPress();\n }}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\n\nexport interface ContextMenuContentProps {\n className?: string;\n placement?: MenuProps['placement'];\n offset?: number;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function ContextMenuContent({\n className,\n placement = 'bottom-start',\n offset = 2,\n 'aria-label': ariaLabel,\n children,\n}: ContextMenuContentProps) {\n const ctx = useContextMenuContext();\n return (\n <Menu\n open={ctx.open}\n anchor={ctx.anchor}\n onClose={() => ctx.setOpen(false)}\n placement={placement}\n offset={offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype ContextMenuComponent = typeof ContextMenu & {\n Trigger: typeof ContextMenuTrigger;\n Content: typeof ContextMenuContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(ContextMenu as ContextMenuComponent).Trigger = ContextMenuTrigger;\n(ContextMenu as ContextMenuComponent).Content = ContextMenuContent;\n(ContextMenu as ContextMenuComponent).Item = MenuItem;\n(ContextMenu as ContextMenuComponent).Group = MenuGroup;\n(ContextMenu as ContextMenuComponent).Label = MenuLabel;\n(ContextMenu as ContextMenuComponent).Separator = MenuSeparator;\n\nexport default ContextMenu as ContextMenuComponent;\n","import { tv, type VariantProps } from '../../utils';\n\nexport const menubarVariants = tv({\n base: 'flex items-center gap-1 rounded-md border border-border bg-background p-1',\n});\n\nexport const menubarTriggerVariants = tv({\n base: 'inline-flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:bg-muted data-[state=open]:bg-muted',\n});\n\nexport type MenubarVariants = VariantProps<typeof menubarVariants>;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { cn, composeRefs } from '../../utils';\nimport { useControlled } from '../../hooks';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\nimport { menubarTriggerVariants, menubarVariants } from './Menubar.variants';\n\ninterface MenubarContextValue {\n activeId: string | null;\n setActiveId: (id: string | null) => void;\n registerTrigger: (id: string, ref: HTMLButtonElement | null) => void;\n unregisterTrigger: (id: string) => void;\n triggersRef: React.MutableRefObject<{ id: string; ref: HTMLButtonElement | null }[]>;\n}\n\nconst MenubarContext = createContext<MenubarContextValue | null>(null);\n\nfunction useMenubarContext() {\n const ctx = useContext(MenubarContext);\n if (!ctx) throw new Error('Menubar.* must be used inside <Menubar>');\n return ctx;\n}\n\ninterface MenubarMenuContextValue {\n id: string;\n open: boolean;\n setOpen: (open: boolean) => void;\n triggerRef: React.MutableRefObject<HTMLButtonElement | null>;\n}\n\nconst MenubarMenuContext = createContext<MenubarMenuContextValue | null>(null);\n\nfunction useMenubarMenuContext() {\n const ctx = useContext(MenubarMenuContext);\n if (!ctx) throw new Error('Menubar.Trigger / Content must be used inside <Menubar.Menu>');\n return ctx;\n}\n\nexport interface MenubarProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange'> {\n /** Id of the currently-open menu, or `null` if none. */\n value?: string | null;\n defaultValue?: string | null;\n onValueChange?: (value: string | null) => void;\n children: ReactNode;\n}\n\nexport const Menubar = forwardRef<HTMLDivElement, MenubarProps>(function Menubar(\n { value, defaultValue = null, onValueChange, className, children, ...rest },\n ref,\n) {\n const [activeId, setActiveId] = useControlled<string | null>({\n controlled: value,\n default: defaultValue,\n onChange: onValueChange,\n });\n\n const triggersRef = useRef<{ id: string; ref: HTMLButtonElement | null }[]>([]);\n\n const registerTrigger = useCallback((id: string, triggerRef: HTMLButtonElement | null) => {\n const idx = triggersRef.current.findIndex((t) => t.id === id);\n if (idx >= 0) triggersRef.current[idx] = { id, ref: triggerRef };\n else triggersRef.current.push({ id, ref: triggerRef });\n }, []);\n const unregisterTrigger = useCallback((id: string) => {\n triggersRef.current = triggersRef.current.filter((t) => t.id !== id);\n }, []);\n\n const ctx = useMemo<MenubarContextValue>(\n () => ({ activeId, setActiveId, registerTrigger, unregisterTrigger, triggersRef }),\n [activeId, setActiveId, registerTrigger, unregisterTrigger],\n );\n\n return (\n <MenubarContext.Provider value={ctx}>\n <div\n ref={ref}\n role=\"menubar\"\n className={cn(menubarVariants(), className)}\n {...rest}\n >\n {children}\n </div>\n </MenubarContext.Provider>\n );\n});\n\nexport interface MenubarMenuProps {\n /** Stable id for this menu — used for active-menu tracking. */\n value: string;\n children: ReactNode;\n}\n\nexport function MenubarMenu({ value, children }: MenubarMenuProps) {\n const ctx = useMenubarContext();\n const triggerRef = useRef<HTMLButtonElement | null>(null);\n\n const open = ctx.activeId === value;\n const setOpen = useCallback(\n (next: boolean) => {\n ctx.setActiveId(next ? value : null);\n },\n [ctx, value],\n );\n\n const menuCtx = useMemo<MenubarMenuContextValue>(\n () => ({ id: value, open, setOpen, triggerRef }),\n [value, open, setOpen],\n );\n\n return <MenubarMenuContext.Provider value={menuCtx}>{children}</MenubarMenuContext.Provider>;\n}\n\nexport interface MenubarTriggerProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {\n children: ReactNode;\n}\n\nexport const MenubarTrigger = forwardRef<HTMLButtonElement, MenubarTriggerProps>(\n function MenubarTrigger(\n { className, onClick, onKeyDown, onPointerEnter, children, ...rest },\n forwardedRef,\n ) {\n const bar = useMenubarContext();\n const menu = useMenubarMenuContext();\n\n useEffect(() => {\n bar.registerTrigger(menu.id, menu.triggerRef.current);\n return () => bar.unregisterTrigger(menu.id);\n }, [bar, menu.id, menu.triggerRef]);\n\n const moveAcross = useCallback(\n (direction: 1 | -1) => {\n const list = bar.triggersRef.current;\n const idx = list.findIndex((t) => t.id === menu.id);\n if (idx === -1) return;\n let nextIdx = idx + direction;\n if (nextIdx < 0) nextIdx = list.length - 1;\n if (nextIdx >= list.length) nextIdx = 0;\n const next = list[nextIdx];\n next?.ref?.focus();\n // If a menu is already open, switch the open menu to follow focus.\n if (bar.activeId !== null && next) bar.setActiveId(next.id);\n },\n [bar, menu.id],\n );\n\n return (\n <button\n ref={composeRefs(forwardedRef, menu.triggerRef)}\n type=\"button\"\n role=\"menuitem\"\n aria-haspopup=\"menu\"\n aria-expanded={menu.open}\n data-state={menu.open ? 'open' : 'closed'}\n onClick={(e) => {\n onClick?.(e);\n if (e.defaultPrevented) return;\n menu.setOpen(!menu.open);\n }}\n onPointerEnter={(e) => {\n onPointerEnter?.(e);\n // If any menu is open, switching the trigger pointer-over switches the active menu.\n if (bar.activeId !== null && bar.activeId !== menu.id) {\n bar.setActiveId(menu.id);\n }\n }}\n onKeyDown={(e) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n switch (e.key) {\n case 'ArrowRight':\n e.preventDefault();\n moveAcross(1);\n break;\n case 'ArrowLeft':\n e.preventDefault();\n moveAcross(-1);\n break;\n case 'ArrowDown':\n case 'Enter':\n case ' ':\n e.preventDefault();\n menu.setOpen(true);\n break;\n case 'Home':\n e.preventDefault();\n bar.triggersRef.current[0]?.ref?.focus();\n break;\n case 'End': {\n e.preventDefault();\n const list = bar.triggersRef.current;\n list[list.length - 1]?.ref?.focus();\n break;\n }\n }\n }}\n className={cn(menubarTriggerVariants(), className)}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nexport interface MenubarContentProps {\n className?: string;\n placement?: MenuProps['placement'];\n offset?: number;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function MenubarContent({\n className,\n placement = 'bottom-start',\n offset = 4,\n 'aria-label': ariaLabel,\n children,\n}: MenubarContentProps) {\n const menu = useMenubarMenuContext();\n return (\n <Menu\n open={menu.open}\n anchor={menu.triggerRef.current}\n onClose={() => {\n menu.setOpen(false);\n requestAnimationFrame(() => menu.triggerRef.current?.focus());\n }}\n placement={placement}\n offset={offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype MenubarComponent = typeof Menubar & {\n Menu: typeof MenubarMenu;\n Trigger: typeof MenubarTrigger;\n Content: typeof MenubarContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(Menubar as MenubarComponent).Menu = MenubarMenu;\n(Menubar as MenubarComponent).Trigger = MenubarTrigger;\n(Menubar as MenubarComponent).Content = MenubarContent;\n(Menubar as MenubarComponent).Item = MenuItem;\n(Menubar as MenubarComponent).Group = MenuGroup;\n(Menubar as MenubarComponent).Label = MenuLabel;\n(Menubar as MenubarComponent).Separator = MenuSeparator;\n\nexport default Menubar as MenubarComponent;\n"]}
1
+ {"version":3,"sources":["../src/nav/breadcrumb/Breadcrumb.tsx","../src/nav/pagination/Pagination.tsx","../src/nav/navItem/NavItem.tsx","../src/nav/menu/Menu.variants.ts","../src/nav/menu/Menu.tsx","../src/nav/dropdownMenu/DropdownMenu.tsx","../src/nav/contextMenu/ContextMenu.tsx","../src/nav/menubar/Menubar.variants.ts","../src/nav/menubar/Menubar.tsx"],"names":["forwardRef","jsxs","jsx","ChevronRight","MenuItem","createContext","useContext","useRef","useMemo","DropdownMenuTrigger","useCallback","ContextMenuTrigger","Menubar","MenubarTrigger","useEffect"],"mappings":"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","file":"chunk-ZTHJ5OTI.js","sourcesContent":["import { Fragment, forwardRef, type ComponentPropsWithoutRef, type ReactNode } from 'react';\nimport { ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils';\nimport { Icon } from '../../icons';\n\nexport interface BreadcrumbItem {\n label: ReactNode;\n /** Make this item a link. Last item is typically rendered as plain text. */\n href?: string;\n}\n\nexport interface BreadcrumbProps extends ComponentPropsWithoutRef<'nav'> {\n items: BreadcrumbItem[];\n /** Custom separator element. Default chevron-right icon. */\n separator?: ReactNode;\n}\n\n/**\n * Linear position trail — list of links + separators. The last item is\n * always rendered as `aria-current=\"page\"` and not a link. Use the L5\n * collapsing version when the chain gets long.\n */\nexport const Breadcrumb = forwardRef<HTMLElement, BreadcrumbProps>(\n ({ items, separator, className, ...props }, ref) => {\n const sep = separator ?? <Icon icon={ChevronRight} size={14} />;\n return (\n <nav ref={ref} aria-label=\"Breadcrumb\" className={cn('text-sm', className)} {...props}>\n <ol className=\"flex flex-wrap items-center gap-1.5\">\n {items.map((item, i) => {\n const isLast = i === items.length - 1;\n return (\n <Fragment key={i}>\n <li>\n {item.href && !isLast ? (\n <a\n href={item.href}\n className=\"text-muted-foreground hover:text-foreground hover:underline focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring rounded-sm\"\n >\n {item.label}\n </a>\n ) : (\n <span aria-current={isLast ? 'page' : undefined} className=\"text-foreground\">\n {item.label}\n </span>\n )}\n </li>\n {!isLast && (\n <li aria-hidden=\"true\" className=\"text-subtle-foreground\">\n {sep}\n </li>\n )}\n </Fragment>\n );\n })}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumb.displayName = 'Breadcrumb';\n","import { forwardRef, type ComponentPropsWithoutRef } from 'react';\nimport { ChevronLeft, ChevronRight } from 'lucide-react';\nimport { cn } from '../../utils';\nimport { Icon } from '../../icons';\n\nexport interface PaginationProps extends Omit<ComponentPropsWithoutRef<'nav'>, 'onChange'> {\n /** Total page count (1-based). */\n total: number;\n /** Current page (1-based). */\n page: number;\n /** Fires with the new page on click. */\n onPageChange: (page: number) => void;\n /** Number of page buttons surrounding the current. Default `1` (so 1 + current + 1 = 3). */\n siblings?: number;\n /** Hide first/last buttons (just show prev/next + numbers). */\n hideFirstLast?: boolean;\n}\n\nfunction range(start: number, end: number): number[] {\n return Array.from({ length: end - start + 1 }, (_, i) => start + i);\n}\n\nfunction buildPages(total: number, page: number, siblings: number): (number | 'ellipsis')[] {\n if (total <= 1) return [1];\n const left = Math.max(2, page - siblings);\n const right = Math.min(total - 1, page + siblings);\n const pages: (number | 'ellipsis')[] = [1];\n if (left > 2) pages.push('ellipsis');\n pages.push(...range(left, right));\n if (right < total - 1) pages.push('ellipsis');\n if (total > 1) pages.push(total);\n return pages;\n}\n\n/**\n * Compact page-number row with prev/next + ellipses for skipped ranges.\n * Stateless — consumer drives `page` and reacts to `onPageChange`.\n */\nexport const Pagination = forwardRef<HTMLElement, PaginationProps>(\n (\n { total, page, onPageChange, siblings = 1, className, ...props },\n ref,\n ) => {\n const pages = buildPages(total, page, siblings);\n const go = (p: number) => onPageChange(Math.min(total, Math.max(1, p)));\n\n const baseBtn =\n 'inline-flex h-8 min-w-8 items-center justify-center rounded-md border border-transparent px-2 text-sm transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50';\n\n return (\n <nav ref={ref} aria-label=\"Pagination\" className={cn('inline-flex items-center gap-1', className)} {...props}>\n <button\n type=\"button\"\n aria-label=\"Previous page\"\n disabled={page <= 1}\n onClick={() => go(page - 1)}\n className={cn(baseBtn, 'hover:bg-muted')}\n >\n <Icon icon={ChevronLeft} size={16} />\n </button>\n {pages.map((p, i) =>\n p === 'ellipsis' ? (\n <span key={`e-${i}`} className=\"px-1 text-muted-foreground\">…</span>\n ) : (\n <button\n key={p}\n type=\"button\"\n aria-current={p === page ? 'page' : undefined}\n onClick={() => go(p)}\n className={cn(\n baseBtn,\n p === page ? 'border-primary bg-primary text-primary-foreground' : 'hover:bg-muted',\n )}\n >\n {p}\n </button>\n ),\n )}\n <button\n type=\"button\"\n aria-label=\"Next page\"\n disabled={page >= total}\n onClick={() => go(page + 1)}\n className={cn(baseBtn, 'hover:bg-muted')}\n >\n <Icon icon={ChevronRight} size={16} />\n </button>\n </nav>\n );\n },\n);\nPagination.displayName = 'Pagination';\n","import { forwardRef, type AnchorHTMLAttributes, type ReactNode } from 'react';\nimport { cn, dataAttr } from '../../utils';\nimport { Slot } from '../../primitives';\n\nexport interface NavItemProps extends AnchorHTMLAttributes<HTMLAnchorElement> {\n /** When true, render the child element instead of an `<a>` (router Link). */\n asChild?: boolean;\n /** Optional leading icon. */\n icon?: ReactNode;\n /** Visual label. */\n children: ReactNode;\n /** Trailing slot — typically a count badge or status dot. */\n trailing?: ReactNode;\n /** Mark active (visual + `aria-current=\"page\"`). */\n isActive?: boolean;\n /** Visual size. Default `md`. */\n size?: 'sm' | 'md' | 'lg';\n}\n\nconst SIZE: Record<NonNullable<NavItemProps['size']>, string> = {\n sm: 'h-8 px-2 text-sm gap-2',\n md: 'h-9 px-2.5 text-sm gap-2.5',\n lg: 'h-11 px-3 text-base gap-3',\n};\n\n/**\n * Sidebar / nav row — icon + label + trailing slot + active state. Use as\n * a clickable Link (default `<a>`) or pass `asChild` to forward to a router\n * Link. Sets `aria-current=\"page\"` when `isActive`.\n */\nexport const NavItem = forwardRef<HTMLAnchorElement, NavItemProps>(\n ({ asChild, icon, children, trailing, isActive, size = 'md', className, ...props }, ref) => {\n const Comp = asChild ? Slot : 'a';\n return (\n <Comp\n ref={ref}\n aria-current={isActive ? 'page' : undefined}\n data-active={dataAttr(isActive)}\n className={cn(\n 'group inline-flex w-full items-center rounded-md font-medium text-foreground transition-colors',\n 'hover:bg-muted focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring',\n 'data-[active]:bg-primary-soft data-[active]:text-primary-soft-foreground',\n SIZE[size],\n className,\n )}\n {...(props as AnchorHTMLAttributes<HTMLAnchorElement>)}\n >\n {icon && <span className=\"text-muted-foreground group-data-[active]:text-current\">{icon}</span>}\n <span className=\"flex-1 truncate text-left\">{children}</span>\n {trailing && <span className=\"shrink-0\">{trailing}</span>}\n </Comp>\n );\n },\n);\nNavItem.displayName = 'NavItem';\n","import { tv, type VariantProps } from '../../utils';\n\nexport const menuVariants = tv({\n base: 'flex min-w-[8rem] flex-col gap-0.5 rounded-md border border-border bg-popover p-1 text-sm text-popover-foreground shadow-md outline-none',\n});\n\nexport const menuItemVariants = tv({\n base: 'relative flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-left text-sm outline-none transition-colors focus:bg-muted focus:text-foreground hover:bg-muted hover:text-foreground',\n variants: {\n state: {\n default: 'text-popover-foreground',\n destructive: 'text-destructive focus:bg-destructive-soft hover:bg-destructive-soft',\n disabled: 'pointer-events-none opacity-50',\n },\n },\n defaultVariants: { state: 'default' },\n});\n\nexport const menuLabelVariants = tv({\n base: 'px-2 py-1.5 text-xs font-semibold text-muted-foreground',\n});\n\nexport const menuSeparatorVariants = tv({\n base: '-mx-1 my-1 h-px bg-border',\n});\n\nexport type MenuVariants = VariantProps<typeof menuVariants>;\nexport type MenuItemVariants = VariantProps<typeof menuItemVariants>;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useId,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type HTMLAttributes,\n type KeyboardEvent,\n type ReactNode,\n} from 'react';\nimport { FocusScope } from '@radix-ui/react-focus-scope';\nimport { cn, composeRefs } from '../../utils';\nimport { AnchoredPositioner, DismissableLayer, Portal } from '../../primitives';\nimport {\n menuItemVariants,\n menuLabelVariants,\n menuSeparatorVariants,\n menuVariants,\n type MenuItemVariants,\n} from './Menu.variants';\n\ninterface MenuItemEntry {\n id: string;\n ref: HTMLButtonElement | null;\n disabled: boolean;\n}\n\ninterface MenuContextValue {\n registerItem: (entry: MenuItemEntry) => void;\n unregisterItem: (id: string) => void;\n itemsRef: React.MutableRefObject<MenuItemEntry[]>;\n onClose: () => void;\n}\n\nconst MenuContext = createContext<MenuContextValue | null>(null);\n\nfunction useMenuContext() {\n const ctx = useContext(MenuContext);\n if (!ctx) throw new Error('Menu.Item / Group / Label / Separator must be used inside <Menu>');\n return ctx;\n}\n\nexport interface MenuProps {\n open: boolean;\n anchor: HTMLElement | null;\n onClose: () => void;\n placement?: React.ComponentProps<typeof AnchoredPositioner>['placement'];\n offset?: number;\n /** A11y label for screen readers. */\n 'aria-label'?: string;\n className?: string;\n children: ReactNode;\n}\n\nexport function Menu({\n open,\n anchor,\n onClose,\n placement = 'bottom-start',\n offset = 6,\n 'aria-label': ariaLabel,\n className,\n children,\n}: MenuProps) {\n const itemsRef = useRef<MenuItemEntry[]>([]);\n\n const registerItem = useCallback((entry: MenuItemEntry) => {\n const idx = itemsRef.current.findIndex((i) => i.id === entry.id);\n if (idx >= 0) itemsRef.current[idx] = entry;\n else itemsRef.current.push(entry);\n }, []);\n const unregisterItem = useCallback((id: string) => {\n itemsRef.current = itemsRef.current.filter((i) => i.id !== id);\n }, []);\n\n const ctx = useMemo<MenuContextValue>(\n () => ({ registerItem, unregisterItem, itemsRef, onClose }),\n [registerItem, unregisterItem, onClose],\n );\n\n if (!open) return null;\n return (\n <MenuContext.Provider value={ctx}>\n <Portal>\n <AnchoredPositioner anchor={anchor} placement={placement} offset={offset}>\n <FocusScope asChild trapped loop>\n <DismissableLayer\n onEscape={onClose}\n onOutsidePointerDown={(e) => {\n if (anchor?.contains(e.target as Node)) return;\n onClose();\n }}\n >\n <div\n role=\"menu\"\n aria-label={ariaLabel}\n className={cn(menuVariants(), className)}\n onKeyDown={(e) => {\n if (e.key === 'Tab') {\n e.preventDefault();\n onClose();\n }\n }}\n >\n {children}\n </div>\n </DismissableLayer>\n </FocusScope>\n </AnchoredPositioner>\n </Portal>\n </MenuContext.Provider>\n );\n}\n\nexport interface MenuItemProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'onSelect'>,\n MenuItemVariants {\n /** Fired when the item is activated (Enter / Space / click). Menu closes after. */\n onSelect?: () => void;\n /** Disable activation. */\n disabled?: boolean;\n}\n\nexport const MenuItem = forwardRef<HTMLButtonElement, MenuItemProps>(function MenuItem(\n { onSelect, disabled = false, state, className, onClick, onKeyDown, children, ...rest },\n forwardedRef,\n) {\n const ctx = useMenuContext();\n const id = useId();\n const ref = useRef<HTMLButtonElement | null>(null);\n\n useEffect(() => {\n ctx.registerItem({ id, ref: ref.current, disabled });\n return () => ctx.unregisterItem(id);\n }, [ctx, id, disabled]);\n\n const moveFocus = useCallback(\n (direction: 1 | -1, jump = 1) => {\n const list = ctx.itemsRef.current.filter((i) => !i.disabled);\n if (list.length === 0) return;\n const idx = list.findIndex((i) => i.id === id);\n let nextIdx = idx + direction * jump;\n if (idx === -1) nextIdx = direction === 1 ? 0 : list.length - 1;\n if (nextIdx < 0) nextIdx = list.length - 1;\n if (nextIdx >= list.length) nextIdx = 0;\n list[nextIdx]?.ref?.focus();\n },\n [ctx, id],\n );\n\n const handleKeyDown = (e: KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented || disabled) return;\n switch (e.key) {\n case 'ArrowDown':\n e.preventDefault();\n moveFocus(1);\n break;\n case 'ArrowUp':\n e.preventDefault();\n moveFocus(-1);\n break;\n case 'Home':\n e.preventDefault();\n moveFocus(-1, ctx.itemsRef.current.length);\n break;\n case 'End':\n e.preventDefault();\n moveFocus(1, ctx.itemsRef.current.length);\n break;\n case 'Enter':\n case ' ':\n e.preventDefault();\n onSelect?.();\n ctx.onClose();\n break;\n }\n };\n\n const itemState = state ?? (disabled ? 'disabled' : 'default');\n return (\n <button\n ref={composeRefs(forwardedRef, ref)}\n type=\"button\"\n role=\"menuitem\"\n disabled={disabled}\n aria-disabled={disabled || undefined}\n data-disabled={disabled ? '' : undefined}\n onClick={(e) => {\n onClick?.(e);\n if (e.defaultPrevented || disabled) return;\n onSelect?.();\n ctx.onClose();\n }}\n onKeyDown={handleKeyDown}\n className={cn(menuItemVariants({ state: itemState }), className)}\n {...rest}\n >\n {children}\n </button>\n );\n});\n\nexport interface MenuGroupProps extends HTMLAttributes<HTMLDivElement> {\n label?: ReactNode;\n children: ReactNode;\n}\n\nexport function MenuGroup({ label, children, className, ...rest }: MenuGroupProps) {\n const labelId = useId();\n return (\n <div\n role=\"group\"\n aria-labelledby={label ? labelId : undefined}\n className={className}\n {...rest}\n >\n {label && (\n <div id={labelId} className={menuLabelVariants()}>\n {label}\n </div>\n )}\n {children}\n </div>\n );\n}\n\nexport function MenuLabel({\n children,\n className,\n ...rest\n}: HTMLAttributes<HTMLDivElement>) {\n return (\n <div className={cn(menuLabelVariants(), className)} {...rest}>\n {children}\n </div>\n );\n}\n\nexport function MenuSeparator(props: HTMLAttributes<HTMLDivElement>) {\n return <div role=\"separator\" className={menuSeparatorVariants()} {...props} />;\n}\n\ntype MenuComponent = typeof Menu & {\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(Menu as MenuComponent).Item = MenuItem;\n(Menu as MenuComponent).Group = MenuGroup;\n(Menu as MenuComponent).Label = MenuLabel;\n(Menu as MenuComponent).Separator = MenuSeparator;\n\nexport default Menu as MenuComponent;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { composeRefs } from '../../utils';\nimport { Slot } from '../../primitives';\nimport { useControlled } from '../../hooks';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\n\ninterface DropdownMenuContextValue {\n open: boolean;\n setOpen: (open: boolean) => void;\n triggerRef: React.MutableRefObject<HTMLButtonElement | null>;\n placement: MenuProps['placement'];\n offset: number;\n}\n\nconst DropdownMenuContext = createContext<DropdownMenuContextValue | null>(null);\n\nfunction useDropdownMenuContext() {\n const ctx = useContext(DropdownMenuContext);\n if (!ctx) throw new Error('DropdownMenu.* must be used inside <DropdownMenu>');\n return ctx;\n}\n\nexport interface DropdownMenuProps {\n open?: boolean;\n defaultOpen?: boolean;\n onOpenChange?: (open: boolean) => void;\n placement?: MenuProps['placement'];\n offset?: number;\n children: ReactNode;\n}\n\nexport function DropdownMenu({\n open: openProp,\n defaultOpen = false,\n onOpenChange,\n placement = 'bottom-start',\n offset = 6,\n children,\n}: DropdownMenuProps) {\n const [open, setOpen] = useControlled({\n controlled: openProp,\n default: defaultOpen,\n onChange: onOpenChange,\n });\n const triggerRef = useRef<HTMLButtonElement | null>(null);\n\n const ctx = useMemo<DropdownMenuContextValue>(\n () => ({ open, setOpen, triggerRef, placement, offset }),\n [open, setOpen, placement, offset],\n );\n\n return <DropdownMenuContext.Provider value={ctx}>{children}</DropdownMenuContext.Provider>;\n}\n\nexport interface DropdownMenuTriggerProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {\n /** Render the trigger as the single child (e.g., `<Button>`). */\n asChild?: boolean;\n children: ReactNode;\n}\n\nexport const DropdownMenuTrigger = forwardRef<HTMLButtonElement, DropdownMenuTriggerProps>(\n function DropdownMenuTrigger(\n { asChild, onClick, onKeyDown, children, ...rest },\n forwardedRef,\n ) {\n const ctx = useDropdownMenuContext();\n const Component = asChild ? Slot : 'button';\n\n const handleClick = useCallback(\n (e: React.MouseEvent<HTMLButtonElement>) => {\n onClick?.(e);\n if (e.defaultPrevented) return;\n ctx.setOpen(!ctx.open);\n },\n [ctx, onClick],\n );\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLButtonElement>) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n if (e.key === 'ArrowDown' || e.key === 'ArrowUp' || e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n ctx.setOpen(true);\n }\n },\n [ctx, onKeyDown],\n );\n\n return (\n <Component\n ref={composeRefs(forwardedRef, ctx.triggerRef) as never}\n type=\"button\"\n aria-haspopup=\"menu\"\n aria-expanded={ctx.open}\n data-state={ctx.open ? 'open' : 'closed'}\n onClick={handleClick}\n onKeyDown={handleKeyDown}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\n\nexport interface DropdownMenuContentProps {\n className?: string;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function DropdownMenuContent({\n className,\n 'aria-label': ariaLabel,\n children,\n}: DropdownMenuContentProps) {\n const ctx = useDropdownMenuContext();\n return (\n <Menu\n open={ctx.open}\n anchor={ctx.triggerRef.current}\n onClose={() => {\n ctx.setOpen(false);\n requestAnimationFrame(() => ctx.triggerRef.current?.focus());\n }}\n placement={ctx.placement}\n offset={ctx.offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype DropdownMenuComponent = typeof DropdownMenu & {\n Trigger: typeof DropdownMenuTrigger;\n Content: typeof DropdownMenuContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(DropdownMenu as DropdownMenuComponent).Trigger = DropdownMenuTrigger;\n(DropdownMenu as DropdownMenuComponent).Content = DropdownMenuContent;\n(DropdownMenu as DropdownMenuComponent).Item = MenuItem;\n(DropdownMenu as DropdownMenuComponent).Group = MenuGroup;\n(DropdownMenu as DropdownMenuComponent).Label = MenuLabel;\n(DropdownMenu as DropdownMenuComponent).Separator = MenuSeparator;\n\nexport default DropdownMenu as DropdownMenuComponent;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useMemo,\n useRef,\n useState,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { composeRefs } from '../../utils';\nimport { Slot } from '../../primitives';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\n\ninterface ContextMenuContextValue {\n open: boolean;\n setOpen: (open: boolean) => void;\n anchor: HTMLElement | null;\n setAnchor: (el: HTMLElement | null) => void;\n triggerRef: React.MutableRefObject<HTMLElement | null>;\n}\n\nconst ContextMenuContext = createContext<ContextMenuContextValue | null>(null);\n\nfunction useContextMenuContext() {\n const ctx = useContext(ContextMenuContext);\n if (!ctx) throw new Error('ContextMenu.* must be used inside <ContextMenu>');\n return ctx;\n}\n\nexport interface ContextMenuProps {\n children: ReactNode;\n}\n\n/**\n * Build a virtual element at coordinates — Floating UI accepts a\n * getBoundingClientRect-only object as a \"reference\".\n */\nfunction makeVirtualAnchor(x: number, y: number): HTMLElement {\n const el = document.createElement('div');\n el.style.position = 'fixed';\n el.style.left = `${x}px`;\n el.style.top = `${y}px`;\n el.style.width = '0px';\n el.style.height = '0px';\n el.style.pointerEvents = 'none';\n document.body.appendChild(el);\n return el;\n}\n\nexport function ContextMenu({ children }: ContextMenuProps) {\n const [open, setOpen] = useState(false);\n const [anchor, setAnchorState] = useState<HTMLElement | null>(null);\n const triggerRef = useRef<HTMLElement | null>(null);\n\n const setAnchor = useCallback((el: HTMLElement | null) => {\n setAnchorState((prev) => {\n if (prev && prev.parentNode === document.body) prev.remove();\n return el;\n });\n }, []);\n\n const handleSetOpen = useCallback(\n (next: boolean) => {\n setOpen(next);\n if (!next) setAnchor(null);\n },\n [setAnchor],\n );\n\n const ctx = useMemo<ContextMenuContextValue>(\n () => ({ open, setOpen: handleSetOpen, anchor, setAnchor, triggerRef }),\n [open, handleSetOpen, anchor, setAnchor],\n );\n\n return <ContextMenuContext.Provider value={ctx}>{children}</ContextMenuContext.Provider>;\n}\n\nexport interface ContextMenuTriggerProps extends HTMLAttributes<HTMLDivElement> {\n asChild?: boolean;\n disabled?: boolean;\n children: ReactNode;\n}\n\nexport const ContextMenuTrigger = forwardRef<HTMLDivElement, ContextMenuTriggerProps>(\n function ContextMenuTrigger(\n { asChild, disabled, onContextMenu, onPointerDown, onPointerCancel, onPointerUp, children, ...rest },\n forwardedRef,\n ) {\n const ctx = useContextMenuContext();\n const longPressTimer = useRef<ReturnType<typeof setTimeout> | null>(null);\n const Component = asChild ? Slot : 'div';\n\n const handleContextMenu = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n onContextMenu?.(e);\n if (e.defaultPrevented || disabled) return;\n e.preventDefault();\n ctx.setAnchor(makeVirtualAnchor(e.clientX, e.clientY));\n ctx.setOpen(true);\n },\n [ctx, disabled, onContextMenu],\n );\n\n const clearLongPress = useCallback(() => {\n if (longPressTimer.current) clearTimeout(longPressTimer.current);\n longPressTimer.current = null;\n }, []);\n\n return (\n <Component\n ref={composeRefs(forwardedRef, ctx.triggerRef) as never}\n onContextMenu={handleContextMenu}\n onPointerDown={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerDown?.(e);\n if (e.defaultPrevented || disabled || e.pointerType !== 'touch') return;\n const x = e.clientX;\n const y = e.clientY;\n longPressTimer.current = setTimeout(() => {\n ctx.setAnchor(makeVirtualAnchor(x, y));\n ctx.setOpen(true);\n }, 600);\n }}\n onPointerUp={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerUp?.(e);\n clearLongPress();\n }}\n onPointerCancel={(e: React.PointerEvent<HTMLDivElement>) => {\n onPointerCancel?.(e);\n clearLongPress();\n }}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\n\nexport interface ContextMenuContentProps {\n className?: string;\n placement?: MenuProps['placement'];\n offset?: number;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function ContextMenuContent({\n className,\n placement = 'bottom-start',\n offset = 2,\n 'aria-label': ariaLabel,\n children,\n}: ContextMenuContentProps) {\n const ctx = useContextMenuContext();\n return (\n <Menu\n open={ctx.open}\n anchor={ctx.anchor}\n onClose={() => ctx.setOpen(false)}\n placement={placement}\n offset={offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype ContextMenuComponent = typeof ContextMenu & {\n Trigger: typeof ContextMenuTrigger;\n Content: typeof ContextMenuContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(ContextMenu as ContextMenuComponent).Trigger = ContextMenuTrigger;\n(ContextMenu as ContextMenuComponent).Content = ContextMenuContent;\n(ContextMenu as ContextMenuComponent).Item = MenuItem;\n(ContextMenu as ContextMenuComponent).Group = MenuGroup;\n(ContextMenu as ContextMenuComponent).Label = MenuLabel;\n(ContextMenu as ContextMenuComponent).Separator = MenuSeparator;\n\nexport default ContextMenu as ContextMenuComponent;\n","import { tv, type VariantProps } from '../../utils';\n\nexport const menubarVariants = tv({\n base: 'flex items-center gap-1 rounded-md border border-border bg-background p-1',\n});\n\nexport const menubarTriggerVariants = tv({\n base: 'inline-flex select-none items-center rounded-sm px-3 py-1 text-sm font-medium text-foreground outline-none transition-colors hover:bg-muted focus-visible:bg-muted data-[state=open]:bg-muted',\n});\n\nexport type MenubarVariants = VariantProps<typeof menubarVariants>;\n","import {\n createContext,\n forwardRef,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n type ButtonHTMLAttributes,\n type HTMLAttributes,\n type ReactNode,\n} from 'react';\nimport { cn, composeRefs } from '../../utils';\nimport { useControlled } from '../../hooks';\nimport {\n Menu,\n MenuItem,\n MenuGroup,\n MenuLabel,\n MenuSeparator,\n type MenuProps,\n} from '../menu';\nimport { menubarTriggerVariants, menubarVariants } from './Menubar.variants';\n\ninterface MenubarContextValue {\n activeId: string | null;\n setActiveId: (id: string | null) => void;\n registerTrigger: (id: string, ref: HTMLButtonElement | null) => void;\n unregisterTrigger: (id: string) => void;\n triggersRef: React.MutableRefObject<{ id: string; ref: HTMLButtonElement | null }[]>;\n}\n\nconst MenubarContext = createContext<MenubarContextValue | null>(null);\n\nfunction useMenubarContext() {\n const ctx = useContext(MenubarContext);\n if (!ctx) throw new Error('Menubar.* must be used inside <Menubar>');\n return ctx;\n}\n\ninterface MenubarMenuContextValue {\n id: string;\n open: boolean;\n setOpen: (open: boolean) => void;\n triggerRef: React.MutableRefObject<HTMLButtonElement | null>;\n}\n\nconst MenubarMenuContext = createContext<MenubarMenuContextValue | null>(null);\n\nfunction useMenubarMenuContext() {\n const ctx = useContext(MenubarMenuContext);\n if (!ctx) throw new Error('Menubar.Trigger / Content must be used inside <Menubar.Menu>');\n return ctx;\n}\n\nexport interface MenubarProps\n extends Omit<HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'onChange'> {\n /** Id of the currently-open menu, or `null` if none. */\n value?: string | null;\n defaultValue?: string | null;\n onValueChange?: (value: string | null) => void;\n children: ReactNode;\n}\n\nexport const Menubar = forwardRef<HTMLDivElement, MenubarProps>(function Menubar(\n { value, defaultValue = null, onValueChange, className, children, ...rest },\n ref,\n) {\n const [activeId, setActiveId] = useControlled<string | null>({\n controlled: value,\n default: defaultValue,\n onChange: onValueChange,\n });\n\n const triggersRef = useRef<{ id: string; ref: HTMLButtonElement | null }[]>([]);\n\n const registerTrigger = useCallback((id: string, triggerRef: HTMLButtonElement | null) => {\n const idx = triggersRef.current.findIndex((t) => t.id === id);\n if (idx >= 0) triggersRef.current[idx] = { id, ref: triggerRef };\n else triggersRef.current.push({ id, ref: triggerRef });\n }, []);\n const unregisterTrigger = useCallback((id: string) => {\n triggersRef.current = triggersRef.current.filter((t) => t.id !== id);\n }, []);\n\n const ctx = useMemo<MenubarContextValue>(\n () => ({ activeId, setActiveId, registerTrigger, unregisterTrigger, triggersRef }),\n [activeId, setActiveId, registerTrigger, unregisterTrigger],\n );\n\n return (\n <MenubarContext.Provider value={ctx}>\n <div\n ref={ref}\n role=\"menubar\"\n className={cn(menubarVariants(), className)}\n {...rest}\n >\n {children}\n </div>\n </MenubarContext.Provider>\n );\n});\n\nexport interface MenubarMenuProps {\n /** Stable id for this menu — used for active-menu tracking. */\n value: string;\n children: ReactNode;\n}\n\nexport function MenubarMenu({ value, children }: MenubarMenuProps) {\n const ctx = useMenubarContext();\n const triggerRef = useRef<HTMLButtonElement | null>(null);\n\n const open = ctx.activeId === value;\n const setOpen = useCallback(\n (next: boolean) => {\n ctx.setActiveId(next ? value : null);\n },\n [ctx, value],\n );\n\n const menuCtx = useMemo<MenubarMenuContextValue>(\n () => ({ id: value, open, setOpen, triggerRef }),\n [value, open, setOpen],\n );\n\n return <MenubarMenuContext.Provider value={menuCtx}>{children}</MenubarMenuContext.Provider>;\n}\n\nexport interface MenubarTriggerProps\n extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {\n children: ReactNode;\n}\n\nexport const MenubarTrigger = forwardRef<HTMLButtonElement, MenubarTriggerProps>(\n function MenubarTrigger(\n { className, onClick, onKeyDown, onPointerEnter, children, ...rest },\n forwardedRef,\n ) {\n const bar = useMenubarContext();\n const menu = useMenubarMenuContext();\n\n useEffect(() => {\n bar.registerTrigger(menu.id, menu.triggerRef.current);\n return () => bar.unregisterTrigger(menu.id);\n }, [bar, menu.id, menu.triggerRef]);\n\n const moveAcross = useCallback(\n (direction: 1 | -1) => {\n const list = bar.triggersRef.current;\n const idx = list.findIndex((t) => t.id === menu.id);\n if (idx === -1) return;\n let nextIdx = idx + direction;\n if (nextIdx < 0) nextIdx = list.length - 1;\n if (nextIdx >= list.length) nextIdx = 0;\n const next = list[nextIdx];\n next?.ref?.focus();\n // If a menu is already open, switch the open menu to follow focus.\n if (bar.activeId !== null && next) bar.setActiveId(next.id);\n },\n [bar, menu.id],\n );\n\n return (\n <button\n ref={composeRefs(forwardedRef, menu.triggerRef)}\n type=\"button\"\n role=\"menuitem\"\n aria-haspopup=\"menu\"\n aria-expanded={menu.open}\n data-state={menu.open ? 'open' : 'closed'}\n onClick={(e) => {\n onClick?.(e);\n if (e.defaultPrevented) return;\n menu.setOpen(!menu.open);\n }}\n onPointerEnter={(e) => {\n onPointerEnter?.(e);\n // If any menu is open, switching the trigger pointer-over switches the active menu.\n if (bar.activeId !== null && bar.activeId !== menu.id) {\n bar.setActiveId(menu.id);\n }\n }}\n onKeyDown={(e) => {\n onKeyDown?.(e);\n if (e.defaultPrevented) return;\n switch (e.key) {\n case 'ArrowRight':\n e.preventDefault();\n moveAcross(1);\n break;\n case 'ArrowLeft':\n e.preventDefault();\n moveAcross(-1);\n break;\n case 'ArrowDown':\n case 'Enter':\n case ' ':\n e.preventDefault();\n menu.setOpen(true);\n break;\n case 'Home':\n e.preventDefault();\n bar.triggersRef.current[0]?.ref?.focus();\n break;\n case 'End': {\n e.preventDefault();\n const list = bar.triggersRef.current;\n list[list.length - 1]?.ref?.focus();\n break;\n }\n }\n }}\n className={cn(menubarTriggerVariants(), className)}\n {...rest}\n >\n {children}\n </button>\n );\n },\n);\n\nexport interface MenubarContentProps {\n className?: string;\n placement?: MenuProps['placement'];\n offset?: number;\n 'aria-label'?: string;\n children: ReactNode;\n}\n\nexport function MenubarContent({\n className,\n placement = 'bottom-start',\n offset = 4,\n 'aria-label': ariaLabel,\n children,\n}: MenubarContentProps) {\n const menu = useMenubarMenuContext();\n return (\n <Menu\n open={menu.open}\n anchor={menu.triggerRef.current}\n onClose={() => {\n menu.setOpen(false);\n requestAnimationFrame(() => menu.triggerRef.current?.focus());\n }}\n placement={placement}\n offset={offset}\n aria-label={ariaLabel}\n className={className}\n >\n {children}\n </Menu>\n );\n}\n\ntype MenubarComponent = typeof Menubar & {\n Menu: typeof MenubarMenu;\n Trigger: typeof MenubarTrigger;\n Content: typeof MenubarContent;\n Item: typeof MenuItem;\n Group: typeof MenuGroup;\n Label: typeof MenuLabel;\n Separator: typeof MenuSeparator;\n};\n\n(Menubar as MenubarComponent).Menu = MenubarMenu;\n(Menubar as MenubarComponent).Trigger = MenubarTrigger;\n(Menubar as MenubarComponent).Content = MenubarContent;\n(Menubar as MenubarComponent).Item = MenuItem;\n(Menubar as MenubarComponent).Group = MenuGroup;\n(Menubar as MenubarComponent).Label = MenuLabel;\n(Menubar as MenubarComponent).Separator = MenuSeparator;\n\nexport default Menubar as MenubarComponent;\n"]}
@@ -1,5 +1,5 @@
1
- export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from '../chunk-55Y2JOBV.js';
2
- import '../chunk-CZ6FQILQ.js';
1
+ export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from '../chunk-VTLWHUMD.js';
2
+ import '../chunk-YANOG5YR.js';
3
3
  import '../chunk-4P2TFUVW.js';
4
4
  import '../chunk-33IOXQYO.js';
5
5
  import '../chunk-KDXJQNB6.js';
@@ -1,5 +1,5 @@
1
- export { CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, UrlInput } from '../chunk-SBVWECJP.js';
2
- import '../chunk-CZ6FQILQ.js';
1
+ export { CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, UrlInput } from '../chunk-6KCV4GOI.js';
2
+ import '../chunk-YANOG5YR.js';
3
3
  import '../chunk-4P2TFUVW.js';
4
4
  import '../chunk-33IOXQYO.js';
5
5
  import '../chunk-KDXJQNB6.js';
package/dist/index.d.ts CHANGED
@@ -8,4 +8,5 @@ export * from './feedback';
8
8
  export * from './forms';
9
9
  export * from './layout';
10
10
  export * from './nav';
11
+ export * from './overlays';
11
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,KAAK,MAAM,SAAS,CAAC;AACjC,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAG3C,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,OAAO,CAAC;AACtB,cAAc,YAAY,CAAC"}
package/dist/index.js CHANGED
@@ -1,9 +1,10 @@
1
- export { CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, UrlInput } from './chunk-SBVWECJP.js';
1
+ export { CharacterCount, Checkbox, CheckboxField, CheckboxGroup, ChoiceCard, Combobox, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxSeparator, CurrencyInput, EmailInput, Fieldset, FilePicker, FormErrorMessage, FormField, FormHelperText, InputAddon, InputGroup, Label, LabeledInput, Legend, Listbox, ListboxEmpty, ListboxGroup, ListboxItem, ListboxSeparator, MaskedInput, MultiSelect, MultiSelectContent, MultiSelectItem, MultiSelectTags, MultiSelectTrigger, NumberInput, PasswordInput, PasswordStrength, PercentInput, PinInput, Radio, RadioField, RadioGroup, SearchInput, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Slider, Switch, SwitchField, TelInput, TextInput, Textarea, UrlInput } from './chunk-6KCV4GOI.js';
2
2
  export { AspectRatio, Box, Center, Cluster, Container, Flex, Frame, Grid, HStack, Inline, ScrollArea, Spacer, Stack, TwoColumn, VStack, containerVariants, gridVariants, stackVariants } from './chunk-NKGNOOXJ.js';
3
- export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from './chunk-3KGYKBW6.js';
3
+ export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from './chunk-ZTHJ5OTI.js';
4
+ export { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, Backdrop, Dialog, DialogBody, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, Drawer, DrawerBody, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, HoverCard, HoverCardArrow, HoverCardContent, HoverCardTrigger, Popover, PopoverArrow, PopoverContent, PopoverTrigger } from './chunk-52DFDWY3.js';
4
5
  export { Button, ButtonGroup, CopyButton, DisclosureButton, FAB, IconButton, Link, OverlayButton, SegmentedControl, ToggleButton, ToggleButtonGroup, buttonVariants, fabVariants, iconButtonVariants, linkVariants, overlayButtonVariants, toggleButtonVariants } from './chunk-D5CHR6RX.js';
5
- export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from './chunk-55Y2JOBV.js';
6
- export { primitives_exports as primitives } from './chunk-CZ6FQILQ.js';
6
+ export { Avatar, AvatarGroup, Badge, BadgeOverlay, Card, Code, CountBadge, DescriptionList, EmptyState, Heading, Highlight, Image, InfoRow, Kbd, KeyboardShortcut, Mark, NotificationDot, Quote, SectionHeader, Separator, Snippet, Stat, Status, Tag, Text, Tooltip, avatarVariants, badgeVariants, codeVariants, headingVariants, tagVariants, textVariants } from './chunk-VTLWHUMD.js';
7
+ export { primitives_exports as primitives } from './chunk-YANOG5YR.js';
7
8
  export { hooks_exports as hooks } from './chunk-4P2TFUVW.js';
8
9
  import './chunk-33IOXQYO.js';
9
10
  import './chunk-KDXJQNB6.js';
package/dist/nav/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from '../chunk-3KGYKBW6.js';
2
- import '../chunk-CZ6FQILQ.js';
1
+ export { Breadcrumb, ContextMenu, ContextMenuContent, ContextMenuTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuTrigger, Menu, MenuGroup, MenuItem, MenuLabel, MenuSeparator, Menubar, MenubarContent, MenubarMenu, MenubarTrigger, NavItem, Pagination, menuItemVariants, menuLabelVariants, menuSeparatorVariants, menuVariants } from '../chunk-ZTHJ5OTI.js';
2
+ import '../chunk-YANOG5YR.js';
3
3
  import '../chunk-4P2TFUVW.js';
4
4
  import '../chunk-33IOXQYO.js';
5
5
  import '../chunk-KDXJQNB6.js';
@@ -0,0 +1,29 @@
1
+ import { type ButtonHTMLAttributes, type ReactNode } from 'react';
2
+ import { DialogBody, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, type DialogProps, type DialogContentProps } from '../dialog';
3
+ export type AlertDialogProps = Omit<DialogProps, 'role' | 'dismissOnOutsideClick'>;
4
+ export declare function AlertDialog(props: AlertDialogProps): import("react/jsx-runtime").JSX.Element;
5
+ export declare const AlertDialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
6
+ export interface AlertDialogActionProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
7
+ /** Runs before the dialog closes. */
8
+ onAction?: () => void;
9
+ children: ReactNode;
10
+ }
11
+ export declare const AlertDialogAction: import("react").ForwardRefExoticComponent<AlertDialogActionProps & import("react").RefAttributes<HTMLButtonElement>>;
12
+ export interface AlertDialogCancelProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
13
+ children: ReactNode;
14
+ }
15
+ export declare const AlertDialogCancel: import("react").ForwardRefExoticComponent<AlertDialogCancelProps & import("react").RefAttributes<HTMLButtonElement>>;
16
+ type AlertDialogComponent = typeof AlertDialog & {
17
+ Trigger: typeof DialogTrigger;
18
+ Content: typeof AlertDialogContent;
19
+ Header: typeof DialogHeader;
20
+ Title: typeof DialogTitle;
21
+ Description: typeof DialogDescription;
22
+ Body: typeof DialogBody;
23
+ Footer: typeof DialogFooter;
24
+ Action: typeof AlertDialogAction;
25
+ Cancel: typeof AlertDialogCancel;
26
+ };
27
+ declare const _default: AlertDialogComponent;
28
+ export default _default;
29
+ //# sourceMappingURL=AlertDialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AlertDialog.d.ts","sourceRoot":"","sources":["../../../src/overlays/alertDialog/AlertDialog.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,oBAAoB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE9E,OAAO,EAEL,UAAU,EAEV,iBAAiB,EACjB,YAAY,EACZ,YAAY,EACZ,WAAW,EACX,aAAa,EAEb,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACxB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,EAAE,MAAM,GAAG,uBAAuB,CAAC,CAAC;AAEnF,wBAAgB,WAAW,CAAC,KAAK,EAAE,gBAAgB,2CAElD;AAED,eAAO,MAAM,kBAAkB,+GAI9B,CAAC;AAEF,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,qCAAqC;IACrC,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,sHAoB7B,CAAC;AAEF,MAAM,WAAW,sBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,iBAAiB,sHAe7B,CAAC;AAEF,KAAK,oBAAoB,GAAG,OAAO,WAAW,GAAG;IAC/C,OAAO,EAAE,OAAO,aAAa,CAAC;IAC9B,OAAO,EAAE,OAAO,kBAAkB,CAAC;IACnC,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,WAAW,EAAE,OAAO,iBAAiB,CAAC;IACtC,IAAI,EAAE,OAAO,UAAU,CAAC;IACxB,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,MAAM,EAAE,OAAO,iBAAiB,CAAC;IACjC,MAAM,EAAE,OAAO,iBAAiB,CAAC;CAClC,CAAC;wBAY4B,oBAAoB;AAAlD,wBAAmD"}
@@ -0,0 +1,2 @@
1
+ export { AlertDialog, AlertDialogContent, AlertDialogAction, AlertDialogCancel, type AlertDialogProps, type AlertDialogActionProps, type AlertDialogCancelProps, } from './AlertDialog';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/alertDialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,GAC5B,MAAM,eAAe,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { type HTMLAttributes } from 'react';
2
+ export interface BackdropProps extends HTMLAttributes<HTMLDivElement> {
3
+ /** Mount state. Default `true`. */
4
+ open?: boolean;
5
+ /** Apply backdrop-blur. */
6
+ blur?: boolean;
7
+ /** When `'none'`, clicks pass through. Default `'auto'`. */
8
+ pointerEvents?: 'auto' | 'none';
9
+ /** Skip the Portal wrap — render in place. */
10
+ inline?: boolean;
11
+ }
12
+ /**
13
+ * Fixed-position scrim. Used by Dialog / Drawer / LoadingOverlay; also a
14
+ * public component for custom overlay surfaces.
15
+ */
16
+ export declare const Backdrop: import("react").ForwardRefExoticComponent<BackdropProps & import("react").RefAttributes<HTMLDivElement>>;
17
+ //# sourceMappingURL=Backdrop.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Backdrop.d.ts","sourceRoot":"","sources":["../../../src/overlays/backdrop/Backdrop.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,OAAO,CAAC;AAIxD,MAAM,WAAW,aAAc,SAAQ,cAAc,CAAC,cAAc,CAAC;IACnE,mCAAmC;IACnC,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,2BAA2B;IAC3B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAChC,8CAA8C;IAC9C,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ,0GAmBnB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Backdrop, type BackdropProps } from './Backdrop';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/backdrop/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,63 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
2
+ export interface DialogProps {
3
+ open?: boolean;
4
+ defaultOpen?: boolean;
5
+ onOpenChange?: (open: boolean) => void;
6
+ dismissOnOutsideClick?: boolean;
7
+ dismissOnEscape?: boolean;
8
+ /** Internal — `AlertDialog` overrides this. */
9
+ role?: 'dialog' | 'alertdialog';
10
+ children: ReactNode;
11
+ }
12
+ export declare function Dialog({ open: openProp, defaultOpen, onOpenChange, dismissOnOutsideClick, dismissOnEscape, role, children, }: DialogProps): import("react/jsx-runtime").JSX.Element;
13
+ export interface DialogTriggerProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
14
+ asChild?: boolean;
15
+ children: ReactNode;
16
+ }
17
+ export declare const DialogTrigger: import("react").ForwardRefExoticComponent<DialogTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
18
+ export interface DialogContentProps extends HTMLAttributes<HTMLDivElement> {
19
+ /** Disable the default backdrop. */
20
+ hideBackdrop?: boolean;
21
+ /** Apply backdrop blur. */
22
+ blur?: boolean;
23
+ children: ReactNode;
24
+ }
25
+ export declare const DialogContent: import("react").ForwardRefExoticComponent<DialogContentProps & import("react").RefAttributes<HTMLDivElement>>;
26
+ export interface DialogHeaderProps extends HTMLAttributes<HTMLDivElement> {
27
+ children: ReactNode;
28
+ }
29
+ export declare function DialogHeader({ className, children, ...rest }: DialogHeaderProps): import("react/jsx-runtime").JSX.Element;
30
+ export interface DialogTitleProps extends HTMLAttributes<HTMLHeadingElement> {
31
+ children: ReactNode;
32
+ }
33
+ export declare function DialogTitle({ className, children, ...rest }: DialogTitleProps): import("react/jsx-runtime").JSX.Element;
34
+ export interface DialogDescriptionProps extends HTMLAttributes<HTMLParagraphElement> {
35
+ children: ReactNode;
36
+ }
37
+ export declare function DialogDescription({ className, children, ...rest }: DialogDescriptionProps): import("react/jsx-runtime").JSX.Element;
38
+ export interface DialogBodyProps extends HTMLAttributes<HTMLDivElement> {
39
+ children: ReactNode;
40
+ }
41
+ export declare function DialogBody({ className, children, ...rest }: DialogBodyProps): import("react/jsx-runtime").JSX.Element;
42
+ export interface DialogFooterProps extends HTMLAttributes<HTMLDivElement> {
43
+ children: ReactNode;
44
+ }
45
+ export declare function DialogFooter({ className, children, ...rest }: DialogFooterProps): import("react/jsx-runtime").JSX.Element;
46
+ export interface DialogCloseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
47
+ asChild?: boolean;
48
+ children?: ReactNode;
49
+ }
50
+ export declare const DialogClose: import("react").ForwardRefExoticComponent<DialogCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
51
+ type DialogComponent = typeof Dialog & {
52
+ Trigger: typeof DialogTrigger;
53
+ Content: typeof DialogContent;
54
+ Header: typeof DialogHeader;
55
+ Title: typeof DialogTitle;
56
+ Description: typeof DialogDescription;
57
+ Body: typeof DialogBody;
58
+ Footer: typeof DialogFooter;
59
+ Close: typeof DialogClose;
60
+ };
61
+ declare const _default: DialogComponent;
62
+ export default _default;
63
+ //# sourceMappingURL=Dialog.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Dialog.d.ts","sourceRoot":"","sources":["../../../src/overlays/dialog/Dialog.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { Dialog, DialogTrigger, DialogContent, DialogHeader, DialogTitle, DialogDescription, DialogBody, DialogFooter, DialogClose, type DialogProps, type DialogTriggerProps, type DialogContentProps, type DialogHeaderProps, type DialogTitleProps, type DialogDescriptionProps, type DialogBodyProps, type DialogFooterProps, type DialogCloseProps, } from './Dialog';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/dialog/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,sBAAsB,EAC3B,KAAK,eAAe,EACpB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,UAAU,CAAC"}
@@ -0,0 +1,57 @@
1
+ import { type ButtonHTMLAttributes, type HTMLAttributes, type ReactNode } from 'react';
2
+ export type DrawerSide = 'top' | 'right' | 'bottom' | 'left';
3
+ export interface DrawerProps {
4
+ open?: boolean;
5
+ defaultOpen?: boolean;
6
+ onOpenChange?: (open: boolean) => void;
7
+ side?: DrawerSide;
8
+ dismissOnOutsideClick?: boolean;
9
+ dismissOnEscape?: boolean;
10
+ children: ReactNode;
11
+ }
12
+ export declare function Drawer({ open: openProp, defaultOpen, onOpenChange, side, dismissOnOutsideClick, dismissOnEscape, children, }: DrawerProps): import("react/jsx-runtime").JSX.Element;
13
+ export interface DrawerTriggerProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
14
+ asChild?: boolean;
15
+ children: ReactNode;
16
+ }
17
+ export declare const DrawerTrigger: import("react").ForwardRefExoticComponent<DrawerTriggerProps & import("react").RefAttributes<HTMLButtonElement>>;
18
+ export interface DrawerContentProps extends HTMLAttributes<HTMLDivElement> {
19
+ hideBackdrop?: boolean;
20
+ blur?: boolean;
21
+ children: ReactNode;
22
+ }
23
+ export declare const DrawerContent: import("react").ForwardRefExoticComponent<DrawerContentProps & import("react").RefAttributes<HTMLDivElement>>;
24
+ export interface DrawerHeaderProps extends HTMLAttributes<HTMLDivElement> {
25
+ children: ReactNode;
26
+ }
27
+ export declare function DrawerHeader({ className, children, ...rest }: DrawerHeaderProps): import("react/jsx-runtime").JSX.Element;
28
+ export declare function DrawerTitle({ className, children, ...rest }: HTMLAttributes<HTMLHeadingElement> & {
29
+ children: ReactNode;
30
+ }): import("react/jsx-runtime").JSX.Element;
31
+ export declare function DrawerDescription({ className, children, ...rest }: HTMLAttributes<HTMLParagraphElement> & {
32
+ children: ReactNode;
33
+ }): import("react/jsx-runtime").JSX.Element;
34
+ export declare function DrawerBody({ className, children, ...rest }: HTMLAttributes<HTMLDivElement> & {
35
+ children: ReactNode;
36
+ }): import("react/jsx-runtime").JSX.Element;
37
+ export declare function DrawerFooter({ className, children, ...rest }: HTMLAttributes<HTMLDivElement> & {
38
+ children: ReactNode;
39
+ }): import("react/jsx-runtime").JSX.Element;
40
+ export interface DrawerCloseProps extends Omit<ButtonHTMLAttributes<HTMLButtonElement>, 'children'> {
41
+ asChild?: boolean;
42
+ children?: ReactNode;
43
+ }
44
+ export declare const DrawerClose: import("react").ForwardRefExoticComponent<DrawerCloseProps & import("react").RefAttributes<HTMLButtonElement>>;
45
+ type DrawerComponent = typeof Drawer & {
46
+ Trigger: typeof DrawerTrigger;
47
+ Content: typeof DrawerContent;
48
+ Header: typeof DrawerHeader;
49
+ Title: typeof DrawerTitle;
50
+ Description: typeof DrawerDescription;
51
+ Body: typeof DrawerBody;
52
+ Footer: typeof DrawerFooter;
53
+ Close: typeof DrawerClose;
54
+ };
55
+ declare const _default: DrawerComponent;
56
+ export default _default;
57
+ //# sourceMappingURL=Drawer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Drawer.d.ts","sourceRoot":"","sources":["../../../src/overlays/drawer/Drawer.tsx"],"names":[],"mappings":"AAAA,OAAO,EAOL,KAAK,oBAAoB,EACzB,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAQf,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAqB7D,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,MAAM,CAAC,EACrB,IAAI,EAAE,QAAQ,EACd,WAAmB,EACnB,YAAY,EACZ,IAAc,EACd,qBAA4B,EAC5B,eAAsB,EACtB,QAAQ,GACT,EAAE,WAAW,2CAyBb;AAED,MAAM,WAAW,kBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,kHAsBzB,CAAC;AAUF,MAAM,WAAW,kBAAmB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACxE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,+GAgDzB,CAAC;AAEF,MAAM,WAAW,iBAAkB,SAAQ,cAAc,CAAC,cAAc,CAAC;IACvE,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB,2CAM/E;AAED,wBAAgB,WAAW,CAAC,EAC1B,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,cAAc,CAAC,kBAAkB,CAAC,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAW9D;AAED,wBAAgB,iBAAiB,CAAC,EAChC,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,cAAc,CAAC,oBAAoB,CAAC,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAOhE;AAED,wBAAgB,UAAU,CAAC,EACzB,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAM1D;AAED,wBAAgB,YAAY,CAAC,EAC3B,SAAS,EACT,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,cAAc,CAAC,cAAc,CAAC,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAS1D;AAED,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,EAAE,UAAU,CAAC;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,gHA8BtB,CAAC;AAEH,KAAK,eAAe,GAAG,OAAO,MAAM,GAAG;IACrC,OAAO,EAAE,OAAO,aAAa,CAAC;IAC9B,OAAO,EAAE,OAAO,aAAa,CAAC;IAC9B,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,KAAK,EAAE,OAAO,WAAW,CAAC;IAC1B,WAAW,EAAE,OAAO,iBAAiB,CAAC;IACtC,IAAI,EAAE,OAAO,UAAU,CAAC;IACxB,MAAM,EAAE,OAAO,YAAY,CAAC;IAC5B,KAAK,EAAE,OAAO,WAAW,CAAC;CAC3B,CAAC;wBAWuB,eAAe;AAAxC,wBAAyC"}
@@ -0,0 +1,2 @@
1
+ export { Drawer, DrawerTrigger, DrawerContent, DrawerHeader, DrawerTitle, DrawerDescription, DrawerBody, DrawerFooter, DrawerClose, type DrawerProps, type DrawerTriggerProps, type DrawerContentProps, type DrawerHeaderProps, type DrawerCloseProps, type DrawerSide, } from './Drawer';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/overlays/drawer/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,MAAM,EACN,aAAa,EACb,aAAa,EACb,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,UAAU,EACV,YAAY,EACZ,WAAW,EACX,KAAK,WAAW,EAChB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,UAAU,GAChB,MAAM,UAAU,CAAC"}