@uselets/ui 0.4.0 → 0.5.0

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 (59) hide show
  1. package/README.md +8 -1
  2. package/dist/components/alert-dialog.js +1 -1
  3. package/dist/components/alert-dialog.js.map +1 -1
  4. package/dist/components/anchor.d.ts +24 -0
  5. package/dist/components/anchor.js +2 -0
  6. package/dist/components/anchor.js.map +1 -0
  7. package/dist/components/button.d.ts +4 -2
  8. package/dist/components/button.js +1 -1
  9. package/dist/components/button.js.map +1 -1
  10. package/dist/components/calendar.d.ts +1 -1
  11. package/dist/components/calendar.js +1 -1
  12. package/dist/components/calendar.js.map +1 -1
  13. package/dist/components/carousel.d.ts +2 -0
  14. package/dist/components/carousel.js +1 -1
  15. package/dist/components/carousel.js.map +1 -1
  16. package/dist/components/center.d.ts +1 -1
  17. package/dist/components/checkbox.d.ts +1 -1
  18. package/dist/components/code.d.ts +13 -0
  19. package/dist/components/code.js +2 -0
  20. package/dist/components/code.js.map +1 -0
  21. package/dist/components/combobox.js +1 -1
  22. package/dist/components/combobox.js.map +1 -1
  23. package/dist/components/container.d.ts +1 -1
  24. package/dist/components/dialog.d.ts +1 -1
  25. package/dist/components/drawer.d.ts +1 -1
  26. package/dist/components/dropzone.d.ts +107 -0
  27. package/dist/components/dropzone.js +2 -0
  28. package/dist/components/dropzone.js.map +1 -0
  29. package/dist/components/group.d.ts +1 -1
  30. package/dist/components/heading.d.ts +22 -0
  31. package/dist/components/heading.js +2 -0
  32. package/dist/components/heading.js.map +1 -0
  33. package/dist/components/input-group.d.ts +1 -0
  34. package/dist/components/input-group.js +1 -1
  35. package/dist/components/input-group.js.map +1 -1
  36. package/dist/components/list.d.ts +44 -0
  37. package/dist/components/list.js +2 -0
  38. package/dist/components/list.js.map +1 -0
  39. package/dist/components/pagination.d.ts +2 -1
  40. package/dist/components/pagination.js +1 -1
  41. package/dist/components/pagination.js.map +1 -1
  42. package/dist/components/sidebar.d.ts +1 -1
  43. package/dist/components/sidebar.js +1 -1
  44. package/dist/components/sidebar.js.map +1 -1
  45. package/dist/components/spinner.d.ts +1 -1
  46. package/dist/components/stack.d.ts +1 -1
  47. package/dist/components/text.d.ts +22 -0
  48. package/dist/components/text.js +2 -0
  49. package/dist/components/text.js.map +1 -0
  50. package/dist/components/timeline.d.ts +63 -0
  51. package/dist/components/timeline.js +2 -0
  52. package/dist/components/timeline.js.map +1 -0
  53. package/dist/components/toggle.d.ts +1 -1
  54. package/dist/index.d.ts +9 -1
  55. package/dist/index.js +1 -1
  56. package/dist/lib/button.d.ts +16 -0
  57. package/dist/lib/button.js +2 -0
  58. package/dist/lib/button.js.map +1 -0
  59. package/package.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar.js","names":["Separator","Tooltip"],"sources":["../../src/components/sidebar.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { IconLayoutSidebar } from '@tabler/icons-react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { useIsMobile } from '../hooks/use-mobile'\nimport { cn } from '../lib/utils'\nimport { Button } from './button'\nimport { Input } from './input'\nimport { Separator } from './separator'\nimport { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from './sheet'\nimport { Skeleton } from './skeleton'\nimport { Tooltip, TooltipContent, TooltipTrigger } from './tooltip'\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar_state'\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = '16rem'\nconst SIDEBAR_WIDTH_MOBILE = '18rem'\nconst SIDEBAR_WIDTH_ICON = '3rem'\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b'\n\ntype SidebarContextProps = {\n state: 'expanded' | 'collapsed'\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nexport type SidebarProviderProps = React.ComponentProps<'div'> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}\n\nexport type SidebarProps = React.ComponentProps<'div'> & {\n side?: 'left' | 'right'\n variant?: 'sidebar' | 'floating' | 'inset'\n collapsible?: 'offcanvas' | 'icon' | 'none'\n}\n\nexport type SidebarTriggerProps = React.ComponentProps<typeof Button>\n\nexport type SidebarRailProps = React.ComponentProps<'button'>\n\nexport type SidebarInsetProps = React.ComponentProps<'main'>\n\nexport type SidebarInputProps = React.ComponentProps<typeof Input>\n\nexport type SidebarHeaderProps = React.ComponentProps<'div'>\n\nexport type SidebarFooterProps = React.ComponentProps<'div'>\n\nexport type SidebarSeparatorProps = React.ComponentProps<typeof Separator>\n\nexport type SidebarContentProps = React.ComponentProps<'div'>\n\nexport type SidebarGroupProps = React.ComponentProps<'div'>\n\nexport type SidebarGroupLabelProps = React.ComponentProps<'div'> & {\n asChild?: boolean\n}\n\nexport type SidebarGroupActionProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n}\n\nexport type SidebarGroupContentProps = React.ComponentProps<'div'>\n\nexport type SidebarMenuProps = React.ComponentProps<'ul'>\n\nexport type SidebarMenuItemProps = React.ComponentProps<'li'>\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.')\n }\n\n return context\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: SidebarProviderProps) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === 'function' ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n\n // This sets the cookie to keep the sidebar state.\n // biome-ignore lint/suspicious/noDocumentCookie: This package persists a simple UI preference cookie without framework-specific APIs.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed'\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar\n }),\n [state, open, setOpen, isMobile, openMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style\n } as React.CSSProperties\n }\n className={cn(\n 'group/sidebar-wrapper relative flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar',\n className\n )}\n {...props}\n >\n {children}\n </div>\n </SidebarContext.Provider>\n )\n}\n\nfunction Sidebar({\n side = 'left',\n variant = 'sidebar',\n collapsible = 'offcanvas',\n className,\n children,\n dir,\n ...props\n}: SidebarProps) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === 'none') {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn('flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground', className)}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n dir={dir}\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n 'relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)'\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n data-side={side}\n className={cn(\n 'fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex',\n 'data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]',\n 'data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n variant !== 'floating' &&\n variant !== 'inset' &&\n 'group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className={cn(\n 'flex size-full flex-col bg-sidebar',\n 'group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm',\n 'group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border'\n )}\n >\n {children}\n </div>\n </div>\n </div>\n )\n}\n\nfunction SidebarTrigger({ className, onClick, ...props }: SidebarTriggerProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon-sm\"\n className={cn(className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <IconLayoutSidebar />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\nfunction SidebarRail({ className, ...props }: SidebarRailProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize',\n 'absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:s-1/2 after:w-0.5 hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInset({ className, ...props }: SidebarInsetProps) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\n 'relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInput({ className, ...props }: SidebarInputProps) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn('h-8 w-full bg-background shadow-none', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarSeparator({ className, ...props }: SidebarSeparatorProps) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn('mx-2 w-auto bg-sidebar-border', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarContent({ className, ...props }: SidebarContentProps) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n 'no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupLabel({ className, asChild = false, ...props }: SidebarGroupLabelProps) {\n const Comp = asChild ? Slot.Root : 'div'\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n 'flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupAction({ className, asChild = false, ...props }: SidebarGroupActionProps) {\n const Comp = asChild ? Slot.Root : 'button'\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n 'absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupContent({ className, ...props }: SidebarGroupContentProps) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn('w-full text-sm', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn('flex w-full min-w-0 flex-col gap-0', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn('group/menu-item relative', className)}\n {...props}\n />\n )\n}\n\nconst sidebarMenuButtonVariants = cva(\n 'peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate',\n {\n variants: {\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]'\n },\n size: {\n default: 'h-8 text-sm',\n sm: 'h-7 text-xs',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:p-0!'\n }\n },\n defaultVariants: {\n variant: 'default',\n size: 'default'\n }\n }\n)\n\nexport type SidebarMenuButtonProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n} & VariantProps<typeof sidebarMenuButtonVariants>\n\nexport type SidebarMenuActionProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n showOnHover?: boolean\n}\n\nexport type SidebarMenuBadgeProps = React.ComponentProps<'div'>\n\nexport type SidebarMenuSkeletonProps = React.ComponentProps<'div'> & {\n showIcon?: boolean\n}\n\nexport type SidebarMenuSubProps = React.ComponentProps<'ul'>\n\nexport type SidebarMenuSubItemProps = React.ComponentProps<'li'>\n\nexport type SidebarMenuSubButtonProps = React.ComponentProps<'a'> & {\n asChild?: boolean\n size?: 'sm' | 'md'\n isActive?: boolean\n}\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = 'default',\n size = 'default',\n tooltip,\n className,\n ...props\n}: SidebarMenuButtonProps) {\n const Comp = asChild ? Slot.Root : 'button'\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === 'string') {\n tooltip = {\n children: tooltip\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\" align=\"center\" hidden={state !== 'collapsed' || isMobile} {...tooltip} />\n </Tooltip>\n )\n}\n\nfunction SidebarMenuAction({ className, asChild = false, showOnHover = false, ...props }: SidebarMenuActionProps) {\n const Comp = asChild ? Slot.Root : 'button'\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n 'absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0',\n showOnHover &&\n 'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuBadge({ className, ...props }: SidebarMenuBadgeProps) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n 'pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSkeleton({ className, showIcon = false, ...props }: SidebarMenuSkeletonProps) {\n // Random width between 50 to 90%.\n const [width] = React.useState(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n })\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n {...props}\n >\n {showIcon && <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width\n } as React.CSSProperties\n }\n />\n </div>\n )\n}\n\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n 'mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubItem({ className, ...props }: SidebarMenuSubItemProps) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn('group/menu-sub-item relative', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = 'md',\n isActive = false,\n className,\n ...props\n}: SidebarMenuSubButtonProps) {\n const Comp = asChild ? Slot.Root : 'a'\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n 'flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground',\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"sidebar.js","names":["Separator","Tooltip"],"sources":["../../src/components/sidebar.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { IconLayoutSidebar } from '@tabler/icons-react'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { useIsMobile } from '../hooks/use-mobile'\nimport { cn } from '../lib/utils'\nimport { Button } from './button'\nimport { Input } from './input'\nimport { Separator } from './separator'\nimport { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from './sheet'\nimport { Skeleton } from './skeleton'\nimport { Tooltip, TooltipContent, TooltipTrigger } from './tooltip'\n\nconst SIDEBAR_COOKIE_NAME = 'sidebar_state'\nconst SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7\nconst SIDEBAR_WIDTH = '16rem'\nconst SIDEBAR_WIDTH_MOBILE = '18rem'\nconst SIDEBAR_WIDTH_ICON = '3rem'\nconst SIDEBAR_KEYBOARD_SHORTCUT = 'b'\n\ntype SidebarContextProps = {\n state: 'expanded' | 'collapsed'\n open: boolean\n setOpen: (open: boolean) => void\n openMobile: boolean\n setOpenMobile: (open: boolean) => void\n isMobile: boolean\n toggleSidebar: () => void\n}\n\nconst SidebarContext = React.createContext<SidebarContextProps | null>(null)\n\nexport type SidebarProviderProps = React.ComponentProps<'div'> & {\n defaultOpen?: boolean\n open?: boolean\n onOpenChange?: (open: boolean) => void\n}\n\nexport type SidebarProps = React.ComponentProps<'div'> & {\n side?: 'left' | 'right'\n variant?: 'sidebar' | 'floating' | 'inset'\n collapsible?: 'offcanvas' | 'icon' | 'none'\n}\n\nexport type SidebarTriggerProps = React.ComponentProps<typeof Button>\n\nexport type SidebarRailProps = React.ComponentProps<'button'>\n\nexport type SidebarInsetProps = React.ComponentProps<'main'>\n\nexport type SidebarInputProps = React.ComponentProps<typeof Input>\n\nexport type SidebarHeaderProps = React.ComponentProps<'div'>\n\nexport type SidebarFooterProps = React.ComponentProps<'div'>\n\nexport type SidebarSeparatorProps = React.ComponentProps<typeof Separator>\n\nexport type SidebarContentProps = React.ComponentProps<'div'>\n\nexport type SidebarGroupProps = React.ComponentProps<'div'>\n\nexport type SidebarGroupLabelProps = React.ComponentProps<'div'> & {\n asChild?: boolean\n}\n\nexport type SidebarGroupActionProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n}\n\nexport type SidebarGroupContentProps = React.ComponentProps<'div'>\n\nexport type SidebarMenuProps = React.ComponentProps<'ul'>\n\nexport type SidebarMenuItemProps = React.ComponentProps<'li'>\n\nfunction useSidebar() {\n const context = React.useContext(SidebarContext)\n if (!context) {\n throw new Error('useSidebar must be used within a SidebarProvider.')\n }\n\n return context\n}\n\nfunction SidebarProvider({\n defaultOpen = true,\n open: openProp,\n onOpenChange: setOpenProp,\n className,\n style,\n children,\n ...props\n}: SidebarProviderProps) {\n const isMobile = useIsMobile()\n const [openMobile, setOpenMobile] = React.useState(false)\n\n // This is the internal state of the sidebar.\n // We use openProp and setOpenProp for control from outside the component.\n const [_open, _setOpen] = React.useState(defaultOpen)\n const open = openProp ?? _open\n const setOpen = React.useCallback(\n (value: boolean | ((value: boolean) => boolean)) => {\n const openState = typeof value === 'function' ? value(open) : value\n if (setOpenProp) {\n setOpenProp(openState)\n } else {\n _setOpen(openState)\n }\n\n // This sets the cookie to keep the sidebar state.\n // biome-ignore lint/suspicious/noDocumentCookie: This package persists a simple UI preference cookie without framework-specific APIs.\n document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`\n },\n [setOpenProp, open]\n )\n\n // Helper to toggle the sidebar.\n const toggleSidebar = React.useCallback(() => {\n return isMobile ? setOpenMobile((open) => !open) : setOpen((open) => !open)\n }, [isMobile, setOpen])\n\n // Adds a keyboard shortcut to toggle the sidebar.\n React.useEffect(() => {\n const handleKeyDown = (event: KeyboardEvent) => {\n if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {\n event.preventDefault()\n toggleSidebar()\n }\n }\n\n window.addEventListener('keydown', handleKeyDown)\n return () => window.removeEventListener('keydown', handleKeyDown)\n }, [toggleSidebar])\n\n // We add a state so that we can do data-state=\"expanded\" or \"collapsed\".\n // This makes it easier to style the sidebar with Tailwind classes.\n const state = open ? 'expanded' : 'collapsed'\n\n const contextValue = React.useMemo<SidebarContextProps>(\n () => ({\n state,\n open,\n setOpen,\n isMobile,\n openMobile,\n setOpenMobile,\n toggleSidebar\n }),\n [state, open, setOpen, isMobile, openMobile, toggleSidebar]\n )\n\n return (\n <SidebarContext.Provider value={contextValue}>\n <div\n data-slot=\"sidebar-wrapper\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH,\n '--sidebar-width-icon': SIDEBAR_WIDTH_ICON,\n ...style\n } as React.CSSProperties\n }\n className={cn(\n 'group/sidebar-wrapper relative flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar',\n className\n )}\n {...props}\n >\n {children}\n </div>\n </SidebarContext.Provider>\n )\n}\n\nfunction Sidebar({\n side = 'left',\n variant = 'sidebar',\n collapsible = 'offcanvas',\n className,\n children,\n dir,\n ...props\n}: SidebarProps) {\n const { isMobile, state, openMobile, setOpenMobile } = useSidebar()\n\n if (collapsible === 'none') {\n return (\n <div\n data-slot=\"sidebar\"\n className={cn('flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground', className)}\n {...props}\n >\n {children}\n </div>\n )\n }\n\n if (isMobile) {\n return (\n <Sheet open={openMobile} onOpenChange={setOpenMobile} {...props}>\n <SheetContent\n dir={dir}\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar\"\n data-mobile=\"true\"\n className=\"w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden\"\n style={\n {\n '--sidebar-width': SIDEBAR_WIDTH_MOBILE\n } as React.CSSProperties\n }\n side={side}\n >\n <SheetHeader className=\"sr-only\">\n <SheetTitle>Sidebar</SheetTitle>\n <SheetDescription>Displays the mobile sidebar.</SheetDescription>\n </SheetHeader>\n <div className=\"flex h-full w-full flex-col\">{children}</div>\n </SheetContent>\n </Sheet>\n )\n }\n\n return (\n <div\n className=\"group peer hidden text-sidebar-foreground md:block\"\n data-state={state}\n data-collapsible={state === 'collapsed' ? collapsible : ''}\n data-variant={variant}\n data-side={side}\n data-slot=\"sidebar\"\n >\n {/* This is what handles the sidebar gap on desktop */}\n <div\n data-slot=\"sidebar-gap\"\n className={cn(\n 'relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear',\n 'group-data-[collapsible=offcanvas]:w-0',\n 'group-data-[side=right]:rotate-180',\n variant === 'floating' || variant === 'inset'\n ? 'group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)'\n )}\n />\n <div\n data-slot=\"sidebar-container\"\n data-side={side}\n className={cn(\n 'fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex',\n 'data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]',\n 'data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]',\n // Adjust the padding for floating and inset variants.\n variant === 'floating' || variant === 'inset'\n ? 'p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]'\n : 'group-data-[collapsible=icon]:w-(--sidebar-width-icon)',\n variant !== 'floating' &&\n variant !== 'inset' &&\n 'group-data-[side=left]:border-r group-data-[side=right]:border-l',\n className\n )}\n {...props}\n >\n <div\n data-sidebar=\"sidebar\"\n data-slot=\"sidebar-inner\"\n className={cn(\n 'flex size-full flex-col bg-sidebar',\n 'group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm',\n 'group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border'\n )}\n >\n {children}\n </div>\n </div>\n </div>\n )\n}\n\nfunction SidebarTrigger({ className, onClick, ...props }: SidebarTriggerProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <Button\n data-sidebar=\"trigger\"\n data-slot=\"sidebar-trigger\"\n variant=\"ghost\"\n size=\"icon-sm\"\n color=\"zinc\"\n className={cn(className)}\n onClick={(event) => {\n onClick?.(event)\n toggleSidebar()\n }}\n {...props}\n >\n <IconLayoutSidebar />\n <span className=\"sr-only\">Toggle Sidebar</span>\n </Button>\n )\n}\n\nfunction SidebarRail({ className, ...props }: SidebarRailProps) {\n const { toggleSidebar } = useSidebar()\n\n return (\n <button\n data-sidebar=\"rail\"\n data-slot=\"sidebar-rail\"\n aria-label=\"Toggle Sidebar\"\n tabIndex={-1}\n onClick={toggleSidebar}\n title=\"Toggle Sidebar\"\n className={cn(\n 'in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize',\n 'absolute inset-y-0 z-20 hidden w-4 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:s-1/2 after:w-0.5 hover:after:bg-sidebar-border sm:flex ltr:-translate-x-1/2 rtl:-translate-x-1/2',\n '[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize',\n 'group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar',\n '[[data-side=left][data-collapsible=offcanvas]_&]:-right-2',\n '[[data-side=right][data-collapsible=offcanvas]_&]:-left-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInset({ className, ...props }: SidebarInsetProps) {\n return (\n <main\n data-slot=\"sidebar-inset\"\n className={cn(\n 'relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarInput({ className, ...props }: SidebarInputProps) {\n return (\n <Input\n data-slot=\"sidebar-input\"\n data-sidebar=\"input\"\n className={cn('h-8 w-full bg-background shadow-none', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarHeader({ className, ...props }: SidebarHeaderProps) {\n return (\n <div\n data-slot=\"sidebar-header\"\n data-sidebar=\"header\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarFooter({ className, ...props }: SidebarFooterProps) {\n return (\n <div\n data-slot=\"sidebar-footer\"\n data-sidebar=\"footer\"\n className={cn('flex flex-col gap-2 p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarSeparator({ className, ...props }: SidebarSeparatorProps) {\n return (\n <Separator\n data-slot=\"sidebar-separator\"\n data-sidebar=\"separator\"\n className={cn('mx-2 w-auto bg-sidebar-border', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarContent({ className, ...props }: SidebarContentProps) {\n return (\n <div\n data-slot=\"sidebar-content\"\n data-sidebar=\"content\"\n className={cn(\n 'no-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroup({ className, ...props }: SidebarGroupProps) {\n return (\n <div\n data-slot=\"sidebar-group\"\n data-sidebar=\"group\"\n className={cn('relative flex w-full min-w-0 flex-col p-2', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupLabel({ className, asChild = false, ...props }: SidebarGroupLabelProps) {\n const Comp = asChild ? Slot.Root : 'div'\n\n return (\n <Comp\n data-slot=\"sidebar-group-label\"\n data-sidebar=\"group-label\"\n className={cn(\n 'flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0 focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupAction({ className, asChild = false, ...props }: SidebarGroupActionProps) {\n const Comp = asChild ? Slot.Root : 'button'\n\n return (\n <Comp\n data-slot=\"sidebar-group-action\"\n data-sidebar=\"group-action\"\n className={cn(\n 'absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarGroupContent({ className, ...props }: SidebarGroupContentProps) {\n return (\n <div\n data-slot=\"sidebar-group-content\"\n data-sidebar=\"group-content\"\n className={cn('w-full text-sm', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenu({ className, ...props }: SidebarMenuProps) {\n return (\n <ul\n data-slot=\"sidebar-menu\"\n data-sidebar=\"menu\"\n className={cn('flex w-full min-w-0 flex-col gap-0', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuItem({ className, ...props }: SidebarMenuItemProps) {\n return (\n <li\n data-slot=\"sidebar-menu-item\"\n data-sidebar=\"menu-item\"\n className={cn('group/menu-item relative', className)}\n {...props}\n />\n )\n}\n\nconst sidebarMenuButtonVariants = cva(\n 'peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-sidebar-accent data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate',\n {\n variants: {\n variant: {\n default: 'hover:bg-sidebar-accent hover:text-sidebar-accent-foreground',\n outline:\n 'bg-background shadow-[0_0_0_1px_hsl(var(--sidebar-border))] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_hsl(var(--sidebar-accent))]'\n },\n size: {\n default: 'h-8 text-sm',\n sm: 'h-7 text-xs',\n lg: 'h-12 text-sm group-data-[collapsible=icon]:p-0!'\n }\n },\n defaultVariants: {\n variant: 'default',\n size: 'default'\n }\n }\n)\n\nexport type SidebarMenuButtonProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n isActive?: boolean\n tooltip?: string | React.ComponentProps<typeof TooltipContent>\n} & VariantProps<typeof sidebarMenuButtonVariants>\n\nexport type SidebarMenuActionProps = React.ComponentProps<'button'> & {\n asChild?: boolean\n showOnHover?: boolean\n}\n\nexport type SidebarMenuBadgeProps = React.ComponentProps<'div'>\n\nexport type SidebarMenuSkeletonProps = React.ComponentProps<'div'> & {\n showIcon?: boolean\n}\n\nexport type SidebarMenuSubProps = React.ComponentProps<'ul'>\n\nexport type SidebarMenuSubItemProps = React.ComponentProps<'li'>\n\nexport type SidebarMenuSubButtonProps = React.ComponentProps<'a'> & {\n asChild?: boolean\n size?: 'sm' | 'md'\n isActive?: boolean\n}\n\nfunction SidebarMenuButton({\n asChild = false,\n isActive = false,\n variant = 'default',\n size = 'default',\n tooltip,\n className,\n ...props\n}: SidebarMenuButtonProps) {\n const Comp = asChild ? Slot.Root : 'button'\n const { isMobile, state } = useSidebar()\n\n const button = (\n <Comp\n data-slot=\"sidebar-menu-button\"\n data-sidebar=\"menu-button\"\n data-size={size}\n data-active={isActive}\n className={cn(sidebarMenuButtonVariants({ variant, size }), className)}\n {...props}\n />\n )\n\n if (!tooltip) {\n return button\n }\n\n if (typeof tooltip === 'string') {\n tooltip = {\n children: tooltip\n }\n }\n\n return (\n <Tooltip>\n <TooltipTrigger asChild>{button}</TooltipTrigger>\n <TooltipContent side=\"right\" align=\"center\" hidden={state !== 'collapsed' || isMobile} {...tooltip} />\n </Tooltip>\n )\n}\n\nfunction SidebarMenuAction({ className, asChild = false, showOnHover = false, ...props }: SidebarMenuActionProps) {\n const Comp = asChild ? Slot.Root : 'button'\n\n return (\n <Comp\n data-slot=\"sidebar-menu-action\"\n data-sidebar=\"menu-action\"\n className={cn(\n 'absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 after:absolute after:-inset-2 hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 md:after:hidden [&>svg]:size-4 [&>svg]:shrink-0',\n showOnHover &&\n 'group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuBadge({ className, ...props }: SidebarMenuBadgeProps) {\n return (\n <div\n data-slot=\"sidebar-menu-badge\"\n data-sidebar=\"menu-badge\"\n className={cn(\n 'pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[size=default]/menu-button:top-1.5 peer-data-[size=lg]/menu-button:top-2.5 peer-data-[size=sm]/menu-button:top-1 peer-data-active/menu-button:text-sidebar-accent-foreground',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSkeleton({ className, showIcon = false, ...props }: SidebarMenuSkeletonProps) {\n // Random width between 50 to 90%.\n const [width] = React.useState(() => {\n return `${Math.floor(Math.random() * 40) + 50}%`\n })\n\n return (\n <div\n data-slot=\"sidebar-menu-skeleton\"\n data-sidebar=\"menu-skeleton\"\n className={cn('flex h-8 items-center gap-2 rounded-md px-2', className)}\n {...props}\n >\n {showIcon && <Skeleton className=\"size-4 rounded-md\" data-sidebar=\"menu-skeleton-icon\" />}\n <Skeleton\n className=\"h-4 max-w-(--skeleton-width) flex-1\"\n data-sidebar=\"menu-skeleton-text\"\n style={\n {\n '--skeleton-width': width\n } as React.CSSProperties\n }\n />\n </div>\n )\n}\n\nfunction SidebarMenuSub({ className, ...props }: SidebarMenuSubProps) {\n return (\n <ul\n data-slot=\"sidebar-menu-sub\"\n data-sidebar=\"menu-sub\"\n className={cn(\n 'mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5 group-data-[collapsible=icon]:hidden',\n className\n )}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubItem({ className, ...props }: SidebarMenuSubItemProps) {\n return (\n <li\n data-slot=\"sidebar-menu-sub-item\"\n data-sidebar=\"menu-sub-item\"\n className={cn('group/menu-sub-item relative', className)}\n {...props}\n />\n )\n}\n\nfunction SidebarMenuSubButton({\n asChild = false,\n size = 'md',\n isActive = false,\n className,\n ...props\n}: SidebarMenuSubButtonProps) {\n const Comp = asChild ? Slot.Root : 'a'\n\n return (\n <Comp\n data-slot=\"sidebar-menu-sub-button\"\n data-sidebar=\"menu-sub-button\"\n data-size={size}\n data-active={isActive}\n className={cn(\n 'flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden group-data-[collapsible=icon]:hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[size=md]:text-sm data-[size=sm]:text-xs data-active:bg-sidebar-accent data-active:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground',\n className\n )}\n {...props}\n />\n )\n}\n\nexport {\n Sidebar,\n SidebarContent,\n SidebarFooter,\n SidebarGroup,\n SidebarGroupAction,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarHeader,\n SidebarInput,\n SidebarInset,\n SidebarMenu,\n SidebarMenuAction,\n SidebarMenuBadge,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSkeleton,\n SidebarMenuSub,\n SidebarMenuSubButton,\n SidebarMenuSubItem,\n SidebarProvider,\n SidebarRail,\n SidebarSeparator,\n SidebarTrigger,\n useSidebar\n}\n"],"mappings":"+pBAeA,MAiBM,EAAiB,EAAM,cAA0C,KAAK,CA8C5E,SAAS,YAAa,CACpB,IAAM,EAAU,EAAM,WAAW,EAAe,CAChD,GAAI,CAAC,EACH,MAAU,MAAM,oDAAoD,CAGtE,OAAO,EAGT,SAAS,gBAAgB,CACvB,cAAc,GACd,KAAM,EACN,aAAc,EACd,YACA,QACA,WACA,GAAG,GACoB,CACvB,IAAM,EAAW,GAAa,CACxB,CAAC,EAAY,GAAiB,EAAM,SAAS,GAAM,CAInD,CAAC,EAAO,GAAY,EAAM,SAAS,EAAY,CAC/C,EAAO,GAAY,EACnB,EAAU,EAAM,YACnB,GAAmD,CAClD,IAAM,EAAY,OAAO,GAAU,WAAa,EAAM,EAAK,CAAG,EAC1D,EACF,EAAY,EAAU,CAEtB,EAAS,EAAU,CAKrB,SAAS,OAAS,iBAA0B,EAAU,2BAExD,CAAC,EAAa,EAAK,CACpB,CAGK,EAAgB,EAAM,gBACnB,EAAW,EAAe,GAAS,CAAC,EAAK,CAAG,EAAS,GAAS,CAAC,EAAK,CAC1E,CAAC,EAAU,EAAQ,CAAC,CAGvB,EAAM,cAAgB,CACpB,IAAM,cAAiB,GAAyB,CAC1C,EAAM,MAAQ,MAA8B,EAAM,SAAW,EAAM,WACrE,EAAM,gBAAgB,CACtB,GAAe,GAKnB,OADA,OAAO,iBAAiB,UAAW,cAAc,KACpC,OAAO,oBAAoB,UAAW,cAAc,EAChE,CAAC,EAAc,CAAC,CAInB,IAAM,EAAQ,EAAO,WAAa,YAE5B,EAAe,EAAM,aAClB,CACL,QACA,OACA,UACA,WACA,aACA,gBACA,gBACD,EACD,CAAC,EAAO,EAAM,EAAS,EAAU,EAAY,EAAc,CAC5D,CAED,OACE,EAAC,EAAe,SAAhB,CAAyB,MAAO,WAC9B,EAAC,MAAD,CACE,YAAU,kBACV,MACE,CACE,kBAAmB,QACnB,uBAAwB,OACxB,GAAG,EACJ,CAEH,UAAW,EACT,2FACA,EACD,CACD,GAAI,EAEH,WACG,CAAA,CACkB,CAAA,CAI9B,SAAS,QAAQ,CACf,OAAO,OACP,UAAU,UACV,cAAc,YACd,YACA,WACA,MACA,GAAG,GACY,CACf,GAAM,CAAE,WAAU,QAAO,aAAY,iBAAkB,YAAY,CAwCnE,OAtCI,IAAgB,OAEhB,EAAC,MAAD,CACE,YAAU,UACV,UAAW,EAAG,8EAA+E,EAAU,CACvG,GAAI,EAEH,WACG,CAAA,CAIN,EAEA,EAAC,EAAD,CAAO,KAAM,EAAY,aAAc,EAAe,GAAI,WACxD,EAAC,EAAD,CACO,MACL,eAAa,UACb,YAAU,UACV,cAAY,OACZ,UAAU,+EACV,MACE,CACE,kBAAmB,QACpB,CAEG,gBAXR,CAaE,EAAC,EAAD,CAAa,UAAU,mBAAvB,CACE,EAAC,EAAD,CAAA,SAAY,UAAoB,CAAA,CAChC,EAAC,EAAD,CAAA,SAAkB,+BAA+C,CAAA,CACrD,GACd,EAAC,MAAD,CAAK,UAAU,8BAA+B,WAAe,CAAA,CAChD,GACT,CAAA,CAKV,EAAC,MAAD,CACE,UAAU,qDACV,aAAY,EACZ,mBAAkB,IAAU,YAAc,EAAc,GACxD,eAAc,EACd,YAAW,EACX,YAAU,mBANZ,CASE,EAAC,MAAD,CACE,YAAU,cACV,UAAW,EACT,0FACA,yCACA,qCACA,IAAY,YAAc,IAAY,QAClC,mFACA,yDACL,CACD,CAAA,CACF,EAAC,MAAD,CACE,YAAU,oBACV,YAAW,EACX,UAAW,EACT,uHACA,mHACA,uHAEA,IAAY,YAAc,IAAY,QAClC,2FACA,yDACJ,IAAY,YACV,IAAY,SACZ,mEACF,EACD,CACD,GAAI,WAEJ,EAAC,MAAD,CACE,eAAa,UACb,YAAU,gBACV,UAAW,EACT,qCACA,mFACA,yFACD,CAEA,WACG,CAAA,CACF,CAAA,CACF,GAIV,SAAS,eAAe,CAAE,YAAW,UAAS,GAAG,GAA8B,CAC7E,GAAM,CAAE,iBAAkB,YAAY,CAEtC,OACE,EAAC,EAAD,CACE,eAAa,UACb,YAAU,kBACV,QAAQ,QACR,KAAK,UACL,MAAM,OACN,UAAW,EAAG,EAAU,CACxB,QAAU,GAAU,CAClB,IAAU,EAAM,CAChB,GAAe,EAEjB,GAAI,WAXN,CAaE,EAAC,EAAD,EAAqB,CAAA,CACrB,EAAC,OAAD,CAAM,UAAU,mBAAU,iBAAqB,CAAA,CACxC,GAIb,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,GAAM,CAAE,iBAAkB,YAAY,CAEtC,OACE,EAAC,SAAD,CACE,eAAa,OACb,YAAU,eACV,aAAW,iBACX,SAAU,GACV,QAAS,EACT,MAAM,iBACN,UAAW,EACT,2EACA,sQACA,yHACA,0JACA,4DACA,4DACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,aAAa,CAAE,YAAW,GAAG,GAA4B,CAChE,OACE,EAAC,OAAD,CACE,YAAU,gBACV,UAAW,EACT,qQACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,aAAa,CAAE,YAAW,GAAG,GAA4B,CAChE,OACE,EAAC,EAAD,CACE,YAAU,gBACV,eAAa,QACb,UAAW,EAAG,uCAAwC,EAAU,CAChE,GAAI,EACJ,CAAA,CAIN,SAAS,cAAc,CAAE,YAAW,GAAG,GAA6B,CAClE,OACE,EAAC,MAAD,CACE,YAAU,iBACV,eAAa,SACb,UAAW,EAAG,0BAA2B,EAAU,CACnD,GAAI,EACJ,CAAA,CAIN,SAAS,cAAc,CAAE,YAAW,GAAG,GAA6B,CAClE,OACE,EAAC,MAAD,CACE,YAAU,iBACV,eAAa,SACb,UAAW,EAAG,0BAA2B,EAAU,CACnD,GAAI,EACJ,CAAA,CAIN,SAAS,iBAAiB,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAACA,EAAD,CACE,YAAU,oBACV,eAAa,YACb,UAAW,EAAG,gCAAiC,EAAU,CACzD,GAAI,EACJ,CAAA,CAIN,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,MAAD,CACE,YAAU,kBACV,eAAa,UACb,UAAW,EACT,8GACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,aAAa,CAAE,YAAW,GAAG,GAA4B,CAChE,OACE,EAAC,MAAD,CACE,YAAU,gBACV,eAAa,QACb,UAAW,EAAG,4CAA6C,EAAU,CACrE,GAAI,EACJ,CAAA,CAIN,SAAS,kBAAkB,CAAE,YAAW,UAAU,GAAO,GAAG,GAAiC,CAG3F,OACE,EAHW,EAAU,EAAK,KAAO,MAGjC,CACE,YAAU,sBACV,eAAa,cACb,UAAW,EACT,uTACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,mBAAmB,CAAE,YAAW,UAAU,GAAO,GAAG,GAAkC,CAG7F,OACE,EAHW,EAAU,EAAK,KAAO,SAGjC,CACE,YAAU,uBACV,eAAa,eACb,UAAW,EACT,gXACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,oBAAoB,CAAE,YAAW,GAAG,GAAmC,CAC9E,OACE,EAAC,MAAD,CACE,YAAU,wBACV,eAAa,gBACb,UAAW,EAAG,iBAAkB,EAAU,CAC1C,GAAI,EACJ,CAAA,CAIN,SAAS,YAAY,CAAE,YAAW,GAAG,GAA2B,CAC9D,OACE,EAAC,KAAD,CACE,YAAU,eACV,eAAa,OACb,UAAW,EAAG,qCAAsC,EAAU,CAC9D,GAAI,EACJ,CAAA,CAIN,SAAS,gBAAgB,CAAE,YAAW,GAAG,GAA+B,CACtE,OACE,EAAC,KAAD,CACE,YAAU,oBACV,eAAa,YACb,UAAW,EAAG,2BAA4B,EAAU,CACpD,GAAI,EACJ,CAAA,CAIN,MAAM,EAA4B,EAChC,iyBACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,+DACT,QACE,+KACH,CACD,KAAM,CACJ,QAAS,cACT,GAAI,cACJ,GAAI,kDACL,CACF,CACD,gBAAiB,CACf,QAAS,UACT,KAAM,UACP,CACF,CACF,CA6BD,SAAS,kBAAkB,CACzB,UAAU,GACV,WAAW,GACX,UAAU,UACV,OAAO,UACP,UACA,YACA,GAAG,GACsB,CACzB,IAAM,EAAO,EAAU,EAAK,KAAO,SAC7B,CAAE,WAAU,SAAU,YAAY,CAElC,EACJ,EAAC,EAAD,CACE,YAAU,sBACV,eAAa,cACb,YAAW,EACX,cAAa,EACb,UAAW,EAAG,EAA0B,CAAE,UAAS,OAAM,CAAC,CAAE,EAAU,CACtE,GAAI,EACJ,CAAA,CAaJ,OAVK,GAID,OAAO,GAAY,WACrB,EAAU,CACR,SAAU,EACX,EAID,EAACC,EAAD,CAAA,SAAA,CACE,EAAC,EAAD,CAAgB,QAAA,YAAS,EAAwB,CAAA,CACjD,EAAC,EAAD,CAAgB,KAAK,QAAQ,MAAM,SAAS,OAAQ,IAAU,aAAe,EAAU,GAAI,EAAW,CAAA,CAC9F,CAAA,CAAA,EAbH,EAiBX,SAAS,kBAAkB,CAAE,YAAW,UAAU,GAAO,cAAc,GAAO,GAAG,GAAiC,CAGhH,OACE,EAHW,EAAU,EAAK,KAAO,SAGjC,CACE,YAAU,sBACV,eAAa,cACb,UAAW,EACT,iiBACA,GACE,gLACF,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,iBAAiB,CAAE,YAAW,GAAG,GAAgC,CACxE,OACE,EAAC,MAAD,CACE,YAAU,qBACV,eAAa,aACb,UAAW,EACT,2bACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,oBAAoB,CAAE,YAAW,WAAW,GAAO,GAAG,GAAmC,CAEhG,GAAM,CAAC,GAAS,EAAM,aACb,GAAG,KAAK,MAAM,KAAK,QAAQ,CAAG,GAAG,CAAG,GAAG,GAC9C,CAEF,OACE,EAAC,MAAD,CACE,YAAU,wBACV,eAAa,gBACb,UAAW,EAAG,8CAA+C,EAAU,CACvE,GAAI,WAJN,CAMG,GAAY,EAAC,EAAD,CAAU,UAAU,oBAAoB,eAAa,qBAAuB,CAAA,CACzF,EAAC,EAAD,CACE,UAAU,sCACV,eAAa,qBACb,MACE,CACE,mBAAoB,EACrB,CAEH,CAAA,CACE,GAIV,SAAS,eAAe,CAAE,YAAW,GAAG,GAA8B,CACpE,OACE,EAAC,KAAD,CACE,YAAU,mBACV,eAAa,WACb,UAAW,EACT,sIACA,EACD,CACD,GAAI,EACJ,CAAA,CAIN,SAAS,mBAAmB,CAAE,YAAW,GAAG,GAAkC,CAC5E,OACE,EAAC,KAAD,CACE,YAAU,wBACV,eAAa,gBACb,UAAW,EAAG,+BAAgC,EAAU,CACxD,GAAI,EACJ,CAAA,CAIN,SAAS,qBAAqB,CAC5B,UAAU,GACV,OAAO,KACP,WAAW,GACX,YACA,GAAG,GACyB,CAG5B,OACE,EAHW,EAAU,EAAK,KAAO,IAGjC,CACE,YAAU,0BACV,eAAa,kBACb,YAAW,EACX,cAAa,EACb,UAAW,EACT,4oBACA,EACD,CACD,GAAI,EACJ,CAAA"}
