@ai-matrx/design-system 0.10.1 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -62,7 +62,6 @@ __export(src_exports, {
62
62
  BottomSheetFooter: () => BottomSheetFooter,
63
63
  BottomSheetHeader: () => BottomSheetHeader,
64
64
  Button: () => Button,
65
- CENTERED_DIALOG: () => CENTERED_DIALOG,
66
65
  Card: () => Card,
67
66
  CardAction: () => CardAction,
68
67
  CardContent: () => CardContent,
@@ -83,6 +82,8 @@ __export(src_exports, {
83
82
  CommandList: () => CommandList,
84
83
  CommandSeparator: () => CommandSeparator,
85
84
  CommandShortcut: () => CommandShortcut,
85
+ ConfirmDialog: () => ConfirmDialog,
86
+ ConfirmDialogHost: () => ConfirmDialogHost,
86
87
  ContextMenu: () => ContextMenu,
87
88
  ContextMenuCheckboxItem: () => ContextMenuCheckboxItem,
88
89
  ContextMenuContent: () => ContextMenuContent,
@@ -156,7 +157,6 @@ __export(src_exports, {
156
157
  MOTION_SHEET: () => MOTION_SHEET,
157
158
  MOTION_SPIN: () => MOTION_SPIN,
158
159
  OverflowToolbar: () => OverflowToolbar,
159
- POPPER_OFFSET: () => POPPER_OFFSET,
160
160
  Popover: () => Popover,
161
161
  PopoverAnchor: () => PopoverAnchor,
162
162
  PopoverContent: () => PopoverContent,
@@ -952,8 +952,6 @@ Button.displayName = "Button";
952
952
  // src/motion.ts
953
953
  var MOTION_OVERLAY = "matrx-motion-overlay";
954
954
  var MOTION_DIALOG = "matrx-motion-dialog";
955
- var CENTERED_DIALOG = "matrx-dialog-centered";
956
- var POPPER_OFFSET = "matrx-popper-offset";
957
955
  var MOTION_BOTTOM_SHEET = "matrx-motion-bottom-sheet";
958
956
  var MOTION_POPPER = "matrx-motion-popper";
959
957
  var MOTION_SHEET = {
@@ -1058,7 +1056,7 @@ var AlertDialogContent = React7.forwardRef(({ className, children, container, an
1058
1056
  ref,
1059
1057
  "data-slot": "alert-dialog-content",
1060
1058
  className: cn(
1061
- `fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg ${CENTERED_DIALOG} gap-4 border bg-background p-6 shadow-lg`,
1059
+ "fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg",
1062
1060
  // Ruling 3 — never taller than the viewport, always scrollable, and
1063
1061
  // the footer stays reachable via --dialog-pad like Dialog's.
1064
1062
  "max-h-[85dvh] overflow-y-auto overscroll-contain [--dialog-pad:1.5rem] overflow-x-clip [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full",
@@ -1399,7 +1397,7 @@ var Command = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__
1399
1397
  }
1400
1398
  ));
1401
1399
  Command.displayName = import_cmdk.Command.displayName;
1402
- var DIALOG_DESKTOP_CLASSES = `fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg ${CENTERED_DIALOG} gap-4 overflow-x-clip border bg-background p-6 shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full sm:rounded-lg`;
1400
+ var DIALOG_DESKTOP_CLASSES = "fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 overflow-x-clip border bg-background p-6 shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full sm:rounded-lg";
1403
1401
  var DIALOG_MOBILE_SHEET_CLASSES = "fixed inset-x-0 bottom-0 left-0 right-0 top-auto z-[10000] flex min-w-0 flex-col w-full max-w-full max-h-[90dvh] translate-x-0 translate-y-0 gap-4 overflow-x-clip border-t bg-background p-4 pb-safe shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full rounded-t-2xl rounded-b-none overflow-y-auto overscroll-contain";
1404
1402
  var DIALOG_MOBILE_SHEET_OVERRIDE = "inset-x-0 bottom-0 left-0 right-0 top-auto translate-x-0 translate-y-0 w-full max-w-full max-h-[90dvh] rounded-b-none rounded-t-2xl overflow-y-auto";
1405
1403
  var CommandDialogContent = React13.forwardRef(({ className, children, container, ...props }, ref) => {
@@ -1543,10 +1541,119 @@ var CommandShortcut = ({
1543
1541
  };
1544
1542
  CommandShortcut.displayName = "CommandShortcut";
1545
1543
 
1544
+ // src/confirm-dialog.tsx
1545
+ var import_jsx_runtime16 = require("react/jsx-runtime");
1546
+ function ConfirmDialog({
1547
+ open,
1548
+ onOpenChange,
1549
+ title,
1550
+ description,
1551
+ content,
1552
+ contentClassName,
1553
+ confirmLabel = "Confirm",
1554
+ cancelLabel = "Cancel",
1555
+ variant = "default",
1556
+ busy = false,
1557
+ confirmDisabled = false,
1558
+ portalContainer,
1559
+ onConfirm
1560
+ }) {
1561
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertDialog, { open, onOpenChange, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1562
+ AlertDialogContent,
1563
+ {
1564
+ className: contentClassName,
1565
+ ...portalContainer === void 0 ? {} : { container: portalContainer },
1566
+ children: [
1567
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(AlertDialogHeader, { children: [
1568
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertDialogTitle, { children: title }),
1569
+ description ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertDialogDescription, { children: description }) : null
1570
+ ] }),
1571
+ content ?? null,
1572
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(AlertDialogFooter, { children: [
1573
+ cancelLabel === null ? null : /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(AlertDialogCancel, { className: "max-lg:min-h-11", disabled: busy, children: cancelLabel }),
1574
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1575
+ AlertDialogAction,
1576
+ {
1577
+ disabled: busy || confirmDisabled,
1578
+ onClick: (event) => {
1579
+ event.preventDefault();
1580
+ void onConfirm();
1581
+ },
1582
+ className: cn(
1583
+ "max-lg:min-h-11",
1584
+ // One source of button appearance: the destructive look comes
1585
+ // from `buttonVariants`, not a second hand-written copy of it.
1586
+ // tailwind-merge makes it WIN over the default variant classes.
1587
+ variant === "destructive" && buttonVariants({ variant: "destructive" })
1588
+ ),
1589
+ children: [
1590
+ busy ? /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(Loader2Icon, { className: cn("mr-2 h-4 w-4", MOTION_SPIN) }) : null,
1591
+ confirmLabel
1592
+ ]
1593
+ }
1594
+ )
1595
+ ] })
1596
+ ]
1597
+ }
1598
+ ) });
1599
+ }
1600
+
1601
+ // src/confirm-host.tsx
1602
+ var import_confirm_opener = require("@ai-matrx/kit/confirm-opener");
1603
+ var React14 = __toESM(require("react"), 1);
1604
+ var import_jsx_runtime17 = require("react/jsx-runtime");
1605
+ function ConfirmDialogHost() {
1606
+ const [active, setActive] = React14.useState(null);
1607
+ const [tick, setTick] = React14.useState(0);
1608
+ const queueRef = React14.useRef([]);
1609
+ React14.useEffect(() => {
1610
+ const controller = {
1611
+ show: (opts, resolve) => {
1612
+ queueRef.current.push({ opts, resolve });
1613
+ setTick((n) => n + 1);
1614
+ }
1615
+ };
1616
+ (0, import_confirm_opener._registerHost)(controller);
1617
+ return () => (0, import_confirm_opener._unregisterHost)(controller);
1618
+ }, []);
1619
+ React14.useEffect(() => {
1620
+ if (active === null && queueRef.current.length > 0) {
1621
+ setActive(queueRef.current.shift());
1622
+ }
1623
+ }, [active, tick]);
1624
+ const handleConfirm = React14.useCallback(() => {
1625
+ if (!active) return;
1626
+ active.resolve(true);
1627
+ setActive(null);
1628
+ }, [active]);
1629
+ const handleOpenChange = React14.useCallback(
1630
+ (open) => {
1631
+ if (!open && active) {
1632
+ active.resolve(false);
1633
+ setActive(null);
1634
+ }
1635
+ },
1636
+ [active]
1637
+ );
1638
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1639
+ ConfirmDialog,
1640
+ {
1641
+ open: !!active,
1642
+ onOpenChange: handleOpenChange,
1643
+ title: active?.opts.title ?? "",
1644
+ description: active?.opts.description,
1645
+ confirmLabel: active?.opts.confirmLabel,
1646
+ cancelLabel: active?.opts.cancelLabel,
1647
+ variant: active?.opts.variant,
1648
+ onConfirm: handleConfirm
1649
+ }
1650
+ );
1651
+ }
1652
+
1546
1653
  // src/context-menu.tsx
1547
1654
  var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"), 1);
1548
- var React14 = __toESM(require("react"), 1);
1549
- var import_jsx_runtime16 = require("react/jsx-runtime");
1655
+ var React15 = __toESM(require("react"), 1);
1656
+ var import_jsx_runtime18 = require("react/jsx-runtime");
1550
1657
  var ContextMenu = ContextMenuPrimitive.Root;
1551
1658
  var ContextMenuTrigger = ContextMenuPrimitive.Trigger;
1552
1659
  var ContextMenuGroup = ContextMenuPrimitive.Group;
@@ -1556,7 +1663,7 @@ var ContextMenuRadioGroup = ContextMenuPrimitive.RadioGroup;
1556
1663
  var SURFACE_CLASS = "z-50 min-w-[8rem] max-h-[var(--radix-context-menu-content-available-height)] overflow-y-auto overflow-x-hidden overscroll-contain rounded-md border bg-popover p-1 text-popover-foreground";
1557
1664
  var ITEM_CLASS = "relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50";
1558
1665
  var INDICATOR_ITEM_CLASS = "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50";
1559
- var ContextMenuSubTrigger = React14.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1666
+ var ContextMenuSubTrigger = React15.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1560
1667
  ContextMenuPrimitive.SubTrigger,
1561
1668
  {
1562
1669
  ref,
@@ -1569,12 +1676,12 @@ var ContextMenuSubTrigger = React14.forwardRef(({ className, inset, children, ..
1569
1676
  ...props,
1570
1677
  children: [
1571
1678
  children,
1572
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
1679
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
1573
1680
  ]
1574
1681
  }
1575
1682
  ));
1576
1683
  ContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;
1577
- var ContextMenuSubContent = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1684
+ var ContextMenuSubContent = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1578
1685
  ContextMenuPrimitive.SubContent,
1579
1686
  {
1580
1687
  ref,
@@ -1584,9 +1691,9 @@ var ContextMenuSubContent = React14.forwardRef(({ className, ...props }, ref) =>
1584
1691
  }
1585
1692
  ));
1586
1693
  ContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;
1587
- var ContextMenuContent = React14.forwardRef(({ className, container, ...props }, ref) => {
1694
+ var ContextMenuContent = React15.forwardRef(({ className, container, ...props }, ref) => {
1588
1695
  const portalContainer = usePortalContainer(container);
1589
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1696
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1590
1697
  ContextMenuPrimitive.Content,
1591
1698
  {
1592
1699
  ref,
@@ -1597,7 +1704,7 @@ var ContextMenuContent = React14.forwardRef(({ className, container, ...props },
1597
1704
  ) });
1598
1705
  });
1599
1706
  ContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;
1600
- var ContextMenuItem = React14.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1707
+ var ContextMenuItem = React15.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1601
1708
  ContextMenuPrimitive.Item,
1602
1709
  {
1603
1710
  ref,
@@ -1612,7 +1719,7 @@ var ContextMenuItem = React14.forwardRef(({ className, inset, ...props }, ref) =
1612
1719
  }
1613
1720
  ));
1614
1721
  ContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;
1615
- var ContextMenuCheckboxItem = React14.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1722
+ var ContextMenuCheckboxItem = React15.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1616
1723
  ContextMenuPrimitive.CheckboxItem,
1617
1724
  {
1618
1725
  ref,
@@ -1620,13 +1727,13 @@ var ContextMenuCheckboxItem = React14.forwardRef(({ className, children, ...prop
1620
1727
  className: cn(INDICATOR_ITEM_CLASS, className),
1621
1728
  ...props,
1622
1729
  children: [
1623
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
1730
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
1624
1731
  children
1625
1732
  ]
1626
1733
  }
1627
1734
  ));
1628
1735
  ContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;
1629
- var ContextMenuRadioItem = React14.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1736
+ var ContextMenuRadioItem = React15.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1630
1737
  ContextMenuPrimitive.RadioItem,
1631
1738
  {
1632
1739
  ref,
@@ -1634,13 +1741,13 @@ var ContextMenuRadioItem = React14.forwardRef(({ className, children, ...props }
1634
1741
  className: cn(INDICATOR_ITEM_CLASS, className),
1635
1742
  ...props,
1636
1743
  children: [
1637
- /* @__PURE__ */ (0, import_jsx_runtime16.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
1744
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
1638
1745
  children
1639
1746
  ]
1640
1747
  }
1641
1748
  ));
1642
1749
  ContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;
1643
- var ContextMenuLabel = React14.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1750
+ var ContextMenuLabel = React15.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1644
1751
  ContextMenuPrimitive.Label,
1645
1752
  {
1646
1753
  ref,
@@ -1654,7 +1761,7 @@ var ContextMenuLabel = React14.forwardRef(({ className, inset, ...props }, ref)
1654
1761
  }
1655
1762
  ));
1656
1763
  ContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;
1657
- var ContextMenuSeparator = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1764
+ var ContextMenuSeparator = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1658
1765
  ContextMenuPrimitive.Separator,
1659
1766
  {
1660
1767
  ref,
@@ -1667,7 +1774,7 @@ ContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;
1667
1774
  var ContextMenuShortcut = ({
1668
1775
  className,
1669
1776
  ...props
1670
- }) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1777
+ }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1671
1778
  "span",
1672
1779
  {
1673
1780
  "data-slot": "context-menu-shortcut",
@@ -1682,12 +1789,12 @@ var import_react = require("react");
1682
1789
 
1683
1790
  // src/popover.tsx
1684
1791
  var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"), 1);
1685
- var React15 = __toESM(require("react"), 1);
1686
- var import_jsx_runtime17 = require("react/jsx-runtime");
1792
+ var React16 = __toESM(require("react"), 1);
1793
+ var import_jsx_runtime19 = require("react/jsx-runtime");
1687
1794
  var Popover = PopoverPrimitive.Root;
1688
1795
  var PopoverTrigger = PopoverPrimitive.Trigger;
1689
1796
  var PopoverAnchor = PopoverPrimitive.Anchor;
1690
- var PopoverContent = React15.forwardRef(
1797
+ var PopoverContent = React16.forwardRef(
1691
1798
  ({
1692
1799
  className,
1693
1800
  align = "center",
@@ -1697,7 +1804,7 @@ var PopoverContent = React15.forwardRef(
1697
1804
  ...props
1698
1805
  }, ref) => {
1699
1806
  const portalContainer = usePortalContainer(container);
1700
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PopoverPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1807
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(PopoverPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1701
1808
  PopoverPrimitive.Content,
1702
1809
  {
1703
1810
  ref,
@@ -1722,7 +1829,7 @@ var PopoverContent = React15.forwardRef(
1722
1829
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
1723
1830
 
1724
1831
  // src/creatable-picker.tsx
1725
- var import_jsx_runtime18 = require("react/jsx-runtime");
1832
+ var import_jsx_runtime20 = require("react/jsx-runtime");
1726
1833
  function article(noun) {
1727
1834
  return /^[aeiou]/i.test(noun.trim()) ? `an ${noun}` : `a ${noun}`;
1728
1835
  }
@@ -1797,8 +1904,8 @@ function CreatablePicker({
1797
1904
  setBusy(false);
1798
1905
  }
1799
1906
  };
1800
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(Popover, { open, onOpenChange: (next) => next ? setOpen(true) : close(), children: [
1801
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PopoverTrigger, { asChild: true, disabled, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1907
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(Popover, { open, onOpenChange: (next) => next ? setOpen(true) : close(), children: [
1908
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PopoverTrigger, { asChild: true, disabled, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1802
1909
  "button",
1803
1910
  {
1804
1911
  type: "button",
@@ -1812,12 +1919,12 @@ function CreatablePicker({
1812
1919
  triggerClassName
1813
1920
  ),
1814
1921
  children: [
1815
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 flex-1 truncate", children: selected ? renderSelected ?? selected.render ?? selected.label : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "text-muted-foreground", children: loading ? "Loading\u2026" : placeholder }) }),
1816
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ChevronsUpDownIcon, { className: "size-3.5 shrink-0 opacity-50" })
1922
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 flex-1 truncate", children: selected ? renderSelected ?? selected.render ?? selected.label : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "text-muted-foreground", children: loading ? "Loading\u2026" : placeholder }) }),
1923
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ChevronsUpDownIcon, { className: "size-3.5 shrink-0 opacity-50" })
1817
1924
  ]
1818
1925
  }
1819
1926
  ) }),
1820
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PopoverContent, { align: "start", className: "w-[--radix-popover-trigger-width] min-w-56 p-0", children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1927
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PopoverContent, { align: "start", className: "w-[--radix-popover-trigger-width] min-w-56 p-0", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1821
1928
  Command,
1822
1929
  {
1823
1930
  filter: (itemValue, search, keywords) => {
@@ -1825,7 +1932,7 @@ function CreatablePicker({
1825
1932
  return haystack.includes(search.toLowerCase()) ? 1 : 0;
1826
1933
  },
1827
1934
  children: [
1828
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1935
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1829
1936
  CommandInput,
1830
1937
  {
1831
1938
  ref: inputRef,
@@ -1837,13 +1944,13 @@ function CreatablePicker({
1837
1944
  placeholder: searchPlaceholder ?? `Search or add ${article(noun)}\u2026`
1838
1945
  }
1839
1946
  ),
1840
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(CommandList, { children: [
1841
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(CommandEmpty, { children: emptyLabel }),
1842
- groups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1947
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(CommandList, { children: [
1948
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CommandEmpty, { children: emptyLabel }),
1949
+ groups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1843
1950
  CommandGroup,
1844
1951
  {
1845
1952
  ...group.heading === void 0 ? {} : { heading: group.heading },
1846
- children: group.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1953
+ children: group.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1847
1954
  CommandItem,
1848
1955
  {
1849
1956
  value: option.label,
@@ -1854,7 +1961,7 @@ function CreatablePicker({
1854
1961
  },
1855
1962
  className: "gap-2 text-xs",
1856
1963
  children: [
1857
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1964
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
1858
1965
  LucideCheckIcon,
1859
1966
  {
1860
1967
  className: cn(
@@ -1863,8 +1970,8 @@ function CreatablePicker({
1863
1970
  )
1864
1971
  }
1865
1972
  ),
1866
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 flex-1 truncate", children: option.render ?? option.label }),
1867
- option.hint ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "shrink-0 text-[10px] text-muted-foreground", children: option.hint }) : null
1973
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 flex-1 truncate", children: option.render ?? option.label }),
1974
+ option.hint ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "shrink-0 text-[10px] text-muted-foreground", children: option.hint }) : null
1868
1975
  ]
1869
1976
  },
1870
1977
  option.value
@@ -1873,9 +1980,9 @@ function CreatablePicker({
1873
1980
  group.heading ?? "__ungrouped__"
1874
1981
  ))
1875
1982
  ] }),
1876
- canCreate ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-1 border-t border-border p-1", children: [
1877
- createExtra && typed && !exactMatch ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "px-1 pt-0.5", children: typeof createExtra === "function" ? createExtra(typed) : createExtra }) : null,
1878
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1983
+ canCreate ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "space-y-1 border-t border-border p-1", children: [
1984
+ createExtra && typed && !exactMatch ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("div", { className: "px-1 pt-0.5", children: typeof createExtra === "function" ? createExtra(typed) : createExtra }) : null,
1985
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1879
1986
  "button",
1880
1987
  {
1881
1988
  type: "button",
@@ -1883,22 +1990,22 @@ function CreatablePicker({
1883
1990
  onClick: () => void create(typed),
1884
1991
  className: "flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground disabled:opacity-50",
1885
1992
  children: [
1886
- busy ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Loader2Icon, { className: "size-3.5 shrink-0 matrx-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1887
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: typed && !exactMatch ? `Create \u201C${typed}\u201D` : `Add ${article(noun)}\u2026` })
1993
+ busy ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Loader2Icon, { className: "size-3.5 shrink-0 matrx-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1994
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 truncate", children: typed && !exactMatch ? `Create \u201C${typed}\u201D` : `Add ${article(noun)}\u2026` })
1888
1995
  ]
1889
1996
  }
1890
1997
  ),
1891
- needsName ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("p", { className: "px-2 pb-0.5 text-[11px] leading-snug text-muted-foreground", children: [
1998
+ needsName ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("p", { className: "px-2 pb-0.5 text-[11px] leading-snug text-muted-foreground", children: [
1892
1999
  "Type the name of the ",
1893
2000
  noun,
1894
2001
  " you want to add \u2014 then this creates it."
1895
2002
  ] }) : null
1896
2003
  ] }) : null,
1897
- footerActions?.length || manageAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-0.5 border-t border-border p-1", children: [
2004
+ footerActions?.length || manageAction ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "space-y-0.5 border-t border-border p-1", children: [
1898
2005
  footerActions?.map((action) => {
1899
2006
  const Icon2 = action.icon;
1900
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { children: [
1901
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2007
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { children: [
2008
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1902
2009
  "button",
1903
2010
  {
1904
2011
  type: "button",
@@ -1908,15 +2015,15 @@ function CreatablePicker({
1908
2015
  },
1909
2016
  className: "flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",
1910
2017
  children: [
1911
- Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon2, { className: "size-3.5 shrink-0" }) : null,
1912
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: action.label })
2018
+ Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Icon2, { className: "size-3.5 shrink-0" }) : null,
2019
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 truncate", children: action.label })
1913
2020
  ]
1914
2021
  }
1915
2022
  ),
1916
- action.note ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("p", { className: "px-2 pb-1 text-[10px] leading-snug text-muted-foreground", children: action.note }) : null
2023
+ action.note ? /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("p", { className: "px-2 pb-1 text-[10px] leading-snug text-muted-foreground", children: action.note }) : null
1917
2024
  ] }, action.label);
1918
2025
  }),
1919
- manageAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2026
+ manageAction ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1920
2027
  "a",
1921
2028
  {
1922
2029
  href: manageAction.href,
@@ -1925,18 +2032,18 @@ function CreatablePicker({
1925
2032
  onClick: close,
1926
2033
  className: "flex w-full items-center gap-2 rounded-sm px-2 py-1.5 text-left text-xs text-muted-foreground transition-colors hover:bg-accent hover:text-foreground",
1927
2034
  children: [
1928
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ExternalLinkIcon, { className: "size-3.5 shrink-0" }),
1929
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: manageAction.label })
2035
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(ExternalLinkIcon, { className: "size-3.5 shrink-0" }),
2036
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 truncate", children: manageAction.label })
1930
2037
  ]
1931
2038
  }
1932
2039
  ) : null
1933
2040
  ] }) : null,
1934
- lockedNote ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-1 border-t border-border p-2", children: [
1935
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("p", { className: "flex gap-1.5 text-[11px] leading-snug text-muted-foreground", children: [
1936
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(LockIcon, { className: "mt-px size-3 shrink-0" }),
1937
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { children: lockedNote })
2041
+ lockedNote ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("div", { className: "space-y-1 border-t border-border p-2", children: [
2042
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("p", { className: "flex gap-1.5 text-[11px] leading-snug text-muted-foreground", children: [
2043
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(LockIcon, { className: "mt-px size-3 shrink-0" }),
2044
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { children: lockedNote })
1938
2045
  ] }),
1939
- lockedAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2046
+ lockedAction ? /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
1940
2047
  "button",
1941
2048
  {
1942
2049
  type: "button",
@@ -1946,8 +2053,8 @@ function CreatablePicker({
1946
2053
  },
1947
2054
  className: "flex w-full items-center gap-2 rounded-sm px-1 py-1 text-left text-xs font-medium text-primary transition-colors hover:bg-accent",
1948
2055
  children: [
1949
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1950
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: lockedAction.label })
2056
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
2057
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "min-w-0 truncate", children: lockedAction.label })
1951
2058
  ]
1952
2059
  }
1953
2060
  ) : null
@@ -1962,14 +2069,14 @@ function CreatablePicker({
1962
2069
  var DialogPrimitive2 = __toESM(require("@radix-ui/react-dialog"), 1);
1963
2070
  var VisuallyHidden2 = __toESM(require("@radix-ui/react-visually-hidden"), 1);
1964
2071
  var import_react_tree3 = require("@ai-matrx/kit/react-tree");
1965
- var React16 = __toESM(require("react"), 1);
1966
- var import_jsx_runtime19 = require("react/jsx-runtime");
2072
+ var React17 = __toESM(require("react"), 1);
2073
+ var import_jsx_runtime21 = require("react/jsx-runtime");
1967
2074
  var Dialog = ({
1968
2075
  children,
1969
2076
  ...props
1970
2077
  }) => {
1971
2078
  const modal = props.modal ?? true;
1972
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Root, { ...props, modal, children }) });
2079
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DialogPrimitive2.Root, { ...props, modal, children }) });
1973
2080
  };
1974
2081
  Dialog.displayName = "Dialog";
1975
2082
  var DialogTrigger = DialogPrimitive2.Trigger;
@@ -1979,12 +2086,12 @@ var DialogPortal = ({
1979
2086
  ...props
1980
2087
  }) => {
1981
2088
  const resolved = usePortalContainer(container);
1982
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Portal, { container: resolved ?? null, ...props });
2089
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DialogPrimitive2.Portal, { container: resolved ?? null, ...props });
1983
2090
  };
1984
2091
  DialogPortal.displayName = "DialogPortal";
1985
- var DialogContainerContext = React16.createContext(null);
1986
- var useDialogContainer = () => React16.useContext(DialogContainerContext);
1987
- var DialogOverlay = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2092
+ var DialogContainerContext = React17.createContext(null);
2093
+ var useDialogContainer = () => React17.useContext(DialogContainerContext);
2094
+ var DialogOverlay = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
1988
2095
  DialogPrimitive2.Overlay,
1989
2096
  {
1990
2097
  ref,
@@ -2000,9 +2107,9 @@ var DialogOverlay = React16.forwardRef(({ className, ...props }, ref) => /* @__P
2000
2107
  }
2001
2108
  ));
2002
2109
  DialogOverlay.displayName = DialogPrimitive2.Overlay.displayName;
2003
- var DialogContentPrimitive = React16.forwardRef((props, ref) => {
2110
+ var DialogContentPrimitive = React17.forwardRef((props, ref) => {
2004
2111
  const isModal = useRadixDialogModal();
2005
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2112
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2006
2113
  DialogPrimitive2.Content,
2007
2114
  {
2008
2115
  ...props,
@@ -2012,10 +2119,10 @@ var DialogContentPrimitive = React16.forwardRef((props, ref) => {
2012
2119
  );
2013
2120
  });
2014
2121
  DialogContentPrimitive.displayName = "DialogContentPrimitive";
2015
- var DIALOG_DESKTOP_CLASSES2 = `fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg ${CENTERED_DIALOG} gap-4 max-h-[85dvh] overflow-y-auto overscroll-contain [--dialog-pad:1.5rem] overflow-x-clip border bg-background p-6 shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full sm:rounded-lg`;
2122
+ var DIALOG_DESKTOP_CLASSES2 = "fixed left-[50%] top-[50%] z-[10000] grid min-w-0 w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 max-h-[85dvh] overflow-y-auto overscroll-contain [--dialog-pad:1.5rem] overflow-x-clip border bg-background p-6 shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full sm:rounded-lg";
2016
2123
  var DIALOG_MOBILE_SHEET_CLASSES2 = "matrx-mobile-sheet fixed inset-x-0 bottom-0 left-0 right-0 top-auto z-[10000] flex min-w-0 flex-col w-full max-w-full max-h-[90dvh] translate-x-0 translate-y-0 gap-4 [--dialog-pad:1rem] overflow-x-clip border-t bg-background p-4 pb-safe shadow-lg [overflow-wrap:anywhere] [&>*]:min-w-0 [&>*]:max-w-full rounded-t-2xl rounded-b-none overflow-y-auto overscroll-contain";
2017
2124
  var DIALOG_MOBILE_SHEET_OVERRIDE2 = "inset-x-0 bottom-0 left-0 right-0 top-auto translate-x-0 translate-y-0 w-full max-w-full max-h-[90dvh] rounded-b-none rounded-t-2xl overflow-y-auto";
2018
- var DialogContent = React16.forwardRef(
2125
+ var DialogContent = React17.forwardRef(
2019
2126
  ({
2020
2127
  className,
2021
2128
  children,
@@ -2029,10 +2136,10 @@ var DialogContent = React16.forwardRef(
2029
2136
  const isModal = useRadixDialogModal();
2030
2137
  const injectedContainer = usePortalContainer(container);
2031
2138
  const asSheet = mobileSheet && isMobile;
2032
- const [containerEl, setContainerEl] = React16.useState(
2139
+ const [containerEl, setContainerEl] = React17.useState(
2033
2140
  null
2034
2141
  );
2035
- const mergedRef = React16.useCallback(
2142
+ const mergedRef = React17.useCallback(
2036
2143
  (node) => {
2037
2144
  setContainerEl(node);
2038
2145
  if (typeof ref === "function") ref(node);
@@ -2043,9 +2150,9 @@ var DialogContent = React16.forwardRef(
2043
2150
  );
2044
2151
  const hasTitle = (0, import_react_tree3.treeContainsComponent)(children, DialogTitle) || (0, import_react_tree3.treeContainsComponent)(children, DialogPrimitive2.Title);
2045
2152
  const hasDescription = (0, import_react_tree3.treeContainsComponent)(children, DialogDescription) || (0, import_react_tree3.treeContainsComponent)(children, DialogPrimitive2.Description);
2046
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DialogPortal, { container, children: [
2047
- isModal ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogOverlay, {}) : null,
2048
- /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
2153
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(DialogPortal, { container, children: [
2154
+ isModal ? /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DialogOverlay, {}) : null,
2155
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
2049
2156
  DialogContentPrimitive,
2050
2157
  {
2051
2158
  ref: mergedRef,
@@ -2064,23 +2171,23 @@ var DialogContent = React16.forwardRef(
2064
2171
  ...hasDescription ? {} : { "aria-describedby": void 0 },
2065
2172
  ...props,
2066
2173
  children: [
2067
- hasTitle ? null : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(VisuallyHidden2.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Title, { children: "Dialog" }) }),
2068
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogContainerContext.Provider, { value: containerEl, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2174
+ hasTitle ? null : /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(VisuallyHidden2.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DialogPrimitive2.Title, { children: "Dialog" }) }),
2175
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(DialogContainerContext.Provider, { value: containerEl, children: /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2069
2176
  PortalContainerProvider,
2070
2177
  {
2071
2178
  container: containerEl ?? injectedContainer ?? null,
2072
2179
  children
2073
2180
  }
2074
2181
  ) }),
2075
- showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
2182
+ showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)(
2076
2183
  DialogPrimitive2.Close,
2077
2184
  {
2078
2185
  "data-slot": "dialog-close",
2079
2186
  "aria-label": "Close",
2080
2187
  className: "absolute right-2 top-4 flex h-11 w-11 items-center justify-center rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground sm:right-4 lg:h-10 lg:w-10",
2081
2188
  children: [
2082
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(XIcon, { className: "h-4 w-4" }),
2083
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "sr-only", children: "Close" })
2189
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(XIcon, { className: "h-4 w-4" }),
2190
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "sr-only", children: "Close" })
2084
2191
  ]
2085
2192
  }
2086
2193
  ) : null
@@ -2094,7 +2201,7 @@ DialogContent.displayName = DialogPrimitive2.Content.displayName;
2094
2201
  var DialogHeader = ({
2095
2202
  className,
2096
2203
  ...props
2097
- }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2204
+ }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2098
2205
  "div",
2099
2206
  {
2100
2207
  "data-slot": "dialog-header",
@@ -2111,7 +2218,7 @@ DialogHeader.displayName = "DialogHeader";
2111
2218
  var DialogFooter = ({
2112
2219
  className,
2113
2220
  ...props
2114
- }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2221
+ }) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2115
2222
  "div",
2116
2223
  {
2117
2224
  "data-slot": "dialog-footer",
@@ -2125,7 +2232,7 @@ var DialogFooter = ({
2125
2232
  }
2126
2233
  );
2127
2234
  DialogFooter.displayName = "DialogFooter";
2128
- var DialogTitle = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2235
+ var DialogTitle = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2129
2236
  DialogPrimitive2.Title,
2130
2237
  {
2131
2238
  ref,
@@ -2135,7 +2242,7 @@ var DialogTitle = React16.forwardRef(({ className, ...props }, ref) => /* @__PUR
2135
2242
  }
2136
2243
  ));
2137
2244
  DialogTitle.displayName = DialogPrimitive2.Title.displayName;
2138
- var DialogDescription = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2245
+ var DialogDescription = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2139
2246
  DialogPrimitive2.Description,
2140
2247
  {
2141
2248
  ref,
@@ -2148,8 +2255,8 @@ DialogDescription.displayName = DialogPrimitive2.Description.displayName;
2148
2255
 
2149
2256
  // src/dropdown-menu.tsx
2150
2257
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
2151
- var React17 = __toESM(require("react"), 1);
2152
- var import_jsx_runtime20 = require("react/jsx-runtime");
2258
+ var React18 = __toESM(require("react"), 1);
2259
+ var import_jsx_runtime22 = require("react/jsx-runtime");
2153
2260
  var DropdownMenu = DropdownMenuPrimitive.Root;
2154
2261
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
2155
2262
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
@@ -2159,7 +2266,7 @@ var DropdownMenuRadioGroup = DropdownMenuPrimitive.RadioGroup;
2159
2266
  var MENU_SURFACE_CLASS = "z-[10001] min-w-[8rem] max-h-[var(--radix-dropdown-menu-content-available-height)] overflow-y-auto overflow-x-hidden overscroll-contain rounded-md border bg-popover p-1 text-popover-foreground";
2160
2267
  var MENU_ITEM_CLASS = "relative flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50";
2161
2268
  var MENU_INDICATOR_ITEM_CLASS = "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50";
2162
- var DropdownMenuSubTrigger = React17.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2269
+ var DropdownMenuSubTrigger = React18.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
2163
2270
  DropdownMenuPrimitive.SubTrigger,
2164
2271
  {
2165
2272
  ref,
@@ -2172,12 +2279,12 @@ var DropdownMenuSubTrigger = React17.forwardRef(({ className, inset, children, .
2172
2279
  ...props,
2173
2280
  children: [
2174
2281
  children,
2175
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
2282
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
2176
2283
  ]
2177
2284
  }
2178
2285
  ));
2179
2286
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
2180
- var DropdownMenuSubContent = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2287
+ var DropdownMenuSubContent = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2181
2288
  DropdownMenuPrimitive.SubContent,
2182
2289
  {
2183
2290
  ref,
@@ -2187,9 +2294,9 @@ var DropdownMenuSubContent = React17.forwardRef(({ className, ...props }, ref) =
2187
2294
  }
2188
2295
  ));
2189
2296
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
2190
- var DropdownMenuContent = React17.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
2297
+ var DropdownMenuContent = React18.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
2191
2298
  const portalContainer = usePortalContainer(container);
2192
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2299
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropdownMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2193
2300
  DropdownMenuPrimitive.Content,
2194
2301
  {
2195
2302
  ref,
@@ -2206,7 +2313,7 @@ var DropdownMenuContent = React17.forwardRef(({ className, sideOffset = 4, conta
2206
2313
  ) });
2207
2314
  });
2208
2315
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
2209
- var DropdownMenuItem = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2316
+ var DropdownMenuItem = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2210
2317
  DropdownMenuPrimitive.Item,
2211
2318
  {
2212
2319
  ref,
@@ -2216,7 +2323,7 @@ var DropdownMenuItem = React17.forwardRef(({ className, inset, ...props }, ref)
2216
2323
  }
2217
2324
  ));
2218
2325
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
2219
- var DropdownMenuCheckboxItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2326
+ var DropdownMenuCheckboxItem = React18.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
2220
2327
  DropdownMenuPrimitive.CheckboxItem,
2221
2328
  {
2222
2329
  ref,
@@ -2224,13 +2331,13 @@ var DropdownMenuCheckboxItem = React17.forwardRef(({ className, children, ...pro
2224
2331
  className: cn(MENU_INDICATOR_ITEM_CLASS, className),
2225
2332
  ...props,
2226
2333
  children: [
2227
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
2334
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
2228
2335
  children
2229
2336
  ]
2230
2337
  }
2231
2338
  ));
2232
2339
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
2233
- var DropdownMenuRadioItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2340
+ var DropdownMenuRadioItem = React18.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)(
2234
2341
  DropdownMenuPrimitive.RadioItem,
2235
2342
  {
2236
2343
  ref,
@@ -2238,13 +2345,13 @@ var DropdownMenuRadioItem = React17.forwardRef(({ className, children, ...props
2238
2345
  className: cn(MENU_INDICATOR_ITEM_CLASS, className),
2239
2346
  ...props,
2240
2347
  children: [
2241
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
2348
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
2242
2349
  children
2243
2350
  ]
2244
2351
  }
2245
2352
  ));
2246
2353
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
2247
- var DropdownMenuLabel = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2354
+ var DropdownMenuLabel = React18.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2248
2355
  DropdownMenuPrimitive.Label,
2249
2356
  {
2250
2357
  ref,
@@ -2254,7 +2361,7 @@ var DropdownMenuLabel = React17.forwardRef(({ className, inset, ...props }, ref)
2254
2361
  }
2255
2362
  ));
2256
2363
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
2257
- var DropdownMenuSeparator = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2364
+ var DropdownMenuSeparator = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2258
2365
  DropdownMenuPrimitive.Separator,
2259
2366
  {
2260
2367
  ref,
@@ -2267,7 +2374,7 @@ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
2267
2374
  var DropdownMenuShortcut = ({
2268
2375
  className,
2269
2376
  ...props
2270
- }) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2377
+ }) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2271
2378
  "span",
2272
2379
  {
2273
2380
  "data-slot": "dropdown-menu-shortcut",
@@ -2279,7 +2386,7 @@ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
2279
2386
 
2280
2387
  // src/editable-label.tsx
2281
2388
  var import_react2 = require("react");
2282
- var import_jsx_runtime21 = require("react/jsx-runtime");
2389
+ var import_jsx_runtime23 = require("react/jsx-runtime");
2283
2390
  function EditableLabel({
2284
2391
  value,
2285
2392
  onCommit,
@@ -2386,8 +2493,8 @@ function EditableLabel({
2386
2493
  setEditing
2387
2494
  ]);
2388
2495
  if (editing) {
2389
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("span", { className: cn("relative flex min-w-0 flex-1 items-center", className), children: [
2390
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2496
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("span", { className: cn("relative flex min-w-0 flex-1 items-center", className), children: [
2497
+ /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2391
2498
  "input",
2392
2499
  {
2393
2500
  ref: inputRef,
@@ -2427,12 +2534,12 @@ function EditableLabel({
2427
2534
  )
2428
2535
  }
2429
2536
  ),
2430
- busy && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Loader2Icon, { className: "absolute right-1 h-3.5 w-3.5 matrx-spin text-muted-foreground" }),
2431
- error && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("span", { className: "absolute left-0 top-full mt-0.5 whitespace-nowrap text-xs text-destructive", children: error })
2537
+ busy && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(Loader2Icon, { className: "absolute right-1 h-3.5 w-3.5 matrx-spin text-muted-foreground" }),
2538
+ error && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { className: "absolute left-0 top-full mt-0.5 whitespace-nowrap text-xs text-destructive", children: error })
2432
2539
  ] });
2433
2540
  }
2434
2541
  if (controlled) return null;
2435
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2542
+ return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2436
2543
  "button",
2437
2544
  {
2438
2545
  type: "button",
@@ -2466,8 +2573,8 @@ function EditableLabel({
2466
2573
  }
2467
2574
 
2468
2575
  // src/input.tsx
2469
- var React18 = __toESM(require("react"), 1);
2470
- var import_jsx_runtime22 = require("react/jsx-runtime");
2576
+ var React19 = __toESM(require("react"), 1);
2577
+ var import_jsx_runtime24 = require("react/jsx-runtime");
2471
2578
  var getVariantStyles = (variant = "default") => {
2472
2579
  const baseStyles = `flex h-10 w-full border border-border bg-background text-foreground shadow-input rounded-md px-3 py-2 text-sm file:border-0 file:bg-transparent
2473
2580
  file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground
@@ -2495,9 +2602,9 @@ var getVariantStyles = (variant = "default") => {
2495
2602
  return baseStyles;
2496
2603
  }
2497
2604
  };
2498
- var Input = React18.forwardRef(
2605
+ var Input = React19.forwardRef(
2499
2606
  ({ className, type, variant = "default", ...props }, ref) => {
2500
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2607
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2501
2608
  "input",
2502
2609
  {
2503
2610
  type,
@@ -2509,7 +2616,7 @@ var Input = React18.forwardRef(
2509
2616
  }
2510
2617
  );
2511
2618
  Input.displayName = "Input";
2512
- var EnterInput = React18.forwardRef(
2619
+ var EnterInput = React19.forwardRef(
2513
2620
  ({ onEnter, ...props }, ref) => {
2514
2621
  const handleKeyDown = (e) => {
2515
2622
  if (e.key === "Enter" && onEnter) {
@@ -2517,7 +2624,7 @@ var EnterInput = React18.forwardRef(
2517
2624
  onEnter();
2518
2625
  }
2519
2626
  };
2520
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2627
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2521
2628
  Input,
2522
2629
  {
2523
2630
  ...props,
@@ -2533,11 +2640,11 @@ var EnterInput = React18.forwardRef(
2533
2640
  }
2534
2641
  );
2535
2642
  EnterInput.displayName = "EnterInput";
2536
- var BasicInput = React18.forwardRef(
2643
+ var BasicInput = React19.forwardRef(
2537
2644
  // `variant` is accepted (prop-compatible with Input) but intentionally
2538
2645
  // unused — and destructured so it never leaks onto the DOM element.
2539
2646
  ({ className, type, variant: _variant = "default", ...props }, ref) => {
2540
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2647
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2541
2648
  "input",
2542
2649
  {
2543
2650
  type,
@@ -2552,10 +2659,10 @@ var BasicInput = React18.forwardRef(
2552
2659
  }
2553
2660
  );
2554
2661
  BasicInput.displayName = "BasicInput";
2555
- var InputWithPrefix = React18.forwardRef(({ prefix, className, wrapperClassName, ...props }, ref) => {
2556
- return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: cn("relative", wrapperClassName), children: [
2557
- prefix && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: prefix }),
2558
- /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2662
+ var InputWithPrefix = React19.forwardRef(({ prefix, className, wrapperClassName, ...props }, ref) => {
2663
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: cn("relative", wrapperClassName), children: [
2664
+ prefix && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("div", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: prefix }),
2665
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2559
2666
  Input,
2560
2667
  {
2561
2668
  ref,
@@ -2569,9 +2676,9 @@ InputWithPrefix.displayName = "InputWithPrefix";
2569
2676
 
2570
2677
  // src/label.tsx
2571
2678
  var LabelPrimitive = __toESM(require("@radix-ui/react-label"), 1);
2572
- var React19 = __toESM(require("react"), 1);
2573
- var import_jsx_runtime23 = require("react/jsx-runtime");
2574
- var Label3 = React19.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2679
+ var React20 = __toESM(require("react"), 1);
2680
+ var import_jsx_runtime25 = require("react/jsx-runtime");
2681
+ var Label3 = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2575
2682
  LabelPrimitive.Root,
2576
2683
  {
2577
2684
  ref,
@@ -2586,7 +2693,7 @@ Label3.displayName = LabelPrimitive.Root.displayName;
2586
2693
 
2587
2694
  // src/overflow-toolbar.tsx
2588
2695
  var import_react3 = require("react");
2589
- var import_jsx_runtime24 = require("react/jsx-runtime");
2696
+ var import_jsx_runtime26 = require("react/jsx-runtime");
2590
2697
  var GAP_PX = 6;
2591
2698
  var TONE = {
2592
2699
  default: "border border-border bg-background hover:bg-accent text-foreground",
@@ -2608,16 +2715,16 @@ function ToolbarButton({
2608
2715
  action.hideLabel && !action.running ? "w-7 justify-center px-0" : "px-2",
2609
2716
  TONE[tone]
2610
2717
  );
2611
- const inner = /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_jsx_runtime24.Fragment, { children: [
2612
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2718
+ const inner = /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(import_jsx_runtime26.Fragment, { children: [
2719
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2613
2720
  Icon2,
2614
2721
  {
2615
2722
  className: cn("w-3.5 h-3.5 shrink-0", action.running && "matrx-spin")
2616
2723
  }
2617
2724
  ),
2618
- showLabel && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { children: text })
2725
+ showLabel && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { children: text })
2619
2726
  ] });
2620
- const control = action.href && !action.disabled ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2727
+ const control = action.href && !action.disabled ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2621
2728
  "a",
2622
2729
  {
2623
2730
  href: action.href,
@@ -2627,7 +2734,7 @@ function ToolbarButton({
2627
2734
  "aria-label": action.label,
2628
2735
  children: inner
2629
2736
  }
2630
- ) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2737
+ ) : /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2631
2738
  "button",
2632
2739
  {
2633
2740
  type: "button",
@@ -2639,12 +2746,12 @@ function ToolbarButton({
2639
2746
  }
2640
2747
  );
2641
2748
  if (enableTooltip && action.hideLabel && renderTooltip) {
2642
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children: renderTooltip(control, action.label) });
2749
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(import_jsx_runtime26.Fragment, { children: renderTooltip(control, action.label) });
2643
2750
  }
2644
2751
  return control;
2645
2752
  }
2646
2753
  function OverflowTrigger({ ariaLabel }) {
2647
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2754
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2648
2755
  "button",
2649
2756
  {
2650
2757
  type: "button",
@@ -2655,7 +2762,7 @@ function OverflowTrigger({ ariaLabel }) {
2655
2762
  "inline-flex items-center justify-center h-7 w-7 rounded-md transition-colors",
2656
2763
  "border border-border bg-background hover:bg-accent text-foreground"
2657
2764
  ),
2658
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(MoreHorizontalIcon, { className: "w-3.5 h-3.5" })
2765
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(MoreHorizontalIcon, { className: "w-3.5 h-3.5" })
2659
2766
  }
2660
2767
  );
2661
2768
  }
@@ -2715,22 +2822,22 @@ function OverflowToolbar({
2715
2822
  }, [signature, leading != null]);
2716
2823
  const shown = visibleActions.slice(0, visibleCount);
2717
2824
  const hidden = visibleActions.slice(visibleCount);
2718
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { ref: containerRef, className: cn("relative min-w-0", className), children: [
2719
- /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
2825
+ return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { ref: containerRef, className: cn("relative min-w-0", className), children: [
2826
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
2720
2827
  "div",
2721
2828
  {
2722
2829
  ref: ghostRef,
2723
2830
  "aria-hidden": true,
2724
2831
  className: "pointer-events-none absolute left-0 top-0 flex items-center gap-1.5 opacity-0",
2725
2832
  children: [
2726
- visibleActions.map((a) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(ToolbarButton, { action: a }, a.id)),
2727
- /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2833
+ visibleActions.map((a) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ToolbarButton, { action: a }, a.id)),
2834
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2728
2835
  ]
2729
2836
  }
2730
2837
  ),
2731
- /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "flex items-center justify-end gap-1.5", children: [
2732
- leading != null && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { ref: leadingRef, className: "shrink-0", children: leading }),
2733
- shown.map((a) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2838
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: "flex items-center justify-end gap-1.5", children: [
2839
+ leading != null && /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { ref: leadingRef, className: "shrink-0", children: leading }),
2840
+ shown.map((a) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2734
2841
  ToolbarButton,
2735
2842
  {
2736
2843
  action: a,
@@ -2741,7 +2848,7 @@ function OverflowToolbar({
2741
2848
  )),
2742
2849
  hidden.length > 0 && renderOverflowMenu({
2743
2850
  actions: hidden,
2744
- trigger: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2851
+ trigger: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2745
2852
  })
2746
2853
  ] })
2747
2854
  ] });
@@ -2749,20 +2856,20 @@ function OverflowToolbar({
2749
2856
 
2750
2857
  // src/progress.tsx
2751
2858
  var ProgressPrimitive = __toESM(require("@radix-ui/react-progress"), 1);
2752
- var React21 = __toESM(require("react"), 1);
2753
- var import_jsx_runtime25 = require("react/jsx-runtime");
2859
+ var React22 = __toESM(require("react"), 1);
2860
+ var import_jsx_runtime27 = require("react/jsx-runtime");
2754
2861
  var PROGRESS_TONES = {
2755
2862
  default: "bg-primary",
2756
2863
  success: "bg-success",
2757
2864
  warning: "bg-warning",
2758
2865
  destructive: "bg-destructive"
2759
2866
  };
2760
- var Progress = React21.forwardRef(({ className, tone = "default", indicatorClassName, ...props }, ref) => {
2867
+ var Progress = React22.forwardRef(({ className, tone = "default", indicatorClassName, ...props }, ref) => {
2761
2868
  const { value, max } = props;
2762
2869
  const ceiling = max ?? 100;
2763
2870
  const isIndeterminate = value === null || value === void 0;
2764
2871
  const pct = isIndeterminate ? 0 : Math.min(100, Math.max(0, value / ceiling * 100));
2765
- return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2872
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2766
2873
  ProgressPrimitive.Root,
2767
2874
  {
2768
2875
  ref,
@@ -2772,7 +2879,7 @@ var Progress = React21.forwardRef(({ className, tone = "default", indicatorClass
2772
2879
  className
2773
2880
  ),
2774
2881
  ...props,
2775
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2882
+ children: /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2776
2883
  ProgressPrimitive.Indicator,
2777
2884
  {
2778
2885
  "data-slot": "progress-indicator",
@@ -2792,9 +2899,9 @@ Progress.displayName = ProgressPrimitive.Root.displayName;
2792
2899
 
2793
2900
  // src/scroll-area.tsx
2794
2901
  var ScrollAreaPrimitive = __toESM(require("@radix-ui/react-scroll-area"), 1);
2795
- var React22 = __toESM(require("react"), 1);
2796
- var import_jsx_runtime26 = require("react/jsx-runtime");
2797
- var ScrollArea = React22.forwardRef(
2902
+ var React23 = __toESM(require("react"), 1);
2903
+ var import_jsx_runtime28 = require("react/jsx-runtime");
2904
+ var ScrollArea = React23.forwardRef(
2798
2905
  ({
2799
2906
  className,
2800
2907
  children,
@@ -2803,7 +2910,7 @@ var ScrollArea = React22.forwardRef(
2803
2910
  scrollBarClassName,
2804
2911
  orientation = "vertical",
2805
2912
  ...props
2806
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
2913
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
2807
2914
  ScrollAreaPrimitive.Root,
2808
2915
  {
2809
2916
  ref,
@@ -2811,7 +2918,7 @@ var ScrollArea = React22.forwardRef(
2811
2918
  className: cn("relative overflow-hidden", className),
2812
2919
  ...props,
2813
2920
  children: [
2814
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2921
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2815
2922
  ScrollAreaPrimitive.Viewport,
2816
2923
  {
2817
2924
  ref: viewportRef,
@@ -2820,14 +2927,14 @@ var ScrollArea = React22.forwardRef(
2820
2927
  children
2821
2928
  }
2822
2929
  ),
2823
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ScrollBar, { orientation, className: scrollBarClassName }),
2824
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ScrollAreaPrimitive.Corner, {})
2930
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ScrollBar, { orientation, className: scrollBarClassName }),
2931
+ /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(ScrollAreaPrimitive.Corner, {})
2825
2932
  ]
2826
2933
  }
2827
2934
  )
2828
2935
  );
2829
2936
  ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
2830
- var ScrollBar = React22.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2937
+ var ScrollBar = React23.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2831
2938
  ScrollAreaPrimitive.ScrollAreaScrollbar,
2832
2939
  {
2833
2940
  ref,
@@ -2840,7 +2947,7 @@ var ScrollBar = React22.forwardRef(({ className, orientation = "vertical", ...pr
2840
2947
  className
2841
2948
  ),
2842
2949
  ...props,
2843
- children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2950
+ children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2844
2951
  ScrollAreaPrimitive.ScrollAreaThumb,
2845
2952
  {
2846
2953
  "data-slot": "scroll-area-thumb",
@@ -2852,7 +2959,7 @@ var ScrollBar = React22.forwardRef(({ className, orientation = "vertical", ...pr
2852
2959
  ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
2853
2960
 
2854
2961
  // src/score-ring.tsx
2855
- var import_jsx_runtime27 = require("react/jsx-runtime");
2962
+ var import_jsx_runtime29 = require("react/jsx-runtime");
2856
2963
  var DEFAULT_SCORE_THRESHOLDS = {
2857
2964
  good: 75,
2858
2965
  warning: 50
@@ -2883,7 +2990,7 @@ function ScoreRing({
2883
2990
  const circumference = 2 * Math.PI * radius;
2884
2991
  const boundedPct = pct === null ? 0 : Math.max(0, Math.min(100, pct));
2885
2992
  const dashOffset = circumference * (1 - boundedPct / 100);
2886
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
2993
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
2887
2994
  "div",
2888
2995
  {
2889
2996
  className: cn(
@@ -2894,8 +3001,8 @@ function ScoreRing({
2894
3001
  role: "img",
2895
3002
  "aria-label": `${label ?? "Score"}: ${pct === null ? "not available" : `${pct} out of 100`}`,
2896
3003
  children: [
2897
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("svg", { viewBox: "0 0 100 100", className: "h-full w-full -rotate-90", children: [
2898
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3004
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("svg", { viewBox: "0 0 100 100", className: "h-full w-full -rotate-90", children: [
3005
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2899
3006
  "circle",
2900
3007
  {
2901
3008
  cx: "50",
@@ -2906,7 +3013,7 @@ function ScoreRing({
2906
3013
  fill: "none"
2907
3014
  }
2908
3015
  ),
2909
- pct !== null ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3016
+ pct !== null ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2910
3017
  "circle",
2911
3018
  {
2912
3019
  cx: "50",
@@ -2925,8 +3032,8 @@ function ScoreRing({
2925
3032
  }
2926
3033
  ) : null
2927
3034
  ] }),
2928
- /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "absolute flex flex-col items-center justify-center", children: [
2929
- /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
3035
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)("div", { className: "absolute flex flex-col items-center justify-center", children: [
3036
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2930
3037
  "span",
2931
3038
  {
2932
3039
  className: cn(
@@ -2936,7 +3043,7 @@ function ScoreRing({
2936
3043
  children: pct === null ? "\u2014" : `${pct}${suffix}`
2937
3044
  }
2938
3045
  ),
2939
- label ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)("span", { className: "max-w-[74px] truncate text-[9px] font-semibold uppercase tracking-wide text-muted-foreground", children: label }) : null
3046
+ label ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "max-w-[74px] truncate text-[9px] font-semibold uppercase tracking-wide text-muted-foreground", children: label }) : null
2940
3047
  ] })
2941
3048
  ]
2942
3049
  }
@@ -2944,7 +3051,7 @@ function ScoreRing({
2944
3051
  }
2945
3052
 
2946
3053
  // src/segmented-control.tsx
2947
- var import_jsx_runtime28 = require("react/jsx-runtime");
3054
+ var import_jsx_runtime30 = require("react/jsx-runtime");
2948
3055
  function SegmentedControl({
2949
3056
  value,
2950
3057
  onValueChange,
@@ -2959,7 +3066,7 @@ function SegmentedControl({
2959
3066
  md: "h-9 text-sm",
2960
3067
  lg: "h-10 text-base"
2961
3068
  };
2962
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3069
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
2963
3070
  "div",
2964
3071
  {
2965
3072
  className: cn(
@@ -2970,7 +3077,7 @@ function SegmentedControl({
2970
3077
  role: "tablist",
2971
3078
  children: data.map((option) => {
2972
3079
  const isActive = value === option.value;
2973
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3080
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
2974
3081
  "button",
2975
3082
  {
2976
3083
  type: "button",
@@ -2997,8 +3104,8 @@ function SegmentedControl({
2997
3104
  // src/select.tsx
2998
3105
  var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
2999
3106
  var import_class_variance_authority4 = require("class-variance-authority");
3000
- var React23 = __toESM(require("react"), 1);
3001
- var import_jsx_runtime29 = require("react/jsx-runtime");
3107
+ var React24 = __toESM(require("react"), 1);
3108
+ var import_jsx_runtime31 = require("react/jsx-runtime");
3002
3109
  var Select = SelectPrimitive.Root;
3003
3110
  var SelectGroup = SelectPrimitive.Group;
3004
3111
  var SelectValue = SelectPrimitive.Value;
@@ -3017,7 +3124,7 @@ var selectTriggerVariants = (0, import_class_variance_authority4.cva)(
3017
3124
  }
3018
3125
  }
3019
3126
  );
3020
- var SelectTrigger = React23.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
3127
+ var SelectTrigger = React24.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3021
3128
  SelectPrimitive.Trigger,
3022
3129
  {
3023
3130
  ref,
@@ -3025,12 +3132,12 @@ var SelectTrigger = React23.forwardRef(({ className, children, hideArrow = false
3025
3132
  ...props,
3026
3133
  children: [
3027
3134
  children,
3028
- !hideArrow && /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RadixChevronDownIcon, { className: "h-4 w-4 opacity-50" }) })
3135
+ !hideArrow && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadixChevronDownIcon, { className: "h-4 w-4 opacity-50" }) })
3029
3136
  ]
3030
3137
  }
3031
3138
  ));
3032
3139
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
3033
- var SelectScrollUpButton = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3140
+ var SelectScrollUpButton = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3034
3141
  SelectPrimitive.ScrollUpButton,
3035
3142
  {
3036
3143
  ref,
@@ -3039,11 +3146,11 @@ var SelectScrollUpButton = React23.forwardRef(({ className, ...props }, ref) =>
3039
3146
  className
3040
3147
  ),
3041
3148
  ...props,
3042
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RadixChevronUpIcon, {})
3149
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadixChevronUpIcon, {})
3043
3150
  }
3044
3151
  ));
3045
3152
  SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
3046
- var SelectScrollDownButton = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3153
+ var SelectScrollDownButton = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3047
3154
  SelectPrimitive.ScrollDownButton,
3048
3155
  {
3049
3156
  ref,
@@ -3052,11 +3159,11 @@ var SelectScrollDownButton = React23.forwardRef(({ className, ...props }, ref) =
3052
3159
  className
3053
3160
  ),
3054
3161
  ...props,
3055
- children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RadixChevronDownIcon, {})
3162
+ children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadixChevronDownIcon, {})
3056
3163
  }
3057
3164
  ));
3058
3165
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
3059
- var SelectContent = React23.forwardRef(
3166
+ var SelectContent = React24.forwardRef(
3060
3167
  ({
3061
3168
  className,
3062
3169
  children,
@@ -3066,26 +3173,21 @@ var SelectContent = React23.forwardRef(
3066
3173
  ...props
3067
3174
  }, ref) => {
3068
3175
  const portalContainer = usePortalContainer(container);
3069
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
3176
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3070
3177
  SelectPrimitive.Content,
3071
3178
  {
3072
3179
  ref,
3073
3180
  className: cn(
3074
3181
  "relative z-[10001] max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md",
3075
3182
  animated && MOTION_POPPER,
3076
- // The resting gap from the trigger. It is the `translate` property
3077
- // (POPPER_OFFSET), never Tailwind translate utilities: those compose
3078
- // with `transform` on a v4 host and are REPLACED by it on a v3 one,
3079
- // so on v3 the animation ate the gap and the surface snapped 4px at
3080
- // the end. Same law as the centred dialog card — see motion.ts.
3081
- position === "popper" && POPPER_OFFSET,
3183
+ position === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
3082
3184
  className
3083
3185
  ),
3084
3186
  position,
3085
3187
  ...props,
3086
3188
  children: [
3087
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectScrollUpButton, {}),
3088
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3189
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectScrollUpButton, {}),
3190
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3089
3191
  SelectPrimitive.Viewport,
3090
3192
  {
3091
3193
  className: cn(
@@ -3095,14 +3197,14 @@ var SelectContent = React23.forwardRef(
3095
3197
  children
3096
3198
  }
3097
3199
  ),
3098
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectScrollDownButton, {})
3200
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectScrollDownButton, {})
3099
3201
  ]
3100
3202
  }
3101
3203
  ) });
3102
3204
  }
3103
3205
  );
3104
3206
  SelectContent.displayName = SelectPrimitive.Content.displayName;
3105
- var SelectLabel = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3207
+ var SelectLabel = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3106
3208
  SelectPrimitive.Label,
3107
3209
  {
3108
3210
  ref,
@@ -3111,7 +3213,7 @@ var SelectLabel = React23.forwardRef(({ className, ...props }, ref) => /* @__PUR
3111
3213
  }
3112
3214
  ));
3113
3215
  SelectLabel.displayName = SelectPrimitive.Label.displayName;
3114
- var SelectItem = React23.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
3216
+ var SelectItem = React24.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3115
3217
  SelectPrimitive.Item,
3116
3218
  {
3117
3219
  ref,
@@ -3122,14 +3224,14 @@ var SelectItem = React23.forwardRef(({ className, children, description, ...prop
3122
3224
  ),
3123
3225
  ...props,
3124
3226
  children: [
3125
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
3126
- /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.ItemText, { children }),
3127
- description ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "block text-xs leading-snug text-muted-foreground", children: description }) : null
3227
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
3228
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SelectPrimitive.ItemText, { children }),
3229
+ description ? /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "block text-xs leading-snug text-muted-foreground", children: description }) : null
3128
3230
  ]
3129
3231
  }
3130
3232
  ));
3131
3233
  SelectItem.displayName = SelectPrimitive.Item.displayName;
3132
- var SelectSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3234
+ var SelectSeparator = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3133
3235
  SelectPrimitive.Separator,
3134
3236
  {
3135
3237
  ref,
@@ -3141,9 +3243,9 @@ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
3141
3243
 
3142
3244
  // src/separator.tsx
3143
3245
  var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
3144
- var React24 = __toESM(require("react"), 1);
3145
- var import_jsx_runtime30 = require("react/jsx-runtime");
3146
- var Separator4 = React24.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3246
+ var React25 = __toESM(require("react"), 1);
3247
+ var import_jsx_runtime32 = require("react/jsx-runtime");
3248
+ var Separator4 = React25.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3147
3249
  SeparatorPrimitive.Root,
3148
3250
  {
3149
3251
  ref,
@@ -3163,11 +3265,11 @@ Separator4.displayName = SeparatorPrimitive.Root.displayName;
3163
3265
  var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
3164
3266
  var import_react_tree4 = require("@ai-matrx/kit/react-tree");
3165
3267
  var import_class_variance_authority5 = require("class-variance-authority");
3166
- var React25 = __toESM(require("react"), 1);
3167
- var import_jsx_runtime31 = require("react/jsx-runtime");
3168
- var SheetContentBase = React25.forwardRef(({ ...props }, ref) => {
3268
+ var React26 = __toESM(require("react"), 1);
3269
+ var import_jsx_runtime33 = require("react/jsx-runtime");
3270
+ var SheetContentBase = React26.forwardRef(({ ...props }, ref) => {
3169
3271
  const isModal = useRadixDialogModal();
3170
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3272
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3171
3273
  SheetPrimitive.Content,
3172
3274
  {
3173
3275
  ...props,
@@ -3177,15 +3279,15 @@ var SheetContentBase = React25.forwardRef(({ ...props }, ref) => {
3177
3279
  );
3178
3280
  });
3179
3281
  SheetContentBase.displayName = "SheetContentBase";
3180
- var Sheet = React25.forwardRef(({ children, ...props }, _ref) => {
3282
+ var Sheet = React26.forwardRef(({ children, ...props }, _ref) => {
3181
3283
  const modal = props.modal ?? true;
3182
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SheetPrimitive.Root, { ...props, modal, children }) });
3284
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SheetPrimitive.Root, { ...props, modal, children }) });
3183
3285
  });
3184
3286
  Sheet.displayName = "Sheet";
3185
3287
  var SheetTrigger = SheetPrimitive.Trigger;
3186
3288
  var SheetClose = SheetPrimitive.Close;
3187
3289
  var SheetPortal = SheetPrimitive.Portal;
3188
- var SheetOverlay = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3290
+ var SheetOverlay = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3189
3291
  SheetPrimitive.Overlay,
3190
3292
  {
3191
3293
  className: cn(
@@ -3222,7 +3324,7 @@ var sheetVariants = (0, import_class_variance_authority5.cva)(
3222
3324
  }
3223
3325
  }
3224
3326
  );
3225
- var SheetDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3327
+ var SheetDescription = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3226
3328
  SheetPrimitive.Description,
3227
3329
  {
3228
3330
  ref,
@@ -3231,7 +3333,7 @@ var SheetDescription = React25.forwardRef(({ className, ...props }, ref) => /* @
3231
3333
  }
3232
3334
  ));
3233
3335
  SheetDescription.displayName = SheetPrimitive.Description.displayName;
3234
- var SheetContent = React25.forwardRef(
3336
+ var SheetContent = React26.forwardRef(
3235
3337
  ({
3236
3338
  side = "right",
3237
3339
  className,
@@ -3243,9 +3345,9 @@ var SheetContent = React25.forwardRef(
3243
3345
  ...props
3244
3346
  }, ref) => {
3245
3347
  const hasDescription = (0, import_react_tree4.treeContainsComponent)(children, SheetDescription) || (0, import_react_tree4.treeContainsComponent)(children, SheetPrimitive.Description);
3246
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(SheetPortal, { children: [
3247
- !hideOverlay && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SheetOverlay, { className: overlayClassName }),
3248
- /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3348
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(SheetPortal, { children: [
3349
+ !hideOverlay && /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(SheetOverlay, { className: overlayClassName }),
3350
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
3249
3351
  SheetContentBase,
3250
3352
  {
3251
3353
  ref,
@@ -3257,9 +3359,9 @@ var SheetContent = React25.forwardRef(
3257
3359
  ...hasDescription ? {} : { "aria-describedby": void 0 },
3258
3360
  ...props,
3259
3361
  children: [
3260
- !hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
3261
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Cross2Icon, { className: "h-4 w-4" }),
3262
- /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "sr-only", children: "Close" })
3362
+ !hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(SheetPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
3363
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Cross2Icon, { className: "h-4 w-4" }),
3364
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "sr-only", children: "Close" })
3263
3365
  ] }),
3264
3366
  children
3265
3367
  ]
@@ -3272,7 +3374,7 @@ SheetContent.displayName = SheetPrimitive.Content.displayName;
3272
3374
  var SheetHeader = ({
3273
3375
  className,
3274
3376
  ...props
3275
- }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3377
+ }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3276
3378
  "div",
3277
3379
  {
3278
3380
  className: cn(
@@ -3286,7 +3388,7 @@ SheetHeader.displayName = "SheetHeader";
3286
3388
  var SheetFooter = ({
3287
3389
  className,
3288
3390
  ...props
3289
- }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3391
+ }) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3290
3392
  "div",
3291
3393
  {
3292
3394
  className: cn(
@@ -3297,7 +3399,7 @@ var SheetFooter = ({
3297
3399
  }
3298
3400
  );
3299
3401
  SheetFooter.displayName = "SheetFooter";
3300
- var SheetTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3402
+ var SheetTitle = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3301
3403
  SheetPrimitive.Title,
3302
3404
  {
3303
3405
  ref,
@@ -3308,9 +3410,9 @@ var SheetTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE
3308
3410
  SheetTitle.displayName = SheetPrimitive.Title.displayName;
3309
3411
 
3310
3412
  // src/skeleton.tsx
3311
- var import_jsx_runtime32 = require("react/jsx-runtime");
3413
+ var import_jsx_runtime34 = require("react/jsx-runtime");
3312
3414
  function Skeleton({ className, animated = true, ...props }) {
3313
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3415
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3314
3416
  "div",
3315
3417
  {
3316
3418
  "data-slot": "skeleton",
@@ -3326,8 +3428,8 @@ function Skeleton({ className, animated = true, ...props }) {
3326
3428
 
3327
3429
  // src/switch.tsx
3328
3430
  var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
3329
- var React26 = __toESM(require("react"), 1);
3330
- var import_jsx_runtime33 = require("react/jsx-runtime");
3431
+ var React27 = __toESM(require("react"), 1);
3432
+ var import_jsx_runtime35 = require("react/jsx-runtime");
3331
3433
  var SWITCH_SIZES = {
3332
3434
  sm: {
3333
3435
  root: "h-4 w-9 border-border data-[state=unchecked]:bg-input",
@@ -3338,7 +3440,7 @@ var SWITCH_SIZES = {
3338
3440
  thumb: "h-4 w-4 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0"
3339
3441
  }
3340
3442
  };
3341
- var Switch = React26.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3443
+ var Switch = React27.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3342
3444
  SwitchPrimitives.Root,
3343
3445
  {
3344
3446
  ref,
@@ -3349,7 +3451,7 @@ var Switch = React26.forwardRef(({ className, size = "md", ...props }, ref) => /
3349
3451
  className
3350
3452
  ),
3351
3453
  ...props,
3352
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3454
+ children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3353
3455
  SwitchPrimitives.Thumb,
3354
3456
  {
3355
3457
  "data-slot": "switch-thumb",
@@ -3365,7 +3467,7 @@ Switch.displayName = SwitchPrimitives.Root.displayName;
3365
3467
 
3366
3468
  // src/tabbed-bottom-sheet.tsx
3367
3469
  var import_react4 = require("react");
3368
- var import_jsx_runtime34 = require("react/jsx-runtime");
3470
+ var import_jsx_runtime36 = require("react/jsx-runtime");
3369
3471
  function TabbedBottomSheet({
3370
3472
  open,
3371
3473
  onOpenChange,
@@ -3379,15 +3481,15 @@ function TabbedBottomSheet({
3379
3481
  if (open) setSelectedTabId(null);
3380
3482
  }
3381
3483
  const selectedTab = selectedTabId ? tabs.find((tab) => tab.id === selectedTabId) : null;
3382
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3484
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3383
3485
  BottomSheet,
3384
3486
  {
3385
3487
  open,
3386
3488
  onOpenChange,
3387
3489
  title,
3388
3490
  size: "full",
3389
- children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3390
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3491
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3492
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3391
3493
  BottomSheetHeader,
3392
3494
  {
3393
3495
  title: selectedTab ? selectedTab.label : title,
@@ -3395,19 +3497,19 @@ function TabbedBottomSheet({
3395
3497
  onBack: () => setSelectedTabId(null)
3396
3498
  }
3397
3499
  ),
3398
- selectedTab ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(BottomSheetBody, { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
3500
+ selectedTab ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(BottomSheetBody, { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
3399
3501
  const Icon2 = tab.icon;
3400
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
3502
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
3401
3503
  "button",
3402
3504
  {
3403
3505
  type: "button",
3404
3506
  onClick: () => setSelectedTabId(tab.id),
3405
3507
  className: "flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors hover:bg-muted/60 active:bg-muted",
3406
3508
  children: [
3407
- Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3408
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3509
+ Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3510
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3409
3511
  tab.trailing,
3410
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3512
+ /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3411
3513
  ]
3412
3514
  }
3413
3515
  ) }, tab.id);
@@ -3418,19 +3520,19 @@ function TabbedBottomSheet({
3418
3520
  }
3419
3521
 
3420
3522
  // src/table.tsx
3421
- var React27 = __toESM(require("react"), 1);
3422
- var import_jsx_runtime35 = require("react/jsx-runtime");
3523
+ var React28 = __toESM(require("react"), 1);
3524
+ var import_jsx_runtime37 = require("react/jsx-runtime");
3423
3525
  var TABLE_SIZES = {
3424
3526
  sm: { head: "px-2", cell: "p-2" },
3425
3527
  md: { head: "px-3", cell: "p-3" }
3426
3528
  };
3427
- var TableSizeContext = React27.createContext("md");
3529
+ var TableSizeContext = React28.createContext("md");
3428
3530
  function useTableSize() {
3429
- return React27.useContext(TableSizeContext);
3531
+ return React28.useContext(TableSizeContext);
3430
3532
  }
3431
- var Table = React27.forwardRef(
3533
+ var Table = React28.forwardRef(
3432
3534
  ({ className, size = "md", wrap = true, wrapperClassName, ...props }, ref) => {
3433
- const table = /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3535
+ const table = /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3434
3536
  "table",
3435
3537
  {
3436
3538
  ref,
@@ -3440,7 +3542,7 @@ var Table = React27.forwardRef(
3440
3542
  ...props
3441
3543
  }
3442
3544
  );
3443
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3545
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3444
3546
  "div",
3445
3547
  {
3446
3548
  "data-slot": "table-wrapper",
@@ -3451,7 +3553,7 @@ var Table = React27.forwardRef(
3451
3553
  }
3452
3554
  );
3453
3555
  Table.displayName = "Table";
3454
- var TableHeader = React27.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3556
+ var TableHeader = React28.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3455
3557
  "thead",
3456
3558
  {
3457
3559
  ref,
@@ -3465,7 +3567,7 @@ var TableHeader = React27.forwardRef(({ className, sticky = false, ...props }, r
3465
3567
  }
3466
3568
  ));
3467
3569
  TableHeader.displayName = "TableHeader";
3468
- var TableBody = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3570
+ var TableBody = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3469
3571
  "tbody",
3470
3572
  {
3471
3573
  ref,
@@ -3475,7 +3577,7 @@ var TableBody = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE_
3475
3577
  }
3476
3578
  ));
3477
3579
  TableBody.displayName = "TableBody";
3478
- var TableFooter = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3580
+ var TableFooter = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3479
3581
  "tfoot",
3480
3582
  {
3481
3583
  ref,
@@ -3488,7 +3590,7 @@ var TableFooter = React27.forwardRef(({ className, ...props }, ref) => /* @__PUR
3488
3590
  }
3489
3591
  ));
3490
3592
  TableFooter.displayName = "TableFooter";
3491
- var TableRow = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3593
+ var TableRow = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3492
3594
  "tr",
3493
3595
  {
3494
3596
  ref,
@@ -3501,9 +3603,9 @@ var TableRow = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3501
3603
  }
3502
3604
  ));
3503
3605
  TableRow.displayName = "TableRow";
3504
- var TableHead = React27.forwardRef(({ className, ...props }, ref) => {
3606
+ var TableHead = React28.forwardRef(({ className, ...props }, ref) => {
3505
3607
  const size = useTableSize();
3506
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3608
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3507
3609
  "th",
3508
3610
  {
3509
3611
  ref,
@@ -3518,9 +3620,9 @@ var TableHead = React27.forwardRef(({ className, ...props }, ref) => {
3518
3620
  );
3519
3621
  });
3520
3622
  TableHead.displayName = "TableHead";
3521
- var TableCell = React27.forwardRef(({ className, ...props }, ref) => {
3623
+ var TableCell = React28.forwardRef(({ className, ...props }, ref) => {
3522
3624
  const size = useTableSize();
3523
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3625
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3524
3626
  "td",
3525
3627
  {
3526
3628
  ref,
@@ -3535,7 +3637,7 @@ var TableCell = React27.forwardRef(({ className, ...props }, ref) => {
3535
3637
  );
3536
3638
  });
3537
3639
  TableCell.displayName = "TableCell";
3538
- var TableCaption = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3640
+ var TableCaption = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3539
3641
  "caption",
3540
3642
  {
3541
3643
  ref,
@@ -3548,11 +3650,11 @@ TableCaption.displayName = "TableCaption";
3548
3650
 
3549
3651
  // src/tabs.tsx
3550
3652
  var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"), 1);
3551
- var React28 = __toESM(require("react"), 1);
3552
- var import_jsx_runtime36 = require("react/jsx-runtime");
3653
+ var React29 = __toESM(require("react"), 1);
3654
+ var import_jsx_runtime38 = require("react/jsx-runtime");
3553
3655
  var Tabs = TabsPrimitive.Root;
3554
3656
  var TABS_TRIGGER_BASE = "inline-flex items-center justify-center whitespace-nowrap rounded-md px-3 py-1 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm";
3555
- var TabsList = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3657
+ var TabsList = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3556
3658
  TabsPrimitive.List,
3557
3659
  {
3558
3660
  ref,
@@ -3565,7 +3667,7 @@ var TabsList = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3565
3667
  }
3566
3668
  ));
3567
3669
  TabsList.displayName = TabsPrimitive.List.displayName;
3568
- var TabsTrigger = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3670
+ var TabsTrigger = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3569
3671
  TabsPrimitive.Trigger,
3570
3672
  {
3571
3673
  ref,
@@ -3579,7 +3681,7 @@ var TabsTrigger = React28.forwardRef(({ className, ...props }, ref) => /* @__PUR
3579
3681
  }
3580
3682
  ));
3581
3683
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
3582
- var TabsTriggerCore = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3684
+ var TabsTriggerCore = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3583
3685
  TabsPrimitive.Trigger,
3584
3686
  {
3585
3687
  ref,
@@ -3589,7 +3691,7 @@ var TabsTriggerCore = React28.forwardRef(({ className, ...props }, ref) => /* @_
3589
3691
  }
3590
3692
  ));
3591
3693
  TabsTriggerCore.displayName = TabsPrimitive.Trigger.displayName;
3592
- var TabsContent = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3694
+ var TabsContent = React29.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3593
3695
  TabsPrimitive.Content,
3594
3696
  {
3595
3697
  ref,
@@ -3605,8 +3707,8 @@ var TabsContent = React28.forwardRef(({ className, ...props }, ref) => /* @__PUR
3605
3707
  TabsContent.displayName = TabsPrimitive.Content.displayName;
3606
3708
 
3607
3709
  // src/textarea.tsx
3608
- var React29 = __toESM(require("react"), 1);
3609
- var import_jsx_runtime37 = require("react/jsx-runtime");
3710
+ var React30 = __toESM(require("react"), 1);
3711
+ var import_jsx_runtime39 = require("react/jsx-runtime");
3610
3712
  var FILL_HEIGHT_REGEX = /(?:^|\s)(h-full|h-dvh|flex-1|grow)(?:\s|$)/;
3611
3713
  var FILL_WIDTH_REGEX = /(?:^|\s)(w-full|w-screen)(?:\s|$)/;
3612
3714
  function getStretchClasses(className) {
@@ -3619,7 +3721,7 @@ function getStretchClasses(className) {
3619
3721
  var TEXTAREA_ELEVATED_CLASS = "flex h-auto w-full rounded-md border border-input bg-background px-3 py-2 text-sm text-foreground shadow-textarea transition duration-400 placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-[2px] focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50";
3620
3722
  var TEXTAREA_CONTROL_CLASS = "flex w-full rounded-md border border-input bg-transparent px-3 py-2 text-sm text-foreground shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50";
3621
3723
  function useAutoGrow(ref, value, autoGrow = false, minHeight, maxHeight) {
3622
- React29.useEffect(() => {
3724
+ React30.useEffect(() => {
3623
3725
  if (!autoGrow || !ref.current) return;
3624
3726
  const textarea = ref.current;
3625
3727
  textarea.style.height = "auto";
@@ -3635,8 +3737,8 @@ function useAutoGrow(ref, value, autoGrow = false, minHeight, maxHeight) {
3635
3737
  }, [value, autoGrow, minHeight, maxHeight, ref]);
3636
3738
  }
3637
3739
  function useMergedTextareaRef(forwarded) {
3638
- const internal = React29.useRef(null);
3639
- const callback = React29.useCallback(
3740
+ const internal = React30.useRef(null);
3741
+ const callback = React30.useCallback(
3640
3742
  (node) => {
3641
3743
  internal.current = node;
3642
3744
  if (typeof forwarded === "function") forwarded(node);
@@ -3653,13 +3755,13 @@ function boxStyle(minHeight, maxHeight) {
3653
3755
  maxHeight: maxHeight ? `${maxHeight}px` : void 0
3654
3756
  };
3655
3757
  }
3656
- var Textarea = React29.forwardRef(
3758
+ var Textarea = React30.forwardRef(
3657
3759
  ({ className, autoGrow, minHeight, maxHeight, wrapperClassName, ...props }, forwarded) => {
3658
3760
  const { ref, callback } = useMergedTextareaRef(forwarded);
3659
3761
  const stretchClasses = getStretchClasses(className);
3660
3762
  const needsWrapper = Boolean(wrapperClassName || stretchClasses);
3661
3763
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3662
- const textarea = /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3764
+ const textarea = /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3663
3765
  "textarea",
3664
3766
  {
3665
3767
  ref: callback,
@@ -3675,15 +3777,15 @@ var Textarea = React29.forwardRef(
3675
3777
  }
3676
3778
  );
3677
3779
  if (!needsWrapper) return textarea;
3678
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3780
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3679
3781
  }
3680
3782
  );
3681
3783
  Textarea.displayName = "Textarea";
3682
- var BasicTextarea = React29.forwardRef(
3784
+ var BasicTextarea = React30.forwardRef(
3683
3785
  ({ className, autoGrow, minHeight, maxHeight, ...props }, forwarded) => {
3684
3786
  const { ref, callback } = useMergedTextareaRef(forwarded);
3685
3787
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3686
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3788
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3687
3789
  "textarea",
3688
3790
  {
3689
3791
  ref: callback,
@@ -3701,7 +3803,7 @@ var BasicTextarea = React29.forwardRef(
3701
3803
  }
3702
3804
  );
3703
3805
  BasicTextarea.displayName = "BasicTextarea";
3704
- var TextareaWithPrefix = React29.forwardRef(
3806
+ var TextareaWithPrefix = React30.forwardRef(
3705
3807
  ({
3706
3808
  prefix,
3707
3809
  className,
@@ -3713,13 +3815,13 @@ var TextareaWithPrefix = React29.forwardRef(
3713
3815
  }, forwarded) => {
3714
3816
  const { ref, callback } = useMergedTextareaRef(forwarded);
3715
3817
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3716
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3818
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
3717
3819
  "div",
3718
3820
  {
3719
3821
  className: cn("relative", getStretchClasses(className), wrapperClassName),
3720
3822
  children: [
3721
- prefix ? /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
3722
- /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3823
+ prefix ? /* @__PURE__ */ (0, import_jsx_runtime39.jsx)("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
3824
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3723
3825
  "textarea",
3724
3826
  {
3725
3827
  ref: callback,
@@ -3798,14 +3900,14 @@ function useScrollFade() {
3798
3900
 
3799
3901
  // src/hover-card.tsx
3800
3902
  var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"), 1);
3801
- var React30 = __toESM(require("react"), 1);
3802
- var import_jsx_runtime38 = require("react/jsx-runtime");
3903
+ var React31 = __toESM(require("react"), 1);
3904
+ var import_jsx_runtime40 = require("react/jsx-runtime");
3803
3905
  var HoverCard = HoverCardPrimitive.Root;
3804
3906
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
3805
- var HoverCardContent = React30.forwardRef(
3907
+ var HoverCardContent = React31.forwardRef(
3806
3908
  ({ className, align = "center", sideOffset = 4, container, animated = true, ...props }, ref) => {
3807
3909
  const resolved = usePortalContainer(container);
3808
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3910
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3809
3911
  HoverCardPrimitive.Content,
3810
3912
  {
3811
3913
  ref,
@@ -3826,9 +3928,9 @@ HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
3826
3928
 
3827
3929
  // src/radio-group.tsx
3828
3930
  var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"), 1);
3829
- var React31 = __toESM(require("react"), 1);
3830
- var import_jsx_runtime39 = require("react/jsx-runtime");
3831
- var RadioGroupSizeContext = React31.createContext("md");
3931
+ var React32 = __toESM(require("react"), 1);
3932
+ var import_jsx_runtime41 = require("react/jsx-runtime");
3933
+ var RadioGroupSizeContext = React32.createContext("md");
3832
3934
  var CONTROL_CLASSES = {
3833
3935
  sm: "h-3.5 w-3.5",
3834
3936
  md: "h-4 w-4",
@@ -3839,7 +3941,7 @@ var DOT_CLASSES = {
3839
3941
  md: "h-1.5 w-1.5",
3840
3942
  lg: "h-2 w-2"
3841
3943
  };
3842
- var RadioGroup3 = React31.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3944
+ var RadioGroup3 = React32.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3843
3945
  RadioGroupPrimitive.Root,
3844
3946
  {
3845
3947
  ref,
@@ -3849,10 +3951,10 @@ var RadioGroup3 = React31.forwardRef(({ className, size = "md", ...props }, ref)
3849
3951
  }
3850
3952
  ) }));
3851
3953
  RadioGroup3.displayName = RadioGroupPrimitive.Root.displayName;
3852
- var RadioGroupItem = React31.forwardRef(({ className, size, ...props }, ref) => {
3853
- const groupSize = React31.useContext(RadioGroupSizeContext);
3954
+ var RadioGroupItem = React32.forwardRef(({ className, size, ...props }, ref) => {
3955
+ const groupSize = React32.useContext(RadioGroupSizeContext);
3854
3956
  const resolved = size ?? groupSize;
3855
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3957
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3856
3958
  RadioGroupPrimitive.Item,
3857
3959
  {
3858
3960
  ref,
@@ -3869,7 +3971,7 @@ var RadioGroupItem = React31.forwardRef(({ className, size, ...props }, ref) =>
3869
3971
  className
3870
3972
  ),
3871
3973
  ...props,
3872
- children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3974
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3873
3975
  "div",
3874
3976
  {
3875
3977
  className: cn("rounded-full bg-primary-foreground", DOT_CLASSES[resolved])
@@ -3882,7 +3984,7 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
3882
3984
 
3883
3985
  // src/resizable.tsx
3884
3986
  var import_react_resizable_panels = require("react-resizable-panels");
3885
- var import_jsx_runtime40 = require("react/jsx-runtime");
3987
+ var import_jsx_runtime42 = require("react/jsx-runtime");
3886
3988
  var HANDLE_SIZES = {
3887
3989
  xs: "w-0.5 [&[aria-orientation=horizontal]]:h-0.5 [&[aria-orientation=horizontal]]:w-full",
3888
3990
  sm: "w-1 [&[aria-orientation=horizontal]]:h-1 [&[aria-orientation=horizontal]]:w-full",
@@ -3896,7 +3998,7 @@ var HANDLE_SIZES = {
3896
3998
  var ResizablePanelGroup = ({
3897
3999
  className,
3898
4000
  ...props
3899
- }) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
4001
+ }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3900
4002
  import_react_resizable_panels.Group,
3901
4003
  {
3902
4004
  "data-slot": "resizable-group",
@@ -3911,7 +4013,7 @@ var ResizableHandle = ({
3911
4013
  size = "xs",
3912
4014
  className,
3913
4015
  ...props
3914
- }) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
4016
+ }) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3915
4017
  import_react_resizable_panels.Separator,
3916
4018
  {
3917
4019
  "data-slot": "resizable-handle",
@@ -3931,15 +4033,15 @@ var ResizableHandle = ({
3931
4033
  className
3932
4034
  ),
3933
4035
  ...props,
3934
- children: withHandle ? /* @__PURE__ */ (0, import_jsx_runtime40.jsx)("div", { className: "z-10 flex h-8 w-4 items-center justify-center rounded-sm border bg-border group-aria-[orientation=horizontal]/handle:h-4 group-aria-[orientation=horizontal]/handle:w-8", children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
4036
+ children: withHandle ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)("div", { className: "z-10 flex h-8 w-4 items-center justify-center rounded-sm border bg-border group-aria-[orientation=horizontal]/handle:h-4 group-aria-[orientation=horizontal]/handle:w-8", children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
3935
4037
  }
3936
4038
  );
3937
4039
  ResizableHandle.displayName = "ResizableHandle";
3938
4040
 
3939
4041
  // src/slider.tsx
3940
4042
  var SliderPrimitive = __toESM(require("@radix-ui/react-slider"), 1);
3941
- var React32 = __toESM(require("react"), 1);
3942
- var import_jsx_runtime41 = require("react/jsx-runtime");
4043
+ var React33 = __toESM(require("react"), 1);
4044
+ var import_jsx_runtime43 = require("react/jsx-runtime");
3943
4045
  var TRACK_CLASSES = {
3944
4046
  sm: "h-1",
3945
4047
  md: "h-1.5",
@@ -3950,12 +4052,12 @@ var THUMB_CLASSES = {
3950
4052
  md: "h-4 w-4",
3951
4053
  lg: "h-5 w-5"
3952
4054
  };
3953
- var Slider = React32.forwardRef(({ className, size = "md", ...props }, ref) => {
4055
+ var Slider = React33.forwardRef(({ className, size = "md", ...props }, ref) => {
3954
4056
  const thumbCount = Math.max(
3955
4057
  1,
3956
4058
  (props.value ?? props.defaultValue ?? [0]).length
3957
4059
  );
3958
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
4060
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
3959
4061
  SliderPrimitive.Root,
3960
4062
  {
3961
4063
  ref,
@@ -3967,7 +4069,7 @@ var Slider = React32.forwardRef(({ className, size = "md", ...props }, ref) => {
3967
4069
  ),
3968
4070
  ...props,
3969
4071
  children: [
3970
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
4072
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3971
4073
  SliderPrimitive.Track,
3972
4074
  {
3973
4075
  "data-slot": "slider-track",
@@ -3976,7 +4078,7 @@ var Slider = React32.forwardRef(({ className, size = "md", ...props }, ref) => {
3976
4078
  TRACK_CLASSES[size],
3977
4079
  "data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
3978
4080
  ),
3979
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
4081
+ children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3980
4082
  SliderPrimitive.Range,
3981
4083
  {
3982
4084
  "data-slot": "slider-range",
@@ -3985,7 +4087,7 @@ var Slider = React32.forwardRef(({ className, size = "md", ...props }, ref) => {
3985
4087
  )
3986
4088
  }
3987
4089
  ),
3988
- Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
4090
+ Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3989
4091
  SliderPrimitive.Thumb,
3990
4092
  {
3991
4093
  "data-slot": "slider-thumb",
@@ -4012,8 +4114,8 @@ Slider.displayName = SliderPrimitive.Root.displayName;
4012
4114
  var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
4013
4115
  var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"), 1);
4014
4116
  var import_class_variance_authority6 = require("class-variance-authority");
4015
- var React33 = __toESM(require("react"), 1);
4016
- var import_jsx_runtime42 = require("react/jsx-runtime");
4117
+ var React34 = __toESM(require("react"), 1);
4118
+ var import_jsx_runtime44 = require("react/jsx-runtime");
4017
4119
  var toggleVariants = (0, import_class_variance_authority6.cva)(
4018
4120
  "inline-flex cursor-pointer items-center justify-center gap-2 rounded-md text-sm font-medium transition-colors hover:bg-muted hover:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 data-[state=on]:bg-accent data-[state=on]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
4019
4121
  {
@@ -4034,7 +4136,7 @@ var toggleVariants = (0, import_class_variance_authority6.cva)(
4034
4136
  }
4035
4137
  }
4036
4138
  );
4037
- var Toggle = React33.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4139
+ var Toggle = React34.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4038
4140
  TogglePrimitive.Root,
4039
4141
  {
4040
4142
  ref,
@@ -4044,21 +4146,21 @@ var Toggle = React33.forwardRef(({ className, variant, size, ...props }, ref) =>
4044
4146
  }
4045
4147
  ));
4046
4148
  Toggle.displayName = TogglePrimitive.Root.displayName;
4047
- var ToggleGroupContext = React33.createContext({ size: "default", variant: "default" });
4048
- var ToggleGroup = React33.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4149
+ var ToggleGroupContext = React34.createContext({ size: "default", variant: "default" });
4150
+ var ToggleGroup = React34.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4049
4151
  ToggleGroupPrimitive.Root,
4050
4152
  {
4051
4153
  ref,
4052
4154
  "data-slot": "toggle-group",
4053
4155
  className: cn("flex items-center justify-center gap-1", className),
4054
4156
  ...props,
4055
- children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
4157
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
4056
4158
  }
4057
4159
  ));
4058
4160
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
4059
- var ToggleGroupItem = React33.forwardRef(({ className, children, variant, size, ...props }, ref) => {
4060
- const context = React33.useContext(ToggleGroupContext);
4061
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4161
+ var ToggleGroupItem = React34.forwardRef(({ className, children, variant, size, ...props }, ref) => {
4162
+ const context = React34.useContext(ToggleGroupContext);
4163
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4062
4164
  ToggleGroupPrimitive.Item,
4063
4165
  {
4064
4166
  ref,
@@ -4079,14 +4181,14 @@ ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
4079
4181
 
4080
4182
  // src/tooltip.tsx
4081
4183
  var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
4082
- var React34 = __toESM(require("react"), 1);
4083
- var import_jsx_runtime43 = require("react/jsx-runtime");
4184
+ var React35 = __toESM(require("react"), 1);
4185
+ var import_jsx_runtime45 = require("react/jsx-runtime");
4084
4186
  var TooltipProvider = TooltipPrimitive.Provider;
4085
4187
  var Tooltip = TooltipPrimitive.Root;
4086
4188
  var TooltipTrigger = TooltipPrimitive.Trigger;
4087
- var TooltipContent = React34.forwardRef(({ className, sideOffset = 4, container, animated = true, ...props }, ref) => {
4189
+ var TooltipContent = React35.forwardRef(({ className, sideOffset = 4, container, animated = true, ...props }, ref) => {
4088
4190
  const resolved = usePortalContainer(container);
4089
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
4191
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4090
4192
  TooltipPrimitive.Content,
4091
4193
  {
4092
4194
  ref,