@trading-game/design-intelligence-layer 0.15.4 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -65,7 +65,6 @@ __export(index_exports, {
65
65
  AccordionItem: () => AccordionItem,
66
66
  AccordionTrigger: () => AccordionTrigger,
67
67
  Alert: () => Alert,
68
- AlertDescription: () => AlertDescription,
69
68
  AlertDialog: () => AlertDialog,
70
69
  AlertDialogAction: () => AlertDialogAction,
71
70
  AlertDialogCancel: () => AlertDialogCancel,
@@ -78,7 +77,6 @@ __export(index_exports, {
78
77
  AlertDialogPortal: () => AlertDialogPortal,
79
78
  AlertDialogTitle: () => AlertDialogTitle,
80
79
  AlertDialogTrigger: () => AlertDialogTrigger,
81
- AlertTitle: () => AlertTitle,
82
80
  AspectRatio: () => AspectRatio,
83
81
  AuthBlock: () => AuthBlock,
84
82
  Avatar: () => Avatar,
@@ -374,6 +372,7 @@ __export(index_exports, {
374
372
  TooltipContent: () => TooltipContent,
375
373
  TooltipProvider: () => TooltipProvider,
376
374
  TooltipTrigger: () => TooltipTrigger,
375
+ alertVariants: () => alertVariants,
377
376
  badgeVariants: () => badgeVariants,
378
377
  buttonVariants: () => buttonVariants,
379
378
  cn: () => cn,
@@ -467,83 +466,20 @@ function AccordionContent(_a) {
467
466
  }
468
467
 
469
468
  // components/ui/alert.tsx
470
- var import_class_variance_authority = require("class-variance-authority");
471
- var import_jsx_runtime2 = require("react/jsx-runtime");
472
- var alertVariants = (0, import_class_variance_authority.cva)(
473
- "relative grid w-full grid-cols-[0_1fr] items-start gap-y-0.5 rounded-sm border px-4 py-3 text-sm has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current",
474
- {
475
- variants: {
476
- variant: {
477
- info: "bg-transparent text-alert-info-text border-alert-info-border *:data-[slot=alert-description]:text-on-subtle [&>svg]:text-current",
478
- error: "bg-transparent text-alert-error-text border-alert-error-border *:data-[slot=alert-description]:text-on-subtle [&>svg]:text-current"
479
- }
480
- },
481
- defaultVariants: {
482
- variant: "info"
483
- }
484
- }
485
- );
486
- function Alert(_a) {
487
- var _b = _a, {
488
- className,
489
- variant
490
- } = _b, props = __objRest(_b, [
491
- "className",
492
- "variant"
493
- ]);
494
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
495
- "div",
496
- __spreadValues({
497
- "data-slot": "alert",
498
- role: "alert",
499
- className: cn(alertVariants({ variant }), className)
500
- }, props)
501
- );
502
- }
503
- function AlertTitle(_a) {
504
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
505
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
506
- "div",
507
- __spreadValues({
508
- "data-slot": "alert-title",
509
- className: cn(
510
- "col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",
511
- className
512
- )
513
- }, props)
514
- );
515
- }
516
- function AlertDescription(_a) {
517
- var _b = _a, {
518
- className
519
- } = _b, props = __objRest(_b, [
520
- "className"
521
- ]);
522
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
523
- "div",
524
- __spreadValues({
525
- "data-slot": "alert-description",
526
- className: cn(
527
- "col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",
528
- className
529
- )
530
- }, props)
531
- );
532
- }
533
-
534
- // components/ui/alert-dialog.tsx
535
- var import_radix_ui3 = require("radix-ui");
469
+ var React = __toESM(require("react"), 1);
470
+ var import_class_variance_authority2 = require("class-variance-authority");
471
+ var import_lucide_react2 = require("lucide-react");
536
472
 
537
473
  // components/ui/button.tsx
538
- var import_class_variance_authority2 = require("class-variance-authority");
474
+ var import_class_variance_authority = require("class-variance-authority");
539
475
  var import_radix_ui2 = require("radix-ui");
540
476
 
541
477
  // components/ui/spinner.tsx
542
- var import_jsx_runtime3 = require("react/jsx-runtime");
478
+ var import_jsx_runtime2 = require("react/jsx-runtime");
543
479
  var PILL_COUNT = 8;
544
480
  function Spinner(_a) {
545
481
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
546
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(
482
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
547
483
  "div",
548
484
  __spreadProps(__spreadValues({
549
485
  role: "status",
@@ -551,13 +487,13 @@ function Spinner(_a) {
551
487
  className: cn("relative inline-block size-4 text-current", className)
552
488
  }, props), {
553
489
  children: [
554
- /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("style", { children: `
490
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("style", { children: `
555
491
  @keyframes spinner-fade {
556
492
  0% { opacity: 1; }
557
493
  100% { opacity: 0.15; }
558
494
  }
559
495
  ` }),
560
- Array.from({ length: PILL_COUNT }, (_, i) => /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
496
+ Array.from({ length: PILL_COUNT }, (_, i) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
561
497
  "span",
562
498
  {
563
499
  style: {
@@ -581,8 +517,8 @@ function Spinner(_a) {
581
517
  }
582
518
 
583
519
  // components/ui/button.tsx
584
- var import_jsx_runtime4 = require("react/jsx-runtime");
585
- var buttonVariants = (0, import_class_variance_authority2.cva)(
520
+ var import_jsx_runtime3 = require("react/jsx-runtime");
521
+ var buttonVariants = (0, import_class_variance_authority.cva)(
586
522
  "inline-flex shrink-0 items-center justify-center whitespace-nowrap transition-all outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 active:opacity-60 disabled:pointer-events-none disabled:opacity-24 aria-invalid:border-destructive aria-invalid:ring-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 font-display font-bold",
587
523
  {
588
524
  variants: {
@@ -642,7 +578,7 @@ function Button(_a) {
642
578
  "children"
643
579
  ]);
644
580
  const Comp = asChild ? import_radix_ui2.Slot.Root : "button";
645
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
581
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
646
582
  Comp,
647
583
  __spreadProps(__spreadValues({
648
584
  "data-slot": "button",
@@ -655,15 +591,239 @@ function Button(_a) {
655
591
  ),
656
592
  "aria-busy": loading || void 0
657
593
  }, props), {
658
- children: loading ? /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(import_jsx_runtime4.Fragment, { children: [
659
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "invisible inline-flex items-center gap-[inherit]", "aria-hidden": true, children }),
660
- /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("span", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Spinner, { className: spinnerSizeMap[size != null ? size : "lg"] }) })
594
+ children: loading ? /* @__PURE__ */ (0, import_jsx_runtime3.jsxs)(import_jsx_runtime3.Fragment, { children: [
595
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "invisible inline-flex items-center gap-[inherit]", "aria-hidden": true, children }),
596
+ /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { className: "absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(Spinner, { className: spinnerSizeMap[size != null ? size : "lg"] }) })
661
597
  ] }) : children
662
598
  })
663
599
  );
664
600
  }
665
601
 
602
+ // components/ui/alert.tsx
603
+ var import_jsx_runtime4 = require("react/jsx-runtime");
604
+ var alertVariants = (0, import_class_variance_authority2.cva)(
605
+ "grid w-full rounded-sm",
606
+ {
607
+ variants: {
608
+ variant: {
609
+ info: "bg-semantic-info/10",
610
+ warning: "bg-semantic-warning/10",
611
+ danger: "bg-semantic-error/10",
612
+ success: "bg-semantic-win/10"
613
+ },
614
+ layout: {
615
+ // Inline is mobile-first: 3 columns × 2 rows so a long title can wrap and the
616
+ // action button drops below the body. At sm+ (640px) it collapses to a single
617
+ // row of 4 columns (icon · body · action · close).
618
+ inline: "grid-cols-[auto_1fr_auto] grid-rows-[auto_auto] items-start gap-x-3 gap-y-3 px-4 py-4 sm:grid-cols-[auto_1fr_auto_auto] sm:grid-rows-1",
619
+ card: "grid-cols-[auto_1fr_auto] grid-rows-[auto_auto] items-start gap-x-3 gap-y-2 px-4 py-4"
620
+ }
621
+ },
622
+ defaultVariants: {
623
+ variant: "info",
624
+ layout: "inline"
625
+ }
626
+ }
627
+ );
628
+ var SINGLE_LINE_CLASSES = "items-center min-h-12 py-2 gap-y-0";
629
+ var TITLE_CLASSES = {
630
+ info: "text-on-prominent",
631
+ warning: "text-on-prominent",
632
+ danger: "text-on-prominent",
633
+ success: "text-on-prominent"
634
+ };
635
+ var ICON_CLASSES = {
636
+ info: "text-semantic-info",
637
+ warning: "text-semantic-warning",
638
+ danger: "text-semantic-error",
639
+ success: "text-semantic-win"
640
+ };
641
+ var DESC_CLASSES = {
642
+ info: "text-on-subtle",
643
+ warning: "text-on-subtle",
644
+ danger: "text-on-subtle",
645
+ success: "text-on-subtle"
646
+ };
647
+ var CLOSE_CLASSES = {
648
+ info: "text-on-subtle opacity-70",
649
+ warning: "text-on-subtle opacity-70",
650
+ danger: "text-on-subtle opacity-70",
651
+ success: "text-on-subtle opacity-70"
652
+ };
653
+ function defaultIconForVariant(variant) {
654
+ switch (variant) {
655
+ case "info":
656
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react2.Info, {});
657
+ case "warning":
658
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react2.AlertTriangle, {});
659
+ case "danger":
660
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react2.XCircle, {});
661
+ case "success":
662
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react2.CheckCircle2, {});
663
+ }
664
+ }
665
+ function Alert(_a) {
666
+ var _b = _a, {
667
+ variant = "info",
668
+ layout = "inline",
669
+ title,
670
+ description,
671
+ icon,
672
+ action,
673
+ actions,
674
+ onDismiss,
675
+ dismissLabel = "Dismiss",
676
+ className
677
+ } = _b, props = __objRest(_b, [
678
+ "variant",
679
+ "layout",
680
+ "title",
681
+ "description",
682
+ "icon",
683
+ "action",
684
+ "actions",
685
+ "onDismiss",
686
+ "dismissLabel",
687
+ "className"
688
+ ]);
689
+ if (!title && !description) {
690
+ if (process.env.NODE_ENV !== "production") {
691
+ console.warn(
692
+ "Alert: requires at least one of `title` or `description`. Rendering null."
693
+ );
694
+ }
695
+ return null;
696
+ }
697
+ const isInline = layout === "inline";
698
+ const isSingleLine = isInline && !(title && description);
699
+ const showIcon = icon !== null;
700
+ const resolvedIcon = icon === void 0 ? defaultIconForVariant(variant) : icon;
701
+ const showCloseButton = typeof onDismiss === "function";
702
+ const buttonVariant = "secondary";
703
+ const isAssertive = variant === "danger" || variant === "warning";
704
+ const role = isAssertive ? "alert" : "status";
705
+ const ariaLive = isAssertive ? "assertive" : "polite";
706
+ if (process.env.NODE_ENV !== "production") {
707
+ if (isInline && actions && actions.length > 0) {
708
+ console.warn(
709
+ 'Alert: `actions` is ignored when layout="inline". Use `action` instead.'
710
+ );
711
+ }
712
+ if (!isInline && action) {
713
+ console.warn(
714
+ 'Alert: `action` is ignored when layout="card". Use `actions` instead.'
715
+ );
716
+ }
717
+ }
718
+ const body = /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)("div", { className: "min-w-0", children: [
719
+ title ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
720
+ "p",
721
+ {
722
+ className: cn(
723
+ // Mobile-first: 13/11px scale so narrow viewports breathe. sm+ bumps to
724
+ // 14/12px which lines up with the rest of the design system's body sizes.
725
+ "text-[13px] font-semibold leading-snug sm:text-sm",
726
+ TITLE_CLASSES[variant],
727
+ description ? "mb-2" : "mb-0"
728
+ ),
729
+ children: title
730
+ }
731
+ ) : null,
732
+ description ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
733
+ "p",
734
+ {
735
+ className: cn(
736
+ "text-[11px] leading-snug m-0 sm:text-xs",
737
+ DESC_CLASSES[variant]
738
+ ),
739
+ children: description
740
+ }
741
+ ) : null
742
+ ] });
743
+ const closeButton = showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
744
+ "button",
745
+ {
746
+ type: "button",
747
+ onClick: onDismiss,
748
+ "aria-label": dismissLabel,
749
+ className: cn(
750
+ "inline-flex shrink-0 items-center justify-center rounded-xs size-6 cursor-pointer outline-none transition-opacity hover:opacity-100 focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 [&_svg]:size-4 [&_svg]:pointer-events-none",
751
+ // tuck the close into the top-right corner for the multi-line cases
752
+ isSingleLine ? "" : "-mt-1 -mr-1",
753
+ CLOSE_CLASSES[variant]
754
+ ),
755
+ children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(import_lucide_react2.X, {})
756
+ }
757
+ ) : null;
758
+ const iconColumn = showIcon ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
759
+ "div",
760
+ {
761
+ "aria-hidden": true,
762
+ className: cn(
763
+ "inline-flex shrink-0 size-4 [&_svg]:size-full",
764
+ // Single-line: grid is items-center so the icon centers automatically.
765
+ // Multi-line / card: top-aligned with the title cap-height via a 2px
766
+ // (mt-0.5) optical nudge so the icon reads as introducing the message
767
+ // header, not floating between title and description.
768
+ isSingleLine ? "" : "mt-0.5",
769
+ ICON_CLASSES[variant]
770
+ ),
771
+ children: resolvedIcon
772
+ }
773
+ ) : null;
774
+ if (isInline) {
775
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
776
+ "div",
777
+ __spreadProps(__spreadValues({
778
+ role,
779
+ "aria-live": ariaLive,
780
+ "data-slot": "alert",
781
+ "data-variant": variant,
782
+ "data-layout": "inline",
783
+ className: cn(
784
+ alertVariants({ variant, layout }),
785
+ isSingleLine ? SINGLE_LINE_CLASSES : "",
786
+ className
787
+ )
788
+ }, props), {
789
+ children: [
790
+ iconColumn,
791
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-start-2 row-start-1 min-w-0", children: body }),
792
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-start-3 row-start-1 sm:col-start-4 sm:row-start-1", children: closeButton }),
793
+ action ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-start-2 row-start-2 justify-self-start sm:col-start-3 sm:row-start-1 sm:self-center sm:justify-self-end", children: wrapAction(action, buttonVariant) }) : null
794
+ ]
795
+ })
796
+ );
797
+ }
798
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsxs)(
799
+ "div",
800
+ __spreadProps(__spreadValues({
801
+ role,
802
+ "aria-live": ariaLive,
803
+ "data-slot": "alert",
804
+ "data-variant": variant,
805
+ "data-layout": "card",
806
+ className: cn(
807
+ alertVariants({ variant, layout }),
808
+ className
809
+ )
810
+ }, props), {
811
+ children: [
812
+ iconColumn,
813
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-span-2 col-start-2 row-start-1", children: body }),
814
+ /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-start-3 row-start-1", children: closeButton }),
815
+ actions && actions.length > 0 ? /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: "col-span-3 col-start-2 row-start-2 mt-2 flex flex-wrap items-center justify-start gap-2", children: actions.slice(0, 2).map((node, i) => /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(React.Fragment, { children: wrapAction(node, buttonVariant) }, i)) }) : null
816
+ ]
817
+ })
818
+ );
819
+ }
820
+ function wrapAction(node, variant) {
821
+ if (React.isValidElement(node)) return node;
822
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(Button, { variant, size: "sm", children: node });
823
+ }
824
+
666
825
  // components/ui/alert-dialog.tsx
826
+ var import_radix_ui3 = require("radix-ui");
667
827
  var import_jsx_runtime5 = require("react/jsx-runtime");
668
828
  function AlertDialog(_a) {
669
829
  var props = __objRest(_a, []);
@@ -966,6 +1126,10 @@ var badgeVariants = (0, import_class_variance_authority3.cva)(
966
1126
  "fill-fail": "bg-semantic-loss/10 border-transparent text-semantic-loss",
967
1127
  "fill-warning": "bg-semantic-warning/10 border-transparent text-semantic-warning",
968
1128
  "fill-credit": "bg-semantic-boost-surface border-transparent text-on-semantic-boost !text-xs !font-semibold",
1129
+ // Demo / test-mode flag — opaque light-peach surface + red-orange text.
1130
+ // Uses --semantic-demo-surface (a solid color-mix of demo @ 10% with white)
1131
+ // so the badge looks identical on any background.
1132
+ "fill-demo": "bg-semantic-demo-surface border-transparent text-semantic-demo",
969
1133
  // Ghost (transparent)
970
1134
  ghost: "bg-transparent border-transparent text-primary [a&]:hover:bg-secondary-hover [a&]:hover:text-primary",
971
1135
  "ghost-success": "bg-transparent border-transparent text-semantic-win [a&]:hover:bg-semantic-win/10 [a&]:hover:text-semantic-win",
@@ -1008,7 +1172,7 @@ function Badge(_a) {
1008
1172
  }
1009
1173
 
1010
1174
  // components/ui/breadcrumb.tsx
1011
- var import_lucide_react2 = require("lucide-react");
1175
+ var import_lucide_react3 = require("lucide-react");
1012
1176
  var import_radix_ui7 = require("radix-ui");
1013
1177
  var import_jsx_runtime9 = require("react/jsx-runtime");
1014
1178
  function Breadcrumb(_a) {
@@ -1084,7 +1248,7 @@ function BreadcrumbSeparator(_a) {
1084
1248
  "aria-hidden": "true",
1085
1249
  className: cn("[&>svg]:size-3.5", className)
1086
1250
  }, props), {
1087
- children: children != null ? children : /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react2.ChevronRight, {})
1251
+ children: children != null ? children : /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react3.ChevronRight, {})
1088
1252
  })
1089
1253
  );
1090
1254
  }
@@ -1103,7 +1267,7 @@ function BreadcrumbEllipsis(_a) {
1103
1267
  className: cn("flex size-9 items-center justify-center", className)
1104
1268
  }, props), {
1105
1269
  children: [
1106
- /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react2.MoreHorizontal, { className: "size-4" }),
1270
+ /* @__PURE__ */ (0, import_jsx_runtime9.jsx)(import_lucide_react3.MoreHorizontal, { className: "size-4" }),
1107
1271
  /* @__PURE__ */ (0, import_jsx_runtime9.jsx)("span", { className: "sr-only", children: "More" })
1108
1272
  ]
1109
1273
  })
@@ -1111,8 +1275,8 @@ function BreadcrumbEllipsis(_a) {
1111
1275
  }
1112
1276
 
1113
1277
  // components/ui/calendar.tsx
1114
- var React = __toESM(require("react"), 1);
1115
- var import_lucide_react3 = require("lucide-react");
1278
+ var React2 = __toESM(require("react"), 1);
1279
+ var import_lucide_react4 = require("lucide-react");
1116
1280
  var import_react_day_picker = require("react-day-picker");
1117
1281
  var import_jsx_runtime10 = require("react/jsx-runtime");
1118
1282
  function Calendar(_a) {
@@ -1245,17 +1409,17 @@ function Calendar(_a) {
1245
1409
  Chevron: (_c) => {
1246
1410
  var _d = _c, { className: className2, orientation } = _d, props2 = __objRest(_d, ["className", "orientation"]);
1247
1411
  if (orientation === "left") {
1248
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react3.ChevronLeftIcon, __spreadValues({ className: cn("size-4", className2) }, props2));
1412
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react4.ChevronLeftIcon, __spreadValues({ className: cn("size-4", className2) }, props2));
1249
1413
  }
1250
1414
  if (orientation === "right") {
1251
1415
  return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(
1252
- import_lucide_react3.ChevronRightIcon,
1416
+ import_lucide_react4.ChevronRightIcon,
1253
1417
  __spreadValues({
1254
1418
  className: cn("size-4", className2)
1255
1419
  }, props2)
1256
1420
  );
1257
1421
  }
1258
- return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react3.ChevronDownIcon, __spreadValues({ className: cn("size-4", className2) }, props2));
1422
+ return /* @__PURE__ */ (0, import_jsx_runtime10.jsx)(import_lucide_react4.ChevronDownIcon, __spreadValues({ className: cn("size-4", className2) }, props2));
1259
1423
  },
1260
1424
  DayButton: CalendarDayButton,
1261
1425
  WeekNumber: (_e) => {
@@ -1277,8 +1441,8 @@ function CalendarDayButton(_a) {
1277
1441
  "modifiers"
1278
1442
  ]);
1279
1443
  const defaultClassNames = (0, import_react_day_picker.getDefaultClassNames)();
1280
- const ref = React.useRef(null);
1281
- React.useEffect(() => {
1444
+ const ref = React2.useRef(null);
1445
+ React2.useEffect(() => {
1282
1446
  var _a2;
1283
1447
  if (modifiers.focused) (_a2 = ref.current) == null ? void 0 : _a2.focus();
1284
1448
  }, [modifiers.focused]);
@@ -1386,13 +1550,13 @@ function CardFooter(_a) {
1386
1550
  }
1387
1551
 
1388
1552
  // components/ui/carousel.tsx
1389
- var React2 = __toESM(require("react"), 1);
1553
+ var React3 = __toESM(require("react"), 1);
1390
1554
  var import_embla_carousel_react = __toESM(require("embla-carousel-react"), 1);
1391
- var import_lucide_react4 = require("lucide-react");
1555
+ var import_lucide_react5 = require("lucide-react");
1392
1556
  var import_jsx_runtime12 = require("react/jsx-runtime");
1393
- var CarouselContext = React2.createContext(null);
1557
+ var CarouselContext = React3.createContext(null);
1394
1558
  function useCarousel() {
1395
- const context = React2.useContext(CarouselContext);
1559
+ const context = React3.useContext(CarouselContext);
1396
1560
  if (!context) {
1397
1561
  throw new Error("useCarousel must be used within a <Carousel />");
1398
1562
  }
@@ -1420,20 +1584,20 @@ function Carousel(_a) {
1420
1584
  }),
1421
1585
  plugins
1422
1586
  );
1423
- const [canScrollPrev, setCanScrollPrev] = React2.useState(false);
1424
- const [canScrollNext, setCanScrollNext] = React2.useState(false);
1425
- const onSelect = React2.useCallback((api2) => {
1587
+ const [canScrollPrev, setCanScrollPrev] = React3.useState(false);
1588
+ const [canScrollNext, setCanScrollNext] = React3.useState(false);
1589
+ const onSelect = React3.useCallback((api2) => {
1426
1590
  if (!api2) return;
1427
1591
  setCanScrollPrev(api2.canScrollPrev());
1428
1592
  setCanScrollNext(api2.canScrollNext());
1429
1593
  }, []);
1430
- const scrollPrev = React2.useCallback(() => {
1594
+ const scrollPrev = React3.useCallback(() => {
1431
1595
  api == null ? void 0 : api.scrollPrev();
1432
1596
  }, [api]);
1433
- const scrollNext = React2.useCallback(() => {
1597
+ const scrollNext = React3.useCallback(() => {
1434
1598
  api == null ? void 0 : api.scrollNext();
1435
1599
  }, [api]);
1436
- const handleKeyDown = React2.useCallback(
1600
+ const handleKeyDown = React3.useCallback(
1437
1601
  (event) => {
1438
1602
  if (event.key === "ArrowLeft") {
1439
1603
  event.preventDefault();
@@ -1445,11 +1609,11 @@ function Carousel(_a) {
1445
1609
  },
1446
1610
  [scrollPrev, scrollNext]
1447
1611
  );
1448
- React2.useEffect(() => {
1612
+ React3.useEffect(() => {
1449
1613
  if (!api || !setApi) return;
1450
1614
  setApi(api);
1451
1615
  }, [api, setApi]);
1452
- React2.useEffect(() => {
1616
+ React3.useEffect(() => {
1453
1617
  if (!api) return;
1454
1618
  onSelect(api);
1455
1619
  api.on("reInit", onSelect);
@@ -1551,7 +1715,7 @@ function CarouselPrevious(_a) {
1551
1715
  onClick: scrollPrev
1552
1716
  }, props), {
1553
1717
  children: [
1554
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.ArrowLeft, {}),
1718
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react5.ArrowLeft, {}),
1555
1719
  /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "sr-only", children: "Previous slide" })
1556
1720
  ]
1557
1721
  })
@@ -1583,7 +1747,7 @@ function CarouselNext(_a) {
1583
1747
  onClick: scrollNext
1584
1748
  }, props), {
1585
1749
  children: [
1586
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react4.ArrowRight, {}),
1750
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(import_lucide_react5.ArrowRight, {}),
1587
1751
  /* @__PURE__ */ (0, import_jsx_runtime12.jsx)("span", { className: "sr-only", children: "Next slide" })
1588
1752
  ]
1589
1753
  })
@@ -1591,13 +1755,13 @@ function CarouselNext(_a) {
1591
1755
  }
1592
1756
 
1593
1757
  // components/ui/chart.tsx
1594
- var React3 = __toESM(require("react"), 1);
1758
+ var React4 = __toESM(require("react"), 1);
1595
1759
  var RechartsPrimitive = __toESM(require("recharts"), 1);
1596
1760
  var import_jsx_runtime13 = require("react/jsx-runtime");
1597
1761
  var THEMES = { light: "" };
1598
- var ChartContext = React3.createContext(null);
1762
+ var ChartContext = React4.createContext(null);
1599
1763
  function useChart() {
1600
- const context = React3.useContext(ChartContext);
1764
+ const context = React4.useContext(ChartContext);
1601
1765
  if (!context) {
1602
1766
  throw new Error("useChart must be used within a <ChartContainer />");
1603
1767
  }
@@ -1615,7 +1779,7 @@ function ChartContainer(_a) {
1615
1779
  "children",
1616
1780
  "config"
1617
1781
  ]);
1618
- const uniqueId = React3.useId();
1782
+ const uniqueId = React4.useId();
1619
1783
  const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
1620
1784
  return /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsxs)(
1621
1785
  "div",
@@ -1677,7 +1841,7 @@ function ChartTooltipContent({
1677
1841
  labelKey
1678
1842
  }) {
1679
1843
  const { config } = useChart();
1680
- const tooltipLabel = React3.useMemo(() => {
1844
+ const tooltipLabel = React4.useMemo(() => {
1681
1845
  var _a;
1682
1846
  if (hideLabel || !(payload == null ? void 0 : payload.length)) {
1683
1847
  return null;
@@ -1833,7 +1997,7 @@ function getPayloadConfigFromPayload(config, payload, key) {
1833
1997
  }
1834
1998
 
1835
1999
  // components/ui/checkbox.tsx
1836
- var import_lucide_react5 = require("lucide-react");
2000
+ var import_lucide_react6 = require("lucide-react");
1837
2001
  var import_radix_ui8 = require("radix-ui");
1838
2002
  var import_jsx_runtime14 = require("react/jsx-runtime");
1839
2003
  function Checkbox(_a) {
@@ -1856,7 +2020,7 @@ function Checkbox(_a) {
1856
2020
  {
1857
2021
  "data-slot": "checkbox-indicator",
1858
2022
  className: "grid place-content-center text-current transition-none",
1859
- children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_lucide_react5.CheckIcon, { className: "size-3.5" })
2023
+ children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(import_lucide_react6.CheckIcon, { className: "size-3.5" })
1860
2024
  }
1861
2025
  )
1862
2026
  })
@@ -1890,12 +2054,12 @@ function CollapsibleContent(_a) {
1890
2054
  }
1891
2055
 
1892
2056
  // components/ui/combobox.tsx
1893
- var React5 = __toESM(require("react"), 1);
2057
+ var React6 = __toESM(require("react"), 1);
1894
2058
  var import_react = require("@base-ui/react");
1895
- var import_lucide_react6 = require("lucide-react");
2059
+ var import_lucide_react7 = require("lucide-react");
1896
2060
 
1897
2061
  // components/ui/input-group.tsx
1898
- var React4 = __toESM(require("react"), 1);
2062
+ var React5 = __toESM(require("react"), 1);
1899
2063
  var import_class_variance_authority5 = require("class-variance-authority");
1900
2064
 
1901
2065
  // components/ui/input.tsx
@@ -1963,7 +2127,7 @@ function Textarea(_a) {
1963
2127
 
1964
2128
  // components/ui/input-group.tsx
1965
2129
  var import_jsx_runtime18 = require("react/jsx-runtime");
1966
- var InputGroupSizeContext = React4.createContext("md");
2130
+ var InputGroupSizeContext = React5.createContext("md");
1967
2131
  var inputGroupVariants = (0, import_class_variance_authority5.cva)(
1968
2132
  [
1969
2133
  "group/input-group relative flex w-full items-center rounded-sm border border-border-subtle bg-white/5",
@@ -2125,7 +2289,7 @@ function InputGroupInput(_a) {
2125
2289
  "className",
2126
2290
  "size"
2127
2291
  ]);
2128
- const groupSize = React4.useContext(InputGroupSizeContext);
2292
+ const groupSize = React5.useContext(InputGroupSizeContext);
2129
2293
  const size = sizeProp != null ? sizeProp : groupSize;
2130
2294
  return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2131
2295
  Input,
@@ -2181,7 +2345,7 @@ function ComboboxTrigger(_a) {
2181
2345
  children: [
2182
2346
  children,
2183
2347
  /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2184
- import_lucide_react6.ChevronDownIcon,
2348
+ import_lucide_react7.ChevronDownIcon,
2185
2349
  {
2186
2350
  "data-slot": "combobox-trigger-icon",
2187
2351
  className: "pointer-events-none size-4 text-on-subtle"
@@ -2200,7 +2364,7 @@ function ComboboxClear(_a) {
2200
2364
  render: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(InputGroupButton, { variant: "secondary", size: "icon-xs" }),
2201
2365
  className: cn(className)
2202
2366
  }, props), {
2203
- children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react6.XIcon, { className: "pointer-events-none" })
2367
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react7.XIcon, { className: "pointer-events-none" })
2204
2368
  })
2205
2369
  );
2206
2370
  }
@@ -2319,7 +2483,7 @@ function ComboboxItem(_a) {
2319
2483
  {
2320
2484
  "data-slot": "combobox-item-indicator",
2321
2485
  render: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "pointer-events-none absolute right-2 flex size-4 items-center justify-center" }),
2322
- children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react6.CheckIcon, { className: "pointer-events-none size-4 pointer-coarse:size-5" })
2486
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react7.CheckIcon, { className: "pointer-events-none size-4 pointer-coarse:size-5" })
2323
2487
  }
2324
2488
  )
2325
2489
  ]
@@ -2428,7 +2592,7 @@ function ComboboxChip(_a) {
2428
2592
  render: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(Button, { variant: "secondary", size: "icon-xs" }),
2429
2593
  className: "-ml-1 opacity-50 hover:opacity-100",
2430
2594
  "data-slot": "combobox-chip-remove",
2431
- children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react6.XIcon, { className: "pointer-events-none" })
2595
+ children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(import_lucide_react7.XIcon, { className: "pointer-events-none" })
2432
2596
  }
2433
2597
  )
2434
2598
  ]
@@ -2452,15 +2616,15 @@ function ComboboxChipsInput(_a) {
2452
2616
  );
2453
2617
  }
2454
2618
  function useComboboxAnchor() {
2455
- return React5.useRef(null);
2619
+ return React6.useRef(null);
2456
2620
  }
2457
2621
 
2458
2622
  // components/ui/command.tsx
2459
2623
  var import_cmdk = require("cmdk");
2460
- var import_lucide_react8 = require("lucide-react");
2624
+ var import_lucide_react9 = require("lucide-react");
2461
2625
 
2462
2626
  // components/ui/dialog.tsx
2463
- var import_lucide_react7 = require("lucide-react");
2627
+ var import_lucide_react8 = require("lucide-react");
2464
2628
  var import_radix_ui10 = require("radix-ui");
2465
2629
  var import_jsx_runtime20 = require("react/jsx-runtime");
2466
2630
  function Dialog(_a) {
@@ -2525,7 +2689,7 @@ function DialogContent(_a) {
2525
2689
  "data-slot": "dialog-close",
2526
2690
  className: "absolute top-4 right-4 rounded-xs opacity-70 ring-offset-prominent transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-on-subtle [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
2527
2691
  children: [
2528
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lucide_react7.XIcon, {}),
2692
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(import_lucide_react8.XIcon, {}),
2529
2693
  /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "sr-only", children: "Close" })
2530
2694
  ]
2531
2695
  }
@@ -2660,7 +2824,7 @@ function CommandInput(_a) {
2660
2824
  "data-slot": "command-input-wrapper",
2661
2825
  className: "flex h-9 items-center gap-2 border-b px-3",
2662
2826
  children: [
2663
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react8.SearchIcon, { className: "size-4 shrink-0 opacity-50" }),
2827
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(import_lucide_react9.SearchIcon, { className: "size-4 shrink-0 opacity-50" }),
2664
2828
  /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2665
2829
  import_cmdk.Command.Input,
2666
2830
  __spreadValues({
@@ -2769,7 +2933,7 @@ function CommandShortcut(_a) {
2769
2933
  }
2770
2934
 
2771
2935
  // components/ui/context-menu.tsx
2772
- var import_lucide_react9 = require("lucide-react");
2936
+ var import_lucide_react10 = require("lucide-react");
2773
2937
  var import_radix_ui11 = require("radix-ui");
2774
2938
  var import_jsx_runtime22 = require("react/jsx-runtime");
2775
2939
  function ContextMenu(_a) {
@@ -2823,7 +2987,7 @@ function ContextMenuSubTrigger(_a) {
2823
2987
  }, props), {
2824
2988
  children: [
2825
2989
  children,
2826
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react9.ChevronRightIcon, { className: "ml-auto" })
2990
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react10.ChevronRightIcon, { className: "ml-auto" })
2827
2991
  ]
2828
2992
  })
2829
2993
  );
@@ -2906,7 +3070,7 @@ function ContextMenuCheckboxItem(_a) {
2906
3070
  checked
2907
3071
  }, props), {
2908
3072
  children: [
2909
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_radix_ui11.ContextMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react9.CheckIcon, { className: "size-4" }) }) }),
3073
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_radix_ui11.ContextMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react10.CheckIcon, { className: "size-4" }) }) }),
2910
3074
  children
2911
3075
  ]
2912
3076
  })
@@ -2930,7 +3094,7 @@ function ContextMenuRadioItem(_a) {
2930
3094
  )
2931
3095
  }, props), {
2932
3096
  children: [
2933
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_radix_ui11.ContextMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react9.CircleIcon, { className: "size-2 fill-current" }) }) }),
3097
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_radix_ui11.ContextMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(import_lucide_react10.CircleIcon, { className: "size-2 fill-current" }) }) }),
2934
3098
  children
2935
3099
  ]
2936
3100
  })
@@ -3120,7 +3284,7 @@ function DrawerDescription(_a) {
3120
3284
  }
3121
3285
 
3122
3286
  // components/ui/dropdown-menu.tsx
3123
- var import_lucide_react10 = require("lucide-react");
3287
+ var import_lucide_react11 = require("lucide-react");
3124
3288
  var import_radix_ui13 = require("radix-ui");
3125
3289
  var import_jsx_runtime25 = require("react/jsx-runtime");
3126
3290
  function DropdownMenu(_a) {
@@ -3208,7 +3372,7 @@ function DropdownMenuCheckboxItem(_a) {
3208
3372
  checked
3209
3373
  }, props), {
3210
3374
  children: [
3211
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_radix_ui13.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react10.CheckIcon, { className: "size-4" }) }) }),
3375
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_radix_ui13.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react11.CheckIcon, { className: "size-4" }) }) }),
3212
3376
  children
3213
3377
  ]
3214
3378
  })
@@ -3241,7 +3405,7 @@ function DropdownMenuRadioItem(_a) {
3241
3405
  )
3242
3406
  }, props), {
3243
3407
  children: [
3244
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_radix_ui13.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react10.CircleIcon, { className: "size-2 fill-current" }) }) }),
3408
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_radix_ui13.DropdownMenu.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react11.CircleIcon, { className: "size-2 fill-current" }) }) }),
3245
3409
  children
3246
3410
  ]
3247
3411
  })
@@ -3324,7 +3488,7 @@ function DropdownMenuSubTrigger(_a) {
3324
3488
  }, props), {
3325
3489
  children: [
3326
3490
  children,
3327
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react10.ChevronRightIcon, { className: "ml-auto size-4" })
3491
+ /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(import_lucide_react11.ChevronRightIcon, { className: "ml-auto size-4" })
3328
3492
  ]
3329
3493
  })
3330
3494
  );
@@ -3724,12 +3888,12 @@ function FieldError(_a) {
3724
3888
  }
3725
3889
 
3726
3890
  // components/ui/form.tsx
3727
- var React6 = __toESM(require("react"), 1);
3891
+ var React7 = __toESM(require("react"), 1);
3728
3892
  var import_radix_ui16 = require("radix-ui");
3729
3893
  var import_react_hook_form = require("react-hook-form");
3730
3894
  var import_jsx_runtime30 = require("react/jsx-runtime");
3731
3895
  var Form = import_react_hook_form.FormProvider;
3732
- var FormFieldContext = React6.createContext(
3896
+ var FormFieldContext = React7.createContext(
3733
3897
  {}
3734
3898
  );
3735
3899
  var FormField = (_a) => {
@@ -3737,8 +3901,8 @@ var FormField = (_a) => {
3737
3901
  return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(import_react_hook_form.Controller, __spreadValues({}, props)) });
3738
3902
  };
3739
3903
  var useFormField = () => {
3740
- const fieldContext = React6.useContext(FormFieldContext);
3741
- const itemContext = React6.useContext(FormItemContext);
3904
+ const fieldContext = React7.useContext(FormFieldContext);
3905
+ const itemContext = React7.useContext(FormItemContext);
3742
3906
  const { getFieldState } = (0, import_react_hook_form.useFormContext)();
3743
3907
  const formState = (0, import_react_hook_form.useFormState)({ name: fieldContext.name });
3744
3908
  const fieldState = getFieldState(fieldContext.name, formState);
@@ -3754,12 +3918,12 @@ var useFormField = () => {
3754
3918
  formMessageId: `${id}-form-item-message`
3755
3919
  }, fieldState);
3756
3920
  };
3757
- var FormItemContext = React6.createContext(
3921
+ var FormItemContext = React7.createContext(
3758
3922
  {}
3759
3923
  );
3760
3924
  function FormItem(_a) {
3761
3925
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
3762
- const id = React6.useId();
3926
+ const id = React7.useId();
3763
3927
  return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3764
3928
  "div",
3765
3929
  __spreadValues({
@@ -3866,9 +4030,9 @@ function HoverCardContent(_a) {
3866
4030
  }
3867
4031
 
3868
4032
  // components/ui/input-otp.tsx
3869
- var React7 = __toESM(require("react"), 1);
4033
+ var React8 = __toESM(require("react"), 1);
3870
4034
  var import_input_otp = require("input-otp");
3871
- var import_lucide_react11 = require("lucide-react");
4035
+ var import_lucide_react12 = require("lucide-react");
3872
4036
  var import_jsx_runtime32 = require("react/jsx-runtime");
3873
4037
  function InputOTP(_a) {
3874
4038
  var _b = _a, {
@@ -3909,7 +4073,7 @@ function InputOTPSlot(_a) {
3909
4073
  "className"
3910
4074
  ]);
3911
4075
  var _a2;
3912
- const inputOTPContext = React7.useContext(import_input_otp.OTPInputContext);
4076
+ const inputOTPContext = React8.useContext(import_input_otp.OTPInputContext);
3913
4077
  const { char, hasFakeCaret, isActive } = (_a2 = inputOTPContext == null ? void 0 : inputOTPContext.slots[index]) != null ? _a2 : {};
3914
4078
  return /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(
3915
4079
  "div",
@@ -3930,7 +4094,7 @@ function InputOTPSlot(_a) {
3930
4094
  }
3931
4095
  function InputOTPSeparator(_a) {
3932
4096
  var props = __objRest(_a, []);
3933
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", __spreadProps(__spreadValues({ "data-slot": "input-otp-separator", role: "separator" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_lucide_react11.MinusIcon, {}) }));
4097
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)("div", __spreadProps(__spreadValues({ "data-slot": "input-otp-separator", role: "separator" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_lucide_react12.MinusIcon, {}) }));
3934
4098
  }
3935
4099
 
3936
4100
  // components/ui/item.tsx
@@ -4184,7 +4348,7 @@ function Link(_a) {
4184
4348
  }
4185
4349
 
4186
4350
  // components/ui/menubar.tsx
4187
- var import_lucide_react12 = require("lucide-react");
4351
+ var import_lucide_react13 = require("lucide-react");
4188
4352
  var import_radix_ui20 = require("radix-ui");
4189
4353
  var import_jsx_runtime36 = require("react/jsx-runtime");
4190
4354
  function Menubar(_a) {
@@ -4307,7 +4471,7 @@ function MenubarCheckboxItem(_a) {
4307
4471
  checked
4308
4472
  }, props), {
4309
4473
  children: [
4310
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_radix_ui20.Menubar.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react12.CheckIcon, { className: "size-4" }) }) }),
4474
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_radix_ui20.Menubar.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react13.CheckIcon, { className: "size-4" }) }) }),
4311
4475
  children
4312
4476
  ]
4313
4477
  })
@@ -4331,7 +4495,7 @@ function MenubarRadioItem(_a) {
4331
4495
  )
4332
4496
  }, props), {
4333
4497
  children: [
4334
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_radix_ui20.Menubar.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react12.CircleIcon, { className: "size-2 fill-current" }) }) }),
4498
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_radix_ui20.Menubar.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react13.CircleIcon, { className: "size-2 fill-current" }) }) }),
4335
4499
  children
4336
4500
  ]
4337
4501
  })
@@ -4414,7 +4578,7 @@ function MenubarSubTrigger(_a) {
4414
4578
  }, props), {
4415
4579
  children: [
4416
4580
  children,
4417
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react12.ChevronRightIcon, { className: "ml-auto h-4 w-4" })
4581
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(import_lucide_react13.ChevronRightIcon, { className: "ml-auto h-4 w-4" })
4418
4582
  ]
4419
4583
  })
4420
4584
  );
@@ -4438,7 +4602,7 @@ function MenubarSubContent(_a) {
4438
4602
  }
4439
4603
 
4440
4604
  // components/ui/native-select.tsx
4441
- var import_lucide_react13 = require("lucide-react");
4605
+ var import_lucide_react14 = require("lucide-react");
4442
4606
  var import_jsx_runtime37 = require("react/jsx-runtime");
4443
4607
  function NativeSelect(_a) {
4444
4608
  var _b = _a, {
@@ -4467,7 +4631,7 @@ function NativeSelect(_a) {
4467
4631
  }, props)
4468
4632
  ),
4469
4633
  /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
4470
- import_lucide_react13.ChevronDownIcon,
4634
+ import_lucide_react14.ChevronDownIcon,
4471
4635
  {
4472
4636
  className: "pointer-events-none absolute top-1/2 right-3.5 size-4 -translate-y-1/2 text-on-subtle opacity-50 select-none",
4473
4637
  "aria-hidden": "true",
@@ -4544,7 +4708,7 @@ function NavigationButton(_a) {
4544
4708
 
4545
4709
  // components/ui/navigation-menu.tsx
4546
4710
  var import_class_variance_authority11 = require("class-variance-authority");
4547
- var import_lucide_react14 = require("lucide-react");
4711
+ var import_lucide_react15 = require("lucide-react");
4548
4712
  var import_radix_ui22 = require("radix-ui");
4549
4713
  var import_jsx_runtime39 = require("react/jsx-runtime");
4550
4714
  function NavigationMenu(_a) {
@@ -4626,7 +4790,7 @@ function NavigationMenuTrigger(_a) {
4626
4790
  children,
4627
4791
  " ",
4628
4792
  /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
4629
- import_lucide_react14.ChevronDownIcon,
4793
+ import_lucide_react15.ChevronDownIcon,
4630
4794
  {
4631
4795
  className: "relative top-[1px] ml-1 size-3 transition duration-slow group-data-[state=open]:rotate-180",
4632
4796
  "aria-hidden": "true"
@@ -4717,7 +4881,7 @@ function NavigationMenuIndicator(_a) {
4717
4881
  }
4718
4882
 
4719
4883
  // components/ui/pagination.tsx
4720
- var import_lucide_react15 = require("lucide-react");
4884
+ var import_lucide_react16 = require("lucide-react");
4721
4885
  var import_jsx_runtime40 = require("react/jsx-runtime");
4722
4886
  function Pagination(_a) {
4723
4887
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
@@ -4779,7 +4943,7 @@ function PaginationPrevious(_a) {
4779
4943
  } = _b, props = __objRest(_b, [
4780
4944
  "className"
4781
4945
  ]);
4782
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Button, { asChild: true, variant: "tertiary", size: "icon-md", className: cn(className), children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("a", __spreadProps(__spreadValues({ "aria-label": "Go to previous page", "data-slot": "pagination-link" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react15.ChevronLeftIcon, { className: "size-5" }) })) });
4946
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Button, { asChild: true, variant: "tertiary", size: "icon-md", className: cn(className), children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("a", __spreadProps(__spreadValues({ "aria-label": "Go to previous page", "data-slot": "pagination-link" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react16.ChevronLeftIcon, { className: "size-5" }) })) });
4783
4947
  }
4784
4948
  function PaginationNext(_a) {
4785
4949
  var _b = _a, {
@@ -4787,7 +4951,7 @@ function PaginationNext(_a) {
4787
4951
  } = _b, props = __objRest(_b, [
4788
4952
  "className"
4789
4953
  ]);
4790
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Button, { asChild: true, variant: "tertiary", size: "icon-md", className: cn(className), children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("a", __spreadProps(__spreadValues({ "aria-label": "Go to next page", "data-slot": "pagination-link" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react15.ChevronRightIcon, { className: "size-5" }) })) });
4954
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Button, { asChild: true, variant: "tertiary", size: "icon-md", className: cn(className), children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("a", __spreadProps(__spreadValues({ "aria-label": "Go to next page", "data-slot": "pagination-link" }, props), { children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react16.ChevronRightIcon, { className: "size-5" }) })) });
4791
4955
  }
4792
4956
  function PaginationEllipsis(_a) {
4793
4957
  var _b = _a, {
@@ -4803,7 +4967,7 @@ function PaginationEllipsis(_a) {
4803
4967
  className: cn("flex size-10 items-center justify-center", className)
4804
4968
  }, props), {
4805
4969
  children: [
4806
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react15.MoreHorizontalIcon, { className: "size-4" }),
4970
+ /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(import_lucide_react16.MoreHorizontalIcon, { className: "size-4" }),
4807
4971
  /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("span", { className: "sr-only", children: "More pages" })
4808
4972
  ]
4809
4973
  })
@@ -4916,7 +5080,7 @@ function Progress(_a) {
4916
5080
  }
4917
5081
 
4918
5082
  // components/ui/radio-group.tsx
4919
- var import_lucide_react16 = require("lucide-react");
5083
+ var import_lucide_react17 = require("lucide-react");
4920
5084
  var import_radix_ui25 = require("radix-ui");
4921
5085
  var import_jsx_runtime43 = require("react/jsx-runtime");
4922
5086
  function RadioGroup(_a) {
@@ -4953,7 +5117,7 @@ function RadioGroupItem(_a) {
4953
5117
  {
4954
5118
  "data-slot": "radio-group-indicator",
4955
5119
  className: "relative flex items-center justify-center",
4956
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react16.CircleIcon, { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-primary" })
5120
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(import_lucide_react17.CircleIcon, { className: "absolute top-1/2 left-1/2 size-2 -translate-x-1/2 -translate-y-1/2 fill-primary" })
4957
5121
  }
4958
5122
  )
4959
5123
  })
@@ -4961,7 +5125,7 @@ function RadioGroupItem(_a) {
4961
5125
  }
4962
5126
 
4963
5127
  // components/ui/resizable.tsx
4964
- var import_lucide_react17 = require("lucide-react");
5128
+ var import_lucide_react18 = require("lucide-react");
4965
5129
  var ResizablePrimitive = __toESM(require("react-resizable-panels"), 1);
4966
5130
  var import_jsx_runtime44 = require("react/jsx-runtime");
4967
5131
  function ResizablePanelGroup(_a) {
@@ -5002,7 +5166,7 @@ function ResizableHandle(_a) {
5002
5166
  className
5003
5167
  )
5004
5168
  }, props), {
5005
- children: withHandle && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react17.GripVerticalIcon, { className: "size-2.5" }) })
5169
+ children: withHandle && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-xs border bg-border", children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_lucide_react18.GripVerticalIcon, { className: "size-2.5" }) })
5006
5170
  })
5007
5171
  );
5008
5172
  }
@@ -5071,7 +5235,7 @@ function ScrollBar(_a) {
5071
5235
  }
5072
5236
 
5073
5237
  // components/ui/select.tsx
5074
- var import_lucide_react18 = require("lucide-react");
5238
+ var import_lucide_react19 = require("lucide-react");
5075
5239
  var import_radix_ui27 = require("radix-ui");
5076
5240
  var import_jsx_runtime46 = require("react/jsx-runtime");
5077
5241
  function Select(_a) {
@@ -5112,7 +5276,7 @@ function SelectTrigger(_a) {
5112
5276
  }, props), {
5113
5277
  children: [
5114
5278
  children,
5115
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_radix_ui27.Select.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react18.ChevronDownIcon, { className: cn("size-4", readOnly ? "opacity-30" : "opacity-50") }) })
5279
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_radix_ui27.Select.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.ChevronDownIcon, { className: cn("size-4", readOnly ? "opacity-30" : "opacity-50") }) })
5116
5280
  ]
5117
5281
  })
5118
5282
  );
@@ -5195,7 +5359,7 @@ function SelectItem(_a) {
5195
5359
  {
5196
5360
  "data-slot": "select-item-indicator",
5197
5361
  className: "absolute right-2 flex size-3.5 items-center justify-center",
5198
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_radix_ui27.Select.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react18.CheckIcon, { className: "size-4 text-primary" }) })
5362
+ children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_radix_ui27.Select.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.CheckIcon, { className: "size-4 text-primary" }) })
5199
5363
  }
5200
5364
  ),
5201
5365
  /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_radix_ui27.Select.ItemText, { children })
@@ -5232,7 +5396,7 @@ function SelectScrollUpButton(_a) {
5232
5396
  className
5233
5397
  )
5234
5398
  }, props), {
5235
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react18.ChevronUpIcon, { className: "size-4" })
5399
+ children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.ChevronUpIcon, { className: "size-4" })
5236
5400
  })
5237
5401
  );
5238
5402
  }
@@ -5251,13 +5415,13 @@ function SelectScrollDownButton(_a) {
5251
5415
  className
5252
5416
  )
5253
5417
  }, props), {
5254
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react18.ChevronDownIcon, { className: "size-4" })
5418
+ children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_lucide_react19.ChevronDownIcon, { className: "size-4" })
5255
5419
  })
5256
5420
  );
5257
5421
  }
5258
5422
 
5259
5423
  // components/ui/sheet.tsx
5260
- var import_lucide_react19 = require("lucide-react");
5424
+ var import_lucide_react20 = require("lucide-react");
5261
5425
  var import_radix_ui28 = require("radix-ui");
5262
5426
  var import_jsx_runtime47 = require("react/jsx-runtime");
5263
5427
  function Sheet(_a) {
@@ -5323,7 +5487,7 @@ function SheetContent(_a) {
5323
5487
  children: [
5324
5488
  children,
5325
5489
  showCloseButton && /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_radix_ui28.Dialog.Close, { className: "absolute top-4 right-4 rounded-xs opacity-70 ring-offset-prominent transition-opacity hover:opacity-100 focus:ring-2 focus:ring-ring focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
5326
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react19.XIcon, { className: "size-4" }),
5490
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_lucide_react20.XIcon, { className: "size-4" }),
5327
5491
  /* @__PURE__ */ (0, import_jsx_runtime47.jsx)("span", { className: "sr-only", children: "Close" })
5328
5492
  ] })
5329
5493
  ]
@@ -5381,17 +5545,17 @@ function SheetDescription(_a) {
5381
5545
  }
5382
5546
 
5383
5547
  // components/ui/sidebar.tsx
5384
- var React10 = __toESM(require("react"), 1);
5548
+ var React11 = __toESM(require("react"), 1);
5385
5549
  var import_class_variance_authority12 = require("class-variance-authority");
5386
- var import_lucide_react20 = require("lucide-react");
5550
+ var import_lucide_react21 = require("lucide-react");
5387
5551
  var import_radix_ui30 = require("radix-ui");
5388
5552
 
5389
5553
  // hooks/use-mobile.ts
5390
- var React8 = __toESM(require("react"), 1);
5554
+ var React9 = __toESM(require("react"), 1);
5391
5555
  var MOBILE_BREAKPOINT = 768;
5392
5556
  function useIsMobile() {
5393
- const [isMobile, setIsMobile] = React8.useState(void 0);
5394
- React8.useEffect(() => {
5557
+ const [isMobile, setIsMobile] = React9.useState(void 0);
5558
+ React9.useEffect(() => {
5395
5559
  const mql = window.matchMedia(`(max-width: ${MOBILE_BREAKPOINT - 1}px)`);
5396
5560
  const onChange = () => {
5397
5561
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -5417,10 +5581,10 @@ function Skeleton(_a) {
5417
5581
  }
5418
5582
 
5419
5583
  // components/ui/tooltip.tsx
5420
- var React9 = __toESM(require("react"), 1);
5584
+ var React10 = __toESM(require("react"), 1);
5421
5585
  var import_radix_ui29 = require("radix-ui");
5422
5586
  var import_jsx_runtime49 = require("react/jsx-runtime");
5423
- var TooltipModeContext = React9.createContext("tooltip");
5587
+ var TooltipModeContext = React10.createContext("tooltip");
5424
5588
  function TooltipProvider(_a) {
5425
5589
  var _b = _a, {
5426
5590
  delayDuration = 0
@@ -5454,7 +5618,7 @@ function TooltipTrigger(_a) {
5454
5618
  } = _b, props = __objRest(_b, [
5455
5619
  "children"
5456
5620
  ]);
5457
- const mode = React9.useContext(TooltipModeContext);
5621
+ const mode = React10.useContext(TooltipModeContext);
5458
5622
  if (mode === "drawer") {
5459
5623
  return /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(DrawerTrigger, __spreadProps(__spreadValues({ "data-slot": "tooltip-trigger" }, props), { children }));
5460
5624
  }
@@ -5476,7 +5640,7 @@ function TooltipContent(_a) {
5476
5640
  "closeLabel",
5477
5641
  "children"
5478
5642
  ]);
5479
- const mode = React9.useContext(TooltipModeContext);
5643
+ const mode = React10.useContext(TooltipModeContext);
5480
5644
  if (mode === "drawer") {
5481
5645
  return /* @__PURE__ */ (0, import_jsx_runtime49.jsxs)(DrawerContent, { "data-slot": "tooltip-content", "data-variant": variant, children: [
5482
5646
  /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(DrawerHeader, { children: /* @__PURE__ */ (0, import_jsx_runtime49.jsx)(DrawerTitle, { children: title }) }),
@@ -5514,9 +5678,9 @@ var SIDEBAR_WIDTH = "16rem";
5514
5678
  var SIDEBAR_WIDTH_MOBILE = "18rem";
5515
5679
  var SIDEBAR_WIDTH_ICON = "3rem";
5516
5680
  var SIDEBAR_KEYBOARD_SHORTCUT = "b";
5517
- var SidebarContext = React10.createContext(null);
5681
+ var SidebarContext = React11.createContext(null);
5518
5682
  function useSidebar() {
5519
- const context = React10.useContext(SidebarContext);
5683
+ const context = React11.useContext(SidebarContext);
5520
5684
  if (!context) {
5521
5685
  throw new Error("useSidebar must be used within a SidebarProvider.");
5522
5686
  }
@@ -5539,10 +5703,10 @@ function SidebarProvider(_a) {
5539
5703
  "children"
5540
5704
  ]);
5541
5705
  const isMobile = useIsMobile();
5542
- const [openMobile, setOpenMobile] = React10.useState(false);
5543
- const [_open, _setOpen] = React10.useState(defaultOpen);
5706
+ const [openMobile, setOpenMobile] = React11.useState(false);
5707
+ const [_open, _setOpen] = React11.useState(defaultOpen);
5544
5708
  const open = openProp != null ? openProp : _open;
5545
- const setOpen = React10.useCallback(
5709
+ const setOpen = React11.useCallback(
5546
5710
  (value) => {
5547
5711
  const openState = typeof value === "function" ? value(open) : value;
5548
5712
  if (setOpenProp) {
@@ -5554,10 +5718,10 @@ function SidebarProvider(_a) {
5554
5718
  },
5555
5719
  [setOpenProp, open]
5556
5720
  );
5557
- const toggleSidebar = React10.useCallback(() => {
5721
+ const toggleSidebar = React11.useCallback(() => {
5558
5722
  return isMobile ? setOpenMobile((open2) => !open2) : setOpen((open2) => !open2);
5559
5723
  }, [isMobile, setOpen, setOpenMobile]);
5560
- React10.useEffect(() => {
5724
+ React11.useEffect(() => {
5561
5725
  const handleKeyDown = (event) => {
5562
5726
  if (event.key === SIDEBAR_KEYBOARD_SHORTCUT && (event.metaKey || event.ctrlKey)) {
5563
5727
  event.preventDefault();
@@ -5568,7 +5732,7 @@ function SidebarProvider(_a) {
5568
5732
  return () => window.removeEventListener("keydown", handleKeyDown);
5569
5733
  }, [toggleSidebar]);
5570
5734
  const state = open ? "expanded" : "collapsed";
5571
- const contextValue = React10.useMemo(
5735
+ const contextValue = React11.useMemo(
5572
5736
  () => ({
5573
5737
  state,
5574
5738
  open,
@@ -5720,7 +5884,7 @@ function SidebarTrigger(_a) {
5720
5884
  }
5721
5885
  }, props), {
5722
5886
  children: [
5723
- /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react20.PanelLeftIcon, {}),
5887
+ /* @__PURE__ */ (0, import_jsx_runtime50.jsx)(import_lucide_react21.PanelLeftIcon, {}),
5724
5888
  /* @__PURE__ */ (0, import_jsx_runtime50.jsx)("span", { className: "sr-only", children: "Toggle Sidebar" })
5725
5889
  ]
5726
5890
  })
@@ -6146,7 +6310,7 @@ function SidebarMenuSubButton(_a) {
6146
6310
  }
6147
6311
 
6148
6312
  // components/ui/slider.tsx
6149
- var React11 = __toESM(require("react"), 1);
6313
+ var React12 = __toESM(require("react"), 1);
6150
6314
  var import_radix_ui31 = require("radix-ui");
6151
6315
  var import_jsx_runtime51 = require("react/jsx-runtime");
6152
6316
  function Slider(_a) {
@@ -6163,7 +6327,7 @@ function Slider(_a) {
6163
6327
  "min",
6164
6328
  "max"
6165
6329
  ]);
6166
- const _values = React11.useMemo(
6330
+ const _values = React12.useMemo(
6167
6331
  () => Array.isArray(value) ? value : Array.isArray(defaultValue) ? defaultValue : [min, max],
6168
6332
  [value, defaultValue, min, max]
6169
6333
  );
@@ -6213,7 +6377,7 @@ function Slider(_a) {
6213
6377
  }
6214
6378
 
6215
6379
  // components/ui/toast.tsx
6216
- var import_lucide_react21 = require("lucide-react");
6380
+ var import_lucide_react22 = require("lucide-react");
6217
6381
  var import_next_themes = require("next-themes");
6218
6382
  var import_sonner = require("sonner");
6219
6383
  var import_jsx_runtime52 = require("react/jsx-runtime");
@@ -6230,11 +6394,11 @@ var Toaster = (_a) => {
6230
6394
  visibleToasts: isMobile ? 1 : 3,
6231
6395
  duration: 4e3,
6232
6396
  icons: {
6233
- success: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react21.CircleCheckIcon, { className: "size-4" }),
6234
- info: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react21.InfoIcon, { className: "size-4" }),
6235
- warning: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react21.TriangleAlertIcon, { className: "size-4" }),
6236
- error: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react21.OctagonXIcon, { className: "size-4" }),
6237
- loading: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react21.Loader2Icon, { className: "size-4 animate-spin" })
6397
+ success: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react22.CircleCheckIcon, { className: "size-4" }),
6398
+ info: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react22.InfoIcon, { className: "size-4" }),
6399
+ warning: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react22.TriangleAlertIcon, { className: "size-4" }),
6400
+ error: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react22.OctagonXIcon, { className: "size-4" }),
6401
+ loading: /* @__PURE__ */ (0, import_jsx_runtime52.jsx)(import_lucide_react22.Loader2Icon, { className: "size-4 animate-spin" })
6238
6402
  },
6239
6403
  toastOptions: {
6240
6404
  classNames: {
@@ -6255,8 +6419,8 @@ var Toaster = (_a) => {
6255
6419
  };
6256
6420
 
6257
6421
  // components/ui/stepper.tsx
6258
- var React12 = __toESM(require("react"), 1);
6259
- var import_lucide_react22 = require("lucide-react");
6422
+ var React13 = __toESM(require("react"), 1);
6423
+ var import_lucide_react23 = require("lucide-react");
6260
6424
  var import_jsx_runtime53 = require("react/jsx-runtime");
6261
6425
  function clamp(value, min, max) {
6262
6426
  return Math.min(Math.max(value, min), max);
@@ -6291,16 +6455,16 @@ function Stepper({
6291
6455
  }) {
6292
6456
  const { container, buttonSize, iconClass } = stepperSizeConfig[size];
6293
6457
  const isControlled = controlledValue !== void 0;
6294
- const [internalValue, setInternalValue] = React12.useState(
6458
+ const [internalValue, setInternalValue] = React13.useState(
6295
6459
  clamp(defaultValue, min, max)
6296
6460
  );
6297
6461
  const currentValue = isControlled ? controlledValue : internalValue;
6298
6462
  const decimalPlaces = getDecimalPlaces(step);
6299
- const [displayString, setDisplayString] = React12.useState(
6463
+ const [displayString, setDisplayString] = React13.useState(
6300
6464
  formatValue(currentValue, decimalPlaces)
6301
6465
  );
6302
- const [isFocused, setIsFocused] = React12.useState(false);
6303
- React12.useEffect(() => {
6466
+ const [isFocused, setIsFocused] = React13.useState(false);
6467
+ React13.useEffect(() => {
6304
6468
  if (!isFocused) {
6305
6469
  setDisplayString(formatValue(currentValue, decimalPlaces));
6306
6470
  }
@@ -6365,7 +6529,7 @@ function Stepper({
6365
6529
  onClick: handleDecrement,
6366
6530
  disabled: disabled || currentValue <= min,
6367
6531
  "aria-label": "Decrease value",
6368
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react22.Minus, { className: iconClass })
6532
+ children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react23.Minus, { className: iconClass })
6369
6533
  }
6370
6534
  ) }),
6371
6535
  /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(
@@ -6400,7 +6564,7 @@ function Stepper({
6400
6564
  onClick: handleIncrement,
6401
6565
  disabled: disabled || currentValue >= max,
6402
6566
  "aria-label": "Increase value",
6403
- children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react22.Plus, { className: iconClass })
6567
+ children: /* @__PURE__ */ (0, import_jsx_runtime53.jsx)(import_lucide_react23.Plus, { className: iconClass })
6404
6568
  }
6405
6569
  )
6406
6570
  ] })
@@ -6658,7 +6822,7 @@ function TabsContent(_a) {
6658
6822
  }
6659
6823
 
6660
6824
  // components/ui/ticket-card.tsx
6661
- var import_lucide_react23 = require("lucide-react");
6825
+ var import_lucide_react24 = require("lucide-react");
6662
6826
  var import_jsx_runtime57 = require("react/jsx-runtime");
6663
6827
  function formatBalanceValue(raw) {
6664
6828
  const match = raw.match(/^(\D*)([\d,]+(?:\.\d+)?)(\D*)$/);
@@ -6734,7 +6898,7 @@ function TicketCard({
6734
6898
  }
6735
6899
  }
6736
6900
  ),
6737
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react23.ArrowRight, { className: "size-4 text-on-primary" }),
6901
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react24.ArrowRight, { className: "size-4 text-on-primary" }),
6738
6902
  /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-sm font-semibold text-on-primary", children: stubLabel })
6739
6903
  ]
6740
6904
  }
@@ -6774,7 +6938,7 @@ function CreditTicketCard({
6774
6938
  type: "button",
6775
6939
  "aria-label": `More info about ${badgeLabel.toLowerCase()}`,
6776
6940
  className: "inline-flex shrink-0 items-center justify-center rounded-full text-on-semantic-boost outline-none transition-opacity hover:opacity-70 focus-visible:opacity-70 focus-visible:ring-2 focus-visible:ring-on-semantic-boost/40 cursor-pointer",
6777
- children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react23.Info, { className: "!size-3.5", strokeWidth: 2 })
6941
+ children: /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react24.Info, { className: "!size-3.5", strokeWidth: 2 })
6778
6942
  }
6779
6943
  ) }),
6780
6944
  /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(TooltipContent, { side: badgeInfoSide, align: badgeInfoAlign, title: badgeInfoTitle, closeLabel: badgeInfoCloseLabel, variant: "inverse", className: "max-w-xs whitespace-normal", children: badgeInfo })
@@ -6859,7 +7023,7 @@ function CreditTicketCard({
6859
7023
  }
6860
7024
  }
6861
7025
  ),
6862
- /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react23.ArrowRight, { className: "size-4 text-on-primary" }),
7026
+ /* @__PURE__ */ (0, import_jsx_runtime57.jsx)(import_lucide_react24.ArrowRight, { className: "size-4 text-on-primary" }),
6863
7027
  /* @__PURE__ */ (0, import_jsx_runtime57.jsx)("span", { className: "text-sm font-semibold text-on-primary", children: stubLabel })
6864
7028
  ]
6865
7029
  }
@@ -6912,10 +7076,10 @@ function Toggle(_a) {
6912
7076
  }
6913
7077
 
6914
7078
  // components/ui/toggle-group.tsx
6915
- var React13 = __toESM(require("react"), 1);
7079
+ var React14 = __toESM(require("react"), 1);
6916
7080
  var import_radix_ui35 = require("radix-ui");
6917
7081
  var import_jsx_runtime59 = require("react/jsx-runtime");
6918
- var ToggleGroupContext = React13.createContext({
7082
+ var ToggleGroupContext = React14.createContext({
6919
7083
  size: "default",
6920
7084
  variant: "default",
6921
7085
  spacing: 0
@@ -6963,7 +7127,7 @@ function ToggleGroupItem(_a) {
6963
7127
  "variant",
6964
7128
  "size"
6965
7129
  ]);
6966
- const context = React13.useContext(ToggleGroupContext);
7130
+ const context = React14.useContext(ToggleGroupContext);
6967
7131
  return /* @__PURE__ */ (0, import_jsx_runtime59.jsx)(
6968
7132
  import_radix_ui35.ToggleGroup.Item,
6969
7133
  __spreadProps(__spreadValues({
@@ -7069,7 +7233,7 @@ function ResultDialog({
7069
7233
  }
7070
7234
 
7071
7235
  // components/blocks/header-navigation-block.tsx
7072
- var import_lucide_react24 = require("lucide-react");
7236
+ var import_lucide_react25 = require("lucide-react");
7073
7237
  var import_jsx_runtime61 = require("react/jsx-runtime");
7074
7238
  function HeaderNavigationBlock({
7075
7239
  onBack,
@@ -7079,8 +7243,8 @@ function HeaderNavigationBlock({
7079
7243
  actions
7080
7244
  }) {
7081
7245
  var _a;
7082
- return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-full min-w-80 max-w-layout-diagram-small border border-border-subtle rounded-md overflow-hidden bg-prominent", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("header", { className: "flex items-center gap-2 border-b border-border-subtle bg-prominent px-layout-margin-inline py-3", children: [
7083
- onBack && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(NavigationButton, { type: "button", size: "md", "aria-label": "Back", onClick: onBack, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react24.ArrowLeft, { className: "size-5" }) }),
7246
+ return /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("div", { className: "w-full min-w-80 max-w-layout-diagram-small rounded-md overflow-hidden bg-prominent", children: /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("header", { className: "flex items-center gap-2 border-b border-border-subtle bg-prominent px-layout-margin-inline py-3", children: [
7247
+ onBack && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(NavigationButton, { type: "button", size: "md", "aria-label": "Back", onClick: onBack, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react25.ArrowLeft, { className: "size-5" }) }),
7084
7248
  /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "flex min-w-0 flex-1 items-center justify-center gap-2", children: [
7085
7249
  badge && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(Badge, { variant: (_a = badge.variant) != null ? _a : "fill-warning", size: "sm", children: badge.label }),
7086
7250
  /* @__PURE__ */ (0, import_jsx_runtime61.jsx)("span", { className: "font-display font-semibold tabular-nums text-on-prominent", children: balance.amount }),
@@ -7101,7 +7265,7 @@ function HistoryButton({
7101
7265
  const label = show ? count > 99 ? "99+" : String(count) : null;
7102
7266
  const ariaLabel = ariaLabelOverride != null ? ariaLabelOverride : show ? `Open history, ${count} new` : "Open history";
7103
7267
  return /* @__PURE__ */ (0, import_jsx_runtime61.jsxs)("div", { className: "relative inline-flex", children: [
7104
- /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(NavigationButton, { type: "button", size: "md", "aria-label": ariaLabel, onClick, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react24.History, { className: "size-5" }) }),
7268
+ /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(NavigationButton, { type: "button", size: "md", "aria-label": ariaLabel, onClick, children: /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(import_lucide_react25.History, { className: "size-5" }) }),
7105
7269
  show && /* @__PURE__ */ (0, import_jsx_runtime61.jsx)(
7106
7270
  "span",
7107
7271
  {
@@ -7160,7 +7324,7 @@ function FAQBlock({
7160
7324
  }
7161
7325
 
7162
7326
  // components/blocks/hero-block.tsx
7163
- var import_lucide_react25 = require("lucide-react");
7327
+ var import_lucide_react26 = require("lucide-react");
7164
7328
  var import_jsx_runtime63 = require("react/jsx-runtime");
7165
7329
  function HeroBlock({
7166
7330
  layout = "centered",
@@ -7180,7 +7344,7 @@ function HeroBlock({
7180
7344
  ] }),
7181
7345
  /* @__PURE__ */ (0, import_jsx_runtime63.jsxs)(Button, { size: "sm", onClick: primaryCta.onClick, children: [
7182
7346
  primaryCta.label,
7183
- primaryCta.trailingArrow !== false && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react25.ArrowRight, { className: "size-4" })
7347
+ primaryCta.trailingArrow !== false && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react26.ArrowRight, { className: "size-4" })
7184
7348
  ] })
7185
7349
  ] }) });
7186
7350
  }
@@ -7216,12 +7380,12 @@ function TaglinePill({
7216
7380
  label,
7217
7381
  suffix && /* @__PURE__ */ (0, import_jsx_runtime63.jsx)("span", { className: "text-on-subtle", children: ` \xB7 ${suffix}` })
7218
7382
  ] }),
7219
- /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react25.ArrowUpRight, { className: "size-4 text-on-subtle shrink-0", "aria-hidden": "true" })
7383
+ /* @__PURE__ */ (0, import_jsx_runtime63.jsx)(import_lucide_react26.ArrowUpRight, { className: "size-4 text-on-subtle shrink-0", "aria-hidden": "true" })
7220
7384
  ] });
7221
7385
  }
7222
7386
 
7223
7387
  // components/blocks/auth-block.tsx
7224
- var React14 = __toESM(require("react"), 1);
7388
+ var React15 = __toESM(require("react"), 1);
7225
7389
  var import_jsx_runtime64 = require("react/jsx-runtime");
7226
7390
  function AuthBlock({
7227
7391
  mode,
@@ -7237,7 +7401,7 @@ function AuthBlock({
7237
7401
  const ctaText = mode === "sign-in" ? "Sign in" : "Sign up";
7238
7402
  const footerPrompt = mode === "sign-in" ? "Don't have an account?" : "Already have an account?";
7239
7403
  const footerLinkLabel = mode === "sign-in" ? "Sign up" : "Log in";
7240
- const [email, setEmail] = React14.useState("");
7404
+ const [email, setEmail] = React15.useState("");
7241
7405
  return /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex flex-col items-center gap-6 w-full", children: [
7242
7406
  /* @__PURE__ */ (0, import_jsx_runtime64.jsxs)("div", { className: "flex items-center gap-2", children: [
7243
7407
  /* @__PURE__ */ (0, import_jsx_runtime64.jsx)("img", { src: logoSrc, alt: wordmark, className: "size-8 object-contain" }),
@@ -7305,12 +7469,12 @@ function ProviderButton({ provider }) {
7305
7469
  }
7306
7470
 
7307
7471
  // components/blocks/navbar-block.tsx
7308
- var React15 = __toESM(require("react"), 1);
7309
- var import_lucide_react26 = require("lucide-react");
7472
+ var React16 = __toESM(require("react"), 1);
7473
+ var import_lucide_react27 = require("lucide-react");
7310
7474
  var import_jsx_runtime65 = require("react/jsx-runtime");
7311
7475
  function NavBarBlock({ brand, links, signIn, signUp }) {
7312
7476
  var _a, _b, _c, _d;
7313
- const [mobileMenuOpen, setMobileMenuOpen] = React15.useState(false);
7477
+ const [mobileMenuOpen, setMobileMenuOpen] = React16.useState(false);
7314
7478
  return /* @__PURE__ */ (0, import_jsx_runtime65.jsx)("div", { className: "w-full border border-border-subtle rounded-md overflow-hidden", children: /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("nav", { className: "bg-prominent", children: [
7315
7479
  /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center justify-between px-layout-margin-inline py-3", children: [
7316
7480
  /* @__PURE__ */ (0, import_jsx_runtime65.jsxs)("div", { className: "flex items-center gap-6", children: [
@@ -7345,7 +7509,7 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
7345
7509
  "aria-expanded": mobileMenuOpen,
7346
7510
  className: "min-[600px]:hidden",
7347
7511
  onClick: () => setMobileMenuOpen((prev) => !prev),
7348
- children: mobileMenuOpen ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react26.X, { className: "size-4" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react26.Menu, { className: "size-4" })
7512
+ children: mobileMenuOpen ? /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react27.X, { className: "size-4" }) : /* @__PURE__ */ (0, import_jsx_runtime65.jsx)(import_lucide_react27.Menu, { className: "size-4" })
7349
7513
  }
7350
7514
  )
7351
7515
  ] }),
@@ -7370,8 +7534,8 @@ function NavBarBlock({ brand, links, signIn, signUp }) {
7370
7534
  }
7371
7535
 
7372
7536
  // components/blocks/open-positions-block.tsx
7373
- var React16 = __toESM(require("react"), 1);
7374
- var import_lucide_react27 = require("lucide-react");
7537
+ var React17 = __toESM(require("react"), 1);
7538
+ var import_lucide_react28 = require("lucide-react");
7375
7539
  var import_jsx_runtime66 = require("react/jsx-runtime");
7376
7540
  function OpenPositionsBlock({
7377
7541
  trigger,
@@ -7388,7 +7552,7 @@ function OpenPositionsBlock({
7388
7552
  /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(DrawerContent, { className: "p-0 flex flex-col", children: [
7389
7553
  /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(DrawerHeader, { className: "flex-row items-center justify-between px-4 py-3 shrink-0 text-left", children: [
7390
7554
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DrawerTitle, { className: "text-base font-semibold font-display text-on-prominent", children: sheetTitle }),
7391
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DrawerClose, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react27.X, {}) }) })
7555
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(DrawerClose, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react28.X, {}) }) })
7392
7556
  ] }),
7393
7557
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Separator, {}),
7394
7558
  body
@@ -7400,7 +7564,7 @@ function OpenPositionsBlock({
7400
7564
  /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(SheetContent, { side: "right", showCloseButton: false, className: "p-0 flex flex-col w-80 sm:max-w-xs", children: [
7401
7565
  /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(SheetHeader, { className: "flex-row items-center justify-between px-4 py-3 shrink-0", children: [
7402
7566
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SheetTitle, { className: "text-base font-semibold font-display text-on-prominent", children: sheetTitle }),
7403
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SheetClose, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react27.X, {}) }) })
7567
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(SheetClose, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(NavigationButton, { size: "sm", "aria-label": "Close", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react28.X, {}) }) })
7404
7568
  ] }),
7405
7569
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Separator, {}),
7406
7570
  body
@@ -7412,7 +7576,7 @@ function PositionsList({
7412
7576
  onViewHistory
7413
7577
  }) {
7414
7578
  return /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)("div", { className: "flex flex-col flex-1 min-h-0", children: [
7415
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ItemGroup, { className: "min-h-0 overflow-y-auto", children: positions.map((pos, i) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(React16.Fragment, { children: [
7579
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(ItemGroup, { className: "min-h-0 overflow-y-auto", children: positions.map((pos, i) => /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(React17.Fragment, { children: [
7416
7580
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(PositionRow, { position: pos }),
7417
7581
  i < positions.length - 1 && /* @__PURE__ */ (0, import_jsx_runtime66.jsx)("div", { className: "h-px mx-4 bg-border-subtle" })
7418
7582
  ] }, i)) }),
@@ -7470,7 +7634,7 @@ function PnlMeta({ pnl, win, stake }) {
7470
7634
  }
7471
7635
  function DefaultEmptyState({ onViewHistory }) {
7472
7636
  return /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Empty, { className: "flex min-h-0 flex-1 flex-col justify-center border-none rounded-none p-6 text-center", children: /* @__PURE__ */ (0, import_jsx_runtime66.jsxs)(EmptyHeader, { className: "gap-4", children: [
7473
- /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(EmptyMedia, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react27.History, { className: "size-8 text-on-subtle" }) }),
7637
+ /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(EmptyMedia, { children: /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(import_lucide_react28.History, { className: "size-8 text-on-subtle" }) }),
7474
7638
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(EmptyTitle, { className: "text-base leading-6 font-semibold tracking-normal body-md text-on-subtle", children: "No trades yet." }),
7475
7639
  /* @__PURE__ */ (0, import_jsx_runtime66.jsx)(Button, { variant: "tertiary", size: "md", onClick: onViewHistory, children: "View transaction history" })
7476
7640
  ] }) });
@@ -7482,7 +7646,6 @@ function DefaultEmptyState({ onViewHistory }) {
7482
7646
  AccordionItem,
7483
7647
  AccordionTrigger,
7484
7648
  Alert,
7485
- AlertDescription,
7486
7649
  AlertDialog,
7487
7650
  AlertDialogAction,
7488
7651
  AlertDialogCancel,
@@ -7495,7 +7658,6 @@ function DefaultEmptyState({ onViewHistory }) {
7495
7658
  AlertDialogPortal,
7496
7659
  AlertDialogTitle,
7497
7660
  AlertDialogTrigger,
7498
- AlertTitle,
7499
7661
  AspectRatio,
7500
7662
  AuthBlock,
7501
7663
  Avatar,
@@ -7791,6 +7953,7 @@ function DefaultEmptyState({ onViewHistory }) {
7791
7953
  TooltipContent,
7792
7954
  TooltipProvider,
7793
7955
  TooltipTrigger,
7956
+ alertVariants,
7794
7957
  badgeVariants,
7795
7958
  buttonVariants,
7796
7959
  cn,