@tradalab/lyra 1.11.0 → 2.0.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 +38 -1
- package/dist/blocks/index.js +3 -3
- package/dist/{chunk-V6TVUMAU.js → chunk-2PHVSGAE.js} +75 -27
- package/dist/chunk-2PHVSGAE.js.map +1 -0
- package/dist/{chunk-KFQOYZ64.js → chunk-5Q4UTRYU.js} +4 -4
- package/dist/chunk-5Q4UTRYU.js.map +1 -0
- package/dist/{chunk-ZG5ZPKFL.js → chunk-LZZ3UOPT.js} +6 -6
- package/dist/chunk-LZZ3UOPT.js.map +1 -0
- package/dist/{chunk-44WIOUJJ.js → chunk-RSAN65FI.js} +3 -3
- package/dist/{chunk-44WIOUJJ.js.map → chunk-RSAN65FI.js.map} +1 -1
- package/dist/data-table/index.js +1 -1
- package/dist/shell/index.js +3 -3
- package/dist/ui/index.d.ts +228 -8
- package/dist/ui/index.js +2675 -473
- package/dist/ui/index.js.map +1 -1
- package/package.json +12 -11
- package/styles/globals.css +1 -1
- package/dist/chunk-KFQOYZ64.js.map +0 -1
- package/dist/chunk-V6TVUMAU.js.map +0 -1
- package/dist/chunk-ZG5ZPKFL.js.map +0 -1
package/dist/ui/index.js
CHANGED
|
@@ -1,28 +1,32 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { Dialog, DialogHeader, DialogTitle, DialogDescription, DialogContent, Label } from '../chunk-
|
|
3
|
-
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Label } from '../chunk-
|
|
2
|
+
import { Dialog, DialogHeader, DialogTitle, DialogDescription, DialogContent, Label } from '../chunk-RSAN65FI.js';
|
|
3
|
+
export { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogOverlay, DialogPortal, DialogTitle, DialogTrigger, Label } from '../chunk-RSAN65FI.js';
|
|
4
4
|
export { Table, TableBody, TableCaption, TableCell, TableFooter, TableHead, TableHeader, TableRow } from '../chunk-CV3UXQBT.js';
|
|
5
|
-
import { Separator, InputGroup, InputGroupAddon } from '../chunk-
|
|
6
|
-
export { AccountMenu, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, defaultAccountMenuLabels, initialsOf, useSidebar } from '../chunk-
|
|
5
|
+
import { Separator, InputGroup, InputGroupInput, InputGroupAddon, InputGroupButton } from '../chunk-2PHVSGAE.js';
|
|
6
|
+
export { AccountMenu, Avatar, AvatarBadge, AvatarFallback, AvatarGroup, AvatarGroupCount, AvatarImage, Breadcrumb, BreadcrumbEllipsis, BreadcrumbItem, BreadcrumbLink, BreadcrumbList, BreadcrumbPage, BreadcrumbSeparator, ContextMenu, ContextMenuCheckboxItem, ContextMenuContent, ContextMenuGroup, ContextMenuItem, ContextMenuLabel, ContextMenuPortal, ContextMenuRadioGroup, ContextMenuRadioItem, ContextMenuSeparator, ContextMenuShortcut, ContextMenuSub, ContextMenuSubContent, ContextMenuSubTrigger, ContextMenuTrigger, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, ScrollArea, ScrollBar, Separator, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, Skeleton, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger, defaultAccountMenuLabels, initialsOf, useSidebar } from '../chunk-2PHVSGAE.js';
|
|
7
7
|
import '../chunk-QYA2HGKW.js';
|
|
8
|
-
export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '../chunk-
|
|
8
|
+
export { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from '../chunk-LZZ3UOPT.js';
|
|
9
9
|
export { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Input } from '../chunk-SQA4ILAK.js';
|
|
10
|
-
import { Button } from '../chunk-
|
|
11
|
-
export { Button, buttonVariants } from '../chunk-
|
|
10
|
+
import { Button, buttonVariants } from '../chunk-5Q4UTRYU.js';
|
|
11
|
+
export { Button, buttonVariants } from '../chunk-5Q4UTRYU.js';
|
|
12
12
|
import { cn } from '../chunk-XH55BHUU.js';
|
|
13
|
-
import * as
|
|
13
|
+
import * as React8 from 'react';
|
|
14
14
|
import { useMemo } from 'react';
|
|
15
|
-
import { Accordion as Accordion$1, AlertDialog as AlertDialog$1, AspectRatio as AspectRatio$1, Slot, Checkbox as Checkbox$1, Collapsible as Collapsible$1, HoverCard as HoverCard$1, Menubar as Menubar$1, NavigationMenu as NavigationMenu$1, Popover as Popover$1, Progress as Progress$1, RadioGroup as RadioGroup$1, Select as Select$1, Slider as Slider$1, Switch as Switch$1, Tabs as Tabs$1, Toggle as Toggle$1, ToggleGroup as ToggleGroup$1 } from 'radix-ui';
|
|
16
|
-
import { ChevronDownIcon, ChevronUpIcon, CheckIcon, SearchIcon, MinusIcon,
|
|
17
|
-
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
15
|
+
import { Direction, Accordion as Accordion$1, AlertDialog as AlertDialog$1, AspectRatio as AspectRatio$1, Slot, Checkbox as Checkbox$1, Collapsible as Collapsible$1, HoverCard as HoverCard$1, Menubar as Menubar$1, NavigationMenu as NavigationMenu$1, Popover as Popover$1, Progress as Progress$1, RadioGroup as RadioGroup$1, Select as Select$1, Slider as Slider$1, Switch as Switch$1, Tabs as Tabs$1, Toggle as Toggle$1, ToggleGroup as ToggleGroup$1 } from 'radix-ui';
|
|
16
|
+
import { ChevronDownIcon, ChevronUpIcon, ChevronLeftIcon, ChevronRightIcon, CheckIcon, XIcon, SearchIcon, MinusIcon, ArrowDownIcon, MoreHorizontalIcon, Loader2Icon, CircleCheckIcon, InfoIcon, TriangleAlertIcon, OctagonXIcon } from 'lucide-react';
|
|
17
|
+
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
18
18
|
import { cva } from 'class-variance-authority';
|
|
19
|
+
import { getDefaultClassNames, DayPicker } from 'react-day-picker';
|
|
20
|
+
import useEmblaCarousel from 'embla-carousel-react';
|
|
21
|
+
import * as RechartsPrimitive from 'recharts';
|
|
22
|
+
import { Combobox as Combobox$1 } from '@base-ui/react';
|
|
19
23
|
import { Command as Command$1 } from 'cmdk';
|
|
20
24
|
import { Drawer as Drawer$1 } from 'vaul';
|
|
21
25
|
import { OTPInput, OTPInputContext } from 'input-otp';
|
|
26
|
+
import { MessageScroller as MessageScroller$1 } from '@shadcn/react/message-scroller';
|
|
27
|
+
export { useMessageScroller, useMessageScrollerScrollable, useMessageScrollerVisibility } from '@shadcn/react/message-scroller';
|
|
22
28
|
import * as ResizablePrimitive from 'react-resizable-panels';
|
|
23
|
-
import {
|
|
24
|
-
import { Toaster as Toaster$1 } from 'sonner';
|
|
25
|
-
export { toast } from 'sonner';
|
|
29
|
+
import { Toast as Toast$1 } from '@base-ui/react/toast';
|
|
26
30
|
|
|
27
31
|
function Accordion({
|
|
28
32
|
className,
|
|
@@ -110,20 +114,38 @@ var alertVariants = cva(
|
|
|
110
114
|
}
|
|
111
115
|
}
|
|
112
116
|
);
|
|
113
|
-
function Alert({
|
|
114
|
-
|
|
117
|
+
function Alert({
|
|
118
|
+
className,
|
|
119
|
+
variant,
|
|
120
|
+
...props
|
|
121
|
+
}) {
|
|
122
|
+
return /* @__PURE__ */ jsx(
|
|
123
|
+
"div",
|
|
124
|
+
{
|
|
125
|
+
"data-slot": "alert",
|
|
126
|
+
role: "alert",
|
|
127
|
+
className: cn(alertVariants({ variant }), className),
|
|
128
|
+
...props
|
|
129
|
+
}
|
|
130
|
+
);
|
|
115
131
|
}
|
|
116
132
|
function AlertTitle({ className, ...props }) {
|
|
117
133
|
return /* @__PURE__ */ jsx(
|
|
118
134
|
"div",
|
|
119
135
|
{
|
|
120
136
|
"data-slot": "alert-title",
|
|
121
|
-
className: cn(
|
|
137
|
+
className: cn(
|
|
138
|
+
"font-medium group-has-[>svg]/alert:col-start-2 [&_a]:underline [&_a]:underline-offset-3 [&_a]:hover:text-foreground",
|
|
139
|
+
className
|
|
140
|
+
),
|
|
122
141
|
...props
|
|
123
142
|
}
|
|
124
143
|
);
|
|
125
144
|
}
|
|
126
|
-
function AlertDescription({
|
|
145
|
+
function AlertDescription({
|
|
146
|
+
className,
|
|
147
|
+
...props
|
|
148
|
+
}) {
|
|
127
149
|
return /* @__PURE__ */ jsx(
|
|
128
150
|
"div",
|
|
129
151
|
{
|
|
@@ -137,7 +159,17 @@ function AlertDescription({ className, ...props }) {
|
|
|
137
159
|
);
|
|
138
160
|
}
|
|
139
161
|
function AlertAction({ className, ...props }) {
|
|
140
|
-
return /* @__PURE__ */ jsx(
|
|
162
|
+
return /* @__PURE__ */ jsx(
|
|
163
|
+
"div",
|
|
164
|
+
{
|
|
165
|
+
"data-slot": "alert-action",
|
|
166
|
+
className: cn(
|
|
167
|
+
"absolute top-[calc(--spacing(1.25))] right-[calc(--spacing(1.25))]",
|
|
168
|
+
className
|
|
169
|
+
),
|
|
170
|
+
...props
|
|
171
|
+
}
|
|
172
|
+
);
|
|
141
173
|
}
|
|
142
174
|
function AlertDialog({
|
|
143
175
|
...props
|
|
@@ -301,658 +333,2249 @@ function AlertDialogCancel({
|
|
|
301
333
|
}
|
|
302
334
|
) });
|
|
303
335
|
}
|
|
304
|
-
function AspectRatio({
|
|
336
|
+
function AspectRatio({
|
|
337
|
+
...props
|
|
338
|
+
}) {
|
|
305
339
|
return /* @__PURE__ */ jsx(AspectRatio$1.Root, { "data-slot": "aspect-ratio", ...props });
|
|
306
340
|
}
|
|
307
|
-
var
|
|
308
|
-
"group/
|
|
341
|
+
var attachmentVariants = cva(
|
|
342
|
+
"group/attachment relative flex w-fit max-w-full min-w-0 shrink-0 flex-wrap rounded-none border bg-card text-card-foreground transition-colors focus-within:ring-1 focus-within:ring-ring/50 has-[>a,>button]:hover:bg-muted/50 data-[state=error]:border-destructive/30 data-[state=idle]:border-dashed",
|
|
309
343
|
{
|
|
310
344
|
variants: {
|
|
311
|
-
|
|
312
|
-
default: "
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
345
|
+
size: {
|
|
346
|
+
default: "gap-2 text-xs has-data-[slot=attachment-content]:px-2 has-data-[slot=attachment-content]:py-1.5 has-data-[slot=attachment-media]:p-1.5",
|
|
347
|
+
sm: "gap-2.5 text-xs has-data-[slot=attachment-content]:px-1.5 has-data-[slot=attachment-content]:py-1 has-data-[slot=attachment-media]:p-1",
|
|
348
|
+
xs: "gap-1.5 rounded-none text-xs has-data-[slot=attachment-content]:px-1.5 has-data-[slot=attachment-content]:py-1 has-data-[slot=attachment-media]:p-1"
|
|
349
|
+
},
|
|
350
|
+
orientation: {
|
|
351
|
+
horizontal: "min-w-40 items-center",
|
|
352
|
+
vertical: "w-24 flex-col has-data-[slot=attachment-content]:w-30"
|
|
318
353
|
}
|
|
319
|
-
},
|
|
320
|
-
defaultVariants: {
|
|
321
|
-
variant: "default"
|
|
322
354
|
}
|
|
323
355
|
}
|
|
324
356
|
);
|
|
325
|
-
function
|
|
357
|
+
function Attachment({
|
|
326
358
|
className,
|
|
327
|
-
|
|
328
|
-
|
|
359
|
+
state = "done",
|
|
360
|
+
size = "default",
|
|
361
|
+
orientation = "horizontal",
|
|
329
362
|
...props
|
|
330
363
|
}) {
|
|
331
|
-
const Comp = asChild ? Slot.Root : "span";
|
|
332
364
|
return /* @__PURE__ */ jsx(
|
|
333
|
-
|
|
365
|
+
"div",
|
|
334
366
|
{
|
|
335
|
-
"data-slot": "
|
|
336
|
-
"data-
|
|
337
|
-
|
|
367
|
+
"data-slot": "attachment",
|
|
368
|
+
"data-state": state,
|
|
369
|
+
"data-size": size,
|
|
370
|
+
"data-orientation": orientation,
|
|
371
|
+
className: cn(attachmentVariants({ size, orientation }), className),
|
|
338
372
|
...props
|
|
339
373
|
}
|
|
340
374
|
);
|
|
341
375
|
}
|
|
342
|
-
var
|
|
343
|
-
"
|
|
376
|
+
var attachmentMediaVariants = cva(
|
|
377
|
+
"relative flex aspect-square w-10 shrink-0 items-center justify-center overflow-hidden rounded-none bg-muted text-foreground group-data-[orientation=vertical]/attachment:w-full group-data-[size=sm]/attachment:w-8 group-data-[size=xs]/attachment:w-7 group-data-[size=xs]/attachment:rounded-none group-data-[state=error]/attachment:bg-destructive/10 group-data-[state=error]/attachment:text-destructive group-data-[orientation=vertical]/attachment:*:data-[slot=spinner]:size-6! [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 group-data-[orientation=vertical]/attachment:[&_svg:not([class*='size-'])]:size-6 group-data-[size=xs]/attachment:[&_svg:not([class*='size-'])]:size-3.5",
|
|
344
378
|
{
|
|
345
379
|
variants: {
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
380
|
+
variant: {
|
|
381
|
+
icon: "",
|
|
382
|
+
image: "opacity-60 group-data-[state=done]/attachment:opacity-100 group-data-[state=idle]/attachment:opacity-100 *:[img]:aspect-square *:[img]:w-full *:[img]:object-cover"
|
|
349
383
|
}
|
|
350
384
|
},
|
|
351
385
|
defaultVariants: {
|
|
352
|
-
|
|
386
|
+
variant: "icon"
|
|
353
387
|
}
|
|
354
388
|
}
|
|
355
389
|
);
|
|
356
|
-
function
|
|
390
|
+
function AttachmentMedia({
|
|
357
391
|
className,
|
|
358
|
-
|
|
392
|
+
variant = "icon",
|
|
359
393
|
...props
|
|
360
394
|
}) {
|
|
361
395
|
return /* @__PURE__ */ jsx(
|
|
362
396
|
"div",
|
|
363
397
|
{
|
|
364
|
-
|
|
365
|
-
"data-
|
|
366
|
-
|
|
367
|
-
className: cn(buttonGroupVariants({ orientation }), className),
|
|
398
|
+
"data-slot": "attachment-media",
|
|
399
|
+
"data-variant": variant,
|
|
400
|
+
className: cn(attachmentMediaVariants({ variant }), className),
|
|
368
401
|
...props
|
|
369
402
|
}
|
|
370
403
|
);
|
|
371
404
|
}
|
|
372
|
-
function
|
|
405
|
+
function AttachmentContent({
|
|
373
406
|
className,
|
|
374
|
-
asChild = false,
|
|
375
407
|
...props
|
|
376
408
|
}) {
|
|
377
|
-
const Comp = asChild ? Slot.Root : "div";
|
|
378
409
|
return /* @__PURE__ */ jsx(
|
|
379
|
-
|
|
410
|
+
"div",
|
|
380
411
|
{
|
|
412
|
+
"data-slot": "attachment-content",
|
|
381
413
|
className: cn(
|
|
382
|
-
"
|
|
414
|
+
"max-w-full min-w-0 flex-1 leading-tight group-data-[orientation=vertical]/attachment:px-1",
|
|
383
415
|
className
|
|
384
416
|
),
|
|
385
417
|
...props
|
|
386
418
|
}
|
|
387
419
|
);
|
|
388
420
|
}
|
|
389
|
-
function
|
|
421
|
+
function AttachmentTitle({
|
|
390
422
|
className,
|
|
391
|
-
orientation = "vertical",
|
|
392
423
|
...props
|
|
393
424
|
}) {
|
|
394
425
|
return /* @__PURE__ */ jsx(
|
|
395
|
-
|
|
426
|
+
"span",
|
|
396
427
|
{
|
|
397
|
-
"data-slot": "
|
|
398
|
-
orientation,
|
|
428
|
+
"data-slot": "attachment-title",
|
|
399
429
|
className: cn(
|
|
400
|
-
"
|
|
430
|
+
"block max-w-full min-w-0 truncate font-medium group-data-[state=processing]/attachment:shimmer group-data-[state=uploading]/attachment:shimmer",
|
|
401
431
|
className
|
|
402
432
|
),
|
|
403
433
|
...props
|
|
404
434
|
}
|
|
405
435
|
);
|
|
406
436
|
}
|
|
407
|
-
function
|
|
437
|
+
function AttachmentDescription({
|
|
408
438
|
className,
|
|
409
439
|
...props
|
|
410
440
|
}) {
|
|
411
441
|
return /* @__PURE__ */ jsx(
|
|
412
|
-
|
|
442
|
+
"span",
|
|
413
443
|
{
|
|
414
|
-
"data-slot": "
|
|
444
|
+
"data-slot": "attachment-description",
|
|
415
445
|
className: cn(
|
|
416
|
-
"
|
|
446
|
+
"mt-0.5 block min-w-0 truncate text-xs text-muted-foreground group-data-[state=error]/attachment:text-destructive/80",
|
|
447
|
+
"max-w-full",
|
|
417
448
|
className
|
|
418
449
|
),
|
|
419
|
-
...props
|
|
420
|
-
children: /* @__PURE__ */ jsx(
|
|
421
|
-
Checkbox$1.Indicator,
|
|
422
|
-
{
|
|
423
|
-
"data-slot": "checkbox-indicator",
|
|
424
|
-
className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
|
|
425
|
-
children: /* @__PURE__ */ jsx(
|
|
426
|
-
CheckIcon,
|
|
427
|
-
{}
|
|
428
|
-
)
|
|
429
|
-
}
|
|
430
|
-
)
|
|
450
|
+
...props
|
|
431
451
|
}
|
|
432
452
|
);
|
|
433
453
|
}
|
|
434
|
-
function
|
|
435
|
-
|
|
436
|
-
}) {
|
|
437
|
-
return /* @__PURE__ */ jsx(Collapsible$1.Root, { "data-slot": "collapsible", ...props });
|
|
438
|
-
}
|
|
439
|
-
function CollapsibleTrigger({
|
|
454
|
+
function AttachmentActions({
|
|
455
|
+
className,
|
|
440
456
|
...props
|
|
441
457
|
}) {
|
|
442
458
|
return /* @__PURE__ */ jsx(
|
|
443
|
-
|
|
459
|
+
"div",
|
|
444
460
|
{
|
|
445
|
-
"data-slot": "
|
|
461
|
+
"data-slot": "attachment-actions",
|
|
462
|
+
className: cn(
|
|
463
|
+
"relative z-20 flex shrink-0 items-center group-data-[orientation=vertical]/attachment:absolute group-data-[orientation=vertical]/attachment:top-3 group-data-[orientation=vertical]/attachment:right-3 group-data-[orientation=vertical]/attachment:gap-1",
|
|
464
|
+
className
|
|
465
|
+
),
|
|
446
466
|
...props
|
|
447
467
|
}
|
|
448
468
|
);
|
|
449
469
|
}
|
|
450
|
-
function
|
|
470
|
+
function AttachmentAction({
|
|
471
|
+
className,
|
|
472
|
+
variant,
|
|
473
|
+
size = "icon-xs",
|
|
451
474
|
...props
|
|
452
475
|
}) {
|
|
453
476
|
return /* @__PURE__ */ jsx(
|
|
454
|
-
|
|
477
|
+
Button,
|
|
455
478
|
{
|
|
456
|
-
"data-slot": "
|
|
479
|
+
"data-slot": "attachment-action",
|
|
480
|
+
variant: variant ?? "ghost",
|
|
481
|
+
size,
|
|
482
|
+
className: cn(className),
|
|
457
483
|
...props
|
|
458
484
|
}
|
|
459
485
|
);
|
|
460
486
|
}
|
|
461
|
-
function
|
|
487
|
+
function AttachmentTrigger({
|
|
462
488
|
className,
|
|
489
|
+
asChild = false,
|
|
490
|
+
type,
|
|
463
491
|
...props
|
|
464
492
|
}) {
|
|
493
|
+
const Comp = asChild ? Slot.Root : "button";
|
|
465
494
|
return /* @__PURE__ */ jsx(
|
|
466
|
-
|
|
495
|
+
Comp,
|
|
467
496
|
{
|
|
468
|
-
"data-slot": "
|
|
497
|
+
"data-slot": "attachment-trigger",
|
|
498
|
+
type: asChild ? void 0 : type ?? "button",
|
|
499
|
+
className: cn("absolute inset-0 z-10 outline-none", className),
|
|
500
|
+
...props
|
|
501
|
+
}
|
|
502
|
+
);
|
|
503
|
+
}
|
|
504
|
+
function AttachmentGroup({ className, ...props }) {
|
|
505
|
+
return /* @__PURE__ */ jsx(
|
|
506
|
+
"div",
|
|
507
|
+
{
|
|
508
|
+
"data-slot": "attachment-group",
|
|
469
509
|
className: cn(
|
|
470
|
-
"flex
|
|
510
|
+
"flex min-w-0 scroll-fade-x snap-x snap-mandatory scroll-px-1 scrollbar-none gap-3 overflow-x-auto overscroll-x-contain py-1 *:data-[slot=attachment]:flex-none *:data-[slot=attachment]:snap-start",
|
|
471
511
|
className
|
|
472
512
|
),
|
|
473
513
|
...props
|
|
474
514
|
}
|
|
475
515
|
);
|
|
476
516
|
}
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
/* @__PURE__ */ jsx(DialogDescription, { children: description })
|
|
489
|
-
] }),
|
|
490
|
-
/* @__PURE__ */ jsx(
|
|
491
|
-
DialogContent,
|
|
492
|
-
{
|
|
493
|
-
className: cn(
|
|
494
|
-
"top-1/3 translate-y-0 overflow-hidden rounded-none p-0",
|
|
495
|
-
className
|
|
496
|
-
),
|
|
497
|
-
showCloseButton,
|
|
498
|
-
children
|
|
517
|
+
var badgeVariants = cva(
|
|
518
|
+
"group/badge inline-flex h-5 w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-none border border-transparent px-2 py-0.5 text-xs font-medium whitespace-nowrap transition-all focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 has-data-[icon=inline-end]:pr-1.5 has-data-[icon=inline-start]:pl-1.5 aria-invalid:border-destructive aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 [&>svg]:pointer-events-none [&>svg]:size-3!",
|
|
519
|
+
{
|
|
520
|
+
variants: {
|
|
521
|
+
variant: {
|
|
522
|
+
default: "bg-primary text-primary-foreground [a]:hover:bg-primary/80",
|
|
523
|
+
secondary: "bg-secondary text-secondary-foreground [a]:hover:bg-secondary/80",
|
|
524
|
+
destructive: "bg-destructive/10 text-destructive focus-visible:ring-destructive/20 dark:bg-destructive/20 dark:focus-visible:ring-destructive/40 [a]:hover:bg-destructive/20",
|
|
525
|
+
outline: "border-border text-foreground [a]:hover:bg-muted [a]:hover:text-muted-foreground",
|
|
526
|
+
ghost: "hover:bg-muted hover:text-muted-foreground dark:hover:bg-muted/50",
|
|
527
|
+
link: "text-primary underline-offset-4 hover:underline"
|
|
499
528
|
}
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
529
|
+
},
|
|
530
|
+
defaultVariants: {
|
|
531
|
+
variant: "default"
|
|
532
|
+
}
|
|
533
|
+
}
|
|
534
|
+
);
|
|
535
|
+
function Badge({
|
|
504
536
|
className,
|
|
537
|
+
variant = "default",
|
|
538
|
+
asChild = false,
|
|
505
539
|
...props
|
|
506
540
|
}) {
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
}
|
|
518
|
-
),
|
|
519
|
-
/* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(SearchIcon, { className: "size-4 shrink-0 opacity-50" }) })
|
|
520
|
-
] }) });
|
|
541
|
+
const Comp = asChild ? Slot.Root : "span";
|
|
542
|
+
return /* @__PURE__ */ jsx(
|
|
543
|
+
Comp,
|
|
544
|
+
{
|
|
545
|
+
"data-slot": "badge",
|
|
546
|
+
"data-variant": variant,
|
|
547
|
+
className: cn(badgeVariants({ variant }), className),
|
|
548
|
+
...props
|
|
549
|
+
}
|
|
550
|
+
);
|
|
521
551
|
}
|
|
522
|
-
function
|
|
523
|
-
className,
|
|
524
|
-
...props
|
|
525
|
-
}) {
|
|
552
|
+
function BubbleGroup({ className, ...props }) {
|
|
526
553
|
return /* @__PURE__ */ jsx(
|
|
527
|
-
|
|
554
|
+
"div",
|
|
528
555
|
{
|
|
529
|
-
"data-slot": "
|
|
530
|
-
className: cn(
|
|
531
|
-
"no-scrollbar max-h-72 scroll-py-0 overflow-x-hidden overflow-y-auto outline-none",
|
|
532
|
-
className
|
|
533
|
-
),
|
|
556
|
+
"data-slot": "bubble-group",
|
|
557
|
+
className: cn("flex min-w-0 flex-col gap-2", className),
|
|
534
558
|
...props
|
|
535
559
|
}
|
|
536
560
|
);
|
|
537
561
|
}
|
|
538
|
-
|
|
562
|
+
var bubbleVariants = cva(
|
|
563
|
+
"group/bubble relative flex w-fit max-w-[80%] min-w-0 flex-col gap-1 group-data-[align=end]/message:self-end data-[align=end]:self-end data-[variant=ghost]:max-w-full",
|
|
564
|
+
{
|
|
565
|
+
variants: {
|
|
566
|
+
variant: {
|
|
567
|
+
default: "*:data-[slot=bubble-content]:bg-primary *:data-[slot=bubble-content]:text-primary-foreground [&>[data-slot=bubble-content]:is(button,a):hover]:bg-primary/80",
|
|
568
|
+
secondary: "*:data-[slot=bubble-content]:bg-secondary *:data-[slot=bubble-content]:text-secondary-foreground [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[color-mix(in_oklch,var(--secondary),var(--foreground)_5%)]",
|
|
569
|
+
muted: "*:data-[slot=bubble-content]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[color-mix(in_oklch,var(--muted),var(--foreground)_5%)]",
|
|
570
|
+
tinted: "*:data-[slot=bubble-content]:bg-[oklch(from_var(--primary)_0.93_calc(c*0.4)_h)] *:data-[slot=bubble-content]:text-foreground dark:*:data-[slot=bubble-content]:bg-[oklch(from_var(--primary)_0.3_calc(c*0.4)_h)] [&>[data-slot=bubble-content]:is(button,a):hover]:bg-[oklch(from_var(--primary)_0.88_calc(c*0.5)_h)] dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-[oklch(from_var(--primary)_0.35_calc(c*0.5)_h)]",
|
|
571
|
+
outline: "*:data-[slot=bubble-content]:border-border *:data-[slot=bubble-content]:bg-background [&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:text-foreground dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-input/30",
|
|
572
|
+
ghost: "border-none *:data-[slot=bubble-content]:rounded-none *:data-[slot=bubble-content]:bg-transparent *:data-[slot=bubble-content]:p-0 [&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted [&>[data-slot=bubble-content]:is(button,a):hover]:text-foreground dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-muted/50",
|
|
573
|
+
destructive: "*:data-[slot=bubble-content]:bg-destructive/10 *:data-[slot=bubble-content]:text-destructive dark:*:data-[slot=bubble-content]:bg-destructive/20 [&>[data-slot=bubble-content]:is(button,a):hover]:bg-destructive/20 dark:[&>[data-slot=bubble-content]:is(button,a):hover]:bg-destructive/30"
|
|
574
|
+
}
|
|
575
|
+
},
|
|
576
|
+
defaultVariants: {
|
|
577
|
+
variant: "default"
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
);
|
|
581
|
+
function Bubble({
|
|
582
|
+
variant = "default",
|
|
583
|
+
align = "start",
|
|
539
584
|
className,
|
|
540
585
|
...props
|
|
541
586
|
}) {
|
|
542
587
|
return /* @__PURE__ */ jsx(
|
|
543
|
-
|
|
588
|
+
"div",
|
|
544
589
|
{
|
|
545
|
-
"data-slot": "
|
|
546
|
-
|
|
590
|
+
"data-slot": "bubble",
|
|
591
|
+
"data-variant": variant,
|
|
592
|
+
"data-align": align,
|
|
593
|
+
className: cn(bubbleVariants({ variant }), className),
|
|
547
594
|
...props
|
|
548
595
|
}
|
|
549
596
|
);
|
|
550
597
|
}
|
|
551
|
-
function
|
|
598
|
+
function BubbleContent({
|
|
599
|
+
asChild = false,
|
|
552
600
|
className,
|
|
553
601
|
...props
|
|
554
602
|
}) {
|
|
603
|
+
const Comp = asChild ? Slot.Root : "div";
|
|
555
604
|
return /* @__PURE__ */ jsx(
|
|
556
|
-
|
|
605
|
+
Comp,
|
|
557
606
|
{
|
|
558
|
-
"data-slot": "
|
|
607
|
+
"data-slot": "bubble-content",
|
|
559
608
|
className: cn(
|
|
560
|
-
"overflow-hidden text-
|
|
609
|
+
"w-fit max-w-full min-w-0 overflow-hidden rounded-none border border-transparent px-2.5 py-2 text-xs leading-relaxed wrap-break-word group-data-[align=end]/bubble:self-end [button]:text-left [button,a]:transition-colors [button,a]:outline-none [button,a]:focus-visible:border-ring [button,a]:focus-visible:ring-1 [button,a]:focus-visible:ring-ring/50",
|
|
561
610
|
className
|
|
562
611
|
),
|
|
563
612
|
...props
|
|
564
613
|
}
|
|
565
614
|
);
|
|
566
615
|
}
|
|
567
|
-
|
|
616
|
+
var bubbleReactionsVariants = cva(
|
|
617
|
+
"absolute z-10 flex w-fit shrink-0 items-center justify-center gap-1 rounded-none bg-muted px-1.5 py-0.5 text-xs ring-2 ring-card has-[button]:p-0",
|
|
618
|
+
{
|
|
619
|
+
variants: {
|
|
620
|
+
side: {
|
|
621
|
+
top: "top-0 -translate-y-3/4",
|
|
622
|
+
bottom: "bottom-0 translate-y-3/4"
|
|
623
|
+
},
|
|
624
|
+
align: {
|
|
625
|
+
start: "left-3",
|
|
626
|
+
end: "right-3"
|
|
627
|
+
}
|
|
628
|
+
},
|
|
629
|
+
defaultVariants: {
|
|
630
|
+
side: "bottom",
|
|
631
|
+
align: "end"
|
|
632
|
+
}
|
|
633
|
+
}
|
|
634
|
+
);
|
|
635
|
+
function BubbleReactions({
|
|
636
|
+
side = "bottom",
|
|
637
|
+
align = "end",
|
|
568
638
|
className,
|
|
569
639
|
...props
|
|
570
640
|
}) {
|
|
571
641
|
return /* @__PURE__ */ jsx(
|
|
572
|
-
|
|
642
|
+
"div",
|
|
573
643
|
{
|
|
574
|
-
"data-slot": "
|
|
575
|
-
|
|
644
|
+
"data-slot": "bubble-reactions",
|
|
645
|
+
"data-align": align,
|
|
646
|
+
"data-side": side,
|
|
647
|
+
className: cn(bubbleReactionsVariants({ side, align }), className),
|
|
576
648
|
...props
|
|
577
649
|
}
|
|
578
650
|
);
|
|
579
651
|
}
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
652
|
+
var buttonGroupVariants = cva(
|
|
653
|
+
"group/button-group flex w-fit items-stretch rounded-none *:focus-visible:relative *:focus-visible:z-10 has-[>[data-slot=button-group]]:gap-2 has-[select[aria-hidden=true]:last-child]:[&>[data-slot=select-trigger]:last-of-type]:rounded-none [&>[data-slot=select-trigger]:not([class*='w-'])]:w-fit [&>input]:flex-1",
|
|
654
|
+
{
|
|
655
|
+
variants: {
|
|
656
|
+
orientation: {
|
|
657
|
+
horizontal: "[&>*:not(:first-child)]:rounded-l-none [&>*:not(:first-child)]:border-l-0 [&>*:not(:last-child)]:rounded-r-none",
|
|
658
|
+
vertical: "flex-col [&>*:not(:first-child)]:rounded-t-none [&>*:not(:first-child)]:border-t-0 [&>*:not(:last-child)]:rounded-b-none"
|
|
659
|
+
}
|
|
660
|
+
},
|
|
661
|
+
defaultVariants: {
|
|
662
|
+
orientation: "horizontal"
|
|
663
|
+
}
|
|
664
|
+
}
|
|
665
|
+
);
|
|
666
|
+
function ButtonGroup({
|
|
667
|
+
className,
|
|
668
|
+
orientation,
|
|
669
|
+
...props
|
|
670
|
+
}) {
|
|
671
|
+
return /* @__PURE__ */ jsx(
|
|
672
|
+
"div",
|
|
673
|
+
{
|
|
674
|
+
role: "group",
|
|
675
|
+
"data-slot": "button-group",
|
|
676
|
+
"data-orientation": orientation,
|
|
677
|
+
className: cn(buttonGroupVariants({ orientation }), className),
|
|
678
|
+
...props
|
|
679
|
+
}
|
|
680
|
+
);
|
|
681
|
+
}
|
|
682
|
+
function ButtonGroupText({
|
|
683
|
+
className,
|
|
684
|
+
asChild = false,
|
|
685
|
+
...props
|
|
686
|
+
}) {
|
|
687
|
+
const Comp = asChild ? Slot.Root : "div";
|
|
688
|
+
return /* @__PURE__ */ jsx(
|
|
689
|
+
Comp,
|
|
690
|
+
{
|
|
691
|
+
className: cn(
|
|
692
|
+
"flex items-center gap-2 rounded-none border bg-muted px-2.5 text-xs font-medium [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
|
|
693
|
+
className
|
|
694
|
+
),
|
|
695
|
+
...props
|
|
696
|
+
}
|
|
697
|
+
);
|
|
698
|
+
}
|
|
699
|
+
function ButtonGroupSeparator({
|
|
700
|
+
className,
|
|
701
|
+
orientation = "vertical",
|
|
702
|
+
...props
|
|
703
|
+
}) {
|
|
704
|
+
return /* @__PURE__ */ jsx(
|
|
705
|
+
Separator,
|
|
706
|
+
{
|
|
707
|
+
"data-slot": "button-group-separator",
|
|
708
|
+
orientation,
|
|
709
|
+
className: cn(
|
|
710
|
+
"relative self-stretch bg-input data-horizontal:mx-px data-horizontal:w-auto data-vertical:my-px data-vertical:h-auto",
|
|
711
|
+
className
|
|
712
|
+
),
|
|
713
|
+
...props
|
|
714
|
+
}
|
|
715
|
+
);
|
|
716
|
+
}
|
|
717
|
+
function Calendar({
|
|
718
|
+
className,
|
|
719
|
+
classNames,
|
|
720
|
+
showOutsideDays = true,
|
|
721
|
+
captionLayout = "label",
|
|
722
|
+
buttonVariant = "ghost",
|
|
723
|
+
locale,
|
|
724
|
+
formatters,
|
|
725
|
+
components,
|
|
726
|
+
...props
|
|
727
|
+
}) {
|
|
728
|
+
const defaultClassNames = getDefaultClassNames();
|
|
729
|
+
return /* @__PURE__ */ jsx(
|
|
730
|
+
DayPicker,
|
|
731
|
+
{
|
|
732
|
+
showOutsideDays,
|
|
733
|
+
className: cn(
|
|
734
|
+
"group/calendar bg-background p-2 [--cell-size:--spacing(7)] in-data-[slot=card-content]:bg-transparent in-data-[slot=popover-content]:bg-transparent",
|
|
735
|
+
String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,
|
|
736
|
+
String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,
|
|
737
|
+
className
|
|
738
|
+
),
|
|
739
|
+
captionLayout,
|
|
740
|
+
locale,
|
|
741
|
+
formatters: {
|
|
742
|
+
formatMonthDropdown: (date) => date.toLocaleString(locale?.code, { month: "short" }),
|
|
743
|
+
...formatters
|
|
744
|
+
},
|
|
745
|
+
classNames: {
|
|
746
|
+
root: cn("w-fit", defaultClassNames.root),
|
|
747
|
+
months: cn(
|
|
748
|
+
"relative flex flex-col gap-4 md:flex-row",
|
|
749
|
+
defaultClassNames.months
|
|
750
|
+
),
|
|
751
|
+
month: cn("flex w-full flex-col gap-4", defaultClassNames.month),
|
|
752
|
+
nav: cn(
|
|
753
|
+
"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",
|
|
754
|
+
defaultClassNames.nav
|
|
755
|
+
),
|
|
756
|
+
button_previous: cn(
|
|
757
|
+
buttonVariants({ variant: buttonVariant }),
|
|
758
|
+
"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",
|
|
759
|
+
defaultClassNames.button_previous
|
|
760
|
+
),
|
|
761
|
+
button_next: cn(
|
|
762
|
+
buttonVariants({ variant: buttonVariant }),
|
|
763
|
+
"size-(--cell-size) p-0 select-none aria-disabled:opacity-50",
|
|
764
|
+
defaultClassNames.button_next
|
|
765
|
+
),
|
|
766
|
+
month_caption: cn(
|
|
767
|
+
"flex h-(--cell-size) w-full items-center justify-center px-(--cell-size)",
|
|
768
|
+
defaultClassNames.month_caption
|
|
769
|
+
),
|
|
770
|
+
dropdowns: cn(
|
|
771
|
+
"flex h-(--cell-size) w-full items-center justify-center gap-1.5 text-sm font-medium",
|
|
772
|
+
defaultClassNames.dropdowns
|
|
773
|
+
),
|
|
774
|
+
dropdown_root: cn(
|
|
775
|
+
"relative rounded-(--cell-radius)",
|
|
776
|
+
defaultClassNames.dropdown_root
|
|
777
|
+
),
|
|
778
|
+
dropdown: cn(
|
|
779
|
+
"absolute inset-0 bg-popover opacity-0",
|
|
780
|
+
defaultClassNames.dropdown
|
|
781
|
+
),
|
|
782
|
+
caption_label: cn(
|
|
783
|
+
"font-medium select-none",
|
|
784
|
+
captionLayout === "label" ? "text-sm" : "flex items-center gap-1 rounded-(--cell-radius) text-sm [&>svg]:size-3.5 [&>svg]:text-muted-foreground",
|
|
785
|
+
defaultClassNames.caption_label
|
|
786
|
+
),
|
|
787
|
+
month_grid: cn("w-full border-collapse", defaultClassNames.month_grid),
|
|
788
|
+
weekdays: cn("flex", defaultClassNames.weekdays),
|
|
789
|
+
weekday: cn(
|
|
790
|
+
"flex-1 rounded-(--cell-radius) text-[0.8rem] font-normal text-muted-foreground select-none",
|
|
791
|
+
defaultClassNames.weekday
|
|
792
|
+
),
|
|
793
|
+
week: cn("mt-2 flex w-full", defaultClassNames.week),
|
|
794
|
+
week_number_header: cn(
|
|
795
|
+
"w-(--cell-size) select-none",
|
|
796
|
+
defaultClassNames.week_number_header
|
|
797
|
+
),
|
|
798
|
+
week_number: cn(
|
|
799
|
+
"text-[0.8rem] text-muted-foreground select-none",
|
|
800
|
+
defaultClassNames.week_number
|
|
801
|
+
),
|
|
802
|
+
day: cn(
|
|
803
|
+
"group/day relative aspect-square h-full w-full rounded-(--cell-radius) p-0 text-center select-none [&:last-child[data-selected=true]_button]:rounded-r-(--cell-radius)",
|
|
804
|
+
props.showWeekNumber ? "[&:nth-child(2)[data-selected=true]_button]:rounded-l-(--cell-radius)" : "[&:first-child[data-selected=true]_button]:rounded-l-(--cell-radius)",
|
|
805
|
+
defaultClassNames.day
|
|
806
|
+
),
|
|
807
|
+
range_start: cn(
|
|
808
|
+
"relative isolate z-0 rounded-l-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:right-0 after:w-4 after:bg-muted",
|
|
809
|
+
defaultClassNames.range_start
|
|
810
|
+
),
|
|
811
|
+
range_middle: cn("rounded-none", defaultClassNames.range_middle),
|
|
812
|
+
range_end: cn(
|
|
813
|
+
"relative isolate z-0 rounded-r-(--cell-radius) bg-muted after:absolute after:inset-y-0 after:left-0 after:w-4 after:bg-muted",
|
|
814
|
+
defaultClassNames.range_end
|
|
815
|
+
),
|
|
816
|
+
today: cn(
|
|
817
|
+
"rounded-(--cell-radius) bg-muted text-foreground data-[selected=true]:rounded-none",
|
|
818
|
+
defaultClassNames.today
|
|
819
|
+
),
|
|
820
|
+
outside: cn(
|
|
821
|
+
"text-muted-foreground aria-selected:text-muted-foreground",
|
|
822
|
+
defaultClassNames.outside
|
|
823
|
+
),
|
|
824
|
+
disabled: cn(
|
|
825
|
+
"text-muted-foreground opacity-50",
|
|
826
|
+
defaultClassNames.disabled
|
|
827
|
+
),
|
|
828
|
+
hidden: cn("invisible", defaultClassNames.hidden),
|
|
829
|
+
...classNames
|
|
830
|
+
},
|
|
831
|
+
components: {
|
|
832
|
+
Root: ({ className: className2, rootRef, ...props2 }) => {
|
|
833
|
+
return /* @__PURE__ */ jsx(
|
|
834
|
+
"div",
|
|
835
|
+
{
|
|
836
|
+
"data-slot": "calendar",
|
|
837
|
+
ref: rootRef,
|
|
838
|
+
className: cn(className2),
|
|
839
|
+
...props2
|
|
840
|
+
}
|
|
841
|
+
);
|
|
842
|
+
},
|
|
843
|
+
Chevron: ({ className: className2, orientation, ...props2 }) => {
|
|
844
|
+
if (orientation === "left") {
|
|
845
|
+
return /* @__PURE__ */ jsx(ChevronLeftIcon, { className: cn("size-4", className2), ...props2 });
|
|
846
|
+
}
|
|
847
|
+
if (orientation === "right") {
|
|
848
|
+
return /* @__PURE__ */ jsx(ChevronRightIcon, { className: cn("size-4", className2), ...props2 });
|
|
849
|
+
}
|
|
850
|
+
return /* @__PURE__ */ jsx(ChevronDownIcon, { className: cn("size-4", className2), ...props2 });
|
|
851
|
+
},
|
|
852
|
+
DayButton: ({ ...props2 }) => /* @__PURE__ */ jsx(CalendarDayButton, { locale, ...props2 }),
|
|
853
|
+
WeekNumber: ({ children, ...props2 }) => {
|
|
854
|
+
return /* @__PURE__ */ jsx("td", { ...props2, children: /* @__PURE__ */ jsx("div", { className: "flex size-(--cell-size) items-center justify-center text-center", children }) });
|
|
855
|
+
},
|
|
856
|
+
...components
|
|
857
|
+
},
|
|
858
|
+
...props
|
|
859
|
+
}
|
|
860
|
+
);
|
|
861
|
+
}
|
|
862
|
+
function CalendarDayButton({
|
|
863
|
+
className,
|
|
864
|
+
day,
|
|
865
|
+
modifiers,
|
|
866
|
+
locale,
|
|
867
|
+
...props
|
|
868
|
+
}) {
|
|
869
|
+
const defaultClassNames = getDefaultClassNames();
|
|
870
|
+
const ref = React8.useRef(null);
|
|
871
|
+
React8.useEffect(() => {
|
|
872
|
+
if (modifiers.focused) ref.current?.focus();
|
|
873
|
+
}, [modifiers.focused]);
|
|
874
|
+
return /* @__PURE__ */ jsx(
|
|
875
|
+
Button,
|
|
876
|
+
{
|
|
877
|
+
ref,
|
|
878
|
+
variant: "ghost",
|
|
879
|
+
size: "icon",
|
|
880
|
+
"data-day": day.date.toLocaleDateString(locale?.code),
|
|
881
|
+
"data-selected-single": modifiers.selected && !modifiers.range_start && !modifiers.range_end && !modifiers.range_middle,
|
|
882
|
+
"data-range-start": modifiers.range_start,
|
|
883
|
+
"data-range-end": modifiers.range_end,
|
|
884
|
+
"data-range-middle": modifiers.range_middle,
|
|
885
|
+
className: cn(
|
|
886
|
+
"relative isolate z-10 flex aspect-square size-auto w-full min-w-(--cell-size) flex-col gap-1 border-0 leading-none font-normal group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-[3px] group-data-[focused=true]/day:ring-ring/50 data-[range-end=true]:rounded-(--cell-radius) data-[range-end=true]:rounded-r-(--cell-radius) data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground data-[range-middle=true]:rounded-none data-[range-middle=true]:bg-muted data-[range-middle=true]:text-foreground data-[range-start=true]:rounded-(--cell-radius) data-[range-start=true]:rounded-l-(--cell-radius) data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground dark:hover:text-foreground [&>span]:text-xs [&>span]:opacity-70",
|
|
887
|
+
defaultClassNames.day,
|
|
888
|
+
className
|
|
889
|
+
),
|
|
890
|
+
...props
|
|
891
|
+
}
|
|
892
|
+
);
|
|
893
|
+
}
|
|
894
|
+
var CarouselContext = React8.createContext(null);
|
|
895
|
+
function useCarousel() {
|
|
896
|
+
const context = React8.useContext(CarouselContext);
|
|
897
|
+
if (!context) {
|
|
898
|
+
throw new Error("useCarousel must be used within a <Carousel />");
|
|
899
|
+
}
|
|
900
|
+
return context;
|
|
901
|
+
}
|
|
902
|
+
function Carousel({
|
|
903
|
+
orientation = "horizontal",
|
|
904
|
+
opts,
|
|
905
|
+
setApi,
|
|
906
|
+
plugins,
|
|
907
|
+
className,
|
|
908
|
+
children,
|
|
909
|
+
...props
|
|
910
|
+
}) {
|
|
911
|
+
const [carouselRef, api] = useEmblaCarousel(
|
|
912
|
+
{
|
|
913
|
+
...opts,
|
|
914
|
+
axis: orientation === "horizontal" ? "x" : "y"
|
|
915
|
+
},
|
|
916
|
+
plugins
|
|
917
|
+
);
|
|
918
|
+
const [canScrollPrev, setCanScrollPrev] = React8.useState(false);
|
|
919
|
+
const [canScrollNext, setCanScrollNext] = React8.useState(false);
|
|
920
|
+
const onSelect = React8.useCallback((api2) => {
|
|
921
|
+
if (!api2) return;
|
|
922
|
+
setCanScrollPrev(api2.canScrollPrev());
|
|
923
|
+
setCanScrollNext(api2.canScrollNext());
|
|
924
|
+
}, []);
|
|
925
|
+
const scrollPrev = React8.useCallback(() => {
|
|
926
|
+
api?.scrollPrev();
|
|
927
|
+
}, [api]);
|
|
928
|
+
const scrollNext = React8.useCallback(() => {
|
|
929
|
+
api?.scrollNext();
|
|
930
|
+
}, [api]);
|
|
931
|
+
const handleKeyDown = React8.useCallback(
|
|
932
|
+
(event) => {
|
|
933
|
+
if (event.key === "ArrowLeft") {
|
|
934
|
+
event.preventDefault();
|
|
935
|
+
scrollPrev();
|
|
936
|
+
} else if (event.key === "ArrowRight") {
|
|
937
|
+
event.preventDefault();
|
|
938
|
+
scrollNext();
|
|
939
|
+
}
|
|
940
|
+
},
|
|
941
|
+
[scrollPrev, scrollNext]
|
|
942
|
+
);
|
|
943
|
+
React8.useEffect(() => {
|
|
944
|
+
if (!api || !setApi) return;
|
|
945
|
+
setApi(api);
|
|
946
|
+
}, [api, setApi]);
|
|
947
|
+
React8.useEffect(() => {
|
|
948
|
+
if (!api) return;
|
|
949
|
+
onSelect(api);
|
|
950
|
+
api.on("reInit", onSelect);
|
|
951
|
+
api.on("select", onSelect);
|
|
952
|
+
return () => {
|
|
953
|
+
api?.off("select", onSelect);
|
|
954
|
+
};
|
|
955
|
+
}, [api, onSelect]);
|
|
956
|
+
return /* @__PURE__ */ jsx(
|
|
957
|
+
CarouselContext.Provider,
|
|
958
|
+
{
|
|
959
|
+
value: {
|
|
960
|
+
carouselRef,
|
|
961
|
+
api,
|
|
962
|
+
opts,
|
|
963
|
+
orientation: orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
|
|
964
|
+
scrollPrev,
|
|
965
|
+
scrollNext,
|
|
966
|
+
canScrollPrev,
|
|
967
|
+
canScrollNext
|
|
968
|
+
},
|
|
969
|
+
children: /* @__PURE__ */ jsx(
|
|
970
|
+
"div",
|
|
971
|
+
{
|
|
972
|
+
onKeyDownCapture: handleKeyDown,
|
|
973
|
+
className: cn("relative", className),
|
|
974
|
+
role: "region",
|
|
975
|
+
"aria-roledescription": "carousel",
|
|
976
|
+
"data-slot": "carousel",
|
|
977
|
+
...props,
|
|
978
|
+
children
|
|
979
|
+
}
|
|
980
|
+
)
|
|
981
|
+
}
|
|
982
|
+
);
|
|
983
|
+
}
|
|
984
|
+
function CarouselContent({ className, ...props }) {
|
|
985
|
+
const { carouselRef, orientation } = useCarousel();
|
|
986
|
+
return /* @__PURE__ */ jsx(
|
|
987
|
+
"div",
|
|
988
|
+
{
|
|
989
|
+
ref: carouselRef,
|
|
990
|
+
className: "overflow-hidden",
|
|
991
|
+
"data-slot": "carousel-content",
|
|
992
|
+
children: /* @__PURE__ */ jsx(
|
|
993
|
+
"div",
|
|
994
|
+
{
|
|
995
|
+
className: cn(
|
|
996
|
+
"flex",
|
|
997
|
+
orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
|
|
998
|
+
className
|
|
999
|
+
),
|
|
1000
|
+
...props
|
|
1001
|
+
}
|
|
1002
|
+
)
|
|
1003
|
+
}
|
|
1004
|
+
);
|
|
1005
|
+
}
|
|
1006
|
+
function CarouselItem({ className, ...props }) {
|
|
1007
|
+
const { orientation } = useCarousel();
|
|
1008
|
+
return /* @__PURE__ */ jsx(
|
|
1009
|
+
"div",
|
|
1010
|
+
{
|
|
1011
|
+
role: "group",
|
|
1012
|
+
"aria-roledescription": "slide",
|
|
1013
|
+
"data-slot": "carousel-item",
|
|
1014
|
+
className: cn(
|
|
1015
|
+
"min-w-0 shrink-0 grow-0 basis-full",
|
|
1016
|
+
orientation === "horizontal" ? "pl-4" : "pt-4",
|
|
1017
|
+
className
|
|
1018
|
+
),
|
|
1019
|
+
...props
|
|
1020
|
+
}
|
|
1021
|
+
);
|
|
1022
|
+
}
|
|
1023
|
+
function CarouselPrevious({
|
|
1024
|
+
className,
|
|
1025
|
+
variant = "outline",
|
|
1026
|
+
size = "icon-sm",
|
|
1027
|
+
...props
|
|
1028
|
+
}) {
|
|
1029
|
+
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
1030
|
+
return /* @__PURE__ */ jsxs(
|
|
1031
|
+
Button,
|
|
1032
|
+
{
|
|
1033
|
+
"data-slot": "carousel-previous",
|
|
1034
|
+
variant,
|
|
1035
|
+
size,
|
|
1036
|
+
className: cn(
|
|
1037
|
+
"absolute touch-manipulation",
|
|
1038
|
+
orientation === "horizontal" ? "inset-y-0 -left-12 my-auto" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
1039
|
+
className
|
|
1040
|
+
),
|
|
1041
|
+
disabled: !canScrollPrev,
|
|
1042
|
+
onClick: scrollPrev,
|
|
1043
|
+
...props,
|
|
1044
|
+
children: [
|
|
1045
|
+
/* @__PURE__ */ jsx(ChevronLeftIcon, {}),
|
|
1046
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Previous slide" })
|
|
1047
|
+
]
|
|
1048
|
+
}
|
|
1049
|
+
);
|
|
1050
|
+
}
|
|
1051
|
+
function CarouselNext({
|
|
1052
|
+
className,
|
|
1053
|
+
variant = "outline",
|
|
1054
|
+
size = "icon-sm",
|
|
1055
|
+
...props
|
|
1056
|
+
}) {
|
|
1057
|
+
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
1058
|
+
return /* @__PURE__ */ jsxs(
|
|
1059
|
+
Button,
|
|
1060
|
+
{
|
|
1061
|
+
"data-slot": "carousel-next",
|
|
1062
|
+
variant,
|
|
1063
|
+
size,
|
|
1064
|
+
className: cn(
|
|
1065
|
+
"absolute touch-manipulation",
|
|
1066
|
+
orientation === "horizontal" ? "inset-y-0 -right-12 my-auto" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
|
|
1067
|
+
className
|
|
1068
|
+
),
|
|
1069
|
+
disabled: !canScrollNext,
|
|
1070
|
+
onClick: scrollNext,
|
|
1071
|
+
...props,
|
|
1072
|
+
children: [
|
|
1073
|
+
/* @__PURE__ */ jsx(ChevronRightIcon, {}),
|
|
1074
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "Next slide" })
|
|
1075
|
+
]
|
|
1076
|
+
}
|
|
1077
|
+
);
|
|
1078
|
+
}
|
|
1079
|
+
var THEMES = { light: "", dark: ".dark" };
|
|
1080
|
+
var INITIAL_DIMENSION = { width: 320, height: 200 };
|
|
1081
|
+
var ChartContext = React8.createContext(null);
|
|
1082
|
+
function useChart() {
|
|
1083
|
+
const context = React8.useContext(ChartContext);
|
|
1084
|
+
if (!context) {
|
|
1085
|
+
throw new Error("useChart must be used within a <ChartContainer />");
|
|
1086
|
+
}
|
|
1087
|
+
return context;
|
|
1088
|
+
}
|
|
1089
|
+
function ChartContainer({
|
|
1090
|
+
id,
|
|
1091
|
+
className,
|
|
1092
|
+
children,
|
|
1093
|
+
config,
|
|
1094
|
+
initialDimension = INITIAL_DIMENSION,
|
|
1095
|
+
...props
|
|
1096
|
+
}) {
|
|
1097
|
+
const uniqueId = React8.useId();
|
|
1098
|
+
const chartId = `chart-${id ?? uniqueId.replace(/:/g, "")}`;
|
|
1099
|
+
return /* @__PURE__ */ jsx(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs(
|
|
1100
|
+
"div",
|
|
1101
|
+
{
|
|
1102
|
+
"data-slot": "chart",
|
|
1103
|
+
"data-chart": chartId,
|
|
1104
|
+
className: cn(
|
|
1105
|
+
"flex aspect-video justify-center text-xs [&_.recharts-cartesian-axis-tick_text]:fill-muted-foreground [&_.recharts-cartesian-grid_line[stroke='#ccc']]:stroke-border/50 [&_.recharts-curve.recharts-tooltip-cursor]:stroke-border [&_.recharts-dot[stroke='#fff']]:stroke-transparent [&_.recharts-layer]:outline-hidden [&_.recharts-polar-grid_[stroke='#ccc']]:stroke-border [&_.recharts-radial-bar-background-sector]:fill-muted [&_.recharts-rectangle.recharts-tooltip-cursor]:fill-muted [&_.recharts-reference-line_[stroke='#ccc']]:stroke-border [&_.recharts-sector]:outline-hidden [&_.recharts-sector[stroke='#fff']]:stroke-transparent [&_.recharts-surface]:outline-hidden",
|
|
1106
|
+
className
|
|
1107
|
+
),
|
|
1108
|
+
...props,
|
|
1109
|
+
children: [
|
|
1110
|
+
/* @__PURE__ */ jsx(ChartStyle, { id: chartId, config }),
|
|
1111
|
+
/* @__PURE__ */ jsx(
|
|
1112
|
+
RechartsPrimitive.ResponsiveContainer,
|
|
1113
|
+
{
|
|
1114
|
+
initialDimension,
|
|
1115
|
+
children
|
|
1116
|
+
}
|
|
1117
|
+
)
|
|
1118
|
+
]
|
|
1119
|
+
}
|
|
1120
|
+
) });
|
|
1121
|
+
}
|
|
1122
|
+
var ChartStyle = ({ id, config }) => {
|
|
1123
|
+
const colorConfig = Object.entries(config).filter(
|
|
1124
|
+
([, config2]) => config2.theme ?? config2.color
|
|
1125
|
+
);
|
|
1126
|
+
if (!colorConfig.length) {
|
|
1127
|
+
return null;
|
|
1128
|
+
}
|
|
1129
|
+
return /* @__PURE__ */ jsx(
|
|
1130
|
+
"style",
|
|
1131
|
+
{
|
|
1132
|
+
dangerouslySetInnerHTML: {
|
|
1133
|
+
__html: Object.entries(THEMES).map(
|
|
1134
|
+
([theme, prefix]) => `
|
|
1135
|
+
${prefix} [data-chart=${id}] {
|
|
1136
|
+
${colorConfig.map(([key, itemConfig]) => {
|
|
1137
|
+
const color = itemConfig.theme?.[theme] ?? itemConfig.color;
|
|
1138
|
+
return color ? ` --color-${key}: ${color};` : null;
|
|
1139
|
+
}).join("\n")}
|
|
1140
|
+
}
|
|
1141
|
+
`
|
|
1142
|
+
).join("\n")
|
|
1143
|
+
}
|
|
1144
|
+
}
|
|
1145
|
+
);
|
|
1146
|
+
};
|
|
1147
|
+
var ChartTooltip = RechartsPrimitive.Tooltip;
|
|
1148
|
+
function ChartTooltipContent({
|
|
1149
|
+
active,
|
|
1150
|
+
payload,
|
|
1151
|
+
className,
|
|
1152
|
+
indicator = "dot",
|
|
1153
|
+
hideLabel = false,
|
|
1154
|
+
hideIndicator = false,
|
|
1155
|
+
label,
|
|
1156
|
+
labelFormatter,
|
|
1157
|
+
labelClassName,
|
|
1158
|
+
formatter,
|
|
1159
|
+
color,
|
|
1160
|
+
nameKey,
|
|
1161
|
+
labelKey
|
|
1162
|
+
}) {
|
|
1163
|
+
const { config } = useChart();
|
|
1164
|
+
const tooltipLabel = React8.useMemo(() => {
|
|
1165
|
+
if (hideLabel || !payload?.length) {
|
|
1166
|
+
return null;
|
|
1167
|
+
}
|
|
1168
|
+
const [item] = payload;
|
|
1169
|
+
const key = `${labelKey ?? item?.dataKey ?? item?.name ?? "value"}`;
|
|
1170
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
1171
|
+
const value = !labelKey && typeof label === "string" ? config[label]?.label ?? label : itemConfig?.label;
|
|
1172
|
+
if (labelFormatter) {
|
|
1173
|
+
return /* @__PURE__ */ jsx("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
|
|
1174
|
+
}
|
|
1175
|
+
if (!value) {
|
|
1176
|
+
return null;
|
|
1177
|
+
}
|
|
1178
|
+
return /* @__PURE__ */ jsx("div", { className: cn("font-medium", labelClassName), children: value });
|
|
1179
|
+
}, [
|
|
1180
|
+
label,
|
|
1181
|
+
labelFormatter,
|
|
1182
|
+
payload,
|
|
1183
|
+
hideLabel,
|
|
1184
|
+
labelClassName,
|
|
1185
|
+
config,
|
|
1186
|
+
labelKey
|
|
1187
|
+
]);
|
|
1188
|
+
if (!active || !payload?.length) {
|
|
1189
|
+
return null;
|
|
1190
|
+
}
|
|
1191
|
+
const nestLabel = payload.length === 1 && indicator !== "dot";
|
|
1192
|
+
return /* @__PURE__ */ jsxs(
|
|
1193
|
+
"div",
|
|
1194
|
+
{
|
|
1195
|
+
className: cn(
|
|
1196
|
+
"grid min-w-32 items-start gap-1.5 rounded-none border border-border/50 bg-background px-2.5 py-1.5 text-xs shadow-xl",
|
|
1197
|
+
className
|
|
1198
|
+
),
|
|
1199
|
+
children: [
|
|
1200
|
+
!nestLabel ? tooltipLabel : null,
|
|
1201
|
+
/* @__PURE__ */ jsx("div", { className: "grid gap-1.5", children: payload.filter((item) => item.type !== "none").map((item, index) => {
|
|
1202
|
+
const key = `${nameKey ?? item.name ?? item.dataKey ?? "value"}`;
|
|
1203
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
1204
|
+
const indicatorColor = color ?? item.payload?.fill ?? item.color;
|
|
1205
|
+
return /* @__PURE__ */ jsx(
|
|
1206
|
+
"div",
|
|
1207
|
+
{
|
|
1208
|
+
className: cn(
|
|
1209
|
+
"flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground",
|
|
1210
|
+
indicator === "dot" && "items-center"
|
|
1211
|
+
),
|
|
1212
|
+
children: formatter && item?.value !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
1213
|
+
itemConfig?.icon ? /* @__PURE__ */ jsx(itemConfig.icon, {}) : !hideIndicator && /* @__PURE__ */ jsx(
|
|
1214
|
+
"div",
|
|
1215
|
+
{
|
|
1216
|
+
className: cn(
|
|
1217
|
+
"shrink-0 rounded-[2px] border-(--color-border) bg-(--color-bg)",
|
|
1218
|
+
{
|
|
1219
|
+
"h-2.5 w-2.5": indicator === "dot",
|
|
1220
|
+
"w-1": indicator === "line",
|
|
1221
|
+
"w-0 border-[1.5px] border-dashed bg-transparent": indicator === "dashed",
|
|
1222
|
+
"my-0.5": nestLabel && indicator === "dashed"
|
|
1223
|
+
}
|
|
1224
|
+
),
|
|
1225
|
+
style: {
|
|
1226
|
+
"--color-bg": indicatorColor,
|
|
1227
|
+
"--color-border": indicatorColor
|
|
1228
|
+
}
|
|
1229
|
+
}
|
|
1230
|
+
),
|
|
1231
|
+
/* @__PURE__ */ jsxs(
|
|
1232
|
+
"div",
|
|
1233
|
+
{
|
|
1234
|
+
className: cn(
|
|
1235
|
+
"flex flex-1 justify-between leading-none",
|
|
1236
|
+
nestLabel ? "items-end" : "items-center"
|
|
1237
|
+
),
|
|
1238
|
+
children: [
|
|
1239
|
+
/* @__PURE__ */ jsxs("div", { className: "grid gap-1.5", children: [
|
|
1240
|
+
nestLabel ? tooltipLabel : null,
|
|
1241
|
+
/* @__PURE__ */ jsx("span", { className: "text-muted-foreground", children: itemConfig?.label ?? item.name })
|
|
1242
|
+
] }),
|
|
1243
|
+
item.value != null && /* @__PURE__ */ jsx("span", { className: "font-mono font-medium text-foreground tabular-nums", children: typeof item.value === "number" ? item.value.toLocaleString() : String(item.value) })
|
|
1244
|
+
]
|
|
1245
|
+
}
|
|
1246
|
+
)
|
|
1247
|
+
] })
|
|
1248
|
+
},
|
|
1249
|
+
index
|
|
1250
|
+
);
|
|
1251
|
+
}) })
|
|
1252
|
+
]
|
|
1253
|
+
}
|
|
1254
|
+
);
|
|
1255
|
+
}
|
|
1256
|
+
var ChartLegend = RechartsPrimitive.Legend;
|
|
1257
|
+
function ChartLegendContent({
|
|
1258
|
+
className,
|
|
1259
|
+
hideIcon = false,
|
|
1260
|
+
payload,
|
|
1261
|
+
verticalAlign = "bottom",
|
|
1262
|
+
nameKey
|
|
1263
|
+
}) {
|
|
1264
|
+
const { config } = useChart();
|
|
1265
|
+
if (!payload?.length) {
|
|
1266
|
+
return null;
|
|
1267
|
+
}
|
|
1268
|
+
return /* @__PURE__ */ jsx(
|
|
1269
|
+
"div",
|
|
1270
|
+
{
|
|
1271
|
+
className: cn(
|
|
1272
|
+
"flex items-center justify-center gap-4",
|
|
1273
|
+
verticalAlign === "top" ? "pb-3" : "pt-3",
|
|
1274
|
+
className
|
|
1275
|
+
),
|
|
1276
|
+
children: payload.filter((item) => item.type !== "none").map((item, index) => {
|
|
1277
|
+
const key = `${nameKey ?? item.dataKey ?? "value"}`;
|
|
1278
|
+
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
1279
|
+
return /* @__PURE__ */ jsxs(
|
|
1280
|
+
"div",
|
|
1281
|
+
{
|
|
1282
|
+
className: cn(
|
|
1283
|
+
"flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground"
|
|
1284
|
+
),
|
|
1285
|
+
children: [
|
|
1286
|
+
itemConfig?.icon && !hideIcon ? /* @__PURE__ */ jsx(itemConfig.icon, {}) : /* @__PURE__ */ jsx(
|
|
1287
|
+
"div",
|
|
1288
|
+
{
|
|
1289
|
+
className: "h-2 w-2 shrink-0 rounded-[2px]",
|
|
1290
|
+
style: {
|
|
1291
|
+
backgroundColor: item.color
|
|
1292
|
+
}
|
|
1293
|
+
}
|
|
1294
|
+
),
|
|
1295
|
+
itemConfig?.label
|
|
1296
|
+
]
|
|
1297
|
+
},
|
|
1298
|
+
index
|
|
1299
|
+
);
|
|
1300
|
+
})
|
|
1301
|
+
}
|
|
1302
|
+
);
|
|
1303
|
+
}
|
|
1304
|
+
function getPayloadConfigFromPayload(config, payload, key) {
|
|
1305
|
+
if (typeof payload !== "object" || payload === null) {
|
|
1306
|
+
return void 0;
|
|
1307
|
+
}
|
|
1308
|
+
const payloadPayload = "payload" in payload && typeof payload.payload === "object" && payload.payload !== null ? payload.payload : void 0;
|
|
1309
|
+
let configLabelKey = key;
|
|
1310
|
+
if (key in payload && typeof payload[key] === "string") {
|
|
1311
|
+
configLabelKey = payload[key];
|
|
1312
|
+
} else if (payloadPayload && key in payloadPayload && typeof payloadPayload[key] === "string") {
|
|
1313
|
+
configLabelKey = payloadPayload[key];
|
|
1314
|
+
}
|
|
1315
|
+
return configLabelKey in config ? config[configLabelKey] : config[key];
|
|
1316
|
+
}
|
|
1317
|
+
function Checkbox({
|
|
1318
|
+
className,
|
|
1319
|
+
...props
|
|
1320
|
+
}) {
|
|
1321
|
+
return /* @__PURE__ */ jsx(
|
|
1322
|
+
Checkbox$1.Root,
|
|
1323
|
+
{
|
|
1324
|
+
"data-slot": "checkbox",
|
|
1325
|
+
className: cn(
|
|
1326
|
+
"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",
|
|
1327
|
+
className
|
|
1328
|
+
),
|
|
1329
|
+
...props,
|
|
1330
|
+
children: /* @__PURE__ */ jsx(
|
|
1331
|
+
Checkbox$1.Indicator,
|
|
1332
|
+
{
|
|
1333
|
+
"data-slot": "checkbox-indicator",
|
|
1334
|
+
className: "grid place-content-center text-current transition-none [&>svg]:size-3.5",
|
|
1335
|
+
children: /* @__PURE__ */ jsx(
|
|
1336
|
+
CheckIcon,
|
|
1337
|
+
{}
|
|
1338
|
+
)
|
|
1339
|
+
}
|
|
1340
|
+
)
|
|
1341
|
+
}
|
|
1342
|
+
);
|
|
1343
|
+
}
|
|
1344
|
+
function Collapsible({
|
|
1345
|
+
...props
|
|
1346
|
+
}) {
|
|
1347
|
+
return /* @__PURE__ */ jsx(Collapsible$1.Root, { "data-slot": "collapsible", ...props });
|
|
1348
|
+
}
|
|
1349
|
+
function CollapsibleTrigger({
|
|
1350
|
+
...props
|
|
1351
|
+
}) {
|
|
1352
|
+
return /* @__PURE__ */ jsx(
|
|
1353
|
+
Collapsible$1.CollapsibleTrigger,
|
|
1354
|
+
{
|
|
1355
|
+
"data-slot": "collapsible-trigger",
|
|
1356
|
+
...props
|
|
1357
|
+
}
|
|
1358
|
+
);
|
|
1359
|
+
}
|
|
1360
|
+
function CollapsibleContent({
|
|
1361
|
+
...props
|
|
1362
|
+
}) {
|
|
1363
|
+
return /* @__PURE__ */ jsx(
|
|
1364
|
+
Collapsible$1.CollapsibleContent,
|
|
1365
|
+
{
|
|
1366
|
+
"data-slot": "collapsible-content",
|
|
1367
|
+
...props
|
|
1368
|
+
}
|
|
1369
|
+
);
|
|
1370
|
+
}
|
|
1371
|
+
var Combobox = Combobox$1.Root;
|
|
1372
|
+
function ComboboxValue({ ...props }) {
|
|
1373
|
+
return /* @__PURE__ */ jsx(Combobox$1.Value, { "data-slot": "combobox-value", ...props });
|
|
1374
|
+
}
|
|
1375
|
+
function ComboboxTrigger({
|
|
1376
|
+
className,
|
|
1377
|
+
children,
|
|
1378
|
+
...props
|
|
1379
|
+
}) {
|
|
1380
|
+
return /* @__PURE__ */ jsxs(
|
|
1381
|
+
Combobox$1.Trigger,
|
|
1382
|
+
{
|
|
1383
|
+
"data-slot": "combobox-trigger",
|
|
1384
|
+
className: cn("[&_svg:not([class*='size-'])]:size-4", className),
|
|
1385
|
+
...props,
|
|
1386
|
+
children: [
|
|
1387
|
+
children,
|
|
1388
|
+
/* @__PURE__ */ jsx(ChevronDownIcon, { className: "pointer-events-none size-4 text-muted-foreground" })
|
|
1389
|
+
]
|
|
1390
|
+
}
|
|
1391
|
+
);
|
|
1392
|
+
}
|
|
1393
|
+
function ComboboxClear({ className, ...props }) {
|
|
1394
|
+
return /* @__PURE__ */ jsx(
|
|
1395
|
+
Combobox$1.Clear,
|
|
1396
|
+
{
|
|
1397
|
+
"data-slot": "combobox-clear",
|
|
1398
|
+
render: /* @__PURE__ */ jsx(InputGroupButton, { variant: "ghost", size: "icon-xs" }),
|
|
1399
|
+
className: cn(className),
|
|
1400
|
+
...props,
|
|
1401
|
+
children: /* @__PURE__ */ jsx(XIcon, { className: "pointer-events-none" })
|
|
1402
|
+
}
|
|
1403
|
+
);
|
|
1404
|
+
}
|
|
1405
|
+
function ComboboxInput({
|
|
1406
|
+
className,
|
|
1407
|
+
children,
|
|
1408
|
+
disabled = false,
|
|
1409
|
+
showTrigger = true,
|
|
1410
|
+
showClear = false,
|
|
1411
|
+
...props
|
|
1412
|
+
}) {
|
|
1413
|
+
return /* @__PURE__ */ jsxs(InputGroup, { className: cn("w-auto", className), children: [
|
|
1414
|
+
/* @__PURE__ */ jsx(
|
|
1415
|
+
Combobox$1.Input,
|
|
1416
|
+
{
|
|
1417
|
+
render: /* @__PURE__ */ jsx(InputGroupInput, { disabled }),
|
|
1418
|
+
...props
|
|
1419
|
+
}
|
|
1420
|
+
),
|
|
1421
|
+
/* @__PURE__ */ jsxs(InputGroupAddon, { align: "inline-end", children: [
|
|
1422
|
+
showTrigger && /* @__PURE__ */ jsx(
|
|
1423
|
+
InputGroupButton,
|
|
1424
|
+
{
|
|
1425
|
+
size: "icon-xs",
|
|
1426
|
+
variant: "ghost",
|
|
1427
|
+
asChild: true,
|
|
1428
|
+
"data-slot": "input-group-button",
|
|
1429
|
+
className: "group-has-data-[slot=combobox-clear]/input-group:hidden data-pressed:bg-transparent",
|
|
1430
|
+
disabled,
|
|
1431
|
+
children: /* @__PURE__ */ jsx(ComboboxTrigger, {})
|
|
1432
|
+
}
|
|
1433
|
+
),
|
|
1434
|
+
showClear && /* @__PURE__ */ jsx(ComboboxClear, { disabled })
|
|
1435
|
+
] }),
|
|
1436
|
+
children
|
|
1437
|
+
] });
|
|
1438
|
+
}
|
|
1439
|
+
function ComboboxContent({
|
|
1440
|
+
className,
|
|
1441
|
+
side = "bottom",
|
|
1442
|
+
sideOffset = 6,
|
|
1443
|
+
align = "start",
|
|
1444
|
+
alignOffset = 0,
|
|
1445
|
+
anchor,
|
|
1446
|
+
...props
|
|
1447
|
+
}) {
|
|
1448
|
+
return /* @__PURE__ */ jsx(Combobox$1.Portal, { children: /* @__PURE__ */ jsx(
|
|
1449
|
+
Combobox$1.Positioner,
|
|
1450
|
+
{
|
|
1451
|
+
side,
|
|
1452
|
+
sideOffset,
|
|
1453
|
+
align,
|
|
1454
|
+
alignOffset,
|
|
1455
|
+
anchor,
|
|
1456
|
+
className: "isolate z-50",
|
|
1457
|
+
children: /* @__PURE__ */ jsx(
|
|
1458
|
+
Combobox$1.Popup,
|
|
1459
|
+
{
|
|
1460
|
+
"data-slot": "combobox-content",
|
|
1461
|
+
"data-chips": !!anchor,
|
|
1462
|
+
className: cn("group/combobox-content relative max-h-(--available-height) w-(--anchor-width) max-w-(--available-width) min-w-[calc(var(--anchor-width)+--spacing(7))] origin-(--transform-origin) overflow-hidden rounded-none bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[chips=true]:min-w-(--anchor-width) data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 *:data-[slot=input-group]:m-1 *:data-[slot=input-group]:mb-0 *:data-[slot=input-group]:h-8 *:data-[slot=input-group]:border-input/30 *:data-[slot=input-group]:bg-input/30 *:data-[slot=input-group]:shadow-none data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
1463
|
+
...props
|
|
1464
|
+
}
|
|
1465
|
+
)
|
|
1466
|
+
}
|
|
1467
|
+
) });
|
|
1468
|
+
}
|
|
1469
|
+
function ComboboxList({ className, ...props }) {
|
|
1470
|
+
return /* @__PURE__ */ jsx(
|
|
1471
|
+
Combobox$1.List,
|
|
1472
|
+
{
|
|
1473
|
+
"data-slot": "combobox-list",
|
|
1474
|
+
className: cn(
|
|
1475
|
+
"no-scrollbar max-h-[min(calc(--spacing(72)---spacing(9)),calc(var(--available-height)---spacing(9)))] scroll-py-1 overflow-y-auto overscroll-contain data-empty:p-0",
|
|
1476
|
+
className
|
|
1477
|
+
),
|
|
1478
|
+
...props
|
|
1479
|
+
}
|
|
1480
|
+
);
|
|
1481
|
+
}
|
|
1482
|
+
function ComboboxItem({
|
|
1483
|
+
className,
|
|
1484
|
+
children,
|
|
1485
|
+
...props
|
|
1486
|
+
}) {
|
|
1487
|
+
return /* @__PURE__ */ jsxs(
|
|
1488
|
+
Combobox$1.Item,
|
|
1489
|
+
{
|
|
1490
|
+
"data-slot": "combobox-item",
|
|
1491
|
+
className: cn(
|
|
1492
|
+
"relative flex w-full cursor-default items-center gap-2 rounded-none py-2 pr-8 pl-2 text-xs outline-hidden select-none data-highlighted:bg-accent data-highlighted:text-accent-foreground not-data-[variant=destructive]:data-highlighted:**:text-accent-foreground data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1493
|
+
className
|
|
1494
|
+
),
|
|
1495
|
+
...props,
|
|
1496
|
+
children: [
|
|
1497
|
+
children,
|
|
1498
|
+
/* @__PURE__ */ jsx(
|
|
1499
|
+
Combobox$1.ItemIndicator,
|
|
1500
|
+
{
|
|
1501
|
+
render: /* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center" }),
|
|
1502
|
+
children: /* @__PURE__ */ jsx(CheckIcon, { className: "pointer-events-none" })
|
|
1503
|
+
}
|
|
1504
|
+
)
|
|
1505
|
+
]
|
|
1506
|
+
}
|
|
1507
|
+
);
|
|
1508
|
+
}
|
|
1509
|
+
function ComboboxGroup({ className, ...props }) {
|
|
1510
|
+
return /* @__PURE__ */ jsx(
|
|
1511
|
+
Combobox$1.Group,
|
|
1512
|
+
{
|
|
1513
|
+
"data-slot": "combobox-group",
|
|
1514
|
+
className: cn(className),
|
|
1515
|
+
...props
|
|
1516
|
+
}
|
|
1517
|
+
);
|
|
1518
|
+
}
|
|
1519
|
+
function ComboboxLabel({
|
|
1520
|
+
className,
|
|
1521
|
+
...props
|
|
1522
|
+
}) {
|
|
1523
|
+
return /* @__PURE__ */ jsx(
|
|
1524
|
+
Combobox$1.GroupLabel,
|
|
1525
|
+
{
|
|
1526
|
+
"data-slot": "combobox-label",
|
|
1527
|
+
className: cn("px-2 py-2 text-xs text-muted-foreground", className),
|
|
1528
|
+
...props
|
|
1529
|
+
}
|
|
1530
|
+
);
|
|
1531
|
+
}
|
|
1532
|
+
function ComboboxCollection({ ...props }) {
|
|
1533
|
+
return /* @__PURE__ */ jsx(Combobox$1.Collection, { "data-slot": "combobox-collection", ...props });
|
|
1534
|
+
}
|
|
1535
|
+
function ComboboxEmpty({ className, ...props }) {
|
|
1536
|
+
return /* @__PURE__ */ jsx(
|
|
1537
|
+
Combobox$1.Empty,
|
|
1538
|
+
{
|
|
1539
|
+
"data-slot": "combobox-empty",
|
|
1540
|
+
className: cn(
|
|
1541
|
+
"hidden w-full justify-center py-2 text-center text-xs text-muted-foreground group-data-empty/combobox-content:flex",
|
|
1542
|
+
className
|
|
1543
|
+
),
|
|
1544
|
+
...props
|
|
1545
|
+
}
|
|
1546
|
+
);
|
|
1547
|
+
}
|
|
1548
|
+
function ComboboxSeparator({
|
|
1549
|
+
className,
|
|
1550
|
+
...props
|
|
1551
|
+
}) {
|
|
1552
|
+
return /* @__PURE__ */ jsx(
|
|
1553
|
+
Combobox$1.Separator,
|
|
1554
|
+
{
|
|
1555
|
+
"data-slot": "combobox-separator",
|
|
1556
|
+
className: cn("-mx-1 h-px bg-border", className),
|
|
1557
|
+
...props
|
|
1558
|
+
}
|
|
1559
|
+
);
|
|
1560
|
+
}
|
|
1561
|
+
function ComboboxChips({
|
|
1562
|
+
className,
|
|
1563
|
+
...props
|
|
1564
|
+
}) {
|
|
1565
|
+
return /* @__PURE__ */ jsx(
|
|
1566
|
+
Combobox$1.Chips,
|
|
1567
|
+
{
|
|
1568
|
+
"data-slot": "combobox-chips",
|
|
1569
|
+
className: cn(
|
|
1570
|
+
"flex min-h-8 flex-wrap items-center gap-1 rounded-none border border-input bg-transparent bg-clip-padding px-2.5 py-1 text-xs transition-colors focus-within:border-ring focus-within:ring-1 focus-within:ring-ring/50 has-aria-invalid:border-destructive has-aria-invalid:ring-1 has-aria-invalid:ring-destructive/20 has-data-[slot=combobox-chip]:px-1 dark:bg-input/30 dark:has-aria-invalid:border-destructive/50 dark:has-aria-invalid:ring-destructive/40",
|
|
1571
|
+
className
|
|
1572
|
+
),
|
|
1573
|
+
...props
|
|
1574
|
+
}
|
|
1575
|
+
);
|
|
1576
|
+
}
|
|
1577
|
+
function ComboboxChip({
|
|
1578
|
+
className,
|
|
1579
|
+
children,
|
|
1580
|
+
showRemove = true,
|
|
1581
|
+
...props
|
|
1582
|
+
}) {
|
|
1583
|
+
return /* @__PURE__ */ jsxs(
|
|
1584
|
+
Combobox$1.Chip,
|
|
1585
|
+
{
|
|
1586
|
+
"data-slot": "combobox-chip",
|
|
1587
|
+
className: cn(
|
|
1588
|
+
"flex h-[calc(--spacing(5.25))] w-fit items-center justify-center gap-1 rounded-none bg-muted px-1.5 text-xs font-medium whitespace-nowrap text-foreground has-disabled:pointer-events-none has-disabled:cursor-not-allowed has-disabled:opacity-50 has-data-[slot=combobox-chip-remove]:pr-0",
|
|
1589
|
+
className
|
|
1590
|
+
),
|
|
1591
|
+
...props,
|
|
1592
|
+
children: [
|
|
1593
|
+
children,
|
|
1594
|
+
showRemove && /* @__PURE__ */ jsx(
|
|
1595
|
+
Combobox$1.ChipRemove,
|
|
1596
|
+
{
|
|
1597
|
+
render: /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-xs" }),
|
|
1598
|
+
className: "-ml-1 opacity-50 hover:opacity-100",
|
|
1599
|
+
"data-slot": "combobox-chip-remove",
|
|
1600
|
+
children: /* @__PURE__ */ jsx(XIcon, { className: "pointer-events-none" })
|
|
1601
|
+
}
|
|
1602
|
+
)
|
|
1603
|
+
]
|
|
1604
|
+
}
|
|
1605
|
+
);
|
|
1606
|
+
}
|
|
1607
|
+
function ComboboxChipsInput({
|
|
1608
|
+
className,
|
|
1609
|
+
...props
|
|
1610
|
+
}) {
|
|
1611
|
+
return /* @__PURE__ */ jsx(
|
|
1612
|
+
Combobox$1.Input,
|
|
1613
|
+
{
|
|
1614
|
+
"data-slot": "combobox-chip-input",
|
|
1615
|
+
className: cn("min-w-16 flex-1 outline-none", className),
|
|
1616
|
+
...props
|
|
1617
|
+
}
|
|
1618
|
+
);
|
|
1619
|
+
}
|
|
1620
|
+
function useComboboxAnchor() {
|
|
1621
|
+
return React8.useRef(null);
|
|
1622
|
+
}
|
|
1623
|
+
function Command({
|
|
1624
|
+
className,
|
|
1625
|
+
...props
|
|
1626
|
+
}) {
|
|
1627
|
+
return /* @__PURE__ */ jsx(
|
|
1628
|
+
Command$1,
|
|
1629
|
+
{
|
|
1630
|
+
"data-slot": "command",
|
|
1631
|
+
className: cn(
|
|
1632
|
+
"flex size-full flex-col overflow-hidden rounded-none bg-popover text-popover-foreground",
|
|
1633
|
+
className
|
|
1634
|
+
),
|
|
1635
|
+
...props
|
|
1636
|
+
}
|
|
1637
|
+
);
|
|
1638
|
+
}
|
|
1639
|
+
function CommandDialog({
|
|
1640
|
+
title = "Command Palette",
|
|
1641
|
+
description = "Search for a command to run...",
|
|
1642
|
+
children,
|
|
1643
|
+
className,
|
|
1644
|
+
showCloseButton = false,
|
|
1645
|
+
...props
|
|
1646
|
+
}) {
|
|
1647
|
+
return /* @__PURE__ */ jsxs(Dialog, { ...props, children: [
|
|
1648
|
+
/* @__PURE__ */ jsxs(DialogHeader, { className: "sr-only", children: [
|
|
1649
|
+
/* @__PURE__ */ jsx(DialogTitle, { children: title }),
|
|
1650
|
+
/* @__PURE__ */ jsx(DialogDescription, { children: description })
|
|
1651
|
+
] }),
|
|
1652
|
+
/* @__PURE__ */ jsx(
|
|
1653
|
+
DialogContent,
|
|
1654
|
+
{
|
|
1655
|
+
className: cn(
|
|
1656
|
+
"top-1/3 translate-y-0 overflow-hidden rounded-none p-0",
|
|
1657
|
+
className
|
|
1658
|
+
),
|
|
1659
|
+
showCloseButton,
|
|
1660
|
+
children
|
|
1661
|
+
}
|
|
1662
|
+
)
|
|
1663
|
+
] });
|
|
1664
|
+
}
|
|
1665
|
+
function CommandInput({
|
|
1666
|
+
className,
|
|
1667
|
+
...props
|
|
1668
|
+
}) {
|
|
1669
|
+
return /* @__PURE__ */ jsx("div", { "data-slot": "command-input-wrapper", className: "border-b pb-0", children: /* @__PURE__ */ jsxs(InputGroup, { className: "h-8 border-none border-input/30 bg-input/30 shadow-none! *:data-[slot=input-group-addon]:pl-2!", children: [
|
|
1670
|
+
/* @__PURE__ */ jsx(
|
|
1671
|
+
Command$1.Input,
|
|
1672
|
+
{
|
|
1673
|
+
"data-slot": "command-input",
|
|
1674
|
+
className: cn(
|
|
1675
|
+
"w-full text-xs outline-hidden disabled:cursor-not-allowed disabled:opacity-50",
|
|
1676
|
+
className
|
|
1677
|
+
),
|
|
1678
|
+
...props
|
|
1679
|
+
}
|
|
1680
|
+
),
|
|
1681
|
+
/* @__PURE__ */ jsx(InputGroupAddon, { children: /* @__PURE__ */ jsx(SearchIcon, { className: "size-4 shrink-0 opacity-50" }) })
|
|
1682
|
+
] }) });
|
|
1683
|
+
}
|
|
1684
|
+
function CommandList({
|
|
1685
|
+
className,
|
|
1686
|
+
...props
|
|
1687
|
+
}) {
|
|
1688
|
+
return /* @__PURE__ */ jsx(
|
|
1689
|
+
Command$1.List,
|
|
1690
|
+
{
|
|
1691
|
+
"data-slot": "command-list",
|
|
1692
|
+
className: cn(
|
|
1693
|
+
"no-scrollbar max-h-72 scroll-py-0 overflow-x-hidden overflow-y-auto outline-none",
|
|
1694
|
+
className
|
|
1695
|
+
),
|
|
1696
|
+
...props
|
|
1697
|
+
}
|
|
1698
|
+
);
|
|
1699
|
+
}
|
|
1700
|
+
function CommandEmpty({
|
|
1701
|
+
className,
|
|
1702
|
+
...props
|
|
1703
|
+
}) {
|
|
1704
|
+
return /* @__PURE__ */ jsx(
|
|
1705
|
+
Command$1.Empty,
|
|
1706
|
+
{
|
|
1707
|
+
"data-slot": "command-empty",
|
|
1708
|
+
className: cn("py-6 text-center text-xs", className),
|
|
1709
|
+
...props
|
|
1710
|
+
}
|
|
1711
|
+
);
|
|
1712
|
+
}
|
|
1713
|
+
function CommandGroup({
|
|
1714
|
+
className,
|
|
1715
|
+
...props
|
|
1716
|
+
}) {
|
|
1717
|
+
return /* @__PURE__ */ jsx(
|
|
1718
|
+
Command$1.Group,
|
|
1719
|
+
{
|
|
1720
|
+
"data-slot": "command-group",
|
|
1721
|
+
className: cn(
|
|
1722
|
+
"overflow-hidden text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:text-muted-foreground",
|
|
1723
|
+
className
|
|
1724
|
+
),
|
|
1725
|
+
...props
|
|
1726
|
+
}
|
|
1727
|
+
);
|
|
1728
|
+
}
|
|
1729
|
+
function CommandSeparator({
|
|
1730
|
+
className,
|
|
1731
|
+
...props
|
|
1732
|
+
}) {
|
|
1733
|
+
return /* @__PURE__ */ jsx(
|
|
1734
|
+
Command$1.Separator,
|
|
1735
|
+
{
|
|
1736
|
+
"data-slot": "command-separator",
|
|
1737
|
+
className: cn("-mx-1 h-px bg-border", className),
|
|
1738
|
+
...props
|
|
1739
|
+
}
|
|
1740
|
+
);
|
|
1741
|
+
}
|
|
1742
|
+
function CommandItem({
|
|
1743
|
+
className,
|
|
1744
|
+
children,
|
|
1745
|
+
...props
|
|
1746
|
+
}) {
|
|
1747
|
+
return /* @__PURE__ */ jsxs(
|
|
1748
|
+
Command$1.Item,
|
|
1749
|
+
{
|
|
1750
|
+
"data-slot": "command-item",
|
|
1751
|
+
className: cn(
|
|
1752
|
+
"group/command-item relative flex cursor-default items-center gap-2 rounded-none px-2 py-2 text-xs outline-hidden select-none in-data-[slot=dialog-content]:rounded-none! data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",
|
|
1753
|
+
className
|
|
1754
|
+
),
|
|
1755
|
+
...props,
|
|
1756
|
+
children: [
|
|
1757
|
+
children,
|
|
1758
|
+
/* @__PURE__ */ jsx(CheckIcon, { className: "ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100" })
|
|
1759
|
+
]
|
|
1760
|
+
}
|
|
1761
|
+
);
|
|
1762
|
+
}
|
|
1763
|
+
function CommandShortcut({
|
|
1764
|
+
className,
|
|
1765
|
+
...props
|
|
1766
|
+
}) {
|
|
1767
|
+
return /* @__PURE__ */ jsx(
|
|
1768
|
+
"span",
|
|
1769
|
+
{
|
|
1770
|
+
"data-slot": "command-shortcut",
|
|
1771
|
+
className: cn(
|
|
1772
|
+
"ml-auto text-xs tracking-widest text-muted-foreground group-data-selected/command-item:text-foreground",
|
|
1773
|
+
className
|
|
1774
|
+
),
|
|
1775
|
+
...props
|
|
1776
|
+
}
|
|
1777
|
+
);
|
|
1778
|
+
}
|
|
1779
|
+
function DirectionProvider({
|
|
1780
|
+
dir,
|
|
1781
|
+
direction,
|
|
1782
|
+
children
|
|
1783
|
+
}) {
|
|
1784
|
+
return /* @__PURE__ */ jsx(Direction.DirectionProvider, { dir: direction ?? dir, children });
|
|
1785
|
+
}
|
|
1786
|
+
var useDirection = Direction.useDirection;
|
|
1787
|
+
function Drawer({
|
|
1788
|
+
...props
|
|
1789
|
+
}) {
|
|
1790
|
+
return /* @__PURE__ */ jsx(Drawer$1.Root, { "data-slot": "drawer", ...props });
|
|
1791
|
+
}
|
|
1792
|
+
function DrawerTrigger({
|
|
1793
|
+
...props
|
|
1794
|
+
}) {
|
|
1795
|
+
return /* @__PURE__ */ jsx(Drawer$1.Trigger, { "data-slot": "drawer-trigger", ...props });
|
|
1796
|
+
}
|
|
1797
|
+
function DrawerPortal({
|
|
1798
|
+
...props
|
|
1799
|
+
}) {
|
|
1800
|
+
return /* @__PURE__ */ jsx(Drawer$1.Portal, { "data-slot": "drawer-portal", ...props });
|
|
1801
|
+
}
|
|
1802
|
+
function DrawerClose({
|
|
1803
|
+
...props
|
|
1804
|
+
}) {
|
|
1805
|
+
return /* @__PURE__ */ jsx(Drawer$1.Close, { "data-slot": "drawer-close", ...props });
|
|
1806
|
+
}
|
|
1807
|
+
function DrawerOverlay({
|
|
1808
|
+
className,
|
|
1809
|
+
...props
|
|
1810
|
+
}) {
|
|
1811
|
+
return /* @__PURE__ */ jsx(
|
|
1812
|
+
Drawer$1.Overlay,
|
|
1813
|
+
{
|
|
1814
|
+
"data-slot": "drawer-overlay",
|
|
1815
|
+
className: cn(
|
|
1816
|
+
"fixed inset-0 z-50 bg-black/10 supports-backdrop-filter:backdrop-blur-xs data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
1817
|
+
className
|
|
1818
|
+
),
|
|
1819
|
+
...props
|
|
1820
|
+
}
|
|
1821
|
+
);
|
|
1822
|
+
}
|
|
1823
|
+
function DrawerContent({
|
|
1824
|
+
className,
|
|
1825
|
+
children,
|
|
1826
|
+
...props
|
|
1827
|
+
}) {
|
|
1828
|
+
return /* @__PURE__ */ jsxs(DrawerPortal, { "data-slot": "drawer-portal", children: [
|
|
1829
|
+
/* @__PURE__ */ jsx(DrawerOverlay, {}),
|
|
1830
|
+
/* @__PURE__ */ jsxs(
|
|
1831
|
+
Drawer$1.Content,
|
|
1832
|
+
{
|
|
1833
|
+
"data-slot": "drawer-content",
|
|
1834
|
+
className: cn(
|
|
1835
|
+
"group/drawer-content fixed z-50 flex h-auto flex-col bg-popover text-xs/relaxed text-popover-foreground data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-none data-[vaul-drawer-direction=bottom]:border-t data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:rounded-none data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:rounded-none data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-none data-[vaul-drawer-direction=top]:border-b data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-sm",
|
|
1836
|
+
className
|
|
1837
|
+
),
|
|
1838
|
+
...props,
|
|
1839
|
+
children: [
|
|
1840
|
+
/* @__PURE__ */ jsx("div", { className: "mx-auto mt-4 hidden h-1 w-[100px] shrink-0 rounded-none bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
|
|
1841
|
+
children
|
|
1842
|
+
]
|
|
1843
|
+
}
|
|
1844
|
+
)
|
|
1845
|
+
] });
|
|
1846
|
+
}
|
|
1847
|
+
function DrawerHeader({ className, ...props }) {
|
|
1848
|
+
return /* @__PURE__ */ jsx(
|
|
1849
|
+
"div",
|
|
1850
|
+
{
|
|
1851
|
+
"data-slot": "drawer-header",
|
|
1852
|
+
className: cn(
|
|
1853
|
+
"flex flex-col gap-0.5 p-4 group-data-[vaul-drawer-direction=bottom]/drawer-content:text-center group-data-[vaul-drawer-direction=top]/drawer-content:text-center md:gap-0.5 md:text-left",
|
|
1854
|
+
className
|
|
1855
|
+
),
|
|
1856
|
+
...props
|
|
1857
|
+
}
|
|
1858
|
+
);
|
|
1859
|
+
}
|
|
1860
|
+
function DrawerFooter({ className, ...props }) {
|
|
1861
|
+
return /* @__PURE__ */ jsx(
|
|
1862
|
+
"div",
|
|
1863
|
+
{
|
|
1864
|
+
"data-slot": "drawer-footer",
|
|
1865
|
+
className: cn("mt-auto flex flex-col gap-2 p-4", className),
|
|
1866
|
+
...props
|
|
1867
|
+
}
|
|
1868
|
+
);
|
|
1869
|
+
}
|
|
1870
|
+
function DrawerTitle({
|
|
1871
|
+
className,
|
|
1872
|
+
...props
|
|
1873
|
+
}) {
|
|
1874
|
+
return /* @__PURE__ */ jsx(
|
|
1875
|
+
Drawer$1.Title,
|
|
1876
|
+
{
|
|
1877
|
+
"data-slot": "drawer-title",
|
|
1878
|
+
className: cn(
|
|
1879
|
+
"font-heading text-sm font-medium text-foreground",
|
|
1880
|
+
className
|
|
1881
|
+
),
|
|
1882
|
+
...props
|
|
1883
|
+
}
|
|
1884
|
+
);
|
|
1885
|
+
}
|
|
1886
|
+
function DrawerDescription({
|
|
1887
|
+
className,
|
|
1888
|
+
...props
|
|
1889
|
+
}) {
|
|
1890
|
+
return /* @__PURE__ */ jsx(
|
|
1891
|
+
Drawer$1.Description,
|
|
1892
|
+
{
|
|
1893
|
+
"data-slot": "drawer-description",
|
|
1894
|
+
className: cn("text-xs/relaxed text-muted-foreground", className),
|
|
1895
|
+
...props
|
|
1896
|
+
}
|
|
1897
|
+
);
|
|
1898
|
+
}
|
|
1899
|
+
function Empty({ className, ...props }) {
|
|
1900
|
+
return /* @__PURE__ */ jsx(
|
|
1901
|
+
"div",
|
|
1902
|
+
{
|
|
1903
|
+
"data-slot": "empty",
|
|
1904
|
+
className: cn(
|
|
1905
|
+
"flex w-full min-w-0 flex-1 flex-col items-center justify-center gap-4 rounded-none border-dashed p-6 text-center text-balance",
|
|
1906
|
+
className
|
|
1907
|
+
),
|
|
1908
|
+
...props
|
|
1909
|
+
}
|
|
1910
|
+
);
|
|
1911
|
+
}
|
|
1912
|
+
function EmptyHeader({ className, ...props }) {
|
|
1913
|
+
return /* @__PURE__ */ jsx(
|
|
1914
|
+
"div",
|
|
1915
|
+
{
|
|
1916
|
+
"data-slot": "empty-header",
|
|
1917
|
+
className: cn("flex max-w-sm flex-col items-center gap-2", className),
|
|
1918
|
+
...props
|
|
1919
|
+
}
|
|
1920
|
+
);
|
|
1921
|
+
}
|
|
1922
|
+
var emptyMediaVariants = cva(
|
|
1923
|
+
"mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",
|
|
1924
|
+
{
|
|
1925
|
+
variants: {
|
|
1926
|
+
variant: {
|
|
1927
|
+
default: "bg-transparent",
|
|
1928
|
+
icon: "flex size-8 shrink-0 items-center justify-center rounded-none bg-muted text-foreground [&_svg:not([class*='size-'])]:size-4"
|
|
1929
|
+
}
|
|
1930
|
+
},
|
|
1931
|
+
defaultVariants: {
|
|
1932
|
+
variant: "default"
|
|
1933
|
+
}
|
|
1934
|
+
}
|
|
1935
|
+
);
|
|
1936
|
+
function EmptyMedia({
|
|
1937
|
+
className,
|
|
1938
|
+
variant = "default",
|
|
1939
|
+
...props
|
|
1940
|
+
}) {
|
|
1941
|
+
return /* @__PURE__ */ jsx(
|
|
1942
|
+
"div",
|
|
1943
|
+
{
|
|
1944
|
+
"data-slot": "empty-icon",
|
|
1945
|
+
"data-variant": variant,
|
|
1946
|
+
className: cn(emptyMediaVariants({ variant, className })),
|
|
1947
|
+
...props
|
|
1948
|
+
}
|
|
1949
|
+
);
|
|
1950
|
+
}
|
|
1951
|
+
function EmptyTitle({ className, ...props }) {
|
|
1952
|
+
return /* @__PURE__ */ jsx(
|
|
1953
|
+
"div",
|
|
1954
|
+
{
|
|
1955
|
+
"data-slot": "empty-title",
|
|
1956
|
+
className: cn("font-heading text-sm font-medium", className),
|
|
1957
|
+
...props
|
|
1958
|
+
}
|
|
1959
|
+
);
|
|
1960
|
+
}
|
|
1961
|
+
function EmptyDescription({ className, ...props }) {
|
|
1962
|
+
return /* @__PURE__ */ jsx(
|
|
1963
|
+
"div",
|
|
1964
|
+
{
|
|
1965
|
+
"data-slot": "empty-description",
|
|
1966
|
+
className: cn(
|
|
1967
|
+
"text-xs/relaxed text-muted-foreground [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
1968
|
+
className
|
|
1969
|
+
),
|
|
1970
|
+
...props
|
|
1971
|
+
}
|
|
1972
|
+
);
|
|
1973
|
+
}
|
|
1974
|
+
function EmptyContent({ className, ...props }) {
|
|
1975
|
+
return /* @__PURE__ */ jsx(
|
|
1976
|
+
"div",
|
|
1977
|
+
{
|
|
1978
|
+
"data-slot": "empty-content",
|
|
1979
|
+
className: cn(
|
|
1980
|
+
"flex w-full max-w-sm min-w-0 flex-col items-center gap-2.5 text-xs text-balance",
|
|
1981
|
+
className
|
|
1982
|
+
),
|
|
1983
|
+
...props
|
|
1984
|
+
}
|
|
1985
|
+
);
|
|
1986
|
+
}
|
|
1987
|
+
function FieldSet({ className, ...props }) {
|
|
1988
|
+
return /* @__PURE__ */ jsx(
|
|
1989
|
+
"fieldset",
|
|
1990
|
+
{
|
|
1991
|
+
"data-slot": "field-set",
|
|
1992
|
+
className: cn(
|
|
1993
|
+
"flex flex-col gap-4 has-[>[data-slot=checkbox-group]]:gap-3 has-[>[data-slot=radio-group]]:gap-3",
|
|
1994
|
+
className
|
|
1995
|
+
),
|
|
1996
|
+
...props
|
|
1997
|
+
}
|
|
1998
|
+
);
|
|
1999
|
+
}
|
|
2000
|
+
function FieldLegend({
|
|
2001
|
+
className,
|
|
2002
|
+
variant = "legend",
|
|
2003
|
+
...props
|
|
2004
|
+
}) {
|
|
2005
|
+
return /* @__PURE__ */ jsx(
|
|
2006
|
+
"legend",
|
|
2007
|
+
{
|
|
2008
|
+
"data-slot": "field-legend",
|
|
2009
|
+
"data-variant": variant,
|
|
2010
|
+
className: cn(
|
|
2011
|
+
"mb-2.5 font-medium data-[variant=label]:text-xs data-[variant=legend]:text-sm",
|
|
2012
|
+
className
|
|
2013
|
+
),
|
|
2014
|
+
...props
|
|
2015
|
+
}
|
|
2016
|
+
);
|
|
2017
|
+
}
|
|
2018
|
+
function FieldGroup({ className, ...props }) {
|
|
2019
|
+
return /* @__PURE__ */ jsx(
|
|
2020
|
+
"div",
|
|
2021
|
+
{
|
|
2022
|
+
"data-slot": "field-group",
|
|
2023
|
+
className: cn(
|
|
2024
|
+
"group/field-group @container/field-group flex w-full flex-col gap-5 data-[slot=checkbox-group]:gap-3 *:data-[slot=field-group]:gap-4",
|
|
2025
|
+
className
|
|
2026
|
+
),
|
|
2027
|
+
...props
|
|
2028
|
+
}
|
|
2029
|
+
);
|
|
2030
|
+
}
|
|
2031
|
+
var fieldVariants = cva(
|
|
2032
|
+
"group/field flex w-full gap-2 data-[invalid=true]:text-destructive",
|
|
2033
|
+
{
|
|
2034
|
+
variants: {
|
|
2035
|
+
orientation: {
|
|
2036
|
+
vertical: "flex-col *:w-full [&>.sr-only]:w-auto",
|
|
2037
|
+
horizontal: "flex-row items-center has-[>[data-slot=field-content]]:items-start *:data-[slot=field-label]:flex-auto has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px",
|
|
2038
|
+
responsive: "flex-col *:w-full @md/field-group:flex-row @md/field-group:items-center @md/field-group:*:w-auto @md/field-group:has-[>[data-slot=field-content]]:items-start @md/field-group:*:data-[slot=field-label]:flex-auto [&>.sr-only]:w-auto @md/field-group:has-[>[data-slot=field-content]]:[&>[role=checkbox],[role=radio]]:mt-px"
|
|
2039
|
+
}
|
|
2040
|
+
},
|
|
2041
|
+
defaultVariants: {
|
|
2042
|
+
orientation: "vertical"
|
|
2043
|
+
}
|
|
2044
|
+
}
|
|
2045
|
+
);
|
|
2046
|
+
function Field({
|
|
2047
|
+
className,
|
|
2048
|
+
orientation = "vertical",
|
|
2049
|
+
...props
|
|
2050
|
+
}) {
|
|
2051
|
+
return /* @__PURE__ */ jsx(
|
|
2052
|
+
"div",
|
|
2053
|
+
{
|
|
2054
|
+
role: "group",
|
|
2055
|
+
"data-slot": "field",
|
|
2056
|
+
"data-orientation": orientation,
|
|
2057
|
+
className: cn(fieldVariants({ orientation }), className),
|
|
2058
|
+
...props
|
|
2059
|
+
}
|
|
2060
|
+
);
|
|
2061
|
+
}
|
|
2062
|
+
function FieldContent({ className, ...props }) {
|
|
2063
|
+
return /* @__PURE__ */ jsx(
|
|
2064
|
+
"div",
|
|
2065
|
+
{
|
|
2066
|
+
"data-slot": "field-content",
|
|
2067
|
+
className: cn(
|
|
2068
|
+
"group/field-content flex flex-1 flex-col gap-0.5 leading-snug",
|
|
2069
|
+
className
|
|
2070
|
+
),
|
|
2071
|
+
...props
|
|
2072
|
+
}
|
|
2073
|
+
);
|
|
2074
|
+
}
|
|
2075
|
+
function FieldLabel({
|
|
2076
|
+
className,
|
|
2077
|
+
...props
|
|
2078
|
+
}) {
|
|
2079
|
+
return /* @__PURE__ */ jsx(
|
|
2080
|
+
Label,
|
|
2081
|
+
{
|
|
2082
|
+
"data-slot": "field-label",
|
|
2083
|
+
className: cn(
|
|
2084
|
+
"group/field-label peer/field-label flex w-fit gap-2 leading-snug group-data-[disabled=true]/field:opacity-50 has-data-checked:border-primary/30 has-data-checked:bg-primary/5 has-[>[data-slot=field]]:rounded-none has-[>[data-slot=field]]:border *:data-[slot=field]:p-2 dark:has-data-checked:border-primary/20 dark:has-data-checked:bg-primary/10",
|
|
2085
|
+
"has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col",
|
|
2086
|
+
className
|
|
2087
|
+
),
|
|
2088
|
+
...props
|
|
2089
|
+
}
|
|
2090
|
+
);
|
|
2091
|
+
}
|
|
2092
|
+
function FieldTitle({ className, ...props }) {
|
|
2093
|
+
return /* @__PURE__ */ jsx(
|
|
2094
|
+
"div",
|
|
2095
|
+
{
|
|
2096
|
+
"data-slot": "field-label",
|
|
2097
|
+
className: cn(
|
|
2098
|
+
"flex w-fit items-center gap-2 text-xs/relaxed group-data-[disabled=true]/field:opacity-50",
|
|
2099
|
+
className
|
|
2100
|
+
),
|
|
2101
|
+
...props
|
|
2102
|
+
}
|
|
2103
|
+
);
|
|
2104
|
+
}
|
|
2105
|
+
function FieldDescription({ className, ...props }) {
|
|
2106
|
+
return /* @__PURE__ */ jsx(
|
|
2107
|
+
"p",
|
|
2108
|
+
{
|
|
2109
|
+
"data-slot": "field-description",
|
|
2110
|
+
className: cn(
|
|
2111
|
+
"text-left text-xs/relaxed leading-normal font-normal text-muted-foreground group-has-data-horizontal/field:text-balance [[data-variant=legend]+&]:-mt-1.5",
|
|
2112
|
+
"last:mt-0 nth-last-2:-mt-1",
|
|
2113
|
+
"[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
2114
|
+
className
|
|
2115
|
+
),
|
|
2116
|
+
...props
|
|
2117
|
+
}
|
|
2118
|
+
);
|
|
2119
|
+
}
|
|
2120
|
+
function FieldSeparator({
|
|
2121
|
+
children,
|
|
2122
|
+
className,
|
|
2123
|
+
...props
|
|
2124
|
+
}) {
|
|
585
2125
|
return /* @__PURE__ */ jsxs(
|
|
586
|
-
|
|
2126
|
+
"div",
|
|
587
2127
|
{
|
|
588
|
-
"data-slot": "
|
|
2128
|
+
"data-slot": "field-separator",
|
|
2129
|
+
"data-content": !!children,
|
|
589
2130
|
className: cn(
|
|
590
|
-
"
|
|
2131
|
+
"relative -my-2 h-5 text-xs group-data-[variant=outline]/field-group:-mb-2",
|
|
591
2132
|
className
|
|
592
2133
|
),
|
|
593
2134
|
...props,
|
|
594
2135
|
children: [
|
|
595
|
-
|
|
596
|
-
/* @__PURE__ */ jsx(
|
|
2136
|
+
/* @__PURE__ */ jsx(Separator, { className: "absolute inset-0 top-1/2" }),
|
|
2137
|
+
children && /* @__PURE__ */ jsx(
|
|
2138
|
+
"span",
|
|
2139
|
+
{
|
|
2140
|
+
className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground",
|
|
2141
|
+
"data-slot": "field-separator-content",
|
|
2142
|
+
children
|
|
2143
|
+
}
|
|
2144
|
+
)
|
|
597
2145
|
]
|
|
598
2146
|
}
|
|
599
2147
|
);
|
|
600
2148
|
}
|
|
601
|
-
function
|
|
2149
|
+
function FieldError({
|
|
602
2150
|
className,
|
|
2151
|
+
children,
|
|
2152
|
+
errors,
|
|
603
2153
|
...props
|
|
604
2154
|
}) {
|
|
2155
|
+
const content = useMemo(() => {
|
|
2156
|
+
if (children) {
|
|
2157
|
+
return children;
|
|
2158
|
+
}
|
|
2159
|
+
if (!errors?.length) {
|
|
2160
|
+
return null;
|
|
2161
|
+
}
|
|
2162
|
+
const uniqueErrors = [
|
|
2163
|
+
...new Map(errors.map((error) => [error?.message, error])).values()
|
|
2164
|
+
];
|
|
2165
|
+
if (uniqueErrors?.length == 1) {
|
|
2166
|
+
return uniqueErrors[0]?.message;
|
|
2167
|
+
}
|
|
2168
|
+
return /* @__PURE__ */ jsx("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map(
|
|
2169
|
+
(error, index) => error?.message && /* @__PURE__ */ jsx("li", { children: error.message }, index)
|
|
2170
|
+
) });
|
|
2171
|
+
}, [children, errors]);
|
|
2172
|
+
if (!content) {
|
|
2173
|
+
return null;
|
|
2174
|
+
}
|
|
605
2175
|
return /* @__PURE__ */ jsx(
|
|
606
|
-
"
|
|
2176
|
+
"div",
|
|
607
2177
|
{
|
|
608
|
-
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
...props
|
|
2178
|
+
role: "alert",
|
|
2179
|
+
"data-slot": "field-error",
|
|
2180
|
+
className: cn("text-xs font-normal text-destructive", className),
|
|
2181
|
+
...props,
|
|
2182
|
+
children: content
|
|
614
2183
|
}
|
|
615
2184
|
);
|
|
616
2185
|
}
|
|
617
|
-
function
|
|
618
|
-
...props
|
|
619
|
-
}) {
|
|
620
|
-
return /* @__PURE__ */ jsx(Drawer$1.Root, { "data-slot": "drawer", ...props });
|
|
621
|
-
}
|
|
622
|
-
function DrawerTrigger({
|
|
2186
|
+
function HoverCard({
|
|
623
2187
|
...props
|
|
624
2188
|
}) {
|
|
625
|
-
return /* @__PURE__ */ jsx(
|
|
2189
|
+
return /* @__PURE__ */ jsx(HoverCard$1.Root, { "data-slot": "hover-card", ...props });
|
|
626
2190
|
}
|
|
627
|
-
function
|
|
2191
|
+
function HoverCardTrigger({
|
|
628
2192
|
...props
|
|
629
2193
|
}) {
|
|
630
|
-
return /* @__PURE__ */ jsx(
|
|
2194
|
+
return /* @__PURE__ */ jsx(HoverCard$1.Trigger, { "data-slot": "hover-card-trigger", ...props });
|
|
631
2195
|
}
|
|
632
|
-
function
|
|
2196
|
+
function HoverCardContent({
|
|
2197
|
+
className,
|
|
2198
|
+
align = "center",
|
|
2199
|
+
sideOffset = 4,
|
|
633
2200
|
...props
|
|
634
2201
|
}) {
|
|
635
|
-
return /* @__PURE__ */ jsx(
|
|
2202
|
+
return /* @__PURE__ */ jsx(HoverCard$1.Portal, { "data-slot": "hover-card-portal", children: /* @__PURE__ */ jsx(
|
|
2203
|
+
HoverCard$1.Content,
|
|
2204
|
+
{
|
|
2205
|
+
"data-slot": "hover-card-content",
|
|
2206
|
+
align,
|
|
2207
|
+
sideOffset,
|
|
2208
|
+
className: cn(
|
|
2209
|
+
"z-50 w-64 origin-(--radix-hover-card-content-transform-origin) rounded-none bg-popover p-2.5 text-xs/relaxed text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
2210
|
+
className
|
|
2211
|
+
),
|
|
2212
|
+
...props
|
|
2213
|
+
}
|
|
2214
|
+
) });
|
|
636
2215
|
}
|
|
637
|
-
function
|
|
2216
|
+
function InputOTP({
|
|
638
2217
|
className,
|
|
2218
|
+
containerClassName,
|
|
639
2219
|
...props
|
|
640
2220
|
}) {
|
|
641
2221
|
return /* @__PURE__ */ jsx(
|
|
642
|
-
|
|
2222
|
+
OTPInput,
|
|
643
2223
|
{
|
|
644
|
-
"data-slot": "
|
|
2224
|
+
"data-slot": "input-otp",
|
|
2225
|
+
containerClassName: cn(
|
|
2226
|
+
"cn-input-otp flex items-center has-disabled:opacity-50",
|
|
2227
|
+
containerClassName
|
|
2228
|
+
),
|
|
2229
|
+
spellCheck: false,
|
|
2230
|
+
className: cn("disabled:cursor-not-allowed", className),
|
|
2231
|
+
...props
|
|
2232
|
+
}
|
|
2233
|
+
);
|
|
2234
|
+
}
|
|
2235
|
+
function InputOTPGroup({ className, ...props }) {
|
|
2236
|
+
return /* @__PURE__ */ jsx(
|
|
2237
|
+
"div",
|
|
2238
|
+
{
|
|
2239
|
+
"data-slot": "input-otp-group",
|
|
645
2240
|
className: cn(
|
|
646
|
-
"
|
|
2241
|
+
"flex items-center rounded-none has-aria-invalid:border-destructive has-aria-invalid:ring-1 has-aria-invalid:ring-destructive/20 dark:has-aria-invalid:ring-destructive/40",
|
|
647
2242
|
className
|
|
648
2243
|
),
|
|
649
2244
|
...props
|
|
650
2245
|
}
|
|
651
2246
|
);
|
|
652
2247
|
}
|
|
653
|
-
function
|
|
2248
|
+
function InputOTPSlot({
|
|
2249
|
+
index,
|
|
654
2250
|
className,
|
|
655
|
-
children,
|
|
656
2251
|
...props
|
|
657
2252
|
}) {
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
Drawer$1.Content,
|
|
662
|
-
{
|
|
663
|
-
"data-slot": "drawer-content",
|
|
664
|
-
className: cn(
|
|
665
|
-
"group/drawer-content fixed z-50 flex h-auto flex-col bg-popover text-xs/relaxed text-popover-foreground data-[vaul-drawer-direction=bottom]:inset-x-0 data-[vaul-drawer-direction=bottom]:bottom-0 data-[vaul-drawer-direction=bottom]:mt-24 data-[vaul-drawer-direction=bottom]:max-h-[80vh] data-[vaul-drawer-direction=bottom]:rounded-none data-[vaul-drawer-direction=bottom]:border-t data-[vaul-drawer-direction=left]:inset-y-0 data-[vaul-drawer-direction=left]:left-0 data-[vaul-drawer-direction=left]:w-3/4 data-[vaul-drawer-direction=left]:rounded-none data-[vaul-drawer-direction=left]:border-r data-[vaul-drawer-direction=right]:inset-y-0 data-[vaul-drawer-direction=right]:right-0 data-[vaul-drawer-direction=right]:w-3/4 data-[vaul-drawer-direction=right]:rounded-none data-[vaul-drawer-direction=right]:border-l data-[vaul-drawer-direction=top]:inset-x-0 data-[vaul-drawer-direction=top]:top-0 data-[vaul-drawer-direction=top]:mb-24 data-[vaul-drawer-direction=top]:max-h-[80vh] data-[vaul-drawer-direction=top]:rounded-none data-[vaul-drawer-direction=top]:border-b data-[vaul-drawer-direction=left]:sm:max-w-sm data-[vaul-drawer-direction=right]:sm:max-w-sm",
|
|
666
|
-
className
|
|
667
|
-
),
|
|
668
|
-
...props,
|
|
669
|
-
children: [
|
|
670
|
-
/* @__PURE__ */ jsx("div", { className: "mx-auto mt-4 hidden h-1 w-[100px] shrink-0 rounded-none bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
|
|
671
|
-
children
|
|
672
|
-
]
|
|
673
|
-
}
|
|
674
|
-
)
|
|
675
|
-
] });
|
|
676
|
-
}
|
|
677
|
-
function DrawerHeader({ className, ...props }) {
|
|
678
|
-
return /* @__PURE__ */ jsx(
|
|
2253
|
+
const inputOTPContext = React8.useContext(OTPInputContext);
|
|
2254
|
+
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
2255
|
+
return /* @__PURE__ */ jsxs(
|
|
679
2256
|
"div",
|
|
680
2257
|
{
|
|
681
|
-
"data-slot": "
|
|
2258
|
+
"data-slot": "input-otp-slot",
|
|
2259
|
+
"data-active": isActive,
|
|
682
2260
|
className: cn(
|
|
683
|
-
"flex
|
|
2261
|
+
"relative flex size-8 items-center justify-center border-y border-r border-input text-xs transition-all outline-none first:rounded-none first:border-l last:rounded-none aria-invalid:border-destructive data-[active=true]:z-10 data-[active=true]:border-ring data-[active=true]:ring-1 data-[active=true]:ring-ring/50 data-[active=true]:aria-invalid:border-destructive data-[active=true]:aria-invalid:ring-destructive/20 dark:bg-input/30 dark:data-[active=true]:aria-invalid:ring-destructive/40",
|
|
684
2262
|
className
|
|
685
2263
|
),
|
|
686
|
-
...props
|
|
2264
|
+
...props,
|
|
2265
|
+
children: [
|
|
2266
|
+
char,
|
|
2267
|
+
hasFakeCaret && /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
|
|
2268
|
+
]
|
|
687
2269
|
}
|
|
688
2270
|
);
|
|
689
2271
|
}
|
|
690
|
-
function
|
|
2272
|
+
function InputOTPSeparator({ ...props }) {
|
|
691
2273
|
return /* @__PURE__ */ jsx(
|
|
692
2274
|
"div",
|
|
693
2275
|
{
|
|
694
|
-
"data-slot": "
|
|
695
|
-
className:
|
|
696
|
-
|
|
2276
|
+
"data-slot": "input-otp-separator",
|
|
2277
|
+
className: "flex items-center [&_svg:not([class*='size-'])]:size-4",
|
|
2278
|
+
role: "separator",
|
|
2279
|
+
...props,
|
|
2280
|
+
children: /* @__PURE__ */ jsx(
|
|
2281
|
+
MinusIcon,
|
|
2282
|
+
{}
|
|
2283
|
+
)
|
|
697
2284
|
}
|
|
698
2285
|
);
|
|
699
2286
|
}
|
|
700
|
-
function
|
|
701
|
-
className,
|
|
702
|
-
...props
|
|
703
|
-
}) {
|
|
2287
|
+
function ItemGroup({ className, ...props }) {
|
|
704
2288
|
return /* @__PURE__ */ jsx(
|
|
705
|
-
|
|
2289
|
+
"div",
|
|
706
2290
|
{
|
|
707
|
-
|
|
2291
|
+
role: "list",
|
|
2292
|
+
"data-slot": "item-group",
|
|
708
2293
|
className: cn(
|
|
709
|
-
"
|
|
2294
|
+
"group/item-group flex w-full flex-col gap-4 has-data-[size=sm]:gap-2.5 has-data-[size=xs]:gap-2",
|
|
710
2295
|
className
|
|
711
2296
|
),
|
|
712
2297
|
...props
|
|
713
2298
|
}
|
|
714
2299
|
);
|
|
715
2300
|
}
|
|
716
|
-
function
|
|
2301
|
+
function ItemSeparator({
|
|
717
2302
|
className,
|
|
718
2303
|
...props
|
|
719
2304
|
}) {
|
|
720
2305
|
return /* @__PURE__ */ jsx(
|
|
721
|
-
|
|
2306
|
+
Separator,
|
|
722
2307
|
{
|
|
723
|
-
"data-slot": "
|
|
724
|
-
|
|
2308
|
+
"data-slot": "item-separator",
|
|
2309
|
+
orientation: "horizontal",
|
|
2310
|
+
className: cn("my-2", className),
|
|
725
2311
|
...props
|
|
726
2312
|
}
|
|
727
2313
|
);
|
|
728
2314
|
}
|
|
729
|
-
|
|
2315
|
+
var itemVariants = cva(
|
|
2316
|
+
"group/item flex w-full flex-wrap items-center rounded-none border text-xs transition-colors duration-100 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [a]:transition-colors [a]:hover:bg-muted",
|
|
2317
|
+
{
|
|
2318
|
+
variants: {
|
|
2319
|
+
variant: {
|
|
2320
|
+
default: "border-transparent",
|
|
2321
|
+
outline: "border-border",
|
|
2322
|
+
muted: "border-transparent bg-muted/50"
|
|
2323
|
+
},
|
|
2324
|
+
size: {
|
|
2325
|
+
default: "gap-2.5 px-3 py-2.5",
|
|
2326
|
+
sm: "gap-2.5 px-3 py-2.5",
|
|
2327
|
+
xs: "gap-2 px-2.5 py-2 in-data-[slot=dropdown-menu-content]:p-0"
|
|
2328
|
+
}
|
|
2329
|
+
},
|
|
2330
|
+
defaultVariants: {
|
|
2331
|
+
variant: "default",
|
|
2332
|
+
size: "default"
|
|
2333
|
+
}
|
|
2334
|
+
}
|
|
2335
|
+
);
|
|
2336
|
+
function Item({
|
|
2337
|
+
className,
|
|
2338
|
+
variant = "default",
|
|
2339
|
+
size = "default",
|
|
2340
|
+
asChild = false,
|
|
2341
|
+
...props
|
|
2342
|
+
}) {
|
|
2343
|
+
const Comp = asChild ? Slot.Root : "div";
|
|
730
2344
|
return /* @__PURE__ */ jsx(
|
|
731
|
-
|
|
2345
|
+
Comp,
|
|
732
2346
|
{
|
|
733
|
-
"data-slot": "
|
|
734
|
-
|
|
2347
|
+
"data-slot": "item",
|
|
2348
|
+
"data-variant": variant,
|
|
2349
|
+
"data-size": size,
|
|
2350
|
+
className: cn(itemVariants({ variant, size, className })),
|
|
735
2351
|
...props
|
|
736
2352
|
}
|
|
737
2353
|
);
|
|
738
2354
|
}
|
|
739
|
-
|
|
2355
|
+
var itemMediaVariants = cva(
|
|
2356
|
+
"flex shrink-0 items-center justify-center gap-2 group-has-data-[slot=item-description]/item:translate-y-0.5 group-has-data-[slot=item-description]/item:self-start [&_svg]:pointer-events-none",
|
|
2357
|
+
{
|
|
2358
|
+
variants: {
|
|
2359
|
+
variant: {
|
|
2360
|
+
default: "bg-transparent",
|
|
2361
|
+
icon: "[&_svg:not([class*='size-'])]:size-4",
|
|
2362
|
+
image: "size-10 overflow-hidden rounded-none group-data-[size=sm]/item:size-8 group-data-[size=xs]/item:size-6 [&_img]:size-full [&_img]:object-cover"
|
|
2363
|
+
}
|
|
2364
|
+
},
|
|
2365
|
+
defaultVariants: {
|
|
2366
|
+
variant: "default"
|
|
2367
|
+
}
|
|
2368
|
+
}
|
|
2369
|
+
);
|
|
2370
|
+
function ItemMedia({
|
|
2371
|
+
className,
|
|
2372
|
+
variant = "default",
|
|
2373
|
+
...props
|
|
2374
|
+
}) {
|
|
740
2375
|
return /* @__PURE__ */ jsx(
|
|
741
|
-
"
|
|
2376
|
+
"div",
|
|
742
2377
|
{
|
|
743
|
-
"data-slot": "
|
|
2378
|
+
"data-slot": "item-media",
|
|
744
2379
|
"data-variant": variant,
|
|
745
|
-
className: cn(
|
|
2380
|
+
className: cn(itemMediaVariants({ variant, className })),
|
|
746
2381
|
...props
|
|
747
2382
|
}
|
|
748
2383
|
);
|
|
749
2384
|
}
|
|
750
|
-
function
|
|
2385
|
+
function ItemContent({ className, ...props }) {
|
|
751
2386
|
return /* @__PURE__ */ jsx(
|
|
752
2387
|
"div",
|
|
753
2388
|
{
|
|
754
|
-
"data-slot": "
|
|
2389
|
+
"data-slot": "item-content",
|
|
755
2390
|
className: cn(
|
|
756
|
-
"
|
|
2391
|
+
"flex flex-1 flex-col gap-1 group-data-[size=xs]/item:gap-0 [&+[data-slot=item-content]]:flex-none",
|
|
757
2392
|
className
|
|
758
2393
|
),
|
|
759
2394
|
...props
|
|
760
2395
|
}
|
|
761
2396
|
);
|
|
762
2397
|
}
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
2398
|
+
function ItemTitle({ className, ...props }) {
|
|
2399
|
+
return /* @__PURE__ */ jsx(
|
|
2400
|
+
"div",
|
|
2401
|
+
{
|
|
2402
|
+
"data-slot": "item-title",
|
|
2403
|
+
className: cn(
|
|
2404
|
+
"line-clamp-1 flex w-fit items-center gap-2 text-xs font-medium underline-offset-4",
|
|
2405
|
+
className
|
|
2406
|
+
),
|
|
2407
|
+
...props
|
|
769
2408
|
}
|
|
770
|
-
|
|
771
|
-
defaultVariants: {
|
|
772
|
-
orientation: "vertical"
|
|
773
|
-
}
|
|
774
|
-
});
|
|
775
|
-
function Field({ className, orientation = "vertical", ...props }) {
|
|
776
|
-
return /* @__PURE__ */ jsx("div", { role: "group", "data-slot": "field", "data-orientation": orientation, className: cn(fieldVariants({ orientation }), className), ...props });
|
|
777
|
-
}
|
|
778
|
-
function FieldContent({ className, ...props }) {
|
|
779
|
-
return /* @__PURE__ */ jsx("div", { "data-slot": "field-content", className: cn("group/field-content flex flex-1 flex-col gap-0.5 leading-snug", className), ...props });
|
|
2409
|
+
);
|
|
780
2410
|
}
|
|
781
|
-
function
|
|
2411
|
+
function ItemDescription({ className, ...props }) {
|
|
782
2412
|
return /* @__PURE__ */ jsx(
|
|
783
|
-
|
|
2413
|
+
"p",
|
|
784
2414
|
{
|
|
785
|
-
"data-slot": "
|
|
2415
|
+
"data-slot": "item-description",
|
|
786
2416
|
className: cn(
|
|
787
|
-
"
|
|
788
|
-
"has-[>[data-slot=field]]:w-full has-[>[data-slot=field]]:flex-col",
|
|
2417
|
+
"line-clamp-2 text-left text-xs/relaxed font-normal text-muted-foreground group-data-[size=xs]/item:text-xs/relaxed [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
789
2418
|
className
|
|
790
2419
|
),
|
|
791
2420
|
...props
|
|
792
2421
|
}
|
|
793
2422
|
);
|
|
794
2423
|
}
|
|
795
|
-
function
|
|
2424
|
+
function ItemActions({ className, ...props }) {
|
|
796
2425
|
return /* @__PURE__ */ jsx(
|
|
797
2426
|
"div",
|
|
798
2427
|
{
|
|
799
|
-
"data-slot": "
|
|
800
|
-
className: cn("flex
|
|
2428
|
+
"data-slot": "item-actions",
|
|
2429
|
+
className: cn("flex items-center gap-2", className),
|
|
801
2430
|
...props
|
|
802
2431
|
}
|
|
803
2432
|
);
|
|
804
2433
|
}
|
|
805
|
-
function
|
|
2434
|
+
function ItemHeader({ className, ...props }) {
|
|
806
2435
|
return /* @__PURE__ */ jsx(
|
|
807
|
-
"
|
|
2436
|
+
"div",
|
|
808
2437
|
{
|
|
809
|
-
"data-slot": "
|
|
2438
|
+
"data-slot": "item-header",
|
|
810
2439
|
className: cn(
|
|
811
|
-
"
|
|
812
|
-
"last:mt-0 nth-last-2:-mt-1",
|
|
813
|
-
"[&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
|
|
2440
|
+
"flex basis-full items-center justify-between gap-2",
|
|
814
2441
|
className
|
|
815
2442
|
),
|
|
816
2443
|
...props
|
|
817
2444
|
}
|
|
818
2445
|
);
|
|
819
2446
|
}
|
|
820
|
-
function
|
|
821
|
-
|
|
822
|
-
className,
|
|
823
|
-
...props
|
|
824
|
-
}) {
|
|
825
|
-
return /* @__PURE__ */ jsxs(
|
|
2447
|
+
function ItemFooter({ className, ...props }) {
|
|
2448
|
+
return /* @__PURE__ */ jsx(
|
|
826
2449
|
"div",
|
|
827
2450
|
{
|
|
828
|
-
"data-slot": "
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
children && /* @__PURE__ */ jsx("span", { className: "relative mx-auto block w-fit bg-background px-2 text-muted-foreground", "data-slot": "field-separator-content", children })
|
|
835
|
-
]
|
|
2451
|
+
"data-slot": "item-footer",
|
|
2452
|
+
className: cn(
|
|
2453
|
+
"flex basis-full items-center justify-between gap-2",
|
|
2454
|
+
className
|
|
2455
|
+
),
|
|
2456
|
+
...props
|
|
836
2457
|
}
|
|
837
2458
|
);
|
|
838
2459
|
}
|
|
839
|
-
function
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
errors,
|
|
843
|
-
...props
|
|
844
|
-
}) {
|
|
845
|
-
const content = useMemo(() => {
|
|
846
|
-
if (children) {
|
|
847
|
-
return children;
|
|
848
|
-
}
|
|
849
|
-
if (!errors?.length) {
|
|
850
|
-
return null;
|
|
851
|
-
}
|
|
852
|
-
const uniqueErrors = [...new Map(errors.map((error) => [error?.message, error])).values()];
|
|
853
|
-
if (uniqueErrors?.length == 1) {
|
|
854
|
-
return uniqueErrors[0]?.message;
|
|
855
|
-
}
|
|
856
|
-
return /* @__PURE__ */ jsx("ul", { className: "ml-4 flex list-disc flex-col gap-1", children: uniqueErrors.map((error, index) => error?.message && /* @__PURE__ */ jsx("li", { children: error.message }, index)) });
|
|
857
|
-
}, [children, errors]);
|
|
858
|
-
if (!content) {
|
|
859
|
-
return null;
|
|
860
|
-
}
|
|
861
|
-
return /* @__PURE__ */ jsx("div", { role: "alert", "data-slot": "field-error", className: cn("text-xs font-normal text-destructive", className), ...props, children: content });
|
|
862
|
-
}
|
|
863
|
-
function HoverCard({ ...props }) {
|
|
864
|
-
return /* @__PURE__ */ jsx(HoverCard$1.Root, { "data-slot": "hover-card", ...props });
|
|
865
|
-
}
|
|
866
|
-
function HoverCardTrigger({ ...props }) {
|
|
867
|
-
return /* @__PURE__ */ jsx(HoverCard$1.Trigger, { "data-slot": "hover-card-trigger", ...props });
|
|
868
|
-
}
|
|
869
|
-
function HoverCardContent({ className, align = "center", sideOffset = 4, ...props }) {
|
|
870
|
-
return /* @__PURE__ */ jsx(HoverCard$1.Portal, { "data-slot": "hover-card-portal", children: /* @__PURE__ */ jsx(
|
|
871
|
-
HoverCard$1.Content,
|
|
2460
|
+
function Kbd({ className, ...props }) {
|
|
2461
|
+
return /* @__PURE__ */ jsx(
|
|
2462
|
+
"kbd",
|
|
872
2463
|
{
|
|
873
|
-
"data-slot": "
|
|
874
|
-
align,
|
|
875
|
-
sideOffset,
|
|
2464
|
+
"data-slot": "kbd",
|
|
876
2465
|
className: cn(
|
|
877
|
-
"
|
|
2466
|
+
"pointer-events-none inline-flex h-5 w-fit min-w-5 items-center justify-center gap-1 rounded-none bg-muted px-1 font-sans text-xs font-medium text-muted-foreground select-none in-data-[slot=tooltip-content]:bg-background/20 in-data-[slot=tooltip-content]:text-background dark:in-data-[slot=tooltip-content]:bg-background/10 [&_svg:not([class*='size-'])]:size-3",
|
|
878
2467
|
className
|
|
879
2468
|
),
|
|
880
2469
|
...props
|
|
881
2470
|
}
|
|
882
|
-
)
|
|
2471
|
+
);
|
|
2472
|
+
}
|
|
2473
|
+
function KbdGroup({ className, ...props }) {
|
|
2474
|
+
return /* @__PURE__ */ jsx(
|
|
2475
|
+
"kbd",
|
|
2476
|
+
{
|
|
2477
|
+
"data-slot": "kbd-group",
|
|
2478
|
+
className: cn("inline-flex items-center gap-1", className),
|
|
2479
|
+
...props
|
|
2480
|
+
}
|
|
2481
|
+
);
|
|
883
2482
|
}
|
|
884
|
-
|
|
2483
|
+
var markerVariants = cva(
|
|
2484
|
+
"group/marker relative flex min-h-4 w-full items-center gap-2 text-left text-xs text-muted-foreground [&_svg:not([class*='size-'])]:size-3.5 [a]:underline [a]:underline-offset-3 [a]:hover:text-foreground",
|
|
2485
|
+
{
|
|
2486
|
+
variants: {
|
|
2487
|
+
variant: {
|
|
2488
|
+
default: "",
|
|
2489
|
+
separator: "before:mr-1 before:h-px before:min-w-0 before:flex-1 before:bg-border after:ml-1 after:h-px after:min-w-0 after:flex-1 after:bg-border",
|
|
2490
|
+
border: "border-b border-border pb-2"
|
|
2491
|
+
}
|
|
2492
|
+
}
|
|
2493
|
+
}
|
|
2494
|
+
);
|
|
2495
|
+
function Marker({
|
|
885
2496
|
className,
|
|
886
|
-
|
|
2497
|
+
variant = "default",
|
|
2498
|
+
asChild = false,
|
|
887
2499
|
...props
|
|
888
2500
|
}) {
|
|
2501
|
+
const Comp = asChild ? Slot.Root : "div";
|
|
889
2502
|
return /* @__PURE__ */ jsx(
|
|
890
|
-
|
|
2503
|
+
Comp,
|
|
891
2504
|
{
|
|
892
|
-
"data-slot": "
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
className: cn("disabled:cursor-not-allowed", className),
|
|
2505
|
+
"data-slot": "marker",
|
|
2506
|
+
"data-variant": variant,
|
|
2507
|
+
className: cn(markerVariants({ variant, className })),
|
|
896
2508
|
...props
|
|
897
2509
|
}
|
|
898
2510
|
);
|
|
899
2511
|
}
|
|
900
|
-
function
|
|
2512
|
+
function MarkerIcon({ className, ...props }) {
|
|
901
2513
|
return /* @__PURE__ */ jsx(
|
|
902
|
-
"
|
|
2514
|
+
"span",
|
|
903
2515
|
{
|
|
904
|
-
"data-slot": "
|
|
2516
|
+
"data-slot": "marker-icon",
|
|
2517
|
+
"aria-hidden": "true",
|
|
905
2518
|
className: cn(
|
|
906
|
-
"
|
|
2519
|
+
"size-3.5 shrink-0 [&_svg:not([class*='size-'])]:size-3.5",
|
|
907
2520
|
className
|
|
908
2521
|
),
|
|
909
2522
|
...props
|
|
910
2523
|
}
|
|
911
2524
|
);
|
|
912
2525
|
}
|
|
913
|
-
function
|
|
914
|
-
|
|
2526
|
+
function MarkerContent({ className, ...props }) {
|
|
2527
|
+
return /* @__PURE__ */ jsx(
|
|
2528
|
+
"span",
|
|
2529
|
+
{
|
|
2530
|
+
"data-slot": "marker-content",
|
|
2531
|
+
className: cn(
|
|
2532
|
+
"min-w-0 wrap-break-word group-data-[variant=separator]/marker:flex-none group-data-[variant=separator]/marker:text-center *:[a]:underline *:[a]:underline-offset-3 *:[a]:hover:text-foreground",
|
|
2533
|
+
className
|
|
2534
|
+
),
|
|
2535
|
+
...props
|
|
2536
|
+
}
|
|
2537
|
+
);
|
|
2538
|
+
}
|
|
2539
|
+
function Menubar({
|
|
915
2540
|
className,
|
|
916
2541
|
...props
|
|
917
2542
|
}) {
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
return /* @__PURE__ */ jsxs(
|
|
921
|
-
"div",
|
|
2543
|
+
return /* @__PURE__ */ jsx(
|
|
2544
|
+
Menubar$1.Root,
|
|
922
2545
|
{
|
|
923
|
-
"data-slot": "
|
|
924
|
-
"data-active": isActive,
|
|
2546
|
+
"data-slot": "menubar",
|
|
925
2547
|
className: cn(
|
|
926
|
-
"
|
|
2548
|
+
"flex h-8 items-center gap-0.5 rounded-none border p-1",
|
|
927
2549
|
className
|
|
928
2550
|
),
|
|
929
|
-
...props
|
|
930
|
-
children: [
|
|
931
|
-
char,
|
|
932
|
-
hasFakeCaret && /* @__PURE__ */ jsx("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) })
|
|
933
|
-
]
|
|
2551
|
+
...props
|
|
934
2552
|
}
|
|
935
2553
|
);
|
|
936
2554
|
}
|
|
937
|
-
function
|
|
938
|
-
|
|
939
|
-
}
|
|
940
|
-
function Menubar({ className, ...props }) {
|
|
941
|
-
return /* @__PURE__ */ jsx(Menubar$1.Root, { "data-slot": "menubar", className: cn("flex h-8 items-center gap-0.5 rounded-none border p-1", className), ...props });
|
|
942
|
-
}
|
|
943
|
-
function MenubarMenu({ ...props }) {
|
|
2555
|
+
function MenubarMenu({
|
|
2556
|
+
...props
|
|
2557
|
+
}) {
|
|
944
2558
|
return /* @__PURE__ */ jsx(Menubar$1.Menu, { "data-slot": "menubar-menu", ...props });
|
|
945
2559
|
}
|
|
946
|
-
function MenubarGroup({
|
|
2560
|
+
function MenubarGroup({
|
|
2561
|
+
...props
|
|
2562
|
+
}) {
|
|
947
2563
|
return /* @__PURE__ */ jsx(Menubar$1.Group, { "data-slot": "menubar-group", ...props });
|
|
948
2564
|
}
|
|
949
|
-
function MenubarPortal({
|
|
2565
|
+
function MenubarPortal({
|
|
2566
|
+
...props
|
|
2567
|
+
}) {
|
|
950
2568
|
return /* @__PURE__ */ jsx(Menubar$1.Portal, { "data-slot": "menubar-portal", ...props });
|
|
951
2569
|
}
|
|
952
|
-
function MenubarRadioGroup({
|
|
2570
|
+
function MenubarRadioGroup({
|
|
2571
|
+
...props
|
|
2572
|
+
}) {
|
|
953
2573
|
return /* @__PURE__ */ jsx(Menubar$1.RadioGroup, { "data-slot": "menubar-radio-group", ...props });
|
|
954
2574
|
}
|
|
955
|
-
function MenubarTrigger({
|
|
2575
|
+
function MenubarTrigger({
|
|
2576
|
+
className,
|
|
2577
|
+
...props
|
|
2578
|
+
}) {
|
|
956
2579
|
return /* @__PURE__ */ jsx(
|
|
957
2580
|
Menubar$1.Trigger,
|
|
958
2581
|
{
|
|
@@ -965,7 +2588,13 @@ function MenubarTrigger({ className, ...props }) {
|
|
|
965
2588
|
}
|
|
966
2589
|
);
|
|
967
2590
|
}
|
|
968
|
-
function MenubarContent({
|
|
2591
|
+
function MenubarContent({
|
|
2592
|
+
className,
|
|
2593
|
+
align = "start",
|
|
2594
|
+
alignOffset = -4,
|
|
2595
|
+
sideOffset = 8,
|
|
2596
|
+
...props
|
|
2597
|
+
}) {
|
|
969
2598
|
return /* @__PURE__ */ jsx(MenubarPortal, { children: /* @__PURE__ */ jsx(
|
|
970
2599
|
Menubar$1.Content,
|
|
971
2600
|
{
|
|
@@ -973,10 +2602,7 @@ function MenubarContent({ className, align = "start", alignOffset = -4, sideOffs
|
|
|
973
2602
|
align,
|
|
974
2603
|
alignOffset,
|
|
975
2604
|
sideOffset,
|
|
976
|
-
className: cn(
|
|
977
|
-
"z-50 min-w-36 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-none bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95",
|
|
978
|
-
className
|
|
979
|
-
),
|
|
2605
|
+
className: cn("z-50 min-w-36 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-none bg-popover text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95", className),
|
|
980
2606
|
...props
|
|
981
2607
|
}
|
|
982
2608
|
) });
|
|
@@ -1020,7 +2646,10 @@ function MenubarCheckboxItem({
|
|
|
1020
2646
|
checked,
|
|
1021
2647
|
...props,
|
|
1022
2648
|
children: [
|
|
1023
|
-
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: /* @__PURE__ */ jsx(Menubar$1.ItemIndicator, { children: /* @__PURE__ */ jsx(
|
|
2649
|
+
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: /* @__PURE__ */ jsx(Menubar$1.ItemIndicator, { children: /* @__PURE__ */ jsx(
|
|
2650
|
+
CheckIcon,
|
|
2651
|
+
{}
|
|
2652
|
+
) }) }),
|
|
1024
2653
|
children
|
|
1025
2654
|
]
|
|
1026
2655
|
}
|
|
@@ -1043,7 +2672,10 @@ function MenubarRadioItem({
|
|
|
1043
2672
|
),
|
|
1044
2673
|
...props,
|
|
1045
2674
|
children: [
|
|
1046
|
-
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: /* @__PURE__ */ jsx(Menubar$1.ItemIndicator, { children: /* @__PURE__ */ jsx(
|
|
2675
|
+
/* @__PURE__ */ jsx("span", { className: "pointer-events-none absolute left-1.5 flex size-4 items-center justify-center [&_svg:not([class*='size-'])]:size-4", children: /* @__PURE__ */ jsx(Menubar$1.ItemIndicator, { children: /* @__PURE__ */ jsx(
|
|
2676
|
+
CheckIcon,
|
|
2677
|
+
{}
|
|
2678
|
+
) }) }),
|
|
1047
2679
|
children
|
|
1048
2680
|
]
|
|
1049
2681
|
}
|
|
@@ -1054,22 +2686,48 @@ function MenubarLabel({
|
|
|
1054
2686
|
inset,
|
|
1055
2687
|
...props
|
|
1056
2688
|
}) {
|
|
1057
|
-
return /* @__PURE__ */ jsx(
|
|
2689
|
+
return /* @__PURE__ */ jsx(
|
|
2690
|
+
Menubar$1.Label,
|
|
2691
|
+
{
|
|
2692
|
+
"data-slot": "menubar-label",
|
|
2693
|
+
"data-inset": inset,
|
|
2694
|
+
className: cn("px-2 py-2 text-xs data-inset:pl-8", className),
|
|
2695
|
+
...props
|
|
2696
|
+
}
|
|
2697
|
+
);
|
|
1058
2698
|
}
|
|
1059
|
-
function MenubarSeparator({
|
|
1060
|
-
|
|
2699
|
+
function MenubarSeparator({
|
|
2700
|
+
className,
|
|
2701
|
+
...props
|
|
2702
|
+
}) {
|
|
2703
|
+
return /* @__PURE__ */ jsx(
|
|
2704
|
+
Menubar$1.Separator,
|
|
2705
|
+
{
|
|
2706
|
+
"data-slot": "menubar-separator",
|
|
2707
|
+
className: cn("-mx-1 my-1 h-px bg-border", className),
|
|
2708
|
+
...props
|
|
2709
|
+
}
|
|
2710
|
+
);
|
|
1061
2711
|
}
|
|
1062
|
-
function MenubarShortcut({
|
|
2712
|
+
function MenubarShortcut({
|
|
2713
|
+
className,
|
|
2714
|
+
...props
|
|
2715
|
+
}) {
|
|
1063
2716
|
return /* @__PURE__ */ jsx(
|
|
1064
2717
|
"span",
|
|
1065
2718
|
{
|
|
1066
2719
|
"data-slot": "menubar-shortcut",
|
|
1067
|
-
className: cn(
|
|
2720
|
+
className: cn(
|
|
2721
|
+
"ml-auto text-xs tracking-widest text-muted-foreground group-focus/menubar-item:text-accent-foreground",
|
|
2722
|
+
className
|
|
2723
|
+
),
|
|
1068
2724
|
...props
|
|
1069
2725
|
}
|
|
1070
2726
|
);
|
|
1071
2727
|
}
|
|
1072
|
-
function MenubarSub({
|
|
2728
|
+
function MenubarSub({
|
|
2729
|
+
...props
|
|
2730
|
+
}) {
|
|
1073
2731
|
return /* @__PURE__ */ jsx(Menubar$1.Sub, { "data-slot": "menubar-sub", ...props });
|
|
1074
2732
|
}
|
|
1075
2733
|
function MenubarSubTrigger({
|
|
@@ -1095,15 +2753,249 @@ function MenubarSubTrigger({
|
|
|
1095
2753
|
}
|
|
1096
2754
|
);
|
|
1097
2755
|
}
|
|
1098
|
-
function MenubarSubContent({
|
|
2756
|
+
function MenubarSubContent({
|
|
2757
|
+
className,
|
|
2758
|
+
...props
|
|
2759
|
+
}) {
|
|
2760
|
+
return /* @__PURE__ */ jsx(
|
|
2761
|
+
Menubar$1.SubContent,
|
|
2762
|
+
{
|
|
2763
|
+
"data-slot": "menubar-sub-content",
|
|
2764
|
+
className: cn("z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-none bg-popover text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95", className),
|
|
2765
|
+
...props
|
|
2766
|
+
}
|
|
2767
|
+
);
|
|
2768
|
+
}
|
|
2769
|
+
function MessageGroup({ className, ...props }) {
|
|
2770
|
+
return /* @__PURE__ */ jsx(
|
|
2771
|
+
"div",
|
|
2772
|
+
{
|
|
2773
|
+
"data-slot": "message-group",
|
|
2774
|
+
className: cn("flex min-w-0 flex-col gap-1.5", className),
|
|
2775
|
+
...props
|
|
2776
|
+
}
|
|
2777
|
+
);
|
|
2778
|
+
}
|
|
2779
|
+
function Message({
|
|
2780
|
+
className,
|
|
2781
|
+
align = "start",
|
|
2782
|
+
...props
|
|
2783
|
+
}) {
|
|
2784
|
+
return /* @__PURE__ */ jsx(
|
|
2785
|
+
"div",
|
|
2786
|
+
{
|
|
2787
|
+
"data-slot": "message",
|
|
2788
|
+
"data-align": align,
|
|
2789
|
+
className: cn(
|
|
2790
|
+
"group/message relative flex w-full min-w-0 gap-1.5 text-xs data-[align=end]:flex-row-reverse",
|
|
2791
|
+
className
|
|
2792
|
+
),
|
|
2793
|
+
...props
|
|
2794
|
+
}
|
|
2795
|
+
);
|
|
2796
|
+
}
|
|
2797
|
+
function MessageAvatar({ className, ...props }) {
|
|
2798
|
+
return /* @__PURE__ */ jsx(
|
|
2799
|
+
"div",
|
|
2800
|
+
{
|
|
2801
|
+
"data-slot": "message-avatar",
|
|
2802
|
+
className: cn(
|
|
2803
|
+
"flex w-fit min-w-8 shrink-0 items-center justify-center self-end overflow-hidden rounded-full bg-muted group-has-data-[slot=message-footer]/message:-translate-y-8",
|
|
2804
|
+
className
|
|
2805
|
+
),
|
|
2806
|
+
...props
|
|
2807
|
+
}
|
|
2808
|
+
);
|
|
2809
|
+
}
|
|
2810
|
+
function MessageContent({ className, ...props }) {
|
|
2811
|
+
return /* @__PURE__ */ jsx(
|
|
2812
|
+
"div",
|
|
2813
|
+
{
|
|
2814
|
+
"data-slot": "message-content",
|
|
2815
|
+
className: cn(
|
|
2816
|
+
"flex w-full min-w-0 flex-col gap-2 wrap-break-word group-data-[align=end]/message:*:data-slot:self-end",
|
|
2817
|
+
className
|
|
2818
|
+
),
|
|
2819
|
+
...props
|
|
2820
|
+
}
|
|
2821
|
+
);
|
|
2822
|
+
}
|
|
2823
|
+
function MessageHeader({ className, ...props }) {
|
|
2824
|
+
return /* @__PURE__ */ jsx(
|
|
2825
|
+
"div",
|
|
2826
|
+
{
|
|
2827
|
+
"data-slot": "message-header",
|
|
2828
|
+
className: cn(
|
|
2829
|
+
"flex max-w-full min-w-0 items-center px-2.5 text-xs font-medium text-muted-foreground group-has-data-[variant=ghost]/message:px-0",
|
|
2830
|
+
className
|
|
2831
|
+
),
|
|
2832
|
+
...props
|
|
2833
|
+
}
|
|
2834
|
+
);
|
|
2835
|
+
}
|
|
2836
|
+
function MessageFooter({ className, ...props }) {
|
|
2837
|
+
return /* @__PURE__ */ jsx(
|
|
2838
|
+
"div",
|
|
2839
|
+
{
|
|
2840
|
+
"data-slot": "message-footer",
|
|
2841
|
+
className: cn(
|
|
2842
|
+
"flex max-w-full min-w-0 items-center px-2.5 text-xs font-medium text-muted-foreground group-has-data-[variant=ghost]/message:px-0 group-data-[align=end]/message:justify-end",
|
|
2843
|
+
className
|
|
2844
|
+
),
|
|
2845
|
+
...props
|
|
2846
|
+
}
|
|
2847
|
+
);
|
|
2848
|
+
}
|
|
2849
|
+
function MessageScrollerProvider(props) {
|
|
2850
|
+
return /* @__PURE__ */ jsx(MessageScroller$1.Provider, { ...props });
|
|
2851
|
+
}
|
|
2852
|
+
function MessageScroller({
|
|
2853
|
+
className,
|
|
2854
|
+
...props
|
|
2855
|
+
}) {
|
|
2856
|
+
return /* @__PURE__ */ jsx(
|
|
2857
|
+
MessageScroller$1.Root,
|
|
2858
|
+
{
|
|
2859
|
+
"data-slot": "message-scroller",
|
|
2860
|
+
className: cn(
|
|
2861
|
+
"group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden",
|
|
2862
|
+
className
|
|
2863
|
+
),
|
|
2864
|
+
...props
|
|
2865
|
+
}
|
|
2866
|
+
);
|
|
2867
|
+
}
|
|
2868
|
+
function MessageScrollerViewport({
|
|
2869
|
+
className,
|
|
2870
|
+
...props
|
|
2871
|
+
}) {
|
|
2872
|
+
return /* @__PURE__ */ jsx(
|
|
2873
|
+
MessageScroller$1.Viewport,
|
|
2874
|
+
{
|
|
2875
|
+
"data-slot": "message-scroller-viewport",
|
|
2876
|
+
className: cn(
|
|
2877
|
+
"size-full min-h-0 min-w-0 scroll-fade-b scrollbar-thin scrollbar-gutter-stable overflow-y-auto overscroll-contain contain-content data-autoscrolling:scrollbar-thumb-transparent data-autoscrolling:scrollbar-track-transparent",
|
|
2878
|
+
className
|
|
2879
|
+
),
|
|
2880
|
+
...props
|
|
2881
|
+
}
|
|
2882
|
+
);
|
|
2883
|
+
}
|
|
2884
|
+
function MessageScrollerContent({
|
|
2885
|
+
className,
|
|
2886
|
+
...props
|
|
2887
|
+
}) {
|
|
2888
|
+
return /* @__PURE__ */ jsx(
|
|
2889
|
+
MessageScroller$1.Content,
|
|
2890
|
+
{
|
|
2891
|
+
"data-slot": "message-scroller-content",
|
|
2892
|
+
className: cn("flex h-max min-h-full flex-col gap-6", className),
|
|
2893
|
+
...props
|
|
2894
|
+
}
|
|
2895
|
+
);
|
|
2896
|
+
}
|
|
2897
|
+
function MessageScrollerItem({
|
|
2898
|
+
className,
|
|
2899
|
+
scrollAnchor = false,
|
|
2900
|
+
...props
|
|
2901
|
+
}) {
|
|
2902
|
+
return /* @__PURE__ */ jsx(
|
|
2903
|
+
MessageScroller$1.Item,
|
|
2904
|
+
{
|
|
2905
|
+
"data-slot": "message-scroller-item",
|
|
2906
|
+
scrollAnchor,
|
|
2907
|
+
className: cn(
|
|
2908
|
+
"min-w-0 shrink-0 [contain-intrinsic-size:auto_10rem] [content-visibility:auto]",
|
|
2909
|
+
className
|
|
2910
|
+
),
|
|
2911
|
+
...props
|
|
2912
|
+
}
|
|
2913
|
+
);
|
|
2914
|
+
}
|
|
2915
|
+
function MessageScrollerButton({
|
|
2916
|
+
direction = "end",
|
|
2917
|
+
className,
|
|
2918
|
+
children,
|
|
2919
|
+
render,
|
|
2920
|
+
variant = "secondary",
|
|
2921
|
+
size = "icon-sm",
|
|
2922
|
+
...props
|
|
2923
|
+
}) {
|
|
2924
|
+
return /* @__PURE__ */ jsx(
|
|
2925
|
+
MessageScroller$1.Button,
|
|
2926
|
+
{
|
|
2927
|
+
"data-slot": "message-scroller-button",
|
|
2928
|
+
"data-direction": direction,
|
|
2929
|
+
"data-variant": variant,
|
|
2930
|
+
"data-size": size,
|
|
2931
|
+
direction,
|
|
2932
|
+
className: cn(
|
|
2933
|
+
"absolute inset-s-1/2 -translate-x-1/2 border-border bg-background text-foreground transition-[translate,scale,opacity] duration-200 hover:bg-muted hover:text-foreground data-[active=false]:pointer-events-none data-[active=false]:scale-95 data-[active=false]:opacity-0 data-[active=false]:duration-400 data-[active=false]:ease-[cubic-bezier(0.7,0,0.84,0)] data-[active=true]:translate-y-0 data-[active=true]:scale-100 data-[active=true]:opacity-100 data-[active=true]:ease-[cubic-bezier(0.23,1,0.32,1)] data-[direction=end]:bottom-4 data-[direction=end]:data-[active=false]:translate-y-full data-[direction=start]:top-4 data-[direction=start]:data-[active=false]:-translate-y-full rtl:translate-x-1/2 data-[direction=start]:[&_svg]:rotate-180",
|
|
2934
|
+
className
|
|
2935
|
+
),
|
|
2936
|
+
render: render ?? /* @__PURE__ */ jsx(Button, { variant, size }),
|
|
2937
|
+
...props,
|
|
2938
|
+
children: children ?? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2939
|
+
/* @__PURE__ */ jsx(
|
|
2940
|
+
ArrowDownIcon,
|
|
2941
|
+
{}
|
|
2942
|
+
),
|
|
2943
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: direction === "end" ? "Scroll to end" : "Scroll to start" })
|
|
2944
|
+
] })
|
|
2945
|
+
}
|
|
2946
|
+
);
|
|
2947
|
+
}
|
|
2948
|
+
function NativeSelect({
|
|
2949
|
+
className,
|
|
2950
|
+
size = "default",
|
|
2951
|
+
...props
|
|
2952
|
+
}) {
|
|
2953
|
+
return /* @__PURE__ */ jsxs(
|
|
2954
|
+
"div",
|
|
2955
|
+
{
|
|
2956
|
+
className: cn(
|
|
2957
|
+
"group/native-select relative w-fit has-[select:disabled]:opacity-50",
|
|
2958
|
+
className
|
|
2959
|
+
),
|
|
2960
|
+
"data-slot": "native-select-wrapper",
|
|
2961
|
+
"data-size": size,
|
|
2962
|
+
children: [
|
|
2963
|
+
/* @__PURE__ */ jsx(
|
|
2964
|
+
"select",
|
|
2965
|
+
{
|
|
2966
|
+
"data-slot": "native-select",
|
|
2967
|
+
"data-size": size,
|
|
2968
|
+
className: "h-8 w-full min-w-0 appearance-none rounded-none border border-input bg-transparent py-1 pr-8 pl-2.5 text-xs transition-colors outline-none select-none selection:bg-primary selection:text-primary-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-1 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed aria-invalid:border-destructive aria-invalid:ring-1 aria-invalid:ring-destructive/20 data-[size=sm]:h-7 data-[size=sm]:rounded-none data-[size=sm]:py-0.5 dark:bg-input/30 dark:hover:bg-input/50 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40",
|
|
2969
|
+
...props
|
|
2970
|
+
}
|
|
2971
|
+
),
|
|
2972
|
+
/* @__PURE__ */ jsx(ChevronDownIcon, { className: "pointer-events-none absolute top-1/2 right-2.5 size-4 -translate-y-1/2 text-muted-foreground select-none", "aria-hidden": "true", "data-slot": "native-select-icon" })
|
|
2973
|
+
]
|
|
2974
|
+
}
|
|
2975
|
+
);
|
|
2976
|
+
}
|
|
2977
|
+
function NativeSelectOption({
|
|
2978
|
+
className,
|
|
2979
|
+
...props
|
|
2980
|
+
}) {
|
|
2981
|
+
return /* @__PURE__ */ jsx(
|
|
2982
|
+
"option",
|
|
2983
|
+
{
|
|
2984
|
+
"data-slot": "native-select-option",
|
|
2985
|
+
className: cn("bg-[Canvas] text-[CanvasText]", className),
|
|
2986
|
+
...props
|
|
2987
|
+
}
|
|
2988
|
+
);
|
|
2989
|
+
}
|
|
2990
|
+
function NativeSelectOptGroup({
|
|
2991
|
+
className,
|
|
2992
|
+
...props
|
|
2993
|
+
}) {
|
|
1099
2994
|
return /* @__PURE__ */ jsx(
|
|
1100
|
-
|
|
2995
|
+
"optgroup",
|
|
1101
2996
|
{
|
|
1102
|
-
"data-slot": "
|
|
1103
|
-
className: cn(
|
|
1104
|
-
"z-50 min-w-32 origin-(--radix-menubar-content-transform-origin) overflow-hidden rounded-none bg-popover text-popover-foreground shadow-lg ring-1 ring-foreground/10 duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95",
|
|
1105
|
-
className
|
|
1106
|
-
),
|
|
2997
|
+
"data-slot": "native-select-optgroup",
|
|
2998
|
+
className: cn("bg-[Canvas] text-[CanvasText]", className),
|
|
1107
2999
|
...props
|
|
1108
3000
|
}
|
|
1109
3001
|
);
|
|
@@ -1119,7 +3011,10 @@ function NavigationMenu({
|
|
|
1119
3011
|
{
|
|
1120
3012
|
"data-slot": "navigation-menu",
|
|
1121
3013
|
"data-viewport": viewport,
|
|
1122
|
-
className: cn(
|
|
3014
|
+
className: cn(
|
|
3015
|
+
"group/navigation-menu relative flex max-w-max flex-1 items-center justify-center",
|
|
3016
|
+
className
|
|
3017
|
+
),
|
|
1123
3018
|
...props,
|
|
1124
3019
|
children: [
|
|
1125
3020
|
children,
|
|
@@ -1128,36 +3023,61 @@ function NavigationMenu({
|
|
|
1128
3023
|
}
|
|
1129
3024
|
);
|
|
1130
3025
|
}
|
|
1131
|
-
function NavigationMenuList({
|
|
3026
|
+
function NavigationMenuList({
|
|
3027
|
+
className,
|
|
3028
|
+
...props
|
|
3029
|
+
}) {
|
|
1132
3030
|
return /* @__PURE__ */ jsx(
|
|
1133
3031
|
NavigationMenu$1.List,
|
|
1134
3032
|
{
|
|
1135
3033
|
"data-slot": "navigation-menu-list",
|
|
1136
|
-
className: cn(
|
|
3034
|
+
className: cn(
|
|
3035
|
+
"group flex flex-1 list-none items-center justify-center gap-0",
|
|
3036
|
+
className
|
|
3037
|
+
),
|
|
1137
3038
|
...props
|
|
1138
3039
|
}
|
|
1139
3040
|
);
|
|
1140
3041
|
}
|
|
1141
|
-
function NavigationMenuItem({
|
|
1142
|
-
|
|
3042
|
+
function NavigationMenuItem({
|
|
3043
|
+
className,
|
|
3044
|
+
...props
|
|
3045
|
+
}) {
|
|
3046
|
+
return /* @__PURE__ */ jsx(
|
|
3047
|
+
NavigationMenu$1.Item,
|
|
3048
|
+
{
|
|
3049
|
+
"data-slot": "navigation-menu-item",
|
|
3050
|
+
className: cn("relative", className),
|
|
3051
|
+
...props
|
|
3052
|
+
}
|
|
3053
|
+
);
|
|
1143
3054
|
}
|
|
1144
3055
|
var navigationMenuTriggerStyle = cva(
|
|
1145
3056
|
"group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center rounded-none px-2.5 py-1.5 text-xs font-medium transition-all outline-none hover:bg-muted focus:bg-muted focus-visible:ring-1 focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-popup-open:bg-muted/50 data-popup-open:hover:bg-muted data-open:bg-muted/50 data-open:hover:bg-muted data-open:focus:bg-muted"
|
|
1146
3057
|
);
|
|
1147
|
-
function NavigationMenuTrigger({
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
3058
|
+
function NavigationMenuTrigger({
|
|
3059
|
+
className,
|
|
3060
|
+
children,
|
|
3061
|
+
...props
|
|
3062
|
+
}) {
|
|
3063
|
+
return /* @__PURE__ */ jsxs(
|
|
3064
|
+
NavigationMenu$1.Trigger,
|
|
3065
|
+
{
|
|
3066
|
+
"data-slot": "navigation-menu-trigger",
|
|
3067
|
+
className: cn(navigationMenuTriggerStyle(), "group", className),
|
|
3068
|
+
...props,
|
|
3069
|
+
children: [
|
|
3070
|
+
children,
|
|
3071
|
+
" ",
|
|
3072
|
+
/* @__PURE__ */ jsx(ChevronDownIcon, { className: "relative top-px ml-1 size-3 transition duration-300 group-data-popup-open/navigation-menu-trigger:rotate-180 group-data-open/navigation-menu-trigger:rotate-180", "aria-hidden": "true" })
|
|
3073
|
+
]
|
|
3074
|
+
}
|
|
3075
|
+
);
|
|
1159
3076
|
}
|
|
1160
|
-
function NavigationMenuContent({
|
|
3077
|
+
function NavigationMenuContent({
|
|
3078
|
+
className,
|
|
3079
|
+
...props
|
|
3080
|
+
}) {
|
|
1161
3081
|
return /* @__PURE__ */ jsx(
|
|
1162
3082
|
NavigationMenu$1.Content,
|
|
1163
3083
|
{
|
|
@@ -1170,20 +3090,34 @@ function NavigationMenuContent({ className, ...props }) {
|
|
|
1170
3090
|
}
|
|
1171
3091
|
);
|
|
1172
3092
|
}
|
|
1173
|
-
function NavigationMenuViewport({
|
|
1174
|
-
|
|
1175
|
-
|
|
3093
|
+
function NavigationMenuViewport({
|
|
3094
|
+
className,
|
|
3095
|
+
...props
|
|
3096
|
+
}) {
|
|
3097
|
+
return /* @__PURE__ */ jsx(
|
|
3098
|
+
"div",
|
|
1176
3099
|
{
|
|
1177
|
-
"data-slot": "navigation-menu-viewport",
|
|
1178
3100
|
className: cn(
|
|
1179
|
-
"
|
|
1180
|
-
className
|
|
3101
|
+
"absolute top-full left-0 isolate z-50 flex justify-center"
|
|
1181
3102
|
),
|
|
1182
|
-
|
|
3103
|
+
children: /* @__PURE__ */ jsx(
|
|
3104
|
+
NavigationMenu$1.Viewport,
|
|
3105
|
+
{
|
|
3106
|
+
"data-slot": "navigation-menu-viewport",
|
|
3107
|
+
className: cn(
|
|
3108
|
+
"origin-top-center relative mt-1.5 h-(--radix-navigation-menu-viewport-height) w-full overflow-hidden rounded-none bg-popover text-popover-foreground shadow ring-1 ring-foreground/10 duration-100 md:w-(--radix-navigation-menu-viewport-width) data-open:animate-in data-open:zoom-in-90 data-closed:animate-out data-closed:zoom-out-90",
|
|
3109
|
+
className
|
|
3110
|
+
),
|
|
3111
|
+
...props
|
|
3112
|
+
}
|
|
3113
|
+
)
|
|
1183
3114
|
}
|
|
1184
|
-
)
|
|
3115
|
+
);
|
|
1185
3116
|
}
|
|
1186
|
-
function NavigationMenuLink({
|
|
3117
|
+
function NavigationMenuLink({
|
|
3118
|
+
className,
|
|
3119
|
+
...props
|
|
3120
|
+
}) {
|
|
1187
3121
|
return /* @__PURE__ */ jsx(
|
|
1188
3122
|
NavigationMenu$1.Link,
|
|
1189
3123
|
{
|
|
@@ -1196,7 +3130,10 @@ function NavigationMenuLink({ className, ...props }) {
|
|
|
1196
3130
|
}
|
|
1197
3131
|
);
|
|
1198
3132
|
}
|
|
1199
|
-
function NavigationMenuIndicator({
|
|
3133
|
+
function NavigationMenuIndicator({
|
|
3134
|
+
className,
|
|
3135
|
+
...props
|
|
3136
|
+
}) {
|
|
1200
3137
|
return /* @__PURE__ */ jsx(
|
|
1201
3138
|
NavigationMenu$1.Indicator,
|
|
1202
3139
|
{
|
|
@@ -1211,39 +3148,115 @@ function NavigationMenuIndicator({ className, ...props }) {
|
|
|
1211
3148
|
);
|
|
1212
3149
|
}
|
|
1213
3150
|
function Pagination({ className, ...props }) {
|
|
1214
|
-
return /* @__PURE__ */ jsx(
|
|
3151
|
+
return /* @__PURE__ */ jsx(
|
|
3152
|
+
"nav",
|
|
3153
|
+
{
|
|
3154
|
+
role: "navigation",
|
|
3155
|
+
"aria-label": "pagination",
|
|
3156
|
+
"data-slot": "pagination",
|
|
3157
|
+
className: cn("mx-auto flex w-full justify-center", className),
|
|
3158
|
+
...props
|
|
3159
|
+
}
|
|
3160
|
+
);
|
|
1215
3161
|
}
|
|
1216
|
-
function PaginationContent({
|
|
1217
|
-
|
|
3162
|
+
function PaginationContent({
|
|
3163
|
+
className,
|
|
3164
|
+
...props
|
|
3165
|
+
}) {
|
|
3166
|
+
return /* @__PURE__ */ jsx(
|
|
3167
|
+
"ul",
|
|
3168
|
+
{
|
|
3169
|
+
"data-slot": "pagination-content",
|
|
3170
|
+
className: cn("flex items-center gap-0.5", className),
|
|
3171
|
+
...props
|
|
3172
|
+
}
|
|
3173
|
+
);
|
|
1218
3174
|
}
|
|
1219
3175
|
function PaginationItem({ ...props }) {
|
|
1220
3176
|
return /* @__PURE__ */ jsx("li", { "data-slot": "pagination-item", ...props });
|
|
1221
3177
|
}
|
|
1222
|
-
function PaginationLink({
|
|
1223
|
-
|
|
3178
|
+
function PaginationLink({
|
|
3179
|
+
className,
|
|
3180
|
+
isActive,
|
|
3181
|
+
size = "icon",
|
|
3182
|
+
...props
|
|
3183
|
+
}) {
|
|
3184
|
+
return /* @__PURE__ */ jsx(
|
|
3185
|
+
Button,
|
|
3186
|
+
{
|
|
3187
|
+
asChild: true,
|
|
3188
|
+
variant: isActive ? "outline" : "ghost",
|
|
3189
|
+
size,
|
|
3190
|
+
className: cn(className),
|
|
3191
|
+
children: /* @__PURE__ */ jsx(
|
|
3192
|
+
"a",
|
|
3193
|
+
{
|
|
3194
|
+
"aria-current": isActive ? "page" : void 0,
|
|
3195
|
+
"data-slot": "pagination-link",
|
|
3196
|
+
"data-active": isActive,
|
|
3197
|
+
...props
|
|
3198
|
+
}
|
|
3199
|
+
)
|
|
3200
|
+
}
|
|
3201
|
+
);
|
|
1224
3202
|
}
|
|
1225
|
-
function PaginationPrevious({
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
3203
|
+
function PaginationPrevious({
|
|
3204
|
+
className,
|
|
3205
|
+
text = "Previous",
|
|
3206
|
+
...props
|
|
3207
|
+
}) {
|
|
3208
|
+
return /* @__PURE__ */ jsxs(
|
|
3209
|
+
PaginationLink,
|
|
3210
|
+
{
|
|
3211
|
+
"aria-label": "Go to previous page",
|
|
3212
|
+
size: "default",
|
|
3213
|
+
className: cn("pl-1.5!", className),
|
|
3214
|
+
...props,
|
|
3215
|
+
children: [
|
|
3216
|
+
/* @__PURE__ */ jsx(ChevronLeftIcon, { "data-icon": "inline-start" }),
|
|
3217
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text })
|
|
3218
|
+
]
|
|
3219
|
+
}
|
|
3220
|
+
);
|
|
1230
3221
|
}
|
|
1231
|
-
function PaginationNext({
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
3222
|
+
function PaginationNext({
|
|
3223
|
+
className,
|
|
3224
|
+
text = "Next",
|
|
3225
|
+
...props
|
|
3226
|
+
}) {
|
|
3227
|
+
return /* @__PURE__ */ jsxs(
|
|
3228
|
+
PaginationLink,
|
|
3229
|
+
{
|
|
3230
|
+
"aria-label": "Go to next page",
|
|
3231
|
+
size: "default",
|
|
3232
|
+
className: cn("pr-1.5!", className),
|
|
3233
|
+
...props,
|
|
3234
|
+
children: [
|
|
3235
|
+
/* @__PURE__ */ jsx("span", { className: "hidden sm:block", children: text }),
|
|
3236
|
+
/* @__PURE__ */ jsx(ChevronRightIcon, { "data-icon": "inline-end" })
|
|
3237
|
+
]
|
|
3238
|
+
}
|
|
3239
|
+
);
|
|
1236
3240
|
}
|
|
1237
|
-
function PaginationEllipsis({
|
|
3241
|
+
function PaginationEllipsis({
|
|
3242
|
+
className,
|
|
3243
|
+
...props
|
|
3244
|
+
}) {
|
|
1238
3245
|
return /* @__PURE__ */ jsxs(
|
|
1239
3246
|
"span",
|
|
1240
3247
|
{
|
|
1241
3248
|
"aria-hidden": true,
|
|
1242
3249
|
"data-slot": "pagination-ellipsis",
|
|
1243
|
-
className: cn(
|
|
3250
|
+
className: cn(
|
|
3251
|
+
"flex size-8 items-center justify-center [&_svg:not([class*='size-'])]:size-4",
|
|
3252
|
+
className
|
|
3253
|
+
),
|
|
1244
3254
|
...props,
|
|
1245
3255
|
children: [
|
|
1246
|
-
/* @__PURE__ */ jsx(
|
|
3256
|
+
/* @__PURE__ */ jsx(
|
|
3257
|
+
MoreHorizontalIcon,
|
|
3258
|
+
{}
|
|
3259
|
+
),
|
|
1247
3260
|
/* @__PURE__ */ jsx("span", { className: "sr-only", children: "More pages" })
|
|
1248
3261
|
]
|
|
1249
3262
|
}
|
|
@@ -1317,12 +3330,19 @@ function PopoverDescription({
|
|
|
1317
3330
|
}
|
|
1318
3331
|
);
|
|
1319
3332
|
}
|
|
1320
|
-
function Progress({
|
|
3333
|
+
function Progress({
|
|
3334
|
+
className,
|
|
3335
|
+
value,
|
|
3336
|
+
...props
|
|
3337
|
+
}) {
|
|
1321
3338
|
return /* @__PURE__ */ jsx(
|
|
1322
3339
|
Progress$1.Root,
|
|
1323
3340
|
{
|
|
1324
3341
|
"data-slot": "progress",
|
|
1325
|
-
className: cn(
|
|
3342
|
+
className: cn(
|
|
3343
|
+
"relative flex h-1 w-full items-center overflow-x-hidden rounded-none bg-muted",
|
|
3344
|
+
className
|
|
3345
|
+
),
|
|
1326
3346
|
...props,
|
|
1327
3347
|
children: /* @__PURE__ */ jsx(
|
|
1328
3348
|
Progress$1.Indicator,
|
|
@@ -1335,10 +3355,23 @@ function Progress({ className, value, ...props }) {
|
|
|
1335
3355
|
}
|
|
1336
3356
|
);
|
|
1337
3357
|
}
|
|
1338
|
-
function RadioGroup({
|
|
1339
|
-
|
|
3358
|
+
function RadioGroup({
|
|
3359
|
+
className,
|
|
3360
|
+
...props
|
|
3361
|
+
}) {
|
|
3362
|
+
return /* @__PURE__ */ jsx(
|
|
3363
|
+
RadioGroup$1.Root,
|
|
3364
|
+
{
|
|
3365
|
+
"data-slot": "radio-group",
|
|
3366
|
+
className: cn("grid w-full gap-2", className),
|
|
3367
|
+
...props
|
|
3368
|
+
}
|
|
3369
|
+
);
|
|
1340
3370
|
}
|
|
1341
|
-
function RadioGroupItem({
|
|
3371
|
+
function RadioGroupItem({
|
|
3372
|
+
className,
|
|
3373
|
+
...props
|
|
3374
|
+
}) {
|
|
1342
3375
|
return /* @__PURE__ */ jsx(
|
|
1343
3376
|
RadioGroup$1.Item,
|
|
1344
3377
|
{
|
|
@@ -1348,16 +3381,29 @@ function RadioGroupItem({ className, ...props }) {
|
|
|
1348
3381
|
className
|
|
1349
3382
|
),
|
|
1350
3383
|
...props,
|
|
1351
|
-
children: /* @__PURE__ */ jsx(
|
|
3384
|
+
children: /* @__PURE__ */ jsx(
|
|
3385
|
+
RadioGroup$1.Indicator,
|
|
3386
|
+
{
|
|
3387
|
+
"data-slot": "radio-group-indicator",
|
|
3388
|
+
className: "flex size-4 items-center justify-center",
|
|
3389
|
+
children: /* @__PURE__ */ jsx("span", { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary-foreground" })
|
|
3390
|
+
}
|
|
3391
|
+
)
|
|
1352
3392
|
}
|
|
1353
3393
|
);
|
|
1354
3394
|
}
|
|
1355
|
-
function ResizablePanelGroup({
|
|
3395
|
+
function ResizablePanelGroup({
|
|
3396
|
+
className,
|
|
3397
|
+
...props
|
|
3398
|
+
}) {
|
|
1356
3399
|
return /* @__PURE__ */ jsx(
|
|
1357
|
-
ResizablePrimitive.
|
|
3400
|
+
ResizablePrimitive.Group,
|
|
1358
3401
|
{
|
|
1359
3402
|
"data-slot": "resizable-panel-group",
|
|
1360
|
-
className: cn(
|
|
3403
|
+
className: cn(
|
|
3404
|
+
"flex h-full w-full aria-[orientation=vertical]:flex-col",
|
|
3405
|
+
className
|
|
3406
|
+
),
|
|
1361
3407
|
...props
|
|
1362
3408
|
}
|
|
1363
3409
|
);
|
|
@@ -1371,7 +3417,7 @@ function ResizableHandle({
|
|
|
1371
3417
|
...props
|
|
1372
3418
|
}) {
|
|
1373
3419
|
return /* @__PURE__ */ jsx(
|
|
1374
|
-
ResizablePrimitive.
|
|
3420
|
+
ResizablePrimitive.Separator,
|
|
1375
3421
|
{
|
|
1376
3422
|
"data-slot": "resizable-handle",
|
|
1377
3423
|
className: cn(
|
|
@@ -1558,7 +3604,7 @@ function Slider({
|
|
|
1558
3604
|
max = 100,
|
|
1559
3605
|
...props
|
|
1560
3606
|
}) {
|
|
1561
|
-
const _values =
|
|
3607
|
+
const _values = React8.useMemo(
|
|
1562
3608
|
() => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
|
|
1563
3609
|
[value, defaultValue, min, max]
|
|
1564
3610
|
);
|
|
@@ -1602,37 +3648,8 @@ function Slider({
|
|
|
1602
3648
|
}
|
|
1603
3649
|
);
|
|
1604
3650
|
}
|
|
1605
|
-
var Toaster = ({ ...props }) => {
|
|
1606
|
-
const { theme = "system" } = useTheme();
|
|
1607
|
-
return /* @__PURE__ */ jsx(
|
|
1608
|
-
Toaster$1,
|
|
1609
|
-
{
|
|
1610
|
-
theme,
|
|
1611
|
-
className: "toaster group",
|
|
1612
|
-
icons: {
|
|
1613
|
-
success: /* @__PURE__ */ jsx(CircleCheckIcon, { className: "size-4" }),
|
|
1614
|
-
info: /* @__PURE__ */ jsx(InfoIcon, { className: "size-4" }),
|
|
1615
|
-
warning: /* @__PURE__ */ jsx(TriangleAlertIcon, { className: "size-4" }),
|
|
1616
|
-
error: /* @__PURE__ */ jsx(OctagonXIcon, { className: "size-4" }),
|
|
1617
|
-
loading: /* @__PURE__ */ jsx(Loader2Icon, { className: "size-4 animate-spin" })
|
|
1618
|
-
},
|
|
1619
|
-
style: {
|
|
1620
|
-
"--normal-bg": "var(--popover)",
|
|
1621
|
-
"--normal-text": "var(--popover-foreground)",
|
|
1622
|
-
"--normal-border": "var(--border)",
|
|
1623
|
-
"--border-radius": "var(--radius)"
|
|
1624
|
-
},
|
|
1625
|
-
toastOptions: {
|
|
1626
|
-
classNames: {
|
|
1627
|
-
toast: "cn-toast"
|
|
1628
|
-
}
|
|
1629
|
-
},
|
|
1630
|
-
...props
|
|
1631
|
-
}
|
|
1632
|
-
);
|
|
1633
|
-
};
|
|
1634
3651
|
function Spinner({ className, ...props }) {
|
|
1635
|
-
return /* @__PURE__ */ jsx(Loader2Icon, { role: "status", "aria-label": "Loading", className: cn("size-4 animate-spin", className), ...props });
|
|
3652
|
+
return /* @__PURE__ */ jsx(Loader2Icon, { "data-slot": "spinner", role: "status", "aria-label": "Loading", className: cn("size-4 animate-spin", className), ...props });
|
|
1636
3653
|
}
|
|
1637
3654
|
function Switch({
|
|
1638
3655
|
className,
|
|
@@ -1738,6 +3755,178 @@ function TabsContent({
|
|
|
1738
3755
|
}
|
|
1739
3756
|
);
|
|
1740
3757
|
}
|
|
3758
|
+
var toast = Toast$1.createToastManager();
|
|
3759
|
+
function ToastProvider({ ...props }) {
|
|
3760
|
+
return /* @__PURE__ */ jsx(Toast$1.Provider, { ...props });
|
|
3761
|
+
}
|
|
3762
|
+
function ToastPortal({ ...props }) {
|
|
3763
|
+
return /* @__PURE__ */ jsx(Toast$1.Portal, { "data-slot": "toast-portal", ...props });
|
|
3764
|
+
}
|
|
3765
|
+
function ToastViewport({ className, ...props }) {
|
|
3766
|
+
return /* @__PURE__ */ jsx(
|
|
3767
|
+
Toast$1.Viewport,
|
|
3768
|
+
{
|
|
3769
|
+
"data-slot": "toast-viewport",
|
|
3770
|
+
className: cn(
|
|
3771
|
+
"pointer-events-none fixed inset-x-4 bottom-4 z-50 mx-auto w-auto max-w-sm outline-none sm:right-4 sm:left-auto sm:mx-0 sm:w-full",
|
|
3772
|
+
className
|
|
3773
|
+
),
|
|
3774
|
+
...props
|
|
3775
|
+
}
|
|
3776
|
+
);
|
|
3777
|
+
}
|
|
3778
|
+
function Toast({ className, ...props }) {
|
|
3779
|
+
return /* @__PURE__ */ jsx(
|
|
3780
|
+
Toast$1.Root,
|
|
3781
|
+
{
|
|
3782
|
+
"data-slot": "toast",
|
|
3783
|
+
className: cn(
|
|
3784
|
+
"group/toast pointer-events-auto absolute right-0 bottom-0 z-[calc(1000-var(--toast-index))] w-full origin-bottom rounded-none border bg-popover text-popover-foreground shadow-lg will-change-transform outline-none select-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50",
|
|
3785
|
+
"[--gap:0.75rem] [--height:var(--toast-frontmost-height,var(--toast-height))] [--offset-y:calc(var(--toast-offset-y)*-1+calc(var(--toast-index)*var(--gap)*-1)+var(--toast-swipe-movement-y))] [--peek:0.75rem] [--scale:calc(max(0,1-(var(--toast-index)*0.1)))] [--shrink:calc(1-var(--scale))]",
|
|
3786
|
+
"h-(--height) [transform:translateX(var(--toast-swipe-movement-x))_translateY(calc(var(--toast-swipe-movement-y)-(var(--toast-index)*var(--peek))-(var(--shrink)*var(--height))))_scale(var(--scale))] [transition:transform_500ms_cubic-bezier(0.22,1,0.36,1),opacity_500ms,height_150ms]",
|
|
3787
|
+
"after:absolute after:top-full after:left-0 after:h-[calc(var(--gap)+1px)] after:w-full after:content-['']",
|
|
3788
|
+
"data-expanded:h-(--toast-height) data-expanded:[transform:translateX(var(--toast-swipe-movement-x))_translateY(var(--offset-y))]",
|
|
3789
|
+
"data-limited:opacity-0 data-starting-style:[transform:translateY(150%)]",
|
|
3790
|
+
"[&[data-ending-style]:not([data-limited]):not([data-swipe-direction])]:[transform:translateY(150%)]",
|
|
3791
|
+
"data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]",
|
|
3792
|
+
"data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]",
|
|
3793
|
+
"data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]",
|
|
3794
|
+
"data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]",
|
|
3795
|
+
"data-expanded:data-ending-style:data-[swipe-direction=down]:[transform:translateY(calc(var(--toast-swipe-movement-y)+150%))]",
|
|
3796
|
+
"data-expanded:data-ending-style:data-[swipe-direction=left]:[transform:translateX(calc(var(--toast-swipe-movement-x)-150%))_translateY(var(--offset-y))]",
|
|
3797
|
+
"data-expanded:data-ending-style:data-[swipe-direction=right]:[transform:translateX(calc(var(--toast-swipe-movement-x)+150%))_translateY(var(--offset-y))]",
|
|
3798
|
+
"data-expanded:data-ending-style:data-[swipe-direction=up]:[transform:translateY(calc(var(--toast-swipe-movement-y)-150%))]",
|
|
3799
|
+
className
|
|
3800
|
+
),
|
|
3801
|
+
...props
|
|
3802
|
+
}
|
|
3803
|
+
);
|
|
3804
|
+
}
|
|
3805
|
+
function ToastContent({ className, ...props }) {
|
|
3806
|
+
return /* @__PURE__ */ jsx(
|
|
3807
|
+
Toast$1.Content,
|
|
3808
|
+
{
|
|
3809
|
+
"data-slot": "toast-content",
|
|
3810
|
+
className: cn(
|
|
3811
|
+
"flex h-full items-center gap-3 overflow-hidden p-4 transition-opacity duration-250 ease-[cubic-bezier(0.22,1,0.36,1)] data-behind:opacity-0 data-expanded:opacity-100",
|
|
3812
|
+
className
|
|
3813
|
+
),
|
|
3814
|
+
...props
|
|
3815
|
+
}
|
|
3816
|
+
);
|
|
3817
|
+
}
|
|
3818
|
+
function ToastTitle({ className, ...props }) {
|
|
3819
|
+
return /* @__PURE__ */ jsx(
|
|
3820
|
+
Toast$1.Title,
|
|
3821
|
+
{
|
|
3822
|
+
"data-slot": "toast-title",
|
|
3823
|
+
className: cn("text-sm font-medium", className),
|
|
3824
|
+
...props
|
|
3825
|
+
}
|
|
3826
|
+
);
|
|
3827
|
+
}
|
|
3828
|
+
function ToastDescription({
|
|
3829
|
+
className,
|
|
3830
|
+
...props
|
|
3831
|
+
}) {
|
|
3832
|
+
return /* @__PURE__ */ jsx(
|
|
3833
|
+
Toast$1.Description,
|
|
3834
|
+
{
|
|
3835
|
+
"data-slot": "toast-description",
|
|
3836
|
+
className: cn("text-sm text-muted-foreground", className),
|
|
3837
|
+
...props
|
|
3838
|
+
}
|
|
3839
|
+
);
|
|
3840
|
+
}
|
|
3841
|
+
function ToastAction({
|
|
3842
|
+
className,
|
|
3843
|
+
render = /* @__PURE__ */ jsx(Button, { variant: "outline", size: "sm" }),
|
|
3844
|
+
...props
|
|
3845
|
+
}) {
|
|
3846
|
+
return /* @__PURE__ */ jsx(
|
|
3847
|
+
Toast$1.Action,
|
|
3848
|
+
{
|
|
3849
|
+
"data-slot": "toast-action",
|
|
3850
|
+
render,
|
|
3851
|
+
className: cn("shrink-0", className),
|
|
3852
|
+
...props
|
|
3853
|
+
}
|
|
3854
|
+
);
|
|
3855
|
+
}
|
|
3856
|
+
function ToastClose({
|
|
3857
|
+
className,
|
|
3858
|
+
children,
|
|
3859
|
+
render = /* @__PURE__ */ jsx(Button, { variant: "ghost", size: "icon-sm" }),
|
|
3860
|
+
...props
|
|
3861
|
+
}) {
|
|
3862
|
+
return /* @__PURE__ */ jsx(
|
|
3863
|
+
Toast$1.Close,
|
|
3864
|
+
{
|
|
3865
|
+
"data-slot": "toast-close",
|
|
3866
|
+
"aria-label": "Close toast",
|
|
3867
|
+
render,
|
|
3868
|
+
className: cn(
|
|
3869
|
+
"relative shrink-0 text-muted-foreground after:absolute after:-inset-2 after:content-[''] hover:text-foreground",
|
|
3870
|
+
className
|
|
3871
|
+
),
|
|
3872
|
+
...props,
|
|
3873
|
+
children: children ?? /* @__PURE__ */ jsx(XIcon, { "aria-hidden": "true" })
|
|
3874
|
+
}
|
|
3875
|
+
);
|
|
3876
|
+
}
|
|
3877
|
+
function ToastIcon({ type }) {
|
|
3878
|
+
let icon = null;
|
|
3879
|
+
if (type === "success") {
|
|
3880
|
+
icon = /* @__PURE__ */ jsx(CircleCheckIcon, { "aria-hidden": "true" });
|
|
3881
|
+
}
|
|
3882
|
+
if (type === "info") {
|
|
3883
|
+
icon = /* @__PURE__ */ jsx(InfoIcon, { "aria-hidden": "true" });
|
|
3884
|
+
}
|
|
3885
|
+
if (type === "warning") {
|
|
3886
|
+
icon = /* @__PURE__ */ jsx(TriangleAlertIcon, { "aria-hidden": "true" });
|
|
3887
|
+
}
|
|
3888
|
+
if (type === "error") {
|
|
3889
|
+
icon = /* @__PURE__ */ jsx(OctagonXIcon, { className: "text-destructive", "aria-hidden": "true" });
|
|
3890
|
+
}
|
|
3891
|
+
if (type === "loading") {
|
|
3892
|
+
icon = /* @__PURE__ */ jsx(Loader2Icon, { className: "animate-spin", "aria-hidden": "true" });
|
|
3893
|
+
}
|
|
3894
|
+
if (!icon) {
|
|
3895
|
+
return null;
|
|
3896
|
+
}
|
|
3897
|
+
return /* @__PURE__ */ jsx(
|
|
3898
|
+
"span",
|
|
3899
|
+
{
|
|
3900
|
+
"data-slot": "toast-icon",
|
|
3901
|
+
className: "shrink-0 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4",
|
|
3902
|
+
children: icon
|
|
3903
|
+
}
|
|
3904
|
+
);
|
|
3905
|
+
}
|
|
3906
|
+
function ToastList() {
|
|
3907
|
+
const { toasts } = Toast$1.useToastManager();
|
|
3908
|
+
return toasts.map((toastItem) => /* @__PURE__ */ jsx(Toast, { toast: toastItem, children: /* @__PURE__ */ jsxs(ToastContent, { children: [
|
|
3909
|
+
/* @__PURE__ */ jsx(ToastIcon, { type: toastItem.type }),
|
|
3910
|
+
/* @__PURE__ */ jsxs("div", { className: "flex min-w-0 flex-1 flex-col gap-1", children: [
|
|
3911
|
+
/* @__PURE__ */ jsx(ToastTitle, {}),
|
|
3912
|
+
/* @__PURE__ */ jsx(ToastDescription, {})
|
|
3913
|
+
] }),
|
|
3914
|
+
/* @__PURE__ */ jsx(ToastAction, {}),
|
|
3915
|
+
/* @__PURE__ */ jsx(ToastClose, {})
|
|
3916
|
+
] }) }, toastItem.id));
|
|
3917
|
+
}
|
|
3918
|
+
function Toaster({
|
|
3919
|
+
children,
|
|
3920
|
+
toastManager = toast,
|
|
3921
|
+
...props
|
|
3922
|
+
}) {
|
|
3923
|
+
return /* @__PURE__ */ jsxs(ToastProvider, { toastManager, ...props, children: [
|
|
3924
|
+
children,
|
|
3925
|
+
/* @__PURE__ */ jsx(ToastPortal, { children: /* @__PURE__ */ jsx(ToastViewport, { children: /* @__PURE__ */ jsx(ToastList, {}) }) })
|
|
3926
|
+
] });
|
|
3927
|
+
}
|
|
3928
|
+
var createToastManager = Toast$1.createToastManager;
|
|
3929
|
+
var useToastManager = Toast$1.useToastManager;
|
|
1741
3930
|
var toggleVariants = cva(
|
|
1742
3931
|
"group/toggle inline-flex items-center justify-center gap-1 rounded-none text-xs font-medium whitespace-nowrap transition-all outline-none hover:bg-muted hover:text-foreground focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-destructive/20 aria-pressed:bg-muted data-[state=on]:bg-muted dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1743
3932
|
{
|
|
@@ -1764,19 +3953,26 @@ function Toggle({
|
|
|
1764
3953
|
size = "default",
|
|
1765
3954
|
...props
|
|
1766
3955
|
}) {
|
|
1767
|
-
return /* @__PURE__ */ jsx(
|
|
3956
|
+
return /* @__PURE__ */ jsx(
|
|
3957
|
+
Toggle$1.Root,
|
|
3958
|
+
{
|
|
3959
|
+
"data-slot": "toggle",
|
|
3960
|
+
className: cn(toggleVariants({ variant, size, className })),
|
|
3961
|
+
...props
|
|
3962
|
+
}
|
|
3963
|
+
);
|
|
1768
3964
|
}
|
|
1769
|
-
var ToggleGroupContext =
|
|
3965
|
+
var ToggleGroupContext = React8.createContext({
|
|
1770
3966
|
size: "default",
|
|
1771
3967
|
variant: "default",
|
|
1772
|
-
spacing:
|
|
3968
|
+
spacing: 2,
|
|
1773
3969
|
orientation: "horizontal"
|
|
1774
3970
|
});
|
|
1775
3971
|
function ToggleGroup({
|
|
1776
3972
|
className,
|
|
1777
3973
|
variant,
|
|
1778
3974
|
size,
|
|
1779
|
-
spacing =
|
|
3975
|
+
spacing = 2,
|
|
1780
3976
|
orientation = "horizontal",
|
|
1781
3977
|
children,
|
|
1782
3978
|
...props
|
|
@@ -1795,7 +3991,13 @@ function ToggleGroup({
|
|
|
1795
3991
|
className
|
|
1796
3992
|
),
|
|
1797
3993
|
...props,
|
|
1798
|
-
children: /* @__PURE__ */ jsx(
|
|
3994
|
+
children: /* @__PURE__ */ jsx(
|
|
3995
|
+
ToggleGroupContext.Provider,
|
|
3996
|
+
{
|
|
3997
|
+
value: { variant, size, spacing, orientation },
|
|
3998
|
+
children
|
|
3999
|
+
}
|
|
4000
|
+
)
|
|
1799
4001
|
}
|
|
1800
4002
|
);
|
|
1801
4003
|
}
|
|
@@ -1806,7 +4008,7 @@ function ToggleGroupItem({
|
|
|
1806
4008
|
size = "default",
|
|
1807
4009
|
...props
|
|
1808
4010
|
}) {
|
|
1809
|
-
const context =
|
|
4011
|
+
const context = React8.useContext(ToggleGroupContext);
|
|
1810
4012
|
return /* @__PURE__ */ jsx(
|
|
1811
4013
|
ToggleGroup$1.Item,
|
|
1812
4014
|
{
|
|
@@ -1854,6 +4056,6 @@ function Container({ as: Component = "div", maxWidth = "xl", fluid = false, cent
|
|
|
1854
4056
|
);
|
|
1855
4057
|
}
|
|
1856
4058
|
|
|
1857
|
-
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, Alert, AlertAction, AlertDescription, AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogMedia, AlertDialogOverlay, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, AlertTitle, AspectRatio, Badge, ButtonGroup, ButtonGroupSeparator, ButtonGroupText, Checkbox, Collapsible, CollapsibleContent, CollapsibleTrigger, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Container, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, HoverCard, HoverCardContent, HoverCardTrigger, InputOTP, InputOTPGroup, InputOTPSeparator, InputOTPSlot, Menubar, MenubarCheckboxItem, MenubarContent, MenubarGroup, MenubarItem, MenubarLabel, MenubarMenu, MenubarPortal, MenubarRadioGroup, MenubarRadioItem, MenubarSeparator, MenubarShortcut, MenubarSub, MenubarSubContent, MenubarSubTrigger, MenubarTrigger, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Slider, Spinner, Switch, Tabs, TabsContent, TabsList, TabsTrigger, Toaster, Toggle, ToggleGroup, ToggleGroupItem, badgeVariants, buttonGroupVariants, navigationMenuTriggerStyle, tabsListVariants, toggleVariants };
|
|
4059
|
+
export { Accordion, AccordionContent, AccordionItem, AccordionTrigger, 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, Command, CommandDialog, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandSeparator, CommandShortcut, Container, DirectionProvider, Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerOverlay, DrawerPortal, DrawerTitle, DrawerTrigger, Empty, EmptyContent, EmptyDescription, EmptyHeader, EmptyMedia, 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, 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, NativeSelect, NativeSelectOptGroup, NativeSelectOption, NavigationMenu, NavigationMenuContent, NavigationMenuIndicator, NavigationMenuItem, NavigationMenuLink, NavigationMenuList, NavigationMenuTrigger, NavigationMenuViewport, Pagination, PaginationContent, PaginationEllipsis, PaginationItem, PaginationLink, PaginationNext, PaginationPrevious, Popover, PopoverAnchor, PopoverContent, PopoverDescription, PopoverHeader, PopoverTitle, PopoverTrigger, Progress, RadioGroup, RadioGroupItem, ResizableHandle, ResizablePanel, ResizablePanelGroup, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Slider, Spinner, Switch, 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 };
|
|
1858
4060
|
//# sourceMappingURL=index.js.map
|
|
1859
4061
|
//# sourceMappingURL=index.js.map
|