@tradalab/lyra 3.12.0 → 3.13.1

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.
package/README.md CHANGED
@@ -28,8 +28,8 @@ The stylesheet pulls in Tailwind v4, so your app needs `@tailwindcss/postcss`.
28
28
  | `@tradalab/lyra/hooks` | `useMobile` | client |
29
29
  | `@tradalab/lyra/ui` | 61 shadcn primitives + `AccountMenu`, `ActionButton`, `Container`, `EmptyState`, `StatusBadge` | client |
30
30
  | `@tradalab/lyra/blocks` | `Form`/`FormField` + RHF glue, `Panel`, `Confirm`/`useConfirm`, `Tree`, `TzPicker`, `OptionPicker`, `MobileSheet`, `ChoiceDrawer`, `McpSettings`, `LlmSettings`, `PlatePicker`, `usePlate`, `useCompact`, `PreferenceScript` | client |
31
- | `@tradalab/lyra/data-table` | `DataTable` + `usePager`, `TableFilterBar`, `TableSearch`, `TableReload`, `filterRows`, `pageWindow` | client |
32
- | `@tradalab/lyra/shell` | `AppShell`, `PageShell`, `PageHeader`, `NavItem`, `NavGroup`, `Breadcrumbs`, `BottomNav`, `useActiveRoute` | client |
31
+ | `@tradalab/lyra/data-table` | `DataTable` + `usePager`, `TableFilterBar`, `TableFilterChips`, `TableSearch`, `TableReload`, `filterRows`, `pageWindow` | client |
32
+ | `@tradalab/lyra/shell` | `AppShell`, `PageShell`, `PageHeader`, `NavItem`, `NavGroup`, `Breadcrumbs`, `BottomNav`, `useActiveRoute`, `useSearchParam`, `useTabParam`, `usePageParam`, `UrlTabs` | client |
33
33
  | `@tradalab/lyra/styles.css` | Tailwind v4 base + `radix-lyra` tokens (light/dark) | CSS |
34
34
 
35
35
  Client subpaths carry a build-injected `"use client"`; import them inside a
@@ -71,6 +71,17 @@ Two rules the components enforce rather than document:
71
71
  browser, so it answers "no results" about a row on page three. Send the query instead;
72
72
  `filterRows` is for the unpaged case, where local filtering is the truth.
73
73
 
74
+ To keep the page, the query and the open tab in the URL, `shell` holds the Next side and
75
+ `data-table` only takes state: `usePager({ ...usePageParam(), labels })`, and
76
+ `<TableSearch value={q} onChange={pager.onFilter(setQ)} />` with
77
+ `const [q, setQ] = useSearchParam("q")`. Rows per page stay out of the URL. Show what is in force
78
+ with `TableFilterChips`: a link can open a table already narrowed. Clear a chip through
79
+ `pager.onFilter` too, so the page goes back to 1 with the filter.
80
+
81
+ `DataTable` also takes `onRowClick` (the whole row, and Enter or Space) and selection
82
+ (`getRowId` + `selected` + `onSelectedChange`). The header box covers the rows on screen only;
83
+ acting on every row that matches a filter is a separate request that sends the filter.
84
+
74
85
  lyra ships **no copy and no number formatting**: `usePager` takes `labels`, including
75
86
  `range: ({from, to, total}) => string`. That keeps `next-intl` out of the library, which matters
76
87
  because `data-table` must stay loadable by a consumer that is not a Next app.
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import * as class_variance_authority_types from 'class-variance-authority/types';
3
3
  import { VariantProps } from 'class-variance-authority';
4
- import { Separator as Separator$1, Tooltip as Tooltip$1 } from 'radix-ui';
4
+ import { Separator as Separator$1, Tooltip as Tooltip$1, Tabs as Tabs$1 } from 'radix-ui';
5
5
 
