@optilogic/core 1.0.0-beta.2 → 1.0.0-beta.4

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
@@ -2,7 +2,7 @@
2
2
 
3
3
  var clsx = require('clsx');
4
4
  var tailwindMerge = require('tailwind-merge');
5
- var React33 = require('react');
5
+ var React34 = require('react');
6
6
  var reactSlot = require('@radix-ui/react-slot');
7
7
  var classVarianceAuthority = require('class-variance-authority');
8
8
  var jsxRuntime = require('react/jsx-runtime');
@@ -42,7 +42,7 @@ function _interopNamespace(e) {
42
42
  return Object.freeze(n);
43
43
  }
44
44
 
45
- var React33__namespace = /*#__PURE__*/_interopNamespace(React33);
45
+ var React34__namespace = /*#__PURE__*/_interopNamespace(React34);
46
46
  var LabelPrimitive__namespace = /*#__PURE__*/_interopNamespace(LabelPrimitive);
47
47
  var CheckboxPrimitive__namespace = /*#__PURE__*/_interopNamespace(CheckboxPrimitive);
48
48
  var SwitchPrimitive__namespace = /*#__PURE__*/_interopNamespace(SwitchPrimitive);
@@ -86,7 +86,7 @@ var buttonVariants = classVarianceAuthority.cva(
86
86
  }
87
87
  }
88
88
  );
