@pactor-app/ui 1.2.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/dist/{chunk-L45CSL6I.js → chunk-7KC6DMKH.js} +3 -3
- package/dist/{chunk-Q5NUGUJG.js → chunk-E2TD6JD2.js} +205 -414
- package/dist/{chunk-F3H23KYG.js → chunk-F42SGQNW.js} +31 -93
- package/dist/{chunk-22TEN3ER.js → chunk-FJPRXEKQ.js} +13 -13
- package/dist/chunk-L4Z7MNYY.js +1197 -0
- package/dist/{chunk-LMEJ242M.js → chunk-PMYLC26E.js} +615 -307
- package/dist/chunk-WKJUCGV4.js +78 -0
- package/dist/chunk-ZM3WJZZ7.js +727 -0
- package/dist/components/index.cjs +1694 -969
- package/dist/components/index.d.cts +115 -13
- package/dist/components/index.d.ts +115 -13
- package/dist/components/index.js +10 -6
- package/dist/index.cjs +1889 -1164
- package/dist/index.d.cts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +12 -8
- package/dist/interaction/index.cjs +10 -6
- package/dist/interaction/index.js +3 -3
- package/dist/layout/index.cjs +811 -269
- package/dist/layout/index.d.cts +1 -1
- package/dist/layout/index.d.ts +1 -1
- package/dist/layout/index.js +4 -4
- package/dist/ui/index.cjs +1689 -534
- package/dist/ui/index.d.cts +130 -16
- package/dist/ui/index.d.ts +130 -16
- package/dist/ui/index.js +481 -22
- package/package.json +6 -5
- package/styles.css +975 -114
- package/dist/chunk-2LYMCWEJ.js +0 -289
- package/dist/chunk-HJPHJKVA.js +0 -671
- package/dist/chunk-RQHJBTEU.js +0 -10
package/dist/ui/index.cjs
CHANGED
|
@@ -49,6 +49,15 @@ __export(ui_exports, {
|
|
|
49
49
|
AlertDialogTrigger: () => AlertDialogTrigger,
|
|
50
50
|
AlertTitle: () => AlertTitle,
|
|
51
51
|
AspectRatio: () => AspectRatio,
|
|
52
|
+
Attachment: () => Attachment,
|
|
53
|
+
AttachmentAction: () => AttachmentAction,
|
|
54
|
+
AttachmentActions: () => AttachmentActions,
|
|
55
|
+
AttachmentContent: () => AttachmentContent,
|
|
56
|
+
AttachmentDescription: () => AttachmentDescription,
|
|
57
|
+
AttachmentGroup: () => AttachmentGroup,
|
|
58
|
+
AttachmentMedia: () => AttachmentMedia,
|
|
59
|
+
AttachmentTitle: () => AttachmentTitle,
|
|
60
|
+
AttachmentTrigger: () => AttachmentTrigger,
|
|
52
61
|
Avatar: () => Avatar,
|
|
53
62
|
AvatarFallback: () => AvatarFallback,
|
|
54
63
|
AvatarImage: () => AvatarImage,
|
|
@@ -60,6 +69,10 @@ __export(ui_exports, {
|
|
|
60
69
|
BreadcrumbList: () => BreadcrumbList,
|
|
61
70
|
BreadcrumbPage: () => BreadcrumbPage,
|
|
62
71
|
BreadcrumbSeparator: () => BreadcrumbSeparator,
|
|
72
|
+
Bubble: () => Bubble,
|
|
73
|
+
BubbleContent: () => BubbleContent,
|
|
74
|
+
BubbleGroup: () => BubbleGroup,
|
|
75
|
+
BubbleReactions: () => BubbleReactions,
|
|
63
76
|
Button: () => Button,
|
|
64
77
|
ButtonGroup: () => ButtonGroup,
|
|
65
78
|
CHART_TOKEN_COLORS: () => CHART_TOKEN_COLORS,
|
|
@@ -157,6 +170,12 @@ __export(ui_exports, {
|
|
|
157
170
|
MenubarMenu: () => MenubarMenu,
|
|
158
171
|
MenubarSeparator: () => MenubarSeparator,
|
|
159
172
|
MenubarTrigger: () => MenubarTrigger,
|
|
173
|
+
Message: () => Message,
|
|
174
|
+
MessageAvatar: () => MessageAvatar,
|
|
175
|
+
MessageContent: () => MessageContent,
|
|
176
|
+
MessageFooter: () => MessageFooter,
|
|
177
|
+
MessageGroup: () => MessageGroup,
|
|
178
|
+
MessageHeader: () => MessageHeader,
|
|
160
179
|
NavigationMenu: () => NavigationMenu,
|
|
161
180
|
NavigationMenuContent: () => NavigationMenuContent,
|
|
162
181
|
NavigationMenuItem: () => NavigationMenuItem,
|
|
@@ -205,6 +224,29 @@ __export(ui_exports, {
|
|
|
205
224
|
SheetPortal: () => SheetPortal,
|
|
206
225
|
SheetTitle: () => SheetTitle,
|
|
207
226
|
SheetTrigger: () => SheetTrigger,
|
|
227
|
+
SidebarContentArea: () => SidebarContent,
|
|
228
|
+
SidebarFooterArea: () => SidebarFooter,
|
|
229
|
+
SidebarGroup: () => SidebarGroup,
|
|
230
|
+
SidebarGroupAction: () => SidebarGroupAction,
|
|
231
|
+
SidebarGroupContent: () => SidebarGroupContent,
|
|
232
|
+
SidebarGroupLabel: () => SidebarGroupLabel,
|
|
233
|
+
SidebarHeaderArea: () => SidebarHeader,
|
|
234
|
+
SidebarInput: () => SidebarInput,
|
|
235
|
+
SidebarInset: () => SidebarInset,
|
|
236
|
+
SidebarMenu: () => SidebarMenu,
|
|
237
|
+
SidebarMenuAction: () => SidebarMenuAction,
|
|
238
|
+
SidebarMenuBadge: () => SidebarMenuBadge,
|
|
239
|
+
SidebarMenuButton: () => SidebarMenuButton,
|
|
240
|
+
SidebarMenuItem: () => SidebarMenuItem,
|
|
241
|
+
SidebarMenuSkeleton: () => SidebarMenuSkeleton,
|
|
242
|
+
SidebarMenuSub: () => SidebarMenuSub,
|
|
243
|
+
SidebarMenuSubButton: () => SidebarMenuSubButton,
|
|
244
|
+
SidebarMenuSubItem: () => SidebarMenuSubItem,
|
|
245
|
+
SidebarProvider: () => SidebarProvider,
|
|
246
|
+
SidebarRail: () => SidebarRail,
|
|
247
|
+
SidebarRoot: () => SidebarRoot,
|
|
248
|
+
SidebarSeparator: () => SidebarSeparator,
|
|
249
|
+
SidebarTrigger: () => SidebarTrigger,
|
|
208
250
|
Skeleton: () => Skeleton,
|
|
209
251
|
Slider: () => Slider,
|
|
210
252
|
SliderControl: () => SliderControl,
|
|
@@ -243,7 +285,8 @@ __export(ui_exports, {
|
|
|
243
285
|
toastManager: () => toastManager,
|
|
244
286
|
toggleVariants: () => toggleVariants,
|
|
245
287
|
typographyVariants: () => typographyVariants,
|
|
246
|
-
useCarousel: () => useCarousel
|
|
288
|
+
useCarousel: () => useCarousel,
|
|
289
|
+
useSidebar: () => useSidebar
|
|
247
290
|
});
|
|
248
291
|
module.exports = __toCommonJS(ui_exports);
|
|
249
292
|
|
|
@@ -400,8 +443,9 @@ function AlertDescription({
|
|
|
400
443
|
);
|
|
401
444
|
}
|
|
402
445
|
|
|
403
|
-
// src/ui/
|
|
404
|
-
var
|
|
446
|
+
// src/ui/attachment.tsx
|
|
447
|
+
var import_class_variance_authority3 = require("class-variance-authority");
|
|
448
|
+
var React2 = __toESM(require("react"), 1);
|
|
405
449
|
|
|
406
450
|
// src/ui/button.tsx
|
|
407
451
|
var import_button = require("@base-ui/react/button");
|
|
@@ -415,16 +459,20 @@ var buttonVariants = (0, import_class_variance_authority2.cva)(
|
|
|
415
459
|
variant: {
|
|
416
460
|
default: "bg-primary text-primary-foreground hover:bg-primary/90",
|
|
417
461
|
destructive: "bg-destructive text-destructive-foreground hover:bg-destructive/90 focus-visible:ring-destructive/20",
|
|
418
|
-
outline: "border border-border bg-
|
|
462
|
+
outline: "border border-border bg-card hover:bg-accent hover:text-accent-foreground",
|
|
419
463
|
secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
|
|
420
464
|
ghost: "hover:bg-accent hover:text-accent-foreground",
|
|
421
465
|
link: "text-primary underline-offset-4 hover:underline"
|
|
422
466
|
},
|
|
423
467
|
size: {
|
|
424
468
|
default: "h-9 px-4 py-2",
|
|
469
|
+
xs: "h-6 gap-1 rounded-md px-2 text-xs has-[>svg]:px-1.5 [&_svg:not([class*='size-'])]:size-3",
|
|
425
470
|
sm: "h-8 gap-1.5 rounded-md px-3 text-xs",
|
|
426
471
|
lg: "h-10 rounded-md px-6",
|
|
427
|
-
icon: "size-9"
|
|
472
|
+
icon: "size-9",
|
|
473
|
+
"icon-xs": "size-6 rounded-md [&_svg:not([class*='size-'])]:size-3",
|
|
474
|
+
"icon-sm": "size-8",
|
|
475
|
+
"icon-lg": "size-10"
|
|
428
476
|
}
|
|
429
477
|
},
|
|
430
478
|
defaultVariants: {
|
|
@@ -463,33 +511,225 @@ function Button({
|
|
|
463
511
|
);
|
|
464
512
|
}
|
|
465
513
|
|
|
466
|
-
// src/ui/
|
|
514
|
+
// src/ui/attachment.tsx
|
|
467
515
|
var import_jsx_runtime4 = require("react/jsx-runtime");
|
|
516
|
+
var attachmentVariants = (0, import_class_variance_authority3.cva)(
|
|
517
|
+
"group/attachment relative flex w-fit max-w-full min-w-0 shrink-0 flex-wrap rounded-xl 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",
|
|
518
|
+
{
|
|
519
|
+
variants: {
|
|
520
|
+
size: {
|
|
521
|
+
default: "gap-2 text-sm has-data-[slot=attachment-content]:px-2.5 has-data-[slot=attachment-content]:py-2 has-data-[slot=attachment-media]:p-2",
|
|
522
|
+
sm: "gap-2.5 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",
|
|
523
|
+
xs: "gap-1.5 rounded-lg text-xs has-data-[slot=attachment-content]:px-1.5 has-data-[slot=attachment-content]:py-1 has-data-[slot=attachment-media]:p-1"
|
|
524
|
+
},
|
|
525
|
+
orientation: {
|
|
526
|
+
horizontal: "min-w-40 items-center",
|
|
527
|
+
vertical: "w-24 flex-col has-data-[slot=attachment-content]:w-30"
|
|
528
|
+
}
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
);
|
|
532
|
+
function Attachment({
|
|
533
|
+
className,
|
|
534
|
+
state = "done",
|
|
535
|
+
size = "default",
|
|
536
|
+
orientation = "horizontal",
|
|
537
|
+
...props
|
|
538
|
+
}) {
|
|
539
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
540
|
+
"div",
|
|
541
|
+
{
|
|
542
|
+
"data-slot": "attachment",
|
|
543
|
+
"data-state": state,
|
|
544
|
+
"data-size": size,
|
|
545
|
+
"data-orientation": orientation,
|
|
546
|
+
className: cn(attachmentVariants({ size, orientation }), className),
|
|
547
|
+
...props
|
|
548
|
+
}
|
|
549
|
+
);
|
|
550
|
+
}
|
|
551
|
+
var attachmentMediaVariants = (0, import_class_variance_authority3.cva)(
|
|
552
|
+
"relative flex aspect-square w-10 shrink-0 items-center justify-center overflow-hidden rounded-lg 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-md 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",
|
|
553
|
+
{
|
|
554
|
+
variants: {
|
|
555
|
+
variant: {
|
|
556
|
+
icon: "",
|
|
557
|
+
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"
|
|
558
|
+
}
|
|
559
|
+
},
|
|
560
|
+
defaultVariants: {
|
|
561
|
+
variant: "icon"
|
|
562
|
+
}
|
|
563
|
+
}
|
|
564
|
+
);
|
|
565
|
+
function AttachmentMedia({
|
|
566
|
+
className,
|
|
567
|
+
variant = "icon",
|
|
568
|
+
...props
|
|
569
|
+
}) {
|
|
570
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
571
|
+
"div",
|
|
572
|
+
{
|
|
573
|
+
"data-slot": "attachment-media",
|
|
574
|
+
"data-variant": variant,
|
|
575
|
+
className: cn(attachmentMediaVariants({ variant }), className),
|
|
576
|
+
...props
|
|
577
|
+
}
|
|
578
|
+
);
|
|
579
|
+
}
|
|
580
|
+
function AttachmentContent({
|
|
581
|
+
className,
|
|
582
|
+
...props
|
|
583
|
+
}) {
|
|
584
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
585
|
+
"div",
|
|
586
|
+
{
|
|
587
|
+
"data-slot": "attachment-content",
|
|
588
|
+
className: cn(
|
|
589
|
+
"max-w-full min-w-0 flex-1 leading-tight group-data-[orientation=vertical]/attachment:px-1",
|
|
590
|
+
className
|
|
591
|
+
),
|
|
592
|
+
...props
|
|
593
|
+
}
|
|
594
|
+
);
|
|
595
|
+
}
|
|
596
|
+
function AttachmentTitle({
|
|
597
|
+
className,
|
|
598
|
+
...props
|
|
599
|
+
}) {
|
|
600
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
601
|
+
"span",
|
|
602
|
+
{
|
|
603
|
+
"data-slot": "attachment-title",
|
|
604
|
+
className: cn(
|
|
605
|
+
"block max-w-full min-w-0 truncate font-medium group-data-[state=processing]/attachment:shimmer group-data-[state=uploading]/attachment:shimmer",
|
|
606
|
+
className
|
|
607
|
+
),
|
|
608
|
+
...props
|
|
609
|
+
}
|
|
610
|
+
);
|
|
611
|
+
}
|
|
612
|
+
function AttachmentDescription({
|
|
613
|
+
className,
|
|
614
|
+
...props
|
|
615
|
+
}) {
|
|
616
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
617
|
+
"span",
|
|
618
|
+
{
|
|
619
|
+
"data-slot": "attachment-description",
|
|
620
|
+
className: cn(
|
|
621
|
+
"mt-0.5 block min-w-0 truncate text-xs text-muted-foreground group-data-[state=error]/attachment:text-destructive/80",
|
|
622
|
+
"max-w-full",
|
|
623
|
+
className
|
|
624
|
+
),
|
|
625
|
+
...props
|
|
626
|
+
}
|
|
627
|
+
);
|
|
628
|
+
}
|
|
629
|
+
function AttachmentActions({
|
|
630
|
+
className,
|
|
631
|
+
...props
|
|
632
|
+
}) {
|
|
633
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
634
|
+
"div",
|
|
635
|
+
{
|
|
636
|
+
"data-slot": "attachment-actions",
|
|
637
|
+
className: cn(
|
|
638
|
+
"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",
|
|
639
|
+
className
|
|
640
|
+
),
|
|
641
|
+
...props
|
|
642
|
+
}
|
|
643
|
+
);
|
|
644
|
+
}
|
|
645
|
+
function AttachmentAction({
|
|
646
|
+
className,
|
|
647
|
+
variant,
|
|
648
|
+
size = "icon-xs",
|
|
649
|
+
...props
|
|
650
|
+
}) {
|
|
651
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
652
|
+
Button,
|
|
653
|
+
{
|
|
654
|
+
"data-slot": "attachment-action",
|
|
655
|
+
variant: variant ?? "ghost",
|
|
656
|
+
size,
|
|
657
|
+
className: cn(className),
|
|
658
|
+
...props
|
|
659
|
+
}
|
|
660
|
+
);
|
|
661
|
+
}
|
|
662
|
+
function AttachmentTrigger({
|
|
663
|
+
className,
|
|
664
|
+
asChild = false,
|
|
665
|
+
type,
|
|
666
|
+
children,
|
|
667
|
+
...props
|
|
668
|
+
}) {
|
|
669
|
+
if (asChild && React2.isValidElement(children)) {
|
|
670
|
+
return React2.cloneElement(children, {
|
|
671
|
+
"data-slot": "attachment-trigger",
|
|
672
|
+
className: cn(
|
|
673
|
+
"absolute inset-0 z-10 outline-none",
|
|
674
|
+
children.props.className,
|
|
675
|
+
className
|
|
676
|
+
),
|
|
677
|
+
...props
|
|
678
|
+
});
|
|
679
|
+
}
|
|
680
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
681
|
+
"button",
|
|
682
|
+
{
|
|
683
|
+
"data-slot": "attachment-trigger",
|
|
684
|
+
type: type ?? "button",
|
|
685
|
+
className: cn("absolute inset-0 z-10 outline-none", className),
|
|
686
|
+
...props,
|
|
687
|
+
children
|
|
688
|
+
}
|
|
689
|
+
);
|
|
690
|
+
}
|
|
691
|
+
function AttachmentGroup({ className, ...props }) {
|
|
692
|
+
return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
|
|
693
|
+
"div",
|
|
694
|
+
{
|
|
695
|
+
"data-slot": "attachment-group",
|
|
696
|
+
className: cn(
|
|
697
|
+
"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",
|
|
698
|
+
className
|
|
699
|
+
),
|
|
700
|
+
...props
|
|
701
|
+
}
|
|
702
|
+
);
|
|
703
|
+
}
|
|
704
|
+
|
|
705
|
+
// src/ui/alert-dialog.tsx
|
|
706
|
+
var import_alert_dialog = require("@base-ui/react/alert-dialog");
|
|
707
|
+
var import_jsx_runtime5 = require("react/jsx-runtime");
|
|
468
708
|
function AlertDialog({
|
|
469
709
|
...props
|
|
470
710
|
}) {
|
|
471
|
-
return /* @__PURE__ */ (0,
|
|
711
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_alert_dialog.AlertDialog.Root, { "data-slot": "alert-dialog", ...props });
|
|
472
712
|
}
|
|
473
713
|
function AlertDialogTrigger({
|
|
474
714
|
...props
|
|
475
715
|
}) {
|
|
476
|
-
return /* @__PURE__ */ (0,
|
|
716
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_alert_dialog.AlertDialog.Trigger, { "data-slot": "alert-dialog-trigger", ...props });
|
|
477
717
|
}
|
|
478
718
|
function AlertDialogPortal({
|
|
479
719
|
...props
|
|
480
720
|
}) {
|
|
481
|
-
return /* @__PURE__ */ (0,
|
|
721
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(import_alert_dialog.AlertDialog.Portal, { "data-slot": "alert-dialog-portal", ...props });
|
|
482
722
|
}
|
|
483
723
|
function AlertDialogOverlay({
|
|
484
724
|
className,
|
|
485
725
|
...props
|
|
486
726
|
}) {
|
|
487
|
-
return /* @__PURE__ */ (0,
|
|
727
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
488
728
|
import_alert_dialog.AlertDialog.Backdrop,
|
|
489
729
|
{
|
|
490
730
|
"data-slot": "alert-dialog-overlay",
|
|
491
731
|
className: cn(
|
|
492
|
-
"fixed inset-0 z-50 bg-
|
|
732
|
+
"fixed inset-0 z-50 bg-(--overlay-background) data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
493
733
|
className
|
|
494
734
|
),
|
|
495
735
|
...props
|
|
@@ -500,14 +740,14 @@ function AlertDialogContent({
|
|
|
500
740
|
className,
|
|
501
741
|
...props
|
|
502
742
|
}) {
|
|
503
|
-
return /* @__PURE__ */ (0,
|
|
504
|
-
/* @__PURE__ */ (0,
|
|
505
|
-
/* @__PURE__ */ (0,
|
|
743
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsxs)(AlertDialogPortal, { "data-slot": "alert-dialog-portal", children: [
|
|
744
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(AlertDialogOverlay, {}),
|
|
745
|
+
/* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
506
746
|
import_alert_dialog.AlertDialog.Popup,
|
|
507
747
|
{
|
|
508
748
|
"data-slot": "alert-dialog-content",
|
|
509
749
|
className: cn(
|
|
510
|
-
"fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border bg-
|
|
750
|
+
"fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border bg-popover p-6 shadow-lg shadow-(color:--shadow-color) duration-200 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 sm:max-w-lg",
|
|
511
751
|
className
|
|
512
752
|
),
|
|
513
753
|
...props
|
|
@@ -519,7 +759,7 @@ function AlertDialogHeader({
|
|
|
519
759
|
className,
|
|
520
760
|
...props
|
|
521
761
|
}) {
|
|
522
|
-
return /* @__PURE__ */ (0,
|
|
762
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
523
763
|
"div",
|
|
524
764
|
{
|
|
525
765
|
"data-slot": "alert-dialog-header",
|
|
@@ -532,7 +772,7 @@ function AlertDialogFooter({
|
|
|
532
772
|
className,
|
|
533
773
|
...props
|
|
534
774
|
}) {
|
|
535
|
-
return /* @__PURE__ */ (0,
|
|
775
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
536
776
|
"div",
|
|
537
777
|
{
|
|
538
778
|
"data-slot": "alert-dialog-footer",
|
|
@@ -548,7 +788,7 @@ function AlertDialogTitle({
|
|
|
548
788
|
className,
|
|
549
789
|
...props
|
|
550
790
|
}) {
|
|
551
|
-
return /* @__PURE__ */ (0,
|
|
791
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
552
792
|
import_alert_dialog.AlertDialog.Title,
|
|
553
793
|
{
|
|
554
794
|
"data-slot": "alert-dialog-title",
|
|
@@ -561,7 +801,7 @@ function AlertDialogDescription({
|
|
|
561
801
|
className,
|
|
562
802
|
...props
|
|
563
803
|
}) {
|
|
564
|
-
return /* @__PURE__ */ (0,
|
|
804
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
565
805
|
import_alert_dialog.AlertDialog.Description,
|
|
566
806
|
{
|
|
567
807
|
"data-slot": "alert-dialog-description",
|
|
@@ -575,7 +815,7 @@ function AlertDialogAction({
|
|
|
575
815
|
variant = "default",
|
|
576
816
|
...props
|
|
577
817
|
}) {
|
|
578
|
-
return /* @__PURE__ */ (0,
|
|
818
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
579
819
|
import_alert_dialog.AlertDialog.Close,
|
|
580
820
|
{
|
|
581
821
|
"data-slot": "alert-dialog-action",
|
|
@@ -589,7 +829,7 @@ function AlertDialogCancel({
|
|
|
589
829
|
variant = "outline",
|
|
590
830
|
...props
|
|
591
831
|
}) {
|
|
592
|
-
return /* @__PURE__ */ (0,
|
|
832
|
+
return /* @__PURE__ */ (0, import_jsx_runtime5.jsx)(
|
|
593
833
|
import_alert_dialog.AlertDialog.Close,
|
|
594
834
|
{
|
|
595
835
|
"data-slot": "alert-dialog-cancel",
|
|
@@ -600,14 +840,14 @@ function AlertDialogCancel({
|
|
|
600
840
|
}
|
|
601
841
|
|
|
602
842
|
// src/ui/aspect-ratio.tsx
|
|
603
|
-
var
|
|
843
|
+
var import_jsx_runtime6 = require("react/jsx-runtime");
|
|
604
844
|
function AspectRatio({
|
|
605
845
|
ratio = 1,
|
|
606
846
|
className,
|
|
607
847
|
style,
|
|
608
848
|
...props
|
|
609
849
|
}) {
|
|
610
|
-
return /* @__PURE__ */ (0,
|
|
850
|
+
return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
|
|
611
851
|
"div",
|
|
612
852
|
{
|
|
613
853
|
"data-slot": "aspect-ratio",
|
|
@@ -620,9 +860,9 @@ function AspectRatio({
|
|
|
620
860
|
|
|
621
861
|
// src/ui/avatar.tsx
|
|
622
862
|
var import_avatar = require("@base-ui/react/avatar");
|
|
623
|
-
var
|
|
863
|
+
var import_jsx_runtime7 = require("react/jsx-runtime");
|
|
624
864
|
function Avatar({ className, ...props }) {
|
|
625
|
-
return /* @__PURE__ */ (0,
|
|
865
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
626
866
|
import_avatar.Avatar.Root,
|
|
627
867
|
{
|
|
628
868
|
"data-slot": "avatar",
|
|
@@ -635,7 +875,7 @@ function Avatar({ className, ...props }) {
|
|
|
635
875
|
);
|
|
636
876
|
}
|
|
637
877
|
function AvatarImage({ className, ...props }) {
|
|
638
|
-
return /* @__PURE__ */ (0,
|
|
878
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
639
879
|
import_avatar.Avatar.Image,
|
|
640
880
|
{
|
|
641
881
|
"data-slot": "avatar-image",
|
|
@@ -645,7 +885,7 @@ function AvatarImage({ className, ...props }) {
|
|
|
645
885
|
);
|
|
646
886
|
}
|
|
647
887
|
function AvatarFallback({ className, ...props }) {
|
|
648
|
-
return /* @__PURE__ */ (0,
|
|
888
|
+
return /* @__PURE__ */ (0, import_jsx_runtime7.jsx)(
|
|
649
889
|
import_avatar.Avatar.Fallback,
|
|
650
890
|
{
|
|
651
891
|
"data-slot": "avatar-fallback",
|
|
@@ -659,9 +899,9 @@ function AvatarFallback({ className, ...props }) {
|
|
|
659
899
|
}
|
|
660
900
|
|
|
661
901
|
// src/ui/badge.tsx
|
|
662
|
-
var
|
|
663
|
-
var
|
|
664
|
-
var badgeVariants = (0,
|
|
902
|
+
var import_class_variance_authority4 = require("class-variance-authority");
|
|
903
|
+
var import_jsx_runtime8 = require("react/jsx-runtime");
|
|
904
|
+
var badgeVariants = (0, import_class_variance_authority4.cva)(
|
|
665
905
|
"inline-flex w-fit shrink-0 items-center justify-center gap-1 overflow-hidden rounded-md border px-2 py-0.5 text-xs font-medium whitespace-nowrap [&>svg]:pointer-events-none [&>svg]:size-3",
|
|
666
906
|
{
|
|
667
907
|
variants: {
|
|
@@ -682,7 +922,7 @@ function Badge({
|
|
|
682
922
|
variant,
|
|
683
923
|
...props
|
|
684
924
|
}) {
|
|
685
|
-
return /* @__PURE__ */ (0,
|
|
925
|
+
return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
|
|
686
926
|
"span",
|
|
687
927
|
{
|
|
688
928
|
"data-slot": "badge",
|
|
@@ -694,12 +934,12 @@ function Badge({
|
|
|
694
934
|
|
|
695
935
|
// src/ui/breadcrumb.tsx
|
|
696
936
|
var import_lucide_react2 = require("lucide-react");
|
|
697
|
-
var
|
|
937
|
+
var import_jsx_runtime9 = require("react/jsx-runtime");
|
|
698
938
|
function Breadcrumb({ ...props }) {
|
|
699
|
-
return /* @__PURE__ */ (0,
|
|
939
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("nav", { "aria-label": "breadcrumb", "data-slot": "breadcrumb", ...props });
|
|
700
940
|
}
|
|
701
941
|
function BreadcrumbList({ className, ...props }) {
|
|
702
|
-
return /* @__PURE__ */ (0,
|
|
942
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
703
943
|
"ol",
|
|
704
944
|
{
|
|
705
945
|
"data-slot": "breadcrumb-list",
|
|
@@ -712,7 +952,7 @@ function BreadcrumbList({ className, ...props }) {
|
|
|
712
952
|
);
|
|
713
953
|
}
|
|
714
954
|
function BreadcrumbItem({ className, ...props }) {
|
|
715
|
-
return /* @__PURE__ */ (0,
|
|
955
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
716
956
|
"li",
|
|
717
957
|
{
|
|
718
958
|
"data-slot": "breadcrumb-item",
|
|
@@ -722,7 +962,7 @@ function BreadcrumbItem({ className, ...props }) {
|
|
|
722
962
|
);
|
|
723
963
|
}
|
|
724
964
|
function BreadcrumbLink({ className, ...props }) {
|
|
725
|
-
return /* @__PURE__ */ (0,
|
|
965
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
726
966
|
"a",
|
|
727
967
|
{
|
|
728
968
|
"data-slot": "breadcrumb-link",
|
|
@@ -732,7 +972,7 @@ function BreadcrumbLink({ className, ...props }) {
|
|
|
732
972
|
);
|
|
733
973
|
}
|
|
734
974
|
function BreadcrumbPage({ className, ...props }) {
|
|
735
|
-
return /* @__PURE__ */ (0,
|
|
975
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
736
976
|
"span",
|
|
737
977
|
{
|
|
738
978
|
"data-slot": "breadcrumb-page",
|
|
@@ -749,7 +989,7 @@ function BreadcrumbSeparator({
|
|
|
749
989
|
className,
|
|
750
990
|
...props
|
|
751
991
|
}) {
|
|
752
|
-
return /* @__PURE__ */ (0,
|
|
992
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(
|
|
753
993
|
"li",
|
|
754
994
|
{
|
|
755
995
|
"data-slot": "breadcrumb-separator",
|
|
@@ -757,12 +997,12 @@ function BreadcrumbSeparator({
|
|
|
757
997
|
"aria-hidden": "true",
|
|
758
998
|
className: cn("[&>svg]:size-3.5", className),
|
|
759
999
|
...props,
|
|
760
|
-
children: children ?? /* @__PURE__ */ (0,
|
|
1000
|
+
children: children ?? /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react2.ChevronRightIcon, {})
|
|
761
1001
|
}
|
|
762
1002
|
);
|
|
763
1003
|
}
|
|
764
1004
|
function BreadcrumbEllipsis({ className, ...props }) {
|
|
765
|
-
return /* @__PURE__ */ (0,
|
|
1005
|
+
return /* @__PURE__ */ (0, import_jsx_runtime9.jsxs)(
|
|
766
1006
|
"span",
|
|
767
1007
|
{
|
|
768
1008
|
"data-slot": "breadcrumb-ellipsis",
|
|
@@ -771,17 +1011,17 @@ function BreadcrumbEllipsis({ className, ...props }) {
|
|
|
771
1011
|
className: cn("flex size-9 items-center justify-center", className),
|
|
772
1012
|
...props,
|
|
773
1013
|
children: [
|
|
774
|
-
/* @__PURE__ */ (0,
|
|
775
|
-
/* @__PURE__ */ (0,
|
|
1014
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react2.MoreHorizontalIcon, { className: "size-4" }),
|
|
1015
|
+
/* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "sr-only", children: "More" })
|
|
776
1016
|
]
|
|
777
1017
|
}
|
|
778
1018
|
);
|
|
779
1019
|
}
|
|
780
1020
|
|
|
781
1021
|
// src/ui/button-group.tsx
|
|
782
|
-
var
|
|
1022
|
+
var import_jsx_runtime10 = require("react/jsx-runtime");
|
|
783
1023
|
function ButtonGroup({ className, ...props }) {
|
|
784
|
-
return /* @__PURE__ */ (0,
|
|
1024
|
+
return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
|
|
785
1025
|
"div",
|
|
786
1026
|
{
|
|
787
1027
|
role: "group",
|
|
@@ -795,63 +1035,177 @@ function ButtonGroup({ className, ...props }) {
|
|
|
795
1035
|
);
|
|
796
1036
|
}
|
|
797
1037
|
|
|
798
|
-
// src/ui/
|
|
799
|
-
var
|
|
800
|
-
var
|
|
801
|
-
var
|
|
802
|
-
function
|
|
1038
|
+
// src/ui/bubble.tsx
|
|
1039
|
+
var React3 = __toESM(require("react"), 1);
|
|
1040
|
+
var import_class_variance_authority5 = require("class-variance-authority");
|
|
1041
|
+
var import_jsx_runtime11 = require("react/jsx-runtime");
|
|
1042
|
+
function BubbleGroup({ className, ...props }) {
|
|
1043
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1044
|
+
"div",
|
|
1045
|
+
{
|
|
1046
|
+
"data-slot": "bubble-group",
|
|
1047
|
+
className: cn("flex min-w-0 flex-col gap-2", className),
|
|
1048
|
+
...props
|
|
1049
|
+
}
|
|
1050
|
+
);
|
|
1051
|
+
}
|
|
1052
|
+
var bubbleVariants = (0, import_class_variance_authority5.cva)(
|
|
1053
|
+
"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",
|
|
1054
|
+
{
|
|
1055
|
+
variants: {
|
|
1056
|
+
variant: {
|
|
1057
|
+
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",
|
|
1058
|
+
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%)]",
|
|
1059
|
+
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%)]",
|
|
1060
|
+
tinted: "*:data-[slot=bubble-content]:bg-(--bubble-background) *:data-[slot=bubble-content]:text-foreground [&>[data-slot=bubble-content]:is(button,a):hover]:bg-(--bubble-hover-background)",
|
|
1061
|
+
outline: "*:data-[slot=bubble-content]:border-border *:data-[slot=bubble-content]:bg-card [&>[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",
|
|
1062
|
+
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",
|
|
1063
|
+
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"
|
|
1064
|
+
}
|
|
1065
|
+
},
|
|
1066
|
+
defaultVariants: {
|
|
1067
|
+
variant: "default"
|
|
1068
|
+
}
|
|
1069
|
+
}
|
|
1070
|
+
);
|
|
1071
|
+
function Bubble({
|
|
1072
|
+
variant = "default",
|
|
1073
|
+
align = "start",
|
|
803
1074
|
className,
|
|
804
|
-
classNames,
|
|
805
|
-
showOutsideDays = true,
|
|
806
1075
|
...props
|
|
807
1076
|
}) {
|
|
808
|
-
|
|
809
|
-
|
|
810
|
-
import_react_day_picker.DayPicker,
|
|
1077
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1078
|
+
"div",
|
|
811
1079
|
{
|
|
812
|
-
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
822
|
-
|
|
823
|
-
|
|
824
|
-
|
|
825
|
-
|
|
826
|
-
|
|
827
|
-
|
|
828
|
-
|
|
829
|
-
|
|
830
|
-
|
|
831
|
-
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
1080
|
+
"data-slot": "bubble",
|
|
1081
|
+
"data-variant": variant,
|
|
1082
|
+
"data-align": align,
|
|
1083
|
+
className: cn(bubbleVariants({ variant }), className),
|
|
1084
|
+
...props
|
|
1085
|
+
}
|
|
1086
|
+
);
|
|
1087
|
+
}
|
|
1088
|
+
function BubbleContent({
|
|
1089
|
+
asChild = false,
|
|
1090
|
+
className,
|
|
1091
|
+
children,
|
|
1092
|
+
...props
|
|
1093
|
+
}) {
|
|
1094
|
+
const cls = cn(
|
|
1095
|
+
"w-fit max-w-full min-w-0 overflow-hidden rounded-xl border border-transparent px-3 py-2 text-sm 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-3 [button,a]:focus-visible:ring-ring/50",
|
|
1096
|
+
className
|
|
1097
|
+
);
|
|
1098
|
+
if (asChild && React3.isValidElement(children)) {
|
|
1099
|
+
return React3.cloneElement(children, {
|
|
1100
|
+
"data-slot": "bubble-content",
|
|
1101
|
+
className: cn(cls, children.props.className),
|
|
1102
|
+
...props
|
|
1103
|
+
});
|
|
1104
|
+
}
|
|
1105
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1106
|
+
"div",
|
|
1107
|
+
{
|
|
1108
|
+
"data-slot": "bubble-content",
|
|
1109
|
+
className: cls,
|
|
1110
|
+
...props,
|
|
1111
|
+
children
|
|
1112
|
+
}
|
|
1113
|
+
);
|
|
1114
|
+
}
|
|
1115
|
+
var bubbleReactionsVariants = (0, import_class_variance_authority5.cva)(
|
|
1116
|
+
"absolute z-10 flex w-fit shrink-0 items-center justify-center gap-1 rounded-full bg-muted px-1.5 py-0.5 text-sm ring-3 ring-card has-[button]:p-0",
|
|
1117
|
+
{
|
|
1118
|
+
variants: {
|
|
1119
|
+
side: {
|
|
1120
|
+
top: "top-0 -translate-y-3/4",
|
|
1121
|
+
bottom: "bottom-0 translate-y-3/4"
|
|
1122
|
+
},
|
|
1123
|
+
align: {
|
|
1124
|
+
start: "left-3",
|
|
1125
|
+
end: "right-3"
|
|
1126
|
+
}
|
|
1127
|
+
},
|
|
1128
|
+
defaultVariants: {
|
|
1129
|
+
side: "bottom",
|
|
1130
|
+
align: "end"
|
|
1131
|
+
}
|
|
1132
|
+
}
|
|
1133
|
+
);
|
|
1134
|
+
function BubbleReactions({
|
|
1135
|
+
side = "bottom",
|
|
1136
|
+
align = "end",
|
|
1137
|
+
className,
|
|
1138
|
+
...props
|
|
1139
|
+
}) {
|
|
1140
|
+
return /* @__PURE__ */ (0, import_jsx_runtime11.jsx)(
|
|
1141
|
+
"div",
|
|
1142
|
+
{
|
|
1143
|
+
"data-slot": "bubble-reactions",
|
|
1144
|
+
"data-align": align,
|
|
1145
|
+
"data-side": side,
|
|
1146
|
+
className: cn(bubbleReactionsVariants({ side, align }), className),
|
|
1147
|
+
...props
|
|
1148
|
+
}
|
|
1149
|
+
);
|
|
1150
|
+
}
|
|
1151
|
+
|
|
1152
|
+
// src/ui/calendar.tsx
|
|
1153
|
+
var import_lucide_react3 = require("lucide-react");
|
|
1154
|
+
var import_react_day_picker = require("react-day-picker");
|
|
1155
|
+
var import_jsx_runtime12 = require("react/jsx-runtime");
|
|
1156
|
+
function Calendar({
|
|
1157
|
+
className,
|
|
1158
|
+
classNames,
|
|
1159
|
+
showOutsideDays = true,
|
|
1160
|
+
...props
|
|
1161
|
+
}) {
|
|
1162
|
+
const defaultClassNames = (0, import_react_day_picker.getDefaultClassNames)();
|
|
1163
|
+
return /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
|
|
1164
|
+
import_react_day_picker.DayPicker,
|
|
1165
|
+
{
|
|
1166
|
+
showOutsideDays,
|
|
1167
|
+
className: cn("bg-card p-3", className),
|
|
1168
|
+
classNames: {
|
|
1169
|
+
root: cn("w-fit", defaultClassNames.root),
|
|
1170
|
+
months: cn("relative flex flex-col gap-4 md:flex-row", defaultClassNames.months),
|
|
1171
|
+
month: cn("flex w-full flex-col gap-4", defaultClassNames.month),
|
|
1172
|
+
nav: cn(
|
|
1173
|
+
"absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",
|
|
1174
|
+
defaultClassNames.nav
|
|
1175
|
+
),
|
|
1176
|
+
button_previous: cn(
|
|
1177
|
+
buttonVariants({ variant: "outline" }),
|
|
1178
|
+
"size-7 bg-transparent p-0 opacity-50 hover:opacity-100",
|
|
1179
|
+
defaultClassNames.button_previous
|
|
1180
|
+
),
|
|
1181
|
+
button_next: cn(
|
|
1182
|
+
buttonVariants({ variant: "outline" }),
|
|
1183
|
+
"size-7 bg-transparent p-0 opacity-50 hover:opacity-100",
|
|
1184
|
+
defaultClassNames.button_next
|
|
1185
|
+
),
|
|
1186
|
+
month_caption: cn(
|
|
1187
|
+
"flex h-7 w-full items-center justify-center px-7",
|
|
1188
|
+
defaultClassNames.month_caption
|
|
1189
|
+
),
|
|
1190
|
+
caption_label: cn("text-sm font-medium", defaultClassNames.caption_label),
|
|
1191
|
+
month_grid: cn("w-full border-collapse", defaultClassNames.month_grid),
|
|
1192
|
+
weekdays: cn("flex", defaultClassNames.weekdays),
|
|
1193
|
+
weekday: cn(
|
|
1194
|
+
"w-8 rounded-md text-[0.8rem] font-normal text-muted-foreground",
|
|
1195
|
+
defaultClassNames.weekday
|
|
1196
|
+
),
|
|
1197
|
+
week: cn("mt-2 flex w-full", defaultClassNames.week),
|
|
1198
|
+
day: cn("h-8 w-8 p-0 text-center text-sm", defaultClassNames.day),
|
|
1199
|
+
day_button: cn(
|
|
1200
|
+
"size-8 cursor-pointer rounded-md p-0 font-normal hover:bg-(--calendar-day-hover-background) hover:text-(--calendar-day-hover-foreground) aria-selected:opacity-100",
|
|
847
1201
|
defaultClassNames.day_button
|
|
848
1202
|
),
|
|
849
1203
|
selected: cn(
|
|
850
|
-
"[&>button]:bg-
|
|
1204
|
+
"[&>button]:bg-(--calendar-selected-background) [&>button]:text-(--calendar-selected-foreground) [&>button]:hover:bg-(--calendar-selected-background) [&>button]:hover:text-(--calendar-selected-foreground)",
|
|
851
1205
|
defaultClassNames.selected
|
|
852
1206
|
),
|
|
853
1207
|
today: cn(
|
|
854
|
-
"[&>button]:bg-
|
|
1208
|
+
"[&>button]:bg-(--calendar-today-background) [&>button]:text-(--calendar-today-foreground) [&>button]:hover:bg-(--calendar-today-background) [&>button]:hover:text-(--calendar-today-foreground) [&>button]:border [&>button]:border-(--calendar-today-border)",
|
|
855
1209
|
defaultClassNames.today
|
|
856
1210
|
),
|
|
857
1211
|
outside: cn(
|
|
@@ -863,7 +1217,7 @@ function Calendar({
|
|
|
863
1217
|
...classNames
|
|
864
1218
|
},
|
|
865
1219
|
components: {
|
|
866
|
-
Chevron: ({ orientation }) => orientation === "left" ? /* @__PURE__ */ (0,
|
|
1220
|
+
Chevron: ({ orientation }) => orientation === "left" ? /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react3.ChevronLeftIcon, { className: "size-4" }) : /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react3.ChevronRightIcon, { className: "size-4" })
|
|
867
1221
|
},
|
|
868
1222
|
...props
|
|
869
1223
|
}
|
|
@@ -872,13 +1226,13 @@ function Calendar({
|
|
|
872
1226
|
|
|
873
1227
|
// src/ui/chart.tsx
|
|
874
1228
|
var import_recharts = require("recharts");
|
|
875
|
-
var
|
|
1229
|
+
var import_jsx_runtime13 = require("react/jsx-runtime");
|
|
876
1230
|
var CHART_TOKEN_COLORS = [
|
|
877
|
-
"
|
|
878
|
-
"
|
|
879
|
-
"
|
|
880
|
-
"
|
|
881
|
-
"
|
|
1231
|
+
"var(--chart-1)",
|
|
1232
|
+
"var(--chart-2)",
|
|
1233
|
+
"var(--chart-3)",
|
|
1234
|
+
"var(--chart-4)",
|
|
1235
|
+
"var(--chart-5)"
|
|
882
1236
|
];
|
|
883
1237
|
function chartColor(index, colors) {
|
|
884
1238
|
if (colors && colors.length > 0) {
|
|
@@ -891,13 +1245,13 @@ function ChartContainer({
|
|
|
891
1245
|
children,
|
|
892
1246
|
...props
|
|
893
1247
|
}) {
|
|
894
|
-
return /* @__PURE__ */ (0,
|
|
1248
|
+
return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
|
|
895
1249
|
"div",
|
|
896
1250
|
{
|
|
897
1251
|
"data-slot": "chart-container",
|
|
898
1252
|
className: cn("h-64 w-full", className),
|
|
899
1253
|
...props,
|
|
900
|
-
children: /* @__PURE__ */ (0,
|
|
1254
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(import_recharts.ResponsiveContainer, { width: "100%", height: "100%", children })
|
|
901
1255
|
}
|
|
902
1256
|
);
|
|
903
1257
|
}
|
|
@@ -905,11 +1259,11 @@ function ChartContainer({
|
|
|
905
1259
|
// src/ui/carousel.tsx
|
|
906
1260
|
var import_embla_carousel_react = __toESM(require("embla-carousel-react"), 1);
|
|
907
1261
|
var import_lucide_react4 = require("lucide-react");
|
|
908
|
-
var
|
|
909
|
-
var
|
|
910
|
-
var CarouselContext =
|
|
1262
|
+
var React4 = __toESM(require("react"), 1);
|
|
1263
|
+
var import_jsx_runtime14 = require("react/jsx-runtime");
|
|
1264
|
+
var CarouselContext = React4.createContext(null);
|
|
911
1265
|
function useCarousel() {
|
|
912
|
-
const context =
|
|
1266
|
+
const context = React4.useContext(CarouselContext);
|
|
913
1267
|
if (!context) {
|
|
914
1268
|
throw new Error("useCarousel must be used within a <Carousel />");
|
|
915
1269
|
}
|
|
@@ -928,16 +1282,16 @@ function Carousel({
|
|
|
928
1282
|
{ ...opts, axis: orientation === "horizontal" ? "x" : "y" },
|
|
929
1283
|
plugins
|
|
930
1284
|
);
|
|
931
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
932
|
-
const [canScrollNext, setCanScrollNext] =
|
|
933
|
-
const onSelect =
|
|
1285
|
+
const [canScrollPrev, setCanScrollPrev] = React4.useState(false);
|
|
1286
|
+
const [canScrollNext, setCanScrollNext] = React4.useState(false);
|
|
1287
|
+
const onSelect = React4.useCallback((carouselApi) => {
|
|
934
1288
|
if (!carouselApi) return;
|
|
935
1289
|
setCanScrollPrev(carouselApi.canScrollPrev());
|
|
936
1290
|
setCanScrollNext(carouselApi.canScrollNext());
|
|
937
1291
|
}, []);
|
|
938
|
-
const scrollPrev =
|
|
939
|
-
const scrollNext =
|
|
940
|
-
const handleKeyDown =
|
|
1292
|
+
const scrollPrev = React4.useCallback(() => api?.scrollPrev(), [api]);
|
|
1293
|
+
const scrollNext = React4.useCallback(() => api?.scrollNext(), [api]);
|
|
1294
|
+
const handleKeyDown = React4.useCallback(
|
|
941
1295
|
(event) => {
|
|
942
1296
|
if (event.key === "ArrowLeft") {
|
|
943
1297
|
event.preventDefault();
|
|
@@ -949,10 +1303,10 @@ function Carousel({
|
|
|
949
1303
|
},
|
|
950
1304
|
[scrollPrev, scrollNext]
|
|
951
1305
|
);
|
|
952
|
-
|
|
1306
|
+
React4.useEffect(() => {
|
|
953
1307
|
if (api && setApi) setApi(api);
|
|
954
1308
|
}, [api, setApi]);
|
|
955
|
-
|
|
1309
|
+
React4.useEffect(() => {
|
|
956
1310
|
if (!api) return;
|
|
957
1311
|
onSelect(api);
|
|
958
1312
|
api.on("reInit", onSelect);
|
|
@@ -961,7 +1315,7 @@ function Carousel({
|
|
|
961
1315
|
api.off("select", onSelect);
|
|
962
1316
|
};
|
|
963
1317
|
}, [api, onSelect]);
|
|
964
|
-
return /* @__PURE__ */ (0,
|
|
1318
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
965
1319
|
CarouselContext.Provider,
|
|
966
1320
|
{
|
|
967
1321
|
value: {
|
|
@@ -974,7 +1328,7 @@ function Carousel({
|
|
|
974
1328
|
canScrollPrev,
|
|
975
1329
|
canScrollNext
|
|
976
1330
|
},
|
|
977
|
-
children: /* @__PURE__ */ (0,
|
|
1331
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
978
1332
|
"div",
|
|
979
1333
|
{
|
|
980
1334
|
onKeyDownCapture: handleKeyDown,
|
|
@@ -991,7 +1345,7 @@ function Carousel({
|
|
|
991
1345
|
}
|
|
992
1346
|
function CarouselContent({ className, ...props }) {
|
|
993
1347
|
const { carouselRef, orientation } = useCarousel();
|
|
994
|
-
return /* @__PURE__ */ (0,
|
|
1348
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("div", { ref: carouselRef, className: "overflow-hidden", "data-slot": "carousel-viewport", children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
995
1349
|
"div",
|
|
996
1350
|
{
|
|
997
1351
|
className: cn(
|
|
@@ -1005,7 +1359,7 @@ function CarouselContent({ className, ...props }) {
|
|
|
1005
1359
|
}
|
|
1006
1360
|
function CarouselItem({ className, ...props }) {
|
|
1007
1361
|
const { orientation } = useCarousel();
|
|
1008
|
-
return /* @__PURE__ */ (0,
|
|
1362
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
|
|
1009
1363
|
"div",
|
|
1010
1364
|
{
|
|
1011
1365
|
role: "group",
|
|
@@ -1027,7 +1381,7 @@ function CarouselPrevious({
|
|
|
1027
1381
|
...props
|
|
1028
1382
|
}) {
|
|
1029
1383
|
const { orientation, scrollPrev, canScrollPrev } = useCarousel();
|
|
1030
|
-
return /* @__PURE__ */ (0,
|
|
1384
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1031
1385
|
Button,
|
|
1032
1386
|
{
|
|
1033
1387
|
"data-slot": "carousel-previous",
|
|
@@ -1042,8 +1396,8 @@ function CarouselPrevious({
|
|
|
1042
1396
|
onClick: scrollPrev,
|
|
1043
1397
|
...props,
|
|
1044
1398
|
children: [
|
|
1045
|
-
/* @__PURE__ */ (0,
|
|
1046
|
-
/* @__PURE__ */ (0,
|
|
1399
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_lucide_react4.ChevronLeftIcon, {}),
|
|
1400
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "sr-only", children: "Previous slide" })
|
|
1047
1401
|
]
|
|
1048
1402
|
}
|
|
1049
1403
|
);
|
|
@@ -1055,7 +1409,7 @@ function CarouselNext({
|
|
|
1055
1409
|
...props
|
|
1056
1410
|
}) {
|
|
1057
1411
|
const { orientation, scrollNext, canScrollNext } = useCarousel();
|
|
1058
|
-
return /* @__PURE__ */ (0,
|
|
1412
|
+
return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
|
|
1059
1413
|
Button,
|
|
1060
1414
|
{
|
|
1061
1415
|
"data-slot": "carousel-next",
|
|
@@ -1070,8 +1424,8 @@ function CarouselNext({
|
|
|
1070
1424
|
onClick: scrollNext,
|
|
1071
1425
|
...props,
|
|
1072
1426
|
children: [
|
|
1073
|
-
/* @__PURE__ */ (0,
|
|
1074
|
-
/* @__PURE__ */ (0,
|
|
1427
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_lucide_react4.ChevronRightIcon, {}),
|
|
1428
|
+
/* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "sr-only", children: "Next slide" })
|
|
1075
1429
|
]
|
|
1076
1430
|
}
|
|
1077
1431
|
);
|
|
@@ -1080,9 +1434,9 @@ function CarouselNext({
|
|
|
1080
1434
|
// src/ui/checkbox.tsx
|
|
1081
1435
|
var import_checkbox = require("@base-ui/react/checkbox");
|
|
1082
1436
|
var import_lucide_react5 = require("lucide-react");
|
|
1083
|
-
var
|
|
1437
|
+
var import_jsx_runtime15 = require("react/jsx-runtime");
|
|
1084
1438
|
function Checkbox({ className, ...props }) {
|
|
1085
|
-
return /* @__PURE__ */ (0,
|
|
1439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1086
1440
|
import_checkbox.Checkbox.Root,
|
|
1087
1441
|
{
|
|
1088
1442
|
"data-slot": "checkbox",
|
|
@@ -1091,12 +1445,12 @@ function Checkbox({ className, ...props }) {
|
|
|
1091
1445
|
className
|
|
1092
1446
|
),
|
|
1093
1447
|
...props,
|
|
1094
|
-
children: /* @__PURE__ */ (0,
|
|
1448
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
|
|
1095
1449
|
import_checkbox.Checkbox.Indicator,
|
|
1096
1450
|
{
|
|
1097
1451
|
"data-slot": "checkbox-indicator",
|
|
1098
1452
|
className: "flex items-center justify-center text-current",
|
|
1099
|
-
children: /* @__PURE__ */ (0,
|
|
1453
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(import_lucide_react5.CheckIcon, { className: "size-3.5" })
|
|
1100
1454
|
}
|
|
1101
1455
|
)
|
|
1102
1456
|
}
|
|
@@ -1106,18 +1460,18 @@ function Checkbox({ className, ...props }) {
|
|
|
1106
1460
|
// src/ui/collapsible.tsx
|
|
1107
1461
|
var import_collapsible = require("@base-ui/react/collapsible");
|
|
1108
1462
|
var import_lucide_react6 = require("lucide-react");
|
|
1109
|
-
var
|
|
1463
|
+
var import_jsx_runtime16 = require("react/jsx-runtime");
|
|
1110
1464
|
function Collapsible({
|
|
1111
1465
|
...props
|
|
1112
1466
|
}) {
|
|
1113
|
-
return /* @__PURE__ */ (0,
|
|
1467
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_collapsible.Collapsible.Root, { "data-slot": "collapsible", ...props });
|
|
1114
1468
|
}
|
|
1115
1469
|
function CollapsibleTrigger({
|
|
1116
1470
|
className,
|
|
1117
1471
|
children,
|
|
1118
1472
|
...props
|
|
1119
1473
|
}) {
|
|
1120
|
-
return /* @__PURE__ */ (0,
|
|
1474
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
|
|
1121
1475
|
import_collapsible.Collapsible.Trigger,
|
|
1122
1476
|
{
|
|
1123
1477
|
"data-slot": "collapsible-trigger",
|
|
@@ -1128,7 +1482,7 @@ function CollapsibleTrigger({
|
|
|
1128
1482
|
...props,
|
|
1129
1483
|
children: [
|
|
1130
1484
|
children,
|
|
1131
|
-
/* @__PURE__ */ (0,
|
|
1485
|
+
/* @__PURE__ */ (0, import_jsx_runtime16.jsx)(import_lucide_react6.ChevronDownIcon, { className: "pointer-events-none size-4 shrink-0 text-muted-foreground transition-transform duration-200" })
|
|
1132
1486
|
]
|
|
1133
1487
|
}
|
|
1134
1488
|
);
|
|
@@ -1137,7 +1491,7 @@ function CollapsibleContent({
|
|
|
1137
1491
|
className,
|
|
1138
1492
|
...props
|
|
1139
1493
|
}) {
|
|
1140
|
-
return /* @__PURE__ */ (0,
|
|
1494
|
+
return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
|
|
1141
1495
|
import_collapsible.Collapsible.Panel,
|
|
1142
1496
|
{
|
|
1143
1497
|
"data-slot": "collapsible-content",
|
|
@@ -1155,16 +1509,16 @@ var import_lucide_react7 = require("lucide-react");
|
|
|
1155
1509
|
|
|
1156
1510
|
// src/ui/popover.tsx
|
|
1157
1511
|
var import_popover = require("@base-ui/react/popover");
|
|
1158
|
-
var
|
|
1512
|
+
var import_jsx_runtime17 = require("react/jsx-runtime");
|
|
1159
1513
|
function Popover({
|
|
1160
1514
|
...props
|
|
1161
1515
|
}) {
|
|
1162
|
-
return /* @__PURE__ */ (0,
|
|
1516
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_popover.Popover.Root, { "data-slot": "popover", ...props });
|
|
1163
1517
|
}
|
|
1164
1518
|
function PopoverTrigger({
|
|
1165
1519
|
...props
|
|
1166
1520
|
}) {
|
|
1167
|
-
return /* @__PURE__ */ (0,
|
|
1521
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_popover.Popover.Trigger, { "data-slot": "popover-trigger", ...props });
|
|
1168
1522
|
}
|
|
1169
1523
|
function PopoverContent({
|
|
1170
1524
|
className,
|
|
@@ -1174,7 +1528,7 @@ function PopoverContent({
|
|
|
1174
1528
|
anchor,
|
|
1175
1529
|
...props
|
|
1176
1530
|
}) {
|
|
1177
|
-
return /* @__PURE__ */ (0,
|
|
1531
|
+
return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(import_popover.Popover.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1178
1532
|
import_popover.Popover.Positioner,
|
|
1179
1533
|
{
|
|
1180
1534
|
align,
|
|
@@ -1182,12 +1536,12 @@ function PopoverContent({
|
|
|
1182
1536
|
sideOffset,
|
|
1183
1537
|
anchor,
|
|
1184
1538
|
className: "isolate z-50",
|
|
1185
|
-
children: /* @__PURE__ */ (0,
|
|
1539
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
|
|
1186
1540
|
import_popover.Popover.Popup,
|
|
1187
1541
|
{
|
|
1188
1542
|
"data-slot": "popover-content",
|
|
1189
1543
|
className: cn(
|
|
1190
|
-
"z-50 w-72 rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md outline-none duration-200 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",
|
|
1544
|
+
"z-50 w-72 rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md shadow-(color:--shadow-color) outline-none duration-200 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",
|
|
1191
1545
|
className
|
|
1192
1546
|
),
|
|
1193
1547
|
...props
|
|
@@ -1198,20 +1552,20 @@ function PopoverContent({
|
|
|
1198
1552
|
}
|
|
1199
1553
|
|
|
1200
1554
|
// src/ui/combobox.tsx
|
|
1201
|
-
var
|
|
1555
|
+
var import_jsx_runtime18 = require("react/jsx-runtime");
|
|
1202
1556
|
function Combobox({
|
|
1203
1557
|
open,
|
|
1204
1558
|
onOpenChange,
|
|
1205
1559
|
children
|
|
1206
1560
|
}) {
|
|
1207
|
-
return /* @__PURE__ */ (0,
|
|
1561
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Popover, { open, onOpenChange: (next) => onOpenChange?.(next), children });
|
|
1208
1562
|
}
|
|
1209
1563
|
function ComboboxTrigger({
|
|
1210
1564
|
className,
|
|
1211
1565
|
children,
|
|
1212
1566
|
...props
|
|
1213
1567
|
}) {
|
|
1214
|
-
return /* @__PURE__ */ (0,
|
|
1568
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
|
|
1215
1569
|
PopoverTrigger,
|
|
1216
1570
|
{
|
|
1217
1571
|
"data-slot": "combobox-trigger",
|
|
@@ -1221,8 +1575,8 @@ function ComboboxTrigger({
|
|
|
1221
1575
|
),
|
|
1222
1576
|
...props,
|
|
1223
1577
|
children: [
|
|
1224
|
-
/* @__PURE__ */ (0,
|
|
1225
|
-
/* @__PURE__ */ (0,
|
|
1578
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 flex-1 truncate text-left", children }),
|
|
1579
|
+
/* @__PURE__ */ (0, import_jsx_runtime18.jsx)(import_lucide_react7.ChevronsUpDownIcon, { className: "size-4 shrink-0 opacity-50" })
|
|
1226
1580
|
]
|
|
1227
1581
|
}
|
|
1228
1582
|
);
|
|
@@ -1232,7 +1586,7 @@ function ComboboxContent({
|
|
|
1232
1586
|
children,
|
|
1233
1587
|
...props
|
|
1234
1588
|
}) {
|
|
1235
|
-
return /* @__PURE__ */ (0,
|
|
1589
|
+
return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
|
|
1236
1590
|
PopoverContent,
|
|
1237
1591
|
{
|
|
1238
1592
|
"data-slot": "combobox-content",
|
|
@@ -1246,12 +1600,12 @@ function ComboboxContent({
|
|
|
1246
1600
|
// src/ui/command.tsx
|
|
1247
1601
|
var import_cmdk = require("cmdk");
|
|
1248
1602
|
var import_lucide_react8 = require("lucide-react");
|
|
1249
|
-
var
|
|
1603
|
+
var import_jsx_runtime19 = require("react/jsx-runtime");
|
|
1250
1604
|
function Command({
|
|
1251
1605
|
className,
|
|
1252
1606
|
...props
|
|
1253
1607
|
}) {
|
|
1254
|
-
return /* @__PURE__ */ (0,
|
|
1608
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1255
1609
|
import_cmdk.Command,
|
|
1256
1610
|
{
|
|
1257
1611
|
"data-slot": "command",
|
|
@@ -1267,14 +1621,14 @@ function CommandInput({
|
|
|
1267
1621
|
className,
|
|
1268
1622
|
...props
|
|
1269
1623
|
}) {
|
|
1270
|
-
return /* @__PURE__ */ (0,
|
|
1624
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
|
|
1271
1625
|
"div",
|
|
1272
1626
|
{
|
|
1273
1627
|
"data-slot": "command-input-wrapper",
|
|
1274
1628
|
className: "flex items-center gap-2 border-b border-border px-3",
|
|
1275
1629
|
children: [
|
|
1276
|
-
/* @__PURE__ */ (0,
|
|
1277
|
-
/* @__PURE__ */ (0,
|
|
1630
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react8.SearchIcon, { className: "size-4 shrink-0 opacity-50" }),
|
|
1631
|
+
/* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1278
1632
|
import_cmdk.Command.Input,
|
|
1279
1633
|
{
|
|
1280
1634
|
"data-slot": "command-input",
|
|
@@ -1293,7 +1647,7 @@ function CommandList({
|
|
|
1293
1647
|
className,
|
|
1294
1648
|
...props
|
|
1295
1649
|
}) {
|
|
1296
|
-
return /* @__PURE__ */ (0,
|
|
1650
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1297
1651
|
import_cmdk.Command.List,
|
|
1298
1652
|
{
|
|
1299
1653
|
"data-slot": "command-list",
|
|
@@ -1308,7 +1662,7 @@ function CommandList({
|
|
|
1308
1662
|
function CommandEmpty({
|
|
1309
1663
|
...props
|
|
1310
1664
|
}) {
|
|
1311
|
-
return /* @__PURE__ */ (0,
|
|
1665
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1312
1666
|
import_cmdk.Command.Empty,
|
|
1313
1667
|
{
|
|
1314
1668
|
"data-slot": "command-empty",
|
|
@@ -1321,7 +1675,7 @@ function CommandGroup({
|
|
|
1321
1675
|
className,
|
|
1322
1676
|
...props
|
|
1323
1677
|
}) {
|
|
1324
|
-
return /* @__PURE__ */ (0,
|
|
1678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1325
1679
|
import_cmdk.Command.Group,
|
|
1326
1680
|
{
|
|
1327
1681
|
"data-slot": "command-group",
|
|
@@ -1337,12 +1691,12 @@ function CommandItem({
|
|
|
1337
1691
|
className,
|
|
1338
1692
|
...props
|
|
1339
1693
|
}) {
|
|
1340
|
-
return /* @__PURE__ */ (0,
|
|
1694
|
+
return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
|
|
1341
1695
|
import_cmdk.Command.Item,
|
|
1342
1696
|
{
|
|
1343
1697
|
"data-slot": "command-item",
|
|
1344
1698
|
className: cn(
|
|
1345
|
-
"relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-
|
|
1699
|
+
"relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none select-none data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-[selected=true]:bg-(--menu-active-background) data-[selected=true]:text-(--menu-active-foreground) [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1346
1700
|
className
|
|
1347
1701
|
),
|
|
1348
1702
|
...props
|
|
@@ -1352,27 +1706,27 @@ function CommandItem({
|
|
|
1352
1706
|
|
|
1353
1707
|
// src/ui/context-menu.tsx
|
|
1354
1708
|
var import_context_menu = require("@base-ui/react/context-menu");
|
|
1355
|
-
var
|
|
1709
|
+
var import_jsx_runtime20 = require("react/jsx-runtime");
|
|
1356
1710
|
function ContextMenu({
|
|
1357
1711
|
...props
|
|
1358
1712
|
}) {
|
|
1359
|
-
return /* @__PURE__ */ (0,
|
|
1713
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_context_menu.ContextMenu.Root, { "data-slot": "context-menu", ...props });
|
|
1360
1714
|
}
|
|
1361
1715
|
function ContextMenuTrigger({
|
|
1362
1716
|
...props
|
|
1363
1717
|
}) {
|
|
1364
|
-
return /* @__PURE__ */ (0,
|
|
1718
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_context_menu.ContextMenu.Trigger, { "data-slot": "context-menu-trigger", ...props });
|
|
1365
1719
|
}
|
|
1366
1720
|
function ContextMenuContent({
|
|
1367
1721
|
className,
|
|
1368
1722
|
...props
|
|
1369
1723
|
}) {
|
|
1370
|
-
return /* @__PURE__ */ (0,
|
|
1724
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_context_menu.ContextMenu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_context_menu.ContextMenu.Positioner, { className: "isolate z-50", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1371
1725
|
import_context_menu.ContextMenu.Popup,
|
|
1372
1726
|
{
|
|
1373
1727
|
"data-slot": "context-menu-content",
|
|
1374
1728
|
className: cn(
|
|
1375
|
-
"z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md duration-200 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",
|
|
1729
|
+
"z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
1376
1730
|
className
|
|
1377
1731
|
),
|
|
1378
1732
|
...props
|
|
@@ -1384,13 +1738,13 @@ function ContextMenuItem({
|
|
|
1384
1738
|
variant = "default",
|
|
1385
1739
|
...props
|
|
1386
1740
|
}) {
|
|
1387
|
-
return /* @__PURE__ */ (0,
|
|
1741
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1388
1742
|
import_context_menu.ContextMenu.Item,
|
|
1389
1743
|
{
|
|
1390
1744
|
"data-slot": "context-menu-item",
|
|
1391
1745
|
"data-variant": variant,
|
|
1392
1746
|
className: cn(
|
|
1393
|
-
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-
|
|
1747
|
+
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1394
1748
|
className
|
|
1395
1749
|
),
|
|
1396
1750
|
...props
|
|
@@ -1401,7 +1755,7 @@ function ContextMenuSeparator({
|
|
|
1401
1755
|
className,
|
|
1402
1756
|
...props
|
|
1403
1757
|
}) {
|
|
1404
|
-
return /* @__PURE__ */ (0,
|
|
1758
|
+
return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
|
|
1405
1759
|
import_context_menu.ContextMenu.Separator,
|
|
1406
1760
|
{
|
|
1407
1761
|
"data-slot": "context-menu-separator",
|
|
@@ -1413,36 +1767,36 @@ function ContextMenuSeparator({
|
|
|
1413
1767
|
|
|
1414
1768
|
// src/ui/drawer.tsx
|
|
1415
1769
|
var import_vaul = require("vaul");
|
|
1416
|
-
var
|
|
1770
|
+
var import_jsx_runtime21 = require("react/jsx-runtime");
|
|
1417
1771
|
function Drawer({
|
|
1418
1772
|
...props
|
|
1419
1773
|
}) {
|
|
1420
|
-
return /* @__PURE__ */ (0,
|
|
1774
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_vaul.Drawer.Root, { "data-slot": "drawer", ...props });
|
|
1421
1775
|
}
|
|
1422
1776
|
function DrawerTrigger({
|
|
1423
1777
|
...props
|
|
1424
1778
|
}) {
|
|
1425
|
-
return /* @__PURE__ */ (0,
|
|
1779
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_vaul.Drawer.Trigger, { "data-slot": "drawer-trigger", ...props });
|
|
1426
1780
|
}
|
|
1427
1781
|
function DrawerPortal({
|
|
1428
1782
|
...props
|
|
1429
1783
|
}) {
|
|
1430
|
-
return /* @__PURE__ */ (0,
|
|
1784
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_vaul.Drawer.Portal, { "data-slot": "drawer-portal", ...props });
|
|
1431
1785
|
}
|
|
1432
1786
|
function DrawerClose({
|
|
1433
1787
|
...props
|
|
1434
1788
|
}) {
|
|
1435
|
-
return /* @__PURE__ */ (0,
|
|
1789
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_vaul.Drawer.Close, { "data-slot": "drawer-close", ...props });
|
|
1436
1790
|
}
|
|
1437
1791
|
function DrawerOverlay({
|
|
1438
1792
|
className,
|
|
1439
1793
|
...props
|
|
1440
1794
|
}) {
|
|
1441
|
-
return /* @__PURE__ */ (0,
|
|
1795
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1442
1796
|
import_vaul.Drawer.Overlay,
|
|
1443
1797
|
{
|
|
1444
1798
|
"data-slot": "drawer-overlay",
|
|
1445
|
-
className: cn("fixed inset-0 z-50 bg-
|
|
1799
|
+
className: cn("fixed inset-0 z-50 bg-(--overlay-background)", className),
|
|
1446
1800
|
...props
|
|
1447
1801
|
}
|
|
1448
1802
|
);
|
|
@@ -1452,14 +1806,14 @@ function DrawerContent({
|
|
|
1452
1806
|
children,
|
|
1453
1807
|
...props
|
|
1454
1808
|
}) {
|
|
1455
|
-
return /* @__PURE__ */ (0,
|
|
1456
|
-
/* @__PURE__ */ (0,
|
|
1457
|
-
/* @__PURE__ */ (0,
|
|
1809
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(DrawerPortal, { "data-slot": "drawer-portal", children: [
|
|
1810
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DrawerOverlay, {}),
|
|
1811
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
|
|
1458
1812
|
import_vaul.Drawer.Content,
|
|
1459
1813
|
{
|
|
1460
1814
|
"data-slot": "drawer-content",
|
|
1461
1815
|
className: cn(
|
|
1462
|
-
"group/drawer-content fixed z-50 flex h-auto flex-col border-border bg-
|
|
1816
|
+
"group/drawer-content fixed z-50 flex h-auto flex-col border-border bg-popover",
|
|
1463
1817
|
"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-b-lg data-[vaul-drawer-direction=top]:border-b",
|
|
1464
1818
|
"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-t-lg data-[vaul-drawer-direction=bottom]:border-t",
|
|
1465
1819
|
"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]:border-l data-[vaul-drawer-direction=right]:sm:max-w-sm",
|
|
@@ -1468,7 +1822,7 @@ function DrawerContent({
|
|
|
1468
1822
|
),
|
|
1469
1823
|
...props,
|
|
1470
1824
|
children: [
|
|
1471
|
-
/* @__PURE__ */ (0,
|
|
1825
|
+
/* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "mx-auto mt-4 hidden h-2 w-[100px] shrink-0 rounded-full bg-muted group-data-[vaul-drawer-direction=bottom]/drawer-content:block" }),
|
|
1472
1826
|
children
|
|
1473
1827
|
]
|
|
1474
1828
|
}
|
|
@@ -1476,7 +1830,7 @@ function DrawerContent({
|
|
|
1476
1830
|
] });
|
|
1477
1831
|
}
|
|
1478
1832
|
function DrawerHeader({ className, ...props }) {
|
|
1479
|
-
return /* @__PURE__ */ (0,
|
|
1833
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1480
1834
|
"div",
|
|
1481
1835
|
{
|
|
1482
1836
|
"data-slot": "drawer-header",
|
|
@@ -1486,7 +1840,7 @@ function DrawerHeader({ className, ...props }) {
|
|
|
1486
1840
|
);
|
|
1487
1841
|
}
|
|
1488
1842
|
function DrawerFooter({ className, ...props }) {
|
|
1489
|
-
return /* @__PURE__ */ (0,
|
|
1843
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1490
1844
|
"div",
|
|
1491
1845
|
{
|
|
1492
1846
|
"data-slot": "drawer-footer",
|
|
@@ -1499,7 +1853,7 @@ function DrawerTitle({
|
|
|
1499
1853
|
className,
|
|
1500
1854
|
...props
|
|
1501
1855
|
}) {
|
|
1502
|
-
return /* @__PURE__ */ (0,
|
|
1856
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1503
1857
|
import_vaul.Drawer.Title,
|
|
1504
1858
|
{
|
|
1505
1859
|
"data-slot": "drawer-title",
|
|
@@ -1512,7 +1866,7 @@ function DrawerDescription({
|
|
|
1512
1866
|
className,
|
|
1513
1867
|
...props
|
|
1514
1868
|
}) {
|
|
1515
|
-
return /* @__PURE__ */ (0,
|
|
1869
|
+
return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
|
|
1516
1870
|
import_vaul.Drawer.Description,
|
|
1517
1871
|
{
|
|
1518
1872
|
"data-slot": "drawer-description",
|
|
@@ -1525,16 +1879,16 @@ function DrawerDescription({
|
|
|
1525
1879
|
// src/ui/dropdown-menu.tsx
|
|
1526
1880
|
var import_menu = require("@base-ui/react/menu");
|
|
1527
1881
|
var import_lucide_react9 = require("lucide-react");
|
|
1528
|
-
var
|
|
1882
|
+
var import_jsx_runtime22 = require("react/jsx-runtime");
|
|
1529
1883
|
function DropdownMenu({
|
|
1530
1884
|
...props
|
|
1531
1885
|
}) {
|
|
1532
|
-
return /* @__PURE__ */ (0,
|
|
1886
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.Root, { "data-slot": "dropdown-menu", ...props });
|
|
1533
1887
|
}
|
|
1534
1888
|
function DropdownMenuTrigger({
|
|
1535
1889
|
...props
|
|
1536
1890
|
}) {
|
|
1537
|
-
return /* @__PURE__ */ (0,
|
|
1891
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.Trigger, { "data-slot": "dropdown-menu-trigger", ...props });
|
|
1538
1892
|
}
|
|
1539
1893
|
function DropdownMenuContent({
|
|
1540
1894
|
className,
|
|
@@ -1543,19 +1897,19 @@ function DropdownMenuContent({
|
|
|
1543
1897
|
sideOffset = 4,
|
|
1544
1898
|
...props
|
|
1545
1899
|
}) {
|
|
1546
|
-
return /* @__PURE__ */ (0,
|
|
1900
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1547
1901
|
import_menu.Menu.Positioner,
|
|
1548
1902
|
{
|
|
1549
1903
|
align,
|
|
1550
1904
|
side,
|
|
1551
1905
|
sideOffset,
|
|
1552
1906
|
className: "isolate z-50",
|
|
1553
|
-
children: /* @__PURE__ */ (0,
|
|
1907
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1554
1908
|
import_menu.Menu.Popup,
|
|
1555
1909
|
{
|
|
1556
1910
|
"data-slot": "dropdown-menu-content",
|
|
1557
1911
|
className: cn(
|
|
1558
|
-
"z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md duration-200 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",
|
|
1912
|
+
"z-50 max-h-(--available-height) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
1559
1913
|
className
|
|
1560
1914
|
),
|
|
1561
1915
|
...props
|
|
@@ -1569,13 +1923,13 @@ function DropdownMenuItem({
|
|
|
1569
1923
|
variant = "default",
|
|
1570
1924
|
...props
|
|
1571
1925
|
}) {
|
|
1572
|
-
return /* @__PURE__ */ (0,
|
|
1926
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1573
1927
|
import_menu.Menu.Item,
|
|
1574
1928
|
{
|
|
1575
1929
|
"data-slot": "dropdown-menu-item",
|
|
1576
1930
|
"data-variant": variant,
|
|
1577
1931
|
className: cn(
|
|
1578
|
-
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-
|
|
1932
|
+
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1579
1933
|
className
|
|
1580
1934
|
),
|
|
1581
1935
|
...props
|
|
@@ -1586,7 +1940,7 @@ function DropdownMenuSeparator({
|
|
|
1586
1940
|
className,
|
|
1587
1941
|
...props
|
|
1588
1942
|
}) {
|
|
1589
|
-
return /* @__PURE__ */ (0,
|
|
1943
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1590
1944
|
import_menu.Menu.Separator,
|
|
1591
1945
|
{
|
|
1592
1946
|
"data-slot": "dropdown-menu-separator",
|
|
@@ -1598,25 +1952,25 @@ function DropdownMenuSeparator({
|
|
|
1598
1952
|
function DropdownMenuSub({
|
|
1599
1953
|
...props
|
|
1600
1954
|
}) {
|
|
1601
|
-
return /* @__PURE__ */ (0,
|
|
1955
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.SubmenuRoot, { "data-slot": "dropdown-menu-sub", ...props });
|
|
1602
1956
|
}
|
|
1603
1957
|
function DropdownMenuSubTrigger({
|
|
1604
1958
|
className,
|
|
1605
1959
|
children,
|
|
1606
1960
|
...props
|
|
1607
1961
|
}) {
|
|
1608
|
-
return /* @__PURE__ */ (0,
|
|
1962
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
|
|
1609
1963
|
import_menu.Menu.SubmenuTrigger,
|
|
1610
1964
|
{
|
|
1611
1965
|
"data-slot": "dropdown-menu-sub-trigger",
|
|
1612
1966
|
className: cn(
|
|
1613
|
-
"flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-
|
|
1967
|
+
"flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-open:bg-(--menu-active-background) data-open:text-(--menu-active-foreground) [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1614
1968
|
className
|
|
1615
1969
|
),
|
|
1616
1970
|
...props,
|
|
1617
1971
|
children: [
|
|
1618
1972
|
children,
|
|
1619
|
-
/* @__PURE__ */ (0,
|
|
1973
|
+
/* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react9.ChevronRightIcon, { className: "ml-auto" })
|
|
1620
1974
|
]
|
|
1621
1975
|
}
|
|
1622
1976
|
);
|
|
@@ -1626,12 +1980,12 @@ function DropdownMenuSubContent({
|
|
|
1626
1980
|
sideOffset = 2,
|
|
1627
1981
|
...props
|
|
1628
1982
|
}) {
|
|
1629
|
-
return /* @__PURE__ */ (0,
|
|
1983
|
+
return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_menu.Menu.Positioner, { sideOffset, className: "isolate z-50", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
|
|
1630
1984
|
import_menu.Menu.Popup,
|
|
1631
1985
|
{
|
|
1632
1986
|
"data-slot": "dropdown-menu-sub-content",
|
|
1633
1987
|
className: cn(
|
|
1634
|
-
"z-50 min-w-32 origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md duration-200 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",
|
|
1988
|
+
"z-50 min-w-32 origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
1635
1989
|
className
|
|
1636
1990
|
),
|
|
1637
1991
|
...props
|
|
@@ -1641,16 +1995,16 @@ function DropdownMenuSubContent({
|
|
|
1641
1995
|
|
|
1642
1996
|
// src/ui/hover-card.tsx
|
|
1643
1997
|
var import_preview_card = require("@base-ui/react/preview-card");
|
|
1644
|
-
var
|
|
1998
|
+
var import_jsx_runtime23 = require("react/jsx-runtime");
|
|
1645
1999
|
function HoverCard({
|
|
1646
2000
|
...props
|
|
1647
2001
|
}) {
|
|
1648
|
-
return /* @__PURE__ */ (0,
|
|
2002
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_preview_card.PreviewCard.Root, { "data-slot": "hover-card", ...props });
|
|
1649
2003
|
}
|
|
1650
2004
|
function HoverCardTrigger({
|
|
1651
2005
|
...props
|
|
1652
2006
|
}) {
|
|
1653
|
-
return /* @__PURE__ */ (0,
|
|
2007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_preview_card.PreviewCard.Trigger, { "data-slot": "hover-card-trigger", ...props });
|
|
1654
2008
|
}
|
|
1655
2009
|
function HoverCardContent({
|
|
1656
2010
|
className,
|
|
@@ -1659,19 +2013,19 @@ function HoverCardContent({
|
|
|
1659
2013
|
sideOffset = 4,
|
|
1660
2014
|
...props
|
|
1661
2015
|
}) {
|
|
1662
|
-
return /* @__PURE__ */ (0,
|
|
2016
|
+
return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_preview_card.PreviewCard.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1663
2017
|
import_preview_card.PreviewCard.Positioner,
|
|
1664
2018
|
{
|
|
1665
2019
|
align,
|
|
1666
2020
|
side,
|
|
1667
2021
|
sideOffset,
|
|
1668
2022
|
className: "isolate z-50",
|
|
1669
|
-
children: /* @__PURE__ */ (0,
|
|
2023
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
|
|
1670
2024
|
import_preview_card.PreviewCard.Popup,
|
|
1671
2025
|
{
|
|
1672
2026
|
"data-slot": "hover-card-content",
|
|
1673
2027
|
className: cn(
|
|
1674
|
-
"z-50 w-64 origin-(--transform-origin) rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md outline-hidden duration-200 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",
|
|
2028
|
+
"z-50 w-64 origin-(--transform-origin) rounded-md border border-border bg-popover p-4 text-popover-foreground shadow-md shadow-(color:--shadow-color) outline-hidden duration-200 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",
|
|
1675
2029
|
className
|
|
1676
2030
|
),
|
|
1677
2031
|
...props
|
|
@@ -1684,17 +2038,17 @@ function HoverCardContent({
|
|
|
1684
2038
|
// src/ui/menubar.tsx
|
|
1685
2039
|
var import_menu2 = require("@base-ui/react/menu");
|
|
1686
2040
|
var import_menubar = require("@base-ui/react/menubar");
|
|
1687
|
-
var
|
|
2041
|
+
var import_jsx_runtime24 = require("react/jsx-runtime");
|
|
1688
2042
|
function Menubar({
|
|
1689
2043
|
className,
|
|
1690
2044
|
...props
|
|
1691
2045
|
}) {
|
|
1692
|
-
return /* @__PURE__ */ (0,
|
|
2046
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1693
2047
|
import_menubar.Menubar,
|
|
1694
2048
|
{
|
|
1695
2049
|
"data-slot": "menubar",
|
|
1696
2050
|
className: cn(
|
|
1697
|
-
"flex h-9 items-center gap-1 rounded-md border border-border bg-
|
|
2051
|
+
"flex h-9 items-center gap-1 rounded-md border border-border bg-card p-1 shadow-xs",
|
|
1698
2052
|
className
|
|
1699
2053
|
),
|
|
1700
2054
|
...props
|
|
@@ -1704,18 +2058,18 @@ function Menubar({
|
|
|
1704
2058
|
function MenubarMenu({
|
|
1705
2059
|
...props
|
|
1706
2060
|
}) {
|
|
1707
|
-
return /* @__PURE__ */ (0,
|
|
2061
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_menu2.Menu.Root, { "data-slot": "menubar-menu", ...props });
|
|
1708
2062
|
}
|
|
1709
2063
|
function MenubarTrigger({
|
|
1710
2064
|
className,
|
|
1711
2065
|
...props
|
|
1712
2066
|
}) {
|
|
1713
|
-
return /* @__PURE__ */ (0,
|
|
2067
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1714
2068
|
import_menu2.Menu.Trigger,
|
|
1715
2069
|
{
|
|
1716
2070
|
"data-slot": "menubar-trigger",
|
|
1717
2071
|
className: cn(
|
|
1718
|
-
"flex cursor-pointer items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none hover:bg-
|
|
2072
|
+
"flex cursor-pointer items-center rounded-sm px-2 py-1 text-sm font-medium outline-hidden select-none hover:bg-(--menu-hover-background) hover:text-(--menu-hover-foreground) focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-open:bg-(--menu-active-background) data-open:text-(--menu-active-foreground)",
|
|
1719
2073
|
className
|
|
1720
2074
|
),
|
|
1721
2075
|
...props
|
|
@@ -1729,19 +2083,19 @@ function MenubarContent({
|
|
|
1729
2083
|
sideOffset = 8,
|
|
1730
2084
|
...props
|
|
1731
2085
|
}) {
|
|
1732
|
-
return /* @__PURE__ */ (0,
|
|
2086
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_menu2.Menu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1733
2087
|
import_menu2.Menu.Positioner,
|
|
1734
2088
|
{
|
|
1735
2089
|
align,
|
|
1736
2090
|
side,
|
|
1737
2091
|
sideOffset,
|
|
1738
2092
|
className: "isolate z-50",
|
|
1739
|
-
children: /* @__PURE__ */ (0,
|
|
2093
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1740
2094
|
import_menu2.Menu.Popup,
|
|
1741
2095
|
{
|
|
1742
2096
|
"data-slot": "menubar-content",
|
|
1743
2097
|
className: cn(
|
|
1744
|
-
"z-50 min-w-36 origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md duration-200 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",
|
|
2098
|
+
"z-50 min-w-36 origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover p-1 text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
1745
2099
|
className
|
|
1746
2100
|
),
|
|
1747
2101
|
...props
|
|
@@ -1755,13 +2109,13 @@ function MenubarItem({
|
|
|
1755
2109
|
variant = "default",
|
|
1756
2110
|
...props
|
|
1757
2111
|
}) {
|
|
1758
|
-
return /* @__PURE__ */ (0,
|
|
2112
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1759
2113
|
import_menu2.Menu.Item,
|
|
1760
2114
|
{
|
|
1761
2115
|
"data-slot": "menubar-item",
|
|
1762
2116
|
"data-variant": variant,
|
|
1763
2117
|
className: cn(
|
|
1764
|
-
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-
|
|
2118
|
+
"relative flex cursor-pointer items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
1765
2119
|
className
|
|
1766
2120
|
),
|
|
1767
2121
|
...props
|
|
@@ -1772,7 +2126,7 @@ function MenubarSeparator({
|
|
|
1772
2126
|
className,
|
|
1773
2127
|
...props
|
|
1774
2128
|
}) {
|
|
1775
|
-
return /* @__PURE__ */ (0,
|
|
2129
|
+
return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
|
|
1776
2130
|
import_menu2.Menu.Separator,
|
|
1777
2131
|
{
|
|
1778
2132
|
"data-slot": "menubar-separator",
|
|
@@ -1785,14 +2139,14 @@ function MenubarSeparator({
|
|
|
1785
2139
|
// src/ui/navigation-menu.tsx
|
|
1786
2140
|
var import_navigation_menu = require("@base-ui/react/navigation-menu");
|
|
1787
2141
|
var import_lucide_react10 = require("lucide-react");
|
|
1788
|
-
var
|
|
1789
|
-
var
|
|
2142
|
+
var import_class_variance_authority6 = require("class-variance-authority");
|
|
2143
|
+
var import_jsx_runtime25 = require("react/jsx-runtime");
|
|
1790
2144
|
function NavigationMenu({
|
|
1791
2145
|
className,
|
|
1792
2146
|
children,
|
|
1793
2147
|
...props
|
|
1794
2148
|
}) {
|
|
1795
|
-
return /* @__PURE__ */ (0,
|
|
2149
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
1796
2150
|
import_navigation_menu.NavigationMenu.Root,
|
|
1797
2151
|
{
|
|
1798
2152
|
"data-slot": "navigation-menu",
|
|
@@ -1800,7 +2154,7 @@ function NavigationMenu({
|
|
|
1800
2154
|
...props,
|
|
1801
2155
|
children: [
|
|
1802
2156
|
children,
|
|
1803
|
-
/* @__PURE__ */ (0,
|
|
2157
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(NavigationMenuViewport, {})
|
|
1804
2158
|
]
|
|
1805
2159
|
}
|
|
1806
2160
|
);
|
|
@@ -1809,7 +2163,7 @@ function NavigationMenuList({
|
|
|
1809
2163
|
className,
|
|
1810
2164
|
...props
|
|
1811
2165
|
}) {
|
|
1812
|
-
return /* @__PURE__ */ (0,
|
|
2166
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1813
2167
|
import_navigation_menu.NavigationMenu.List,
|
|
1814
2168
|
{
|
|
1815
2169
|
"data-slot": "navigation-menu-list",
|
|
@@ -1822,7 +2176,7 @@ function NavigationMenuItem({
|
|
|
1822
2176
|
className,
|
|
1823
2177
|
...props
|
|
1824
2178
|
}) {
|
|
1825
|
-
return /* @__PURE__ */ (0,
|
|
2179
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1826
2180
|
import_navigation_menu.NavigationMenu.Item,
|
|
1827
2181
|
{
|
|
1828
2182
|
"data-slot": "navigation-menu-item",
|
|
@@ -1831,15 +2185,15 @@ function NavigationMenuItem({
|
|
|
1831
2185
|
}
|
|
1832
2186
|
);
|
|
1833
2187
|
}
|
|
1834
|
-
var navigationMenuTriggerStyle = (0,
|
|
1835
|
-
"group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center rounded-md bg-
|
|
2188
|
+
var navigationMenuTriggerStyle = (0, import_class_variance_authority6.cva)(
|
|
2189
|
+
"group/navigation-menu-trigger inline-flex h-9 w-max items-center justify-center rounded-md bg-transparent px-4 py-2 text-sm font-medium transition-colors hover:bg-(--menu-hover-background) hover:text-(--menu-hover-foreground) focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none disabled:pointer-events-none disabled:opacity-50 data-open:bg-(--menu-active-background)/50 data-open:text-(--menu-active-foreground)"
|
|
1836
2190
|
);
|
|
1837
2191
|
function NavigationMenuTrigger({
|
|
1838
2192
|
className,
|
|
1839
2193
|
children,
|
|
1840
2194
|
...props
|
|
1841
2195
|
}) {
|
|
1842
|
-
return /* @__PURE__ */ (0,
|
|
2196
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
|
|
1843
2197
|
import_navigation_menu.NavigationMenu.Trigger,
|
|
1844
2198
|
{
|
|
1845
2199
|
"data-slot": "navigation-menu-trigger",
|
|
@@ -1847,7 +2201,7 @@ function NavigationMenuTrigger({
|
|
|
1847
2201
|
...props,
|
|
1848
2202
|
children: [
|
|
1849
2203
|
children,
|
|
1850
|
-
/* @__PURE__ */ (0,
|
|
2204
|
+
/* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1851
2205
|
import_lucide_react10.ChevronDownIcon,
|
|
1852
2206
|
{
|
|
1853
2207
|
className: "relative top-px ml-1 size-3 transition-transform duration-200 group-data-open/navigation-menu-trigger:rotate-180",
|
|
@@ -1862,7 +2216,7 @@ function NavigationMenuContent({
|
|
|
1862
2216
|
className,
|
|
1863
2217
|
...props
|
|
1864
2218
|
}) {
|
|
1865
|
-
return /* @__PURE__ */ (0,
|
|
2219
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1866
2220
|
import_navigation_menu.NavigationMenu.Content,
|
|
1867
2221
|
{
|
|
1868
2222
|
"data-slot": "navigation-menu-content",
|
|
@@ -1875,21 +2229,21 @@ function NavigationMenuContent({
|
|
|
1875
2229
|
);
|
|
1876
2230
|
}
|
|
1877
2231
|
function NavigationMenuViewport({ className }) {
|
|
1878
|
-
return /* @__PURE__ */ (0,
|
|
2232
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_navigation_menu.NavigationMenu.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1879
2233
|
import_navigation_menu.NavigationMenu.Positioner,
|
|
1880
2234
|
{
|
|
1881
2235
|
side: "bottom",
|
|
1882
2236
|
align: "start",
|
|
1883
2237
|
className: "isolate z-50",
|
|
1884
|
-
children: /* @__PURE__ */ (0,
|
|
2238
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1885
2239
|
import_navigation_menu.NavigationMenu.Popup,
|
|
1886
2240
|
{
|
|
1887
2241
|
"data-slot": "navigation-menu-popup",
|
|
1888
2242
|
className: cn(
|
|
1889
|
-
"origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md duration-200 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",
|
|
2243
|
+
"origin-(--transform-origin) overflow-hidden rounded-md border border-border bg-popover text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
1890
2244
|
className
|
|
1891
2245
|
),
|
|
1892
|
-
children: /* @__PURE__ */ (0,
|
|
2246
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_navigation_menu.NavigationMenu.Viewport, { "data-slot": "navigation-menu-viewport" })
|
|
1893
2247
|
}
|
|
1894
2248
|
)
|
|
1895
2249
|
}
|
|
@@ -1899,12 +2253,12 @@ function NavigationMenuLink({
|
|
|
1899
2253
|
className,
|
|
1900
2254
|
...props
|
|
1901
2255
|
}) {
|
|
1902
|
-
return /* @__PURE__ */ (0,
|
|
2256
|
+
return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
|
|
1903
2257
|
import_navigation_menu.NavigationMenu.Link,
|
|
1904
2258
|
{
|
|
1905
2259
|
"data-slot": "navigation-menu-link",
|
|
1906
2260
|
className: cn(
|
|
1907
|
-
"flex flex-col gap-1 rounded-md p-2 text-sm transition-colors outline-none hover:bg-
|
|
2261
|
+
"flex flex-col gap-1 rounded-md p-2 text-sm transition-colors outline-none hover:bg-(--menu-hover-background) hover:text-(--menu-hover-foreground) focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) focus-visible:ring-[3px] focus-visible:ring-ring/50 data-active:bg-(--menu-active-background)/50 data-active:text-(--menu-active-foreground) [&_svg:not([class*='size-'])]:size-4",
|
|
1908
2262
|
className
|
|
1909
2263
|
),
|
|
1910
2264
|
...props
|
|
@@ -1914,9 +2268,9 @@ function NavigationMenuLink({
|
|
|
1914
2268
|
|
|
1915
2269
|
// src/ui/pagination.tsx
|
|
1916
2270
|
var import_lucide_react11 = require("lucide-react");
|
|
1917
|
-
var
|
|
2271
|
+
var import_jsx_runtime26 = require("react/jsx-runtime");
|
|
1918
2272
|
function Pagination({ className, ...props }) {
|
|
1919
|
-
return /* @__PURE__ */ (0,
|
|
2273
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1920
2274
|
"nav",
|
|
1921
2275
|
{
|
|
1922
2276
|
role: "navigation",
|
|
@@ -1928,7 +2282,7 @@ function Pagination({ className, ...props }) {
|
|
|
1928
2282
|
);
|
|
1929
2283
|
}
|
|
1930
2284
|
function PaginationContent({ className, ...props }) {
|
|
1931
|
-
return /* @__PURE__ */ (0,
|
|
2285
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1932
2286
|
"ul",
|
|
1933
2287
|
{
|
|
1934
2288
|
"data-slot": "pagination-content",
|
|
@@ -1938,7 +2292,7 @@ function PaginationContent({ className, ...props }) {
|
|
|
1938
2292
|
);
|
|
1939
2293
|
}
|
|
1940
2294
|
function PaginationItem({ ...props }) {
|
|
1941
|
-
return /* @__PURE__ */ (0,
|
|
2295
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("li", { "data-slot": "pagination-item", ...props });
|
|
1942
2296
|
}
|
|
1943
2297
|
function PaginationLink({
|
|
1944
2298
|
className,
|
|
@@ -1946,7 +2300,7 @@ function PaginationLink({
|
|
|
1946
2300
|
disabled,
|
|
1947
2301
|
...props
|
|
1948
2302
|
}) {
|
|
1949
|
-
return /* @__PURE__ */ (0,
|
|
2303
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
|
|
1950
2304
|
"a",
|
|
1951
2305
|
{
|
|
1952
2306
|
"aria-current": isActive ? "page" : void 0,
|
|
@@ -1958,6 +2312,7 @@ function PaginationLink({
|
|
|
1958
2312
|
buttonVariants({
|
|
1959
2313
|
variant: isActive ? "outline" : "ghost"
|
|
1960
2314
|
}),
|
|
2315
|
+
isActive && "border-(color:--pagination-active-border) bg-(--pagination-active-background) rounded-(--pagination-active-radius)",
|
|
1961
2316
|
disabled && "pointer-events-none opacity-50",
|
|
1962
2317
|
className
|
|
1963
2318
|
),
|
|
@@ -1969,15 +2324,15 @@ function PaginationPrevious({
|
|
|
1969
2324
|
className,
|
|
1970
2325
|
...props
|
|
1971
2326
|
}) {
|
|
1972
|
-
return /* @__PURE__ */ (0,
|
|
2327
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
1973
2328
|
PaginationLink,
|
|
1974
2329
|
{
|
|
1975
2330
|
"aria-label": "Go to previous page",
|
|
1976
2331
|
className: cn("gap-1 px-2.5 sm:pl-2.5", className),
|
|
1977
2332
|
...props,
|
|
1978
2333
|
children: [
|
|
1979
|
-
/* @__PURE__ */ (0,
|
|
1980
|
-
/* @__PURE__ */ (0,
|
|
2334
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_lucide_react11.ChevronLeftIcon, {}),
|
|
2335
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "hidden sm:block", children: "Previous" })
|
|
1981
2336
|
]
|
|
1982
2337
|
}
|
|
1983
2338
|
);
|
|
@@ -1986,21 +2341,21 @@ function PaginationNext({
|
|
|
1986
2341
|
className,
|
|
1987
2342
|
...props
|
|
1988
2343
|
}) {
|
|
1989
|
-
return /* @__PURE__ */ (0,
|
|
2344
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
1990
2345
|
PaginationLink,
|
|
1991
2346
|
{
|
|
1992
2347
|
"aria-label": "Go to next page",
|
|
1993
2348
|
className: cn("gap-1 px-2.5 sm:pr-2.5", className),
|
|
1994
2349
|
...props,
|
|
1995
2350
|
children: [
|
|
1996
|
-
/* @__PURE__ */ (0,
|
|
1997
|
-
/* @__PURE__ */ (0,
|
|
2351
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "hidden sm:block", children: "Next" }),
|
|
2352
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_lucide_react11.ChevronRightIcon, {})
|
|
1998
2353
|
]
|
|
1999
2354
|
}
|
|
2000
2355
|
);
|
|
2001
2356
|
}
|
|
2002
2357
|
function PaginationEllipsis({ className, ...props }) {
|
|
2003
|
-
return /* @__PURE__ */ (0,
|
|
2358
|
+
return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
|
|
2004
2359
|
"span",
|
|
2005
2360
|
{
|
|
2006
2361
|
"aria-hidden": true,
|
|
@@ -2008,8 +2363,8 @@ function PaginationEllipsis({ className, ...props }) {
|
|
|
2008
2363
|
className: cn("flex size-9 items-center justify-center", className),
|
|
2009
2364
|
...props,
|
|
2010
2365
|
children: [
|
|
2011
|
-
/* @__PURE__ */ (0,
|
|
2012
|
-
/* @__PURE__ */ (0,
|
|
2366
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_lucide_react11.MoreHorizontalIcon, { className: "size-4" }),
|
|
2367
|
+
/* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "sr-only", children: "More pages" })
|
|
2013
2368
|
]
|
|
2014
2369
|
}
|
|
2015
2370
|
);
|
|
@@ -2018,46 +2373,46 @@ function PaginationEllipsis({ className, ...props }) {
|
|
|
2018
2373
|
// src/ui/sheet.tsx
|
|
2019
2374
|
var import_dialog = require("@base-ui/react/dialog");
|
|
2020
2375
|
var import_lucide_react12 = require("lucide-react");
|
|
2021
|
-
var
|
|
2022
|
-
var
|
|
2376
|
+
var import_class_variance_authority7 = require("class-variance-authority");
|
|
2377
|
+
var import_jsx_runtime27 = require("react/jsx-runtime");
|
|
2023
2378
|
function Sheet({
|
|
2024
2379
|
...props
|
|
2025
2380
|
}) {
|
|
2026
|
-
return /* @__PURE__ */ (0,
|
|
2381
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_dialog.Dialog.Root, { "data-slot": "sheet", ...props });
|
|
2027
2382
|
}
|
|
2028
2383
|
function SheetTrigger({
|
|
2029
2384
|
...props
|
|
2030
2385
|
}) {
|
|
2031
|
-
return /* @__PURE__ */ (0,
|
|
2386
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_dialog.Dialog.Trigger, { "data-slot": "sheet-trigger", ...props });
|
|
2032
2387
|
}
|
|
2033
2388
|
function SheetClose({
|
|
2034
2389
|
...props
|
|
2035
2390
|
}) {
|
|
2036
|
-
return /* @__PURE__ */ (0,
|
|
2391
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_dialog.Dialog.Close, { "data-slot": "sheet-close", ...props });
|
|
2037
2392
|
}
|
|
2038
2393
|
function SheetPortal({
|
|
2039
2394
|
...props
|
|
2040
2395
|
}) {
|
|
2041
|
-
return /* @__PURE__ */ (0,
|
|
2396
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_dialog.Dialog.Portal, { "data-slot": "sheet-portal", ...props });
|
|
2042
2397
|
}
|
|
2043
2398
|
function SheetOverlay({
|
|
2044
2399
|
className,
|
|
2045
2400
|
...props
|
|
2046
2401
|
}) {
|
|
2047
|
-
return /* @__PURE__ */ (0,
|
|
2402
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2048
2403
|
import_dialog.Dialog.Backdrop,
|
|
2049
2404
|
{
|
|
2050
2405
|
"data-slot": "sheet-overlay",
|
|
2051
2406
|
className: cn(
|
|
2052
|
-
"fixed inset-0 z-50 bg-
|
|
2407
|
+
"fixed inset-0 z-50 bg-(--overlay-background) data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
2053
2408
|
className
|
|
2054
2409
|
),
|
|
2055
2410
|
...props
|
|
2056
2411
|
}
|
|
2057
2412
|
);
|
|
2058
2413
|
}
|
|
2059
|
-
var sheetVariants = (0,
|
|
2060
|
-
"fixed z-50 flex flex-col gap-4 border-border bg-
|
|
2414
|
+
var sheetVariants = (0, import_class_variance_authority7.cva)(
|
|
2415
|
+
"fixed z-50 flex flex-col gap-4 border-border bg-popover shadow-lg shadow-(color:--shadow-color) transition ease-in-out data-open:animate-in data-open:duration-300 data-closed:animate-out data-closed:duration-200",
|
|
2061
2416
|
{
|
|
2062
2417
|
variants: {
|
|
2063
2418
|
side: {
|
|
@@ -2078,9 +2433,9 @@ function SheetContent({
|
|
|
2078
2433
|
side = "right",
|
|
2079
2434
|
...props
|
|
2080
2435
|
}) {
|
|
2081
|
-
return /* @__PURE__ */ (0,
|
|
2082
|
-
/* @__PURE__ */ (0,
|
|
2083
|
-
/* @__PURE__ */ (0,
|
|
2436
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(SheetPortal, { "data-slot": "sheet-portal", children: [
|
|
2437
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(SheetOverlay, {}),
|
|
2438
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
|
|
2084
2439
|
import_dialog.Dialog.Popup,
|
|
2085
2440
|
{
|
|
2086
2441
|
"data-slot": "sheet-content",
|
|
@@ -2088,11 +2443,11 @@ function SheetContent({
|
|
|
2088
2443
|
...props,
|
|
2089
2444
|
children: [
|
|
2090
2445
|
children,
|
|
2091
|
-
/* @__PURE__ */ (0,
|
|
2446
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
|
|
2092
2447
|
import_dialog.Dialog.Close,
|
|
2093
2448
|
{
|
|
2094
2449
|
"data-slot": "sheet-close",
|
|
2095
|
-
render: /* @__PURE__ */ (0,
|
|
2450
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2096
2451
|
"button",
|
|
2097
2452
|
{
|
|
2098
2453
|
type: "button",
|
|
@@ -2100,8 +2455,8 @@ function SheetContent({
|
|
|
2100
2455
|
}
|
|
2101
2456
|
),
|
|
2102
2457
|
children: [
|
|
2103
|
-
/* @__PURE__ */ (0,
|
|
2104
|
-
/* @__PURE__ */ (0,
|
|
2458
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)(import_lucide_react12.XIcon, {}),
|
|
2459
|
+
/* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "sr-only", children: "Close" })
|
|
2105
2460
|
]
|
|
2106
2461
|
}
|
|
2107
2462
|
)
|
|
@@ -2111,7 +2466,7 @@ function SheetContent({
|
|
|
2111
2466
|
] });
|
|
2112
2467
|
}
|
|
2113
2468
|
function SheetHeader({ className, ...props }) {
|
|
2114
|
-
return /* @__PURE__ */ (0,
|
|
2469
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2115
2470
|
"div",
|
|
2116
2471
|
{
|
|
2117
2472
|
"data-slot": "sheet-header",
|
|
@@ -2121,7 +2476,7 @@ function SheetHeader({ className, ...props }) {
|
|
|
2121
2476
|
);
|
|
2122
2477
|
}
|
|
2123
2478
|
function SheetFooter({ className, ...props }) {
|
|
2124
|
-
return /* @__PURE__ */ (0,
|
|
2479
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2125
2480
|
"div",
|
|
2126
2481
|
{
|
|
2127
2482
|
"data-slot": "sheet-footer",
|
|
@@ -2134,7 +2489,7 @@ function SheetTitle({
|
|
|
2134
2489
|
className,
|
|
2135
2490
|
...props
|
|
2136
2491
|
}) {
|
|
2137
|
-
return /* @__PURE__ */ (0,
|
|
2492
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2138
2493
|
import_dialog.Dialog.Title,
|
|
2139
2494
|
{
|
|
2140
2495
|
"data-slot": "sheet-title",
|
|
@@ -2147,7 +2502,7 @@ function SheetDescription({
|
|
|
2147
2502
|
className,
|
|
2148
2503
|
...props
|
|
2149
2504
|
}) {
|
|
2150
|
-
return /* @__PURE__ */ (0,
|
|
2505
|
+
return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
|
|
2151
2506
|
import_dialog.Dialog.Description,
|
|
2152
2507
|
{
|
|
2153
2508
|
"data-slot": "sheet-description",
|
|
@@ -2160,7 +2515,7 @@ function SheetDescription({
|
|
|
2160
2515
|
// src/ui/toast.tsx
|
|
2161
2516
|
var import_toast = require("@base-ui/react/toast");
|
|
2162
2517
|
var import_lucide_react13 = require("lucide-react");
|
|
2163
|
-
var
|
|
2518
|
+
var import_jsx_runtime28 = require("react/jsx-runtime");
|
|
2164
2519
|
var toastManager = import_toast.Toast.createToastManager();
|
|
2165
2520
|
function toast(message, options = {}) {
|
|
2166
2521
|
return toastManager.add({
|
|
@@ -2176,7 +2531,7 @@ var toastVariantClass = {
|
|
|
2176
2531
|
};
|
|
2177
2532
|
function ToasterViewport({ className }) {
|
|
2178
2533
|
const { toasts } = import_toast.Toast.useToastManager();
|
|
2179
|
-
return /* @__PURE__ */ (0,
|
|
2534
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_toast.Toast.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2180
2535
|
import_toast.Toast.Viewport,
|
|
2181
2536
|
{
|
|
2182
2537
|
"data-slot": "toast-viewport",
|
|
@@ -2184,26 +2539,26 @@ function ToasterViewport({ className }) {
|
|
|
2184
2539
|
"fixed top-4 right-4 z-[100] flex w-80 flex-col gap-2 outline-none",
|
|
2185
2540
|
className
|
|
2186
2541
|
),
|
|
2187
|
-
children: toasts.map((item) => /* @__PURE__ */ (0,
|
|
2542
|
+
children: toasts.map((item) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2188
2543
|
import_toast.Toast.Root,
|
|
2189
2544
|
{
|
|
2190
2545
|
toast: item,
|
|
2191
2546
|
"data-slot": "toast",
|
|
2192
2547
|
"data-type": item.type ?? "info",
|
|
2193
2548
|
className: cn(
|
|
2194
|
-
"rounded-md border border-border bg-popover px-4 py-3 text-sm text-popover-foreground shadow-md transition-[opacity,transform] duration-200 data-ending-style:animate-toast-out data-starting-style:animate-toast-in",
|
|
2549
|
+
"rounded-md border border-border bg-popover px-4 py-3 text-sm text-popover-foreground shadow-md shadow-(color:--shadow-color) transition-[opacity,transform] duration-200 data-ending-style:animate-toast-out data-starting-style:animate-toast-in",
|
|
2195
2550
|
toastVariantClass[item.type ?? "info"] ?? toastVariantClass.info
|
|
2196
2551
|
),
|
|
2197
|
-
children: /* @__PURE__ */ (0,
|
|
2198
|
-
/* @__PURE__ */ (0,
|
|
2199
|
-
/* @__PURE__ */ (0,
|
|
2552
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(import_toast.Toast.Content, { className: "flex items-start justify-between gap-2", children: [
|
|
2553
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsxs)("div", { className: "grid gap-0.5", children: [
|
|
2554
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2200
2555
|
import_toast.Toast.Title,
|
|
2201
2556
|
{
|
|
2202
2557
|
"data-slot": "toast-title",
|
|
2203
2558
|
className: "font-medium"
|
|
2204
2559
|
}
|
|
2205
2560
|
),
|
|
2206
|
-
/* @__PURE__ */ (0,
|
|
2561
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2207
2562
|
import_toast.Toast.Description,
|
|
2208
2563
|
{
|
|
2209
2564
|
"data-slot": "toast-description",
|
|
@@ -2211,13 +2566,13 @@ function ToasterViewport({ className }) {
|
|
|
2211
2566
|
}
|
|
2212
2567
|
)
|
|
2213
2568
|
] }),
|
|
2214
|
-
/* @__PURE__ */ (0,
|
|
2569
|
+
/* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
|
|
2215
2570
|
import_toast.Toast.Close,
|
|
2216
2571
|
{
|
|
2217
2572
|
"data-slot": "toast-close",
|
|
2218
2573
|
"aria-label": "Close",
|
|
2219
2574
|
className: "cursor-pointer rounded-xs opacity-70 transition-opacity hover:opacity-100 focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none [&_svg]:size-3.5",
|
|
2220
|
-
children: /* @__PURE__ */ (0,
|
|
2575
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_lucide_react13.XIcon, {})
|
|
2221
2576
|
}
|
|
2222
2577
|
)
|
|
2223
2578
|
] })
|
|
@@ -2228,17 +2583,17 @@ function ToasterViewport({ className }) {
|
|
|
2228
2583
|
) });
|
|
2229
2584
|
}
|
|
2230
2585
|
function Toaster({ className }) {
|
|
2231
|
-
return /* @__PURE__ */ (0,
|
|
2586
|
+
return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(import_toast.Toast.Provider, { toastManager, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ToasterViewport, { className }) });
|
|
2232
2587
|
}
|
|
2233
2588
|
|
|
2234
2589
|
// src/ui/tooltip.tsx
|
|
2235
2590
|
var import_tooltip = require("@base-ui/react/tooltip");
|
|
2236
|
-
var
|
|
2591
|
+
var import_jsx_runtime29 = require("react/jsx-runtime");
|
|
2237
2592
|
function TooltipProvider({
|
|
2238
2593
|
delay = 0,
|
|
2239
2594
|
...props
|
|
2240
2595
|
}) {
|
|
2241
|
-
return /* @__PURE__ */ (0,
|
|
2596
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2242
2597
|
import_tooltip.Tooltip.Provider,
|
|
2243
2598
|
{
|
|
2244
2599
|
"data-slot": "tooltip-provider",
|
|
@@ -2250,12 +2605,12 @@ function TooltipProvider({
|
|
|
2250
2605
|
function Tooltip({
|
|
2251
2606
|
...props
|
|
2252
2607
|
}) {
|
|
2253
|
-
return /* @__PURE__ */ (0,
|
|
2608
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(TooltipProvider, { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_tooltip.Tooltip.Root, { "data-slot": "tooltip", ...props }) });
|
|
2254
2609
|
}
|
|
2255
2610
|
function TooltipTrigger({
|
|
2256
2611
|
...props
|
|
2257
2612
|
}) {
|
|
2258
|
-
return /* @__PURE__ */ (0,
|
|
2613
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_tooltip.Tooltip.Trigger, { "data-slot": "tooltip-trigger", ...props });
|
|
2259
2614
|
}
|
|
2260
2615
|
function TooltipContent({
|
|
2261
2616
|
className,
|
|
@@ -2265,14 +2620,14 @@ function TooltipContent({
|
|
|
2265
2620
|
children,
|
|
2266
2621
|
...props
|
|
2267
2622
|
}) {
|
|
2268
|
-
return /* @__PURE__ */ (0,
|
|
2623
|
+
return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_tooltip.Tooltip.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
|
|
2269
2624
|
import_tooltip.Tooltip.Positioner,
|
|
2270
2625
|
{
|
|
2271
2626
|
align,
|
|
2272
2627
|
side,
|
|
2273
2628
|
sideOffset,
|
|
2274
2629
|
className: "isolate z-50",
|
|
2275
|
-
children: /* @__PURE__ */ (0,
|
|
2630
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
|
|
2276
2631
|
import_tooltip.Tooltip.Popup,
|
|
2277
2632
|
{
|
|
2278
2633
|
"data-slot": "tooltip-content",
|
|
@@ -2283,7 +2638,7 @@ function TooltipContent({
|
|
|
2283
2638
|
...props,
|
|
2284
2639
|
children: [
|
|
2285
2640
|
children,
|
|
2286
|
-
/* @__PURE__ */ (0,
|
|
2641
|
+
/* @__PURE__ */ (0, import_jsx_runtime29.jsx)(import_tooltip.Tooltip.Arrow, { className: "z-50 size-2.5 rotate-45 rounded-[2px] bg-primary fill-primary data-[side=top]:-bottom-1 data-[side=bottom]:-top-1 data-[side=left]:-right-1 data-[side=right]:-left-1" })
|
|
2287
2642
|
]
|
|
2288
2643
|
}
|
|
2289
2644
|
)
|
|
@@ -2292,14 +2647,14 @@ function TooltipContent({
|
|
|
2292
2647
|
}
|
|
2293
2648
|
|
|
2294
2649
|
// src/ui/card.tsx
|
|
2295
|
-
var
|
|
2650
|
+
var import_jsx_runtime30 = require("react/jsx-runtime");
|
|
2296
2651
|
function Card({ className, ...props }) {
|
|
2297
|
-
return /* @__PURE__ */ (0,
|
|
2652
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2298
2653
|
"div",
|
|
2299
2654
|
{
|
|
2300
2655
|
"data-slot": "card",
|
|
2301
2656
|
className: cn(
|
|
2302
|
-
"flex flex-col gap-6 rounded-xl border border-border bg-card py-6 text-card-foreground shadow-
|
|
2657
|
+
"flex flex-col gap-6 rounded-xl border border-border bg-card py-6 text-card-foreground shadow-(--card-shadow)",
|
|
2303
2658
|
className
|
|
2304
2659
|
),
|
|
2305
2660
|
...props
|
|
@@ -2307,7 +2662,7 @@ function Card({ className, ...props }) {
|
|
|
2307
2662
|
);
|
|
2308
2663
|
}
|
|
2309
2664
|
function CardHeader({ className, ...props }) {
|
|
2310
|
-
return /* @__PURE__ */ (0,
|
|
2665
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2311
2666
|
"div",
|
|
2312
2667
|
{
|
|
2313
2668
|
"data-slot": "card-header",
|
|
@@ -2320,7 +2675,7 @@ function CardHeader({ className, ...props }) {
|
|
|
2320
2675
|
);
|
|
2321
2676
|
}
|
|
2322
2677
|
function CardTitle({ className, ...props }) {
|
|
2323
|
-
return /* @__PURE__ */ (0,
|
|
2678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2324
2679
|
"div",
|
|
2325
2680
|
{
|
|
2326
2681
|
"data-slot": "card-title",
|
|
@@ -2330,7 +2685,7 @@ function CardTitle({ className, ...props }) {
|
|
|
2330
2685
|
);
|
|
2331
2686
|
}
|
|
2332
2687
|
function CardDescription({ className, ...props }) {
|
|
2333
|
-
return /* @__PURE__ */ (0,
|
|
2688
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2334
2689
|
"div",
|
|
2335
2690
|
{
|
|
2336
2691
|
"data-slot": "card-description",
|
|
@@ -2340,7 +2695,7 @@ function CardDescription({ className, ...props }) {
|
|
|
2340
2695
|
);
|
|
2341
2696
|
}
|
|
2342
2697
|
function CardAction({ className, ...props }) {
|
|
2343
|
-
return /* @__PURE__ */ (0,
|
|
2698
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2344
2699
|
"div",
|
|
2345
2700
|
{
|
|
2346
2701
|
"data-slot": "card-action",
|
|
@@ -2353,7 +2708,7 @@ function CardAction({ className, ...props }) {
|
|
|
2353
2708
|
);
|
|
2354
2709
|
}
|
|
2355
2710
|
function CardContent({ className, ...props }) {
|
|
2356
|
-
return /* @__PURE__ */ (0,
|
|
2711
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2357
2712
|
"div",
|
|
2358
2713
|
{
|
|
2359
2714
|
"data-slot": "card-content",
|
|
@@ -2363,7 +2718,7 @@ function CardContent({ className, ...props }) {
|
|
|
2363
2718
|
);
|
|
2364
2719
|
}
|
|
2365
2720
|
function CardFooter({ className, ...props }) {
|
|
2366
|
-
return /* @__PURE__ */ (0,
|
|
2721
|
+
return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
|
|
2367
2722
|
"div",
|
|
2368
2723
|
{
|
|
2369
2724
|
"data-slot": "card-footer",
|
|
@@ -2376,37 +2731,37 @@ function CardFooter({ className, ...props }) {
|
|
|
2376
2731
|
// src/ui/dialog.tsx
|
|
2377
2732
|
var import_dialog2 = require("@base-ui/react/dialog");
|
|
2378
2733
|
var import_lucide_react14 = require("lucide-react");
|
|
2379
|
-
var
|
|
2734
|
+
var import_jsx_runtime31 = require("react/jsx-runtime");
|
|
2380
2735
|
function Dialog({
|
|
2381
2736
|
...props
|
|
2382
2737
|
}) {
|
|
2383
|
-
return /* @__PURE__ */ (0,
|
|
2738
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_dialog2.Dialog.Root, { "data-slot": "dialog", ...props });
|
|
2384
2739
|
}
|
|
2385
2740
|
function DialogTrigger({
|
|
2386
2741
|
...props
|
|
2387
2742
|
}) {
|
|
2388
|
-
return /* @__PURE__ */ (0,
|
|
2743
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_dialog2.Dialog.Trigger, { "data-slot": "dialog-trigger", ...props });
|
|
2389
2744
|
}
|
|
2390
2745
|
function DialogPortal({
|
|
2391
2746
|
...props
|
|
2392
2747
|
}) {
|
|
2393
|
-
return /* @__PURE__ */ (0,
|
|
2748
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_dialog2.Dialog.Portal, { "data-slot": "dialog-portal", ...props });
|
|
2394
2749
|
}
|
|
2395
2750
|
function DialogClose({
|
|
2396
2751
|
...props
|
|
2397
2752
|
}) {
|
|
2398
|
-
return /* @__PURE__ */ (0,
|
|
2753
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_dialog2.Dialog.Close, { "data-slot": "dialog-close", ...props });
|
|
2399
2754
|
}
|
|
2400
2755
|
function DialogOverlay({
|
|
2401
2756
|
className,
|
|
2402
2757
|
...props
|
|
2403
2758
|
}) {
|
|
2404
|
-
return /* @__PURE__ */ (0,
|
|
2759
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2405
2760
|
import_dialog2.Dialog.Backdrop,
|
|
2406
2761
|
{
|
|
2407
2762
|
"data-slot": "dialog-overlay",
|
|
2408
2763
|
className: cn(
|
|
2409
|
-
"fixed inset-0 z-50 bg-
|
|
2764
|
+
"fixed inset-0 z-50 bg-(--overlay-background) data-open:animate-in data-open:fade-in-0 data-closed:animate-out data-closed:fade-out-0",
|
|
2410
2765
|
className
|
|
2411
2766
|
),
|
|
2412
2767
|
...props
|
|
@@ -2419,24 +2774,24 @@ function DialogContent({
|
|
|
2419
2774
|
showCloseButton = true,
|
|
2420
2775
|
...props
|
|
2421
2776
|
}) {
|
|
2422
|
-
return /* @__PURE__ */ (0,
|
|
2423
|
-
/* @__PURE__ */ (0,
|
|
2424
|
-
/* @__PURE__ */ (0,
|
|
2777
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(DialogPortal, { "data-slot": "dialog-portal", children: [
|
|
2778
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(DialogOverlay, {}),
|
|
2779
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
2425
2780
|
import_dialog2.Dialog.Popup,
|
|
2426
2781
|
{
|
|
2427
2782
|
"data-slot": "dialog-content",
|
|
2428
2783
|
className: cn(
|
|
2429
|
-
"fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border bg-
|
|
2784
|
+
"fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border border-border bg-popover p-6 shadow-lg shadow-(color:--shadow-color) duration-200 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 sm:max-w-lg",
|
|
2430
2785
|
className
|
|
2431
2786
|
),
|
|
2432
2787
|
...props,
|
|
2433
2788
|
children: [
|
|
2434
2789
|
children,
|
|
2435
|
-
showCloseButton && /* @__PURE__ */ (0,
|
|
2790
|
+
showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
|
|
2436
2791
|
import_dialog2.Dialog.Close,
|
|
2437
2792
|
{
|
|
2438
2793
|
"data-slot": "dialog-close",
|
|
2439
|
-
render: /* @__PURE__ */ (0,
|
|
2794
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2440
2795
|
"button",
|
|
2441
2796
|
{
|
|
2442
2797
|
type: "button",
|
|
@@ -2444,8 +2799,8 @@ function DialogContent({
|
|
|
2444
2799
|
}
|
|
2445
2800
|
),
|
|
2446
2801
|
children: [
|
|
2447
|
-
/* @__PURE__ */ (0,
|
|
2448
|
-
/* @__PURE__ */ (0,
|
|
2802
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_lucide_react14.XIcon, {}),
|
|
2803
|
+
/* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "sr-only", children: "Close" })
|
|
2449
2804
|
]
|
|
2450
2805
|
}
|
|
2451
2806
|
)
|
|
@@ -2455,7 +2810,7 @@ function DialogContent({
|
|
|
2455
2810
|
] });
|
|
2456
2811
|
}
|
|
2457
2812
|
function DialogHeader({ className, ...props }) {
|
|
2458
|
-
return /* @__PURE__ */ (0,
|
|
2813
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2459
2814
|
"div",
|
|
2460
2815
|
{
|
|
2461
2816
|
"data-slot": "dialog-header",
|
|
@@ -2465,7 +2820,7 @@ function DialogHeader({ className, ...props }) {
|
|
|
2465
2820
|
);
|
|
2466
2821
|
}
|
|
2467
2822
|
function DialogFooter({ className, ...props }) {
|
|
2468
|
-
return /* @__PURE__ */ (0,
|
|
2823
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2469
2824
|
"div",
|
|
2470
2825
|
{
|
|
2471
2826
|
"data-slot": "dialog-footer",
|
|
@@ -2481,7 +2836,7 @@ function DialogTitle({
|
|
|
2481
2836
|
className,
|
|
2482
2837
|
...props
|
|
2483
2838
|
}) {
|
|
2484
|
-
return /* @__PURE__ */ (0,
|
|
2839
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2485
2840
|
import_dialog2.Dialog.Title,
|
|
2486
2841
|
{
|
|
2487
2842
|
"data-slot": "dialog-title",
|
|
@@ -2494,7 +2849,7 @@ function DialogDescription({
|
|
|
2494
2849
|
className,
|
|
2495
2850
|
...props
|
|
2496
2851
|
}) {
|
|
2497
|
-
return /* @__PURE__ */ (0,
|
|
2852
|
+
return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
|
|
2498
2853
|
import_dialog2.Dialog.Description,
|
|
2499
2854
|
{
|
|
2500
2855
|
"data-slot": "dialog-description",
|
|
@@ -2505,9 +2860,9 @@ function DialogDescription({
|
|
|
2505
2860
|
}
|
|
2506
2861
|
|
|
2507
2862
|
// src/ui/empty.tsx
|
|
2508
|
-
var
|
|
2863
|
+
var import_jsx_runtime32 = require("react/jsx-runtime");
|
|
2509
2864
|
function Empty({ className, ...props }) {
|
|
2510
|
-
return /* @__PURE__ */ (0,
|
|
2865
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2511
2866
|
"div",
|
|
2512
2867
|
{
|
|
2513
2868
|
"data-slot": "empty",
|
|
@@ -2520,7 +2875,7 @@ function Empty({ className, ...props }) {
|
|
|
2520
2875
|
);
|
|
2521
2876
|
}
|
|
2522
2877
|
function EmptyHeader({ className, ...props }) {
|
|
2523
|
-
return /* @__PURE__ */ (0,
|
|
2878
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2524
2879
|
"div",
|
|
2525
2880
|
{
|
|
2526
2881
|
"data-slot": "empty-header",
|
|
@@ -2530,7 +2885,7 @@ function EmptyHeader({ className, ...props }) {
|
|
|
2530
2885
|
);
|
|
2531
2886
|
}
|
|
2532
2887
|
function EmptyTitle({ className, ...props }) {
|
|
2533
|
-
return /* @__PURE__ */ (0,
|
|
2888
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2534
2889
|
"div",
|
|
2535
2890
|
{
|
|
2536
2891
|
"data-slot": "empty-title",
|
|
@@ -2540,7 +2895,7 @@ function EmptyTitle({ className, ...props }) {
|
|
|
2540
2895
|
);
|
|
2541
2896
|
}
|
|
2542
2897
|
function EmptyDescription({ className, ...props }) {
|
|
2543
|
-
return /* @__PURE__ */ (0,
|
|
2898
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2544
2899
|
"p",
|
|
2545
2900
|
{
|
|
2546
2901
|
"data-slot": "empty-description",
|
|
@@ -2550,7 +2905,7 @@ function EmptyDescription({ className, ...props }) {
|
|
|
2550
2905
|
);
|
|
2551
2906
|
}
|
|
2552
2907
|
function EmptyContent({ className, ...props }) {
|
|
2553
|
-
return /* @__PURE__ */ (0,
|
|
2908
|
+
return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
|
|
2554
2909
|
"div",
|
|
2555
2910
|
{
|
|
2556
2911
|
"data-slot": "empty-content",
|
|
@@ -2565,9 +2920,9 @@ function EmptyContent({ className, ...props }) {
|
|
|
2565
2920
|
|
|
2566
2921
|
// src/ui/field.tsx
|
|
2567
2922
|
var import_field = require("@base-ui/react/field");
|
|
2568
|
-
var
|
|
2923
|
+
var import_jsx_runtime33 = require("react/jsx-runtime");
|
|
2569
2924
|
function Field({ className, ...props }) {
|
|
2570
|
-
return /* @__PURE__ */ (0,
|
|
2925
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2571
2926
|
import_field.Field.Root,
|
|
2572
2927
|
{
|
|
2573
2928
|
"data-slot": "field",
|
|
@@ -2577,7 +2932,7 @@ function Field({ className, ...props }) {
|
|
|
2577
2932
|
);
|
|
2578
2933
|
}
|
|
2579
2934
|
function FieldLabel({ className, ...props }) {
|
|
2580
|
-
return /* @__PURE__ */ (0,
|
|
2935
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2581
2936
|
import_field.Field.Label,
|
|
2582
2937
|
{
|
|
2583
2938
|
"data-slot": "field-label",
|
|
@@ -2587,7 +2942,7 @@ function FieldLabel({ className, ...props }) {
|
|
|
2587
2942
|
);
|
|
2588
2943
|
}
|
|
2589
2944
|
function FieldDescription({ className, ...props }) {
|
|
2590
|
-
return /* @__PURE__ */ (0,
|
|
2945
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2591
2946
|
import_field.Field.Description,
|
|
2592
2947
|
{
|
|
2593
2948
|
"data-slot": "field-description",
|
|
@@ -2597,7 +2952,7 @@ function FieldDescription({ className, ...props }) {
|
|
|
2597
2952
|
);
|
|
2598
2953
|
}
|
|
2599
2954
|
function FieldError({ className, ...props }) {
|
|
2600
|
-
return /* @__PURE__ */ (0,
|
|
2955
|
+
return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
|
|
2601
2956
|
import_field.Field.Error,
|
|
2602
2957
|
{
|
|
2603
2958
|
"data-slot": "field-error",
|
|
@@ -2608,9 +2963,9 @@ function FieldError({ className, ...props }) {
|
|
|
2608
2963
|
}
|
|
2609
2964
|
|
|
2610
2965
|
// src/ui/input.tsx
|
|
2611
|
-
var
|
|
2966
|
+
var import_jsx_runtime34 = require("react/jsx-runtime");
|
|
2612
2967
|
function Input({ className, type, ...props }) {
|
|
2613
|
-
return /* @__PURE__ */ (0,
|
|
2968
|
+
return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
|
|
2614
2969
|
"input",
|
|
2615
2970
|
{
|
|
2616
2971
|
type,
|
|
@@ -2625,9 +2980,9 @@ function Input({ className, type, ...props }) {
|
|
|
2625
2980
|
}
|
|
2626
2981
|
|
|
2627
2982
|
// src/ui/input-group.tsx
|
|
2628
|
-
var
|
|
2983
|
+
var import_jsx_runtime35 = require("react/jsx-runtime");
|
|
2629
2984
|
function InputGroup({ className, ...props }) {
|
|
2630
|
-
return /* @__PURE__ */ (0,
|
|
2985
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2631
2986
|
"div",
|
|
2632
2987
|
{
|
|
2633
2988
|
"data-slot": "input-group",
|
|
@@ -2649,7 +3004,7 @@ function InputGroupAddon({
|
|
|
2649
3004
|
align = "inline-start",
|
|
2650
3005
|
...props
|
|
2651
3006
|
}) {
|
|
2652
|
-
return /* @__PURE__ */ (0,
|
|
3007
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2653
3008
|
"div",
|
|
2654
3009
|
{
|
|
2655
3010
|
role: "group",
|
|
@@ -2668,7 +3023,7 @@ function InputGroupInput({
|
|
|
2668
3023
|
className,
|
|
2669
3024
|
...props
|
|
2670
3025
|
}) {
|
|
2671
|
-
return /* @__PURE__ */ (0,
|
|
3026
|
+
return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
|
|
2672
3027
|
"input",
|
|
2673
3028
|
{
|
|
2674
3029
|
"data-slot": "input-group-input",
|
|
@@ -2684,14 +3039,14 @@ function InputGroupInput({
|
|
|
2684
3039
|
// src/ui/input-otp.tsx
|
|
2685
3040
|
var import_input_otp = require("input-otp");
|
|
2686
3041
|
var import_lucide_react15 = require("lucide-react");
|
|
2687
|
-
var
|
|
2688
|
-
var
|
|
3042
|
+
var React5 = __toESM(require("react"), 1);
|
|
3043
|
+
var import_jsx_runtime36 = require("react/jsx-runtime");
|
|
2689
3044
|
function InputOTP({
|
|
2690
3045
|
className,
|
|
2691
3046
|
containerClassName,
|
|
2692
3047
|
...props
|
|
2693
3048
|
}) {
|
|
2694
|
-
return /* @__PURE__ */ (0,
|
|
3049
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2695
3050
|
import_input_otp.OTPInput,
|
|
2696
3051
|
{
|
|
2697
3052
|
"data-slot": "input-otp",
|
|
@@ -2705,7 +3060,7 @@ function InputOTP({
|
|
|
2705
3060
|
);
|
|
2706
3061
|
}
|
|
2707
3062
|
function InputOTPGroup({ className, ...props }) {
|
|
2708
|
-
return /* @__PURE__ */ (0,
|
|
3063
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
|
|
2709
3064
|
"div",
|
|
2710
3065
|
{
|
|
2711
3066
|
"data-slot": "input-otp-group",
|
|
@@ -2719,9 +3074,9 @@ function InputOTPSlot({
|
|
|
2719
3074
|
className,
|
|
2720
3075
|
...props
|
|
2721
3076
|
}) {
|
|
2722
|
-
const inputOTPContext =
|
|
3077
|
+
const inputOTPContext = React5.useContext(import_input_otp.OTPInputContext);
|
|
2723
3078
|
const { char, hasFakeCaret, isActive } = inputOTPContext?.slots[index] ?? {};
|
|
2724
|
-
return /* @__PURE__ */ (0,
|
|
3079
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
|
|
2725
3080
|
"div",
|
|
2726
3081
|
{
|
|
2727
3082
|
"data-slot": "input-otp-slot",
|
|
@@ -2733,19 +3088,19 @@ function InputOTPSlot({
|
|
|
2733
3088
|
...props,
|
|
2734
3089
|
children: [
|
|
2735
3090
|
char,
|
|
2736
|
-
hasFakeCaret ? /* @__PURE__ */ (0,
|
|
3091
|
+
hasFakeCaret ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "h-4 w-px animate-caret-blink bg-foreground duration-1000" }) }) : null
|
|
2737
3092
|
]
|
|
2738
3093
|
}
|
|
2739
3094
|
);
|
|
2740
3095
|
}
|
|
2741
3096
|
function InputOTPSeparator({ ...props }) {
|
|
2742
|
-
return /* @__PURE__ */ (0,
|
|
3097
|
+
return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { "data-slot": "input-otp-separator", role: "separator", ...props, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react15.MinusIcon, {}) });
|
|
2743
3098
|
}
|
|
2744
3099
|
|
|
2745
3100
|
// src/ui/item.tsx
|
|
2746
|
-
var
|
|
3101
|
+
var import_jsx_runtime37 = require("react/jsx-runtime");
|
|
2747
3102
|
function Item({ className, ...props }) {
|
|
2748
|
-
return /* @__PURE__ */ (0,
|
|
3103
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2749
3104
|
"div",
|
|
2750
3105
|
{
|
|
2751
3106
|
"data-slot": "item",
|
|
@@ -2758,7 +3113,7 @@ function Item({ className, ...props }) {
|
|
|
2758
3113
|
);
|
|
2759
3114
|
}
|
|
2760
3115
|
function ItemMedia({ className, ...props }) {
|
|
2761
|
-
return /* @__PURE__ */ (0,
|
|
3116
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2762
3117
|
"div",
|
|
2763
3118
|
{
|
|
2764
3119
|
"data-slot": "item-media",
|
|
@@ -2771,7 +3126,7 @@ function ItemMedia({ className, ...props }) {
|
|
|
2771
3126
|
);
|
|
2772
3127
|
}
|
|
2773
3128
|
function ItemContent({ className, ...props }) {
|
|
2774
|
-
return /* @__PURE__ */ (0,
|
|
3129
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2775
3130
|
"div",
|
|
2776
3131
|
{
|
|
2777
3132
|
"data-slot": "item-content",
|
|
@@ -2781,7 +3136,7 @@ function ItemContent({ className, ...props }) {
|
|
|
2781
3136
|
);
|
|
2782
3137
|
}
|
|
2783
3138
|
function ItemTitle({ className, ...props }) {
|
|
2784
|
-
return /* @__PURE__ */ (0,
|
|
3139
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2785
3140
|
"div",
|
|
2786
3141
|
{
|
|
2787
3142
|
"data-slot": "item-title",
|
|
@@ -2791,7 +3146,7 @@ function ItemTitle({ className, ...props }) {
|
|
|
2791
3146
|
);
|
|
2792
3147
|
}
|
|
2793
3148
|
function ItemDescription({ className, ...props }) {
|
|
2794
|
-
return /* @__PURE__ */ (0,
|
|
3149
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2795
3150
|
"p",
|
|
2796
3151
|
{
|
|
2797
3152
|
"data-slot": "item-description",
|
|
@@ -2801,7 +3156,7 @@ function ItemDescription({ className, ...props }) {
|
|
|
2801
3156
|
);
|
|
2802
3157
|
}
|
|
2803
3158
|
function ItemActions({ className, ...props }) {
|
|
2804
|
-
return /* @__PURE__ */ (0,
|
|
3159
|
+
return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
|
|
2805
3160
|
"div",
|
|
2806
3161
|
{
|
|
2807
3162
|
"data-slot": "item-actions",
|
|
@@ -2812,9 +3167,9 @@ function ItemActions({ className, ...props }) {
|
|
|
2812
3167
|
}
|
|
2813
3168
|
|
|
2814
3169
|
// src/ui/kbd.tsx
|
|
2815
|
-
var
|
|
3170
|
+
var import_jsx_runtime38 = require("react/jsx-runtime");
|
|
2816
3171
|
function Kbd({ className, ...props }) {
|
|
2817
|
-
return /* @__PURE__ */ (0,
|
|
3172
|
+
return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
|
|
2818
3173
|
"kbd",
|
|
2819
3174
|
{
|
|
2820
3175
|
"data-slot": "kbd",
|
|
@@ -2828,12 +3183,12 @@ function Kbd({ className, ...props }) {
|
|
|
2828
3183
|
}
|
|
2829
3184
|
|
|
2830
3185
|
// src/ui/label.tsx
|
|
2831
|
-
var
|
|
3186
|
+
var import_jsx_runtime39 = require("react/jsx-runtime");
|
|
2832
3187
|
function Label({
|
|
2833
3188
|
className,
|
|
2834
3189
|
...props
|
|
2835
3190
|
}) {
|
|
2836
|
-
return /* @__PURE__ */ (0,
|
|
3191
|
+
return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
|
|
2837
3192
|
"label",
|
|
2838
3193
|
{
|
|
2839
3194
|
"data-slot": "label",
|
|
@@ -2846,11 +3201,94 @@ function Label({
|
|
|
2846
3201
|
);
|
|
2847
3202
|
}
|
|
2848
3203
|
|
|
3204
|
+
// src/ui/message.tsx
|
|
3205
|
+
var import_jsx_runtime40 = require("react/jsx-runtime");
|
|
3206
|
+
function MessageGroup({ className, ...props }) {
|
|
3207
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3208
|
+
"div",
|
|
3209
|
+
{
|
|
3210
|
+
"data-slot": "message-group",
|
|
3211
|
+
className: cn("flex min-w-0 flex-col gap-2", className),
|
|
3212
|
+
...props
|
|
3213
|
+
}
|
|
3214
|
+
);
|
|
3215
|
+
}
|
|
3216
|
+
function Message({
|
|
3217
|
+
className,
|
|
3218
|
+
align = "start",
|
|
3219
|
+
...props
|
|
3220
|
+
}) {
|
|
3221
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3222
|
+
"div",
|
|
3223
|
+
{
|
|
3224
|
+
"data-slot": "message",
|
|
3225
|
+
"data-align": align,
|
|
3226
|
+
className: cn(
|
|
3227
|
+
"group/message relative flex w-full min-w-0 gap-2 text-sm data-[align=end]:flex-row-reverse",
|
|
3228
|
+
className
|
|
3229
|
+
),
|
|
3230
|
+
...props
|
|
3231
|
+
}
|
|
3232
|
+
);
|
|
3233
|
+
}
|
|
3234
|
+
function MessageAvatar({ className, ...props }) {
|
|
3235
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3236
|
+
"div",
|
|
3237
|
+
{
|
|
3238
|
+
"data-slot": "message-avatar",
|
|
3239
|
+
className: cn(
|
|
3240
|
+
"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",
|
|
3241
|
+
className
|
|
3242
|
+
),
|
|
3243
|
+
...props
|
|
3244
|
+
}
|
|
3245
|
+
);
|
|
3246
|
+
}
|
|
3247
|
+
function MessageContent({ className, ...props }) {
|
|
3248
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3249
|
+
"div",
|
|
3250
|
+
{
|
|
3251
|
+
"data-slot": "message-content",
|
|
3252
|
+
className: cn(
|
|
3253
|
+
"flex w-full min-w-0 flex-col gap-2.5 wrap-break-word group-data-[align=end]/message:*:data-slot:self-end",
|
|
3254
|
+
className
|
|
3255
|
+
),
|
|
3256
|
+
...props
|
|
3257
|
+
}
|
|
3258
|
+
);
|
|
3259
|
+
}
|
|
3260
|
+
function MessageHeader({ className, ...props }) {
|
|
3261
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3262
|
+
"div",
|
|
3263
|
+
{
|
|
3264
|
+
"data-slot": "message-header",
|
|
3265
|
+
className: cn(
|
|
3266
|
+
"flex max-w-full min-w-0 items-center px-3 text-xs font-medium text-muted-foreground group-has-data-[variant=ghost]/message:px-0",
|
|
3267
|
+
className
|
|
3268
|
+
),
|
|
3269
|
+
...props
|
|
3270
|
+
}
|
|
3271
|
+
);
|
|
3272
|
+
}
|
|
3273
|
+
function MessageFooter({ className, ...props }) {
|
|
3274
|
+
return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
|
|
3275
|
+
"div",
|
|
3276
|
+
{
|
|
3277
|
+
"data-slot": "message-footer",
|
|
3278
|
+
className: cn(
|
|
3279
|
+
"flex max-w-full min-w-0 items-center px-3 text-xs font-medium text-muted-foreground group-has-data-[variant=ghost]/message:px-0 group-data-[align=end]/message:justify-end",
|
|
3280
|
+
className
|
|
3281
|
+
),
|
|
3282
|
+
...props
|
|
3283
|
+
}
|
|
3284
|
+
);
|
|
3285
|
+
}
|
|
3286
|
+
|
|
2849
3287
|
// src/ui/progress.tsx
|
|
2850
3288
|
var import_progress = require("@base-ui/react/progress");
|
|
2851
|
-
var
|
|
3289
|
+
var import_jsx_runtime41 = require("react/jsx-runtime");
|
|
2852
3290
|
function Progress({ className, ...props }) {
|
|
2853
|
-
return /* @__PURE__ */ (0,
|
|
3291
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
2854
3292
|
import_progress.Progress.Root,
|
|
2855
3293
|
{
|
|
2856
3294
|
"data-slot": "progress",
|
|
@@ -2860,11 +3298,11 @@ function Progress({ className, ...props }) {
|
|
|
2860
3298
|
);
|
|
2861
3299
|
}
|
|
2862
3300
|
function ProgressTrack({ className, ...props }) {
|
|
2863
|
-
return /* @__PURE__ */ (0,
|
|
3301
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
2864
3302
|
import_progress.Progress.Track,
|
|
2865
3303
|
{
|
|
2866
3304
|
"data-slot": "progress-track",
|
|
2867
|
-
className: cn("h-2 w-full overflow-hidden rounded-full bg-
|
|
3305
|
+
className: cn("h-2 w-full overflow-hidden rounded-full bg-(--progress-track)", className),
|
|
2868
3306
|
...props
|
|
2869
3307
|
}
|
|
2870
3308
|
);
|
|
@@ -2873,12 +3311,12 @@ function ProgressIndicator({
|
|
|
2873
3311
|
className,
|
|
2874
3312
|
...props
|
|
2875
3313
|
}) {
|
|
2876
|
-
return /* @__PURE__ */ (0,
|
|
3314
|
+
return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
|
|
2877
3315
|
import_progress.Progress.Indicator,
|
|
2878
3316
|
{
|
|
2879
3317
|
"data-slot": "progress-indicator",
|
|
2880
3318
|
className: cn(
|
|
2881
|
-
"h-full bg-
|
|
3319
|
+
"h-full bg-(--progress-indicator) transition-[width] duration-300 ease-in-out",
|
|
2882
3320
|
className
|
|
2883
3321
|
),
|
|
2884
3322
|
...props
|
|
@@ -2889,9 +3327,9 @@ function ProgressIndicator({
|
|
|
2889
3327
|
// src/ui/radio-group.tsx
|
|
2890
3328
|
var import_radio = require("@base-ui/react/radio");
|
|
2891
3329
|
var import_radio_group = require("@base-ui/react/radio-group");
|
|
2892
|
-
var
|
|
3330
|
+
var import_jsx_runtime42 = require("react/jsx-runtime");
|
|
2893
3331
|
function RadioGroup({ className, ...props }) {
|
|
2894
|
-
return /* @__PURE__ */ (0,
|
|
3332
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2895
3333
|
import_radio_group.RadioGroup,
|
|
2896
3334
|
{
|
|
2897
3335
|
"data-slot": "radio-group",
|
|
@@ -2901,21 +3339,21 @@ function RadioGroup({ className, ...props }) {
|
|
|
2901
3339
|
);
|
|
2902
3340
|
}
|
|
2903
3341
|
function RadioGroupItem({ className, ...props }) {
|
|
2904
|
-
return /* @__PURE__ */ (0,
|
|
3342
|
+
return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2905
3343
|
import_radio.Radio.Root,
|
|
2906
3344
|
{
|
|
2907
3345
|
"data-slot": "radio-group-item",
|
|
2908
3346
|
className: cn(
|
|
2909
|
-
"aspect-square size-4 shrink-0 cursor-pointer rounded-full border border-
|
|
3347
|
+
"aspect-square size-4 shrink-0 cursor-pointer inline-flex items-center justify-center rounded-full border border-(color:--radio-border) shadow-xs transition-colors outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-checked:border-(color:--radio-checked)",
|
|
2910
3348
|
className
|
|
2911
3349
|
),
|
|
2912
3350
|
...props,
|
|
2913
|
-
children: /* @__PURE__ */ (0,
|
|
3351
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
2914
3352
|
import_radio.Radio.Indicator,
|
|
2915
3353
|
{
|
|
2916
3354
|
"data-slot": "radio-group-indicator",
|
|
2917
3355
|
className: "flex items-center justify-center",
|
|
2918
|
-
children: /* @__PURE__ */ (0,
|
|
3356
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "size-2 rounded-full bg-(--radio-checked)" })
|
|
2919
3357
|
}
|
|
2920
3358
|
)
|
|
2921
3359
|
}
|
|
@@ -2925,12 +3363,12 @@ function RadioGroupItem({ className, ...props }) {
|
|
|
2925
3363
|
// src/ui/resizable.tsx
|
|
2926
3364
|
var import_lucide_react16 = require("lucide-react");
|
|
2927
3365
|
var import_react_resizable_panels = require("react-resizable-panels");
|
|
2928
|
-
var
|
|
3366
|
+
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
2929
3367
|
function PanelGroup({
|
|
2930
3368
|
className,
|
|
2931
3369
|
...props
|
|
2932
3370
|
}) {
|
|
2933
|
-
return /* @__PURE__ */ (0,
|
|
3371
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
2934
3372
|
import_react_resizable_panels.Group,
|
|
2935
3373
|
{
|
|
2936
3374
|
"data-slot": "resizable-panel-group",
|
|
@@ -2943,14 +3381,14 @@ function PanelGroup({
|
|
|
2943
3381
|
);
|
|
2944
3382
|
}
|
|
2945
3383
|
function Panel({ ...props }) {
|
|
2946
|
-
return /* @__PURE__ */ (0,
|
|
3384
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_react_resizable_panels.Panel, { "data-slot": "resizable-panel", ...props });
|
|
2947
3385
|
}
|
|
2948
3386
|
function ResizableHandle({
|
|
2949
3387
|
withHandle,
|
|
2950
3388
|
className,
|
|
2951
3389
|
...props
|
|
2952
3390
|
}) {
|
|
2953
|
-
return /* @__PURE__ */ (0,
|
|
3391
|
+
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
2954
3392
|
import_react_resizable_panels.Separator,
|
|
2955
3393
|
{
|
|
2956
3394
|
"data-slot": "resizable-handle",
|
|
@@ -2959,27 +3397,27 @@ function ResizableHandle({
|
|
|
2959
3397
|
className
|
|
2960
3398
|
),
|
|
2961
3399
|
...props,
|
|
2962
|
-
children: withHandle ? /* @__PURE__ */ (0,
|
|
3400
|
+
children: withHandle ? /* @__PURE__ */ (0, import_jsx_runtime43.jsx)("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-xs border border-border bg-border", children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react16.GripVerticalIcon, { className: "size-2.5" }) }) : null
|
|
2963
3401
|
}
|
|
2964
3402
|
);
|
|
2965
3403
|
}
|
|
2966
3404
|
|
|
2967
3405
|
// src/ui/scroll-area.tsx
|
|
2968
3406
|
var import_scroll_area = require("@base-ui/react/scroll-area");
|
|
2969
|
-
var
|
|
3407
|
+
var import_jsx_runtime44 = require("react/jsx-runtime");
|
|
2970
3408
|
function ScrollArea({
|
|
2971
3409
|
className,
|
|
2972
3410
|
children,
|
|
2973
3411
|
...props
|
|
2974
3412
|
}) {
|
|
2975
|
-
return /* @__PURE__ */ (0,
|
|
3413
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
|
|
2976
3414
|
import_scroll_area.ScrollArea.Root,
|
|
2977
3415
|
{
|
|
2978
3416
|
"data-slot": "scroll-area",
|
|
2979
3417
|
className: cn("relative overflow-hidden", className),
|
|
2980
3418
|
...props,
|
|
2981
3419
|
children: [
|
|
2982
|
-
/* @__PURE__ */ (0,
|
|
3420
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
2983
3421
|
import_scroll_area.ScrollArea.Viewport,
|
|
2984
3422
|
{
|
|
2985
3423
|
"data-slot": "scroll-area-viewport",
|
|
@@ -2987,8 +3425,8 @@ function ScrollArea({
|
|
|
2987
3425
|
children
|
|
2988
3426
|
}
|
|
2989
3427
|
),
|
|
2990
|
-
/* @__PURE__ */ (0,
|
|
2991
|
-
/* @__PURE__ */ (0,
|
|
3428
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ScrollBar, {}),
|
|
3429
|
+
/* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_scroll_area.ScrollArea.Corner, {})
|
|
2992
3430
|
]
|
|
2993
3431
|
}
|
|
2994
3432
|
);
|
|
@@ -2998,7 +3436,7 @@ function ScrollBar({
|
|
|
2998
3436
|
orientation = "vertical",
|
|
2999
3437
|
...props
|
|
3000
3438
|
}) {
|
|
3001
|
-
return /* @__PURE__ */ (0,
|
|
3439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
3002
3440
|
import_scroll_area.ScrollArea.Scrollbar,
|
|
3003
3441
|
{
|
|
3004
3442
|
"data-slot": "scroll-area-scrollbar",
|
|
@@ -3010,7 +3448,7 @@ function ScrollBar({
|
|
|
3010
3448
|
className
|
|
3011
3449
|
),
|
|
3012
3450
|
...props,
|
|
3013
|
-
children: /* @__PURE__ */ (0,
|
|
3451
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
|
|
3014
3452
|
import_scroll_area.ScrollArea.Thumb,
|
|
3015
3453
|
{
|
|
3016
3454
|
"data-slot": "scroll-area-thumb",
|
|
@@ -3024,205 +3462,879 @@ function ScrollBar({
|
|
|
3024
3462
|
// src/ui/select.tsx
|
|
3025
3463
|
var import_select = require("@base-ui/react/select");
|
|
3026
3464
|
var import_lucide_react17 = require("lucide-react");
|
|
3027
|
-
var
|
|
3465
|
+
var import_jsx_runtime45 = require("react/jsx-runtime");
|
|
3028
3466
|
var Select = import_select.Select.Root;
|
|
3029
3467
|
function SelectGroup({
|
|
3030
3468
|
...props
|
|
3031
3469
|
}) {
|
|
3032
|
-
return /* @__PURE__ */ (0,
|
|
3470
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.Group, { "data-slot": "select-group", ...props });
|
|
3033
3471
|
}
|
|
3034
3472
|
function SelectValue({
|
|
3035
3473
|
...props
|
|
3036
3474
|
}) {
|
|
3037
|
-
return /* @__PURE__ */ (0,
|
|
3475
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.Value, { "data-slot": "select-value", ...props });
|
|
3476
|
+
}
|
|
3477
|
+
function SelectTrigger({
|
|
3478
|
+
className,
|
|
3479
|
+
size = "default",
|
|
3480
|
+
children,
|
|
3481
|
+
...props
|
|
3482
|
+
}) {
|
|
3483
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
3484
|
+
import_select.Select.Trigger,
|
|
3485
|
+
{
|
|
3486
|
+
"data-slot": "select-trigger",
|
|
3487
|
+
"data-size": size,
|
|
3488
|
+
className: cn(
|
|
3489
|
+
"flex w-fit cursor-pointer items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-colors outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 data-[placeholder]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3490
|
+
className
|
|
3491
|
+
),
|
|
3492
|
+
...props,
|
|
3493
|
+
children: [
|
|
3494
|
+
children,
|
|
3495
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3496
|
+
import_select.Select.Icon,
|
|
3497
|
+
{
|
|
3498
|
+
render: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react17.ChevronDownIcon, { className: "size-4 opacity-50" })
|
|
3499
|
+
}
|
|
3500
|
+
)
|
|
3501
|
+
]
|
|
3502
|
+
}
|
|
3503
|
+
);
|
|
3504
|
+
}
|
|
3505
|
+
function SelectContent({
|
|
3506
|
+
className,
|
|
3507
|
+
children,
|
|
3508
|
+
side = "bottom",
|
|
3509
|
+
sideOffset = 4,
|
|
3510
|
+
align = "center",
|
|
3511
|
+
alignItemWithTrigger = false,
|
|
3512
|
+
...props
|
|
3513
|
+
}) {
|
|
3514
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3515
|
+
import_select.Select.Positioner,
|
|
3516
|
+
{
|
|
3517
|
+
side,
|
|
3518
|
+
sideOffset,
|
|
3519
|
+
align,
|
|
3520
|
+
alignItemWithTrigger,
|
|
3521
|
+
className: "isolate z-50",
|
|
3522
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
3523
|
+
import_select.Select.Popup,
|
|
3524
|
+
{
|
|
3525
|
+
"data-slot": "select-content",
|
|
3526
|
+
className: cn(
|
|
3527
|
+
"relative z-50 max-h-96 min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover text-popover-foreground shadow-md shadow-(color:--shadow-color) duration-200 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",
|
|
3528
|
+
className
|
|
3529
|
+
),
|
|
3530
|
+
...props,
|
|
3531
|
+
children: [
|
|
3532
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(SelectScrollUpButton, {}),
|
|
3533
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.List, { className: "p-1", children }),
|
|
3534
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(SelectScrollDownButton, {})
|
|
3535
|
+
]
|
|
3536
|
+
}
|
|
3537
|
+
)
|
|
3538
|
+
}
|
|
3539
|
+
) });
|
|
3540
|
+
}
|
|
3541
|
+
function SelectLabel({
|
|
3542
|
+
className,
|
|
3543
|
+
...props
|
|
3544
|
+
}) {
|
|
3545
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3546
|
+
import_select.Select.GroupLabel,
|
|
3547
|
+
{
|
|
3548
|
+
"data-slot": "select-label",
|
|
3549
|
+
className: cn("px-2 py-1.5 text-xs text-muted-foreground", className),
|
|
3550
|
+
...props
|
|
3551
|
+
}
|
|
3552
|
+
);
|
|
3553
|
+
}
|
|
3554
|
+
function SelectItem({
|
|
3555
|
+
className,
|
|
3556
|
+
children,
|
|
3557
|
+
...props
|
|
3558
|
+
}) {
|
|
3559
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
|
|
3560
|
+
import_select.Select.Item,
|
|
3561
|
+
{
|
|
3562
|
+
"data-slot": "select-item",
|
|
3563
|
+
className: cn(
|
|
3564
|
+
"relative flex w-full cursor-pointer items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none focus:bg-(--menu-hover-background) focus:text-(--menu-hover-foreground) data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3565
|
+
className
|
|
3566
|
+
),
|
|
3567
|
+
...props,
|
|
3568
|
+
children: [
|
|
3569
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react17.CheckIcon, { className: "size-4" }) }) }),
|
|
3570
|
+
/* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_select.Select.ItemText, { children })
|
|
3571
|
+
]
|
|
3572
|
+
}
|
|
3573
|
+
);
|
|
3574
|
+
}
|
|
3575
|
+
function SelectSeparator({
|
|
3576
|
+
className,
|
|
3577
|
+
...props
|
|
3578
|
+
}) {
|
|
3579
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3580
|
+
import_select.Select.Separator,
|
|
3581
|
+
{
|
|
3582
|
+
"data-slot": "select-separator",
|
|
3583
|
+
className: cn("pointer-events-none -mx-1 my-1 h-px bg-border", className),
|
|
3584
|
+
...props
|
|
3585
|
+
}
|
|
3586
|
+
);
|
|
3587
|
+
}
|
|
3588
|
+
function SelectScrollUpButton({
|
|
3589
|
+
className,
|
|
3590
|
+
...props
|
|
3591
|
+
}) {
|
|
3592
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3593
|
+
import_select.Select.ScrollUpArrow,
|
|
3594
|
+
{
|
|
3595
|
+
"data-slot": "select-scroll-up-button",
|
|
3596
|
+
className: cn(
|
|
3597
|
+
"flex cursor-default items-center justify-center py-1",
|
|
3598
|
+
className
|
|
3599
|
+
),
|
|
3600
|
+
...props,
|
|
3601
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react17.ChevronUpIcon, { className: "size-4" })
|
|
3602
|
+
}
|
|
3603
|
+
);
|
|
3604
|
+
}
|
|
3605
|
+
function SelectScrollDownButton({
|
|
3606
|
+
className,
|
|
3607
|
+
...props
|
|
3608
|
+
}) {
|
|
3609
|
+
return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
|
|
3610
|
+
import_select.Select.ScrollDownArrow,
|
|
3611
|
+
{
|
|
3612
|
+
"data-slot": "select-scroll-down-button",
|
|
3613
|
+
className: cn(
|
|
3614
|
+
"flex cursor-default items-center justify-center py-1",
|
|
3615
|
+
className
|
|
3616
|
+
),
|
|
3617
|
+
...props,
|
|
3618
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(import_lucide_react17.ChevronDownIcon, { className: "size-4" })
|
|
3619
|
+
}
|
|
3620
|
+
);
|
|
3621
|
+
}
|
|
3622
|
+
|
|
3623
|
+
// src/ui/separator.tsx
|
|
3624
|
+
var import_separator = require("@base-ui/react/separator");
|
|
3625
|
+
var import_jsx_runtime46 = require("react/jsx-runtime");
|
|
3626
|
+
function Separator({
|
|
3627
|
+
className,
|
|
3628
|
+
orientation = "horizontal",
|
|
3629
|
+
decorative: _decorative,
|
|
3630
|
+
...props
|
|
3631
|
+
}) {
|
|
3632
|
+
return /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
|
|
3633
|
+
import_separator.Separator,
|
|
3634
|
+
{
|
|
3635
|
+
"data-slot": "separator",
|
|
3636
|
+
orientation,
|
|
3637
|
+
className: cn(
|
|
3638
|
+
"shrink-0 bg-border data-[orientation=horizontal]:h-px data-[orientation=horizontal]:w-full data-[orientation=vertical]:h-full data-[orientation=vertical]:w-px",
|
|
3639
|
+
className
|
|
3640
|
+
),
|
|
3641
|
+
...props
|
|
3642
|
+
}
|
|
3643
|
+
);
|
|
3644
|
+
}
|
|
3645
|
+
|
|
3646
|
+
// src/ui/sidebar.tsx
|
|
3647
|
+
var React6 = __toESM(require("react"), 1);
|
|
3648
|
+
var import_class_variance_authority8 = require("class-variance-authority");
|
|
3649
|
+
var import_lucide_react18 = require("lucide-react");
|
|
3650
|
+
|
|
3651
|
+
// src/hooks/use-mobile.ts
|
|
3652
|
+
var import_react = require("react");
|
|
3653
|
+
var MOBILE_MEDIA_QUERY = "(max-width: 767px)";
|
|
3654
|
+
function useIsMobile() {
|
|
3655
|
+
const [isMobile, setIsMobile] = (0, import_react.useState)(
|
|
3656
|
+
() => typeof window !== "undefined" && typeof window.matchMedia === "function" && window.matchMedia(MOBILE_MEDIA_QUERY).matches
|
|
3657
|
+
);
|
|
3658
|
+
(0, import_react.useEffect)(() => {
|
|
3659
|
+
if (typeof window.matchMedia !== "function") {
|
|
3660
|
+
return;
|
|
3661
|
+
}
|
|
3662
|
+
const media = window.matchMedia(MOBILE_MEDIA_QUERY);
|
|
3663
|
+
const onChange = (event) => {
|
|
3664
|
+
setIsMobile(event.matches);
|
|
3665
|
+
};
|
|
3666
|
+
setIsMobile(media.matches);
|
|
3667
|
+
media.addEventListener("change", onChange);
|
|
3668
|
+
return () => media.removeEventListener("change", onChange);
|
|
3669
|
+
}, []);
|
|
3670
|
+
return isMobile;
|
|
3671
|
+
}
|
|
3672
|
+
|
|
3673
|
+
// src/ui/skeleton.tsx
|
|
3674
|
+
var import_jsx_runtime47 = require("react/jsx-runtime");
|
|
3675
|
+
function Skeleton({ className, ...props }) {
|
|
3676
|
+
return /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
|
|
3677
|
+
"div",
|
|
3678
|
+
{
|
|
3679
|
+
"data-slot": "skeleton",
|
|
3680
|
+
className: cn("animate-pulse rounded-md bg-muted", className),
|
|
3681
|
+
...props
|
|
3682
|
+
}
|
|
3683
|
+
);
|
|
3684
|
+
}
|
|
3685
|
+
|
|
3686
|
+
// src/ui/sidebar.tsx
|
|
3687
|
+
var import_jsx_runtime48 = require("react/jsx-runtime");
|
|
3688
|
+
var SIDEBAR_COOKIE_NAME = "sidebar_state";
|
|
3689
|
+
var SIDEBAR_COOKIE_MAX_AGE = 60 * 60 * 24 * 7;
|
|
3690
|
+
var SIDEBAR_WIDTH = "16rem";
|
|
3691
|
+
var SIDEBAR_WIDTH_MOBILE = "18rem";
|
|
3692
|
+
var SIDEBAR_WIDTH_ICON = "3rem";
|
|
3693
|
+
var SIDEBAR_KEYBOARD_SHORTCUT = "b";
|
|
3694
|
+
var SidebarContext = React6.createContext(null);
|
|
3695
|
+
function useSidebar() {
|
|
3696
|
+
const context = React6.useContext(SidebarContext);
|
|
3697
|
+
if (!context) {
|
|
3698
|
+
throw new Error("useSidebar must be used within a SidebarProvider.");
|
|
3699
|
+
}
|
|
3700
|
+
return context;
|
|
3701
|
+
}
|
|
3702
|
+
function SidebarProvider({
|
|
3703
|
+
defaultOpen = true,
|
|
3704
|
+
open: openProp,
|
|
3705
|
+
onOpenChange: setOpenProp,
|
|
3706
|
+
className,
|
|
3707
|
+
style,
|
|
3708
|
+
children,
|
|
3709
|
+
...props
|
|
3710
|
+
}) {
|
|
3711
|
+
const isMobile = useIsMobile();
|
|
3712
|
+
const [openMobile, setOpenMobile] = React6.useState(false);
|
|
3713
|
+
const [_open, _setOpen] = React6.useState(defaultOpen);
|
|
3714
|
+
const open = openProp ?? _open;
|
|
3715
|
+
const setOpen = React6.useCallback(
|
|
3716
|
+
(value) => {
|
|
3717
|
+
const openState = typeof value === "function" ? value(open) : value;
|
|
3718
|
+
if (setOpenProp) {
|
|
3719
|
+
setOpenProp(openState);
|
|
3720
|
+
} else {
|
|
3721
|
+
_setOpen(openState);
|
|
3722
|
+
}
|
|
3723
|
+
document.cookie = `${SIDEBAR_COOKIE_NAME}=${openState}; path=/; max-age=${SIDEBAR_COOKIE_MAX_AGE}`;
|
|
3724
|
+
},
|
|
3725
|
+
[setOpenProp, open]
|
|
3726
|
+
);
|
|
3727
|
+
const toggleSidebar = React6.useCallback(() => {
|
|
3728
|
+
return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
|
|
3729
|
+
}, [isMobile, setOpen, setOpenMobile]);
|
|
3730
|
+
React6.useEffect(() => {
|
|
3731
|
+
const handleKeyDown = (event) => {
|
|
3732
|
+
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
|
|
3733
|
+
event.preventDefault();
|
|
3734
|
+
toggleSidebar();
|
|
3735
|
+
}
|
|
3736
|
+
};
|
|
3737
|
+
window.addEventListener("keydown", handleKeyDown);
|
|
3738
|
+
return () => window.removeEventListener("keydown", handleKeyDown);
|
|
3739
|
+
}, [toggleSidebar]);
|
|
3740
|
+
const state = open ? "expanded" : "collapsed";
|
|
3741
|
+
const contextValue = React6.useMemo(
|
|
3742
|
+
() => ({
|
|
3743
|
+
state,
|
|
3744
|
+
open,
|
|
3745
|
+
setOpen,
|
|
3746
|
+
isMobile,
|
|
3747
|
+
openMobile,
|
|
3748
|
+
setOpenMobile,
|
|
3749
|
+
toggleSidebar
|
|
3750
|
+
}),
|
|
3751
|
+
[state, open, setOpen, isMobile, openMobile, setOpenMobile, toggleSidebar]
|
|
3752
|
+
);
|
|
3753
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SidebarContext.Provider, { value: contextValue, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(TooltipProvider, { delay: 0, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3754
|
+
"div",
|
|
3755
|
+
{
|
|
3756
|
+
"data-slot": "sidebar-wrapper",
|
|
3757
|
+
style: {
|
|
3758
|
+
"--sidebar-width": SIDEBAR_WIDTH,
|
|
3759
|
+
"--sidebar-width-icon": SIDEBAR_WIDTH_ICON,
|
|
3760
|
+
...style
|
|
3761
|
+
},
|
|
3762
|
+
className: cn(
|
|
3763
|
+
"group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar",
|
|
3764
|
+
className
|
|
3765
|
+
),
|
|
3766
|
+
...props,
|
|
3767
|
+
children
|
|
3768
|
+
}
|
|
3769
|
+
) }) });
|
|
3770
|
+
}
|
|
3771
|
+
function SidebarRoot({
|
|
3772
|
+
side = "left",
|
|
3773
|
+
variant = "sidebar",
|
|
3774
|
+
collapsible = "offcanvas",
|
|
3775
|
+
className,
|
|
3776
|
+
children,
|
|
3777
|
+
...props
|
|
3778
|
+
}) {
|
|
3779
|
+
const { isMobile, state, openMobile, setOpenMobile } = useSidebar();
|
|
3780
|
+
if (collapsible === "none") {
|
|
3781
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3782
|
+
"div",
|
|
3783
|
+
{
|
|
3784
|
+
"data-slot": "sidebar",
|
|
3785
|
+
className: cn(
|
|
3786
|
+
"flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground",
|
|
3787
|
+
className
|
|
3788
|
+
),
|
|
3789
|
+
...props,
|
|
3790
|
+
children
|
|
3791
|
+
}
|
|
3792
|
+
);
|
|
3793
|
+
}
|
|
3794
|
+
if (isMobile) {
|
|
3795
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(Sheet, { open: openMobile, onOpenChange: setOpenMobile, ...props, children: /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
|
|
3796
|
+
SheetContent,
|
|
3797
|
+
{
|
|
3798
|
+
"data-sidebar": "sidebar",
|
|
3799
|
+
"data-slot": "sidebar",
|
|
3800
|
+
"data-mobile": "true",
|
|
3801
|
+
className: "w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden",
|
|
3802
|
+
style: {
|
|
3803
|
+
"--sidebar-width": SIDEBAR_WIDTH_MOBILE
|
|
3804
|
+
},
|
|
3805
|
+
side,
|
|
3806
|
+
children: [
|
|
3807
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(SheetHeader, { className: "sr-only", children: [
|
|
3808
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SheetTitle, { children: "Sidebar" }),
|
|
3809
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(SheetDescription, { children: "Displays the mobile sidebar." })
|
|
3810
|
+
] }),
|
|
3811
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)("div", { className: "flex h-full w-full flex-col", children })
|
|
3812
|
+
]
|
|
3813
|
+
}
|
|
3814
|
+
) });
|
|
3815
|
+
}
|
|
3816
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
|
|
3817
|
+
"div",
|
|
3818
|
+
{
|
|
3819
|
+
className: "group peer hidden text-sidebar-foreground md:block",
|
|
3820
|
+
"data-state": state,
|
|
3821
|
+
"data-collapsible": state === "collapsed" ? collapsible : "",
|
|
3822
|
+
"data-variant": variant,
|
|
3823
|
+
"data-side": side,
|
|
3824
|
+
"data-slot": "sidebar",
|
|
3825
|
+
children: [
|
|
3826
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3827
|
+
"div",
|
|
3828
|
+
{
|
|
3829
|
+
"data-slot": "sidebar-gap",
|
|
3830
|
+
className: cn(
|
|
3831
|
+
"relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear",
|
|
3832
|
+
"group-data-[collapsible=offcanvas]:w-0",
|
|
3833
|
+
"group-data-[side=right]:rotate-180",
|
|
3834
|
+
variant === "floating" || variant === "inset" ? "group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon)"
|
|
3835
|
+
)
|
|
3836
|
+
}
|
|
3837
|
+
),
|
|
3838
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3839
|
+
"div",
|
|
3840
|
+
{
|
|
3841
|
+
"data-slot": "sidebar-container",
|
|
3842
|
+
className: cn(
|
|
3843
|
+
"fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear md:flex",
|
|
3844
|
+
side === "left" ? "left-0 group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)]" : "right-0 group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)]",
|
|
3845
|
+
variant === "floating" || variant === "inset" ? "p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]" : "group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l",
|
|
3846
|
+
className
|
|
3847
|
+
),
|
|
3848
|
+
...props,
|
|
3849
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3850
|
+
"div",
|
|
3851
|
+
{
|
|
3852
|
+
"data-sidebar": "sidebar",
|
|
3853
|
+
"data-slot": "sidebar-inner",
|
|
3854
|
+
className: "flex h-full w-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:border group-data-[variant=floating]:border-sidebar-border group-data-[variant=floating]:shadow-sm",
|
|
3855
|
+
children
|
|
3856
|
+
}
|
|
3857
|
+
)
|
|
3858
|
+
}
|
|
3859
|
+
)
|
|
3860
|
+
]
|
|
3861
|
+
}
|
|
3862
|
+
);
|
|
3863
|
+
}
|
|
3864
|
+
function SidebarTrigger({
|
|
3865
|
+
className,
|
|
3866
|
+
onClick,
|
|
3867
|
+
...props
|
|
3868
|
+
}) {
|
|
3869
|
+
const { toggleSidebar } = useSidebar();
|
|
3870
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
|
|
3871
|
+
Button,
|
|
3872
|
+
{
|
|
3873
|
+
"data-sidebar": "trigger",
|
|
3874
|
+
"data-slot": "sidebar-trigger",
|
|
3875
|
+
variant: "ghost",
|
|
3876
|
+
size: "icon",
|
|
3877
|
+
className: cn("size-7", className),
|
|
3878
|
+
onClick: (event) => {
|
|
3879
|
+
onClick?.(event);
|
|
3880
|
+
toggleSidebar();
|
|
3881
|
+
},
|
|
3882
|
+
...props,
|
|
3883
|
+
children: [
|
|
3884
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(import_lucide_react18.PanelLeftIcon, {}),
|
|
3885
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
|
|
3886
|
+
]
|
|
3887
|
+
}
|
|
3888
|
+
);
|
|
3889
|
+
}
|
|
3890
|
+
function SidebarRail({ className, ...props }) {
|
|
3891
|
+
const { toggleSidebar } = useSidebar();
|
|
3892
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3893
|
+
"button",
|
|
3894
|
+
{
|
|
3895
|
+
"data-sidebar": "rail",
|
|
3896
|
+
"data-slot": "sidebar-rail",
|
|
3897
|
+
"aria-label": "Toggle Sidebar",
|
|
3898
|
+
tabIndex: -1,
|
|
3899
|
+
onClick: toggleSidebar,
|
|
3900
|
+
title: "Toggle Sidebar",
|
|
3901
|
+
className: cn(
|
|
3902
|
+
"absolute inset-y-0 z-20 hidden w-4 -translate-x-1/2 transition-all ease-linear group-data-[side=left]:-right-4 group-data-[side=right]:left-0 after:absolute after:inset-y-0 after:left-1/2 after:w-[2px] hover:after:bg-sidebar-border sm:flex",
|
|
3903
|
+
"in-data-[side=left]:cursor-w-resize in-data-[side=right]:cursor-e-resize",
|
|
3904
|
+
"[[data-side=left][data-state=collapsed]_&]:cursor-e-resize [[data-side=right][data-state=collapsed]_&]:cursor-w-resize",
|
|
3905
|
+
"group-data-[collapsible=offcanvas]:translate-x-0 group-data-[collapsible=offcanvas]:after:left-full hover:group-data-[collapsible=offcanvas]:bg-sidebar",
|
|
3906
|
+
"[[data-side=left][data-collapsible=offcanvas]_&]:-right-2",
|
|
3907
|
+
"[[data-side=right][data-collapsible=offcanvas]_&]:-left-2",
|
|
3908
|
+
className
|
|
3909
|
+
),
|
|
3910
|
+
...props
|
|
3911
|
+
}
|
|
3912
|
+
);
|
|
3913
|
+
}
|
|
3914
|
+
function SidebarInset({ className, ...props }) {
|
|
3915
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3916
|
+
"main",
|
|
3917
|
+
{
|
|
3918
|
+
"data-slot": "sidebar-inset",
|
|
3919
|
+
className: cn(
|
|
3920
|
+
"relative flex w-full flex-1 flex-col bg-background",
|
|
3921
|
+
"md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2",
|
|
3922
|
+
className
|
|
3923
|
+
),
|
|
3924
|
+
...props
|
|
3925
|
+
}
|
|
3926
|
+
);
|
|
3927
|
+
}
|
|
3928
|
+
function SidebarInput({
|
|
3929
|
+
className,
|
|
3930
|
+
...props
|
|
3931
|
+
}) {
|
|
3932
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3933
|
+
Input,
|
|
3934
|
+
{
|
|
3935
|
+
"data-slot": "sidebar-input",
|
|
3936
|
+
"data-sidebar": "input",
|
|
3937
|
+
className: cn("h-8 w-full bg-sidebar shadow-none", className),
|
|
3938
|
+
...props
|
|
3939
|
+
}
|
|
3940
|
+
);
|
|
3941
|
+
}
|
|
3942
|
+
function SidebarHeader({ className, ...props }) {
|
|
3943
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3944
|
+
"div",
|
|
3945
|
+
{
|
|
3946
|
+
"data-slot": "sidebar-header",
|
|
3947
|
+
"data-sidebar": "header",
|
|
3948
|
+
className: cn("flex flex-col gap-2 p-2", className),
|
|
3949
|
+
...props
|
|
3950
|
+
}
|
|
3951
|
+
);
|
|
3952
|
+
}
|
|
3953
|
+
function SidebarFooter({ className, ...props }) {
|
|
3954
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3955
|
+
"div",
|
|
3956
|
+
{
|
|
3957
|
+
"data-slot": "sidebar-footer",
|
|
3958
|
+
"data-sidebar": "footer",
|
|
3959
|
+
className: cn("flex flex-col gap-2 p-2", className),
|
|
3960
|
+
...props
|
|
3961
|
+
}
|
|
3962
|
+
);
|
|
3963
|
+
}
|
|
3964
|
+
function SidebarSeparator({
|
|
3965
|
+
className,
|
|
3966
|
+
...props
|
|
3967
|
+
}) {
|
|
3968
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3969
|
+
Separator,
|
|
3970
|
+
{
|
|
3971
|
+
"data-slot": "sidebar-separator",
|
|
3972
|
+
"data-sidebar": "separator",
|
|
3973
|
+
className: cn("mx-2 w-auto bg-sidebar-border", className),
|
|
3974
|
+
...props
|
|
3975
|
+
}
|
|
3976
|
+
);
|
|
3977
|
+
}
|
|
3978
|
+
function SidebarContent({ className, ...props }) {
|
|
3979
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3980
|
+
"div",
|
|
3981
|
+
{
|
|
3982
|
+
"data-slot": "sidebar-content",
|
|
3983
|
+
"data-sidebar": "content",
|
|
3984
|
+
className: cn(
|
|
3985
|
+
"flex min-h-0 flex-1 flex-col gap-2 overflow-auto group-data-[collapsible=icon]:overflow-hidden",
|
|
3986
|
+
className
|
|
3987
|
+
),
|
|
3988
|
+
...props
|
|
3989
|
+
}
|
|
3990
|
+
);
|
|
3991
|
+
}
|
|
3992
|
+
function SidebarGroup({ className, ...props }) {
|
|
3993
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
3994
|
+
"div",
|
|
3995
|
+
{
|
|
3996
|
+
"data-slot": "sidebar-group",
|
|
3997
|
+
"data-sidebar": "group",
|
|
3998
|
+
className: cn("relative flex w-full min-w-0 flex-col p-2", className),
|
|
3999
|
+
...props
|
|
4000
|
+
}
|
|
4001
|
+
);
|
|
4002
|
+
}
|
|
4003
|
+
function renderAsChild(children, dataSlot, className, rest) {
|
|
4004
|
+
if (!React6.isValidElement(children)) {
|
|
4005
|
+
return null;
|
|
4006
|
+
}
|
|
4007
|
+
return React6.cloneElement(children, {
|
|
4008
|
+
"data-slot": dataSlot,
|
|
4009
|
+
className: cn(
|
|
4010
|
+
className,
|
|
4011
|
+
children.props.className
|
|
4012
|
+
),
|
|
4013
|
+
...rest
|
|
4014
|
+
});
|
|
3038
4015
|
}
|
|
3039
|
-
function
|
|
4016
|
+
function SidebarGroupLabel({
|
|
3040
4017
|
className,
|
|
3041
|
-
|
|
4018
|
+
asChild = false,
|
|
3042
4019
|
children,
|
|
3043
4020
|
...props
|
|
3044
4021
|
}) {
|
|
3045
|
-
|
|
3046
|
-
|
|
4022
|
+
const cls = cn(
|
|
4023
|
+
"flex h-8 shrink-0 items-center rounded-md px-2 text-xs font-medium text-sidebar-foreground/70 ring-sidebar-ring outline-hidden transition-[margin,opacity] duration-200 ease-linear focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
4024
|
+
"group-data-[collapsible=icon]:-mt-8 group-data-[collapsible=icon]:opacity-0",
|
|
4025
|
+
className
|
|
4026
|
+
);
|
|
4027
|
+
if (asChild) {
|
|
4028
|
+
return renderAsChild(children, "sidebar-group-label", cls, props);
|
|
4029
|
+
}
|
|
4030
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4031
|
+
"div",
|
|
3047
4032
|
{
|
|
3048
|
-
"data-slot": "
|
|
3049
|
-
"data-
|
|
3050
|
-
className:
|
|
3051
|
-
"flex w-fit cursor-pointer items-center justify-between gap-2 rounded-md border border-input bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-colors outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 data-[placeholder]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3052
|
-
className
|
|
3053
|
-
),
|
|
4033
|
+
"data-slot": "sidebar-group-label",
|
|
4034
|
+
"data-sidebar": "group-label",
|
|
4035
|
+
className: cls,
|
|
3054
4036
|
...props,
|
|
3055
|
-
children
|
|
3056
|
-
children,
|
|
3057
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
|
|
3058
|
-
import_select.Select.Icon,
|
|
3059
|
-
{
|
|
3060
|
-
render: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react17.ChevronDownIcon, { className: "size-4 opacity-50" })
|
|
3061
|
-
}
|
|
3062
|
-
)
|
|
3063
|
-
]
|
|
4037
|
+
children
|
|
3064
4038
|
}
|
|
3065
4039
|
);
|
|
3066
4040
|
}
|
|
3067
|
-
function
|
|
4041
|
+
function SidebarGroupAction({
|
|
3068
4042
|
className,
|
|
4043
|
+
asChild = false,
|
|
3069
4044
|
children,
|
|
3070
|
-
side = "bottom",
|
|
3071
|
-
sideOffset = 4,
|
|
3072
|
-
align = "center",
|
|
3073
|
-
alignItemWithTrigger = false,
|
|
3074
4045
|
...props
|
|
3075
4046
|
}) {
|
|
3076
|
-
|
|
3077
|
-
|
|
4047
|
+
const cls = cn(
|
|
4048
|
+
"absolute top-3.5 right-3 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
4049
|
+
"after:absolute after:-inset-2 md:after:hidden",
|
|
4050
|
+
"group-data-[collapsible=icon]:hidden",
|
|
4051
|
+
className
|
|
4052
|
+
);
|
|
4053
|
+
if (asChild) {
|
|
4054
|
+
return renderAsChild(children, "sidebar-group-action", cls, props);
|
|
4055
|
+
}
|
|
4056
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4057
|
+
"button",
|
|
3078
4058
|
{
|
|
3079
|
-
|
|
3080
|
-
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
|
-
|
|
3084
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
|
|
3085
|
-
import_select.Select.Popup,
|
|
3086
|
-
{
|
|
3087
|
-
"data-slot": "select-content",
|
|
3088
|
-
className: cn(
|
|
3089
|
-
"relative z-50 max-h-96 min-w-[8rem] overflow-x-hidden overflow-y-auto rounded-md border border-border bg-popover text-popover-foreground shadow-md duration-200 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",
|
|
3090
|
-
className
|
|
3091
|
-
),
|
|
3092
|
-
...props,
|
|
3093
|
-
children: [
|
|
3094
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectScrollUpButton, {}),
|
|
3095
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_select.Select.List, { className: "p-1", children }),
|
|
3096
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(SelectScrollDownButton, {})
|
|
3097
|
-
]
|
|
3098
|
-
}
|
|
3099
|
-
)
|
|
4059
|
+
"data-slot": "sidebar-group-action",
|
|
4060
|
+
"data-sidebar": "group-action",
|
|
4061
|
+
className: cls,
|
|
4062
|
+
...props,
|
|
4063
|
+
children
|
|
3100
4064
|
}
|
|
3101
|
-
)
|
|
4065
|
+
);
|
|
3102
4066
|
}
|
|
3103
|
-
function
|
|
4067
|
+
function SidebarGroupContent({
|
|
3104
4068
|
className,
|
|
3105
4069
|
...props
|
|
3106
4070
|
}) {
|
|
3107
|
-
return /* @__PURE__ */ (0,
|
|
3108
|
-
|
|
4071
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4072
|
+
"div",
|
|
3109
4073
|
{
|
|
3110
|
-
"data-slot": "
|
|
3111
|
-
|
|
4074
|
+
"data-slot": "sidebar-group-content",
|
|
4075
|
+
"data-sidebar": "group-content",
|
|
4076
|
+
className: cn("w-full text-sm", className),
|
|
3112
4077
|
...props
|
|
3113
4078
|
}
|
|
3114
4079
|
);
|
|
3115
4080
|
}
|
|
3116
|
-
function
|
|
4081
|
+
function SidebarMenu({ className, ...props }) {
|
|
4082
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4083
|
+
"ul",
|
|
4084
|
+
{
|
|
4085
|
+
"data-slot": "sidebar-menu",
|
|
4086
|
+
"data-sidebar": "menu",
|
|
4087
|
+
className: cn("flex w-full min-w-0 flex-col gap-1", className),
|
|
4088
|
+
...props
|
|
4089
|
+
}
|
|
4090
|
+
);
|
|
4091
|
+
}
|
|
4092
|
+
function SidebarMenuItem({ className, ...props }) {
|
|
4093
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4094
|
+
"li",
|
|
4095
|
+
{
|
|
4096
|
+
"data-slot": "sidebar-menu-item",
|
|
4097
|
+
"data-sidebar": "menu-item",
|
|
4098
|
+
className: cn("group/menu-item relative", className),
|
|
4099
|
+
...props
|
|
4100
|
+
}
|
|
4101
|
+
);
|
|
4102
|
+
}
|
|
4103
|
+
var sidebarMenuButtonVariants = (0, import_class_variance_authority8.cva)(
|
|
4104
|
+
"peer/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-[active=true]:bg-sidebar-accent data-[active=true]:font-medium data-[active=true]:text-sidebar-accent-foreground data-[state=open]:hover:bg-sidebar-accent data-[state=open]:hover:text-sidebar-accent-foreground [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0",
|
|
4105
|
+
{
|
|
4106
|
+
variants: {
|
|
4107
|
+
variant: {
|
|
4108
|
+
default: "hover:bg-sidebar-accent hover:text-sidebar-accent-foreground",
|
|
4109
|
+
outline: "bg-sidebar shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]"
|
|
4110
|
+
},
|
|
4111
|
+
size: {
|
|
4112
|
+
default: "h-8 text-sm",
|
|
4113
|
+
sm: "h-7 text-xs",
|
|
4114
|
+
lg: "h-12 text-sm group-data-[collapsible=icon]:p-0!"
|
|
4115
|
+
}
|
|
4116
|
+
},
|
|
4117
|
+
defaultVariants: {
|
|
4118
|
+
variant: "default",
|
|
4119
|
+
size: "default"
|
|
4120
|
+
}
|
|
4121
|
+
}
|
|
4122
|
+
);
|
|
4123
|
+
function SidebarMenuButton({
|
|
4124
|
+
asChild = false,
|
|
4125
|
+
isActive = false,
|
|
4126
|
+
variant = "default",
|
|
4127
|
+
size = "default",
|
|
4128
|
+
tooltip,
|
|
3117
4129
|
className,
|
|
3118
4130
|
children,
|
|
3119
4131
|
...props
|
|
3120
4132
|
}) {
|
|
3121
|
-
|
|
3122
|
-
|
|
4133
|
+
const { isMobile, state } = useSidebar();
|
|
4134
|
+
const cls = cn(sidebarMenuButtonVariants({ variant, size }), className);
|
|
4135
|
+
const button = asChild ? renderAsChild(children, "sidebar-menu-button", cls, {
|
|
4136
|
+
"data-sidebar": "menu-button",
|
|
4137
|
+
"data-size": size,
|
|
4138
|
+
"data-active": isActive,
|
|
4139
|
+
...props
|
|
4140
|
+
}) : /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4141
|
+
"button",
|
|
3123
4142
|
{
|
|
3124
|
-
"data-slot": "
|
|
3125
|
-
|
|
3126
|
-
|
|
3127
|
-
|
|
3128
|
-
|
|
4143
|
+
"data-slot": "sidebar-menu-button",
|
|
4144
|
+
"data-sidebar": "menu-button",
|
|
4145
|
+
"data-size": size,
|
|
4146
|
+
"data-active": isActive,
|
|
4147
|
+
className: cls,
|
|
3129
4148
|
...props,
|
|
3130
|
-
children
|
|
3131
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_select.Select.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react17.CheckIcon, { className: "size-4" }) }) }),
|
|
3132
|
-
/* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_select.Select.ItemText, { children })
|
|
3133
|
-
]
|
|
4149
|
+
children
|
|
3134
4150
|
}
|
|
3135
4151
|
);
|
|
4152
|
+
if (!tooltip) {
|
|
4153
|
+
return button;
|
|
4154
|
+
}
|
|
4155
|
+
if (typeof tooltip === "string") {
|
|
4156
|
+
tooltip = {
|
|
4157
|
+
children: tooltip
|
|
4158
|
+
};
|
|
4159
|
+
}
|
|
4160
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(Tooltip, { children: [
|
|
4161
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(TooltipTrigger, { render: button }),
|
|
4162
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4163
|
+
TooltipContent,
|
|
4164
|
+
{
|
|
4165
|
+
side: "right",
|
|
4166
|
+
align: "center",
|
|
4167
|
+
hidden: state !== "collapsed" || isMobile,
|
|
4168
|
+
...tooltip
|
|
4169
|
+
}
|
|
4170
|
+
)
|
|
4171
|
+
] });
|
|
3136
4172
|
}
|
|
3137
|
-
function
|
|
4173
|
+
function SidebarMenuAction({
|
|
3138
4174
|
className,
|
|
4175
|
+
asChild = false,
|
|
4176
|
+
showOnHover = false,
|
|
4177
|
+
children,
|
|
3139
4178
|
...props
|
|
3140
4179
|
}) {
|
|
3141
|
-
|
|
3142
|
-
|
|
4180
|
+
const cls = cn(
|
|
4181
|
+
"absolute top-1.5 right-1 flex aspect-square w-5 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform peer-hover/menu-button:text-sidebar-accent-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0",
|
|
4182
|
+
"after:absolute after:-inset-2 md:after:hidden",
|
|
4183
|
+
"peer-data-[size=sm]/menu-button:top-1",
|
|
4184
|
+
"peer-data-[size=default]/menu-button:top-1.5",
|
|
4185
|
+
"peer-data-[size=lg]/menu-button:top-2.5",
|
|
4186
|
+
"group-data-[collapsible=icon]:hidden",
|
|
4187
|
+
showOnHover && "group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-[active=true]/menu-button:text-sidebar-accent-foreground data-[state=open]:opacity-100 md:opacity-0",
|
|
4188
|
+
className
|
|
4189
|
+
);
|
|
4190
|
+
if (asChild) {
|
|
4191
|
+
return renderAsChild(children, "sidebar-menu-action", cls, props);
|
|
4192
|
+
}
|
|
4193
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4194
|
+
"button",
|
|
3143
4195
|
{
|
|
3144
|
-
"data-slot": "
|
|
3145
|
-
|
|
3146
|
-
|
|
4196
|
+
"data-slot": "sidebar-menu-action",
|
|
4197
|
+
"data-sidebar": "menu-action",
|
|
4198
|
+
className: cls,
|
|
4199
|
+
...props,
|
|
4200
|
+
children
|
|
3147
4201
|
}
|
|
3148
4202
|
);
|
|
3149
4203
|
}
|
|
3150
|
-
function
|
|
4204
|
+
function SidebarMenuBadge({
|
|
3151
4205
|
className,
|
|
3152
4206
|
...props
|
|
3153
4207
|
}) {
|
|
3154
|
-
return /* @__PURE__ */ (0,
|
|
3155
|
-
|
|
4208
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4209
|
+
"div",
|
|
3156
4210
|
{
|
|
3157
|
-
"data-slot": "
|
|
4211
|
+
"data-slot": "sidebar-menu-badge",
|
|
4212
|
+
"data-sidebar": "menu-badge",
|
|
3158
4213
|
className: cn(
|
|
3159
|
-
"flex
|
|
4214
|
+
"pointer-events-none absolute right-1 flex h-5 min-w-5 items-center justify-center rounded-md px-1 text-xs font-medium text-sidebar-foreground tabular-nums select-none",
|
|
4215
|
+
"peer-hover/menu-button:text-sidebar-accent-foreground peer-data-[active=true]/menu-button:text-sidebar-accent-foreground",
|
|
4216
|
+
"peer-data-[size=sm]/menu-button:top-1",
|
|
4217
|
+
"peer-data-[size=default]/menu-button:top-1.5",
|
|
4218
|
+
"peer-data-[size=lg]/menu-button:top-2.5",
|
|
4219
|
+
"group-data-[collapsible=icon]:hidden",
|
|
3160
4220
|
className
|
|
3161
4221
|
),
|
|
3162
|
-
...props
|
|
3163
|
-
children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(import_lucide_react17.ChevronUpIcon, { className: "size-4" })
|
|
4222
|
+
...props
|
|
3164
4223
|
}
|
|
3165
4224
|
);
|
|
3166
4225
|
}
|
|
3167
|
-
function
|
|
4226
|
+
function SidebarMenuSkeleton({
|
|
3168
4227
|
className,
|
|
4228
|
+
showIcon = false,
|
|
3169
4229
|
...props
|
|
3170
4230
|
}) {
|
|
3171
|
-
|
|
3172
|
-
|
|
4231
|
+
const width = React6.useMemo(() => {
|
|
4232
|
+
return `${Math.floor(Math.random() * 40) + 50}%`;
|
|
4233
|
+
}, []);
|
|
4234
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsxs)(
|
|
4235
|
+
"div",
|
|
3173
4236
|
{
|
|
3174
|
-
"data-slot": "
|
|
3175
|
-
|
|
3176
|
-
|
|
3177
|
-
className
|
|
3178
|
-
),
|
|
4237
|
+
"data-slot": "sidebar-menu-skeleton",
|
|
4238
|
+
"data-sidebar": "menu-skeleton",
|
|
4239
|
+
className: cn("flex h-8 items-center gap-2 rounded-md px-2", className),
|
|
3179
4240
|
...props,
|
|
3180
|
-
children:
|
|
4241
|
+
children: [
|
|
4242
|
+
showIcon && /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4243
|
+
Skeleton,
|
|
4244
|
+
{
|
|
4245
|
+
className: "size-4 rounded-md",
|
|
4246
|
+
"data-sidebar": "menu-skeleton-icon"
|
|
4247
|
+
}
|
|
4248
|
+
),
|
|
4249
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4250
|
+
Skeleton,
|
|
4251
|
+
{
|
|
4252
|
+
className: "h-4 max-w-(--skeleton-width) flex-1",
|
|
4253
|
+
"data-sidebar": "menu-skeleton-text",
|
|
4254
|
+
style: {
|
|
4255
|
+
"--skeleton-width": width
|
|
4256
|
+
}
|
|
4257
|
+
}
|
|
4258
|
+
)
|
|
4259
|
+
]
|
|
3181
4260
|
}
|
|
3182
4261
|
);
|
|
3183
4262
|
}
|
|
3184
|
-
|
|
3185
|
-
|
|
3186
|
-
|
|
3187
|
-
var import_jsx_runtime43 = require("react/jsx-runtime");
|
|
3188
|
-
function Separator({
|
|
3189
|
-
className,
|
|
3190
|
-
orientation = "horizontal",
|
|
3191
|
-
decorative: _decorative,
|
|
3192
|
-
...props
|
|
3193
|
-
}) {
|
|
3194
|
-
return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
|
|
3195
|
-
import_separator.Separator,
|
|
4263
|
+
function SidebarMenuSub({ className, ...props }) {
|
|
4264
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4265
|
+
"ul",
|
|
3196
4266
|
{
|
|
3197
|
-
"data-slot": "
|
|
3198
|
-
|
|
4267
|
+
"data-slot": "sidebar-menu-sub",
|
|
4268
|
+
"data-sidebar": "menu-sub",
|
|
3199
4269
|
className: cn(
|
|
3200
|
-
"
|
|
4270
|
+
"mx-3.5 flex min-w-0 translate-x-px flex-col gap-1 border-l border-sidebar-border px-2.5 py-0.5",
|
|
4271
|
+
"group-data-[collapsible=icon]:hidden",
|
|
3201
4272
|
className
|
|
3202
4273
|
),
|
|
3203
4274
|
...props
|
|
3204
4275
|
}
|
|
3205
4276
|
);
|
|
3206
4277
|
}
|
|
3207
|
-
|
|
3208
|
-
|
|
3209
|
-
|
|
3210
|
-
|
|
3211
|
-
return /* @__PURE__ */ (0,
|
|
3212
|
-
"
|
|
4278
|
+
function SidebarMenuSubItem({
|
|
4279
|
+
className,
|
|
4280
|
+
...props
|
|
4281
|
+
}) {
|
|
4282
|
+
return /* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4283
|
+
"li",
|
|
3213
4284
|
{
|
|
3214
|
-
"data-slot": "
|
|
3215
|
-
|
|
4285
|
+
"data-slot": "sidebar-menu-sub-item",
|
|
4286
|
+
"data-sidebar": "menu-sub-item",
|
|
4287
|
+
className: cn("group/menu-sub-item relative", className),
|
|
3216
4288
|
...props
|
|
3217
4289
|
}
|
|
3218
4290
|
);
|
|
3219
4291
|
}
|
|
4292
|
+
function SidebarMenuSubButton({
|
|
4293
|
+
asChild = false,
|
|
4294
|
+
size = "md",
|
|
4295
|
+
isActive = false,
|
|
4296
|
+
className,
|
|
4297
|
+
children,
|
|
4298
|
+
...props
|
|
4299
|
+
}) {
|
|
4300
|
+
const cls = cn(
|
|
4301
|
+
"flex h-7 min-w-0 -translate-x-px items-center gap-2 overflow-hidden rounded-md px-2 text-sidebar-foreground ring-sidebar-ring outline-hidden hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 [&>span:last-child]:truncate [&>svg]:size-4 [&>svg]:shrink-0 [&>svg]:text-sidebar-accent-foreground",
|
|
4302
|
+
"data-[active=true]:bg-sidebar-accent data-[active=true]:text-sidebar-accent-foreground",
|
|
4303
|
+
size === "sm" && "text-xs",
|
|
4304
|
+
size === "md" && "text-sm",
|
|
4305
|
+
"group-data-[collapsible=icon]:hidden",
|
|
4306
|
+
className
|
|
4307
|
+
);
|
|
4308
|
+
if (asChild) {
|
|
4309
|
+
return renderAsChild(children, "sidebar-menu-sub-button", cls, {
|
|
4310
|
+
"data-sidebar": "menu-sub-button",
|
|
4311
|
+
"data-size": size,
|
|
4312
|
+
"data-active": isActive,
|
|
4313
|
+
...props
|
|
4314
|
+
});
|
|
4315
|
+
}
|
|
4316
|
+
return (
|
|
4317
|
+
// eslint-disable-next-line jsx-a11y/anchor-has-content
|
|
4318
|
+
/* @__PURE__ */ (0, import_jsx_runtime48.jsx)(
|
|
4319
|
+
"a",
|
|
4320
|
+
{
|
|
4321
|
+
"data-slot": "sidebar-menu-sub-button",
|
|
4322
|
+
"data-sidebar": "menu-sub-button",
|
|
4323
|
+
"data-size": size,
|
|
4324
|
+
"data-active": isActive,
|
|
4325
|
+
className: cls,
|
|
4326
|
+
...props,
|
|
4327
|
+
children
|
|
4328
|
+
}
|
|
4329
|
+
)
|
|
4330
|
+
);
|
|
4331
|
+
}
|
|
3220
4332
|
|
|
3221
4333
|
// src/ui/slider.tsx
|
|
3222
4334
|
var import_slider = require("@base-ui/react/slider");
|
|
3223
|
-
var
|
|
4335
|
+
var import_jsx_runtime49 = require("react/jsx-runtime");
|
|
3224
4336
|
function Slider({ className, ...props }) {
|
|
3225
|
-
return /* @__PURE__ */ (0,
|
|
4337
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3226
4338
|
import_slider.Slider.Root,
|
|
3227
4339
|
{
|
|
3228
4340
|
"data-slot": "slider",
|
|
@@ -3235,7 +4347,7 @@ function Slider({ className, ...props }) {
|
|
|
3235
4347
|
);
|
|
3236
4348
|
}
|
|
3237
4349
|
function SliderControl({ className, ...props }) {
|
|
3238
|
-
return /* @__PURE__ */ (0,
|
|
4350
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3239
4351
|
import_slider.Slider.Control,
|
|
3240
4352
|
{
|
|
3241
4353
|
"data-slot": "slider-control",
|
|
@@ -3245,12 +4357,12 @@ function SliderControl({ className, ...props }) {
|
|
|
3245
4357
|
);
|
|
3246
4358
|
}
|
|
3247
4359
|
function SliderTrack({ className, ...props }) {
|
|
3248
|
-
return /* @__PURE__ */ (0,
|
|
4360
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3249
4361
|
import_slider.Slider.Track,
|
|
3250
4362
|
{
|
|
3251
4363
|
"data-slot": "slider-track",
|
|
3252
4364
|
className: cn(
|
|
3253
|
-
"relative h-1.5 w-full grow overflow-hidden rounded-full bg-
|
|
4365
|
+
"relative h-1.5 w-full grow overflow-hidden rounded-full bg-(--slider-track)",
|
|
3254
4366
|
className
|
|
3255
4367
|
),
|
|
3256
4368
|
...props
|
|
@@ -3258,22 +4370,22 @@ function SliderTrack({ className, ...props }) {
|
|
|
3258
4370
|
);
|
|
3259
4371
|
}
|
|
3260
4372
|
function SliderIndicator({ className, ...props }) {
|
|
3261
|
-
return /* @__PURE__ */ (0,
|
|
4373
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3262
4374
|
import_slider.Slider.Indicator,
|
|
3263
4375
|
{
|
|
3264
4376
|
"data-slot": "slider-indicator",
|
|
3265
|
-
className: cn("absolute h-full bg-
|
|
4377
|
+
className: cn("absolute h-full bg-(--slider-range)", className),
|
|
3266
4378
|
...props
|
|
3267
4379
|
}
|
|
3268
4380
|
);
|
|
3269
4381
|
}
|
|
3270
4382
|
function SliderThumb({ className, ...props }) {
|
|
3271
|
-
return /* @__PURE__ */ (0,
|
|
4383
|
+
return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(
|
|
3272
4384
|
import_slider.Slider.Thumb,
|
|
3273
4385
|
{
|
|
3274
4386
|
"data-slot": "slider-thumb",
|
|
3275
4387
|
className: cn(
|
|
3276
|
-
"block size-4 shrink-0 cursor-grab rounded-full border border-primary bg-
|
|
4388
|
+
"block size-4 shrink-0 cursor-grab rounded-full border border-primary bg-(--slider-thumb) shadow-sm transition-colors focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-none active:cursor-grabbing disabled:pointer-events-none disabled:opacity-50",
|
|
3277
4389
|
className
|
|
3278
4390
|
),
|
|
3279
4391
|
...props
|
|
@@ -3282,11 +4394,11 @@ function SliderThumb({ className, ...props }) {
|
|
|
3282
4394
|
}
|
|
3283
4395
|
|
|
3284
4396
|
// src/ui/spinner.tsx
|
|
3285
|
-
var
|
|
3286
|
-
var
|
|
4397
|
+
var import_lucide_react19 = require("lucide-react");
|
|
4398
|
+
var import_jsx_runtime50 = require("react/jsx-runtime");
|
|
3287
4399
|
function Spinner({ className, ...props }) {
|
|
3288
|
-
return /* @__PURE__ */ (0,
|
|
3289
|
-
|
|
4400
|
+
return /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(
|
|
4401
|
+
import_lucide_react19.Loader2Icon,
|
|
3290
4402
|
{
|
|
3291
4403
|
role: "status",
|
|
3292
4404
|
"aria-label": "Loading",
|
|
@@ -3299,22 +4411,22 @@ function Spinner({ className, ...props }) {
|
|
|
3299
4411
|
|
|
3300
4412
|
// src/ui/switch.tsx
|
|
3301
4413
|
var import_switch = require("@base-ui/react/switch");
|
|
3302
|
-
var
|
|
4414
|
+
var import_jsx_runtime51 = require("react/jsx-runtime");
|
|
3303
4415
|
function Switch({ className, ...props }) {
|
|
3304
|
-
return /* @__PURE__ */ (0,
|
|
4416
|
+
return /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
3305
4417
|
import_switch.Switch.Root,
|
|
3306
4418
|
{
|
|
3307
4419
|
"data-slot": "switch",
|
|
3308
4420
|
className: cn(
|
|
3309
|
-
"inline-flex h-[1.15rem] w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-checked:bg-
|
|
4421
|
+
"inline-flex h-[1.15rem] w-8 shrink-0 cursor-pointer items-center rounded-full border border-transparent shadow-xs transition-colors outline-none focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-checked:bg-(--switch-track-checked) data-unchecked:bg-(--switch-track)",
|
|
3310
4422
|
className
|
|
3311
4423
|
),
|
|
3312
4424
|
...props,
|
|
3313
|
-
children: /* @__PURE__ */ (0,
|
|
4425
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime51.jsx)(
|
|
3314
4426
|
import_switch.Switch.Thumb,
|
|
3315
4427
|
{
|
|
3316
4428
|
"data-slot": "switch-thumb",
|
|
3317
|
-
className: "pointer-events-none block size-4 rounded-full bg-
|
|
4429
|
+
className: "pointer-events-none block size-4 rounded-full bg-(--switch-thumb) transition-transform data-checked:translate-x-[calc(100%-2px)] data-unchecked:translate-x-0"
|
|
3318
4430
|
}
|
|
3319
4431
|
)
|
|
3320
4432
|
}
|
|
@@ -3322,14 +4434,14 @@ function Switch({ className, ...props }) {
|
|
|
3322
4434
|
}
|
|
3323
4435
|
|
|
3324
4436
|
// src/ui/table.tsx
|
|
3325
|
-
var
|
|
4437
|
+
var import_jsx_runtime52 = require("react/jsx-runtime");
|
|
3326
4438
|
function Table({ className, ...props }) {
|
|
3327
|
-
return /* @__PURE__ */ (0,
|
|
4439
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3328
4440
|
"div",
|
|
3329
4441
|
{
|
|
3330
4442
|
"data-slot": "table-container",
|
|
3331
4443
|
className: "relative w-full overflow-x-auto",
|
|
3332
|
-
children: /* @__PURE__ */ (0,
|
|
4444
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3333
4445
|
"table",
|
|
3334
4446
|
{
|
|
3335
4447
|
"data-slot": "table",
|
|
@@ -3341,7 +4453,7 @@ function Table({ className, ...props }) {
|
|
|
3341
4453
|
);
|
|
3342
4454
|
}
|
|
3343
4455
|
function TableHeader({ className, ...props }) {
|
|
3344
|
-
return /* @__PURE__ */ (0,
|
|
4456
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3345
4457
|
"thead",
|
|
3346
4458
|
{
|
|
3347
4459
|
"data-slot": "table-header",
|
|
@@ -3351,7 +4463,7 @@ function TableHeader({ className, ...props }) {
|
|
|
3351
4463
|
);
|
|
3352
4464
|
}
|
|
3353
4465
|
function TableBody({ className, ...props }) {
|
|
3354
|
-
return /* @__PURE__ */ (0,
|
|
4466
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3355
4467
|
"tbody",
|
|
3356
4468
|
{
|
|
3357
4469
|
"data-slot": "table-body",
|
|
@@ -3361,7 +4473,7 @@ function TableBody({ className, ...props }) {
|
|
|
3361
4473
|
);
|
|
3362
4474
|
}
|
|
3363
4475
|
function TableFooter({ className, ...props }) {
|
|
3364
|
-
return /* @__PURE__ */ (0,
|
|
4476
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3365
4477
|
"tfoot",
|
|
3366
4478
|
{
|
|
3367
4479
|
"data-slot": "table-footer",
|
|
@@ -3374,7 +4486,7 @@ function TableFooter({ className, ...props }) {
|
|
|
3374
4486
|
);
|
|
3375
4487
|
}
|
|
3376
4488
|
function TableRow({ className, ...props }) {
|
|
3377
|
-
return /* @__PURE__ */ (0,
|
|
4489
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3378
4490
|
"tr",
|
|
3379
4491
|
{
|
|
3380
4492
|
"data-slot": "table-row",
|
|
@@ -3387,7 +4499,7 @@ function TableRow({ className, ...props }) {
|
|
|
3387
4499
|
);
|
|
3388
4500
|
}
|
|
3389
4501
|
function TableHead({ className, ...props }) {
|
|
3390
|
-
return /* @__PURE__ */ (0,
|
|
4502
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3391
4503
|
"th",
|
|
3392
4504
|
{
|
|
3393
4505
|
"data-slot": "table-head",
|
|
@@ -3400,7 +4512,7 @@ function TableHead({ className, ...props }) {
|
|
|
3400
4512
|
);
|
|
3401
4513
|
}
|
|
3402
4514
|
function TableCell({ className, ...props }) {
|
|
3403
|
-
return /* @__PURE__ */ (0,
|
|
4515
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3404
4516
|
"td",
|
|
3405
4517
|
{
|
|
3406
4518
|
"data-slot": "table-cell",
|
|
@@ -3416,7 +4528,7 @@ function TableCaption({
|
|
|
3416
4528
|
className,
|
|
3417
4529
|
...props
|
|
3418
4530
|
}) {
|
|
3419
|
-
return /* @__PURE__ */ (0,
|
|
4531
|
+
return /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(
|
|
3420
4532
|
"caption",
|
|
3421
4533
|
{
|
|
3422
4534
|
"data-slot": "table-caption",
|
|
@@ -3428,12 +4540,12 @@ function TableCaption({
|
|
|
3428
4540
|
|
|
3429
4541
|
// src/ui/tabs.tsx
|
|
3430
4542
|
var import_tabs = require("@base-ui/react/tabs");
|
|
3431
|
-
var
|
|
4543
|
+
var import_jsx_runtime53 = require("react/jsx-runtime");
|
|
3432
4544
|
function Tabs({
|
|
3433
4545
|
className,
|
|
3434
4546
|
...props
|
|
3435
4547
|
}) {
|
|
3436
|
-
return /* @__PURE__ */ (0,
|
|
4548
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3437
4549
|
import_tabs.Tabs.Root,
|
|
3438
4550
|
{
|
|
3439
4551
|
"data-slot": "tabs",
|
|
@@ -3446,7 +4558,7 @@ function TabsList({
|
|
|
3446
4558
|
className,
|
|
3447
4559
|
...props
|
|
3448
4560
|
}) {
|
|
3449
|
-
return /* @__PURE__ */ (0,
|
|
4561
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3450
4562
|
import_tabs.Tabs.List,
|
|
3451
4563
|
{
|
|
3452
4564
|
"data-slot": "tabs-list",
|
|
@@ -3462,12 +4574,12 @@ function TabsTrigger({
|
|
|
3462
4574
|
className,
|
|
3463
4575
|
...props
|
|
3464
4576
|
}) {
|
|
3465
|
-
return /* @__PURE__ */ (0,
|
|
4577
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3466
4578
|
import_tabs.Tabs.Tab,
|
|
3467
4579
|
{
|
|
3468
4580
|
"data-slot": "tabs-trigger",
|
|
3469
4581
|
className: cn(
|
|
3470
|
-
"inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-foreground transition-colors focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-active:border-border data-active:bg-
|
|
4582
|
+
"inline-flex h-[calc(100%-1px)] flex-1 cursor-pointer items-center justify-center gap-1.5 rounded-md border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap text-foreground transition-colors focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-active:border-border data-active:bg-card data-active:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3471
4583
|
className
|
|
3472
4584
|
),
|
|
3473
4585
|
...props
|
|
@@ -3478,7 +4590,7 @@ function TabsContent({
|
|
|
3478
4590
|
className,
|
|
3479
4591
|
...props
|
|
3480
4592
|
}) {
|
|
3481
|
-
return /* @__PURE__ */ (0,
|
|
4593
|
+
return /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
|
|
3482
4594
|
import_tabs.Tabs.Panel,
|
|
3483
4595
|
{
|
|
3484
4596
|
"data-slot": "tabs-content",
|
|
@@ -3489,12 +4601,12 @@ function TabsContent({
|
|
|
3489
4601
|
}
|
|
3490
4602
|
|
|
3491
4603
|
// src/ui/textarea.tsx
|
|
3492
|
-
var
|
|
4604
|
+
var import_jsx_runtime54 = require("react/jsx-runtime");
|
|
3493
4605
|
function Textarea({
|
|
3494
4606
|
className,
|
|
3495
4607
|
...props
|
|
3496
4608
|
}) {
|
|
3497
|
-
return /* @__PURE__ */ (0,
|
|
4609
|
+
return /* @__PURE__ */ (0, import_jsx_runtime54.jsx)(
|
|
3498
4610
|
"textarea",
|
|
3499
4611
|
{
|
|
3500
4612
|
"data-slot": "textarea",
|
|
@@ -3509,9 +4621,9 @@ function Textarea({
|
|
|
3509
4621
|
|
|
3510
4622
|
// src/ui/toggle.tsx
|
|
3511
4623
|
var import_toggle = require("@base-ui/react/toggle");
|
|
3512
|
-
var
|
|
3513
|
-
var
|
|
3514
|
-
var toggleVariants = (0,
|
|
4624
|
+
var import_class_variance_authority9 = require("class-variance-authority");
|
|
4625
|
+
var import_jsx_runtime55 = require("react/jsx-runtime");
|
|
4626
|
+
var toggleVariants = (0, import_class_variance_authority9.cva)(
|
|
3515
4627
|
"inline-flex cursor-pointer items-center justify-center gap-2 rounded-md text-sm font-medium whitespace-nowrap transition-colors outline-none hover:bg-muted hover:text-muted-foreground focus-visible:ring-[3px] focus-visible:ring-ring/50 disabled:pointer-events-none disabled:opacity-50 data-pressed:bg-accent data-pressed:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
|
|
3516
4628
|
{
|
|
3517
4629
|
variants: {
|
|
@@ -3537,7 +4649,7 @@ function Toggle({
|
|
|
3537
4649
|
size,
|
|
3538
4650
|
...props
|
|
3539
4651
|
}) {
|
|
3540
|
-
return /* @__PURE__ */ (0,
|
|
4652
|
+
return /* @__PURE__ */ (0, import_jsx_runtime55.jsx)(
|
|
3541
4653
|
import_toggle.Toggle,
|
|
3542
4654
|
{
|
|
3543
4655
|
"data-slot": "toggle",
|
|
@@ -3550,9 +4662,9 @@ function Toggle({
|
|
|
3550
4662
|
// src/ui/toggle-group.tsx
|
|
3551
4663
|
var import_toggle2 = require("@base-ui/react/toggle");
|
|
3552
4664
|
var import_toggle_group = require("@base-ui/react/toggle-group");
|
|
3553
|
-
var
|
|
3554
|
-
var
|
|
3555
|
-
var ToggleGroupContext =
|
|
4665
|
+
var React7 = __toESM(require("react"), 1);
|
|
4666
|
+
var import_jsx_runtime56 = require("react/jsx-runtime");
|
|
4667
|
+
var ToggleGroupContext = React7.createContext({
|
|
3556
4668
|
size: "default",
|
|
3557
4669
|
variant: "default"
|
|
3558
4670
|
});
|
|
@@ -3563,18 +4675,18 @@ function ToggleGroup({
|
|
|
3563
4675
|
children,
|
|
3564
4676
|
...props
|
|
3565
4677
|
}) {
|
|
3566
|
-
return /* @__PURE__ */ (0,
|
|
4678
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
3567
4679
|
import_toggle_group.ToggleGroup,
|
|
3568
4680
|
{
|
|
3569
4681
|
"data-slot": "toggle-group",
|
|
3570
4682
|
"data-variant": variant,
|
|
3571
4683
|
"data-size": size,
|
|
3572
4684
|
className: cn(
|
|
3573
|
-
"group/toggle-group flex w-fit items-center
|
|
4685
|
+
"group/toggle-group flex w-fit items-center gap-1 rounded-md",
|
|
3574
4686
|
className
|
|
3575
4687
|
),
|
|
3576
4688
|
...props,
|
|
3577
|
-
children: /* @__PURE__ */ (0,
|
|
4689
|
+
children: /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
|
|
3578
4690
|
}
|
|
3579
4691
|
);
|
|
3580
4692
|
}
|
|
@@ -3585,8 +4697,8 @@ function ToggleGroupItem({
|
|
|
3585
4697
|
size,
|
|
3586
4698
|
...props
|
|
3587
4699
|
}) {
|
|
3588
|
-
const context =
|
|
3589
|
-
return /* @__PURE__ */ (0,
|
|
4700
|
+
const context = React7.useContext(ToggleGroupContext);
|
|
4701
|
+
return /* @__PURE__ */ (0, import_jsx_runtime56.jsx)(
|
|
3590
4702
|
import_toggle2.Toggle,
|
|
3591
4703
|
{
|
|
3592
4704
|
"data-slot": "toggle-group-item",
|
|
@@ -3607,9 +4719,9 @@ function ToggleGroupItem({
|
|
|
3607
4719
|
}
|
|
3608
4720
|
|
|
3609
4721
|
// src/ui/typography.tsx
|
|
3610
|
-
var
|
|
3611
|
-
var
|
|
3612
|
-
var typographyVariants = (0,
|
|
4722
|
+
var import_class_variance_authority10 = require("class-variance-authority");
|
|
4723
|
+
var import_jsx_runtime57 = require("react/jsx-runtime");
|
|
4724
|
+
var typographyVariants = (0, import_class_variance_authority10.cva)("", {
|
|
3613
4725
|
variants: {
|
|
3614
4726
|
variant: {
|
|
3615
4727
|
h1: "scroll-m-20 text-4xl font-extrabold tracking-tight text-balance",
|
|
@@ -3644,7 +4756,7 @@ var variantTagMap = {
|
|
|
3644
4756
|
};
|
|
3645
4757
|
function Typography({ className, variant = "p", ...props }) {
|
|
3646
4758
|
const Tag = variantTagMap[variant ?? "p"];
|
|
3647
|
-
return /* @__PURE__ */ (0,
|
|
4759
|
+
return /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(
|
|
3648
4760
|
Tag,
|
|
3649
4761
|
{
|
|
3650
4762
|
"data-slot": "typography",
|
|
@@ -3675,6 +4787,15 @@ function Typography({ className, variant = "p", ...props }) {
|
|
|
3675
4787
|
AlertDialogTrigger,
|
|
3676
4788
|
AlertTitle,
|
|
3677
4789
|
AspectRatio,
|
|
4790
|
+
Attachment,
|
|
4791
|
+
AttachmentAction,
|
|
4792
|
+
AttachmentActions,
|
|
4793
|
+
AttachmentContent,
|
|
4794
|
+
AttachmentDescription,
|
|
4795
|
+
AttachmentGroup,
|
|
4796
|
+
AttachmentMedia,
|
|
4797
|
+
AttachmentTitle,
|
|
4798
|
+
AttachmentTrigger,
|
|
3678
4799
|
Avatar,
|
|
3679
4800
|
AvatarFallback,
|
|
3680
4801
|
AvatarImage,
|
|
@@ -3686,6 +4807,10 @@ function Typography({ className, variant = "p", ...props }) {
|
|
|
3686
4807
|
BreadcrumbList,
|
|
3687
4808
|
BreadcrumbPage,
|
|
3688
4809
|
BreadcrumbSeparator,
|
|
4810
|
+
Bubble,
|
|
4811
|
+
BubbleContent,
|
|
4812
|
+
BubbleGroup,
|
|
4813
|
+
BubbleReactions,
|
|
3689
4814
|
Button,
|
|
3690
4815
|
ButtonGroup,
|
|
3691
4816
|
CHART_TOKEN_COLORS,
|
|
@@ -3783,6 +4908,12 @@ function Typography({ className, variant = "p", ...props }) {
|
|
|
3783
4908
|
MenubarMenu,
|
|
3784
4909
|
MenubarSeparator,
|
|
3785
4910
|
MenubarTrigger,
|
|
4911
|
+
Message,
|
|
4912
|
+
MessageAvatar,
|
|
4913
|
+
MessageContent,
|
|
4914
|
+
MessageFooter,
|
|
4915
|
+
MessageGroup,
|
|
4916
|
+
MessageHeader,
|
|
3786
4917
|
NavigationMenu,
|
|
3787
4918
|
NavigationMenuContent,
|
|
3788
4919
|
NavigationMenuItem,
|
|
@@ -3831,6 +4962,29 @@ function Typography({ className, variant = "p", ...props }) {
|
|
|
3831
4962
|
SheetPortal,
|
|
3832
4963
|
SheetTitle,
|
|
3833
4964
|
SheetTrigger,
|
|
4965
|
+
SidebarContentArea,
|
|
4966
|
+
SidebarFooterArea,
|
|
4967
|
+
SidebarGroup,
|
|
4968
|
+
SidebarGroupAction,
|
|
4969
|
+
SidebarGroupContent,
|
|
4970
|
+
SidebarGroupLabel,
|
|
4971
|
+
SidebarHeaderArea,
|
|
4972
|
+
SidebarInput,
|
|
4973
|
+
SidebarInset,
|
|
4974
|
+
SidebarMenu,
|
|
4975
|
+
SidebarMenuAction,
|
|
4976
|
+
SidebarMenuBadge,
|
|
4977
|
+
SidebarMenuButton,
|
|
4978
|
+
SidebarMenuItem,
|
|
4979
|
+
SidebarMenuSkeleton,
|
|
4980
|
+
SidebarMenuSub,
|
|
4981
|
+
SidebarMenuSubButton,
|
|
4982
|
+
SidebarMenuSubItem,
|
|
4983
|
+
SidebarProvider,
|
|
4984
|
+
SidebarRail,
|
|
4985
|
+
SidebarRoot,
|
|
4986
|
+
SidebarSeparator,
|
|
4987
|
+
SidebarTrigger,
|
|
3834
4988
|
Skeleton,
|
|
3835
4989
|
Slider,
|
|
3836
4990
|
SliderControl,
|
|
@@ -3869,5 +5023,6 @@ function Typography({ className, variant = "p", ...props }) {
|
|
|
3869
5023
|
toastManager,
|
|
3870
5024
|
toggleVariants,
|
|
3871
5025
|
typographyVariants,
|
|
3872
|
-
useCarousel
|
|
5026
|
+
useCarousel,
|
|
5027
|
+
useSidebar
|
|
3873
5028
|
});
|