@@ -6,7 +6,7 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
6
6
 
7
7
  //#region src/components/spinner.d.ts
8
8
  declare const spinnerVariants: (props?: ({
9
- size?: "sm" | "default" | "lg" | null | undefined;
9
+ size?: "default" | "sm" | "lg" | null | undefined;
10
10
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
11
11
  type SpinnerProps = React.ComponentProps<'svg'> & VariantProps<typeof spinnerVariants>;
12
12
  declare function Spinner({
@@ -6,7 +6,7 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
6
6
 
7
7
  //#region src/components/stack.d.ts
8
8
  declare const stackVariants: (props?: ({
9
- size?: "xs" | "sm" | "lg" | "md" | "xl" | null | undefined;
9
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
10
10
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
11
11
  type StackProps = React.ComponentProps<'div'> & VariantProps<typeof stackVariants>;
12
12
  declare function Stack({
@@ -0,0 +1,22 @@
1
+ import { t as __name } from "../chunk-IpJEthwI.js";
2
+ import * as react_jsx_runtime0 from "react/jsx-runtime";
3
+ import { VariantProps } from "class-variance-authority";
4
+ import * as React from "react";
5
+ import * as class_variance_authority_types0 from "class-variance-authority/types";
6
+
7
+ //#region src/components/text.d.ts
8
+ declare const textVariants: (props?: ({
9
+ size?: "xs" | "sm" | "md" | "lg" | "xl" | null | undefined;
10
+ } & class_variance_authority_types0.ClassProp) | undefined) => string;
11
+ type TextProps = React.ComponentProps<'p'> & VariantProps<typeof textVariants> & {
12
+ asChild?: boolean;
13
+ };
14
+ declare function Text({
15
+ className,
16
+ size,
17
+ asChild,
18
+ ...props
19
+ }: TextProps): react_jsx_runtime0.JSX.Element;
20
+ //#endregion
21
+ export { Text, TextProps, textVariants };
22
+ //# sourceMappingURL=text.d.ts.map
@@ -0,0 +1,2 @@
1
+ import"../chunk-IpJEthwI.js";import{cn as e}from"../lib/utils.js";import{Slot as t}from"radix-ui";import{jsx as n}from"react/jsx-runtime";import{cva as r}from"class-variance-authority";const i=r(`text-foreground font-normal`,{variants:{size:{xs:`text-xs leading-4`,sm:`text-sm leading-5`,md:`text-base leading-6`,lg:`text-lg leading-7`,xl:`text-xl leading-8`}},defaultVariants:{size:`md`}});function Text({className:r,size:a=`md`,asChild:o=!1,...s}){return n(o?t.Root:`p`,{"data-slot":`text`,"data-size":a,className:e(i({size:a}),r),...s})}export{Text,i as textVariants};
2
+ //# sourceMappingURL=text.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","names":[],"sources":["../../src/components/text.tsx"],"sourcesContent":["import type * as React from 'react'\n\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport { Slot } from 'radix-ui'\n\nimport { cn } from '../lib/utils'\n\nconst textVariants = cva('text-foreground font-normal', {\n variants: {\n size: {\n xs: 'text-xs leading-4',\n sm: 'text-sm leading-5',\n md: 'text-base leading-6',\n lg: 'text-lg leading-7',\n xl: 'text-xl leading-8'\n }\n },\n defaultVariants: {\n size: 'md'\n }\n})\n\nexport type TextProps = React.ComponentProps<'p'> &\n VariantProps<typeof textVariants> & {\n asChild?: boolean\n }\n\nfunction Text({ className, size = 'md', asChild = false, ...props }: TextProps) {\n const Comp = asChild ? Slot.Root : 'p'\n\n return <Comp data-slot=\"text\" data-size={size} className={cn(textVariants({ size }), className)} {...props} />\n}\n\nexport { Text, textVariants }\n"],"mappings":"yLAOA,MAAM,EAAe,EAAI,8BAA+B,CACtD,SAAU,CACR,KAAM,CACJ,GAAI,oBACJ,GAAI,oBACJ,GAAI,sBACJ,GAAI,oBACJ,GAAI,oBACL,CACF,CACD,gBAAiB,CACf,KAAM,KACP,CACF,CAAC,CAOF,SAAS,KAAK,CAAE,YAAW,OAAO,KAAM,UAAU,GAAO,GAAG,GAAoB,CAG9E,OAAO,EAFM,EAAU,EAAK,KAAO,IAE5B,CAAM,YAAU,OAAO,YAAW,EAAM,UAAW,EAAG,EAAa,CAAE,OAAM,CAAC,CAAE,EAAU,CAAE,GAAI,EAAS,CAAA"}
@@ -0,0 +1,63 @@
1
+ import { t as __name } from "../chunk-IpJEthwI.js";
2
+ import { VariantProps } from "class-variance-authority";
3
+ import * as React from "react";
4
+ import * as class_variance_authority_types0 from "class-variance-authority/types";
5
+
6
+ //#region src/components/timeline.d.ts
7
+ declare const timelineVariants: (props?: ({
8
+ size?: "sm" | "md" | "lg" | null | undefined;
9
+ } & class_variance_authority_types0.ClassProp) | undefined) => string;
10
+ declare const timelineConnectorVariants: (props?: ({
11
+ status?: "pending" | "completed" | "in-progress" | null | undefined;
12
+ color?: "destructive" | "secondary" | "primary" | "muted" | "accent" | "gradient" | null | undefined;
13
+ } & class_variance_authority_types0.ClassProp) | undefined) => string;
14
+ declare const timelineIconVariants: (props?: ({
15
+ color?: "destructive" | "secondary" | "primary" | "muted" | "accent" | null | undefined;
16
+ size?: "sm" | "md" | "lg" | null | undefined;
17
+ } & class_variance_authority_types0.ClassProp) | undefined) => string;
18
+ type TimelineIconSize = NonNullable<VariantProps<typeof timelineIconVariants>['size']>;
19
+ type TimelineConnectorColor = NonNullable<VariantProps<typeof timelineConnectorVariants>['color']>;
20
+ type TimelineIconColor = NonNullable<VariantProps<typeof timelineIconVariants>['color']>;
21
+ type TimelineStatus = NonNullable<VariantProps<typeof timelineConnectorVariants>['status']>;
22
+ type TimelineProps = React.ComponentProps<'ol'> & VariantProps<typeof timelineVariants> & {
23
+ iconSize?: TimelineIconSize;
24
+ };
25
+ declare const Timeline: React.ForwardRefExoticComponent<Omit<TimelineProps, "ref"> & React.RefAttributes<HTMLOListElement>>;
26
+ type TimelineItemProps = React.ComponentProps<'li'> & {
27
+ date?: React.ReactNode;
28
+ title?: React.ReactNode;
29
+ description?: React.ReactNode;
30
+ icon?: React.ReactNode;
31
+ iconColor?: TimelineIconColor;
32
+ status?: TimelineStatus;
33
+ connectorColor?: TimelineConnectorColor;
34
+ showConnector?: boolean;
35
+ iconSize?: TimelineIconSize;
36
+ loading?: boolean;
37
+ error?: React.ReactNode;
38
+ };
39
+ declare const TimelineItem: React.ForwardRefExoticComponent<Omit<TimelineItemProps, "ref"> & React.RefAttributes<HTMLLIElement>>;
40
+ type TimelineTimeProps = React.ComponentProps<'time'> & {
41
+ date?: string | Date | number;
42
+ format?: Intl.DateTimeFormatOptions;
43
+ };
44
+ declare const TimelineTime: React.ForwardRefExoticComponent<Omit<TimelineTimeProps, "ref"> & React.RefAttributes<HTMLTimeElement>>;
45
+ type TimelineConnectorProps = React.ComponentProps<'div'> & VariantProps<typeof timelineConnectorVariants>;
46
+ declare const TimelineConnector: React.ForwardRefExoticComponent<Omit<TimelineConnectorProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
47
+ type TimelineHeaderProps = React.ComponentProps<'div'>;
48
+ declare const TimelineHeader: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
49
+ type TimelineTitleProps = React.ComponentProps<'h3'>;
50
+ declare const TimelineTitle: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLHeadingElement>, HTMLHeadingElement>, "ref"> & React.RefAttributes<HTMLHeadingElement>>;
51
+ type TimelineIconProps = React.ComponentProps<'div'> & VariantProps<typeof timelineIconVariants> & {
52
+ icon?: React.ReactNode;
53
+ };
54
+ declare const TimelineIcon: React.ForwardRefExoticComponent<Omit<TimelineIconProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
55
+ type TimelineDescriptionProps = React.ComponentProps<'p'>;
56
+ declare const TimelineDescription: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLParagraphElement>, HTMLParagraphElement>, "ref"> & React.RefAttributes<HTMLParagraphElement>>;
57
+ type TimelineContentProps = React.ComponentProps<'div'>;
58
+ declare const TimelineContent: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
59
+ type TimelineEmptyProps = React.ComponentProps<'div'>;
60
+ declare const TimelineEmpty: React.ForwardRefExoticComponent<Omit<React.DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
61
+ //#endregion
62
+ export { Timeline, TimelineConnector, TimelineConnectorColor, TimelineConnectorProps, TimelineContent, TimelineContentProps, TimelineDescription, TimelineDescriptionProps, TimelineEmpty, TimelineEmptyProps, TimelineHeader, TimelineHeaderProps, TimelineIcon, TimelineIconColor, TimelineIconProps, TimelineIconSize, TimelineItem, TimelineItemProps, TimelineProps, TimelineStatus, TimelineTime, TimelineTimeProps, TimelineTitle, TimelineTitleProps, timelineVariants };
63
+ //# sourceMappingURL=timeline.d.ts.map
@@ -0,0 +1,2 @@
1
+ import"../chunk-IpJEthwI.js";import{cn as e}from"../lib/utils.js";import{Spinner as t}from"./spinner.js";import{IconAlertCircle as n}from"@tabler/icons-react";import{jsx as r,jsxs as i}from"react/jsx-runtime";import{cva as a}from"class-variance-authority";import*as o from"react";const s=a(`relative mx-auto m-0 flex w-full max-w-2xl min-h-150 list-none flex-col p-0 py-8`,{variants:{size:{sm:`gap-4`,md:`gap-6`,lg:`gap-8`}},defaultVariants:{size:`md`}}),c=a(`relative w-full last:mb-0`,{variants:{tone:{default:`mb-2`,error:`mb-2`}},defaultVariants:{tone:`default`}}),l=a(`w-0.5`,{variants:{status:{completed:`bg-primary`,"in-progress":`bg-accent`,pending:`bg-muted`},color:{primary:`bg-primary`,secondary:`bg-secondary`,muted:`bg-muted`,accent:`bg-accent`,destructive:`bg-destructive`,gradient:`bg-linear-to-b from-primary to-muted`}}}),u=a(`relative flex items-center justify-center rounded-full ring-8 ring-background shadow-sm`,{variants:{color:{primary:`bg-primary text-primary-foreground`,secondary:`bg-secondary text-secondary-foreground`,muted:`bg-muted text-muted-foreground`,accent:`bg-accent text-accent-foreground`,destructive:`bg-destructive text-destructive-foreground`},size:{sm:`h-8 w-8`,md:`h-10 w-10`,lg:`h-12 w-12`}},defaultVariants:{color:`primary`,size:`md`}}),d=a(`flex items-center justify-center`,{variants:{size:{sm:`h-4 w-4`,md:`h-5 w-5`,lg:`h-6 w-6`}},defaultVariants:{size:`md`}}),f=o.forwardRef(({className:t,iconSize:n,size:i=`md`,children:a,...c},l)=>{let u=o.Children.toArray(a).filter(isTimelineItemElement).length;if(u===0)return r(`ol`,{ref:l,"aria-label":`Timeline`,"data-slot":`timeline`,"data-size":i,className:e(s({size:i}),t),...c,children:r(`li`,{className:`list-none`,children:r(S,{})})});let d=0;return r(`ol`,{ref:l,"aria-label":`Timeline`,"data-slot":`timeline`,"data-size":i,className:e(s({size:i}),t),...c,children:o.Children.map(a,e=>{if(!isTimelineItemElement(e))return e;let t=d===u-1;return d+=1,o.cloneElement(e,{iconSize:e.props.iconSize??n,showConnector:e.props.showConnector??!t})})})});f.displayName=`Timeline`;const p=o.forwardRef(({className:a,children:o,date:s,title:l,description:u,icon:d,iconColor:f,status:p=`completed`,connectorColor:m,showConnector:S=!0,iconSize:C,loading:w=!1,error:T,...E},D)=>w?r(`li`,{ref:D,"aria-busy":`true`,"data-slot":`timeline-item`,"data-status":p,className:e(c(),a),...E,children:i(`div`,{className:`grid grid-cols-[minmax(auto,8rem)_auto_1fr] items-start px-4`,children:[r(`div`,{className:`pr-4 text-right`,children:r(`div`,{className:`h-4 w-24 animate-pulse rounded bg-muted`})}),i(`div`,{className:`mx-3 flex flex-col items-center justify-start gap-y-2`,children:[r(`div`,{className:`relative flex h-8 w-8 animate-pulse items-center justify-center rounded-full bg-muted ring-8 ring-background`,children:r(t,{})}),S&&r(`div`,{className:`h-full w-0.5 animate-pulse bg-muted`})]}),r(`div`,{className:`flex flex-col gap-2 pl-2`,children:i(`div`,{className:`space-y-2`,children:[r(`div`,{className:`h-4 w-24 animate-pulse rounded bg-muted`}),r(`div`,{className:`h-3 w-48 animate-pulse rounded bg-muted`})]})})]})}):T?r(`li`,{ref:D,role:`alert`,"data-slot":`timeline-item`,"data-status":`error`,className:e(c({tone:`error`}),a),...E,children:i(`div`,{className:`grid grid-cols-[minmax(auto,8rem)_auto_1fr] items-start px-4`,children:[r(`div`,{className:`pr-4 text-right`,children:r(h,{className:`text-destructive`,children:s})}),i(`div`,{className:`mx-3 flex flex-col items-center justify-start gap-y-2`,children:[r(`div`,{className:`relative flex h-8 w-8 items-center justify-center rounded-full bg-destructive/20 ring-8 ring-background`,children:r(n,{className:`h-4 w-4 text-destructive`})}),S&&r(g,{color:`destructive`,className:`h-full`})]}),i(`div`,{className:`flex flex-col gap-2 pl-2`,children:[r(_,{children:r(v,{className:`text-destructive`,children:l||`Error`})}),r(b,{className:`text-destructive`,children:T})]})]})}):o==null?r(`li`,{ref:D,"data-slot":`timeline-item`,"data-status":p,className:e(c(),a),"aria-current":p===`in-progress`?`step`:void 0,...E,children:i(`div`,{className:`grid grid-cols-[1fr_auto_1fr] items-start gap-4`,children:[r(`div`,{className:`flex flex-col justify-start pt-1`,children:r(h,{className:`pr-4 text-right`,children:s})}),i(`div`,{className:`flex flex-col items-center`,children:[r(`div`,{className:`relative z-10`,children:r(y,{icon:d,color:f??(p===`pending`?`muted`:`primary`),size:C})}),S&&r(g,{status:p,color:m,className:`mt-2 h-16`})]}),i(x,{children:[r(_,{children:r(v,{children:l})}),r(b,{children:u})]})]})}):r(`li`,{ref:D,"data-slot":`timeline-item`,"data-status":p,className:e(c(),a),"aria-current":p===`in-progress`?`step`:void 0,...E,children:o}));p.displayName=`TimelineItem`;const m={year:`numeric`,month:`short`,day:`2-digit`},h=o.forwardRef(({className:t,date:n,format:i,children:a,...s},c)=>{let l=o.useMemo(()=>getValidDate(n),[n]),u=o.useMemo(()=>l?new Intl.DateTimeFormat(`en-US`,{...m,...i}).format(l):``,[l,i]);return r(`time`,{ref:c,"data-slot":`timeline-time`,dateTime:l?.toISOString(),className:e(`text-sm font-medium tracking-tight text-muted-foreground`,t),...s,children:a||u})});h.displayName=`TimelineTime`;const g=o.forwardRef(({className:t,status:n=`completed`,color:i,...a},o)=>r(`div`,{ref:o,"data-slot":`timeline-connector`,"data-status":n,"data-color":i,className:e(l(i?{color:i}:{status:n}),t),...a}));g.displayName=`TimelineConnector`;const _=o.forwardRef(({className:t,...n},i)=>r(`div`,{ref:i,"data-slot":`timeline-header`,className:e(`flex items-center gap-4`,t),...n}));_.displayName=`TimelineHeader`;const v=o.forwardRef(({className:t,...n},i)=>r(`h3`,{ref:i,"data-slot":`timeline-title`,className:e(`font-semibold leading-none tracking-tight text-secondary-foreground`,t),...n}));v.displayName=`TimelineTitle`;const y=o.forwardRef(({className:t,color:n=`primary`,icon:i,size:a=`md`,...o},s)=>r(`div`,{ref:s,"data-slot":`timeline-icon`,"data-color":n,"data-size":a,className:e(u({color:n,size:a}),t),...o,children:i?r(`div`,{className:d({size:a}),children:i}):r(`div`,{className:e(`rounded-full`,d({size:a}))})}));y.displayName=`TimelineIcon`;const b=o.forwardRef(({className:t,...n},i)=>r(`p`,{ref:i,"data-slot":`timeline-description`,className:e(`max-w-sm text-sm text-muted-foreground`,t),...n}));b.displayName=`TimelineDescription`;const x=o.forwardRef(({className:t,...n},i)=>r(`div`,{ref:i,"data-slot":`timeline-content`,className:e(`flex flex-col gap-2 pl-2`,t),...n}));x.displayName=`TimelineContent`;const S=o.forwardRef(({className:t,children:n,...i},a)=>r(`div`,{ref:a,"data-slot":`timeline-empty`,className:e(`flex flex-col items-center justify-center p-8 text-center`,t),...i,children:r(`p`,{className:`text-sm text-muted-foreground`,children:n||`No timeline items to display`})}));S.displayName=`TimelineEmpty`;function getValidDate(e){if(e==null||e===``)return null;let t=e instanceof Date?e:new Date(e);return Number.isNaN(t.getTime())?null:t}function isTimelineItemElement(e){return o.isValidElement(e)&&e.type===p}export{f as Timeline,g as TimelineConnector,x as TimelineContent,b as TimelineDescription,S as TimelineEmpty,_ as TimelineHeader,y as TimelineIcon,p as TimelineItem,h as TimelineTime,v as TimelineTitle,s as timelineVariants};
2
+ //# sourceMappingURL=timeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timeline.js","names":[],"sources":["../../src/components/timeline.tsx"],"sourcesContent":["import * as React from 'react'\n\nimport { IconAlertCircle } from '@tabler/icons-react'\nimport { cva, type VariantProps } from 'class-variance-authority'\n\nimport { cn } from '../lib/utils'\nimport { Spinner } from './spinner'\n\nconst timelineVariants = cva('relative mx-auto m-0 flex w-full max-w-2xl min-h-150 list-none flex-col p-0 py-8', {\n variants: {\n size: {\n sm: 'gap-4',\n md: 'gap-6',\n lg: 'gap-8'\n }\n },\n defaultVariants: {\n size: 'md'\n }\n})\n\nconst timelineItemVariants = cva('relative w-full last:mb-0', {\n variants: {\n tone: {\n default: 'mb-2',\n error: 'mb-2'\n }\n },\n defaultVariants: {\n tone: 'default'\n }\n})\n\nconst timelineConnectorVariants = cva('w-0.5', {\n variants: {\n status: {\n completed: 'bg-primary',\n 'in-progress': 'bg-accent',\n pending: 'bg-muted'\n },\n color: {\n primary: 'bg-primary',\n secondary: 'bg-secondary',\n muted: 'bg-muted',\n accent: 'bg-accent',\n destructive: 'bg-destructive',\n gradient: 'bg-linear-to-b from-primary to-muted'\n }\n }\n})\n\nconst timelineIconVariants = cva(\n 'relative flex items-center justify-center rounded-full ring-8 ring-background shadow-sm',\n {\n variants: {\n color: {\n primary: 'bg-primary text-primary-foreground',\n secondary: 'bg-secondary text-secondary-foreground',\n muted: 'bg-muted text-muted-foreground',\n accent: 'bg-accent text-accent-foreground',\n destructive: 'bg-destructive text-destructive-foreground'\n },\n size: {\n sm: 'h-8 w-8',\n md: 'h-10 w-10',\n lg: 'h-12 w-12'\n }\n },\n defaultVariants: {\n color: 'primary',\n size: 'md'\n }\n }\n)\n\nconst timelineIconContentVariants = cva('flex items-center justify-center', {\n variants: {\n size: {\n sm: 'h-4 w-4',\n md: 'h-5 w-5',\n lg: 'h-6 w-6'\n }\n },\n defaultVariants: {\n size: 'md'\n }\n})\n\nexport type TimelineIconSize = NonNullable<VariantProps<typeof timelineIconVariants>['size']>\nexport type TimelineConnectorColor = NonNullable<VariantProps<typeof timelineConnectorVariants>['color']>\nexport type TimelineIconColor = NonNullable<VariantProps<typeof timelineIconVariants>['color']>\nexport type TimelineStatus = NonNullable<VariantProps<typeof timelineConnectorVariants>['status']>\n\nexport type TimelineProps = React.ComponentProps<'ol'> &\n VariantProps<typeof timelineVariants> & {\n iconSize?: TimelineIconSize\n }\n\nconst Timeline = React.forwardRef<HTMLOListElement, TimelineProps>(\n ({ className, iconSize, size = 'md', children, ...props }, ref) => {\n const childArray = React.Children.toArray(children)\n const totalItems = childArray.filter(isTimelineItemElement).length\n\n if (totalItems === 0) {\n return (\n <ol\n ref={ref}\n aria-label=\"Timeline\"\n data-slot=\"timeline\"\n data-size={size}\n className={cn(timelineVariants({ size }), className)}\n {...props}\n >\n <li className=\"list-none\">\n <TimelineEmpty />\n </li>\n </ol>\n )\n }\n\n let itemIndex = 0\n\n return (\n <ol\n ref={ref}\n aria-label=\"Timeline\"\n data-slot=\"timeline\"\n data-size={size}\n className={cn(timelineVariants({ size }), className)}\n {...props}\n >\n {React.Children.map(children, (child) => {\n if (!isTimelineItemElement(child)) {\n return child\n }\n\n const isLastItem = itemIndex === totalItems - 1\n itemIndex += 1\n\n return React.cloneElement(child, {\n iconSize: child.props.iconSize ?? iconSize,\n showConnector: child.props.showConnector ?? !isLastItem\n })\n })}\n </ol>\n )\n }\n)\nTimeline.displayName = 'Timeline'\n\nexport type TimelineItemProps = React.ComponentProps<'li'> & {\n date?: React.ReactNode\n title?: React.ReactNode\n description?: React.ReactNode\n icon?: React.ReactNode\n iconColor?: TimelineIconColor\n status?: TimelineStatus\n connectorColor?: TimelineConnectorColor\n showConnector?: boolean\n iconSize?: TimelineIconSize\n loading?: boolean\n error?: React.ReactNode\n}\n\nconst TimelineItem = React.forwardRef<HTMLLIElement, TimelineItemProps>(\n (\n {\n className,\n children,\n date,\n title,\n description,\n icon,\n iconColor,\n status = 'completed',\n connectorColor,\n showConnector = true,\n iconSize,\n loading = false,\n error,\n ...props\n },\n ref\n ) => {\n if (loading) {\n return (\n <li\n ref={ref}\n aria-busy=\"true\"\n data-slot=\"timeline-item\"\n data-status={status}\n className={cn(timelineItemVariants(), className)}\n {...props}\n >\n <div className=\"grid grid-cols-[minmax(auto,8rem)_auto_1fr] items-start px-4\">\n <div className=\"pr-4 text-right\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n </div>\n\n <div className=\"mx-3 flex flex-col items-center justify-start gap-y-2\">\n <div className=\"relative flex h-8 w-8 animate-pulse items-center justify-center rounded-full bg-muted ring-8 ring-background\">\n <Spinner />\n </div>\n {showConnector && <div className=\"h-full w-0.5 animate-pulse bg-muted\" />}\n </div>\n\n <div className=\"flex flex-col gap-2 pl-2\">\n <div className=\"space-y-2\">\n <div className=\"h-4 w-24 animate-pulse rounded bg-muted\" />\n <div className=\"h-3 w-48 animate-pulse rounded bg-muted\" />\n </div>\n </div>\n </div>\n </li>\n )\n }\n\n if (error) {\n return (\n <li\n ref={ref}\n role=\"alert\"\n data-slot=\"timeline-item\"\n data-status=\"error\"\n className={cn(timelineItemVariants({ tone: 'error' }), className)}\n {...props}\n >\n <div className=\"grid grid-cols-[minmax(auto,8rem)_auto_1fr] items-start px-4\">\n <div className=\"pr-4 text-right\">\n <TimelineTime className=\"text-destructive\">{date}</TimelineTime>\n </div>\n\n <div className=\"mx-3 flex flex-col items-center justify-start gap-y-2\">\n <div className=\"relative flex h-8 w-8 items-center justify-center rounded-full bg-destructive/20 ring-8 ring-background\">\n <IconAlertCircle className=\"h-4 w-4 text-destructive\" />\n </div>\n {showConnector && <TimelineConnector color=\"destructive\" className=\"h-full\" />}\n </div>\n\n <div className=\"flex flex-col gap-2 pl-2\">\n <TimelineHeader>\n <TimelineTitle className=\"text-destructive\">{title || 'Error'}</TimelineTitle>\n </TimelineHeader>\n <TimelineDescription className=\"text-destructive\">{error}</TimelineDescription>\n </div>\n </div>\n </li>\n )\n }\n\n if (children != null) {\n return (\n <li\n ref={ref}\n data-slot=\"timeline-item\"\n data-status={status}\n className={cn(timelineItemVariants(), className)}\n aria-current={status === 'in-progress' ? 'step' : undefined}\n {...props}\n >\n {children}\n </li>\n )\n }\n\n return (\n <li\n ref={ref}\n data-slot=\"timeline-item\"\n data-status={status}\n className={cn(timelineItemVariants(), className)}\n aria-current={status === 'in-progress' ? 'step' : undefined}\n {...props}\n >\n <div className=\"grid grid-cols-[1fr_auto_1fr] items-start gap-4\">\n <div className=\"flex flex-col justify-start pt-1\">\n <TimelineTime className=\"pr-4 text-right\">{date}</TimelineTime>\n </div>\n\n <div className=\"flex flex-col items-center\">\n <div className=\"relative z-10\">\n <TimelineIcon\n icon={icon}\n color={iconColor ?? (status === 'pending' ? 'muted' : 'primary')}\n size={iconSize}\n />\n </div>\n {showConnector && <TimelineConnector status={status} color={connectorColor} className=\"mt-2 h-16\" />}\n </div>\n\n <TimelineContent>\n <TimelineHeader>\n <TimelineTitle>{title}</TimelineTitle>\n </TimelineHeader>\n <TimelineDescription>{description}</TimelineDescription>\n </TimelineContent>\n </div>\n </li>\n )\n }\n)\nTimelineItem.displayName = 'TimelineItem'\n\nexport type TimelineTimeProps = React.ComponentProps<'time'> & {\n date?: string | Date | number\n format?: Intl.DateTimeFormatOptions\n}\n\nconst defaultDateFormat: Intl.DateTimeFormatOptions = {\n year: 'numeric',\n month: 'short',\n day: '2-digit'\n}\n\nconst TimelineTime = React.forwardRef<HTMLTimeElement, TimelineTimeProps>(\n ({ className, date, format, children, ...props }, ref) => {\n const dateValue = React.useMemo(() => getValidDate(date), [date])\n\n const formattedDate = React.useMemo(() => {\n if (!dateValue) {\n return ''\n }\n\n return new Intl.DateTimeFormat('en-US', {\n ...defaultDateFormat,\n ...format\n }).format(dateValue)\n }, [dateValue, format])\n\n return (\n <time\n ref={ref}\n data-slot=\"timeline-time\"\n dateTime={dateValue?.toISOString()}\n className={cn('text-sm font-medium tracking-tight text-muted-foreground', className)}\n {...props}\n >\n {children || formattedDate}\n </time>\n )\n }\n)\nTimelineTime.displayName = 'TimelineTime'\n\nexport type TimelineConnectorProps = React.ComponentProps<'div'> & VariantProps<typeof timelineConnectorVariants>\n\nconst TimelineConnector = React.forwardRef<HTMLDivElement, TimelineConnectorProps>(\n ({ className, status = 'completed', color, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"timeline-connector\"\n data-status={status}\n data-color={color}\n className={cn(color ? timelineConnectorVariants({ color }) : timelineConnectorVariants({ status }), className)}\n {...props}\n />\n )\n)\nTimelineConnector.displayName = 'TimelineConnector'\n\nexport type TimelineHeaderProps = React.ComponentProps<'div'>\n\nconst TimelineHeader = React.forwardRef<HTMLDivElement, TimelineHeaderProps>(({ className, ...props }, ref) => (\n <div ref={ref} data-slot=\"timeline-header\" className={cn('flex items-center gap-4', className)} {...props} />\n))\nTimelineHeader.displayName = 'TimelineHeader'\n\nexport type TimelineTitleProps = React.ComponentProps<'h3'>\n\nconst TimelineTitle = React.forwardRef<HTMLHeadingElement, TimelineTitleProps>(({ className, ...props }, ref) => (\n <h3\n ref={ref}\n data-slot=\"timeline-title\"\n className={cn('font-semibold leading-none tracking-tight text-secondary-foreground', className)}\n {...props}\n />\n))\nTimelineTitle.displayName = 'TimelineTitle'\n\nexport type TimelineIconProps = React.ComponentProps<'div'> &\n VariantProps<typeof timelineIconVariants> & {\n icon?: React.ReactNode\n }\n\nconst TimelineIcon = React.forwardRef<HTMLDivElement, TimelineIconProps>(\n ({ className, color = 'primary', icon, size = 'md', ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"timeline-icon\"\n data-color={color}\n data-size={size}\n className={cn(timelineIconVariants({ color, size }), className)}\n {...props}\n >\n {icon ? (\n <div className={timelineIconContentVariants({ size })}>{icon}</div>\n ) : (\n <div className={cn('rounded-full', timelineIconContentVariants({ size }))} />\n )}\n </div>\n )\n)\nTimelineIcon.displayName = 'TimelineIcon'\n\nexport type TimelineDescriptionProps = React.ComponentProps<'p'>\n\nconst TimelineDescription = React.forwardRef<HTMLParagraphElement, TimelineDescriptionProps>(\n ({ className, ...props }, ref) => (\n <p\n ref={ref}\n data-slot=\"timeline-description\"\n className={cn('max-w-sm text-sm text-muted-foreground', className)}\n {...props}\n />\n )\n)\nTimelineDescription.displayName = 'TimelineDescription'\n\nexport type TimelineContentProps = React.ComponentProps<'div'>\n\nconst TimelineContent = React.forwardRef<HTMLDivElement, TimelineContentProps>(({ className, ...props }, ref) => (\n <div ref={ref} data-slot=\"timeline-content\" className={cn('flex flex-col gap-2 pl-2', className)} {...props} />\n))\nTimelineContent.displayName = 'TimelineContent'\n\nexport type TimelineEmptyProps = React.ComponentProps<'div'>\n\nconst TimelineEmpty = React.forwardRef<HTMLDivElement, TimelineEmptyProps>(({ className, children, ...props }, ref) => (\n <div\n ref={ref}\n data-slot=\"timeline-empty\"\n className={cn('flex flex-col items-center justify-center p-8 text-center', className)}\n {...props}\n >\n <p className=\"text-sm text-muted-foreground\">{children || 'No timeline items to display'}</p>\n </div>\n))\nTimelineEmpty.displayName = 'TimelineEmpty'\n\nfunction getValidDate(date?: string | Date | number) {\n if (date == null || date === '') {\n return null\n }\n\n const parsedDate = date instanceof Date ? date : new Date(date)\n\n return Number.isNaN(parsedDate.getTime()) ? null : parsedDate\n}\n\nfunction isTimelineItemElement(child: React.ReactNode): child is React.ReactElement<TimelineItemProps> {\n return React.isValidElement(child) && child.type === TimelineItem\n}\n\nexport {\n Timeline,\n TimelineConnector,\n TimelineContent,\n TimelineDescription,\n TimelineEmpty,\n TimelineHeader,\n TimelineIcon,\n TimelineItem,\n TimelineTime,\n TimelineTitle,\n timelineVariants\n}\n"],"mappings":"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"}
@@ -8,7 +8,7 @@ import * as class_variance_authority_types0 from "class-variance-authority/types
8
8
  //#region src/components/toggle.d.ts
9
9
  declare const toggleVariants: (props?: ({
10
10
  variant?: "default" | "outline" | null | undefined;
11
- size?: "sm" | "default" | "lg" | null | undefined;
11
+ size?: "default" | "sm" | "lg" | null | undefined;
12
12
  } & class_variance_authority_types0.ClassProp) | undefined) => string;
13
13
  type ToggleProps = React.ComponentProps<typeof Toggle$1.Root> & VariantProps<typeof toggleVariants>;
14
14
  declare function Toggle({
package/dist/index.d.ts CHANGED
@@ -2,6 +2,7 @@ import { Accordion, AccordionContent, AccordionContentProps, AccordionItem, Acco
2
2
  import { Button, ButtonProps, buttonVariants } from "./components/button.js";
3
3
  import { AlertDialog, AlertDialogAction, AlertDialogActionProps, AlertDialogCancel, AlertDialogCancelProps, AlertDialogContent, AlertDialogContentProps, AlertDialogDescription, AlertDialogDescriptionProps, AlertDialogFooter, AlertDialogFooterProps, AlertDialogHeader, AlertDialogHeaderProps, AlertDialogMedia, AlertDialogMediaProps, AlertDialogOverlay, AlertDialogOverlayProps, AlertDialogPortal, AlertDialogPortalProps, AlertDialogProps, AlertDialogTitle, AlertDialogTitleProps, AlertDialogTrigger, AlertDialogTriggerProps } from "./components/alert-dialog.js";
4
4
  import { Alert, AlertAction, AlertActionProps, AlertDescription, AlertDescriptionProps, AlertProps, AlertTitle, AlertTitleProps } from "./components/alert.js";
5
+ import { Anchor, AnchorProps, anchorVariants } from "./components/anchor.js";
5
6
  import { Avatar, AvatarBadge, AvatarBadgeProps, AvatarFallback, AvatarFallbackProps, AvatarGroup, AvatarGroupCount, AvatarGroupCountProps, AvatarGroupProps, AvatarImage, AvatarImageProps, AvatarProps } from "./components/avatar.js";
6
7
  import { Badge, BadgeProps, badgeVariants } from "./components/badge.js";
7
8
  import { Breadcrumb, BreadcrumbEllipsis, BreadcrumbEllipsisProps, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps } from "./components/breadcrumb.js";
@@ -13,6 +14,7 @@ import { Carousel, CarouselApi, CarouselContent, CarouselContentProps, CarouselI
13
14
  import { Center, CenterProps, centerVariants } from "./components/center.js";
14
15
  import { Bar, BarChart, CartesianGrid, ChartConfig, ChartContainer, ChartContainerProps, ChartLegend, ChartLegendContent, ChartLegendContentProps, ChartLegendProps, ChartStyle, ChartStyleProps, ChartTooltip, ChartTooltipContent, ChartTooltipContentProps, ChartTooltipProps, XAxis } from "./components/chart.js";
15
16
  import { Checkbox, CheckboxProps } from "./components/checkbox.js";
17
+ import { Code, CodeProps } from "./components/code.js";
16
18
  import { Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps } from "./components/collapsible.js";
17
19
  import { Combobox, ComboboxChip, ComboboxChipProps, ComboboxChips, ComboboxChipsInput, ComboboxChipsInputProps, ComboboxChipsProps, ComboboxClear, ComboboxClearProps, ComboboxCollection, ComboboxCollectionProps, ComboboxContent, ComboboxContentProps, ComboboxEmpty, ComboboxEmptyProps, ComboboxGroup, ComboboxGroupProps, ComboboxInput, ComboboxInputProps, ComboboxItem, ComboboxItemProps, ComboboxLabel, ComboboxLabelProps, ComboboxList, ComboboxListProps, ComboboxProps, ComboboxSeparator, ComboboxSeparatorProps, ComboboxTrigger, ComboboxTriggerProps, ComboboxValue, ComboboxValueProps, useComboboxAnchor } from "./components/combobox.js";
18
20
  import { Dialog, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogOverlay, DialogOverlayProps, DialogPortal, DialogPortalProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps } from "./components/dialog.js";
@@ -20,15 +22,18 @@ import { Command, CommandDialog, CommandDialogProps, CommandEmpty, CommandEmptyP
20
22
  import { Container, ContainerProps, containerVariants } from "./components/container.js";
21
23
  import { Drawer, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerOverlay, DrawerOverlayProps, DrawerPortal, DrawerPortalProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps } from "./components/drawer.js";
22
24
  import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuCheckboxItemProps, DropdownMenuContent, DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuGroupProps, DropdownMenuItem, DropdownMenuItemProps, DropdownMenuLabel, DropdownMenuLabelProps, DropdownMenuPortal, DropdownMenuPortalProps, DropdownMenuProps, DropdownMenuRadioGroup, DropdownMenuRadioGroupProps, DropdownMenuRadioItem, DropdownMenuRadioItemProps, DropdownMenuSeparator, DropdownMenuSeparatorProps, DropdownMenuShortcut, DropdownMenuShortcutProps, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubContentProps, DropdownMenuSubProps, DropdownMenuSubTrigger, DropdownMenuSubTriggerProps, DropdownMenuTrigger, DropdownMenuTriggerProps } from "./components/dropdown-menu.js";
25
+ import { Dropzone, DropzoneArea, DropzoneAreaProps, DropzoneDescription, DropzoneDescriptionProps, DropzoneFileList, DropzoneFileListItem, DropzoneFileListItemProps, DropzoneFileListProps, DropzoneFileMessage, DropzoneFileMessageProps, DropzoneFileStatus, DropzoneMessage, DropzoneMessageProps, DropzoneProps, DropzoneRemoveFile, DropzoneRemoveFileProps, DropzoneRetryFile, DropzoneRetryFileProps, DropzoneTrigger, DropzoneTriggerProps, DropzoneUploadResult, DropzoneValidation, ErrorCode, FileError, FileStatus, InfiniteProgress, InfiniteProgressProps, UseDropzoneProps, UseDropzoneReturn, useDropzone } from "./components/dropzone.js";
23
26
  import { Empty, EmptyContent, EmptyContentProps, EmptyDescription, EmptyDescriptionProps, EmptyHeader, EmptyHeaderProps, EmptyMedia, EmptyMediaProps, EmptyProps, EmptyTitle, EmptyTitleProps } from "./components/empty.js";
24
27
  import { Label, LabelProps } from "./components/label.js";
25
28
  import { Field, FieldContent, FieldContentProps, FieldDescription, FieldDescriptionProps, FieldError, FieldErrorProps, FieldGroup, FieldGroupProps, FieldLabel, FieldLabelProps, FieldLegend, FieldLegendProps, FieldProps, FieldSeparator, FieldSeparatorProps, FieldSet, FieldSetProps, FieldTitle, FieldTitleProps } from "./components/field.js";
26
29
  import { Group, GroupProps, groupVariants } from "./components/group.js";
30
+ import { Heading, HeadingProps, headingVariants } from "./components/heading.js";
27
31
  import { HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps } from "./components/hover-card.js";
28
32
  import { InputGroup, InputGroupAddon, InputGroupAddonProps, InputGroupButton, InputGroupButtonProps, InputGroupInput, InputGroupInputProps, InputGroupProps, InputGroupText, InputGroupTextProps, InputGroupTextarea, InputGroupTextareaProps } from "./components/input-group.js";
29
33
  import { InputOTP, InputOTPGroup, InputOTPGroupProps, InputOTPProps, InputOTPSeparator, InputOTPSeparatorProps, InputOTPSlot, InputOTPSlotProps, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS } from "./components/input-otp.js";
30
34
  import { Input, InputProps } from "./components/input.js";
31
35
  import { Kbd, KbdGroup, KbdGroupProps, KbdProps } from "./components/kbd.js";
36
+ import { List, ListIcon, ListIconProps, ListItem, ListItemProps, ListProps, listVariants } from "./components/list.js";
32
37
  import { NativeSelect, NativeSelectOptGroup, NativeSelectOptGroupProps, NativeSelectOption, NativeSelectOptionProps, NativeSelectProps } from "./components/native-select.js";
33
38
  import { NavigationMenu, NavigationMenuContent, NavigationMenuContentProps, NavigationMenuIndicator, NavigationMenuIndicatorProps, NavigationMenuItem, NavigationMenuItemProps, NavigationMenuLink, NavigationMenuLinkProps, NavigationMenuList, NavigationMenuListProps, NavigationMenuProps, NavigationMenuTrigger, NavigationMenuTriggerProps, NavigationMenuViewport, NavigationMenuViewportProps, navigationMenuTriggerStyle } from "./components/navigation-menu.js";
34
39
  import { Pagination, PaginationContent, PaginationContentProps, PaginationEllipsis, PaginationEllipsisProps, PaginationItem, PaginationItemProps, PaginationLink, PaginationLinkProps, PaginationNext, PaginationNextProps, PaginationPrevious, PaginationPreviousProps, PaginationProps } from "./components/pagination.js";
@@ -49,10 +54,13 @@ import { Stack, StackProps, stackVariants } from "./components/stack.js";
49
54
  import { Switch, SwitchProps } from "./components/switch.js";
50
55
  import { Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableProps, TableRow, TableRowProps } from "./components/table.js";
51
56
  import { Tabs, TabsContent, TabsContentProps, TabsList, TabsListProps, TabsProps, TabsTrigger, TabsTriggerProps, tabsListVariants } from "./components/tabs.js";
57
+ import { Text, TextProps, textVariants } from "./components/text.js";
52
58
  import { Textarea, TextareaProps } from "./components/textarea.js";
53
59
  import { ModeToggle, ModeToggleProps, Theme, ThemeProvider, ThemeProviderProps, ThemeProviderState, useTheme } from "./components/theme.js";
60
+ import { Timeline, TimelineConnector, TimelineConnectorColor, TimelineConnectorProps, TimelineContent, TimelineContentProps, TimelineDescription, TimelineDescriptionProps, TimelineEmpty, TimelineEmptyProps, TimelineHeader, TimelineHeaderProps, TimelineIcon, TimelineIconColor, TimelineIconProps, TimelineIconSize, TimelineItem, TimelineItemProps, TimelineProps, TimelineStatus, TimelineTime, TimelineTimeProps, TimelineTitle, TimelineTitleProps, timelineVariants } from "./components/timeline.js";
54
61
  import { Toggle, ToggleProps, toggleVariants } from "./components/toggle.js";
55
62
  import { ToggleGroup, ToggleGroupItem, ToggleGroupItemProps, ToggleGroupProps } from "./components/toggle-group.js";
56
63
  import { useIsMobile } from "./hooks/use-mobile.js";
64
+ import { ButtonColor, buttonColorVariants } from "./lib/button.js";
57
65
  import { cn } from "./lib/utils.js";
58
- export { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, AccordionTriggerProps, Alert, AlertAction, AlertActionProps, AlertDescription, AlertDescriptionProps, AlertDialog, AlertDialogAction, AlertDialogActionProps, AlertDialogCancel, AlertDialogCancelProps, AlertDialogContent, AlertDialogContentProps, AlertDialogDescription, AlertDialogDescriptionProps, AlertDialogFooter, AlertDialogFooterProps, AlertDialogHeader, AlertDialogHeaderProps, AlertDialogMedia, AlertDialogMediaProps, AlertDialogOverlay, AlertDialogOverlayProps, AlertDialogPortal, AlertDialogPortalProps, AlertDialogProps, AlertDialogTitle, AlertDialogTitleProps, AlertDialogTrigger, AlertDialogTriggerProps, AlertProps, AlertTitle, AlertTitleProps, Avatar, AvatarBadge, AvatarBadgeProps, AvatarFallback, AvatarFallbackProps, AvatarGroup, AvatarGroupCount, AvatarGroupCountProps, AvatarGroupProps, AvatarImage, AvatarImageProps, AvatarProps, Badge, BadgeProps, Bar, BarChart, Breadcrumb, BreadcrumbEllipsis, BreadcrumbEllipsisProps, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps, Button, ButtonGroup, ButtonGroupProps, ButtonGroupSeparator, ButtonGroupSeparatorProps, ButtonGroupText, ButtonGroupTextProps, ButtonProps, Calendar, CalendarDayButton, CalendarDayButtonProps, CalendarProps, Card, CardAction, CardActionProps, CardContent, CardContentProps, CardDescription, CardDescriptionProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps, Carousel, CarouselApi, CarouselContent, CarouselContentProps, CarouselItem, CarouselItemProps, CarouselNext, CarouselNextProps, CarouselPrevious, CarouselPreviousProps, CarouselProps, CartesianGrid, Center, CenterProps, ChartConfig, ChartContainer, ChartContainerProps, ChartLegend, ChartLegendContent, ChartLegendContentProps, ChartLegendProps, ChartStyle, ChartStyleProps, ChartTooltip, ChartTooltipContent, ChartTooltipContentProps, ChartTooltipProps, Checkbox, CheckboxProps, Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps, Combobox, ComboboxChip, ComboboxChipProps, ComboboxChips, ComboboxChipsInput, ComboboxChipsInputProps, ComboboxChipsProps, ComboboxClear, ComboboxClearProps, ComboboxCollection, ComboboxCollectionProps, ComboboxContent, ComboboxContentProps, ComboboxEmpty, ComboboxEmptyProps, ComboboxGroup, ComboboxGroupProps, ComboboxInput, ComboboxInputProps, ComboboxItem, ComboboxItemProps, ComboboxLabel, ComboboxLabelProps, ComboboxList, ComboboxListProps, ComboboxProps, ComboboxSeparator, ComboboxSeparatorProps, ComboboxTrigger, ComboboxTriggerProps, ComboboxValue, ComboboxValueProps, Command, CommandDialog, CommandDialogProps, CommandEmpty, CommandEmptyProps, CommandGroup, CommandGroupProps, CommandInput, CommandInputProps, CommandItem, CommandItemProps, CommandList, CommandListProps, CommandProps, CommandSeparator, CommandSeparatorProps, CommandShortcut, CommandShortcutProps, Container, ContainerProps, DateRange, Dialog, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogOverlay, DialogOverlayProps, DialogPortal, DialogPortalProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps, Drawer, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerOverlay, DrawerOverlayProps, DrawerPortal, DrawerPortalProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuCheckboxItemProps, DropdownMenuContent, DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuGroupProps, DropdownMenuItem, DropdownMenuItemProps, DropdownMenuLabel, DropdownMenuLabelProps, DropdownMenuPortal, DropdownMenuPortalProps, DropdownMenuProps, DropdownMenuRadioGroup, DropdownMenuRadioGroupProps, DropdownMenuRadioItem, DropdownMenuRadioItemProps, DropdownMenuSeparator, DropdownMenuSeparatorProps, DropdownMenuShortcut, DropdownMenuShortcutProps, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubContentProps, DropdownMenuSubProps, DropdownMenuSubTrigger, DropdownMenuSubTriggerProps, DropdownMenuTrigger, DropdownMenuTriggerProps, Empty, EmptyContent, EmptyContentProps, EmptyDescription, EmptyDescriptionProps, EmptyHeader, EmptyHeaderProps, EmptyMedia, EmptyMediaProps, EmptyProps, EmptyTitle, EmptyTitleProps, Field, FieldContent, FieldContentProps, FieldDescription, FieldDescriptionProps, FieldError, FieldErrorProps, FieldGroup, FieldGroupProps, FieldLabel, FieldLabelProps, FieldLegend, FieldLegendProps, FieldProps, FieldSeparator, FieldSeparatorProps, FieldSet, FieldSetProps, FieldTitle, FieldTitleProps, Group, GroupProps, HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps, Input, InputGroup, InputGroupAddon, InputGroupAddonProps, InputGroupButton, InputGroupButtonProps, InputGroupInput, InputGroupInputProps, InputGroupProps, InputGroupText, InputGroupTextProps, InputGroupTextarea, InputGroupTextareaProps, InputOTP, InputOTPGroup, InputOTPGroupProps, InputOTPProps, InputOTPSeparator, InputOTPSeparatorProps, InputOTPSlot, InputOTPSlotProps, InputProps, Kbd, KbdGroup, KbdGroupProps, KbdProps, Label, LabelProps, ModeToggle, ModeToggleProps, NativeSelect, NativeSelectOptGroup, NativeSelectOptGroupProps, NativeSelectOption, NativeSelectOptionProps, NativeSelectProps, NavigationMenu, NavigationMenuContent, NavigationMenuContentProps, NavigationMenuIndicator, NavigationMenuIndicatorProps, NavigationMenuItem, NavigationMenuItemProps, NavigationMenuLink, NavigationMenuLinkProps, NavigationMenuList, NavigationMenuListProps, NavigationMenuProps, NavigationMenuTrigger, NavigationMenuTriggerProps, NavigationMenuViewport, NavigationMenuViewportProps, Pagination, PaginationContent, PaginationContentProps, PaginationEllipsis, PaginationEllipsisProps, PaginationItem, PaginationItemProps, PaginationLink, PaginationLinkProps, PaginationNext, PaginationNextProps, PaginationPrevious, PaginationPreviousProps, PaginationProps, Popover, PopoverAnchor, PopoverAnchorProps, PopoverContent, PopoverContentProps, PopoverDescription, PopoverDescriptionProps, PopoverHeader, PopoverHeaderProps, PopoverProps, PopoverTitle, PopoverTitleProps, PopoverTrigger, PopoverTriggerProps, Progress, ProgressProps, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, RadioGroupItem, RadioGroupItemProps, RadioGroupProps, ResizableHandle, ResizableHandleProps, ResizablePanel, ResizablePanelGroup, ResizablePanelGroupProps, ResizablePanelProps, ScrollArea, ScrollAreaProps, ScrollBar, ScrollBarProps, Select, SelectContent, SelectContentProps, SelectGroup, SelectGroupProps, SelectItem, SelectItemProps, SelectLabel, SelectLabelProps, SelectProps, SelectScrollDownButton, SelectScrollDownButtonProps, SelectScrollUpButton, SelectScrollUpButtonProps, SelectSeparator, SelectSeparatorProps, SelectTrigger, SelectTriggerProps, SelectValue, SelectValueProps, Separator, SeparatorProps, Sheet, SheetClose, SheetCloseProps, SheetContent, SheetContentProps, SheetDescription, SheetDescriptionProps, SheetFooter, SheetFooterProps, SheetHeader, SheetHeaderProps, SheetOverlay, SheetOverlayProps, SheetPortal, SheetPortalProps, SheetProps, SheetTitle, SheetTitleProps, SheetTrigger, SheetTriggerProps, Sidebar, SidebarContent, SidebarContentProps, SidebarFooter, SidebarFooterProps, SidebarGroup, SidebarGroupAction, SidebarGroupActionProps, SidebarGroupContent, SidebarGroupContentProps, SidebarGroupLabel, SidebarGroupLabelProps, SidebarGroupProps, SidebarHeader, SidebarHeaderProps, SidebarInput, SidebarInputProps, SidebarInset, SidebarInsetProps, SidebarMenu, SidebarMenuAction, SidebarMenuActionProps, SidebarMenuBadge, SidebarMenuBadgeProps, SidebarMenuButton, SidebarMenuButtonProps, SidebarMenuItem, SidebarMenuItemProps, SidebarMenuProps, SidebarMenuSkeleton, SidebarMenuSkeletonProps, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubButtonProps, SidebarMenuSubItem, SidebarMenuSubItemProps, SidebarMenuSubProps, SidebarProps, SidebarProvider, SidebarProviderProps, SidebarRail, SidebarRailProps, SidebarSeparator, SidebarSeparatorProps, SidebarTrigger, SidebarTriggerProps, Skeleton, SkeletonProps, Slider, SliderProps, Spinner, SpinnerProps, Stack, StackProps, Switch, SwitchProps, Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableProps, TableRow, TableRowProps, Tabs, TabsContent, TabsContentProps, TabsList, TabsListProps, TabsProps, TabsTrigger, TabsTriggerProps, Textarea, TextareaProps, Theme, ThemeProvider, ThemeProviderProps, ThemeProviderState, Toaster, ToasterProps, Toggle, ToggleGroup, ToggleGroupItem, ToggleGroupItemProps, ToggleGroupProps, ToggleProps, Tooltip, TooltipContent, TooltipContentProps, TooltipProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps, XAxis, badgeVariants, buttonGroupVariants, buttonVariants, centerVariants, cn, containerVariants, groupVariants, navigationMenuTriggerStyle, spinnerVariants, stackVariants, tabsListVariants, toast, toggleVariants, useCarousel, useComboboxAnchor, useIsMobile, useSidebar, useTheme };
66
+ export { Accordion, AccordionContent, AccordionContentProps, AccordionItem, AccordionItemProps, AccordionProps, AccordionTrigger, AccordionTriggerProps, Alert, AlertAction, AlertActionProps, AlertDescription, AlertDescriptionProps, AlertDialog, AlertDialogAction, AlertDialogActionProps, AlertDialogCancel, AlertDialogCancelProps, AlertDialogContent, AlertDialogContentProps, AlertDialogDescription, AlertDialogDescriptionProps, AlertDialogFooter, AlertDialogFooterProps, AlertDialogHeader, AlertDialogHeaderProps, AlertDialogMedia, AlertDialogMediaProps, AlertDialogOverlay, AlertDialogOverlayProps, AlertDialogPortal, AlertDialogPortalProps, AlertDialogProps, AlertDialogTitle, AlertDialogTitleProps, AlertDialogTrigger, AlertDialogTriggerProps, AlertProps, AlertTitle, AlertTitleProps, Anchor, AnchorProps, Avatar, AvatarBadge, AvatarBadgeProps, AvatarFallback, AvatarFallbackProps, AvatarGroup, AvatarGroupCount, AvatarGroupCountProps, AvatarGroupProps, AvatarImage, AvatarImageProps, AvatarProps, Badge, BadgeProps, Bar, BarChart, Breadcrumb, BreadcrumbEllipsis, BreadcrumbEllipsisProps, BreadcrumbItem, BreadcrumbItemProps, BreadcrumbLink, BreadcrumbLinkProps, BreadcrumbList, BreadcrumbListProps, BreadcrumbPage, BreadcrumbPageProps, BreadcrumbProps, BreadcrumbSeparator, BreadcrumbSeparatorProps, Button, ButtonColor, ButtonGroup, ButtonGroupProps, ButtonGroupSeparator, ButtonGroupSeparatorProps, ButtonGroupText, ButtonGroupTextProps, ButtonProps, Calendar, CalendarDayButton, CalendarDayButtonProps, CalendarProps, Card, CardAction, CardActionProps, CardContent, CardContentProps, CardDescription, CardDescriptionProps, CardFooter, CardFooterProps, CardHeader, CardHeaderProps, CardProps, CardTitle, CardTitleProps, Carousel, CarouselApi, CarouselContent, CarouselContentProps, CarouselItem, CarouselItemProps, CarouselNext, CarouselNextProps, CarouselPrevious, CarouselPreviousProps, CarouselProps, CartesianGrid, Center, CenterProps, ChartConfig, ChartContainer, ChartContainerProps, ChartLegend, ChartLegendContent, ChartLegendContentProps, ChartLegendProps, ChartStyle, ChartStyleProps, ChartTooltip, ChartTooltipContent, ChartTooltipContentProps, ChartTooltipProps, Checkbox, CheckboxProps, Code, CodeProps, Collapsible, CollapsibleContent, CollapsibleContentProps, CollapsibleProps, CollapsibleTrigger, CollapsibleTriggerProps, Combobox, ComboboxChip, ComboboxChipProps, ComboboxChips, ComboboxChipsInput, ComboboxChipsInputProps, ComboboxChipsProps, ComboboxClear, ComboboxClearProps, ComboboxCollection, ComboboxCollectionProps, ComboboxContent, ComboboxContentProps, ComboboxEmpty, ComboboxEmptyProps, ComboboxGroup, ComboboxGroupProps, ComboboxInput, ComboboxInputProps, ComboboxItem, ComboboxItemProps, ComboboxLabel, ComboboxLabelProps, ComboboxList, ComboboxListProps, ComboboxProps, ComboboxSeparator, ComboboxSeparatorProps, ComboboxTrigger, ComboboxTriggerProps, ComboboxValue, ComboboxValueProps, Command, CommandDialog, CommandDialogProps, CommandEmpty, CommandEmptyProps, CommandGroup, CommandGroupProps, CommandInput, CommandInputProps, CommandItem, CommandItemProps, CommandList, CommandListProps, CommandProps, CommandSeparator, CommandSeparatorProps, CommandShortcut, CommandShortcutProps, Container, ContainerProps, DateRange, Dialog, DialogClose, DialogCloseProps, DialogContent, DialogContentProps, DialogDescription, DialogDescriptionProps, DialogFooter, DialogFooterProps, DialogHeader, DialogHeaderProps, DialogOverlay, DialogOverlayProps, DialogPortal, DialogPortalProps, DialogProps, DialogTitle, DialogTitleProps, DialogTrigger, DialogTriggerProps, Drawer, DrawerClose, DrawerCloseProps, DrawerContent, DrawerContentProps, DrawerDescription, DrawerDescriptionProps, DrawerFooter, DrawerFooterProps, DrawerHeader, DrawerHeaderProps, DrawerOverlay, DrawerOverlayProps, DrawerPortal, DrawerPortalProps, DrawerProps, DrawerTitle, DrawerTitleProps, DrawerTrigger, DrawerTriggerProps, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuCheckboxItemProps, DropdownMenuContent, DropdownMenuContentProps, DropdownMenuGroup, DropdownMenuGroupProps, DropdownMenuItem, DropdownMenuItemProps, DropdownMenuLabel, DropdownMenuLabelProps, DropdownMenuPortal, DropdownMenuPortalProps, DropdownMenuProps, DropdownMenuRadioGroup, DropdownMenuRadioGroupProps, DropdownMenuRadioItem, DropdownMenuRadioItemProps, DropdownMenuSeparator, DropdownMenuSeparatorProps, DropdownMenuShortcut, DropdownMenuShortcutProps, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubContentProps, DropdownMenuSubProps, DropdownMenuSubTrigger, DropdownMenuSubTriggerProps, DropdownMenuTrigger, DropdownMenuTriggerProps, Dropzone, DropzoneArea, DropzoneAreaProps, DropzoneDescription, DropzoneDescriptionProps, DropzoneFileList, DropzoneFileListItem, DropzoneFileListItemProps, DropzoneFileListProps, DropzoneFileMessage, DropzoneFileMessageProps, DropzoneFileStatus, DropzoneMessage, DropzoneMessageProps, DropzoneProps, DropzoneRemoveFile, DropzoneRemoveFileProps, DropzoneRetryFile, DropzoneRetryFileProps, DropzoneTrigger, DropzoneTriggerProps, DropzoneUploadResult, DropzoneValidation, Empty, EmptyContent, EmptyContentProps, EmptyDescription, EmptyDescriptionProps, EmptyHeader, EmptyHeaderProps, EmptyMedia, EmptyMediaProps, EmptyProps, EmptyTitle, EmptyTitleProps, ErrorCode, Field, FieldContent, FieldContentProps, FieldDescription, FieldDescriptionProps, FieldError, FieldErrorProps, FieldGroup, FieldGroupProps, FieldLabel, FieldLabelProps, FieldLegend, FieldLegendProps, FieldProps, FieldSeparator, FieldSeparatorProps, FieldSet, FieldSetProps, FieldTitle, FieldTitleProps, FileError, FileStatus, Group, GroupProps, Heading, HeadingProps, HoverCard, HoverCardContent, HoverCardContentProps, HoverCardProps, HoverCardTrigger, HoverCardTriggerProps, InfiniteProgress, InfiniteProgressProps, Input, InputGroup, InputGroupAddon, InputGroupAddonProps, InputGroupButton, InputGroupButtonProps, InputGroupInput, InputGroupInputProps, InputGroupProps, InputGroupText, InputGroupTextProps, InputGroupTextarea, InputGroupTextareaProps, InputOTP, InputOTPGroup, InputOTPGroupProps, InputOTPProps, InputOTPSeparator, InputOTPSeparatorProps, InputOTPSlot, InputOTPSlotProps, InputProps, Kbd, KbdGroup, KbdGroupProps, KbdProps, Label, LabelProps, List, ListIcon, ListIconProps, ListItem, ListItemProps, ListProps, ModeToggle, ModeToggleProps, NativeSelect, NativeSelectOptGroup, NativeSelectOptGroupProps, NativeSelectOption, NativeSelectOptionProps, NativeSelectProps, NavigationMenu, NavigationMenuContent, NavigationMenuContentProps, NavigationMenuIndicator, NavigationMenuIndicatorProps, NavigationMenuItem, NavigationMenuItemProps, NavigationMenuLink, NavigationMenuLinkProps, NavigationMenuList, NavigationMenuListProps, NavigationMenuProps, NavigationMenuTrigger, NavigationMenuTriggerProps, NavigationMenuViewport, NavigationMenuViewportProps, Pagination, PaginationContent, PaginationContentProps, PaginationEllipsis, PaginationEllipsisProps, PaginationItem, PaginationItemProps, PaginationLink, PaginationLinkProps, PaginationNext, PaginationNextProps, PaginationPrevious, PaginationPreviousProps, PaginationProps, Popover, PopoverAnchor, PopoverAnchorProps, PopoverContent, PopoverContentProps, PopoverDescription, PopoverDescriptionProps, PopoverHeader, PopoverHeaderProps, PopoverProps, PopoverTitle, PopoverTitleProps, PopoverTrigger, PopoverTriggerProps, Progress, ProgressProps, REGEXP_ONLY_CHARS, REGEXP_ONLY_DIGITS, REGEXP_ONLY_DIGITS_AND_CHARS, RadioGroup, RadioGroupItem, RadioGroupItemProps, RadioGroupProps, ResizableHandle, ResizableHandleProps, ResizablePanel, ResizablePanelGroup, ResizablePanelGroupProps, ResizablePanelProps, ScrollArea, ScrollAreaProps, ScrollBar, ScrollBarProps, Select, SelectContent, SelectContentProps, SelectGroup, SelectGroupProps, SelectItem, SelectItemProps, SelectLabel, SelectLabelProps, SelectProps, SelectScrollDownButton, SelectScrollDownButtonProps, SelectScrollUpButton, SelectScrollUpButtonProps, SelectSeparator, SelectSeparatorProps, SelectTrigger, SelectTriggerProps, SelectValue, SelectValueProps, Separator, SeparatorProps, Sheet, SheetClose, SheetCloseProps, SheetContent, SheetContentProps, SheetDescription, SheetDescriptionProps, SheetFooter, SheetFooterProps, SheetHeader, SheetHeaderProps, SheetOverlay, SheetOverlayProps, SheetPortal, SheetPortalProps, SheetProps, SheetTitle, SheetTitleProps, SheetTrigger, SheetTriggerProps, Sidebar, SidebarContent, SidebarContentProps, SidebarFooter, SidebarFooterProps, SidebarGroup, SidebarGroupAction, SidebarGroupActionProps, SidebarGroupContent, SidebarGroupContentProps, SidebarGroupLabel, SidebarGroupLabelProps, SidebarGroupProps, SidebarHeader, SidebarHeaderProps, SidebarInput, SidebarInputProps, SidebarInset, SidebarInsetProps, SidebarMenu, SidebarMenuAction, SidebarMenuActionProps, SidebarMenuBadge, SidebarMenuBadgeProps, SidebarMenuButton, SidebarMenuButtonProps, SidebarMenuItem, SidebarMenuItemProps, SidebarMenuProps, SidebarMenuSkeleton, SidebarMenuSkeletonProps, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubButtonProps, SidebarMenuSubItem, SidebarMenuSubItemProps, SidebarMenuSubProps, SidebarProps, SidebarProvider, SidebarProviderProps, SidebarRail, SidebarRailProps, SidebarSeparator, SidebarSeparatorProps, SidebarTrigger, SidebarTriggerProps, Skeleton, SkeletonProps, Slider, SliderProps, Spinner, SpinnerProps, Stack, StackProps, Switch, SwitchProps, Table, TableBody, TableBodyProps, TableCaption, TableCaptionProps, TableCell, TableCellProps, TableFooter, TableFooterProps, TableHead, TableHeadProps, TableHeader, TableHeaderProps, TableProps, TableRow, TableRowProps, Tabs, TabsContent, TabsContentProps, TabsList, TabsListProps, TabsProps, TabsTrigger, TabsTriggerProps, Text, TextProps, Textarea, TextareaProps, Theme, ThemeProvider, ThemeProviderProps, ThemeProviderState, Timeline, TimelineConnector, TimelineConnectorColor, TimelineConnectorProps, TimelineContent, TimelineContentProps, TimelineDescription, TimelineDescriptionProps, TimelineEmpty, TimelineEmptyProps, TimelineHeader, TimelineHeaderProps, TimelineIcon, TimelineIconColor, TimelineIconProps, TimelineIconSize, TimelineItem, TimelineItemProps, TimelineProps, TimelineStatus, TimelineTime, TimelineTimeProps, TimelineTitle, TimelineTitleProps, Toaster, ToasterProps, Toggle, ToggleGroup, ToggleGroupItem, ToggleGroupItemProps, ToggleGroupProps, ToggleProps, Tooltip, TooltipContent, TooltipContentProps, TooltipProps, TooltipProvider, TooltipProviderProps, TooltipTrigger, TooltipTriggerProps, UseDropzoneProps, UseDropzoneReturn, XAxis, anchorVariants, badgeVariants, buttonColorVariants, buttonGroupVariants, buttonVariants, centerVariants, cn, containerVariants, groupVariants, headingVariants, listVariants, navigationMenuTriggerStyle, spinnerVariants, stackVariants, tabsListVariants, textVariants, timelineVariants, toast, toggleVariants, useCarousel, useComboboxAnchor, useDropzone, useIsMobile, useSidebar, useTheme };
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import{cn as e}from"./lib/utils.js";import{Accordion as t,AccordionContent as n,AccordionItem as r,AccordionTrigger as i}from"./components/accordion.js";import{Alert as a,AlertAction as o,AlertDescription as s,AlertTitle as c}from"./components/alert.js";import{Button as l,buttonVariants as u}from"./components/button.js";import{AlertDialog as d,AlertDialogAction as f,AlertDialogCancel as p,AlertDialogContent as m,AlertDialogDescription as h,AlertDialogFooter as g,AlertDialogHeader as _,AlertDialogMedia as v,AlertDialogOverlay as y,AlertDialogPortal as b,AlertDialogTitle as x,AlertDialogTrigger as S}from"./components/alert-dialog.js";import{Avatar as C,AvatarBadge as w,AvatarFallback as T,AvatarGroup as E,AvatarGroupCount as D,AvatarImage as O}from"./components/avatar.js";import{Badge as k,badgeVariants as A}from"./components/badge.js";import{Breadcrumb as j,BreadcrumbEllipsis as M,BreadcrumbItem as N,BreadcrumbLink as P,BreadcrumbList as F,BreadcrumbPage as I,BreadcrumbSeparator as L}from"./components/breadcrumb.js";import{Separator as R}from"./components/separator.js";import{ButtonGroup as z,ButtonGroupSeparator as B,ButtonGroupText as V,buttonGroupVariants as H}from"./components/button-group.js";import{Calendar as U,CalendarDayButton as W}from"./components/calendar.js";import{Card as G,CardAction as K,CardContent as q,CardDescription as J,CardFooter as Y,CardHeader as X,CardTitle as Z}from"./components/card.js";import{Carousel as Q,CarouselContent as $,CarouselItem as ee,CarouselNext as te,CarouselPrevious as ne,useCarousel as re}from"./components/carousel.js";import{Center as ie,centerVariants as ae}from"./components/center.js";import{Bar as oe,BarChart as se,CartesianGrid as ce,ChartContainer as le,ChartLegend as ue,ChartLegendContent as de,ChartStyle as fe,ChartTooltip as pe,ChartTooltipContent as me,XAxis as he}from"./components/chart.js";import{Checkbox as ge}from"./components/checkbox.js";import{Collapsible as _e,CollapsibleContent as ve,CollapsibleTrigger as ye}from"./components/collapsible.js";import{Input as be}from"./components/input.js";import{Textarea as xe}from"./components/textarea.js";import{InputGroup as Se,InputGroupAddon as Ce,InputGroupButton as we,InputGroupInput as Te,InputGroupText as Ee,InputGroupTextarea as De}from"./components/input-group.js";import{Combobox as Oe,ComboboxChip as ke,ComboboxChips as Ae,ComboboxChipsInput as je,ComboboxClear as Me,ComboboxCollection as Ne,ComboboxContent as Pe,ComboboxEmpty as Fe,ComboboxGroup as Ie,ComboboxInput as Le,ComboboxItem as Re,ComboboxLabel as ze,ComboboxList as Be,ComboboxSeparator as Ve,ComboboxTrigger as He,ComboboxValue as Ue,useComboboxAnchor as We}from"./components/combobox.js";import{Dialog as Ge,DialogClose as Ke,DialogContent as qe,DialogDescription as Je,DialogFooter as Ye,DialogHeader as Xe,DialogOverlay as Ze,DialogPortal as Qe,DialogTitle as $e,DialogTrigger as et}from"./components/dialog.js";import{Command as tt,CommandDialog as nt,CommandEmpty as rt,CommandGroup as it,CommandInput as at,CommandItem as ot,CommandList as st,CommandSeparator as ct,CommandShortcut as lt}from"./components/command.js";import{Container as ut,containerVariants as dt}from"./components/container.js";import{Drawer as ft,DrawerClose as pt,DrawerContent as mt,DrawerDescription as ht,DrawerFooter as gt,DrawerHeader as _t,DrawerOverlay as vt,DrawerPortal as yt,DrawerTitle as bt,DrawerTrigger as xt}from"./components/drawer.js";import{DropdownMenu as St,DropdownMenuCheckboxItem as Ct,DropdownMenuContent as wt,DropdownMenuGroup as Tt,DropdownMenuItem as Et,DropdownMenuLabel as Dt,DropdownMenuPortal as Ot,DropdownMenuRadioGroup as kt,DropdownMenuRadioItem as At,DropdownMenuSeparator as jt,DropdownMenuShortcut as Mt,DropdownMenuSub as Nt,DropdownMenuSubContent as Pt,DropdownMenuSubTrigger as Ft,DropdownMenuTrigger as It}from"./components/dropdown-menu.js";import{Empty as Lt,EmptyContent as Rt,EmptyDescription as zt,EmptyHeader as Bt,EmptyMedia as Vt,EmptyTitle as Ht}from"./components/empty.js";import{Label as Ut}from"./components/label.js";import{Field as Wt,FieldContent as Gt,FieldDescription as Kt,FieldError as qt,FieldGroup as Jt,FieldLabel as Yt,FieldLegend as Xt,FieldSeparator as Zt,FieldSet as Qt,FieldTitle as $t}from"./components/field.js";import{Group as en,groupVariants as tn}from"./components/group.js";import{HoverCard as nn,HoverCardContent as rn,HoverCardTrigger as an}from"./components/hover-card.js";import{InputOTP as on,InputOTPGroup as sn,InputOTPSeparator as cn,InputOTPSlot as ln,REGEXP_ONLY_CHARS as un,REGEXP_ONLY_DIGITS as dn,REGEXP_ONLY_DIGITS_AND_CHARS as fn}from"./components/input-otp.js";import{Kbd as pn,KbdGroup as mn}from"./components/kbd.js";import{NativeSelect as hn,NativeSelectOptGroup as gn,NativeSelectOption as _n}from"./components/native-select.js";import{NavigationMenu as vn,NavigationMenuContent as yn,NavigationMenuIndicator as bn,NavigationMenuItem as xn,NavigationMenuLink as Sn,NavigationMenuList as Cn,NavigationMenuTrigger as wn,NavigationMenuViewport as Tn,navigationMenuTriggerStyle as En}from"./components/navigation-menu.js";import{Pagination as Dn,PaginationContent as On,PaginationEllipsis as kn,PaginationItem as An,PaginationLink as jn,PaginationNext as Mn,PaginationPrevious as Nn}from"./components/pagination.js";import{Popover as Pn,PopoverAnchor as Fn,PopoverContent as In,PopoverDescription as Ln,PopoverHeader as Rn,PopoverTitle as zn,PopoverTrigger as Bn}from"./components/popover.js";import{Progress as Vn}from"./components/progress.js";import{RadioGroup as Hn,RadioGroupItem as Un}from"./components/radio-group.js";import{ResizableHandle as Wn,ResizablePanel as Gn,ResizablePanelGroup as Kn}from"./components/resizable.js";import{ScrollArea as qn,ScrollBar as Jn}from"./components/scroll-area.js";import{Select as Yn,SelectContent as Xn,SelectGroup as Zn,SelectItem as Qn,SelectLabel as $n,SelectScrollDownButton as er,SelectScrollUpButton as tr,SelectSeparator as nr,SelectTrigger as rr,SelectValue as ir}from"./components/select.js";import{Sheet as ar,SheetClose as or,SheetContent as sr,SheetDescription as cr,SheetFooter as lr,SheetHeader as ur,SheetOverlay as dr,SheetPortal as fr,SheetTitle as pr,SheetTrigger as mr}from"./components/sheet.js";import{useIsMobile as hr}from"./hooks/use-mobile.js";import{Skeleton as gr}from"./components/skeleton.js";import{Tooltip as _r,TooltipContent as vr,TooltipProvider as yr,TooltipTrigger as br}from"./components/tooltip.js";import{Sidebar as xr,SidebarContent as Sr,SidebarFooter as Cr,SidebarGroup as wr,SidebarGroupAction as Tr,SidebarGroupContent as Er,SidebarGroupLabel as Dr,SidebarHeader as Or,SidebarInput as kr,SidebarInset as Ar,SidebarMenu as jr,SidebarMenuAction as Mr,SidebarMenuBadge as Nr,SidebarMenuButton as Pr,SidebarMenuItem as Fr,SidebarMenuSkeleton as Ir,SidebarMenuSub as Lr,SidebarMenuSubButton as Rr,SidebarMenuSubItem as zr,SidebarProvider as Br,SidebarRail as Vr,SidebarSeparator as Hr,SidebarTrigger as Ur,useSidebar as Wr}from"./components/sidebar.js";import{Slider as Gr}from"./components/slider.js";import{Toaster as Kr,toast as qr}from"./components/sonner.js";import{Spinner as Jr,spinnerVariants as Yr}from"./components/spinner.js";import{Stack as Xr,stackVariants as Zr}from"./components/stack.js";import{Switch as Qr}from"./components/switch.js";import{Table as $r,TableBody as ei,TableCaption as ti,TableCell as ni,TableFooter as ri,TableHead as ii,TableHeader as ai,TableRow as oi}from"./components/table.js";import{Tabs as si,TabsContent as ci,TabsList as li,TabsTrigger as ui,tabsListVariants as di}from"./components/tabs.js";import{ModeToggle as fi,ThemeProvider as pi,useTheme as mi}from"./components/theme.js";import{Toggle as hi,toggleVariants as gi}from"./components/toggle.js";import{ToggleGroup as _i,ToggleGroupItem as vi}from"./components/toggle-group.js";export{t as Accordion,n as AccordionContent,r as AccordionItem,i as AccordionTrigger,a as Alert,o as AlertAction,s as AlertDescription,d as AlertDialog,f as AlertDialogAction,p as AlertDialogCancel,m as AlertDialogContent,h as AlertDialogDescription,g as AlertDialogFooter,_ as AlertDialogHeader,v as AlertDialogMedia,y as AlertDialogOverlay,b as AlertDialogPortal,x as AlertDialogTitle,S as AlertDialogTrigger,c as AlertTitle,C as Avatar,w as AvatarBadge,T as AvatarFallback,E as AvatarGroup,D as AvatarGroupCount,O as AvatarImage,k as Badge,oe as Bar,se as BarChart,j as Breadcrumb,M as BreadcrumbEllipsis,N as BreadcrumbItem,P as BreadcrumbLink,F as BreadcrumbList,I as BreadcrumbPage,L as BreadcrumbSeparator,l as Button,z as ButtonGroup,B as ButtonGroupSeparator,V as ButtonGroupText,U as Calendar,W as CalendarDayButton,G as Card,K as CardAction,q as CardContent,J as CardDescription,Y as CardFooter,X as CardHeader,Z as CardTitle,Q as Carousel,$ as CarouselContent,ee as CarouselItem,te as CarouselNext,ne as CarouselPrevious,ce as CartesianGrid,ie as Center,le as ChartContainer,ue as ChartLegend,de as ChartLegendContent,fe as ChartStyle,pe as ChartTooltip,me as ChartTooltipContent,ge as Checkbox,_e as Collapsible,ve as CollapsibleContent,ye as CollapsibleTrigger,Oe as Combobox,ke as ComboboxChip,Ae as ComboboxChips,je as ComboboxChipsInput,Me as ComboboxClear,Ne as ComboboxCollection,Pe as ComboboxContent,Fe as ComboboxEmpty,Ie as ComboboxGroup,Le as ComboboxInput,Re as ComboboxItem,ze as ComboboxLabel,Be as ComboboxList,Ve as ComboboxSeparator,He as ComboboxTrigger,Ue as ComboboxValue,tt as Command,nt as CommandDialog,rt as CommandEmpty,it as CommandGroup,at as CommandInput,ot as CommandItem,st as CommandList,ct as CommandSeparator,lt as CommandShortcut,ut as Container,Ge as Dialog,Ke as DialogClose,qe as DialogContent,Je as DialogDescription,Ye as DialogFooter,Xe as DialogHeader,Ze as DialogOverlay,Qe as DialogPortal,$e as DialogTitle,et as DialogTrigger,ft as Drawer,pt as DrawerClose,mt as DrawerContent,ht as DrawerDescription,gt as DrawerFooter,_t as DrawerHeader,vt as DrawerOverlay,yt as DrawerPortal,bt as DrawerTitle,xt as DrawerTrigger,St as DropdownMenu,Ct as DropdownMenuCheckboxItem,wt as DropdownMenuContent,Tt as DropdownMenuGroup,Et as DropdownMenuItem,Dt as DropdownMenuLabel,Ot as DropdownMenuPortal,kt as DropdownMenuRadioGroup,At as DropdownMenuRadioItem,jt as DropdownMenuSeparator,Mt as DropdownMenuShortcut,Nt as DropdownMenuSub,Pt as DropdownMenuSubContent,Ft as DropdownMenuSubTrigger,It as DropdownMenuTrigger,Lt as Empty,Rt as EmptyContent,zt as EmptyDescription,Bt as EmptyHeader,Vt as EmptyMedia,Ht as EmptyTitle,Wt as Field,Gt as FieldContent,Kt as FieldDescription,qt as FieldError,Jt as FieldGroup,Yt as FieldLabel,Xt as FieldLegend,Zt as FieldSeparator,Qt as FieldSet,$t as FieldTitle,en as Group,nn as HoverCard,rn as HoverCardContent,an as HoverCardTrigger,be as Input,Se as InputGroup,Ce as InputGroupAddon,we as InputGroupButton,Te as InputGroupInput,Ee as InputGroupText,De as InputGroupTextarea,on as InputOTP,sn as InputOTPGroup,cn as InputOTPSeparator,ln as InputOTPSlot,pn as Kbd,mn as KbdGroup,Ut as Label,fi as ModeToggle,hn as NativeSelect,gn as NativeSelectOptGroup,_n as NativeSelectOption,vn as NavigationMenu,yn as NavigationMenuContent,bn as NavigationMenuIndicator,xn as NavigationMenuItem,Sn as NavigationMenuLink,Cn as NavigationMenuList,wn as NavigationMenuTrigger,Tn as NavigationMenuViewport,Dn as Pagination,On as PaginationContent,kn as PaginationEllipsis,An as PaginationItem,jn as PaginationLink,Mn as PaginationNext,Nn as PaginationPrevious,Pn as Popover,Fn as PopoverAnchor,In as PopoverContent,Ln as PopoverDescription,Rn as PopoverHeader,zn as PopoverTitle,Bn as PopoverTrigger,Vn as Progress,un as REGEXP_ONLY_CHARS,dn as REGEXP_ONLY_DIGITS,fn as REGEXP_ONLY_DIGITS_AND_CHARS,Hn as RadioGroup,Un as RadioGroupItem,Wn as ResizableHandle,Gn as ResizablePanel,Kn as ResizablePanelGroup,qn as ScrollArea,Jn as ScrollBar,Yn as Select,Xn as SelectContent,Zn as SelectGroup,Qn as SelectItem,$n as SelectLabel,er as SelectScrollDownButton,tr as SelectScrollUpButton,nr as SelectSeparator,rr as SelectTrigger,ir as SelectValue,R as Separator,ar as Sheet,or as SheetClose,sr as SheetContent,cr as SheetDescription,lr as SheetFooter,ur as SheetHeader,dr as SheetOverlay,fr as SheetPortal,pr as SheetTitle,mr as SheetTrigger,xr as Sidebar,Sr as SidebarContent,Cr as SidebarFooter,wr as SidebarGroup,Tr as SidebarGroupAction,Er as SidebarGroupContent,Dr as SidebarGroupLabel,Or as SidebarHeader,kr as SidebarInput,Ar as SidebarInset,jr as SidebarMenu,Mr as SidebarMenuAction,Nr as SidebarMenuBadge,Pr as SidebarMenuButton,Fr as SidebarMenuItem,Ir as SidebarMenuSkeleton,Lr as SidebarMenuSub,Rr as SidebarMenuSubButton,zr as SidebarMenuSubItem,Br as SidebarProvider,Vr as SidebarRail,Hr as SidebarSeparator,Ur as SidebarTrigger,gr as Skeleton,Gr as Slider,Jr as Spinner,Xr as Stack,Qr as Switch,$r as Table,ei as TableBody,ti as TableCaption,ni as TableCell,ri as TableFooter,ii as TableHead,ai as TableHeader,oi as TableRow,si as Tabs,ci as TabsContent,li as TabsList,ui as TabsTrigger,xe as Textarea,pi as ThemeProvider,Kr as Toaster,hi as Toggle,_i as ToggleGroup,vi as ToggleGroupItem,_r as Tooltip,vr as TooltipContent,yr as TooltipProvider,br as TooltipTrigger,he as XAxis,A as badgeVariants,H as buttonGroupVariants,u as buttonVariants,ae as centerVariants,e as cn,dt as containerVariants,tn as groupVariants,En as navigationMenuTriggerStyle,Yr as spinnerVariants,Zr as stackVariants,di as tabsListVariants,qr as toast,gi as toggleVariants,re as useCarousel,We as useComboboxAnchor,hr as useIsMobile,Wr as useSidebar,mi as useTheme};
1
+ import{cn as e}from"./lib/utils.js";import{Accordion as t,AccordionContent as n,AccordionItem as r,AccordionTrigger as i}from"./components/accordion.js";import{Alert as a,AlertAction as o,AlertDescription as s,AlertTitle as c}from"./components/alert.js";import{buttonColorVariants as l}from"./lib/button.js";import{Button as u,buttonVariants as d}from"./components/button.js";import{AlertDialog as f,AlertDialogAction as p,AlertDialogCancel as m,AlertDialogContent as h,AlertDialogDescription as g,AlertDialogFooter as _,AlertDialogHeader as v,AlertDialogMedia as y,AlertDialogOverlay as b,AlertDialogPortal as x,AlertDialogTitle as S,AlertDialogTrigger as C}from"./components/alert-dialog.js";import{Anchor as w,anchorVariants as T}from"./components/anchor.js";import{Avatar as E,AvatarBadge as D,AvatarFallback as O,AvatarGroup as k,AvatarGroupCount as A,AvatarImage as j}from"./components/avatar.js";import{Badge as M,badgeVariants as N}from"./components/badge.js";import{Breadcrumb as P,BreadcrumbEllipsis as F,BreadcrumbItem as I,BreadcrumbLink as L,BreadcrumbList as R,BreadcrumbPage as z,BreadcrumbSeparator as B}from"./components/breadcrumb.js";import{Separator as V}from"./components/separator.js";import{ButtonGroup as H,ButtonGroupSeparator as U,ButtonGroupText as W,buttonGroupVariants as G}from"./components/button-group.js";import{Calendar as K,CalendarDayButton as q}from"./components/calendar.js";import{Card as J,CardAction as Y,CardContent as X,CardDescription as Z,CardFooter as Q,CardHeader as $,CardTitle as ee}from"./components/card.js";import{Carousel as te,CarouselContent as ne,CarouselItem as re,CarouselNext as ie,CarouselPrevious as ae,useCarousel as oe}from"./components/carousel.js";import{Center as se,centerVariants as ce}from"./components/center.js";import{Bar as le,BarChart as ue,CartesianGrid as de,ChartContainer as fe,ChartLegend as pe,ChartLegendContent as me,ChartStyle as he,ChartTooltip as ge,ChartTooltipContent as _e,XAxis as ve}from"./components/chart.js";import{Checkbox as ye}from"./components/checkbox.js";import{Code as be}from"./components/code.js";import{Collapsible as xe,CollapsibleContent as Se,CollapsibleTrigger as Ce}from"./components/collapsible.js";import{Input as we}from"./components/input.js";import{Textarea as Te}from"./components/textarea.js";import{InputGroup as Ee,InputGroupAddon as De,InputGroupButton as Oe,InputGroupInput as ke,InputGroupText as Ae,InputGroupTextarea as je}from"./components/input-group.js";import{Combobox as Me,ComboboxChip as Ne,ComboboxChips as Pe,ComboboxChipsInput as Fe,ComboboxClear as Ie,ComboboxCollection as Le,ComboboxContent as Re,ComboboxEmpty as ze,ComboboxGroup as Be,ComboboxInput as Ve,ComboboxItem as He,ComboboxLabel as Ue,ComboboxList as We,ComboboxSeparator as Ge,ComboboxTrigger as Ke,ComboboxValue as qe,useComboboxAnchor as Je}from"./components/combobox.js";import{Dialog as Ye,DialogClose as Xe,DialogContent as Ze,DialogDescription as Qe,DialogFooter as $e,DialogHeader as et,DialogOverlay as tt,DialogPortal as nt,DialogTitle as rt,DialogTrigger as it}from"./components/dialog.js";import{Command as at,CommandDialog as ot,CommandEmpty as st,CommandGroup as ct,CommandInput as lt,CommandItem as ut,CommandList as dt,CommandSeparator as ft,CommandShortcut as pt}from"./components/command.js";import{Container as mt,containerVariants as ht}from"./components/container.js";import{Drawer as gt,DrawerClose as _t,DrawerContent as vt,DrawerDescription as yt,DrawerFooter as bt,DrawerHeader as xt,DrawerOverlay as St,DrawerPortal as Ct,DrawerTitle as wt,DrawerTrigger as Tt}from"./components/drawer.js";import{DropdownMenu as Et,DropdownMenuCheckboxItem as Dt,DropdownMenuContent as Ot,DropdownMenuGroup as kt,DropdownMenuItem as At,DropdownMenuLabel as jt,DropdownMenuPortal as Mt,DropdownMenuRadioGroup as Nt,DropdownMenuRadioItem as Pt,DropdownMenuSeparator as Ft,DropdownMenuShortcut as It,DropdownMenuSub as Lt,DropdownMenuSubContent as Rt,DropdownMenuSubTrigger as zt,DropdownMenuTrigger as Bt}from"./components/dropdown-menu.js";import{Dropzone as Vt,DropzoneArea as Ht,DropzoneDescription as Ut,DropzoneFileList as Wt,DropzoneFileListItem as Gt,DropzoneFileMessage as Kt,DropzoneMessage as qt,DropzoneRemoveFile as Jt,DropzoneRetryFile as Yt,DropzoneTrigger as Xt,ErrorCode as Zt,InfiniteProgress as Qt,useDropzone as $t}from"./components/dropzone.js";import{Empty as en,EmptyContent as tn,EmptyDescription as nn,EmptyHeader as rn,EmptyMedia as an,EmptyTitle as on}from"./components/empty.js";import{Label as sn}from"./components/label.js";import{Field as cn,FieldContent as ln,FieldDescription as un,FieldError as dn,FieldGroup as fn,FieldLabel as pn,FieldLegend as mn,FieldSeparator as hn,FieldSet as gn,FieldTitle as _n}from"./components/field.js";import{Group as vn,groupVariants as yn}from"./components/group.js";import{Heading as bn,headingVariants as xn}from"./components/heading.js";import{HoverCard as Sn,HoverCardContent as Cn,HoverCardTrigger as wn}from"./components/hover-card.js";import{InputOTP as Tn,InputOTPGroup as En,InputOTPSeparator as Dn,InputOTPSlot as On,REGEXP_ONLY_CHARS as kn,REGEXP_ONLY_DIGITS as An,REGEXP_ONLY_DIGITS_AND_CHARS as jn}from"./components/input-otp.js";import{Kbd as Mn,KbdGroup as Nn}from"./components/kbd.js";import{List as Pn,ListIcon as Fn,ListItem as In,listVariants as Ln}from"./components/list.js";import{NativeSelect as Rn,NativeSelectOptGroup as zn,NativeSelectOption as Bn}from"./components/native-select.js";import{NavigationMenu as Vn,NavigationMenuContent as Hn,NavigationMenuIndicator as Un,NavigationMenuItem as Wn,NavigationMenuLink as Gn,NavigationMenuList as Kn,NavigationMenuTrigger as qn,NavigationMenuViewport as Jn,navigationMenuTriggerStyle as Yn}from"./components/navigation-menu.js";import{Pagination as Xn,PaginationContent as Zn,PaginationEllipsis as Qn,PaginationItem as $n,PaginationLink as er,PaginationNext as tr,PaginationPrevious as nr}from"./components/pagination.js";import{Popover as rr,PopoverAnchor as ir,PopoverContent as ar,PopoverDescription as or,PopoverHeader as sr,PopoverTitle as cr,PopoverTrigger as lr}from"./components/popover.js";import{Progress as ur}from"./components/progress.js";import{RadioGroup as dr,RadioGroupItem as fr}from"./components/radio-group.js";import{ResizableHandle as pr,ResizablePanel as mr,ResizablePanelGroup as hr}from"./components/resizable.js";import{ScrollArea as gr,ScrollBar as _r}from"./components/scroll-area.js";import{Select as vr,SelectContent as yr,SelectGroup as br,SelectItem as xr,SelectLabel as Sr,SelectScrollDownButton as Cr,SelectScrollUpButton as wr,SelectSeparator as Tr,SelectTrigger as Er,SelectValue as Dr}from"./components/select.js";import{Sheet as Or,SheetClose as kr,SheetContent as Ar,SheetDescription as jr,SheetFooter as Mr,SheetHeader as Nr,SheetOverlay as Pr,SheetPortal as Fr,SheetTitle as Ir,SheetTrigger as Lr}from"./components/sheet.js";import{useIsMobile as Rr}from"./hooks/use-mobile.js";import{Skeleton as zr}from"./components/skeleton.js";import{Tooltip as Br,TooltipContent as Vr,TooltipProvider as Hr,TooltipTrigger as Ur}from"./components/tooltip.js";import{Sidebar as Wr,SidebarContent as Gr,SidebarFooter as Kr,SidebarGroup as qr,SidebarGroupAction as Jr,SidebarGroupContent as Yr,SidebarGroupLabel as Xr,SidebarHeader as Zr,SidebarInput as Qr,SidebarInset as $r,SidebarMenu as ei,SidebarMenuAction as ti,SidebarMenuBadge as ni,SidebarMenuButton as ri,SidebarMenuItem as ii,SidebarMenuSkeleton as ai,SidebarMenuSub as oi,SidebarMenuSubButton as si,SidebarMenuSubItem as ci,SidebarProvider as li,SidebarRail as ui,SidebarSeparator as di,SidebarTrigger as fi,useSidebar as pi}from"./components/sidebar.js";import{Slider as mi}from"./components/slider.js";import{Toaster as hi,toast as gi}from"./components/sonner.js";import{Spinner as _i,spinnerVariants as vi}from"./components/spinner.js";import{Stack as yi,stackVariants as bi}from"./components/stack.js";import{Switch as xi}from"./components/switch.js";import{Table as Si,TableBody as Ci,TableCaption as wi,TableCell as Ti,TableFooter as Ei,TableHead as Di,TableHeader as Oi,TableRow as ki}from"./components/table.js";import{Tabs as Ai,TabsContent as ji,TabsList as Mi,TabsTrigger as Ni,tabsListVariants as Pi}from"./components/tabs.js";import{Text as Fi,textVariants as Ii}from"./components/text.js";import{ModeToggle as Li,ThemeProvider as Ri,useTheme as zi}from"./components/theme.js";import{Timeline as Bi,TimelineConnector as Vi,TimelineContent as Hi,TimelineDescription as Ui,TimelineEmpty as Wi,TimelineHeader as Gi,TimelineIcon as Ki,TimelineItem as qi,TimelineTime as Ji,TimelineTitle as Yi,timelineVariants as Xi}from"./components/timeline.js";import{Toggle as Zi,toggleVariants as Qi}from"./components/toggle.js";import{ToggleGroup as $i,ToggleGroupItem as ea}from"./components/toggle-group.js";export{t as Accordion,n as AccordionContent,r as AccordionItem,i as AccordionTrigger,a as Alert,o as AlertAction,s as AlertDescription,f as AlertDialog,p as AlertDialogAction,m as AlertDialogCancel,h as AlertDialogContent,g as AlertDialogDescription,_ as AlertDialogFooter,v as AlertDialogHeader,y as AlertDialogMedia,b as AlertDialogOverlay,x as AlertDialogPortal,S as AlertDialogTitle,C as AlertDialogTrigger,c as AlertTitle,w as Anchor,E as Avatar,D as AvatarBadge,O as AvatarFallback,k as AvatarGroup,A as AvatarGroupCount,j as AvatarImage,M as Badge,le as Bar,ue as BarChart,P as Breadcrumb,F as BreadcrumbEllipsis,I as BreadcrumbItem,L as BreadcrumbLink,R as BreadcrumbList,z as BreadcrumbPage,B as BreadcrumbSeparator,u as Button,H as ButtonGroup,U as ButtonGroupSeparator,W as ButtonGroupText,K as Calendar,q as CalendarDayButton,J as Card,Y as CardAction,X as CardContent,Z as CardDescription,Q as CardFooter,$ as CardHeader,ee as CardTitle,te as Carousel,ne as CarouselContent,re as CarouselItem,ie as CarouselNext,ae as CarouselPrevious,de as CartesianGrid,se as Center,fe as ChartContainer,pe as ChartLegend,me as ChartLegendContent,he as ChartStyle,ge as ChartTooltip,_e as ChartTooltipContent,ye as Checkbox,be as Code,xe as Collapsible,Se as CollapsibleContent,Ce as CollapsibleTrigger,Me as Combobox,Ne as ComboboxChip,Pe as ComboboxChips,Fe as ComboboxChipsInput,Ie as ComboboxClear,Le as ComboboxCollection,Re as ComboboxContent,ze as ComboboxEmpty,Be as ComboboxGroup,Ve as ComboboxInput,He as ComboboxItem,Ue as ComboboxLabel,We as ComboboxList,Ge as ComboboxSeparator,Ke as ComboboxTrigger,qe as ComboboxValue,at as Command,ot as CommandDialog,st as CommandEmpty,ct as CommandGroup,lt as CommandInput,ut as CommandItem,dt as CommandList,ft as CommandSeparator,pt as CommandShortcut,mt as Container,Ye as Dialog,Xe as DialogClose,Ze as DialogContent,Qe as DialogDescription,$e as DialogFooter,et as DialogHeader,tt as DialogOverlay,nt as DialogPortal,rt as DialogTitle,it as DialogTrigger,gt as Drawer,_t as DrawerClose,vt as DrawerContent,yt as DrawerDescription,bt as DrawerFooter,xt as DrawerHeader,St as DrawerOverlay,Ct as DrawerPortal,wt as DrawerTitle,Tt as DrawerTrigger,Et as DropdownMenu,Dt as DropdownMenuCheckboxItem,Ot as DropdownMenuContent,kt as DropdownMenuGroup,At as DropdownMenuItem,jt as DropdownMenuLabel,Mt as DropdownMenuPortal,Nt as DropdownMenuRadioGroup,Pt as DropdownMenuRadioItem,Ft as DropdownMenuSeparator,It as DropdownMenuShortcut,Lt as DropdownMenuSub,Rt as DropdownMenuSubContent,zt as DropdownMenuSubTrigger,Bt as DropdownMenuTrigger,Vt as Dropzone,Ht as DropzoneArea,Ut as DropzoneDescription,Wt as DropzoneFileList,Gt as DropzoneFileListItem,Kt as DropzoneFileMessage,qt as DropzoneMessage,Jt as DropzoneRemoveFile,Yt as DropzoneRetryFile,Xt as DropzoneTrigger,en as Empty,tn as EmptyContent,nn as EmptyDescription,rn as EmptyHeader,an as EmptyMedia,on as EmptyTitle,Zt as ErrorCode,cn as Field,ln as FieldContent,un as FieldDescription,dn as FieldError,fn as FieldGroup,pn as FieldLabel,mn as FieldLegend,hn as FieldSeparator,gn as FieldSet,_n as FieldTitle,vn as Group,bn as Heading,Sn as HoverCard,Cn as HoverCardContent,wn as HoverCardTrigger,Qt as InfiniteProgress,we as Input,Ee as InputGroup,De as InputGroupAddon,Oe as InputGroupButton,ke as InputGroupInput,Ae as InputGroupText,je as InputGroupTextarea,Tn as InputOTP,En as InputOTPGroup,Dn as InputOTPSeparator,On as InputOTPSlot,Mn as Kbd,Nn as KbdGroup,sn as Label,Pn as List,Fn as ListIcon,In as ListItem,Li as ModeToggle,Rn as NativeSelect,zn as NativeSelectOptGroup,Bn as NativeSelectOption,Vn as NavigationMenu,Hn as NavigationMenuContent,Un as NavigationMenuIndicator,Wn as NavigationMenuItem,Gn as NavigationMenuLink,Kn as NavigationMenuList,qn as NavigationMenuTrigger,Jn as NavigationMenuViewport,Xn as Pagination,Zn as PaginationContent,Qn as PaginationEllipsis,$n as PaginationItem,er as PaginationLink,tr as PaginationNext,nr as PaginationPrevious,rr as Popover,ir as PopoverAnchor,ar as PopoverContent,or as PopoverDescription,sr as PopoverHeader,cr as PopoverTitle,lr as PopoverTrigger,ur as Progress,kn as REGEXP_ONLY_CHARS,An as REGEXP_ONLY_DIGITS,jn as REGEXP_ONLY_DIGITS_AND_CHARS,dr as RadioGroup,fr as RadioGroupItem,pr as ResizableHandle,mr as ResizablePanel,hr as ResizablePanelGroup,gr as ScrollArea,_r as ScrollBar,vr as Select,yr as SelectContent,br as SelectGroup,xr as SelectItem,Sr as SelectLabel,Cr as SelectScrollDownButton,wr as SelectScrollUpButton,Tr as SelectSeparator,Er as SelectTrigger,Dr as SelectValue,V as Separator,Or as Sheet,kr as SheetClose,Ar as SheetContent,jr as SheetDescription,Mr as SheetFooter,Nr as SheetHeader,Pr as SheetOverlay,Fr as SheetPortal,Ir as SheetTitle,Lr as SheetTrigger,Wr as Sidebar,Gr as SidebarContent,Kr as SidebarFooter,qr as SidebarGroup,Jr as SidebarGroupAction,Yr as SidebarGroupContent,Xr as SidebarGroupLabel,Zr as SidebarHeader,Qr as SidebarInput,$r as SidebarInset,ei as SidebarMenu,ti as SidebarMenuAction,ni as SidebarMenuBadge,ri as SidebarMenuButton,ii as SidebarMenuItem,ai as SidebarMenuSkeleton,oi as SidebarMenuSub,si as SidebarMenuSubButton,ci as SidebarMenuSubItem,li as SidebarProvider,ui as SidebarRail,di as SidebarSeparator,fi as SidebarTrigger,zr as Skeleton,mi as Slider,_i as Spinner,yi as Stack,xi as Switch,Si as Table,Ci as TableBody,wi as TableCaption,Ti as TableCell,Ei as TableFooter,Di as TableHead,Oi as TableHeader,ki as TableRow,Ai as Tabs,ji as TabsContent,Mi as TabsList,Ni as TabsTrigger,Fi as Text,Te as Textarea,Ri as ThemeProvider,Bi as Timeline,Vi as TimelineConnector,Hi as TimelineContent,Ui as TimelineDescription,Wi as TimelineEmpty,Gi as TimelineHeader,Ki as TimelineIcon,qi as TimelineItem,Ji as TimelineTime,Yi as TimelineTitle,hi as Toaster,Zi as Toggle,$i as ToggleGroup,ea as ToggleGroupItem,Br as Tooltip,Vr as TooltipContent,Hr as TooltipProvider,Ur as TooltipTrigger,ve as XAxis,T as anchorVariants,N as badgeVariants,l as buttonColorVariants,G as buttonGroupVariants,d as buttonVariants,ce as centerVariants,e as cn,ht as containerVariants,yn as groupVariants,xn as headingVariants,Ln as listVariants,Yn as navigationMenuTriggerStyle,vi as spinnerVariants,bi as stackVariants,Pi as tabsListVariants,Ii as textVariants,Xi as timelineVariants,gi as toast,Qi as toggleVariants,oe as useCarousel,Je as useComboboxAnchor,$t as useDropzone,Rr as useIsMobile,pi as useSidebar,zi as useTheme};
@@ -0,0 +1,16 @@
1
+ import { t as __name } from "../chunk-IpJEthwI.js";
2
+
3
+ //#region src/lib/button.d.ts
4
+ declare const buttonColorVariants: {
5
+ readonly brand: readonly ["[--button-solid:var(--brand-500)]", "[--button-solid-hover:var(--brand-600)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--brand-200)]", "[--button-outline-foreground:var(--brand-700)]", "[--button-outline-hover:var(--brand-50)]", "[--button-soft:var(--brand-50)]", "[--button-soft-hover:var(--brand-100)]", "[--button-soft-foreground:var(--brand-700)]", "[--button-ghost-hover:var(--brand-50)]", "[--button-ghost-foreground:var(--brand-700)]", "[--button-accent:var(--brand-100)]", "[--button-accent-hover:var(--brand-200)]", "[--button-accent-foreground:var(--brand-800)]", "[--button-link-foreground:var(--brand-700)]", "dark:[--button-solid:var(--brand-400)]", "dark:[--button-solid-hover:var(--brand-500)]", "dark:[--button-outline-border:var(--brand-700)]", "dark:[--button-outline-foreground:var(--brand-300)]", "dark:[--button-outline-hover:var(--brand-950)]", "dark:[--button-soft:var(--brand-950)]", "dark:[--button-soft-hover:var(--brand-900)]", "dark:[--button-soft-foreground:var(--brand-300)]", "dark:[--button-ghost-hover:var(--brand-950)]", "dark:[--button-ghost-foreground:var(--brand-300)]", "dark:[--button-accent:var(--brand-950)]", "dark:[--button-accent-hover:var(--brand-900)]", "dark:[--button-accent-foreground:var(--brand-200)]", "dark:[--button-link-foreground:var(--brand-300)]"];
6
+ readonly zinc: readonly ["[--button-solid:var(--zinc-800)]", "[--button-solid-hover:var(--zinc-900)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--zinc-300)]", "[--button-outline-foreground:var(--zinc-700)]", "[--button-outline-hover:var(--zinc-100)]", "[--button-soft:var(--zinc-100)]", "[--button-soft-hover:var(--zinc-200)]", "[--button-soft-foreground:var(--zinc-800)]", "[--button-ghost-hover:var(--zinc-100)]", "[--button-ghost-foreground:var(--zinc-700)]", "[--button-accent:var(--zinc-200)]", "[--button-accent-hover:var(--zinc-300)]", "[--button-accent-foreground:var(--zinc-900)]", "[--button-link-foreground:var(--zinc-800)]", "dark:[--button-solid:var(--zinc-700)]", "dark:[--button-solid-hover:var(--zinc-800)]", "dark:[--button-outline-border:var(--zinc-700)]", "dark:[--button-outline-foreground:var(--zinc-200)]", "dark:[--button-outline-hover:var(--zinc-900)]", "dark:[--button-soft:var(--zinc-900)]", "dark:[--button-soft-hover:var(--zinc-800)]", "dark:[--button-soft-foreground:var(--zinc-200)]", "dark:[--button-ghost-hover:var(--zinc-900)]", "dark:[--button-ghost-foreground:var(--zinc-300)]", "dark:[--button-accent:var(--zinc-800)]", "dark:[--button-accent-hover:var(--zinc-700)]", "dark:[--button-accent-foreground:var(--zinc-100)]", "dark:[--button-link-foreground:var(--zinc-300)]"];
7
+ readonly red: readonly ["[--button-solid:var(--red-500)]", "[--button-solid-hover:var(--red-600)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--red-200)]", "[--button-outline-foreground:var(--red-700)]", "[--button-outline-hover:var(--red-50)]", "[--button-soft:var(--red-50)]", "[--button-soft-hover:var(--red-100)]", "[--button-soft-foreground:var(--red-700)]", "[--button-ghost-hover:var(--red-50)]", "[--button-ghost-foreground:var(--red-700)]", "[--button-accent:var(--red-100)]", "[--button-accent-hover:var(--red-200)]", "[--button-accent-foreground:var(--red-800)]", "[--button-link-foreground:var(--red-700)]", "dark:[--button-solid:var(--red-400)]", "dark:[--button-solid-hover:var(--red-500)]", "dark:[--button-outline-border:var(--red-700)]", "dark:[--button-outline-foreground:var(--red-300)]", "dark:[--button-outline-hover:var(--red-950)]", "dark:[--button-soft:var(--red-950)]", "dark:[--button-soft-hover:var(--red-900)]", "dark:[--button-soft-foreground:var(--red-300)]", "dark:[--button-ghost-hover:var(--red-950)]", "dark:[--button-ghost-foreground:var(--red-300)]", "dark:[--button-accent:var(--red-950)]", "dark:[--button-accent-hover:var(--red-900)]", "dark:[--button-accent-foreground:var(--red-200)]", "dark:[--button-link-foreground:var(--red-300)]"];
8
+ readonly blue: readonly ["[--button-solid:var(--blue-600)]", "[--button-solid-hover:var(--blue-700)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--blue-200)]", "[--button-outline-foreground:var(--blue-700)]", "[--button-outline-hover:var(--blue-50)]", "[--button-soft:var(--blue-50)]", "[--button-soft-hover:var(--blue-100)]", "[--button-soft-foreground:var(--blue-700)]", "[--button-ghost-hover:var(--blue-50)]", "[--button-ghost-foreground:var(--blue-700)]", "[--button-accent:var(--blue-100)]", "[--button-accent-hover:var(--blue-200)]", "[--button-accent-foreground:var(--blue-800)]", "[--button-link-foreground:var(--blue-700)]", "dark:[--button-solid:var(--blue-500)]", "dark:[--button-solid-hover:var(--blue-600)]", "dark:[--button-outline-border:var(--blue-700)]", "dark:[--button-outline-foreground:var(--blue-300)]", "dark:[--button-outline-hover:var(--blue-950)]", "dark:[--button-soft:var(--blue-950)]", "dark:[--button-soft-hover:var(--blue-900)]", "dark:[--button-soft-foreground:var(--blue-300)]", "dark:[--button-ghost-hover:var(--blue-950)]", "dark:[--button-ghost-foreground:var(--blue-300)]", "dark:[--button-accent:var(--blue-950)]", "dark:[--button-accent-hover:var(--blue-900)]", "dark:[--button-accent-foreground:var(--blue-200)]", "dark:[--button-link-foreground:var(--blue-300)]"];
9
+ readonly indigo: readonly ["[--button-solid:var(--indigo-500)]", "[--button-solid-hover:var(--indigo-600)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--indigo-200)]", "[--button-outline-foreground:var(--indigo-700)]", "[--button-outline-hover:var(--indigo-50)]", "[--button-soft:var(--indigo-50)]", "[--button-soft-hover:var(--indigo-100)]", "[--button-soft-foreground:var(--indigo-700)]", "[--button-ghost-hover:var(--indigo-50)]", "[--button-ghost-foreground:var(--indigo-700)]", "[--button-accent:var(--indigo-100)]", "[--button-accent-hover:var(--indigo-200)]", "[--button-accent-foreground:var(--indigo-800)]", "[--button-link-foreground:var(--indigo-700)]", "dark:[--button-solid:var(--indigo-400)]", "dark:[--button-solid-hover:var(--indigo-500)]", "dark:[--button-outline-border:var(--indigo-700)]", "dark:[--button-outline-foreground:var(--indigo-300)]", "dark:[--button-outline-hover:var(--indigo-950)]", "dark:[--button-soft:var(--indigo-950)]", "dark:[--button-soft-hover:var(--indigo-900)]", "dark:[--button-soft-foreground:var(--indigo-300)]", "dark:[--button-ghost-hover:var(--indigo-950)]", "dark:[--button-ghost-foreground:var(--indigo-300)]", "dark:[--button-accent:var(--indigo-950)]", "dark:[--button-accent-hover:var(--indigo-900)]", "dark:[--button-accent-foreground:var(--indigo-200)]", "dark:[--button-link-foreground:var(--indigo-300)]"];
10
+ readonly pink: readonly ["[--button-solid:var(--pink-500)]", "[--button-solid-hover:var(--pink-600)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--pink-200)]", "[--button-outline-foreground:var(--pink-700)]", "[--button-outline-hover:var(--pink-50)]", "[--button-soft:var(--pink-50)]", "[--button-soft-hover:var(--pink-100)]", "[--button-soft-foreground:var(--pink-700)]", "[--button-ghost-hover:var(--pink-50)]", "[--button-ghost-foreground:var(--pink-700)]", "[--button-accent:var(--pink-100)]", "[--button-accent-hover:var(--pink-200)]", "[--button-accent-foreground:var(--pink-800)]", "[--button-link-foreground:var(--pink-700)]", "dark:[--button-solid:var(--pink-400)]", "dark:[--button-solid-hover:var(--pink-500)]", "dark:[--button-outline-border:var(--pink-700)]", "dark:[--button-outline-foreground:var(--pink-300)]", "dark:[--button-outline-hover:var(--pink-950)]", "dark:[--button-soft:var(--pink-950)]", "dark:[--button-soft-hover:var(--pink-900)]", "dark:[--button-soft-foreground:var(--pink-300)]", "dark:[--button-ghost-hover:var(--pink-950)]", "dark:[--button-ghost-foreground:var(--pink-300)]", "dark:[--button-accent:var(--pink-950)]", "dark:[--button-accent-hover:var(--pink-900)]", "dark:[--button-accent-foreground:var(--pink-200)]", "dark:[--button-link-foreground:var(--pink-300)]"];
11
+ readonly green: readonly ["[--button-solid:var(--green-600)]", "[--button-solid-hover:var(--green-700)]", "[--button-solid-foreground:var(--zinc-50)]", "[--button-outline-border:var(--green-200)]", "[--button-outline-foreground:var(--green-800)]", "[--button-outline-hover:var(--green-50)]", "[--button-soft:var(--green-50)]", "[--button-soft-hover:var(--green-100)]", "[--button-soft-foreground:var(--green-800)]", "[--button-ghost-hover:var(--green-50)]", "[--button-ghost-foreground:var(--green-800)]", "[--button-accent:var(--green-100)]", "[--button-accent-hover:var(--green-200)]", "[--button-accent-foreground:var(--green-900)]", "[--button-link-foreground:var(--green-800)]", "dark:[--button-solid:var(--green-500)]", "dark:[--button-solid-hover:var(--green-600)]", "dark:[--button-outline-border:var(--green-700)]", "dark:[--button-outline-foreground:var(--green-300)]", "dark:[--button-outline-hover:var(--green-950)]", "dark:[--button-soft:var(--green-950)]", "dark:[--button-soft-hover:var(--green-900)]", "dark:[--button-soft-foreground:var(--green-300)]", "dark:[--button-ghost-hover:var(--green-950)]", "dark:[--button-ghost-foreground:var(--green-300)]", "dark:[--button-accent:var(--green-950)]", "dark:[--button-accent-hover:var(--green-900)]", "dark:[--button-accent-foreground:var(--green-200)]", "dark:[--button-link-foreground:var(--green-300)]"];
12
+ };
13
+ type ButtonColor = keyof typeof buttonColorVariants;
14
+ //#endregion
15
+ export { ButtonColor, buttonColorVariants };
16
+ //# sourceMappingURL=button.d.ts.map