6
6
  declare const buttonVariants: (props?: ({
7
7
  variant?: "link" | "default" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
@@ -93,6 +93,14 @@ declare function SidebarMenuSubButton({ asChild, size, isActive, className, ...p
93
93
  isActive?: boolean;
94
94
  }): React.JSX.Element;
95
95
 
96
+ declare function Tabs({ className, orientation, ...props }: React.ComponentProps<typeof Tabs$1.Root>): React.JSX.Element;
97
+ declare const tabsListVariants: (props?: ({
98
+ variant?: "line" | "default" | null | undefined;
99
+ } & class_variance_authority_types.ClassProp) | undefined) => string;
100
+ declare function TabsList({ className, variant, ...props }: React.ComponentProps<typeof Tabs$1.List> & VariantProps<typeof tabsListVariants>): React.JSX.Element;
101
+ declare function TabsTrigger({ className, ...props }: React.ComponentProps<typeof Tabs$1.Trigger>): React.JSX.Element;
102
+ declare function TabsContent({ className, ...props }: React.ComponentProps<typeof Tabs$1.Content>): React.JSX.Element;
103
+
96
104
  type AccountMenuUser = {
97
105
  name?: string | null;
98
106
  email?: string | null;
@@ -134,4 +142,4 @@ declare function AccountMenu({ user, labels, onSignOut, onSwitchAccount, onSignI
134
142
  /** Two-letter avatar fallback from a name or email. Shared with shell NavUser. */
135
143
  declare function initialsOf(value?: string | null): string;
136
144
 
137
- export { type AccountMenuUser as A, Breadcrumb as B, SidebarMenuSkeleton as C, SidebarMenuSub as D, SidebarMenuSubButton as E, SidebarMenuSubItem as F, SidebarRail as G, SidebarSeparator as H, Input as I, SidebarTrigger as J, TooltipContent as K, TooltipProvider as L, TooltipTrigger as M, buttonVariants as N, defaultAccountMenuLabels as O, initialsOf as P, useSidebar as Q, SidebarProvider as S, Tooltip as T, SidebarInset as a, Sidebar as b, type AccountMenuLabels as c, Button as d, Separator as e, AccountMenu as f, type AccountMenuProps as g, BreadcrumbEllipsis as h, BreadcrumbItem as i, BreadcrumbLink as j, BreadcrumbList as k, BreadcrumbPage as l, BreadcrumbSeparator as m, SidebarContent as n, SidebarFooter as o, SidebarGroup as p, SidebarGroupAction as q, SidebarGroupContent as r, SidebarGroupLabel as s, SidebarHeader as t, SidebarInput as u, SidebarMenu as v, SidebarMenuAction as w, SidebarMenuBadge as x, SidebarMenuButton as y, SidebarMenuItem as z };
145
+ export { type AccountMenuUser as A, Breadcrumb as B, SidebarMenuSkeleton as C, SidebarMenuSub as D, SidebarMenuSubButton as E, SidebarMenuSubItem as F, SidebarRail as G, SidebarSeparator as H, Input as I, SidebarTrigger as J, TabsContent as K, TabsList as L, TabsTrigger as M, Tooltip as N, TooltipContent as O, TooltipProvider as P, TooltipTrigger as Q, buttonVariants as R, SidebarProvider as S, Tabs as T, defaultAccountMenuLabels as U, initialsOf as V, tabsListVariants as W, useSidebar as X, SidebarInset as a, Sidebar as b, type AccountMenuLabels as c, Button as d, Separator as e, AccountMenu as f, type AccountMenuProps as g, BreadcrumbEllipsis as h, BreadcrumbItem as i, BreadcrumbLink as j, BreadcrumbList as k, BreadcrumbPage as l, BreadcrumbSeparator as m, SidebarContent as n, SidebarFooter as o, SidebarGroup as p, SidebarGroupAction as q, SidebarGroupContent as r, SidebarGroupLabel as s, SidebarHeader as t, SidebarInput as u, SidebarMenu as v, SidebarMenuAction as w, SidebarMenuBadge as x, SidebarMenuButton as y, SidebarMenuItem as z };
@@ -1,10 +1,10 @@
1
1
  "use client";
2
- import { Label, Combobox, ComboboxInput, ComboboxContent, ComboboxEmpty, ComboboxList, ComboboxItem, Drawer, DrawerTrigger, DrawerContent, DrawerHeader, DrawerTitle, DrawerDescription, Spinner, Alert, AlertDescription, FieldGroup, FieldSet, FieldLegend, FieldDescription, Field, FieldContent, FieldLabel, Badge, FieldSeparator, Progress } from '../chunk-S5O4AGES.js';
3
- export { PreferenceScript } from '../chunk-S5O4AGES.js';
4
- import { NativeSelect, NativeSelectOption } from '../chunk-AM6UJ666.js';
2
+ import { Label, Combobox, ComboboxInput, ComboboxContent, ComboboxEmpty, ComboboxList, ComboboxItem, Drawer, DrawerTrigger, DrawerContent, DrawerHeader, DrawerTitle, DrawerDescription, Spinner, Alert, AlertDescription, FieldGroup, FieldSet, FieldLegend, FieldDescription, Field, FieldContent, FieldLabel, Badge, FieldSeparator, Progress } from '../chunk-4ILJ3M7K.js';
3
+ export { PreferenceScript } from '../chunk-4ILJ3M7K.js';
4
+ import { NativeSelect, NativeSelectOption } from '../chunk-U4HIZXI6.js';
5
5
  export { useCompact, usePlate } from '../chunk-AIULLZYM.js';
6
- import { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter, RadioGroup, RadioGroupItem, Switch } from '../chunk-CLNMWZPV.js';
7
- export { PlatePicker } from '../chunk-CLNMWZPV.js';
6
+ import { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter, RadioGroup, RadioGroupItem, Switch } from '../chunk-SQELPQZU.js';
7
+ export { PlatePicker } from '../chunk-SQELPQZU.js';
8
8
  export { BEARING_PLATES, PLATES, derivePlate, isPlate } from '../chunk-D7DMRCDY.js';
9
9
  import '../chunk-VEWKPOMS.js';
10
10
  import { Dialog, DialogOverlay, DialogContent, DialogTitle, DialogDescription } from '../chunk-L4LQCVOF.js';
@@ -1,11 +1,11 @@
1
- import { Separator } from './chunk-CLNMWZPV.js';
1
+ import { Separator } from './chunk-SQELPQZU.js';
2
2
  import { PLATE_KEY, COMPACT_KEY } from './chunk-D7DMRCDY.js';
3
3
  import { InputGroup, InputGroupInput, InputGroupAddon, InputGroupButton } from './chunk-VXW3K5O5.js';
4
4
  import { Button, buttonVariants } from './chunk-VGOGWZCF.js';
5
5
  import { cn } from './chunk-XH55BHUU.js';
6
6
  import * as React8 from 'react';
7
7
  import { useMemo } from 'react';
8
- import { Direction, Accordion as Accordion$1, AlertDialog as AlertDialog$1, AspectRatio as AspectRatio$1, Slot, Checkbox as Checkbox$1, Collapsible as Collapsible$1, Label as Label$1, HoverCard as HoverCard$1, Menubar as Menubar$1, NavigationMenu as NavigationMenu$1, Progress as Progress$1, Select as Select$1, Slider as Slider$1, Tabs as Tabs$1, Toggle as Toggle$1, ToggleGroup as ToggleGroup$1 } from 'radix-ui';
8
+ import { Direction, Accordion as Accordion$1, AlertDialog as AlertDialog$1, AspectRatio as AspectRatio$1, Slot, Collapsible as Collapsible$1, Label as Label$1, HoverCard as HoverCard$1, Menubar as Menubar$1, NavigationMenu as NavigationMenu$1, Progress as Progress$1, Select as Select$1, Slider as Slider$1, Toggle as Toggle$1, ToggleGroup as ToggleGroup$1 } from 'radix-ui';
9
9
  import { ChevronDownIcon, ChevronUpIcon, ChevronLeftIcon, ChevronRightIcon, CheckIcon, XIcon, MinusIcon, ArrowDownIcon, MoreHorizontalIcon, Loader2Icon, CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon } from 'lucide-react';
10
10
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
11
11
  import { cva } from 'class-variance-authority';
@@ -1307,33 +1307,6 @@ function getPayloadConfigFromPayload(config, payload, key) {
1307
1307
  }
1308
1308
  return configLabelKey in config ? config[configLabelKey] : config[key];
1309
1309
  }
1310
- function Checkbox({
1311
- className,
1312
- ...props
1313
- }) {
1314
- return /* @__PURE__ */ jsx(
1315
- Checkbox$1.Root,
1316
- {
1317
- "data-slot": "checkbox",
1318
- className: cn(
1319
- "peer relative flex size-4 shrink-0 items-center justify-center rounded-none border border-input transition-colors outline-none group-has-disabled/field:opacity-50 after:absolute after:-inset-x-3 after:-inset-y-2 focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 aria-invalid:aria-checked:border-primary dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 data-checked:border-primary data-checked:bg-primary data-checked:text-primary-foreground dark:data-checked:bg-primary",
1320
- className
1321
- ),
1322
- ...props,
1323
- children: /* @__PURE__ */ jsx(
1324
- Checkbox$1.Indicator,
1325
- {
1326
- "data-slot": "checkbox-indicator",
1327
- className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
1328
- children: /* @__PURE__ */ jsx(
1329
- CheckIcon,
1330
- {}
1331
- )
1332
- }
1333
- )
1334
- }
1335
- );
1336
- }
1337
1310
  function Collapsible({
1338
1311
  ...props
1339
1312
  }) {
@@ -3662,85 +3635,6 @@ function Slider({
3662
3635
  function Spinner({ className, ...props }) {
3663
3636
  return /* @__PURE__ */ jsx(Loader2Icon, { "data-slot": "spinner", role: "status", "aria-label": "Loading", className: cn("size-4 animate-spin", className), ...props });
3664
3637
  }
3665
- function Tabs({
3666
- className,
3667
- orientation = "horizontal",
3668
- ...props
3669
- }) {
3670
- return /* @__PURE__ */ jsx(
3671
- Tabs$1.Root,
3672
- {
3673
- "data-slot": "tabs",
3674
- "data-orientation": orientation,
3675
- className: cn(
3676
- "group/tabs flex gap-2 data-horizontal:flex-col",
3677
- className
3678
- ),
3679
- ...props
3680
- }
3681
- );
3682
- }
3683
- var tabsListVariants = cva(
3684
- "group/tabs-list inline-flex w-fit items-center justify-center rounded-none p-[3px] text-muted-foreground group-data-horizontal/tabs:h-8 group-data-vertical/tabs:h-fit group-data-vertical/tabs:flex-col data-[variant=line]:rounded-none",
3685
- {
3686
- variants: {
3687
- variant: {
3688
- default: "bg-muted",
3689
- line: "gap-1 bg-transparent"
3690
- }
3691
- },
3692
- defaultVariants: {
3693
- variant: "default"
3694
- }
3695
- }
3696
- );
3697
- function TabsList({
3698
- className,
3699
- variant = "default",
3700
- ...props
3701
- }) {
3702
- return /* @__PURE__ */ jsx(
3703
- Tabs$1.List,
3704
- {
3705
- "data-slot": "tabs-list",
3706
- "data-variant": variant,
3707
- className: cn(tabsListVariants({ variant }), className),
3708
- ...props
3709
- }
3710
- );
3711
- }
3712
- function TabsTrigger({
3713
- className,
3714
- ...props
3715
- }) {
3716
- return /* @__PURE__ */ jsx(
3717
- Tabs$1.Trigger,
3718
- {
3719
- "data-slot": "tabs-trigger",
3720
- className: cn(
3721
- "relative inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-none border border-transparent px-1.5 py-0.5 text-xs font-medium whitespace-nowrap text-foreground/60 transition-all group-data-vertical/tabs:w-full group-data-vertical/tabs:justify-start group-data-vertical/tabs:py-[calc(--spacing(1.25))] hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 focus-visible:outline-ring disabled:pointer-events-none disabled:opacity-50 has-data-[icon=inline-end]:pr-1 has-data-[icon=inline-start]:pl-1 dark:text-muted-foreground dark:hover:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
3722
- "group-data-[variant=line]/tabs-list:bg-transparent group-data-[variant=line]/tabs-list:data-active:bg-transparent dark:group-data-[variant=line]/tabs-list:data-active:border-transparent dark:group-data-[variant=line]/tabs-list:data-active:bg-transparent",
3723
- "data-active:bg-background data-active:text-foreground dark:data-active:border-input dark:data-active:bg-input/30 dark:data-active:text-foreground",
3724
- "after:absolute after:bg-foreground after:opacity-0 after:transition-opacity group-data-horizontal/tabs:after:inset-x-0 group-data-horizontal/tabs:after:bottom-[-5px] group-data-horizontal/tabs:after:h-0.5 group-data-vertical/tabs:after:inset-y-0 group-data-vertical/tabs:after:-right-1 group-data-vertical/tabs:after:w-0.5 group-data-[variant=line]/tabs-list:data-active:after:opacity-100",
3725
- className
3726
- ),
3727
- ...props
3728
- }
3729
- );
3730
- }
3731
- function TabsContent({
3732
- className,
3733
- ...props
3734
- }) {
3735
- return /* @__PURE__ */ jsx(
3736
- Tabs$1.Content,
3737
- {
3738
- "data-slot": "tabs-content",
3739
- className: cn("flex-1 text-xs/relaxed outline-none", className),
3740
- ...props
3741
- }
3742
- );
3743
- }
3744
3638
  var toast = Toast$1.createToastManager();
3745
3639
  function ToastProvider({ ...props }) {
3746
3640
  return /* @__PURE__ */ jsx(Toast$1.Provider, { ...props });
@@ -4083,6 +3977,6 @@ function PreferenceScript() {
4083
3977
  return /* @__PURE__ */ jsx("script", { dangerouslySetInnerHTML: { __html: SCRIPT } });
4084
3978
  }
4085
3979
 
4086
- export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActionButton, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, Attachment, AttachmentAction, AttachmentActions, AttachmentContent, AttachmentDescription, AttachmentGroup, AttachmentMedia, AttachmentTitle, AttachmentTrigger, Badge, Bubble, BubbleContent, BubbleGroup, BubbleReactions, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Calendar, CalendarDayButton, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Container, DirectionProvider, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyState, EmptyTitle, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, HoverCard, HoverCardContent, HoverCardTrigger, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, Label, Marker, MarkerContent, MarkerIcon, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Message, MessageAvatar, MessageContent, MessageFooter, MessageGroup, MessageHeader, MessageScroller, MessageScrollerButton, MessageScrollerContent, MessageScrollerItem, MessageScrollerProvider, MessageScrollerViewport, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PreferenceScript, Progress, Questionnaire, QuestionnaireActions, QuestionnaireChoice, QuestionnaireChoiceDescription, QuestionnaireChoices, QuestionnaireDescription, QuestionnaireError, QuestionnaireInput, QuestionnaireItem, QuestionnaireNext, QuestionnairePrevious, QuestionnaireProgress, QuestionnaireSkip, QuestionnaireSubmit, QuestionnaireTitle, ResizableHandle, ResizablePanel, ResizablePanelGroup, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Slider, Spinner, StatusBadge, Tabs, TabsContent, TabsList, TabsTrigger, Toast, ToastAction, ToastClose, ToastContent, ToastDescription, ToastPortal, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, badgeVariants, buttonGroupVariants, createToastManager, markerVariants, navigationMenuTriggerStyle, tabsListVariants, toast, toggleVariants, useCarousel, useComboboxAnchor, useDirection, useToastManager };
4087
- //# sourceMappingURL=chunk-S5O4AGES.js.map
4088
- //# sourceMappingURL=chunk-S5O4AGES.js.map
3980
+ export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, ActionButton, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, Attachment, AttachmentAction, AttachmentActions, AttachmentContent, AttachmentDescription, AttachmentGroup, AttachmentMedia, AttachmentTitle, AttachmentTrigger, Badge, Bubble, BubbleContent, BubbleGroup, BubbleReactions, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Calendar, CalendarDayButton, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, ChartContainer, ChartLegend, ChartLegendContent, ChartStyle, ChartTooltip, ChartTooltipContent, Collapsible, CollapsibleContent, CollapsibleTrigger, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, Container, DirectionProvider, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, EmptyState, EmptyTitle, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, HoverCard, HoverCardContent, HoverCardTrigger, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Item, ItemActions, ItemContent, ItemDescription, ItemFooter, ItemGroup, ItemHeader, ItemMedia, ItemSeparator, ItemTitle, Kbd, KbdGroup, Label, Marker, MarkerContent, MarkerIcon, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, Message, MessageAvatar, MessageContent, MessageFooter, MessageGroup, MessageHeader, MessageScroller, MessageScrollerButton, MessageScrollerContent, MessageScrollerItem, MessageScrollerProvider, MessageScrollerViewport, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, PreferenceScript, Progress, Questionnaire, QuestionnaireActions, QuestionnaireChoice, QuestionnaireChoiceDescription, QuestionnaireChoices, QuestionnaireDescription, QuestionnaireError, QuestionnaireInput, QuestionnaireItem, QuestionnaireNext, QuestionnairePrevious, QuestionnaireProgress, QuestionnaireSkip, QuestionnaireSubmit, QuestionnaireTitle, ResizableHandle, ResizablePanel, ResizablePanelGroup, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Slider, Spinner, StatusBadge, Toast, ToastAction, ToastClose, ToastContent, ToastDescription, ToastPortal, ToastProvider, ToastTitle, ToastViewport, Toaster, Toggle, ToggleGroup, ToggleGroupItem, badgeVariants, buttonGroupVariants, createToastManager, markerVariants, navigationMenuTriggerStyle, toast, toggleVariants, useCarousel, useComboboxAnchor, useDirection, useToastManager };
3981
+ //# sourceMappingURL=chunk-4ILJ3M7K.js.map
3982
+ //# sourceMappingURL=chunk-4ILJ3M7K.js.map