89
- var Button = React33__namespace.forwardRef(
89
+ var Button = React34__namespace.forwardRef(
90
90
  ({ className, variant, size, asChild = false, ...props }, ref) => {
91
91
  const Comp = asChild ? reactSlot.Slot : "button";
92
92
  return /* @__PURE__ */ jsxRuntime.jsx(
@@ -100,7 +100,7 @@ var Button = React33__namespace.forwardRef(
100
100
  }
101
101
  );
102
102
  Button.displayName = "Button";
103
- var Input = React33__namespace.forwardRef(
103
+ var Input = React34__namespace.forwardRef(
104
104
  ({ className, type, ...props }, ref) => {
105
105
  return /* @__PURE__ */ jsxRuntime.jsx(
106
106
  "input",
@@ -120,7 +120,7 @@ Input.displayName = "Input";
120
120
  var labelVariants = classVarianceAuthority.cva(
121
121
  "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
122
122
  );
123
- var Label = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
123
+ var Label = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
124
124
  LabelPrimitive__namespace.Root,
125
125
  {
126
126
  ref,
@@ -129,7 +129,7 @@ var Label = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @
129
129
  }
130
130
  ));
131
131
  Label.displayName = LabelPrimitive__namespace.Root.displayName;
132
- var Textarea = React33__namespace.forwardRef(
132
+ var Textarea = React34__namespace.forwardRef(
133
133
  ({ className, ...props }, ref) => {
134
134
  return /* @__PURE__ */ jsxRuntime.jsx(
135
135
  "textarea",
@@ -168,7 +168,7 @@ var badgeVariants = classVarianceAuthority.cva(
168
168
  function Badge({ className, variant, ...props }) {
169
169
  return /* @__PURE__ */ jsxRuntime.jsx("div", { className: cn(badgeVariants({ variant }), className), ...props });
170
170
  }
171
- var Checkbox = React33__namespace.forwardRef(({ className, showBorder = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
171
+ var Checkbox = React34__namespace.forwardRef(({ className, showBorder = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
172
172
  CheckboxPrimitive__namespace.Root,
173
173
  {
174
174
  ref,
@@ -212,7 +212,7 @@ var Checkbox = React33__namespace.forwardRef(({ className, showBorder = true, ..
212
212
  }
213
213
  ));
214
214
  Checkbox.displayName = CheckboxPrimitive__namespace.Root.displayName;
215
- var Switch = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
215
+ var Switch = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
216
216
  SwitchPrimitive__namespace.Root,
217
217
  {
218
218
  className: cn(
@@ -248,7 +248,7 @@ var Switch = React33__namespace.forwardRef(({ className, ...props }, ref) => /*
248
248
  }
249
249
  ));
250
250
  Switch.displayName = SwitchPrimitive__namespace.Root.displayName;
251
- var Progress = React33__namespace.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
251
+ var Progress = React34__namespace.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
252
252
  ProgressPrimitive__namespace.Root,
253
253
  {
254
254
  ref,
@@ -267,7 +267,7 @@ var Progress = React33__namespace.forwardRef(({ className, value, ...props }, re
267
267
  }
268
268
  ));
269
269
  Progress.displayName = ProgressPrimitive__namespace.Root.displayName;
270
- var Separator = React33__namespace.forwardRef(
270
+ var Separator = React34__namespace.forwardRef(
271
271
  ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
272
272
  SeparatorPrimitive__namespace.Root,
273
273
  {
@@ -296,7 +296,7 @@ function Skeleton({ className, ...props }) {
296
296
  var Select = SelectPrimitive__namespace.Root;
297
297
  var SelectGroup = SelectPrimitive__namespace.Group;
298
298
  var SelectValue = SelectPrimitive__namespace.Value;
299
- var SelectTrigger = React33__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
299
+ var SelectTrigger = React34__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
300
300
  SelectPrimitive__namespace.Trigger,
301
301
  {
302
302
  ref,
@@ -312,7 +312,7 @@ var SelectTrigger = React33__namespace.forwardRef(({ className, children, ...pro
312
312
  }
313
313
  ));
314
314
  SelectTrigger.displayName = SelectPrimitive__namespace.Trigger.displayName;
315
- var SelectScrollUpButton = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
315
+ var SelectScrollUpButton = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
316
316
  SelectPrimitive__namespace.ScrollUpButton,
317
317
  {
318
318
  ref,
@@ -325,7 +325,7 @@ var SelectScrollUpButton = React33__namespace.forwardRef(({ className, ...props
325
325
  }
326
326
  ));
327
327
  SelectScrollUpButton.displayName = SelectPrimitive__namespace.ScrollUpButton.displayName;
328
- var SelectScrollDownButton = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
328
+ var SelectScrollDownButton = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
329
329
  SelectPrimitive__namespace.ScrollDownButton,
330
330
  {
331
331
  ref,
@@ -338,7 +338,7 @@ var SelectScrollDownButton = React33__namespace.forwardRef(({ className, ...prop
338
338
  }
339
339
  ));
340
340
  SelectScrollDownButton.displayName = SelectPrimitive__namespace.ScrollDownButton.displayName;
341
- var SelectContent = React33__namespace.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
341
+ var SelectContent = React34__namespace.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(SelectPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(
342
342
  SelectPrimitive__namespace.Content,
343
343
  {
344
344
  ref,
@@ -366,7 +366,7 @@ var SelectContent = React33__namespace.forwardRef(({ className, children, positi
366
366
  }
367
367
  ) }));
368
368
  SelectContent.displayName = SelectPrimitive__namespace.Content.displayName;
369
- var SelectLabel = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
369
+ var SelectLabel = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
370
370
  SelectPrimitive__namespace.Label,
371
371
  {
372
372
  ref,
@@ -375,7 +375,7 @@ var SelectLabel = React33__namespace.forwardRef(({ className, ...props }, ref) =
375
375
  }
376
376
  ));
377
377
  SelectLabel.displayName = SelectPrimitive__namespace.Label.displayName;
378
- var SelectItem = React33__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
378
+ var SelectItem = React34__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
379
379
  SelectPrimitive__namespace.Item,
380
380
  {
381
381
  ref,
@@ -391,7 +391,7 @@ var SelectItem = React33__namespace.forwardRef(({ className, children, ...props
391
391
  }
392
392
  ));
393
393
  SelectItem.displayName = SelectPrimitive__namespace.Item.displayName;
394
- var SelectSeparator = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
394
+ var SelectSeparator = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
395
395
  SelectPrimitive__namespace.Separator,
396
396
  {
397
397
  ref,
@@ -401,7 +401,7 @@ var SelectSeparator = React33__namespace.forwardRef(({ className, ...props }, re
401
401
  ));
402
402
  SelectSeparator.displayName = SelectPrimitive__namespace.Separator.displayName;
403
403
  var Tabs = TabsPrimitive__namespace.Root;
404
- var TabsList = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
404
+ var TabsList = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
405
405
  TabsPrimitive__namespace.List,
406
406
  {
407
407
  ref,
@@ -415,7 +415,7 @@ var TabsList = React33__namespace.forwardRef(({ className, ...props }, ref) => /
415
415
  }
416
416
  ));
417
417
  TabsList.displayName = TabsPrimitive__namespace.List.displayName;
418
- var TabsTrigger = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
418
+ var TabsTrigger = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
419
419
  TabsPrimitive__namespace.Trigger,
420
420
  {
421
421
  ref,
@@ -442,7 +442,7 @@ var TabsTrigger = React33__namespace.forwardRef(({ className, ...props }, ref) =
442
442
  }
443
443
  ));
444
444
  TabsTrigger.displayName = TabsPrimitive__namespace.Trigger.displayName;
445
- var TabsContent = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
445
+ var TabsContent = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
446
446
  TabsPrimitive__namespace.Content,
447
447
  {
448
448
  ref,
@@ -525,7 +525,7 @@ var accordionContentInnerVariants = classVarianceAuthority.cva("pb-4 pt-0", {
525
525
  }
526
526
  });
527
527
  var Accordion = AccordionPrimitive__namespace.Root;
528
- var AccordionItem = React33__namespace.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
528
+ var AccordionItem = React34__namespace.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
529
529
  AccordionPrimitive__namespace.Item,
530
530
  {
531
531
  ref,
@@ -535,7 +535,7 @@ var AccordionItem = React33__namespace.forwardRef(({ className, variant, ...prop
535
535
  }
536
536
  ));
537
537
  AccordionItem.displayName = "AccordionItem";
538
- var AccordionTrigger = React33__namespace.forwardRef(({ className, children, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
538
+ var AccordionTrigger = React34__namespace.forwardRef(({ className, children, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(AccordionPrimitive__namespace.Header, { className: "flex", children: /* @__PURE__ */ jsxRuntime.jsxs(
539
539
  AccordionPrimitive__namespace.Trigger,
540
540
  {
541
541
  ref,
@@ -548,7 +548,7 @@ var AccordionTrigger = React33__namespace.forwardRef(({ className, children, var
548
548
  }
549
549
  ) }));
550
550
  AccordionTrigger.displayName = AccordionPrimitive__namespace.Trigger.displayName;
551
- var AccordionContent = React33__namespace.forwardRef(({ className, children, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
551
+ var AccordionContent = React34__namespace.forwardRef(({ className, children, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
552
552
  AccordionPrimitive__namespace.Content,
553
553
  {
554
554
  ref,
@@ -562,7 +562,7 @@ var TooltipProvider = TooltipPrimitive__namespace.Provider;
562
562
  var TooltipRoot = TooltipPrimitive__namespace.Root;
563
563
  var TooltipTrigger = TooltipPrimitive__namespace.Trigger;
564
564
  var TooltipPortal = TooltipPrimitive__namespace.Portal;
565
- var TooltipContent = React33__namespace.forwardRef(({ className, sideOffset = 6, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
565
+ var TooltipContent = React34__namespace.forwardRef(({ className, sideOffset = 6, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(TooltipPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
566
566
  TooltipPrimitive__namespace.Content,
567
567
  {
568
568
  ref,
@@ -591,7 +591,7 @@ var TooltipContent = React33__namespace.forwardRef(({ className, sideOffset = 6,
591
591
  }
592
592
  ) }));
593
593
  TooltipContent.displayName = TooltipPrimitive__namespace.Content.displayName;
594
- var TooltipArrow = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
594
+ var TooltipArrow = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
595
595
  TooltipPrimitive__namespace.Arrow,
596
596
  {
597
597
  ref,
@@ -630,7 +630,7 @@ function Tooltip({
630
630
  var Popover = PopoverPrimitive__namespace.Root;
631
631
  var PopoverTrigger = PopoverPrimitive__namespace.Trigger;
632
632
  var PopoverAnchor = PopoverPrimitive__namespace.Anchor;
633
- var PopoverContent = React33__namespace.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
633
+ var PopoverContent = React34__namespace.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(PopoverPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
634
634
  PopoverPrimitive__namespace.Content,
635
635
  {
636
636
  ref,
@@ -656,7 +656,7 @@ var DropdownMenuGroup = DropdownMenuPrimitive__namespace.Group;
656
656
  var DropdownMenuPortal = DropdownMenuPrimitive__namespace.Portal;
657
657
  var DropdownMenuSub = DropdownMenuPrimitive__namespace.Sub;
658
658
  var DropdownMenuRadioGroup = DropdownMenuPrimitive__namespace.RadioGroup;
659
- var DropdownMenuSubTrigger = React33__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
659
+ var DropdownMenuSubTrigger = React34__namespace.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
660
660
  DropdownMenuPrimitive__namespace.SubTrigger,
661
661
  {
662
662
  ref,
@@ -675,7 +675,7 @@ var DropdownMenuSubTrigger = React33__namespace.forwardRef(({ className, inset,
675
675
  }
676
676
  ));
677
677
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive__namespace.SubTrigger.displayName;
678
- var DropdownMenuSubContent = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
678
+ var DropdownMenuSubContent = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
679
679
  DropdownMenuPrimitive__namespace.SubContent,
680
680
  {
681
681
  ref,
@@ -692,7 +692,7 @@ var DropdownMenuSubContent = React33__namespace.forwardRef(({ className, ...prop
692
692
  }
693
693
  ));
694
694
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive__namespace.SubContent.displayName;
695
- var DropdownMenuContent = React33__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
695
+ var DropdownMenuContent = React34__namespace.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(DropdownMenuPrimitive__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(
696
696
  DropdownMenuPrimitive__namespace.Content,
697
697
  {
698
698
  ref,
@@ -710,7 +710,7 @@ var DropdownMenuContent = React33__namespace.forwardRef(({ className, sideOffset
710
710
  }
711
711
  ) }));
712
712
  DropdownMenuContent.displayName = DropdownMenuPrimitive__namespace.Content.displayName;
713
- var DropdownMenuItem = React33__namespace.forwardRef(({ className, inset, destructive, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
713
+ var DropdownMenuItem = React34__namespace.forwardRef(({ className, inset, destructive, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
714
714
  DropdownMenuPrimitive__namespace.Item,
715
715
  {
716
716
  ref,
@@ -726,7 +726,7 @@ var DropdownMenuItem = React33__namespace.forwardRef(({ className, inset, destru
726
726
  }
727
727
  ));
728
728
  DropdownMenuItem.displayName = DropdownMenuPrimitive__namespace.Item.displayName;
729
- var DropdownMenuCheckboxItem = React33__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
729
+ var DropdownMenuCheckboxItem = React34__namespace.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
730
730
  DropdownMenuPrimitive__namespace.CheckboxItem,
731
731
  {
732
732
  ref,
@@ -745,7 +745,7 @@ var DropdownMenuCheckboxItem = React33__namespace.forwardRef(({ className, child
745
745
  }
746
746
  ));
747
747
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive__namespace.CheckboxItem.displayName;
748
- var DropdownMenuRadioItem = React33__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
748
+ var DropdownMenuRadioItem = React34__namespace.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(
749
749
  DropdownMenuPrimitive__namespace.RadioItem,
750
750
  {
751
751
  ref,
@@ -763,7 +763,7 @@ var DropdownMenuRadioItem = React33__namespace.forwardRef(({ className, children
763
763
  }
764
764
  ));
765
765
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive__namespace.RadioItem.displayName;
766
- var DropdownMenuLabel = React33__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
766
+ var DropdownMenuLabel = React34__namespace.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
767
767
  DropdownMenuPrimitive__namespace.Label,
768
768
  {
769
769
  ref,
@@ -776,7 +776,7 @@ var DropdownMenuLabel = React33__namespace.forwardRef(({ className, inset, ...pr
776
776
  }
777
777
  ));
778
778
  DropdownMenuLabel.displayName = DropdownMenuPrimitive__namespace.Label.displayName;
779
- var DropdownMenuSeparator = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
779
+ var DropdownMenuSeparator = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
780
780
  DropdownMenuPrimitive__namespace.Separator,
781
781
  {
782
782
  ref,
@@ -801,7 +801,7 @@ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
801
801
  var AlertDialog = AlertDialogPrimitive__namespace.Root;
802
802
  var AlertDialogTrigger = AlertDialogPrimitive__namespace.Trigger;
803
803
  var AlertDialogPortal = AlertDialogPrimitive__namespace.Portal;
804
- var AlertDialogOverlay = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
804
+ var AlertDialogOverlay = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
805
805
  AlertDialogPrimitive__namespace.Overlay,
806
806
  {
807
807
  className: cn(
@@ -815,7 +815,7 @@ var AlertDialogOverlay = React33__namespace.forwardRef(({ className, ...props },
815
815
  }
816
816
  ));
817
817
  AlertDialogOverlay.displayName = AlertDialogPrimitive__namespace.Overlay.displayName;
818
- var AlertDialogContent = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortal, { children: [
818
+ var AlertDialogContent = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsxs(AlertDialogPortal, { children: [
819
819
  /* @__PURE__ */ jsxRuntime.jsx(AlertDialogOverlay, {}),
820
820
  /* @__PURE__ */ jsxRuntime.jsx(
821
821
  AlertDialogPrimitive__namespace.Content,
@@ -858,7 +858,7 @@ var AlertDialogFooter = ({ className, ...props }) => /* @__PURE__ */ jsxRuntime.
858
858
  }
859
859
  );
860
860
  AlertDialogFooter.displayName = "AlertDialogFooter";
861
- var AlertDialogTitle = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
861
+ var AlertDialogTitle = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
862
862
  AlertDialogPrimitive__namespace.Title,
863
863
  {
864
864
  ref,
@@ -867,7 +867,7 @@ var AlertDialogTitle = React33__namespace.forwardRef(({ className, ...props }, r
867
867
  }
868
868
  ));
869
869
  AlertDialogTitle.displayName = AlertDialogPrimitive__namespace.Title.displayName;
870
- var AlertDialogDescription = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
870
+ var AlertDialogDescription = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
871
871
  AlertDialogPrimitive__namespace.Description,
872
872
  {
873
873
  ref,
@@ -876,7 +876,7 @@ var AlertDialogDescription = React33__namespace.forwardRef(({ className, ...prop
876
876
  }
877
877
  ));
878
878
  AlertDialogDescription.displayName = AlertDialogPrimitive__namespace.Description.displayName;
879
- var AlertDialogAction = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
879
+ var AlertDialogAction = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
880
880
  AlertDialogPrimitive__namespace.Action,
881
881
  {
882
882
  ref,
@@ -885,7 +885,7 @@ var AlertDialogAction = React33__namespace.forwardRef(({ className, ...props },
885
885
  }
886
886
  ));
887
887
  AlertDialogAction.displayName = AlertDialogPrimitive__namespace.Action.displayName;
888
- var AlertDialogCancel = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
888
+ var AlertDialogCancel = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
889
889
  AlertDialogPrimitive__namespace.Cancel,
890
890
  {
891
891
  ref,
@@ -894,21 +894,107 @@ var AlertDialogCancel = React33__namespace.forwardRef(({ className, ...props },
894
894
  }
895
895
  ));
896
896
  AlertDialogCancel.displayName = AlertDialogPrimitive__namespace.Cancel.displayName;
897
- var Card = React33__namespace.forwardRef(
898
- ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
899
- "div",
900
- {
901
- ref,
902
- className: cn(
903
- "rounded-xl border bg-card text-card-foreground shadow",
904
- className
905
- ),
906
- ...props
897
+ var cardVariants = classVarianceAuthority.cva(
898
+ "rounded-xl border bg-card text-card-foreground shadow",
899
+ {
900
+ variants: {
901
+ /**
902
+ * Card width size presets
903
+ */
904
+ size: {
905
+ auto: "",
906
+ sm: "w-64",
907
+ md: "w-80",
908
+ lg: "w-96",
909
+ xl: "w-[28rem]",
910
+ full: "w-full"
911
+ },
912
+ /**
913
+ * Hover effect styles
914
+ */
915
+ hover: {
916
+ none: "",
917
+ lift: "transition-all duration-200 hover:-translate-y-1 hover:shadow-lg",
918
+ glow: "transition-shadow duration-200 hover:shadow-lg hover:shadow-accent/20",
919
+ border: "transition-colors duration-200 hover:border-accent",
920
+ "border-success": "transition-colors duration-200 hover:border-success",
921
+ "border-warning": "transition-colors duration-200 hover:border-warning",
922
+ "border-destructive": "transition-colors duration-200 hover:border-destructive",
923
+ "border-muted": "transition-colors duration-200 hover:border-muted-foreground",
924
+ scale: "transition-transform duration-200 hover:scale-[1.02]"
925
+ },
926
+ /**
927
+ * Whether the card is interactive (clickable)
928
+ */
929
+ interactive: {
930
+ true: "cursor-pointer focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",
931
+ false: ""
932
+ },
933
+ /**
934
+ * Card padding density
935
+ */
936
+ padding: {
937
+ none: "",
938
+ sm: "[&>*:not(img)]:p-3 [&>*:not(img)]:pt-3",
939
+ md: "",
940
+ lg: "[&>*:not(img)]:p-8 [&>*:not(img)]:pt-8"
941
+ }
942
+ },
943
+ defaultVariants: {
944
+ size: "auto",
945
+ hover: "none",
946
+ interactive: false,
947
+ padding: "md"
907
948
  }
908
- )
949
+ }
950
+ );
951
+ var Card = React34__namespace.forwardRef(
952
+ ({
953
+ className,
954
+ size,
955
+ hover,
956
+ interactive,
957
+ padding,
958
+ asButton,
959
+ hoverBorderClass,
960
+ onClick,
961
+ onKeyDown,
962
+ ...props
963
+ }, ref) => {
964
+ const isInteractive = interactive || asButton || !!onClick;
965
+ const handleKeyDown = React34__namespace.useCallback(
966
+ (e) => {
967
+ if (isInteractive && (e.key === "Enter" || e.key === " ")) {
968
+ e.preventDefault();
969
+ onClick?.(e);
970
+ }
971
+ onKeyDown?.(e);
972
+ },
973
+ [isInteractive, onClick, onKeyDown]
974
+ );
975
+ return /* @__PURE__ */ jsxRuntime.jsx(
976
+ "div",
977
+ {
978
+ ref,
979
+ role: isInteractive ? "button" : void 0,
980
+ tabIndex: isInteractive ? 0 : void 0,
981
+ className: cn(
982
+ cardVariants({ size, hover, interactive: isInteractive, padding }),
983
+ "group relative",
984
+ // Custom hover border color overrides variant if provided
985
+ hoverBorderClass && "transition-colors duration-200",
986
+ hoverBorderClass,
987
+ className
988
+ ),
989
+ onClick,
990
+ onKeyDown: handleKeyDown,
991
+ ...props
992
+ }
993
+ );
994
+ }
909
995
  );
910
996
  Card.displayName = "Card";
911
- var CardHeader = React33__namespace.forwardRef(
997
+ var CardHeader = React34__namespace.forwardRef(
912
998
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
913
999
  "div",
914
1000
  {
@@ -919,7 +1005,7 @@ var CardHeader = React33__namespace.forwardRef(
919
1005
  )
920
1006
  );
921
1007
  CardHeader.displayName = "CardHeader";
922
- var CardTitle = React33__namespace.forwardRef(
1008
+ var CardTitle = React34__namespace.forwardRef(
923
1009
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
924
1010
  "div",
925
1011
  {
@@ -930,7 +1016,7 @@ var CardTitle = React33__namespace.forwardRef(
930
1016
  )
931
1017
  );
932
1018
  CardTitle.displayName = "CardTitle";
933
- var CardDescription = React33__namespace.forwardRef(
1019
+ var CardDescription = React34__namespace.forwardRef(
934
1020
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
935
1021
  "div",
936
1022
  {
@@ -941,11 +1027,11 @@ var CardDescription = React33__namespace.forwardRef(
941
1027
  )
942
1028
  );
943
1029
  CardDescription.displayName = "CardDescription";
944
- var CardContent = React33__namespace.forwardRef(
1030
+ var CardContent = React34__namespace.forwardRef(
945
1031
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-6 pt-0", className), ...props })
946
1032
  );
947
1033
  CardContent.displayName = "CardContent";
948
- var CardFooter = React33__namespace.forwardRef(
1034
+ var CardFooter = React34__namespace.forwardRef(
949
1035
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
950
1036
  "div",
951
1037
  {
@@ -956,7 +1042,422 @@ var CardFooter = React33__namespace.forwardRef(
956
1042
  )
957
1043
  );
958
1044
  CardFooter.displayName = "CardFooter";
959
- var Table = React33__namespace.forwardRef(
1045
+ var cardImageVariants = classVarianceAuthority.cva("w-full object-cover", {
1046
+ variants: {
1047
+ /**
1048
+ * Image aspect ratio
1049
+ */
1050
+ aspectRatio: {
1051
+ auto: "",
1052
+ square: "aspect-square",
1053
+ video: "aspect-video",
1054
+ wide: "aspect-[2/1]",
1055
+ portrait: "aspect-[3/4]"
1056
+ },
1057
+ /**
1058
+ * Image position in the card
1059
+ */
1060
+ position: {
1061
+ top: "rounded-t-xl",
1062
+ bottom: "rounded-b-xl",
1063
+ fill: "rounded-xl"
1064
+ }
1065
+ },
1066
+ defaultVariants: {
1067
+ aspectRatio: "video",
1068
+ position: "top"
1069
+ }
1070
+ });
1071
+ var CardImage = React34__namespace.forwardRef(
1072
+ ({ className, aspectRatio, position, fallback, alt, src, onError, ...props }, ref) => {
1073
+ const [hasError, setHasError] = React34__namespace.useState(false);
1074
+ const handleError = React34__namespace.useCallback(
1075
+ (e) => {
1076
+ setHasError(true);
1077
+ onError?.(e);
1078
+ },
1079
+ [onError]
1080
+ );
1081
+ React34__namespace.useEffect(() => {
1082
+ setHasError(false);
1083
+ }, [src]);
1084
+ if (hasError && fallback) {
1085
+ return /* @__PURE__ */ jsxRuntime.jsx(
1086
+ "div",
1087
+ {
1088
+ className: cn(
1089
+ "flex items-center justify-center bg-muted",
1090
+ cardImageVariants({ aspectRatio, position }),
1091
+ className
1092
+ ),
1093
+ children: fallback
1094
+ }
1095
+ );
1096
+ }
1097
+ return /* @__PURE__ */ jsxRuntime.jsx(
1098
+ "img",
1099
+ {
1100
+ ref,
1101
+ src,
1102
+ alt,
1103
+ className: cn(cardImageVariants({ aspectRatio, position }), className),
1104
+ onError: handleError,
1105
+ ...props
1106
+ }
1107
+ );
1108
+ }
1109
+ );
1110
+ CardImage.displayName = "CardImage";
1111
+ var cardActionsVariants = classVarianceAuthority.cva(
1112
+ "absolute flex items-center gap-1 transition-opacity duration-200 z-10",
1113
+ {
1114
+ variants: {
1115
+ /**
1116
+ * When to show the actions
1117
+ */
1118
+ showOn: {
1119
+ hover: "opacity-0 group-hover:opacity-100",
1120
+ always: "opacity-100"
1121
+ },
1122
+ /**
1123
+ * Position of the actions overlay
1124
+ */
1125
+ position: {
1126
+ "top-right": "top-2 right-2",
1127
+ "top-left": "top-2 left-2",
1128
+ "bottom-right": "bottom-2 right-2",
1129
+ "bottom-left": "bottom-2 left-2"
1130
+ },
1131
+ /**
1132
+ * Visual style of the actions container
1133
+ */
1134
+ variant: {
1135
+ /** Solid background with backdrop blur */
1136
+ floating: "bg-background/90 backdrop-blur-sm rounded-md shadow-sm p-1",
1137
+ /** No background, just spacing */
1138
+ ghost: "p-1",
1139
+ /** Muted bar background */
1140
+ bar: "bg-muted/80 backdrop-blur-sm rounded-md p-1.5",
1141
+ /** No background on container, icons get background on hover */
1142
+ "icon-hover": "p-0 [&>button]:bg-transparent [&>button]:hover:bg-background/90 [&>button]:hover:shadow-sm [&>button]:transition-all"
1143
+ }
1144
+ },
1145
+ defaultVariants: {
1146
+ showOn: "hover",
1147
+ position: "top-right",
1148
+ variant: "floating"
1149
+ }
1150
+ }
1151
+ );
1152
+ var CardActions = React34__namespace.forwardRef(
1153
+ ({ className, showOn, position, variant, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1154
+ "div",
1155
+ {
1156
+ ref,
1157
+ className: cn(cardActionsVariants({ showOn, position, variant }), className),
1158
+ onClick: (e) => e.stopPropagation(),
1159
+ ...props
1160
+ }
1161
+ )
1162
+ );
1163
+ CardActions.displayName = "CardActions";
1164
+ var SelectableCard = React34__namespace.forwardRef(
1165
+ ({
1166
+ className,
1167
+ selected: controlledSelected,
1168
+ defaultSelected = false,
1169
+ onSelectedChange,
1170
+ showCheckbox = false,
1171
+ checkboxPosition = "top-right",
1172
+ disabled = false,
1173
+ children,
1174
+ onClick,
1175
+ hover = "border",
1176
+ ...props
1177
+ }, ref) => {
1178
+ const [uncontrolledSelected, setUncontrolledSelected] = React34__namespace.useState(defaultSelected);
1179
+ const isControlled = controlledSelected !== void 0;
1180
+ const isSelected = isControlled ? controlledSelected : uncontrolledSelected;
1181
+ const handleClick = React34__namespace.useCallback(
1182
+ (e) => {
1183
+ if (disabled) return;
1184
+ const newSelected = !isSelected;
1185
+ if (!isControlled) {
1186
+ setUncontrolledSelected(newSelected);
1187
+ }
1188
+ onSelectedChange?.(newSelected);
1189
+ onClick?.(e);
1190
+ },
1191
+ [disabled, isSelected, isControlled, onSelectedChange, onClick]
1192
+ );
1193
+ const handleCheckboxChange = React34__namespace.useCallback(
1194
+ (checked) => {
1195
+ if (disabled) return;
1196
+ const newSelected = checked === true;
1197
+ if (!isControlled) {
1198
+ setUncontrolledSelected(newSelected);
1199
+ }
1200
+ onSelectedChange?.(newSelected);
1201
+ },
1202
+ [disabled, isControlled, onSelectedChange]
1203
+ );
1204
+ const isInline = checkboxPosition === "inline-left";
1205
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1206
+ Card,
1207
+ {
1208
+ ref,
1209
+ className: cn(
1210
+ // Selection styling
1211
+ isSelected && "ring-2 ring-accent border-accent",
1212
+ disabled && "opacity-50 cursor-not-allowed",
1213
+ className
1214
+ ),
1215
+ interactive: !disabled,
1216
+ hover: disabled ? "none" : hover,
1217
+ onClick: handleClick,
1218
+ "aria-selected": isSelected,
1219
+ "aria-disabled": disabled,
1220
+ ...props,
1221
+ children: [
1222
+ showCheckbox && isInline && /* @__PURE__ */ jsxRuntime.jsxs(
1223
+ "div",
1224
+ {
1225
+ className: "flex items-center gap-3 px-4 py-3 border-b border-border/50",
1226
+ onClick: (e) => e.stopPropagation(),
1227
+ children: [
1228
+ /* @__PURE__ */ jsxRuntime.jsx(
1229
+ Checkbox,
1230
+ {
1231
+ checked: isSelected,
1232
+ onCheckedChange: handleCheckboxChange,
1233
+ disabled
1234
+ }
1235
+ ),
1236
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-muted-foreground", children: isSelected ? "Selected" : "Click to select" })
1237
+ ]
1238
+ }
1239
+ ),
1240
+ showCheckbox && !isInline && /* @__PURE__ */ jsxRuntime.jsx(
1241
+ "div",
1242
+ {
1243
+ className: cn(
1244
+ "absolute z-10 p-1 bg-background/90 backdrop-blur-sm rounded-md",
1245
+ checkboxPosition === "top-left" ? "top-2 left-2" : "top-2 right-2"
1246
+ ),
1247
+ onClick: (e) => e.stopPropagation(),
1248
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1249
+ Checkbox,
1250
+ {
1251
+ checked: isSelected,
1252
+ onCheckedChange: handleCheckboxChange,
1253
+ disabled
1254
+ }
1255
+ )
1256
+ }
1257
+ ),
1258
+ children
1259
+ ]
1260
+ }
1261
+ );
1262
+ }
1263
+ );
1264
+ SelectableCard.displayName = "SelectableCard";
1265
+ var cardGridVariants = classVarianceAuthority.cva("grid", {
1266
+ variants: {
1267
+ /**
1268
+ * Number of columns
1269
+ */
1270
+ columns: {
1271
+ 1: "grid-cols-1",
1272
+ 2: "grid-cols-1 sm:grid-cols-2",
1273
+ 3: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",
1274
+ 4: "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4",
1275
+ auto: "grid-cols-[repeat(auto-fill,minmax(280px,1fr))]"
1276
+ },
1277
+ /**
1278
+ * Gap between cards
1279
+ */
1280
+ gap: {
1281
+ none: "gap-0",
1282
+ sm: "gap-3",
1283
+ md: "gap-4",
1284
+ lg: "gap-6",
1285
+ xl: "gap-8"
1286
+ }
1287
+ },
1288
+ defaultVariants: {
1289
+ columns: "auto",
1290
+ gap: "md"
1291
+ }
1292
+ });
1293
+ var CardGrid = React34__namespace.forwardRef(
1294
+ ({ className, columns, gap, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1295
+ "div",
1296
+ {
1297
+ ref,
1298
+ className: cn(cardGridVariants({ columns, gap }), className),
1299
+ ...props
1300
+ }
1301
+ )
1302
+ );
1303
+ CardGrid.displayName = "CardGrid";
1304
+ var cardListVariants = classVarianceAuthority.cva("flex flex-col", {
1305
+ variants: {
1306
+ /**
1307
+ * Gap between cards
1308
+ */
1309
+ gap: {
1310
+ none: "gap-0",
1311
+ sm: "gap-2",
1312
+ md: "gap-4",
1313
+ lg: "gap-6"
1314
+ },
1315
+ /**
1316
+ * Whether to show dividers between cards
1317
+ */
1318
+ divided: {
1319
+ true: "[&>*:not(:last-child)]:border-b [&>*:not(:last-child)]:pb-4 [&>*:not(:last-child)]:rounded-b-none",
1320
+ false: ""
1321
+ }
1322
+ },
1323
+ defaultVariants: {
1324
+ gap: "md",
1325
+ divided: false
1326
+ }
1327
+ });
1328
+ var CardList = React34__namespace.forwardRef(
1329
+ ({ className, gap, divided, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1330
+ "div",
1331
+ {
1332
+ ref,
1333
+ className: cn(cardListVariants({ gap, divided }), className),
1334
+ ...props
1335
+ }
1336
+ )
1337
+ );
1338
+ CardList.displayName = "CardList";
1339
+ var boardVariants = classVarianceAuthority.cva("text-card-foreground", {
1340
+ variants: {
1341
+ /**
1342
+ * Elevation (shadow depth) - similar to MUI Paper
1343
+ */
1344
+ elevation: {
1345
+ none: "",
1346
+ sm: "shadow-sm",
1347
+ md: "shadow",
1348
+ lg: "shadow-lg",
1349
+ xl: "shadow-xl"
1350
+ },
1351
+ /**
1352
+ * Border style
1353
+ */
1354
+ border: {
1355
+ none: "",
1356
+ default: "border",
1357
+ muted: "border border-muted"
1358
+ },
1359
+ /**
1360
+ * Padding size
1361
+ */
1362
+ padding: {
1363
+ none: "",
1364
+ sm: "p-2",
1365
+ md: "p-4",
1366
+ lg: "p-6",
1367
+ xl: "p-8"
1368
+ },
1369
+ /**
1370
+ * Border radius
1371
+ */
1372
+ radius: {
1373
+ none: "rounded-none",
1374
+ sm: "rounded-sm",
1375
+ md: "rounded-md",
1376
+ lg: "rounded-lg",
1377
+ xl: "rounded-xl",
1378
+ full: "rounded-full"
1379
+ },
1380
+ /**
1381
+ * Background color
1382
+ */
1383
+ background: {
1384
+ default: "bg-card",
1385
+ muted: "bg-muted",
1386
+ transparent: "bg-transparent"
1387
+ },
1388
+ /**
1389
+ * Hover effect styles
1390
+ */
1391
+ hover: {
1392
+ none: "",
1393
+ border: "transition-colors duration-200 hover:border-accent",
1394
+ elevate: "transition-shadow duration-200 hover:shadow-lg",
1395
+ "border-success": "transition-colors duration-200 hover:border-success",
1396
+ "border-warning": "transition-colors duration-200 hover:border-warning",
1397
+ "border-destructive": "transition-colors duration-200 hover:border-destructive"
1398
+ }
1399
+ },
1400
+ defaultVariants: {
1401
+ elevation: "none",
1402
+ border: "default",
1403
+ padding: "none",
1404
+ radius: "lg",
1405
+ background: "default",
1406
+ hover: "none"
1407
+ }
1408
+ });
1409
+ var Board = React34__namespace.forwardRef(
1410
+ ({
1411
+ className,
1412
+ elevation,
1413
+ border,
1414
+ padding,
1415
+ radius,
1416
+ background,
1417
+ hover,
1418
+ hoverBorderClass,
1419
+ ...props
1420
+ }, ref) => {
1421
+ return /* @__PURE__ */ jsxRuntime.jsx(
1422
+ "div",
1423
+ {
1424
+ ref,
1425
+ className: cn(
1426
+ boardVariants({
1427
+ elevation,
1428
+ border,
1429
+ padding,
1430
+ radius,
1431
+ background,
1432
+ hover
1433
+ }),
1434
+ // Custom hover border color overrides variant if provided
1435
+ hoverBorderClass && "transition-colors duration-200",
1436
+ hoverBorderClass,
1437
+ className
1438
+ ),
1439
+ ...props
1440
+ }
1441
+ );
1442
+ }
1443
+ );
1444
+ Board.displayName = "Board";
1445
+ var BoardHeader = React34__namespace.forwardRef(
1446
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1447
+ "div",
1448
+ {
1449
+ ref,
1450
+ className: cn("flex items-center p-4 border-b", className),
1451
+ ...props
1452
+ }
1453
+ )
1454
+ );
1455
+ BoardHeader.displayName = "BoardHeader";
1456
+ var BoardContent = React34__namespace.forwardRef(
1457
+ ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { ref, className: cn("p-4", className), ...props })
1458
+ );
1459
+ BoardContent.displayName = "BoardContent";
1460
+ var Table = React34__namespace.forwardRef(
960
1461
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsxRuntime.jsx(
961
1462
  "table",
962
1463
  {
@@ -967,11 +1468,11 @@ var Table = React33__namespace.forwardRef(
967
1468
  ) })
968
1469
  );
969
1470
  Table.displayName = "Table";
970
- var TableHeader = React33__namespace.forwardRef(
1471
+ var TableHeader = React34__namespace.forwardRef(
971
1472
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, className: cn("[&_tr]:border-b", className), ...props })
972
1473
  );
973
1474
  TableHeader.displayName = "TableHeader";
974
- var TableBody = React33__namespace.forwardRef(
1475
+ var TableBody = React34__namespace.forwardRef(
975
1476
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
976
1477
  "tbody",
977
1478
  {
@@ -982,7 +1483,7 @@ var TableBody = React33__namespace.forwardRef(
982
1483
  )
983
1484
  );
984
1485
  TableBody.displayName = "TableBody";
985
- var TableFooter = React33__namespace.forwardRef(
1486
+ var TableFooter = React34__namespace.forwardRef(
986
1487
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
987
1488
  "tfoot",
988
1489
  {
@@ -996,7 +1497,7 @@ var TableFooter = React33__namespace.forwardRef(
996
1497
  )
997
1498
  );
998
1499
  TableFooter.displayName = "TableFooter";
999
- var TableRow = React33__namespace.forwardRef(
1500
+ var TableRow = React34__namespace.forwardRef(
1000
1501
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1001
1502
  "tr",
1002
1503
  {
@@ -1010,7 +1511,7 @@ var TableRow = React33__namespace.forwardRef(
1010
1511
  )
1011
1512
  );
1012
1513
  TableRow.displayName = "TableRow";
1013
- var TableHead = React33__namespace.forwardRef(
1514
+ var TableHead = React34__namespace.forwardRef(
1014
1515
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1015
1516
  "th",
1016
1517
  {
@@ -1024,7 +1525,7 @@ var TableHead = React33__namespace.forwardRef(
1024
1525
  )
1025
1526
  );
1026
1527
  TableHead.displayName = "TableHead";
1027
- var TableCell = React33__namespace.forwardRef(
1528
+ var TableCell = React34__namespace.forwardRef(
1028
1529
  ({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1029
1530
  "td",
1030
1531
  {
@@ -1038,7 +1539,7 @@ var TableCell = React33__namespace.forwardRef(
1038
1539
  )
1039
1540
  );
1040
1541
  TableCell.displayName = "TableCell";
1041
- var TableCaption = React33__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1542
+ var TableCaption = React34__namespace.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(
1042
1543
  "caption",
1043
1544
  {
1044
1545
  ref,
@@ -1057,7 +1558,7 @@ function Modal({
1057
1558
  zIndex = 50,
1058
1559
  className
1059
1560
  }) {
1060
- React33__namespace.useEffect(() => {
1561
+ React34__namespace.useEffect(() => {
1061
1562
  if (!isOpen) return;
1062
1563
  const handleEscape = (e) => {
1063
1564
  if (e.key === "Escape") {
@@ -1067,7 +1568,7 @@ function Modal({
1067
1568
  window.addEventListener("keydown", handleEscape);
1068
1569
  return () => window.removeEventListener("keydown", handleEscape);
1069
1570
  }, [isOpen, onClose]);
1070
- React33__namespace.useEffect(() => {
1571
+ React34__namespace.useEffect(() => {
1071
1572
  if (isOpen) {
1072
1573
  document.body.style.overflow = "hidden";
1073
1574
  } else {
@@ -1182,12 +1683,12 @@ function ConfirmationModal({
1182
1683
  ] }) });
1183
1684
  }
1184
1685
  function useConfirmation() {
1185
- const [state, setState] = React33__namespace.useState({
1686
+ const [state, setState] = React34__namespace.useState({
1186
1687
  open: false,
1187
1688
  title: "",
1188
1689
  description: ""
1189
1690
  });
1190
- const confirm = React33__namespace.useCallback(
1691
+ const confirm = React34__namespace.useCallback(
1191
1692
  (options) => {
1192
1693
  return new Promise((resolve) => {
1193
1694
  setState({
@@ -1199,15 +1700,15 @@ function useConfirmation() {
1199
1700
  },
1200
1701
  []
1201
1702
  );
1202
- const handleConfirm = React33__namespace.useCallback(() => {
1703
+ const handleConfirm = React34__namespace.useCallback(() => {
1203
1704
  state.resolve?.(true);
1204
1705
  setState((prev) => ({ ...prev, open: false }));
1205
1706
  }, [state.resolve]);
1206
- const handleCancel = React33__namespace.useCallback(() => {
1707
+ const handleCancel = React34__namespace.useCallback(() => {
1207
1708
  state.resolve?.(false);
1208
1709
  setState((prev) => ({ ...prev, open: false }));
1209
1710
  }, [state.resolve]);
1210
- const handleOpenChange = React33__namespace.useCallback(
1711
+ const handleOpenChange = React34__namespace.useCallback(
1211
1712
  (open) => {
1212
1713
  if (!open) {
1213
1714
  state.resolve?.(false);
@@ -1243,11 +1744,11 @@ function ResizeHandle({
1243
1744
  ariaLabel,
1244
1745
  className
1245
1746
  }) {
1246
- const [isDragging, setIsDragging] = React33__namespace.useState(false);
1247
- const [isFocused, setIsFocused] = React33__namespace.useState(false);
1248
- const startXRef = React33__namespace.useRef(0);
1249
- const handleRef = React33__namespace.useRef(null);
1250
- const handleMouseDown = React33__namespace.useCallback(
1747
+ const [isDragging, setIsDragging] = React34__namespace.useState(false);
1748
+ const [isFocused, setIsFocused] = React34__namespace.useState(false);
1749
+ const startXRef = React34__namespace.useRef(0);
1750
+ const handleRef = React34__namespace.useRef(null);
1751
+ const handleMouseDown = React34__namespace.useCallback(
1251
1752
  (e) => {
1252
1753
  if (!resizable) return;
1253
1754
  e.preventDefault();
@@ -1258,7 +1759,7 @@ function ResizeHandle({
1258
1759
  },
1259
1760
  [resizable, onDragStart]
1260
1761
  );
1261
- const handleMouseMove = React33__namespace.useCallback(
1762
+ const handleMouseMove = React34__namespace.useCallback(
1262
1763
  (e) => {
1263
1764
  if (!isDragging) return;
1264
1765
  const deltaX = e.clientX - startXRef.current;
@@ -1267,13 +1768,13 @@ function ResizeHandle({
1267
1768
  },
1268
1769
  [isDragging, onDrag]
1269
1770
  );
1270
- const handleMouseUp = React33__namespace.useCallback(() => {
1771
+ const handleMouseUp = React34__namespace.useCallback(() => {
1271
1772
  if (!isDragging) return;
1272
1773
  setIsDragging(false);
1273
1774
  document.body.style.userSelect = "";
1274
1775
  onDragEnd?.();
1275
1776
  }, [isDragging, onDragEnd]);
1276
- const handleKeyDown = React33__namespace.useCallback(
1777
+ const handleKeyDown = React34__namespace.useCallback(
1277
1778
  (e) => {
1278
1779
  if (!resizable || !onKeyboardResize) return;
1279
1780
  let direction = null;
@@ -1292,7 +1793,7 @@ function ResizeHandle({
1292
1793
  },
1293
1794
  [resizable, onKeyboardResize, orientation]
1294
1795
  );
1295
- React33__namespace.useEffect(() => {
1796
+ React34__namespace.useEffect(() => {
1296
1797
  if (isDragging) {
1297
1798
  window.addEventListener("mousemove", handleMouseMove);
1298
1799
  window.addEventListener("mouseup", handleMouseUp);
@@ -1362,12 +1863,12 @@ function ResizablePanel({
1362
1863
  className,
1363
1864
  dataAttributes = {}
1364
1865
  }) {
1365
- const panelRef = React33__namespace.useRef(null);
1366
- const [isDragging, setIsDragging] = React33__namespace.useState(false);
1367
- const [localWidth, setLocalWidth] = React33__namespace.useState(null);
1368
- const [localOuterWidth, setLocalOuterWidth] = React33__namespace.useState(null);
1866
+ const panelRef = React34__namespace.useRef(null);
1867
+ const [isDragging, setIsDragging] = React34__namespace.useState(false);
1868
+ const [localWidth, setLocalWidth] = React34__namespace.useState(null);
1869
+ const [localOuterWidth, setLocalOuterWidth] = React34__namespace.useState(null);
1369
1870
  const currentWidthVW = isExpanded ? (isDragging && localWidth !== null ? localWidth : expandedWidthVW) || collapsedSizeVW : collapsedSizeVW;
1370
- const clampWidth = React33__namespace.useCallback(
1871
+ const clampWidth = React34__namespace.useCallback(
1371
1872
  (width) => {
1372
1873
  let effectiveMinWidth = minWidthVW;
1373
1874
  let effectiveMaxWidth = maxWidthVW;
@@ -1380,11 +1881,11 @@ function ResizablePanel({
1380
1881
  },
1381
1882
  [minWidthVW, maxWidthVW, orientation, leftWidthVW, isOverlay]
1382
1883
  );
1383
- const handleDragStart = React33__namespace.useCallback(() => {
1884
+ const handleDragStart = React34__namespace.useCallback(() => {
1384
1885
  setIsDragging(true);
1385
1886
  setLocalWidth(currentWidthVW);
1386
1887
  }, [currentWidthVW]);
1387
- const handleDrag = React33__namespace.useCallback(
1888
+ const handleDrag = React34__namespace.useCallback(
1388
1889
  (deltaX) => {
1389
1890
  if (!isExpanded || isOverlay) return;
1390
1891
  const viewportWidth = window.innerWidth;
@@ -1403,14 +1904,14 @@ function ResizablePanel({
1403
1904
  clampWidth
1404
1905
  ]
1405
1906
  );
1406
- const handleDragEnd = React33__namespace.useCallback(() => {
1907
+ const handleDragEnd = React34__namespace.useCallback(() => {
1407
1908
  if (localWidth !== null && onResize) {
1408
1909
  onResize(localWidth);
1409
1910
  }
1410
1911
  setIsDragging(false);
1411
1912
  setLocalWidth(null);
1412
1913
  }, [localWidth, onResize]);
1413
- const handleKeyboardResize = React33__namespace.useCallback(
1914
+ const handleKeyboardResize = React34__namespace.useCallback(
1414
1915
  (direction) => {
1415
1916
  if (!isExpanded || isOverlay || !onResize) return;
1416
1917
  const step = 1;
@@ -1419,13 +1920,13 @@ function ResizablePanel({
1419
1920
  },
1420
1921
  [isExpanded, isOverlay, onResize, currentWidthVW, clampWidth]
1421
1922
  );
1422
- const handleOverlayDragStart = React33__namespace.useCallback(() => {
1923
+ const handleOverlayDragStart = React34__namespace.useCallback(() => {
1423
1924
  if (outerWidthVW) {
1424
1925
  setIsDragging(true);
1425
1926
  setLocalOuterWidth(outerWidthVW);
1426
1927
  }
1427
1928
  }, [outerWidthVW]);
1428
- const handleOverlayDrag = React33__namespace.useCallback(
1929
+ const handleOverlayDrag = React34__namespace.useCallback(
1429
1930
  (deltaX) => {
1430
1931
  if (!isOverlay) return;
1431
1932
  const viewportWidth = window.innerWidth;
@@ -1436,14 +1937,14 @@ function ResizablePanel({
1436
1937
  },
1437
1938
  [isOverlay, localOuterWidth, outerWidthVW]
1438
1939
  );
1439
- const handleOverlayDragEnd = React33__namespace.useCallback(() => {
1940
+ const handleOverlayDragEnd = React34__namespace.useCallback(() => {
1440
1941
  if (localOuterWidth !== null && onResizeOverlay) {
1441
1942
  onResizeOverlay(localOuterWidth);
1442
1943
  }
1443
1944
  setIsDragging(false);
1444
1945
  setLocalOuterWidth(null);
1445
1946
  }, [localOuterWidth, onResizeOverlay]);
1446
- React33__namespace.useEffect(() => {
1947
+ React34__namespace.useEffect(() => {
1447
1948
  if (isOverlay && panelRef.current) {
1448
1949
  const focusableElement = panelRef.current.querySelector(
1449
1950
  'button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'
@@ -1451,7 +1952,7 @@ function ResizablePanel({
1451
1952
  focusableElement?.focus();
1452
1953
  }
1453
1954
  }, [isOverlay]);
1454
- React33__namespace.useEffect(() => {
1955
+ React34__namespace.useEffect(() => {
1455
1956
  if (!isOverlay) return;
1456
1957
  const handleEscape = (e) => {
1457
1958
  if (e.key === "Escape") {
@@ -1667,10 +2168,10 @@ var loadingSpinnerVariants = classVarianceAuthority.cva("rounded-full animate-sp
1667
2168
  variant: "default"
1668
2169
  }
1669
2170
  });
1670
- var LoadingSpinner = React33__namespace.forwardRef(
2171
+ var LoadingSpinner = React34__namespace.forwardRef(
1671
2172
  ({ className, size, variant, label, showDots = false, ...props }, ref) => {
1672
- const [dots, setDots] = React33__namespace.useState("");
1673
- React33__namespace.useEffect(() => {
2173
+ const [dots, setDots] = React34__namespace.useState("");
2174
+ React34__namespace.useEffect(() => {
1674
2175
  if (!showDots || !label) return;
1675
2176
  const interval = setInterval(() => {
1676
2177
  setDots((prev) => prev.length >= 3 ? "" : prev + ".");
@@ -1767,12 +2268,12 @@ function Calendar({
1767
2268
  const endMonth = props.endMonth ?? props.toDate;
1768
2269
  const fromYear = startMonth?.getFullYear();
1769
2270
  const toYear = endMonth?.getFullYear();
1770
- const years = React33__namespace.useMemo(() => getYearRange(fromYear, toYear), [fromYear, toYear]);
1771
- const [internalMonth, setInternalMonth] = React33__namespace.useState(
2271
+ const years = React34__namespace.useMemo(() => getYearRange(fromYear, toYear), [fromYear, toYear]);
2272
+ const [internalMonth, setInternalMonth] = React34__namespace.useState(
1772
2273
  defaultMonth ?? /* @__PURE__ */ new Date()
1773
2274
  );
1774
2275
  const displayedMonth = controlledMonth ?? internalMonth;
1775
- const handleMonthChange = React33__namespace.useCallback(
2276
+ const handleMonthChange = React34__namespace.useCallback(
1776
2277
  (newMonth) => {
1777
2278
  if (controlledMonth === void 0) {
1778
2279
  setInternalMonth(newMonth);
@@ -1903,8 +2404,8 @@ function DatePicker({
1903
2404
  matchTriggerWidth = false,
1904
2405
  onOpenChange
1905
2406
  }) {
1906
- const [open, setOpen] = React33__namespace.useState(false);
1907
- const [internalValue, setInternalValue] = React33__namespace.useState(
2407
+ const [open, setOpen] = React34__namespace.useState(false);
2408
+ const [internalValue, setInternalValue] = React34__namespace.useState(
1908
2409
  defaultValue
1909
2410
  );
1910
2411
  const isControlled = value !== void 0;
@@ -2006,15 +2507,15 @@ function DatePickerInput({
2006
2507
  onOpenChange,
2007
2508
  size = "default"
2008
2509
  }) {
2009
- const [open, setOpen] = React33__namespace.useState(false);
2010
- const [internalValue, setInternalValue] = React33__namespace.useState(
2510
+ const [open, setOpen] = React34__namespace.useState(false);
2511
+ const [internalValue, setInternalValue] = React34__namespace.useState(
2011
2512
  defaultValue
2012
2513
  );
2013
- const [inputValue, setInputValue] = React33__namespace.useState("");
2014
- const inputRef = React33__namespace.useRef(null);
2514
+ const [inputValue, setInputValue] = React34__namespace.useState("");
2515
+ const inputRef = React34__namespace.useRef(null);
2015
2516
  const isControlled = value !== void 0;
2016
2517
  const selectedDate = isControlled ? value : internalValue;
2017
- React33__namespace.useEffect(() => {
2518
+ React34__namespace.useEffect(() => {
2018
2519
  if (selectedDate) {
2019
2520
  setInputValue(dateFns.format(selectedDate, dateFormat));
2020
2521
  } else {
@@ -2175,11 +2676,11 @@ function FilterPopover({
2175
2676
  onFilterChange
2176
2677
  }) {
2177
2678
  const filterType = column.filterType || "text";
2178
- const [operator, setOperator] = React33__namespace.useState(
2679
+ const [operator, setOperator] = React34__namespace.useState(
2179
2680
  filter?.operator || getDefaultOperator(filterType)
2180
2681
  );
2181
- const [value, setValue] = React33__namespace.useState(filter?.value ?? "");
2182
- const [valueTo, setValueTo] = React33__namespace.useState(filter?.valueTo ?? "");
2682
+ const [value, setValue] = React34__namespace.useState(filter?.value ?? "");
2683
+ const [valueTo, setValueTo] = React34__namespace.useState(filter?.valueTo ?? "");
2183
2684
  function getDefaultOperator(type) {
2184
2685
  switch (type) {
2185
2686
  case "text":
@@ -2322,7 +2823,7 @@ function FilterPopover({
2322
2823
  ] })
2323
2824
  ] });
2324
2825
  const renderDateFilter = () => {
2325
- const dateValue = React33__namespace.useMemo(() => {
2826
+ const dateValue = React34__namespace.useMemo(() => {
2326
2827
  if (!value) return void 0;
2327
2828
  if (value instanceof Date) return value;
2328
2829
  if (typeof value === "string") {
@@ -2331,7 +2832,7 @@ function FilterPopover({
2331
2832
  }
2332
2833
  return void 0;
2333
2834
  }, [value]);
2334
- const dateToValue = React33__namespace.useMemo(() => {
2835
+ const dateToValue = React34__namespace.useMemo(() => {
2335
2836
  if (!valueTo) return void 0;
2336
2837
  if (valueTo instanceof Date) return valueTo;
2337
2838
  if (typeof valueTo === "string") {
@@ -2466,7 +2967,7 @@ function HeaderCell({
2466
2967
  onResizeDoubleClick,
2467
2968
  isResizing
2468
2969
  }) {
2469
- const [filterOpen, setFilterOpen] = React33__namespace.useState(false);
2970
+ const [filterOpen, setFilterOpen] = React34__namespace.useState(false);
2470
2971
  const isSorted = sorting?.field === column.key;
2471
2972
  const isFiltered = !!filter;
2472
2973
  const isSortable = column.sortable && onSort;
@@ -2624,15 +3125,15 @@ function CellEditor({
2624
3125
  className
2625
3126
  }) {
2626
3127
  const editorType = column.editorType || "text";
2627
- const [internalValue, setInternalValue] = React33__namespace.useState(value);
2628
- const [validationError, setValidationError] = React33__namespace.useState(
3128
+ const [internalValue, setInternalValue] = React34__namespace.useState(value);
3129
+ const [validationError, setValidationError] = React34__namespace.useState(
2629
3130
  null
2630
3131
  );
2631
- const inputRef = React33__namespace.useRef(null);
2632
- const selectRef = React33__namespace.useRef(null);
3132
+ const inputRef = React34__namespace.useRef(null);
3133
+ const selectRef = React34__namespace.useRef(null);
2633
3134
  const currentValue = onChange ? value : internalValue;
2634
3135
  const setValue = onChange || setInternalValue;
2635
- const validate = React33__namespace.useCallback(
3136
+ const validate = React34__namespace.useCallback(
2636
3137
  (val) => {
2637
3138
  if (!column.validator) return true;
2638
3139
  const result = column.validator(val, row);
@@ -2680,7 +3181,7 @@ function CellEditor({
2680
3181
  }
2681
3182
  handleCommit();
2682
3183
  };
2683
- React33__namespace.useEffect(() => {
3184
+ React34__namespace.useEffect(() => {
2684
3185
  const timer = setTimeout(() => {
2685
3186
  if (editorType === "select") {
2686
3187
  selectRef.current?.focus();
@@ -2727,7 +3228,7 @@ function CellEditor({
2727
3228
  }
2728
3229
  );
2729
3230
  const renderDateEditor = () => {
2730
- const dateValue = React33__namespace.useMemo(() => {
3231
+ const dateValue = React34__namespace.useMemo(() => {
2731
3232
  if (!currentValue) return void 0;
2732
3233
  if (currentValue instanceof Date) return currentValue;
2733
3234
  if (typeof currentValue === "string") {
@@ -2915,7 +3416,7 @@ function useDataGridState(options) {
2915
3416
  data,
2916
3417
  getCellValue: getCellValue2
2917
3418
  } = options;
2918
- const isControlled = React33.useMemo(
3419
+ const isControlled = React34.useMemo(
2919
3420
  () => ({
2920
3421
  sorting: controlledSorting !== void 0,
2921
3422
  filters: controlledFilters !== void 0,
@@ -2929,15 +3430,15 @@ function useDataGridState(options) {
2929
3430
  controlledFocusedCell
2930
3431
  ]
2931
3432
  );
2932
- const [internalSorting, setInternalSorting] = React33.useState(defaultSorting);
2933
- const [internalFilters, setInternalFilters] = React33.useState(defaultFilters);
2934
- const [internalColumnWidths, setInternalColumnWidths] = React33.useState(defaultColumnWidths);
2935
- const [internalFocusedCell, setInternalFocusedCell] = React33.useState(null);
2936
- const [editingCell, setEditingCell] = React33.useState(null);
3433
+ const [internalSorting, setInternalSorting] = React34.useState(defaultSorting);
3434
+ const [internalFilters, setInternalFilters] = React34.useState(defaultFilters);
3435
+ const [internalColumnWidths, setInternalColumnWidths] = React34.useState(defaultColumnWidths);
3436
+ const [internalFocusedCell, setInternalFocusedCell] = React34.useState(null);
3437
+ const [editingCell, setEditingCell] = React34.useState(null);
2937
3438
  const sorting = isControlled.sorting ? controlledSorting : internalSorting;
2938
3439
  const filters = isControlled.filters ? controlledFilters : internalFilters;
2939
3440
  const focusedCell = isControlled.focusedCell ? controlledFocusedCell : internalFocusedCell;
2940
- const columnWidths = React33.useMemo(() => {
3441
+ const columnWidths = React34.useMemo(() => {
2941
3442
  const controlled = isControlled.columnWidths ? controlledColumnWidths : internalColumnWidths;
2942
3443
  const result = {};
2943
3444
  for (const column of columns) {
@@ -2945,8 +3446,8 @@ function useDataGridState(options) {
2945
3446
  }
2946
3447
  return result;
2947
3448
  }, [isControlled.columnWidths, controlledColumnWidths, internalColumnWidths, columns]);
2948
- const prevStateRef = React33.useRef(null);
2949
- const state = React33.useMemo(
3449
+ const prevStateRef = React34.useRef(null);
3450
+ const state = React34.useMemo(
2950
3451
  () => ({
2951
3452
  sorting,
2952
3453
  filters,
@@ -2956,7 +3457,7 @@ function useDataGridState(options) {
2956
3457
  }),
2957
3458
  [sorting, filters, columnWidths, focusedCell, editingCell]
2958
3459
  );
2959
- React33.useEffect(() => {
3460
+ React34.useEffect(() => {
2960
3461
  if (onStateChange) {
2961
3462
  const currentState = {
2962
3463
  sorting,
@@ -2971,7 +3472,7 @@ function useDataGridState(options) {
2971
3472
  }
2972
3473
  }
2973
3474
  }, [sorting, filters, columnWidths, focusedCell, editingCell, onStateChange]);
2974
- const setSorting = React33.useCallback(
3475
+ const setSorting = React34.useCallback(
2975
3476
  (newSorting) => {
2976
3477
  if (isControlled.sorting) {
2977
3478
  onSortChange?.(newSorting);
@@ -2982,7 +3483,7 @@ function useDataGridState(options) {
2982
3483
  },
2983
3484
  [isControlled.sorting, onSortChange]
2984
3485
  );
2985
- const toggleSort = React33.useCallback(
3486
+ const toggleSort = React34.useCallback(
2986
3487
  (columnKey) => {
2987
3488
  const currentSort = sorting.find((s) => s.field === columnKey);
2988
3489
  let newSorting;
@@ -2997,7 +3498,7 @@ function useDataGridState(options) {
2997
3498
  },
2998
3499
  [sorting, setSorting]
2999
3500
  );
3000
- const setFilters = React33.useCallback(
3501
+ const setFilters = React34.useCallback(
3001
3502
  (newFilters) => {
3002
3503
  if (isControlled.filters) {
3003
3504
  onFilterChange?.(newFilters);
@@ -3008,7 +3509,7 @@ function useDataGridState(options) {
3008
3509
  },
3009
3510
  [isControlled.filters, onFilterChange]
3010
3511
  );
3011
- const setFilter = React33.useCallback(
3512
+ const setFilter = React34.useCallback(
3012
3513
  (filter, columnKey) => {
3013
3514
  const newFilters = filters.filter((f) => f.columnKey !== columnKey);
3014
3515
  if (filter) {
@@ -3018,10 +3519,10 @@ function useDataGridState(options) {
3018
3519
  },
3019
3520
  [filters, setFilters]
3020
3521
  );
3021
- const clearFilters = React33.useCallback(() => {
3522
+ const clearFilters = React34.useCallback(() => {
3022
3523
  setFilters([]);
3023
3524
  }, [setFilters]);
3024
- const setColumnWidth = React33.useCallback(
3525
+ const setColumnWidth = React34.useCallback(
3025
3526
  (columnKey, width) => {
3026
3527
  if (isControlled.columnWidths) {
3027
3528
  onColumnResize?.(columnKey, width);
@@ -3035,7 +3536,7 @@ function useDataGridState(options) {
3035
3536
  },
3036
3537
  [isControlled.columnWidths, onColumnResize]
3037
3538
  );
3038
- const setFocusedCell = React33.useCallback(
3539
+ const setFocusedCell = React34.useCallback(
3039
3540
  (cell) => {
3040
3541
  if (isControlled.focusedCell) {
3041
3542
  onFocusedCellChange?.(cell);
@@ -3046,7 +3547,7 @@ function useDataGridState(options) {
3046
3547
  },
3047
3548
  [isControlled.focusedCell, onFocusedCellChange]
3048
3549
  );
3049
- const startEditing = React33.useCallback(
3550
+ const startEditing = React34.useCallback(
3050
3551
  (rowIndex, columnKey) => {
3051
3552
  if (onCellEditStart) {
3052
3553
  const allowed = onCellEditStart(rowIndex, columnKey);
@@ -3067,10 +3568,10 @@ function useDataGridState(options) {
3067
3568
  },
3068
3569
  [columns, data, getCellValue2, onCellEditStart, setFocusedCell]
3069
3570
  );
3070
- const updateEditingValue = React33.useCallback((value) => {
3571
+ const updateEditingValue = React34.useCallback((value) => {
3071
3572
  setEditingCell((prev) => prev ? { ...prev, value } : null);
3072
3573
  }, []);
3073
- const commitEdit = React33.useCallback((valueOverride) => {
3574
+ const commitEdit = React34.useCallback((valueOverride) => {
3074
3575
  if (!editingCell) return;
3075
3576
  const { rowIndex, columnKey, originalValue } = editingCell;
3076
3577
  const value = valueOverride !== void 0 ? valueOverride : editingCell.value;
@@ -3087,7 +3588,7 @@ function useDataGridState(options) {
3087
3588
  }
3088
3589
  setEditingCell(null);
3089
3590
  }, [editingCell, columns, data, onCellEdit]);
3090
- const cancelEdit = React33.useCallback(() => {
3591
+ const cancelEdit = React34.useCallback(() => {
3091
3592
  if (editingCell) {
3092
3593
  onCellEditCancel?.(editingCell.rowIndex, editingCell.columnKey);
3093
3594
  }
@@ -3129,22 +3630,22 @@ function useKeyboardNavigation(options) {
3129
3630
  onScrollToRow,
3130
3631
  onScrollToColumn
3131
3632
  } = options;
3132
- const containerRef = React33.useRef(null);
3633
+ const containerRef = React34.useRef(null);
3133
3634
  const visibleColumns = getVisibleColumns(columns);
3134
- const getColumnIndex = React33.useCallback(
3635
+ const getColumnIndex = React34.useCallback(
3135
3636
  (columnKey) => {
3136
3637
  return visibleColumns.findIndex((col) => col.key === columnKey);
3137
3638
  },
3138
3639
  [visibleColumns]
3139
3640
  );
3140
- const getColumnKey = React33.useCallback(
3641
+ const getColumnKey = React34.useCallback(
3141
3642
  (index) => {
3142
3643
  const column = visibleColumns[index];
3143
3644
  return column ? column.key : null;
3144
3645
  },
3145
3646
  [visibleColumns]
3146
3647
  );
3147
- const navigateToCell = React33.useCallback(
3648
+ const navigateToCell = React34.useCallback(
3148
3649
  (rowIndex, columnKey) => {
3149
3650
  const clampedRow = Math.max(0, Math.min(rowIndex, rowCount - 1));
3150
3651
  onFocusedCellChange({ rowIndex: clampedRow, columnKey });
@@ -3153,7 +3654,7 @@ function useKeyboardNavigation(options) {
3153
3654
  },
3154
3655
  [rowCount, onFocusedCellChange, onScrollToRow, onScrollToColumn]
3155
3656
  );
3156
- const moveFocus = React33.useCallback(
3657
+ const moveFocus = React34.useCallback(
3157
3658
  (rowDelta, colDelta) => {
3158
3659
  if (!focusedCell || visibleColumns.length === 0 || rowCount === 0) return;
3159
3660
  const currentColIndex = getColumnIndex(focusedCell.columnKey);
@@ -3193,35 +3694,35 @@ function useKeyboardNavigation(options) {
3193
3694
  navigateToCell
3194
3695
  ]
3195
3696
  );
3196
- const jumpToRowStart = React33.useCallback(() => {
3697
+ const jumpToRowStart = React34.useCallback(() => {
3197
3698
  if (!focusedCell || visibleColumns.length === 0) return;
3198
3699
  const firstColumnKey = getColumnKey(0);
3199
3700
  if (firstColumnKey) {
3200
3701
  navigateToCell(focusedCell.rowIndex, firstColumnKey);
3201
3702
  }
3202
3703
  }, [focusedCell, visibleColumns.length, getColumnKey, navigateToCell]);
3203
- const jumpToRowEnd = React33.useCallback(() => {
3704
+ const jumpToRowEnd = React34.useCallback(() => {
3204
3705
  if (!focusedCell || visibleColumns.length === 0) return;
3205
3706
  const lastColumnKey = getColumnKey(visibleColumns.length - 1);
3206
3707
  if (lastColumnKey) {
3207
3708
  navigateToCell(focusedCell.rowIndex, lastColumnKey);
3208
3709
  }
3209
3710
  }, [focusedCell, visibleColumns.length, getColumnKey, navigateToCell]);
3210
- const jumpToGridStart = React33.useCallback(() => {
3711
+ const jumpToGridStart = React34.useCallback(() => {
3211
3712
  if (visibleColumns.length === 0 || rowCount === 0) return;
3212
3713
  const firstColumnKey = getColumnKey(0);
3213
3714
  if (firstColumnKey) {
3214
3715
  navigateToCell(0, firstColumnKey);
3215
3716
  }
3216
3717
  }, [visibleColumns.length, rowCount, getColumnKey, navigateToCell]);
3217
- const jumpToGridEnd = React33.useCallback(() => {
3718
+ const jumpToGridEnd = React34.useCallback(() => {
3218
3719
  if (visibleColumns.length === 0 || rowCount === 0) return;
3219
3720
  const lastColumnKey = getColumnKey(visibleColumns.length - 1);
3220
3721
  if (lastColumnKey) {
3221
3722
  navigateToCell(rowCount - 1, lastColumnKey);
3222
3723
  }
3223
3724
  }, [visibleColumns.length, rowCount, getColumnKey, navigateToCell]);
3224
- const handleKeyDown = React33.useCallback(
3725
+ const handleKeyDown = React34.useCallback(
3225
3726
  (event) => {
3226
3727
  if (!enabled) return;
3227
3728
  const { key, ctrlKey, metaKey, shiftKey } = event;
@@ -3324,7 +3825,7 @@ function useKeyboardNavigation(options) {
3324
3825
  onFocusedCellChange
3325
3826
  ]
3326
3827
  );
3327
- const focusContainer = React33.useCallback(() => {
3828
+ const focusContainer = React34.useCallback(() => {
3328
3829
  containerRef.current?.focus();
3329
3830
  }, []);
3330
3831
  return {
@@ -3345,18 +3846,18 @@ function useColumnResize(options) {
3345
3846
  onResizeStart,
3346
3847
  onResizeEnd
3347
3848
  } = options;
3348
- const [isDragging, setIsDragging] = React33.useState(false);
3349
- const startXRef = React33.useRef(0);
3350
- const startWidthRef = React33.useRef(0);
3849
+ const [isDragging, setIsDragging] = React34.useState(false);
3850
+ const startXRef = React34.useRef(0);
3851
+ const startWidthRef = React34.useRef(0);
3351
3852
  const minWidth = column.minWidth ?? DEFAULT_MIN_WIDTH;
3352
3853
  const maxWidth = column.maxWidth ?? DEFAULT_MAX_WIDTH;
3353
- const clampWidth = React33.useCallback(
3854
+ const clampWidth = React34.useCallback(
3354
3855
  (width) => {
3355
3856
  return Math.max(minWidth, Math.min(maxWidth, width));
3356
3857
  },
3357
3858
  [minWidth, maxWidth]
3358
3859
  );
3359
- const handleMouseDown = React33.useCallback(
3860
+ const handleMouseDown = React34.useCallback(
3360
3861
  (event) => {
3361
3862
  if (!enabled) return;
3362
3863
  event.preventDefault();
@@ -3370,7 +3871,7 @@ function useColumnResize(options) {
3370
3871
  },
3371
3872
  [enabled, currentWidth, onResizeStart]
3372
3873
  );
3373
- const handleMouseMove = React33.useCallback(
3874
+ const handleMouseMove = React34.useCallback(
3374
3875
  (event) => {
3375
3876
  if (!isDragging) return;
3376
3877
  const deltaX = event.clientX - startXRef.current;
@@ -3379,7 +3880,7 @@ function useColumnResize(options) {
3379
3880
  },
3380
3881
  [isDragging, clampWidth, onResize]
3381
3882
  );
3382
- const handleMouseUp = React33.useCallback(() => {
3883
+ const handleMouseUp = React34.useCallback(() => {
3383
3884
  if (!isDragging) return;
3384
3885
  setIsDragging(false);
3385
3886
  document.body.style.userSelect = "";
@@ -3387,7 +3888,7 @@ function useColumnResize(options) {
3387
3888
  const finalWidth = clampWidth(currentWidth);
3388
3889
  onResizeEnd?.(finalWidth);
3389
3890
  }, [isDragging, currentWidth, clampWidth, onResizeEnd]);
3390
- const handleDoubleClick = React33.useCallback(
3891
+ const handleDoubleClick = React34.useCallback(
3391
3892
  (event) => {
3392
3893
  if (!enabled) return;
3393
3894
  event.preventDefault();
@@ -3399,7 +3900,7 @@ function useColumnResize(options) {
3399
3900
  },
3400
3901
  [enabled, column.width, clampWidth, onResize, onResizeEnd]
3401
3902
  );
3402
- React33.useEffect(() => {
3903
+ React34.useEffect(() => {
3403
3904
  if (isDragging) {
3404
3905
  window.addEventListener("mousemove", handleMouseMove);
3405
3906
  window.addEventListener("mouseup", handleMouseUp);
@@ -3409,7 +3910,7 @@ function useColumnResize(options) {
3409
3910
  };
3410
3911
  }
3411
3912
  }, [isDragging, handleMouseMove, handleMouseUp]);
3412
- React33.useEffect(() => {
3913
+ React34.useEffect(() => {
3413
3914
  return () => {
3414
3915
  if (isDragging) {
3415
3916
  document.body.style.userSelect = "";
@@ -3441,16 +3942,16 @@ function useColumnResizeManager(options) {
3441
3942
  onColumnResizeStart,
3442
3943
  onColumnResizeEnd
3443
3944
  } = options;
3444
- const [resizingColumn, setResizingColumn] = React33.useState(null);
3445
- const startXRef = React33.useRef(0);
3446
- const startWidthRef = React33.useRef(0);
3447
- const getColumn = React33.useCallback(
3945
+ const [resizingColumn, setResizingColumn] = React34.useState(null);
3946
+ const startXRef = React34.useRef(0);
3947
+ const startWidthRef = React34.useRef(0);
3948
+ const getColumn = React34.useCallback(
3448
3949
  (columnKey) => {
3449
3950
  return columns.find((c) => c.key === columnKey);
3450
3951
  },
3451
3952
  [columns]
3452
3953
  );
3453
- const clampWidth = React33.useCallback(
3954
+ const clampWidth = React34.useCallback(
3454
3955
  (columnKey, width) => {
3455
3956
  const column = getColumn(columnKey);
3456
3957
  const minWidth = column?.minWidth ?? DEFAULT_MIN_WIDTH;
@@ -3459,7 +3960,7 @@ function useColumnResizeManager(options) {
3459
3960
  },
3460
3961
  [getColumn]
3461
3962
  );
3462
- const handleMouseMove = React33.useCallback(
3963
+ const handleMouseMove = React34.useCallback(
3463
3964
  (event) => {
3464
3965
  if (!resizingColumn) return;
3465
3966
  const deltaX = event.clientX - startXRef.current;
@@ -3471,7 +3972,7 @@ function useColumnResizeManager(options) {
3471
3972
  },
3472
3973
  [resizingColumn, clampWidth, onColumnResize]
3473
3974
  );
3474
- const handleMouseUp = React33.useCallback(() => {
3975
+ const handleMouseUp = React34.useCallback(() => {
3475
3976
  if (!resizingColumn) return;
3476
3977
  const finalWidth = columnWidths[resizingColumn] ?? 200;
3477
3978
  setResizingColumn(null);
@@ -3479,7 +3980,7 @@ function useColumnResizeManager(options) {
3479
3980
  document.body.style.cursor = "";
3480
3981
  onColumnResizeEnd?.(resizingColumn, finalWidth);
3481
3982
  }, [resizingColumn, columnWidths, onColumnResizeEnd]);
3482
- React33.useEffect(() => {
3983
+ React34.useEffect(() => {
3483
3984
  if (resizingColumn) {
3484
3985
  window.addEventListener("mousemove", handleMouseMove);
3485
3986
  window.addEventListener("mouseup", handleMouseUp);
@@ -3489,7 +3990,7 @@ function useColumnResizeManager(options) {
3489
3990
  };
3490
3991
  }
3491
3992
  }, [resizingColumn, handleMouseMove, handleMouseUp]);
3492
- const getResizeProps = React33.useCallback(
3993
+ const getResizeProps = React34.useCallback(
3493
3994
  (columnKey) => {
3494
3995
  const column = getColumn(columnKey);
3495
3996
  const isResizable = resizableColumns && column?.resizable !== false;
@@ -3775,15 +4276,15 @@ function DataGrid({
3775
4276
  hasMore = false,
3776
4277
  loadingMore = false
3777
4278
  }) {
3778
- const parentRef = React33__namespace.useRef(null);
3779
- const headerRef = React33__namespace.useRef(null);
3780
- const [headerHeight, setHeaderHeight] = React33__namespace.useState(40);
3781
- const [hoveredCell, setHoveredCell] = React33__namespace.useState(null);
3782
- const visibleColumns = React33__namespace.useMemo(
4279
+ const parentRef = React34__namespace.useRef(null);
4280
+ const headerRef = React34__namespace.useRef(null);
4281
+ const [headerHeight, setHeaderHeight] = React34__namespace.useState(40);
4282
+ const [hoveredCell, setHoveredCell] = React34__namespace.useState(null);
4283
+ const visibleColumns = React34__namespace.useMemo(
3783
4284
  () => columns.filter((col) => !col.hidden),
3784
4285
  [columns]
3785
4286
  );
3786
- const getCellValue2 = React33__namespace.useCallback(
4287
+ const getCellValue2 = React34__namespace.useCallback(
3787
4288
  (row, column) => {
3788
4289
  if (column.accessor) {
3789
4290
  return column.accessor(row);
@@ -3812,7 +4313,7 @@ function DataGrid({
3812
4313
  data,
3813
4314
  getCellValue: getCellValue2
3814
4315
  });
3815
- const processedData = React33__namespace.useMemo(() => {
4316
+ const processedData = React34__namespace.useMemo(() => {
3816
4317
  let result = data;
3817
4318
  if (enableInternalFiltering && !isControlled.filters && state.filters.length > 0) {
3818
4319
  result = applyFilters(result, state.filters, visibleColumns);
@@ -3840,7 +4341,7 @@ function DataGrid({
3840
4341
  onColumnResizeEnd
3841
4342
  });
3842
4343
  const shouldVirtualize = virtualized ?? processedData.length > 100;
3843
- React33__namespace.useLayoutEffect(() => {
4344
+ React34__namespace.useLayoutEffect(() => {
3844
4345
  if (headerRef.current && shouldVirtualize) {
3845
4346
  setHeaderHeight(headerRef.current.offsetHeight);
3846
4347
  }
@@ -3852,13 +4353,13 @@ function DataGrid({
3852
4353
  overscan: DEFAULT_OVERSCAN,
3853
4354
  enabled: shouldVirtualize
3854
4355
  });
3855
- const tableWidth = React33__namespace.useMemo(() => {
4356
+ const tableWidth = React34__namespace.useMemo(() => {
3856
4357
  return visibleColumns.reduce((acc, col) => {
3857
4358
  const width = state.columnWidths[col.key] || col.width || estimateColumnWidth(col);
3858
4359
  return acc + width;
3859
4360
  }, 0);
3860
4361
  }, [visibleColumns, state.columnWidths]);
3861
- const visibleRowCount = React33__namespace.useMemo(() => {
4362
+ const visibleRowCount = React34__namespace.useMemo(() => {
3862
4363
  if (!parentRef.current) return 10;
3863
4364
  return Math.floor(parentRef.current.clientHeight / DEFAULT_ROW_HEIGHT);
3864
4365
  }, []);
@@ -3877,7 +4378,7 @@ function DataGrid({
3877
4378
  rowVirtualizer.scrollToIndex(rowIndex, { align: "auto" });
3878
4379
  }
3879
4380
  });
3880
- const handleBlur = React33__namespace.useCallback(
4381
+ const handleBlur = React34__namespace.useCallback(
3881
4382
  (event) => {
3882
4383
  const target = event.target;
3883
4384
  const relatedTarget = event.relatedTarget;
@@ -3935,7 +4436,7 @@ function DataGrid({
3935
4436
  },
3936
4437
  [state.editingCell, actions]
3937
4438
  );
3938
- React33__namespace.useEffect(() => {
4439
+ React34__namespace.useEffect(() => {
3939
4440
  if (!infiniteScroll || !hasMore || loadingMore || !parentRef.current) return;
3940
4441
  const observer = new IntersectionObserver(
3941
4442
  (entries) => {
@@ -4379,7 +4880,7 @@ function DataGrid({
4379
4880
  );
4380
4881
  }
4381
4882
  function PaginationFooter({ pagination }) {
4382
- const [goToPage, setGoToPage] = React33__namespace.useState("");
4883
+ const [goToPage, setGoToPage] = React34__namespace.useState("");
4383
4884
  const handleGoToPage = () => {
4384
4885
  const page = parseInt(goToPage, 10);
4385
4886
  if (!isNaN(page) && page >= 1 && page <= pagination.totalPages) {
@@ -4497,21 +4998,21 @@ function Autocomplete({
4497
4998
  className,
4498
4999
  clearable = false
4499
5000
  }) {
4500
- const [open, setOpen] = React33__namespace.useState(false);
4501
- const [search, setSearch] = React33__namespace.useState("");
4502
- const inputRef = React33__namespace.useRef(null);
4503
- const selectedOption = React33__namespace.useMemo(
5001
+ const [open, setOpen] = React34__namespace.useState(false);
5002
+ const [search, setSearch] = React34__namespace.useState("");
5003
+ const inputRef = React34__namespace.useRef(null);
5004
+ const selectedOption = React34__namespace.useMemo(
4504
5005
  () => options.find((opt) => opt.value === value),
4505
5006
  [options, value]
4506
5007
  );
4507
- const filteredOptions = React33__namespace.useMemo(() => {
5008
+ const filteredOptions = React34__namespace.useMemo(() => {
4508
5009
  if (!search.trim()) return options;
4509
5010
  const searchLower = search.toLowerCase();
4510
5011
  return options.filter(
4511
5012
  (opt) => opt.label.toLowerCase().includes(searchLower) || opt.description?.toLowerCase().includes(searchLower)
4512
5013
  );
4513
5014
  }, [options, search]);
4514
- const groupedOptions = React33__namespace.useMemo(() => {
5015
+ const groupedOptions = React34__namespace.useMemo(() => {
4515
5016
  const groups = {};
4516
5017
  const ungrouped = [];
4517
5018
  filteredOptions.forEach((opt) => {
@@ -4525,7 +5026,7 @@ function Autocomplete({
4525
5026
  return { groups, ungrouped };
4526
5027
  }, [filteredOptions]);
4527
5028
  const hasGroups = Object.keys(groupedOptions.groups).length > 0;
4528
- const handleSelect = React33__namespace.useCallback(
5029
+ const handleSelect = React34__namespace.useCallback(
4529
5030
  (optionValue) => {
4530
5031
  onChange?.(optionValue);
4531
5032
  setOpen(false);
@@ -4533,7 +5034,7 @@ function Autocomplete({
4533
5034
  },
4534
5035
  [onChange]
4535
5036
  );
4536
- const handleClear = React33__namespace.useCallback(
5037
+ const handleClear = React34__namespace.useCallback(
4537
5038
  (e) => {
4538
5039
  e.stopPropagation();
4539
5040
  onChange?.(void 0);
@@ -4541,7 +5042,7 @@ function Autocomplete({
4541
5042
  },
4542
5043
  [onChange]
4543
5044
  );
4544
- React33__namespace.useEffect(() => {
5045
+ React34__namespace.useEffect(() => {
4545
5046
  if (open) {
4546
5047
  const timeout = setTimeout(() => {
4547
5048
  inputRef.current?.focus();
@@ -4551,7 +5052,7 @@ function Autocomplete({
4551
5052
  setSearch("");
4552
5053
  }
4553
5054
  }, [open]);
4554
- const handleKeyDown = React33__namespace.useCallback((e) => {
5055
+ const handleKeyDown = React34__namespace.useCallback((e) => {
4555
5056
  if (e.key === "Escape") {
4556
5057
  setOpen(false);
4557
5058
  }
@@ -4727,7 +5228,7 @@ var iconButtonVariants = classVarianceAuthority.cva(
4727
5228
  }
4728
5229
  }
4729
5230
  );
4730
- var IconButton = React33__namespace.forwardRef(
5231
+ var IconButton = React34__namespace.forwardRef(
4731
5232
  ({ className, variant, size, isActive = false, icon, children, ...props }, ref) => {
4732
5233
  return /* @__PURE__ */ jsxRuntime.jsx(
4733
5234
  "button",
@@ -4751,7 +5252,7 @@ var IconButton = React33__namespace.forwardRef(
4751
5252
  );
4752
5253
  IconButton.displayName = "IconButton";
4753
5254
  function CopyButton({ content, className, size = "md" }) {
4754
- const [copied, setCopied] = React33__namespace.useState(false);
5255
+ const [copied, setCopied] = React34__namespace.useState(false);
4755
5256
  const handleCopy = async () => {
4756
5257
  try {
4757
5258
  await navigator.clipboard.writeText(content);
@@ -5524,11 +6025,11 @@ function ThemePicker({
5524
6025
  align = "end",
5525
6026
  side = "bottom"
5526
6027
  }) {
5527
- const [open, setOpen] = React33__namespace.useState(false);
5528
- const [selectedTheme, setSelectedTheme] = React33__namespace.useState(
6028
+ const [open, setOpen] = React34__namespace.useState(false);
6029
+ const [selectedTheme, setSelectedTheme] = React34__namespace.useState(
5529
6030
  value || themes[0]
5530
6031
  );
5531
- React33__namespace.useEffect(() => {
6032
+ React34__namespace.useEffect(() => {
5532
6033
  if (value) {
5533
6034
  setSelectedTheme(value);
5534
6035
  }
@@ -5638,19 +6139,19 @@ function getSafePosition(x, y, menuWidth, menuHeight) {
5638
6139
  return { x: safeX, y: safeY };
5639
6140
  }
5640
6141
  function MenuItem({ item, onClose, depth = 0 }) {
5641
- const [isSubmenuOpen, setIsSubmenuOpen] = React33__namespace.useState(false);
5642
- const [submenuPosition, setSubmenuPosition] = React33__namespace.useState(null);
5643
- const itemRef = React33__namespace.useRef(null);
5644
- const hoverTimeoutRef = React33__namespace.useRef(null);
6142
+ const [isSubmenuOpen, setIsSubmenuOpen] = React34__namespace.useState(false);
6143
+ const [submenuPosition, setSubmenuPosition] = React34__namespace.useState(null);
6144
+ const itemRef = React34__namespace.useRef(null);
6145
+ const hoverTimeoutRef = React34__namespace.useRef(null);
5645
6146
  const hasSubmenu = item.submenu && item.submenu.length > 0;
5646
- React33__namespace.useEffect(() => {
6147
+ React34__namespace.useEffect(() => {
5647
6148
  return () => {
5648
6149
  if (hoverTimeoutRef.current) {
5649
6150
  clearTimeout(hoverTimeoutRef.current);
5650
6151
  }
5651
6152
  };
5652
6153
  }, []);
5653
- const handleMouseEnter = React33__namespace.useCallback(() => {
6154
+ const handleMouseEnter = React34__namespace.useCallback(() => {
5654
6155
  if (hoverTimeoutRef.current) {
5655
6156
  clearTimeout(hoverTimeoutRef.current);
5656
6157
  }
@@ -5670,22 +6171,22 @@ function MenuItem({ item, onClose, depth = 0 }) {
5670
6171
  setIsSubmenuOpen(true);
5671
6172
  }
5672
6173
  }, [hasSubmenu, item.submenu?.length]);
5673
- const handleMouseLeave = React33__namespace.useCallback(() => {
6174
+ const handleMouseLeave = React34__namespace.useCallback(() => {
5674
6175
  hoverTimeoutRef.current = setTimeout(() => {
5675
6176
  setIsSubmenuOpen(false);
5676
6177
  }, 100);
5677
6178
  }, []);
5678
- const handleSubmenuMouseEnter = React33__namespace.useCallback(() => {
6179
+ const handleSubmenuMouseEnter = React34__namespace.useCallback(() => {
5679
6180
  if (hoverTimeoutRef.current) {
5680
6181
  clearTimeout(hoverTimeoutRef.current);
5681
6182
  }
5682
6183
  }, []);
5683
- const handleSubmenuMouseLeave = React33__namespace.useCallback(() => {
6184
+ const handleSubmenuMouseLeave = React34__namespace.useCallback(() => {
5684
6185
  hoverTimeoutRef.current = setTimeout(() => {
5685
6186
  setIsSubmenuOpen(false);
5686
6187
  }, 100);
5687
6188
  }, []);
5688
- const handleClick = React33__namespace.useCallback(() => {
6189
+ const handleClick = React34__namespace.useCallback(() => {
5689
6190
  if (item.disabled) return;
5690
6191
  if (!hasSubmenu && item.action) {
5691
6192
  item.action();
@@ -5765,12 +6266,12 @@ function ContextMenu({
5765
6266
  anchorEl,
5766
6267
  className
5767
6268
  }) {
5768
- const menuRef = React33__namespace.useRef(null);
5769
- const [menuPosition, setMenuPosition] = React33__namespace.useState({
6269
+ const menuRef = React34__namespace.useRef(null);
6270
+ const [menuPosition, setMenuPosition] = React34__namespace.useState({
5770
6271
  x: 0,
5771
6272
  y: 0
5772
6273
  });
5773
- React33__namespace.useEffect(() => {
6274
+ React34__namespace.useEffect(() => {
5774
6275
  if (!isOpen) return;
5775
6276
  let x = position.x;
5776
6277
  let y = position.y;
@@ -5789,7 +6290,7 @@ function ContextMenu({
5789
6290
  }
5790
6291
  });
5791
6292
  }, [isOpen, position, anchorEl]);
5792
- React33__namespace.useEffect(() => {
6293
+ React34__namespace.useEffect(() => {
5793
6294
  if (!isOpen) return;
5794
6295
  const handleClickOutside = (e) => {
5795
6296
  if (menuRef.current && !menuRef.current.contains(e.target)) {
@@ -5833,16 +6334,16 @@ function ContextMenu({
5833
6334
  );
5834
6335
  }
5835
6336
  function useContextMenu() {
5836
- const [isOpen, setIsOpen] = React33__namespace.useState(false);
5837
- const [position, setPosition] = React33__namespace.useState({ x: 0, y: 0 });
5838
- const [targetItem, setTargetItem] = React33__namespace.useState(null);
5839
- const menuRef = React33__namespace.useRef(null);
5840
- const openMenu = React33__namespace.useCallback((x, y, item) => {
6337
+ const [isOpen, setIsOpen] = React34__namespace.useState(false);
6338
+ const [position, setPosition] = React34__namespace.useState({ x: 0, y: 0 });
6339
+ const [targetItem, setTargetItem] = React34__namespace.useState(null);
6340
+ const menuRef = React34__namespace.useRef(null);
6341
+ const openMenu = React34__namespace.useCallback((x, y, item) => {
5841
6342
  setPosition({ x, y });
5842
6343
  setTargetItem(item);
5843
6344
  setIsOpen(true);
5844
6345
  }, []);
5845
- const closeMenu = React33__namespace.useCallback(() => {
6346
+ const closeMenu = React34__namespace.useCallback(() => {
5846
6347
  setIsOpen(false);
5847
6348
  setTargetItem(null);
5848
6349
  }, []);
@@ -5874,14 +6375,21 @@ exports.AlertDialogTitle = AlertDialogTitle;
5874
6375
  exports.AlertDialogTrigger = AlertDialogTrigger;
5875
6376
  exports.Autocomplete = Autocomplete;
5876
6377
  exports.Badge = Badge;
6378
+ exports.Board = Board;
6379
+ exports.BoardContent = BoardContent;
6380
+ exports.BoardHeader = BoardHeader;
5877
6381
  exports.Button = Button;
5878
6382
  exports.CYBERPUNK_THEME = CYBERPUNK_THEME;
5879
6383
  exports.Calendar = Calendar;
5880
6384
  exports.Card = Card;
6385
+ exports.CardActions = CardActions;
5881
6386
  exports.CardContent = CardContent;
5882
6387
  exports.CardDescription = CardDescription;
5883
6388
  exports.CardFooter = CardFooter;
6389
+ exports.CardGrid = CardGrid;
5884
6390
  exports.CardHeader = CardHeader;
6391
+ exports.CardImage = CardImage;
6392
+ exports.CardList = CardList;
5885
6393
  exports.CardTitle = CardTitle;
5886
6394
  exports.CellEditor = CellEditor;
5887
6395
  exports.Checkbox = Checkbox;
@@ -5943,6 +6451,7 @@ exports.SelectScrollUpButton = SelectScrollUpButton;
5943
6451
  exports.SelectSeparator = SelectSeparator;
5944
6452
  exports.SelectTrigger = SelectTrigger;
5945
6453
  exports.SelectValue = SelectValue;
6454
+ exports.SelectableCard = SelectableCard;
5946
6455
  exports.Separator = Separator;
5947
6456
  exports.Skeleton = Skeleton;
5948
6457
  exports.Switch = Switch;
@@ -5977,7 +6486,13 @@ exports.applySorting = applySorting;
5977
6486
  exports.applyTheme = applyTheme;
5978
6487
  exports.areThemesEqual = areThemesEqual;
5979
6488
  exports.badgeVariants = badgeVariants;
6489
+ exports.boardVariants = boardVariants;
5980
6490
  exports.buttonVariants = buttonVariants;
6491
+ exports.cardActionsVariants = cardActionsVariants;
6492
+ exports.cardGridVariants = cardGridVariants;
6493
+ exports.cardImageVariants = cardImageVariants;
6494
+ exports.cardListVariants = cardListVariants;
6495
+ exports.cardVariants = cardVariants;
5981
6496
  exports.cloneTheme = cloneTheme;
5982
6497
  exports.cn = cn;
5983
6498
  exports.exportTheme = exportTheme;