@ai-matrx/design-system 0.8.0 → 0.9.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
@@ -1283,22 +1283,36 @@ Checkbox.displayName = CheckboxPrimitive.Root.displayName;
1283
1283
 
1284
1284
  // src/collapsible.tsx
1285
1285
  var CollapsiblePrimitive = __toESM(require("@radix-ui/react-collapsible"), 1);
1286
+ var React11 = __toESM(require("react"), 1);
1287
+ var import_jsx_runtime14 = require("react/jsx-runtime");
1286
1288
  var Collapsible = CollapsiblePrimitive.Root;
1287
1289
  var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
1288
- var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
1290
+ var CollapsibleContent2 = React11.forwardRef(({ className, animated = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1291
+ CollapsiblePrimitive.CollapsibleContent,
1292
+ {
1293
+ ref,
1294
+ "data-slot": "collapsible-content",
1295
+ className: cn(
1296
+ animated && "matrx-collapsible-content overflow-hidden",
1297
+ className
1298
+ ),
1299
+ ...props
1300
+ }
1301
+ ));
1302
+ CollapsibleContent2.displayName = "CollapsibleContent";
1289
1303
 
1290
1304
  // src/command.tsx
1291
1305
  var DialogPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
1292
1306
  var import_cmdk = require("cmdk");
1293
- var React12 = __toESM(require("react"), 1);
1307
+ var React13 = __toESM(require("react"), 1);
1294
1308
 
1295
1309
  // src/use-is-mobile.ts
1296
- var React11 = __toESM(require("react"), 1);
1310
+ var React12 = __toESM(require("react"), 1);
1297
1311
  var MOBILE_BREAKPOINT = 768;
1298
1312
  function useIsMobile() {
1299
- const [isMobile, setIsMobile] = React11.useState(false);
1300
- const [hasMounted, setHasMounted] = React11.useState(false);
1301
- React11.useEffect(() => {
1313
+ const [isMobile, setIsMobile] = React12.useState(false);
1314
+ const [hasMounted, setHasMounted] = React12.useState(false);
1315
+ React12.useEffect(() => {
1302
1316
  setHasMounted(true);
1303
1317
  const onChange = () => {
1304
1318
  setIsMobile(window.innerWidth < MOBILE_BREAKPOINT);
@@ -1318,8 +1332,8 @@ function useIsMobile() {
1318
1332
  }
1319
1333
 
1320
1334
  // src/command.tsx
1321
- var import_jsx_runtime14 = require("react/jsx-runtime");
1322
- var Command = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1335
+ var import_jsx_runtime15 = require("react/jsx-runtime");
1336
+ var Command = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1323
1337
  import_cmdk.Command,
1324
1338
  {
1325
1339
  ref,
@@ -1334,18 +1348,18 @@ Command.displayName = import_cmdk.Command.displayName;
1334
1348
  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 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg";
1335
1349
  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 duration-200 rounded-t-2xl rounded-b-none overflow-y-auto overscroll-contain data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom";
1336
1350
  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";
1337
- var CommandDialogContent = React12.forwardRef(({ className, children, container, ...props }, ref) => {
1351
+ var CommandDialogContent = React13.forwardRef(({ className, children, container, ...props }, ref) => {
1338
1352
  const isMobile = useIsMobile();
1339
1353
  const isModal = useRadixDialogModal();
1340
1354
  const portalContainer = usePortalContainer(container);
1341
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(DialogPrimitive.Portal, { container: portalContainer, children: [
1342
- isModal ? /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1355
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DialogPrimitive.Portal, { container: portalContainer, children: [
1356
+ isModal ? /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1343
1357
  DialogPrimitive.Overlay,
1344
1358
  {
1345
1359
  className: "fixed inset-0 z-[10000] bg-[var(--matrx-overlay-scrim-soft)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0"
1346
1360
  }
1347
1361
  ) : null,
1348
- /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
1362
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1349
1363
  DialogPrimitive.Content,
1350
1364
  {
1351
1365
  ref,
@@ -1360,9 +1374,9 @@ var CommandDialogContent = React12.forwardRef(({ className, children, container,
1360
1374
  ...props,
1361
1375
  children: [
1362
1376
  children,
1363
- /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(DialogPrimitive.Close, { className: "absolute right-2 top-4 flex h-10 w-10 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", children: [
1364
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(XIcon, { className: "h-4 w-4" }),
1365
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)("span", { className: "sr-only", children: "Close" })
1377
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(DialogPrimitive.Close, { className: "absolute right-2 top-4 flex h-10 w-10 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", children: [
1378
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(XIcon, { className: "h-4 w-4" }),
1379
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "sr-only", children: "Close" })
1366
1380
  ] })
1367
1381
  ]
1368
1382
  }
@@ -1376,21 +1390,21 @@ var CommandDialog = ({
1376
1390
  ...props
1377
1391
  }) => {
1378
1392
  const modal = props.modal ?? true;
1379
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DialogPrimitive.Root, { ...props, modal, children: /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)(
1393
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DialogPrimitive.Root, { ...props, modal, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1380
1394
  CommandDialogContent,
1381
1395
  {
1382
1396
  className: "overflow-hidden p-0",
1383
1397
  ...container !== void 0 ? { container } : {},
1384
1398
  children: [
1385
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(DialogPrimitive.Title, { className: "sr-only" }),
1386
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children })
1399
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DialogPrimitive.Title, { className: "sr-only" }),
1400
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(Command, { className: "[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5", children })
1387
1401
  ]
1388
1402
  }
1389
1403
  ) }) });
1390
1404
  };
1391
- var CommandInput = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsxs)("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
1392
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(MagnifyingGlassIcon, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
1393
- /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1405
+ var CommandInput = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
1406
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(MagnifyingGlassIcon, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
1407
+ /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1394
1408
  import_cmdk.Command.Input,
1395
1409
  {
1396
1410
  ref,
@@ -1403,7 +1417,7 @@ var CommandInput = React12.forwardRef(({ className, ...props }, ref) => /* @__PU
1403
1417
  )
1404
1418
  ] }));
1405
1419
  CommandInput.displayName = import_cmdk.Command.Input.displayName;
1406
- var CommandList = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1420
+ var CommandList = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1407
1421
  import_cmdk.Command.List,
1408
1422
  {
1409
1423
  ref,
@@ -1412,7 +1426,7 @@ var CommandList = React12.forwardRef(({ className, ...props }, ref) => /* @__PUR
1412
1426
  }
1413
1427
  ));
1414
1428
  CommandList.displayName = import_cmdk.Command.List.displayName;
1415
- var CommandEmpty = React12.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1429
+ var CommandEmpty = React13.forwardRef((props, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1416
1430
  import_cmdk.Command.Empty,
1417
1431
  {
1418
1432
  ref,
@@ -1421,7 +1435,7 @@ var CommandEmpty = React12.forwardRef((props, ref) => /* @__PURE__ */ (0, import
1421
1435
  }
1422
1436
  ));
1423
1437
  CommandEmpty.displayName = import_cmdk.Command.Empty.displayName;
1424
- var CommandGroup = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1438
+ var CommandGroup = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1425
1439
  import_cmdk.Command.Group,
1426
1440
  {
1427
1441
  ref,
@@ -1433,7 +1447,7 @@ var CommandGroup = React12.forwardRef(({ className, ...props }, ref) => /* @__PU
1433
1447
  }
1434
1448
  ));
1435
1449
  CommandGroup.displayName = import_cmdk.Command.Group.displayName;
1436
- var CommandSeparator = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1450
+ var CommandSeparator = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1437
1451
  import_cmdk.Command.Separator,
1438
1452
  {
1439
1453
  ref,
@@ -1442,7 +1456,7 @@ var CommandSeparator = React12.forwardRef(({ className, ...props }, ref) => /* @
1442
1456
  }
1443
1457
  ));
1444
1458
  CommandSeparator.displayName = import_cmdk.Command.Separator.displayName;
1445
- var CommandItem = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1459
+ var CommandItem = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1446
1460
  import_cmdk.Command.Item,
1447
1461
  {
1448
1462
  ref,
@@ -1458,7 +1472,7 @@ var CommandShortcut = ({
1458
1472
  className,
1459
1473
  ...props
1460
1474
  }) => {
1461
- return /* @__PURE__ */ (0, import_jsx_runtime14.jsx)(
1475
+ return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1462
1476
  "span",
1463
1477
  {
1464
1478
  className: cn(
@@ -1473,8 +1487,8 @@ CommandShortcut.displayName = "CommandShortcut";
1473
1487
 
1474
1488
  // src/context-menu.tsx
1475
1489
  var ContextMenuPrimitive = __toESM(require("@radix-ui/react-context-menu"), 1);
1476
- var React13 = __toESM(require("react"), 1);
1477
- var import_jsx_runtime15 = require("react/jsx-runtime");
1490
+ var React14 = __toESM(require("react"), 1);
1491
+ var import_jsx_runtime16 = require("react/jsx-runtime");
1478
1492
  var ContextMenu = ContextMenuPrimitive.Root;
1479
1493
  var ContextMenuTrigger = ContextMenuPrimitive.Trigger;
1480
1494
  var ContextMenuGroup = ContextMenuPrimitive.Group;
@@ -1485,7 +1499,7 @@ var SURFACE_CLASS = "z-50 min-w-[8rem] max-h-[var(--radix-context-menu-content-a
1485
1499
  var MOTION_CLASS = "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2";
1486
1500
  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";
1487
1501
  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";
1488
- var ContextMenuSubTrigger = React13.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1502
+ var ContextMenuSubTrigger = React14.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1489
1503
  ContextMenuPrimitive.SubTrigger,
1490
1504
  {
1491
1505
  ref,
@@ -1498,12 +1512,12 @@ var ContextMenuSubTrigger = React13.forwardRef(({ className, inset, children, ..
1498
1512
  ...props,
1499
1513
  children: [
1500
1514
  children,
1501
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
1515
+ /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
1502
1516
  ]
1503
1517
  }
1504
1518
  ));
1505
1519
  ContextMenuSubTrigger.displayName = ContextMenuPrimitive.SubTrigger.displayName;
1506
- var ContextMenuSubContent = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1520
+ var ContextMenuSubContent = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1507
1521
  ContextMenuPrimitive.SubContent,
1508
1522
  {
1509
1523
  ref,
@@ -1513,9 +1527,9 @@ var ContextMenuSubContent = React13.forwardRef(({ className, ...props }, ref) =>
1513
1527
  }
1514
1528
  ));
1515
1529
  ContextMenuSubContent.displayName = ContextMenuPrimitive.SubContent.displayName;
1516
- var ContextMenuContent = React13.forwardRef(({ className, container, ...props }, ref) => {
1530
+ var ContextMenuContent = React14.forwardRef(({ className, container, ...props }, ref) => {
1517
1531
  const portalContainer = usePortalContainer(container);
1518
- return /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1532
+ return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(ContextMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1519
1533
  ContextMenuPrimitive.Content,
1520
1534
  {
1521
1535
  ref,
@@ -1526,7 +1540,7 @@ var ContextMenuContent = React13.forwardRef(({ className, container, ...props },
1526
1540
  ) });
1527
1541
  });
1528
1542
  ContextMenuContent.displayName = ContextMenuPrimitive.Content.displayName;
1529
- var ContextMenuItem = React13.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1543
+ var ContextMenuItem = React14.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1530
1544
  ContextMenuPrimitive.Item,
1531
1545
  {
1532
1546
  ref,
@@ -1541,7 +1555,7 @@ var ContextMenuItem = React13.forwardRef(({ className, inset, ...props }, ref) =
1541
1555
  }
1542
1556
  ));
1543
1557
  ContextMenuItem.displayName = ContextMenuPrimitive.Item.displayName;
1544
- var ContextMenuCheckboxItem = React13.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1558
+ var ContextMenuCheckboxItem = React14.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1545
1559
  ContextMenuPrimitive.CheckboxItem,
1546
1560
  {
1547
1561
  ref,
@@ -1549,13 +1563,13 @@ var ContextMenuCheckboxItem = React13.forwardRef(({ className, children, ...prop
1549
1563
  className: cn(INDICATOR_ITEM_CLASS, className),
1550
1564
  ...props,
1551
1565
  children: [
1552
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
1566
+ /* @__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" }) }) }),
1553
1567
  children
1554
1568
  ]
1555
1569
  }
1556
1570
  ));
1557
1571
  ContextMenuCheckboxItem.displayName = ContextMenuPrimitive.CheckboxItem.displayName;
1558
- var ContextMenuRadioItem = React13.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsxs)(
1572
+ var ContextMenuRadioItem = React14.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsxs)(
1559
1573
  ContextMenuPrimitive.RadioItem,
1560
1574
  {
1561
1575
  ref,
@@ -1563,13 +1577,13 @@ var ContextMenuRadioItem = React13.forwardRef(({ className, children, ...props }
1563
1577
  className: cn(INDICATOR_ITEM_CLASS, className),
1564
1578
  ...props,
1565
1579
  children: [
1566
- /* @__PURE__ */ (0, import_jsx_runtime15.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(ContextMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
1580
+ /* @__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" }) }) }),
1567
1581
  children
1568
1582
  ]
1569
1583
  }
1570
1584
  ));
1571
1585
  ContextMenuRadioItem.displayName = ContextMenuPrimitive.RadioItem.displayName;
1572
- var ContextMenuLabel = React13.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1586
+ var ContextMenuLabel = React14.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1573
1587
  ContextMenuPrimitive.Label,
1574
1588
  {
1575
1589
  ref,
@@ -1583,7 +1597,7 @@ var ContextMenuLabel = React13.forwardRef(({ className, inset, ...props }, ref)
1583
1597
  }
1584
1598
  ));
1585
1599
  ContextMenuLabel.displayName = ContextMenuPrimitive.Label.displayName;
1586
- var ContextMenuSeparator = React13.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1600
+ var ContextMenuSeparator = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1587
1601
  ContextMenuPrimitive.Separator,
1588
1602
  {
1589
1603
  ref,
@@ -1596,7 +1610,7 @@ ContextMenuSeparator.displayName = ContextMenuPrimitive.Separator.displayName;
1596
1610
  var ContextMenuShortcut = ({
1597
1611
  className,
1598
1612
  ...props
1599
- }) => /* @__PURE__ */ (0, import_jsx_runtime15.jsx)(
1613
+ }) => /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1600
1614
  "span",
1601
1615
  {
1602
1616
  "data-slot": "context-menu-shortcut",
@@ -1611,15 +1625,15 @@ var import_react = require("react");
1611
1625
 
1612
1626
  // src/popover.tsx
1613
1627
  var PopoverPrimitive = __toESM(require("@radix-ui/react-popover"), 1);
1614
- var React14 = __toESM(require("react"), 1);
1615
- var import_jsx_runtime16 = require("react/jsx-runtime");
1628
+ var React15 = __toESM(require("react"), 1);
1629
+ var import_jsx_runtime17 = require("react/jsx-runtime");
1616
1630
  var Popover = PopoverPrimitive.Root;
1617
1631
  var PopoverTrigger = PopoverPrimitive.Trigger;
1618
1632
  var PopoverAnchor = PopoverPrimitive.Anchor;
1619
- var PopoverContent = React14.forwardRef(
1633
+ var PopoverContent = React15.forwardRef(
1620
1634
  ({ className, align = "center", sideOffset = 4, container, ...props }, ref) => {
1621
1635
  const portalContainer = usePortalContainer(container);
1622
- return /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(PopoverPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime16.jsx)(
1636
+ return /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PopoverPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1623
1637
  PopoverPrimitive.Content,
1624
1638
  {
1625
1639
  ref,
@@ -1643,7 +1657,7 @@ var PopoverContent = React14.forwardRef(
1643
1657
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
1644
1658
 
1645
1659
  // src/creatable-picker.tsx
1646
- var import_jsx_runtime17 = require("react/jsx-runtime");
1660
+ var import_jsx_runtime18 = require("react/jsx-runtime");
1647
1661
  function article(noun) {
1648
1662
  return /^[aeiou]/i.test(noun.trim()) ? `an ${noun}` : `a ${noun}`;
1649
1663
  }
@@ -1718,8 +1732,8 @@ function CreatablePicker({
1718
1732
  setBusy(false);
1719
1733
  }
1720
1734
  };
1721
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(Popover, { open, onOpenChange: (next) => next ? setOpen(true) : close(), children: [
1722
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PopoverTrigger, { asChild: true, disabled, children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1735
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(Popover, { open, onOpenChange: (next) => next ? setOpen(true) : close(), children: [
1736
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PopoverTrigger, { asChild: true, disabled, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1723
1737
  "button",
1724
1738
  {
1725
1739
  type: "button",
@@ -1733,12 +1747,12 @@ function CreatablePicker({
1733
1747
  triggerClassName
1734
1748
  ),
1735
1749
  children: [
1736
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 flex-1 truncate", children: selected ? renderSelected ?? selected.render ?? selected.label : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "text-muted-foreground", children: loading ? "Loading\u2026" : placeholder }) }),
1737
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ChevronsUpDownIcon, { className: "size-3.5 shrink-0 opacity-50" })
1750
+ /* @__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 }) }),
1751
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ChevronsUpDownIcon, { className: "size-3.5 shrink-0 opacity-50" })
1738
1752
  ]
1739
1753
  }
1740
1754
  ) }),
1741
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PopoverContent, { align: "start", className: "w-[--radix-popover-trigger-width] min-w-56 p-0", children: /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1755
+ /* @__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)(
1742
1756
  Command,
1743
1757
  {
1744
1758
  filter: (itemValue, search, keywords) => {
@@ -1746,7 +1760,7 @@ function CreatablePicker({
1746
1760
  return haystack.includes(search.toLowerCase()) ? 1 : 0;
1747
1761
  },
1748
1762
  children: [
1749
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1763
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1750
1764
  CommandInput,
1751
1765
  {
1752
1766
  ref: inputRef,
@@ -1758,13 +1772,13 @@ function CreatablePicker({
1758
1772
  placeholder: searchPlaceholder ?? `Search or add ${article(noun)}\u2026`
1759
1773
  }
1760
1774
  ),
1761
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(CommandList, { children: [
1762
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(CommandEmpty, { children: emptyLabel }),
1763
- groups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1775
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(CommandList, { children: [
1776
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(CommandEmpty, { children: emptyLabel }),
1777
+ groups.map((group) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1764
1778
  CommandGroup,
1765
1779
  {
1766
1780
  ...group.heading === void 0 ? {} : { heading: group.heading },
1767
- children: group.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1781
+ children: group.options.map((option) => /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1768
1782
  CommandItem,
1769
1783
  {
1770
1784
  value: option.label,
@@ -1775,7 +1789,7 @@ function CreatablePicker({
1775
1789
  },
1776
1790
  className: "gap-2 text-xs",
1777
1791
  children: [
1778
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(
1792
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1779
1793
  LucideCheckIcon,
1780
1794
  {
1781
1795
  className: cn(
@@ -1784,8 +1798,8 @@ function CreatablePicker({
1784
1798
  )
1785
1799
  }
1786
1800
  ),
1787
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 flex-1 truncate", children: option.render ?? option.label }),
1788
- option.hint ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "shrink-0 text-[10px] text-muted-foreground", children: option.hint }) : null
1801
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 flex-1 truncate", children: option.render ?? option.label }),
1802
+ option.hint ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "shrink-0 text-[10px] text-muted-foreground", children: option.hint }) : null
1789
1803
  ]
1790
1804
  },
1791
1805
  option.value
@@ -1794,9 +1808,9 @@ function CreatablePicker({
1794
1808
  group.heading ?? "__ungrouped__"
1795
1809
  ))
1796
1810
  ] }),
1797
- canCreate ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "space-y-1 border-t border-border p-1", children: [
1798
- createExtra && typed && !exactMatch ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("div", { className: "px-1 pt-0.5", children: typeof createExtra === "function" ? createExtra(typed) : createExtra }) : null,
1799
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1811
+ canCreate ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-1 border-t border-border p-1", children: [
1812
+ createExtra && typed && !exactMatch ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("div", { className: "px-1 pt-0.5", children: typeof createExtra === "function" ? createExtra(typed) : createExtra }) : null,
1813
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1800
1814
  "button",
1801
1815
  {
1802
1816
  type: "button",
@@ -1804,22 +1818,22 @@ function CreatablePicker({
1804
1818
  onClick: () => void create(typed),
1805
1819
  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",
1806
1820
  children: [
1807
- busy ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Loader2Icon, { className: "size-3.5 shrink-0 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1808
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 truncate", children: typed && !exactMatch ? `Create \u201C${typed}\u201D` : `Add ${article(noun)}\u2026` })
1821
+ busy ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Loader2Icon, { className: "size-3.5 shrink-0 animate-spin" }) : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1822
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: typed && !exactMatch ? `Create \u201C${typed}\u201D` : `Add ${article(noun)}\u2026` })
1809
1823
  ]
1810
1824
  }
1811
1825
  ),
1812
- needsName ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("p", { className: "px-2 pb-0.5 text-[11px] leading-snug text-muted-foreground", children: [
1826
+ needsName ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("p", { className: "px-2 pb-0.5 text-[11px] leading-snug text-muted-foreground", children: [
1813
1827
  "Type the name of the ",
1814
1828
  noun,
1815
1829
  " you want to add \u2014 then this creates it."
1816
1830
  ] }) : null
1817
1831
  ] }) : null,
1818
- footerActions?.length || manageAction ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "space-y-0.5 border-t border-border p-1", children: [
1832
+ footerActions?.length || manageAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-0.5 border-t border-border p-1", children: [
1819
1833
  footerActions?.map((action) => {
1820
1834
  const Icon2 = action.icon;
1821
- return /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { children: [
1822
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1835
+ return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { children: [
1836
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1823
1837
  "button",
1824
1838
  {
1825
1839
  type: "button",
@@ -1829,15 +1843,15 @@ function CreatablePicker({
1829
1843
  },
1830
1844
  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",
1831
1845
  children: [
1832
- Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(Icon2, { className: "size-3.5 shrink-0" }) : null,
1833
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 truncate", children: action.label })
1846
+ Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(Icon2, { className: "size-3.5 shrink-0" }) : null,
1847
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: action.label })
1834
1848
  ]
1835
1849
  }
1836
1850
  ),
1837
- action.note ? /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("p", { className: "px-2 pb-1 text-[10px] leading-snug text-muted-foreground", children: action.note }) : null
1851
+ 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
1838
1852
  ] }, action.label);
1839
1853
  }),
1840
- manageAction ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1854
+ manageAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1841
1855
  "a",
1842
1856
  {
1843
1857
  href: manageAction.href,
@@ -1846,18 +1860,18 @@ function CreatablePicker({
1846
1860
  onClick: close,
1847
1861
  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",
1848
1862
  children: [
1849
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(ExternalLinkIcon, { className: "size-3.5 shrink-0" }),
1850
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 truncate", children: manageAction.label })
1863
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(ExternalLinkIcon, { className: "size-3.5 shrink-0" }),
1864
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: manageAction.label })
1851
1865
  ]
1852
1866
  }
1853
1867
  ) : null
1854
1868
  ] }) : null,
1855
- lockedNote ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("div", { className: "space-y-1 border-t border-border p-2", children: [
1856
- /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)("p", { className: "flex gap-1.5 text-[11px] leading-snug text-muted-foreground", children: [
1857
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(LockIcon, { className: "mt-px size-3 shrink-0" }),
1858
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { children: lockedNote })
1869
+ lockedNote ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("div", { className: "space-y-1 border-t border-border p-2", children: [
1870
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)("p", { className: "flex gap-1.5 text-[11px] leading-snug text-muted-foreground", children: [
1871
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(LockIcon, { className: "mt-px size-3 shrink-0" }),
1872
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { children: lockedNote })
1859
1873
  ] }),
1860
- lockedAction ? /* @__PURE__ */ (0, import_jsx_runtime17.jsxs)(
1874
+ lockedAction ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1861
1875
  "button",
1862
1876
  {
1863
1877
  type: "button",
@@ -1867,8 +1881,8 @@ function CreatablePicker({
1867
1881
  },
1868
1882
  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",
1869
1883
  children: [
1870
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1871
- /* @__PURE__ */ (0, import_jsx_runtime17.jsx)("span", { className: "min-w-0 truncate", children: lockedAction.label })
1884
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(PlusIcon, { className: "size-3.5 shrink-0" }),
1885
+ /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "min-w-0 truncate", children: lockedAction.label })
1872
1886
  ]
1873
1887
  }
1874
1888
  ) : null
@@ -1883,14 +1897,14 @@ function CreatablePicker({
1883
1897
  var DialogPrimitive2 = __toESM(require("@radix-ui/react-dialog"), 1);
1884
1898
  var VisuallyHidden2 = __toESM(require("@radix-ui/react-visually-hidden"), 1);
1885
1899
  var import_react_tree3 = require("@ai-matrx/kit/react-tree");
1886
- var React15 = __toESM(require("react"), 1);
1887
- var import_jsx_runtime18 = require("react/jsx-runtime");
1900
+ var React16 = __toESM(require("react"), 1);
1901
+ var import_jsx_runtime19 = require("react/jsx-runtime");
1888
1902
  var Dialog = ({
1889
1903
  children,
1890
1904
  ...props
1891
1905
  }) => {
1892
1906
  const modal = props.modal ?? true;
1893
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DialogPrimitive2.Root, { ...props, modal, children }) });
1907
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Root, { ...props, modal, children }) });
1894
1908
  };
1895
1909
  Dialog.displayName = "Dialog";
1896
1910
  var DialogTrigger = DialogPrimitive2.Trigger;
@@ -1900,12 +1914,12 @@ var DialogPortal = ({
1900
1914
  ...props
1901
1915
  }) => {
1902
1916
  const resolved = usePortalContainer(container);
1903
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DialogPrimitive2.Portal, { container: resolved ?? null, ...props });
1917
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Portal, { container: resolved ?? null, ...props });
1904
1918
  };
1905
1919
  DialogPortal.displayName = "DialogPortal";
1906
- var DialogContainerContext = React15.createContext(null);
1907
- var useDialogContainer = () => React15.useContext(DialogContainerContext);
1908
- var DialogOverlay = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1920
+ var DialogContainerContext = React16.createContext(null);
1921
+ var useDialogContainer = () => React16.useContext(DialogContainerContext);
1922
+ var DialogOverlay = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1909
1923
  DialogPrimitive2.Overlay,
1910
1924
  {
1911
1925
  ref,
@@ -1920,9 +1934,9 @@ var DialogOverlay = React15.forwardRef(({ className, ...props }, ref) => /* @__P
1920
1934
  }
1921
1935
  ));
1922
1936
  DialogOverlay.displayName = DialogPrimitive2.Overlay.displayName;
1923
- var DialogContentPrimitive = React15.forwardRef((props, ref) => {
1937
+ var DialogContentPrimitive = React16.forwardRef((props, ref) => {
1924
1938
  const isModal = useRadixDialogModal();
1925
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1939
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1926
1940
  DialogPrimitive2.Content,
1927
1941
  {
1928
1942
  ...props,
@@ -1935,7 +1949,7 @@ DialogContentPrimitive.displayName = "DialogContentPrimitive";
1935
1949
  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 duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg";
1936
1950
  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 duration-200 rounded-t-2xl rounded-b-none overflow-y-auto overscroll-contain data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:slide-out-to-bottom data-[state=open]:slide-in-from-bottom";
1937
1951
  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";
1938
- var DialogContent = React15.forwardRef(
1952
+ var DialogContent = React16.forwardRef(
1939
1953
  ({
1940
1954
  className,
1941
1955
  children,
@@ -1948,10 +1962,10 @@ var DialogContent = React15.forwardRef(
1948
1962
  const isModal = useRadixDialogModal();
1949
1963
  const injectedContainer = usePortalContainer(container);
1950
1964
  const asSheet = mobileSheet && isMobile;
1951
- const [containerEl, setContainerEl] = React15.useState(
1965
+ const [containerEl, setContainerEl] = React16.useState(
1952
1966
  null
1953
1967
  );
1954
- const mergedRef = React15.useCallback(
1968
+ const mergedRef = React16.useCallback(
1955
1969
  (node) => {
1956
1970
  setContainerEl(node);
1957
1971
  if (typeof ref === "function") ref(node);
@@ -1962,9 +1976,9 @@ var DialogContent = React15.forwardRef(
1962
1976
  );
1963
1977
  const hasTitle = (0, import_react_tree3.treeContainsComponent)(children, DialogTitle) || (0, import_react_tree3.treeContainsComponent)(children, DialogPrimitive2.Title);
1964
1978
  const hasDescription = (0, import_react_tree3.treeContainsComponent)(children, DialogDescription) || (0, import_react_tree3.treeContainsComponent)(children, DialogPrimitive2.Description);
1965
- return /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(DialogPortal, { container, children: [
1966
- isModal ? /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DialogOverlay, {}) : null,
1967
- /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
1979
+ return /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(DialogPortal, { container, children: [
1980
+ isModal ? /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogOverlay, {}) : null,
1981
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
1968
1982
  DialogContentPrimitive,
1969
1983
  {
1970
1984
  ref: mergedRef,
@@ -1982,23 +1996,23 @@ var DialogContent = React15.forwardRef(
1982
1996
  ...hasDescription ? {} : { "aria-describedby": void 0 },
1983
1997
  ...props,
1984
1998
  children: [
1985
- hasTitle ? null : /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(VisuallyHidden2.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DialogPrimitive2.Title, { children: "Dialog" }) }),
1986
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(DialogContainerContext.Provider, { value: containerEl, children: /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
1999
+ hasTitle ? null : /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(VisuallyHidden2.Root, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogPrimitive2.Title, { children: "Dialog" }) }),
2000
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DialogContainerContext.Provider, { value: containerEl, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
1987
2001
  PortalContainerProvider,
1988
2002
  {
1989
2003
  container: containerEl ?? injectedContainer ?? null,
1990
2004
  children
1991
2005
  }
1992
2006
  ) }),
1993
- showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime18.jsxs)(
2007
+ showCloseButton ? /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
1994
2008
  DialogPrimitive2.Close,
1995
2009
  {
1996
2010
  "data-slot": "dialog-close",
1997
2011
  "aria-label": "Close",
1998
2012
  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",
1999
2013
  children: [
2000
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(XIcon, { className: "h-4 w-4" }),
2001
- /* @__PURE__ */ (0, import_jsx_runtime18.jsx)("span", { className: "sr-only", children: "Close" })
2014
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(XIcon, { className: "h-4 w-4" }),
2015
+ /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "sr-only", children: "Close" })
2002
2016
  ]
2003
2017
  }
2004
2018
  ) : null
@@ -2012,7 +2026,7 @@ DialogContent.displayName = DialogPrimitive2.Content.displayName;
2012
2026
  var DialogHeader = ({
2013
2027
  className,
2014
2028
  ...props
2015
- }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2029
+ }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2016
2030
  "div",
2017
2031
  {
2018
2032
  "data-slot": "dialog-header",
@@ -2029,7 +2043,7 @@ DialogHeader.displayName = "DialogHeader";
2029
2043
  var DialogFooter = ({
2030
2044
  className,
2031
2045
  ...props
2032
- }) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2046
+ }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2033
2047
  "div",
2034
2048
  {
2035
2049
  "data-slot": "dialog-footer",
@@ -2043,7 +2057,7 @@ var DialogFooter = ({
2043
2057
  }
2044
2058
  );
2045
2059
  DialogFooter.displayName = "DialogFooter";
2046
- var DialogTitle = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2060
+ var DialogTitle = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2047
2061
  DialogPrimitive2.Title,
2048
2062
  {
2049
2063
  ref,
@@ -2053,7 +2067,7 @@ var DialogTitle = React15.forwardRef(({ className, ...props }, ref) => /* @__PUR
2053
2067
  }
2054
2068
  ));
2055
2069
  DialogTitle.displayName = DialogPrimitive2.Title.displayName;
2056
- var DialogDescription = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime18.jsx)(
2070
+ var DialogDescription = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2057
2071
  DialogPrimitive2.Description,
2058
2072
  {
2059
2073
  ref,
@@ -2066,8 +2080,8 @@ DialogDescription.displayName = DialogPrimitive2.Description.displayName;
2066
2080
 
2067
2081
  // src/dropdown-menu.tsx
2068
2082
  var DropdownMenuPrimitive = __toESM(require("@radix-ui/react-dropdown-menu"), 1);
2069
- var React16 = __toESM(require("react"), 1);
2070
- var import_jsx_runtime19 = require("react/jsx-runtime");
2083
+ var React17 = __toESM(require("react"), 1);
2084
+ var import_jsx_runtime20 = require("react/jsx-runtime");
2071
2085
  var DropdownMenu = DropdownMenuPrimitive.Root;
2072
2086
  var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
2073
2087
  var DropdownMenuGroup = DropdownMenuPrimitive.Group;
@@ -2078,7 +2092,7 @@ var MENU_SURFACE_CLASS = "z-[10001] min-w-[8rem] max-h-[var(--radix-dropdown-men
2078
2092
  var MENU_MOTION_CLASS = "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2";
2079
2093
  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";
2080
2094
  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";
2081
- var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
2095
+ var DropdownMenuSubTrigger = React17.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2082
2096
  DropdownMenuPrimitive.SubTrigger,
2083
2097
  {
2084
2098
  ref,
@@ -2091,12 +2105,12 @@ var DropdownMenuSubTrigger = React16.forwardRef(({ className, inset, children, .
2091
2105
  ...props,
2092
2106
  children: [
2093
2107
  children,
2094
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
2108
+ /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(RadixChevronRightIcon, { className: "ml-auto h-4 w-4" })
2095
2109
  ]
2096
2110
  }
2097
2111
  ));
2098
2112
  DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
2099
- var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2113
+ var DropdownMenuSubContent = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2100
2114
  DropdownMenuPrimitive.SubContent,
2101
2115
  {
2102
2116
  ref,
@@ -2106,9 +2120,9 @@ var DropdownMenuSubContent = React16.forwardRef(({ className, ...props }, ref) =
2106
2120
  }
2107
2121
  ));
2108
2122
  DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
2109
- var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
2123
+ var DropdownMenuContent = React17.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
2110
2124
  const portalContainer = usePortalContainer(container);
2111
- return /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2125
+ return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(DropdownMenuPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2112
2126
  DropdownMenuPrimitive.Content,
2113
2127
  {
2114
2128
  ref,
@@ -2125,7 +2139,7 @@ var DropdownMenuContent = React16.forwardRef(({ className, sideOffset = 4, conta
2125
2139
  ) });
2126
2140
  });
2127
2141
  DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
2128
- var DropdownMenuItem = React16.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2142
+ var DropdownMenuItem = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2129
2143
  DropdownMenuPrimitive.Item,
2130
2144
  {
2131
2145
  ref,
@@ -2135,7 +2149,7 @@ var DropdownMenuItem = React16.forwardRef(({ className, inset, ...props }, ref)
2135
2149
  }
2136
2150
  ));
2137
2151
  DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
2138
- var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
2152
+ var DropdownMenuCheckboxItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2139
2153
  DropdownMenuPrimitive.CheckboxItem,
2140
2154
  {
2141
2155
  ref,
@@ -2143,13 +2157,13 @@ var DropdownMenuCheckboxItem = React16.forwardRef(({ className, children, ...pro
2143
2157
  className: cn(MENU_INDICATOR_ITEM_CLASS, className),
2144
2158
  ...props,
2145
2159
  children: [
2146
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
2160
+ /* @__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" }) }) }),
2147
2161
  children
2148
2162
  ]
2149
2163
  }
2150
2164
  ));
2151
2165
  DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
2152
- var DropdownMenuRadioItem = React16.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsxs)(
2166
+ var DropdownMenuRadioItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)(
2153
2167
  DropdownMenuPrimitive.RadioItem,
2154
2168
  {
2155
2169
  ref,
@@ -2157,13 +2171,13 @@ var DropdownMenuRadioItem = React16.forwardRef(({ className, children, ...props
2157
2171
  className: cn(MENU_INDICATOR_ITEM_CLASS, className),
2158
2172
  ...props,
2159
2173
  children: [
2160
- /* @__PURE__ */ (0, import_jsx_runtime19.jsx)("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
2174
+ /* @__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" }) }) }),
2161
2175
  children
2162
2176
  ]
2163
2177
  }
2164
2178
  ));
2165
2179
  DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
2166
- var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2180
+ var DropdownMenuLabel = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2167
2181
  DropdownMenuPrimitive.Label,
2168
2182
  {
2169
2183
  ref,
@@ -2173,7 +2187,7 @@ var DropdownMenuLabel = React16.forwardRef(({ className, inset, ...props }, ref)
2173
2187
  }
2174
2188
  ));
2175
2189
  DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
2176
- var DropdownMenuSeparator = React16.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2190
+ var DropdownMenuSeparator = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2177
2191
  DropdownMenuPrimitive.Separator,
2178
2192
  {
2179
2193
  ref,
@@ -2186,7 +2200,7 @@ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
2186
2200
  var DropdownMenuShortcut = ({
2187
2201
  className,
2188
2202
  ...props
2189
- }) => /* @__PURE__ */ (0, import_jsx_runtime19.jsx)(
2203
+ }) => /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2190
2204
  "span",
2191
2205
  {
2192
2206
  "data-slot": "dropdown-menu-shortcut",
@@ -2198,7 +2212,7 @@ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
2198
2212
 
2199
2213
  // src/editable-label.tsx
2200
2214
  var import_react2 = require("react");
2201
- var import_jsx_runtime20 = require("react/jsx-runtime");
2215
+ var import_jsx_runtime21 = require("react/jsx-runtime");
2202
2216
  function EditableLabel({
2203
2217
  value,
2204
2218
  onCommit,
@@ -2305,8 +2319,8 @@ function EditableLabel({
2305
2319
  setEditing
2306
2320
  ]);
2307
2321
  if (editing) {
2308
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsxs)("span", { className: cn("relative flex min-w-0 flex-1 items-center", className), children: [
2309
- /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2322
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("span", { className: cn("relative flex min-w-0 flex-1 items-center", className), children: [
2323
+ /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2310
2324
  "input",
2311
2325
  {
2312
2326
  ref: inputRef,
@@ -2346,12 +2360,12 @@ function EditableLabel({
2346
2360
  )
2347
2361
  }
2348
2362
  ),
2349
- busy && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(Loader2Icon, { className: "absolute right-1 h-3.5 w-3.5 animate-spin text-muted-foreground" }),
2350
- error && /* @__PURE__ */ (0, import_jsx_runtime20.jsx)("span", { className: "absolute left-0 top-full mt-0.5 whitespace-nowrap text-xs text-destructive", children: error })
2363
+ busy && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(Loader2Icon, { className: "absolute right-1 h-3.5 w-3.5 animate-spin text-muted-foreground" }),
2364
+ 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 })
2351
2365
  ] });
2352
2366
  }
2353
2367
  if (controlled) return null;
2354
- return /* @__PURE__ */ (0, import_jsx_runtime20.jsx)(
2368
+ return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2355
2369
  "button",
2356
2370
  {
2357
2371
  type: "button",
@@ -2385,8 +2399,8 @@ function EditableLabel({
2385
2399
  }
2386
2400
 
2387
2401
  // src/input.tsx
2388
- var React17 = __toESM(require("react"), 1);
2389
- var import_jsx_runtime21 = require("react/jsx-runtime");
2402
+ var React18 = __toESM(require("react"), 1);
2403
+ var import_jsx_runtime22 = require("react/jsx-runtime");
2390
2404
  var getVariantStyles = (variant = "default") => {
2391
2405
  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
2392
2406
  file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground
@@ -2414,9 +2428,9 @@ var getVariantStyles = (variant = "default") => {
2414
2428
  return baseStyles;
2415
2429
  }
2416
2430
  };
2417
- var Input = React17.forwardRef(
2431
+ var Input = React18.forwardRef(
2418
2432
  ({ className, type, variant = "default", ...props }, ref) => {
2419
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2433
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2420
2434
  "input",
2421
2435
  {
2422
2436
  type,
@@ -2428,7 +2442,7 @@ var Input = React17.forwardRef(
2428
2442
  }
2429
2443
  );
2430
2444
  Input.displayName = "Input";
2431
- var EnterInput = React17.forwardRef(
2445
+ var EnterInput = React18.forwardRef(
2432
2446
  ({ onEnter, ...props }, ref) => {
2433
2447
  const handleKeyDown = (e) => {
2434
2448
  if (e.key === "Enter" && onEnter) {
@@ -2436,7 +2450,7 @@ var EnterInput = React17.forwardRef(
2436
2450
  onEnter();
2437
2451
  }
2438
2452
  };
2439
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2453
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2440
2454
  Input,
2441
2455
  {
2442
2456
  ...props,
@@ -2452,11 +2466,11 @@ var EnterInput = React17.forwardRef(
2452
2466
  }
2453
2467
  );
2454
2468
  EnterInput.displayName = "EnterInput";
2455
- var BasicInput = React17.forwardRef(
2469
+ var BasicInput = React18.forwardRef(
2456
2470
  // `variant` is accepted (prop-compatible with Input) but intentionally
2457
2471
  // unused — and destructured so it never leaks onto the DOM element.
2458
2472
  ({ className, type, variant: _variant = "default", ...props }, ref) => {
2459
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2473
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2460
2474
  "input",
2461
2475
  {
2462
2476
  type,
@@ -2471,10 +2485,10 @@ var BasicInput = React17.forwardRef(
2471
2485
  }
2472
2486
  );
2473
2487
  BasicInput.displayName = "BasicInput";
2474
- var InputWithPrefix = React17.forwardRef(({ prefix, className, wrapperClassName, ...props }, ref) => {
2475
- return /* @__PURE__ */ (0, import_jsx_runtime21.jsxs)("div", { className: cn("relative", wrapperClassName), children: [
2476
- prefix && /* @__PURE__ */ (0, import_jsx_runtime21.jsx)("div", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: prefix }),
2477
- /* @__PURE__ */ (0, import_jsx_runtime21.jsx)(
2488
+ var InputWithPrefix = React18.forwardRef(({ prefix, className, wrapperClassName, ...props }, ref) => {
2489
+ return /* @__PURE__ */ (0, import_jsx_runtime22.jsxs)("div", { className: cn("relative", wrapperClassName), children: [
2490
+ prefix && /* @__PURE__ */ (0, import_jsx_runtime22.jsx)("div", { className: "absolute left-3 top-1/2 -translate-y-1/2 text-muted-foreground", children: prefix }),
2491
+ /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2478
2492
  Input,
2479
2493
  {
2480
2494
  ref,
@@ -2488,9 +2502,9 @@ InputWithPrefix.displayName = "InputWithPrefix";
2488
2502
 
2489
2503
  // src/label.tsx
2490
2504
  var LabelPrimitive = __toESM(require("@radix-ui/react-label"), 1);
2491
- var React18 = __toESM(require("react"), 1);
2492
- var import_jsx_runtime22 = require("react/jsx-runtime");
2493
- var Label3 = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime22.jsx)(
2505
+ var React19 = __toESM(require("react"), 1);
2506
+ var import_jsx_runtime23 = require("react/jsx-runtime");
2507
+ var Label3 = React19.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2494
2508
  LabelPrimitive.Root,
2495
2509
  {
2496
2510
  ref,
@@ -2505,7 +2519,7 @@ Label3.displayName = LabelPrimitive.Root.displayName;
2505
2519
 
2506
2520
  // src/overflow-toolbar.tsx
2507
2521
  var import_react3 = require("react");
2508
- var import_jsx_runtime23 = require("react/jsx-runtime");
2522
+ var import_jsx_runtime24 = require("react/jsx-runtime");
2509
2523
  var GAP_PX = 6;
2510
2524
  var TONE = {
2511
2525
  default: "border border-border bg-background hover:bg-accent text-foreground",
@@ -2527,16 +2541,16 @@ function ToolbarButton({
2527
2541
  action.hideLabel && !action.running ? "w-7 justify-center px-0" : "px-2",
2528
2542
  TONE[tone]
2529
2543
  );
2530
- const inner = /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(import_jsx_runtime23.Fragment, { children: [
2531
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2544
+ const inner = /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(import_jsx_runtime24.Fragment, { children: [
2545
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2532
2546
  Icon2,
2533
2547
  {
2534
2548
  className: cn("w-3.5 h-3.5 shrink-0", action.running && "animate-spin")
2535
2549
  }
2536
2550
  ),
2537
- showLabel && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { children: text })
2551
+ showLabel && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { children: text })
2538
2552
  ] });
2539
- const control = action.href && !action.disabled ? /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2553
+ const control = action.href && !action.disabled ? /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2540
2554
  "a",
2541
2555
  {
2542
2556
  href: action.href,
@@ -2546,7 +2560,7 @@ function ToolbarButton({
2546
2560
  "aria-label": action.label,
2547
2561
  children: inner
2548
2562
  }
2549
- ) : /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2563
+ ) : /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2550
2564
  "button",
2551
2565
  {
2552
2566
  type: "button",
@@ -2558,12 +2572,12 @@ function ToolbarButton({
2558
2572
  }
2559
2573
  );
2560
2574
  if (enableTooltip && action.hideLabel && renderTooltip) {
2561
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(import_jsx_runtime23.Fragment, { children: renderTooltip(control, action.label) });
2575
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(import_jsx_runtime24.Fragment, { children: renderTooltip(control, action.label) });
2562
2576
  }
2563
2577
  return control;
2564
2578
  }
2565
2579
  function OverflowTrigger({ ariaLabel }) {
2566
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2580
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2567
2581
  "button",
2568
2582
  {
2569
2583
  type: "button",
@@ -2574,7 +2588,7 @@ function OverflowTrigger({ ariaLabel }) {
2574
2588
  "inline-flex items-center justify-center h-7 w-7 rounded-md transition-colors",
2575
2589
  "border border-border bg-background hover:bg-accent text-foreground"
2576
2590
  ),
2577
- children: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(MoreHorizontalIcon, { className: "w-3.5 h-3.5" })
2591
+ children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(MoreHorizontalIcon, { className: "w-3.5 h-3.5" })
2578
2592
  }
2579
2593
  );
2580
2594
  }
@@ -2634,22 +2648,22 @@ function OverflowToolbar({
2634
2648
  }, [signature, leading != null]);
2635
2649
  const shown = visibleActions.slice(0, visibleCount);
2636
2650
  const hidden = visibleActions.slice(visibleCount);
2637
- return /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { ref: containerRef, className: cn("relative min-w-0", className), children: [
2638
- /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)(
2651
+ return /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { ref: containerRef, className: cn("relative min-w-0", className), children: [
2652
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)(
2639
2653
  "div",
2640
2654
  {
2641
2655
  ref: ghostRef,
2642
2656
  "aria-hidden": true,
2643
2657
  className: "pointer-events-none absolute left-0 top-0 flex items-center gap-1.5 opacity-0",
2644
2658
  children: [
2645
- visibleActions.map((a) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(ToolbarButton, { action: a }, a.id)),
2646
- /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2659
+ visibleActions.map((a) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(ToolbarButton, { action: a }, a.id)),
2660
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2647
2661
  ]
2648
2662
  }
2649
2663
  ),
2650
- /* @__PURE__ */ (0, import_jsx_runtime23.jsxs)("div", { className: "flex items-center justify-end gap-1.5", children: [
2651
- leading != null && /* @__PURE__ */ (0, import_jsx_runtime23.jsx)("span", { ref: leadingRef, className: "shrink-0", children: leading }),
2652
- shown.map((a) => /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(
2664
+ /* @__PURE__ */ (0, import_jsx_runtime24.jsxs)("div", { className: "flex items-center justify-end gap-1.5", children: [
2665
+ leading != null && /* @__PURE__ */ (0, import_jsx_runtime24.jsx)("span", { ref: leadingRef, className: "shrink-0", children: leading }),
2666
+ shown.map((a) => /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2653
2667
  ToolbarButton,
2654
2668
  {
2655
2669
  action: a,
@@ -2660,7 +2674,7 @@ function OverflowToolbar({
2660
2674
  )),
2661
2675
  hidden.length > 0 && renderOverflowMenu({
2662
2676
  actions: hidden,
2663
- trigger: /* @__PURE__ */ (0, import_jsx_runtime23.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2677
+ trigger: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(OverflowTrigger, { ariaLabel: overflowAriaLabel })
2664
2678
  })
2665
2679
  ] })
2666
2680
  ] });
@@ -2668,20 +2682,20 @@ function OverflowToolbar({
2668
2682
 
2669
2683
  // src/progress.tsx
2670
2684
  var ProgressPrimitive = __toESM(require("@radix-ui/react-progress"), 1);
2671
- var React20 = __toESM(require("react"), 1);
2672
- var import_jsx_runtime24 = require("react/jsx-runtime");
2685
+ var React21 = __toESM(require("react"), 1);
2686
+ var import_jsx_runtime25 = require("react/jsx-runtime");
2673
2687
  var PROGRESS_TONES = {
2674
2688
  default: "bg-primary",
2675
2689
  success: "bg-success",
2676
2690
  warning: "bg-warning",
2677
2691
  destructive: "bg-destructive"
2678
2692
  };
2679
- var Progress = React20.forwardRef(({ className, tone = "default", indicatorClassName, ...props }, ref) => {
2693
+ var Progress = React21.forwardRef(({ className, tone = "default", indicatorClassName, ...props }, ref) => {
2680
2694
  const { value, max } = props;
2681
2695
  const ceiling = max ?? 100;
2682
2696
  const isIndeterminate = value === null || value === void 0;
2683
2697
  const pct = isIndeterminate ? 0 : Math.min(100, Math.max(0, value / ceiling * 100));
2684
- return /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2698
+ return /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2685
2699
  ProgressPrimitive.Root,
2686
2700
  {
2687
2701
  ref,
@@ -2691,7 +2705,7 @@ var Progress = React20.forwardRef(({ className, tone = "default", indicatorClass
2691
2705
  className
2692
2706
  ),
2693
2707
  ...props,
2694
- children: /* @__PURE__ */ (0, import_jsx_runtime24.jsx)(
2708
+ children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2695
2709
  ProgressPrimitive.Indicator,
2696
2710
  {
2697
2711
  "data-slot": "progress-indicator",
@@ -2711,9 +2725,9 @@ Progress.displayName = ProgressPrimitive.Root.displayName;
2711
2725
 
2712
2726
  // src/scroll-area.tsx
2713
2727
  var ScrollAreaPrimitive = __toESM(require("@radix-ui/react-scroll-area"), 1);
2714
- var React21 = __toESM(require("react"), 1);
2715
- var import_jsx_runtime25 = require("react/jsx-runtime");
2716
- var ScrollArea = React21.forwardRef(
2728
+ var React22 = __toESM(require("react"), 1);
2729
+ var import_jsx_runtime26 = require("react/jsx-runtime");
2730
+ var ScrollArea = React22.forwardRef(
2717
2731
  ({
2718
2732
  className,
2719
2733
  children,
@@ -2722,7 +2736,7 @@ var ScrollArea = React21.forwardRef(
2722
2736
  scrollBarClassName,
2723
2737
  orientation = "vertical",
2724
2738
  ...props
2725
- }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsxs)(
2739
+ }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
2726
2740
  ScrollAreaPrimitive.Root,
2727
2741
  {
2728
2742
  ref,
@@ -2730,7 +2744,7 @@ var ScrollArea = React21.forwardRef(
2730
2744
  className: cn("relative overflow-hidden", className),
2731
2745
  ...props,
2732
2746
  children: [
2733
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2747
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2734
2748
  ScrollAreaPrimitive.Viewport,
2735
2749
  {
2736
2750
  ref: viewportRef,
@@ -2739,14 +2753,14 @@ var ScrollArea = React21.forwardRef(
2739
2753
  children
2740
2754
  }
2741
2755
  ),
2742
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ScrollBar, { orientation, className: scrollBarClassName }),
2743
- /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(ScrollAreaPrimitive.Corner, {})
2756
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ScrollBar, { orientation, className: scrollBarClassName }),
2757
+ /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(ScrollAreaPrimitive.Corner, {})
2744
2758
  ]
2745
2759
  }
2746
2760
  )
2747
2761
  );
2748
2762
  ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
2749
- var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2763
+ var ScrollBar = React22.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2750
2764
  ScrollAreaPrimitive.ScrollAreaScrollbar,
2751
2765
  {
2752
2766
  ref,
@@ -2759,7 +2773,7 @@ var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...pr
2759
2773
  className
2760
2774
  ),
2761
2775
  ...props,
2762
- children: /* @__PURE__ */ (0, import_jsx_runtime25.jsx)(
2776
+ children: /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2763
2777
  ScrollAreaPrimitive.ScrollAreaThumb,
2764
2778
  {
2765
2779
  "data-slot": "scroll-area-thumb",
@@ -2771,7 +2785,7 @@ var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...pr
2771
2785
  ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
2772
2786
 
2773
2787
  // src/score-ring.tsx
2774
- var import_jsx_runtime26 = require("react/jsx-runtime");
2788
+ var import_jsx_runtime27 = require("react/jsx-runtime");
2775
2789
  var DEFAULT_SCORE_THRESHOLDS = {
2776
2790
  good: 75,
2777
2791
  warning: 50
@@ -2802,7 +2816,7 @@ function ScoreRing({
2802
2816
  const circumference = 2 * Math.PI * radius;
2803
2817
  const boundedPct = pct === null ? 0 : Math.max(0, Math.min(100, pct));
2804
2818
  const dashOffset = circumference * (1 - boundedPct / 100);
2805
- return /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)(
2819
+ return /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)(
2806
2820
  "div",
2807
2821
  {
2808
2822
  className: cn(
@@ -2813,8 +2827,8 @@ function ScoreRing({
2813
2827
  role: "img",
2814
2828
  "aria-label": `${label ?? "Score"}: ${pct === null ? "not available" : `${pct} out of 100`}`,
2815
2829
  children: [
2816
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("svg", { viewBox: "0 0 100 100", className: "h-full w-full -rotate-90", children: [
2817
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2830
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("svg", { viewBox: "0 0 100 100", className: "h-full w-full -rotate-90", children: [
2831
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2818
2832
  "circle",
2819
2833
  {
2820
2834
  cx: "50",
@@ -2825,7 +2839,7 @@ function ScoreRing({
2825
2839
  fill: "none"
2826
2840
  }
2827
2841
  ),
2828
- pct !== null ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2842
+ pct !== null ? /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2829
2843
  "circle",
2830
2844
  {
2831
2845
  cx: "50",
@@ -2844,8 +2858,8 @@ function ScoreRing({
2844
2858
  }
2845
2859
  ) : null
2846
2860
  ] }),
2847
- /* @__PURE__ */ (0, import_jsx_runtime26.jsxs)("div", { className: "absolute flex flex-col items-center justify-center", children: [
2848
- /* @__PURE__ */ (0, import_jsx_runtime26.jsx)(
2861
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsxs)("div", { className: "absolute flex flex-col items-center justify-center", children: [
2862
+ /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2849
2863
  "span",
2850
2864
  {
2851
2865
  className: cn(
@@ -2855,7 +2869,7 @@ function ScoreRing({
2855
2869
  children: pct === null ? "\u2014" : `${pct}${suffix}`
2856
2870
  }
2857
2871
  ),
2858
- label ? /* @__PURE__ */ (0, import_jsx_runtime26.jsx)("span", { className: "max-w-[74px] truncate text-[9px] font-semibold uppercase tracking-wide text-muted-foreground", children: label }) : null
2872
+ 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
2859
2873
  ] })
2860
2874
  ]
2861
2875
  }
@@ -2863,7 +2877,7 @@ function ScoreRing({
2863
2877
  }
2864
2878
 
2865
2879
  // src/segmented-control.tsx
2866
- var import_jsx_runtime27 = require("react/jsx-runtime");
2880
+ var import_jsx_runtime28 = require("react/jsx-runtime");
2867
2881
  function SegmentedControl({
2868
2882
  value,
2869
2883
  onValueChange,
@@ -2878,7 +2892,7 @@ function SegmentedControl({
2878
2892
  md: "h-9 text-sm",
2879
2893
  lg: "h-10 text-base"
2880
2894
  };
2881
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2895
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2882
2896
  "div",
2883
2897
  {
2884
2898
  className: cn(
@@ -2889,7 +2903,7 @@ function SegmentedControl({
2889
2903
  role: "tablist",
2890
2904
  children: data.map((option) => {
2891
2905
  const isActive = value === option.value;
2892
- return /* @__PURE__ */ (0, import_jsx_runtime27.jsx)(
2906
+ return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2893
2907
  "button",
2894
2908
  {
2895
2909
  type: "button",
@@ -2916,8 +2930,8 @@ function SegmentedControl({
2916
2930
  // src/select.tsx
2917
2931
  var SelectPrimitive = __toESM(require("@radix-ui/react-select"), 1);
2918
2932
  var import_class_variance_authority4 = require("class-variance-authority");
2919
- var React22 = __toESM(require("react"), 1);
2920
- var import_jsx_runtime28 = require("react/jsx-runtime");
2933
+ var React23 = __toESM(require("react"), 1);
2934
+ var import_jsx_runtime29 = require("react/jsx-runtime");
2921
2935
  var Select = SelectPrimitive.Root;
2922
2936
  var SelectGroup = SelectPrimitive.Group;
2923
2937
  var SelectValue = SelectPrimitive.Value;
@@ -2936,7 +2950,7 @@ var selectTriggerVariants = (0, import_class_variance_authority4.cva)(
2936
2950
  }
2937
2951
  }
2938
2952
  );
2939
- var SelectTrigger = React22.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
2953
+ var SelectTrigger = React23.forwardRef(({ className, children, hideArrow = false, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
2940
2954
  SelectPrimitive.Trigger,
2941
2955
  {
2942
2956
  ref,
@@ -2944,12 +2958,12 @@ var SelectTrigger = React22.forwardRef(({ className, children, hideArrow = false
2944
2958
  ...props,
2945
2959
  children: [
2946
2960
  children,
2947
- !hideArrow && /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(RadixChevronDownIcon, { className: "h-4 w-4 opacity-50" }) })
2961
+ !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" }) })
2948
2962
  ]
2949
2963
  }
2950
2964
  ));
2951
2965
  SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
2952
- var SelectScrollUpButton = React22.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2966
+ var SelectScrollUpButton = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2953
2967
  SelectPrimitive.ScrollUpButton,
2954
2968
  {
2955
2969
  ref,
@@ -2958,11 +2972,11 @@ var SelectScrollUpButton = React22.forwardRef(({ className, ...props }, ref) =>
2958
2972
  className
2959
2973
  ),
2960
2974
  ...props,
2961
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(RadixChevronUpIcon, {})
2975
+ children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RadixChevronUpIcon, {})
2962
2976
  }
2963
2977
  ));
2964
2978
  SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
2965
- var SelectScrollDownButton = React22.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
2979
+ var SelectScrollDownButton = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2966
2980
  SelectPrimitive.ScrollDownButton,
2967
2981
  {
2968
2982
  ref,
@@ -2971,13 +2985,13 @@ var SelectScrollDownButton = React22.forwardRef(({ className, ...props }, ref) =
2971
2985
  className
2972
2986
  ),
2973
2987
  ...props,
2974
- children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(RadixChevronDownIcon, {})
2988
+ children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(RadixChevronDownIcon, {})
2975
2989
  }
2976
2990
  ));
2977
2991
  SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
2978
- var SelectContent = React22.forwardRef(({ className, children, position = "popper", container, ...props }, ref) => {
2992
+ var SelectContent = React23.forwardRef(({ className, children, position = "popper", container, ...props }, ref) => {
2979
2993
  const portalContainer = usePortalContainer(container);
2980
- return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
2994
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.Portal, { container: portalContainer, children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
2981
2995
  SelectPrimitive.Content,
2982
2996
  {
2983
2997
  ref,
@@ -2989,8 +3003,8 @@ var SelectContent = React22.forwardRef(({ className, children, position = "poppe
2989
3003
  position,
2990
3004
  ...props,
2991
3005
  children: [
2992
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectScrollUpButton, {}),
2993
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3006
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectScrollUpButton, {}),
3007
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
2994
3008
  SelectPrimitive.Viewport,
2995
3009
  {
2996
3010
  className: cn(
@@ -3000,13 +3014,13 @@ var SelectContent = React22.forwardRef(({ className, children, position = "poppe
3000
3014
  children
3001
3015
  }
3002
3016
  ),
3003
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectScrollDownButton, {})
3017
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectScrollDownButton, {})
3004
3018
  ]
3005
3019
  }
3006
3020
  ) });
3007
3021
  });
3008
3022
  SelectContent.displayName = SelectPrimitive.Content.displayName;
3009
- var SelectLabel = React22.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3023
+ var SelectLabel = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3010
3024
  SelectPrimitive.Label,
3011
3025
  {
3012
3026
  ref,
@@ -3015,7 +3029,7 @@ var SelectLabel = React22.forwardRef(({ className, ...props }, ref) => /* @__PUR
3015
3029
  }
3016
3030
  ));
3017
3031
  SelectLabel.displayName = SelectPrimitive.Label.displayName;
3018
- var SelectItem = React22.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsxs)(
3032
+ var SelectItem = React23.forwardRef(({ className, children, description, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
3019
3033
  SelectPrimitive.Item,
3020
3034
  {
3021
3035
  ref,
@@ -3026,14 +3040,14 @@ var SelectItem = React22.forwardRef(({ className, children, description, ...prop
3026
3040
  ),
3027
3041
  ...props,
3028
3042
  children: [
3029
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(CheckIcon, { className: "h-4 w-4" }) }) }),
3030
- /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(SelectPrimitive.ItemText, { children }),
3031
- description ? /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("span", { className: "block text-xs leading-snug text-muted-foreground", children: description }) : null
3043
+ /* @__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" }) }) }),
3044
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(SelectPrimitive.ItemText, { children }),
3045
+ description ? /* @__PURE__ */ (0, import_jsx_runtime29.jsx)("span", { className: "block text-xs leading-snug text-muted-foreground", children: description }) : null
3032
3046
  ]
3033
3047
  }
3034
3048
  ));
3035
3049
  SelectItem.displayName = SelectPrimitive.Item.displayName;
3036
- var SelectSeparator = React22.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime28.jsx)(
3050
+ var SelectSeparator = React23.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3037
3051
  SelectPrimitive.Separator,
3038
3052
  {
3039
3053
  ref,
@@ -3045,9 +3059,9 @@ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
3045
3059
 
3046
3060
  // src/separator.tsx
3047
3061
  var SeparatorPrimitive = __toESM(require("@radix-ui/react-separator"), 1);
3048
- var React23 = __toESM(require("react"), 1);
3049
- var import_jsx_runtime29 = require("react/jsx-runtime");
3050
- var Separator4 = React23.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
3062
+ var React24 = __toESM(require("react"), 1);
3063
+ var import_jsx_runtime30 = require("react/jsx-runtime");
3064
+ var Separator4 = React24.forwardRef(({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3051
3065
  SeparatorPrimitive.Root,
3052
3066
  {
3053
3067
  ref,
@@ -3067,11 +3081,11 @@ Separator4.displayName = SeparatorPrimitive.Root.displayName;
3067
3081
  var SheetPrimitive = __toESM(require("@radix-ui/react-dialog"), 1);
3068
3082
  var import_react_tree4 = require("@ai-matrx/kit/react-tree");
3069
3083
  var import_class_variance_authority5 = require("class-variance-authority");
3070
- var React24 = __toESM(require("react"), 1);
3071
- var import_jsx_runtime30 = require("react/jsx-runtime");
3072
- var SheetContentBase = React24.forwardRef(({ ...props }, ref) => {
3084
+ var React25 = __toESM(require("react"), 1);
3085
+ var import_jsx_runtime31 = require("react/jsx-runtime");
3086
+ var SheetContentBase = React25.forwardRef(({ ...props }, ref) => {
3073
3087
  const isModal = useRadixDialogModal();
3074
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3088
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3075
3089
  SheetPrimitive.Content,
3076
3090
  {
3077
3091
  ...props,
@@ -3081,15 +3095,15 @@ var SheetContentBase = React24.forwardRef(({ ...props }, ref) => {
3081
3095
  );
3082
3096
  });
3083
3097
  SheetContentBase.displayName = "SheetContentBase";
3084
- var Sheet = React24.forwardRef(({ children, ...props }, _ref) => {
3098
+ var Sheet = React25.forwardRef(({ children, ...props }, _ref) => {
3085
3099
  const modal = props.modal ?? true;
3086
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(SheetPrimitive.Root, { ...props, modal, children }) });
3100
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(RadixDialogModalProvider, { modal, children: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SheetPrimitive.Root, { ...props, modal, children }) });
3087
3101
  });
3088
3102
  Sheet.displayName = "Sheet";
3089
3103
  var SheetTrigger = SheetPrimitive.Trigger;
3090
3104
  var SheetClose = SheetPrimitive.Close;
3091
3105
  var SheetPortal = SheetPrimitive.Portal;
3092
- var SheetOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3106
+ var SheetOverlay = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3093
3107
  SheetPrimitive.Overlay,
3094
3108
  {
3095
3109
  className: cn(
@@ -3118,7 +3132,7 @@ var sheetVariants = (0, import_class_variance_authority5.cva)(
3118
3132
  }
3119
3133
  }
3120
3134
  );
3121
- var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3135
+ var SheetDescription = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3122
3136
  SheetPrimitive.Description,
3123
3137
  {
3124
3138
  ref,
@@ -3127,7 +3141,7 @@ var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @
3127
3141
  }
3128
3142
  ));
3129
3143
  SheetDescription.displayName = SheetPrimitive.Description.displayName;
3130
- var SheetContent = React24.forwardRef(
3144
+ var SheetContent = React25.forwardRef(
3131
3145
  ({
3132
3146
  side = "right",
3133
3147
  className,
@@ -3138,9 +3152,9 @@ var SheetContent = React24.forwardRef(
3138
3152
  ...props
3139
3153
  }, ref) => {
3140
3154
  const hasDescription = (0, import_react_tree4.treeContainsComponent)(children, SheetDescription) || (0, import_react_tree4.treeContainsComponent)(children, SheetPrimitive.Description);
3141
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(SheetPortal, { children: [
3142
- !hideOverlay && /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(SheetOverlay, { className: overlayClassName }),
3143
- /* @__PURE__ */ (0, import_jsx_runtime30.jsxs)(
3155
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(SheetPortal, { children: [
3156
+ !hideOverlay && /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(SheetOverlay, { className: overlayClassName }),
3157
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3144
3158
  SheetContentBase,
3145
3159
  {
3146
3160
  ref,
@@ -3148,9 +3162,9 @@ var SheetContent = React24.forwardRef(
3148
3162
  ...hasDescription ? {} : { "aria-describedby": void 0 },
3149
3163
  ...props,
3150
3164
  children: [
3151
- !hideCloseButton && /* @__PURE__ */ (0, import_jsx_runtime30.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: [
3152
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(Cross2Icon, { className: "h-4 w-4" }),
3153
- /* @__PURE__ */ (0, import_jsx_runtime30.jsx)("span", { className: "sr-only", children: "Close" })
3165
+ !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: [
3166
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(Cross2Icon, { className: "h-4 w-4" }),
3167
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)("span", { className: "sr-only", children: "Close" })
3154
3168
  ] }),
3155
3169
  children
3156
3170
  ]
@@ -3163,7 +3177,7 @@ SheetContent.displayName = SheetPrimitive.Content.displayName;
3163
3177
  var SheetHeader = ({
3164
3178
  className,
3165
3179
  ...props
3166
- }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3180
+ }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3167
3181
  "div",
3168
3182
  {
3169
3183
  className: cn(
@@ -3177,7 +3191,7 @@ SheetHeader.displayName = "SheetHeader";
3177
3191
  var SheetFooter = ({
3178
3192
  className,
3179
3193
  ...props
3180
- }) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3194
+ }) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3181
3195
  "div",
3182
3196
  {
3183
3197
  className: cn(
@@ -3188,7 +3202,7 @@ var SheetFooter = ({
3188
3202
  }
3189
3203
  );
3190
3204
  SheetFooter.displayName = "SheetFooter";
3191
- var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
3205
+ var SheetTitle = React25.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3192
3206
  SheetPrimitive.Title,
3193
3207
  {
3194
3208
  ref,
@@ -3199,12 +3213,12 @@ var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
3199
3213
  SheetTitle.displayName = SheetPrimitive.Title.displayName;
3200
3214
 
3201
3215
  // src/skeleton.tsx
3202
- var import_jsx_runtime31 = require("react/jsx-runtime");
3216
+ var import_jsx_runtime32 = require("react/jsx-runtime");
3203
3217
  function Skeleton({
3204
3218
  className,
3205
3219
  ...props
3206
3220
  }) {
3207
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3221
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3208
3222
  "div",
3209
3223
  {
3210
3224
  className: cn("animate-pulse rounded-md bg-primary/10", className),
@@ -3215,8 +3229,8 @@ function Skeleton({
3215
3229
 
3216
3230
  // src/switch.tsx
3217
3231
  var SwitchPrimitives = __toESM(require("@radix-ui/react-switch"), 1);
3218
- var React25 = __toESM(require("react"), 1);
3219
- var import_jsx_runtime32 = require("react/jsx-runtime");
3232
+ var React26 = __toESM(require("react"), 1);
3233
+ var import_jsx_runtime33 = require("react/jsx-runtime");
3220
3234
  var SWITCH_SIZES = {
3221
3235
  sm: {
3222
3236
  root: "h-4 w-9 border-border data-[state=unchecked]:bg-input",
@@ -3227,7 +3241,7 @@ var SWITCH_SIZES = {
3227
3241
  thumb: "h-4 w-4 data-[state=checked]:translate-x-4 data-[state=unchecked]:translate-x-0"
3228
3242
  }
3229
3243
  };
3230
- var Switch = React25.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3244
+ var Switch = React26.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3231
3245
  SwitchPrimitives.Root,
3232
3246
  {
3233
3247
  ref,
@@ -3238,7 +3252,7 @@ var Switch = React25.forwardRef(({ className, size = "md", ...props }, ref) => /
3238
3252
  className
3239
3253
  ),
3240
3254
  ...props,
3241
- children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3255
+ children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3242
3256
  SwitchPrimitives.Thumb,
3243
3257
  {
3244
3258
  "data-slot": "switch-thumb",
@@ -3254,7 +3268,7 @@ Switch.displayName = SwitchPrimitives.Root.displayName;
3254
3268
 
3255
3269
  // src/tabbed-bottom-sheet.tsx
3256
3270
  var import_react4 = require("react");
3257
- var import_jsx_runtime33 = require("react/jsx-runtime");
3271
+ var import_jsx_runtime34 = require("react/jsx-runtime");
3258
3272
  function TabbedBottomSheet({
3259
3273
  open,
3260
3274
  onOpenChange,
@@ -3268,15 +3282,15 @@ function TabbedBottomSheet({
3268
3282
  if (open) setSelectedTabId(null);
3269
3283
  }
3270
3284
  const selectedTab = selectedTabId ? tabs.find((tab) => tab.id === selectedTabId) : null;
3271
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3285
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3272
3286
  BottomSheet,
3273
3287
  {
3274
3288
  open,
3275
3289
  onOpenChange,
3276
3290
  title,
3277
3291
  size: "full",
3278
- children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3279
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3292
+ children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)("div", { className: "matrx-mobile-sheet flex min-h-0 flex-1 flex-col", children: [
3293
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3280
3294
  BottomSheetHeader,
3281
3295
  {
3282
3296
  title: selectedTab ? selectedTab.label : title,
@@ -3284,19 +3298,19 @@ function TabbedBottomSheet({
3284
3298
  onBack: () => setSelectedTabId(null)
3285
3299
  }
3286
3300
  ),
3287
- selectedTab ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: "flex min-h-0 flex-1 flex-col overflow-hidden pb-safe", children: selectedTab.content }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(BottomSheetBody, { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("ul", { className: "divide-y divide-border", children: tabs.map((tab) => {
3301
+ 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) => {
3288
3302
  const Icon2 = tab.icon;
3289
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
3303
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("li", { children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
3290
3304
  "button",
3291
3305
  {
3292
3306
  type: "button",
3293
3307
  onClick: () => setSelectedTabId(tab.id),
3294
3308
  className: "flex w-full items-center gap-3 px-4 py-3.5 text-left transition-colors hover:bg-muted/60 active:bg-muted",
3295
3309
  children: [
3296
- Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3297
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3310
+ Icon2 ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(Icon2, { className: "h-5 w-5 shrink-0 text-muted-foreground" }) : null,
3311
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("span", { className: "min-w-0 flex-1 text-base text-foreground", children: tab.label }),
3298
3312
  tab.trailing,
3299
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3313
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(ChevronRightIcon, { className: "h-5 w-5 shrink-0 text-muted-foreground" })
3300
3314
  ]
3301
3315
  }
3302
3316
  ) }, tab.id);
@@ -3307,19 +3321,19 @@ function TabbedBottomSheet({
3307
3321
  }
3308
3322
 
3309
3323
  // src/table.tsx
3310
- var React26 = __toESM(require("react"), 1);
3311
- var import_jsx_runtime34 = require("react/jsx-runtime");
3324
+ var React27 = __toESM(require("react"), 1);
3325
+ var import_jsx_runtime35 = require("react/jsx-runtime");
3312
3326
  var TABLE_SIZES = {
3313
3327
  sm: { head: "px-2", cell: "p-2" },
3314
3328
  md: { head: "px-3", cell: "p-3" }
3315
3329
  };
3316
- var TableSizeContext = React26.createContext("md");
3330
+ var TableSizeContext = React27.createContext("md");
3317
3331
  function useTableSize() {
3318
- return React26.useContext(TableSizeContext);
3332
+ return React27.useContext(TableSizeContext);
3319
3333
  }
3320
- var Table = React26.forwardRef(
3334
+ var Table = React27.forwardRef(
3321
3335
  ({ className, size = "md", wrap = true, wrapperClassName, ...props }, ref) => {
3322
- const table = /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3336
+ const table = /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3323
3337
  "table",
3324
3338
  {
3325
3339
  ref,
@@ -3329,7 +3343,7 @@ var Table = React26.forwardRef(
3329
3343
  ...props
3330
3344
  }
3331
3345
  );
3332
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3346
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(TableSizeContext.Provider, { value: size, children: wrap ? /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3333
3347
  "div",
3334
3348
  {
3335
3349
  "data-slot": "table-wrapper",
@@ -3340,7 +3354,7 @@ var Table = React26.forwardRef(
3340
3354
  }
3341
3355
  );
3342
3356
  Table.displayName = "Table";
3343
- var TableHeader = React26.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3357
+ var TableHeader = React27.forwardRef(({ className, sticky = false, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3344
3358
  "thead",
3345
3359
  {
3346
3360
  ref,
@@ -3354,7 +3368,7 @@ var TableHeader = React26.forwardRef(({ className, sticky = false, ...props }, r
3354
3368
  }
3355
3369
  ));
3356
3370
  TableHeader.displayName = "TableHeader";
3357
- var TableBody = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3371
+ var TableBody = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3358
3372
  "tbody",
3359
3373
  {
3360
3374
  ref,
@@ -3364,7 +3378,7 @@ var TableBody = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE_
3364
3378
  }
3365
3379
  ));
3366
3380
  TableBody.displayName = "TableBody";
3367
- var TableFooter = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3381
+ var TableFooter = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3368
3382
  "tfoot",
3369
3383
  {
3370
3384
  ref,
@@ -3377,7 +3391,7 @@ var TableFooter = React26.forwardRef(({ className, ...props }, ref) => /* @__PUR
3377
3391
  }
3378
3392
  ));
3379
3393
  TableFooter.displayName = "TableFooter";
3380
- var TableRow = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3394
+ var TableRow = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3381
3395
  "tr",
3382
3396
  {
3383
3397
  ref,
@@ -3390,9 +3404,9 @@ var TableRow = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3390
3404
  }
3391
3405
  ));
3392
3406
  TableRow.displayName = "TableRow";
3393
- var TableHead = React26.forwardRef(({ className, ...props }, ref) => {
3407
+ var TableHead = React27.forwardRef(({ className, ...props }, ref) => {
3394
3408
  const size = useTableSize();
3395
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3409
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3396
3410
  "th",
3397
3411
  {
3398
3412
  ref,
@@ -3407,9 +3421,9 @@ var TableHead = React26.forwardRef(({ className, ...props }, ref) => {
3407
3421
  );
3408
3422
  });
3409
3423
  TableHead.displayName = "TableHead";
3410
- var TableCell = React26.forwardRef(({ className, ...props }, ref) => {
3424
+ var TableCell = React27.forwardRef(({ className, ...props }, ref) => {
3411
3425
  const size = useTableSize();
3412
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3426
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3413
3427
  "td",
3414
3428
  {
3415
3429
  ref,
@@ -3424,7 +3438,7 @@ var TableCell = React26.forwardRef(({ className, ...props }, ref) => {
3424
3438
  );
3425
3439
  });
3426
3440
  TableCell.displayName = "TableCell";
3427
- var TableCaption = React26.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3441
+ var TableCaption = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3428
3442
  "caption",
3429
3443
  {
3430
3444
  ref,
@@ -3437,11 +3451,11 @@ TableCaption.displayName = "TableCaption";
3437
3451
 
3438
3452
  // src/tabs.tsx
3439
3453
  var TabsPrimitive = __toESM(require("@radix-ui/react-tabs"), 1);
3440
- var React27 = __toESM(require("react"), 1);
3441
- var import_jsx_runtime35 = require("react/jsx-runtime");
3454
+ var React28 = __toESM(require("react"), 1);
3455
+ var import_jsx_runtime36 = require("react/jsx-runtime");
3442
3456
  var Tabs = TabsPrimitive.Root;
3443
3457
  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";
3444
- var TabsList = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3458
+ var TabsList = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3445
3459
  TabsPrimitive.List,
3446
3460
  {
3447
3461
  ref,
@@ -3454,7 +3468,7 @@ var TabsList = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__
3454
3468
  }
3455
3469
  ));
3456
3470
  TabsList.displayName = TabsPrimitive.List.displayName;
3457
- var TabsTrigger = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3471
+ var TabsTrigger = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3458
3472
  TabsPrimitive.Trigger,
3459
3473
  {
3460
3474
  ref,
@@ -3468,7 +3482,7 @@ var TabsTrigger = React27.forwardRef(({ className, ...props }, ref) => /* @__PUR
3468
3482
  }
3469
3483
  ));
3470
3484
  TabsTrigger.displayName = TabsPrimitive.Trigger.displayName;
3471
- var TabsTriggerCore = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3485
+ var TabsTriggerCore = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3472
3486
  TabsPrimitive.Trigger,
3473
3487
  {
3474
3488
  ref,
@@ -3478,7 +3492,7 @@ var TabsTriggerCore = React27.forwardRef(({ className, ...props }, ref) => /* @_
3478
3492
  }
3479
3493
  ));
3480
3494
  TabsTriggerCore.displayName = TabsPrimitive.Trigger.displayName;
3481
- var TabsContent = React27.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
3495
+ var TabsContent = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3482
3496
  TabsPrimitive.Content,
3483
3497
  {
3484
3498
  ref,
@@ -3494,8 +3508,8 @@ var TabsContent = React27.forwardRef(({ className, ...props }, ref) => /* @__PUR
3494
3508
  TabsContent.displayName = TabsPrimitive.Content.displayName;
3495
3509
 
3496
3510
  // src/textarea.tsx
3497
- var React28 = __toESM(require("react"), 1);
3498
- var import_jsx_runtime36 = require("react/jsx-runtime");
3511
+ var React29 = __toESM(require("react"), 1);
3512
+ var import_jsx_runtime37 = require("react/jsx-runtime");
3499
3513
  var FILL_HEIGHT_REGEX = /(?:^|\s)(h-full|h-dvh|flex-1|grow)(?:\s|$)/;
3500
3514
  var FILL_WIDTH_REGEX = /(?:^|\s)(w-full|w-screen)(?:\s|$)/;
3501
3515
  function getStretchClasses(className) {
@@ -3508,7 +3522,7 @@ function getStretchClasses(className) {
3508
3522
  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";
3509
3523
  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";
3510
3524
  function useAutoGrow(ref, value, autoGrow = false, minHeight, maxHeight) {
3511
- React28.useEffect(() => {
3525
+ React29.useEffect(() => {
3512
3526
  if (!autoGrow || !ref.current) return;
3513
3527
  const textarea = ref.current;
3514
3528
  textarea.style.height = "auto";
@@ -3524,8 +3538,8 @@ function useAutoGrow(ref, value, autoGrow = false, minHeight, maxHeight) {
3524
3538
  }, [value, autoGrow, minHeight, maxHeight, ref]);
3525
3539
  }
3526
3540
  function useMergedTextareaRef(forwarded) {
3527
- const internal = React28.useRef(null);
3528
- const callback = React28.useCallback(
3541
+ const internal = React29.useRef(null);
3542
+ const callback = React29.useCallback(
3529
3543
  (node) => {
3530
3544
  internal.current = node;
3531
3545
  if (typeof forwarded === "function") forwarded(node);
@@ -3542,13 +3556,13 @@ function boxStyle(minHeight, maxHeight) {
3542
3556
  maxHeight: maxHeight ? `${maxHeight}px` : void 0
3543
3557
  };
3544
3558
  }
3545
- var Textarea = React28.forwardRef(
3559
+ var Textarea = React29.forwardRef(
3546
3560
  ({ className, autoGrow, minHeight, maxHeight, wrapperClassName, ...props }, forwarded) => {
3547
3561
  const { ref, callback } = useMergedTextareaRef(forwarded);
3548
3562
  const stretchClasses = getStretchClasses(className);
3549
3563
  const needsWrapper = Boolean(wrapperClassName || stretchClasses);
3550
3564
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3551
- const textarea = /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3565
+ const textarea = /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3552
3566
  "textarea",
3553
3567
  {
3554
3568
  ref: callback,
@@ -3564,15 +3578,15 @@ var Textarea = React28.forwardRef(
3564
3578
  }
3565
3579
  );
3566
3580
  if (!needsWrapper) return textarea;
3567
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3581
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)("div", { className: cn(stretchClasses, wrapperClassName), children: textarea });
3568
3582
  }
3569
3583
  );
3570
3584
  Textarea.displayName = "Textarea";
3571
- var BasicTextarea = React28.forwardRef(
3585
+ var BasicTextarea = React29.forwardRef(
3572
3586
  ({ className, autoGrow, minHeight, maxHeight, ...props }, forwarded) => {
3573
3587
  const { ref, callback } = useMergedTextareaRef(forwarded);
3574
3588
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3575
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3589
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3576
3590
  "textarea",
3577
3591
  {
3578
3592
  ref: callback,
@@ -3590,7 +3604,7 @@ var BasicTextarea = React28.forwardRef(
3590
3604
  }
3591
3605
  );
3592
3606
  BasicTextarea.displayName = "BasicTextarea";
3593
- var TextareaWithPrefix = React28.forwardRef(
3607
+ var TextareaWithPrefix = React29.forwardRef(
3594
3608
  ({
3595
3609
  prefix,
3596
3610
  className,
@@ -3602,13 +3616,13 @@ var TextareaWithPrefix = React28.forwardRef(
3602
3616
  }, forwarded) => {
3603
3617
  const { ref, callback } = useMergedTextareaRef(forwarded);
3604
3618
  useAutoGrow(ref, props.value, autoGrow, minHeight, maxHeight);
3605
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsxs)(
3619
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsxs)(
3606
3620
  "div",
3607
3621
  {
3608
3622
  className: cn("relative", getStretchClasses(className), wrapperClassName),
3609
3623
  children: [
3610
- prefix ? /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("div", { className: "pointer-events-none absolute left-3 top-3 z-10 text-muted-foreground", children: prefix }) : null,
3611
- /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
3624
+ 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,
3625
+ /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3612
3626
  "textarea",
3613
3627
  {
3614
3628
  ref: callback,
@@ -3687,13 +3701,13 @@ function useScrollFade() {
3687
3701
 
3688
3702
  // src/hover-card.tsx
3689
3703
  var HoverCardPrimitive = __toESM(require("@radix-ui/react-hover-card"), 1);
3690
- var React29 = __toESM(require("react"), 1);
3691
- var import_jsx_runtime37 = require("react/jsx-runtime");
3704
+ var React30 = __toESM(require("react"), 1);
3705
+ var import_jsx_runtime38 = require("react/jsx-runtime");
3692
3706
  var HoverCard = HoverCardPrimitive.Root;
3693
3707
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
3694
- var HoverCardContent = React29.forwardRef(({ className, align = "center", sideOffset = 4, container, ...props }, ref) => {
3708
+ var HoverCardContent = React30.forwardRef(({ className, align = "center", sideOffset = 4, container, ...props }, ref) => {
3695
3709
  const resolved = usePortalContainer(container);
3696
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
3710
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(HoverCardPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3697
3711
  HoverCardPrimitive.Content,
3698
3712
  {
3699
3713
  ref,
@@ -3712,9 +3726,9 @@ HoverCardContent.displayName = HoverCardPrimitive.Content.displayName;
3712
3726
 
3713
3727
  // src/radio-group.tsx
3714
3728
  var RadioGroupPrimitive = __toESM(require("@radix-ui/react-radio-group"), 1);
3715
- var React30 = __toESM(require("react"), 1);
3716
- var import_jsx_runtime38 = require("react/jsx-runtime");
3717
- var RadioGroupSizeContext = React30.createContext("md");
3729
+ var React31 = __toESM(require("react"), 1);
3730
+ var import_jsx_runtime39 = require("react/jsx-runtime");
3731
+ var RadioGroupSizeContext = React31.createContext("md");
3718
3732
  var CONTROL_CLASSES = {
3719
3733
  sm: "h-3.5 w-3.5",
3720
3734
  md: "h-4 w-4",
@@ -3725,7 +3739,7 @@ var DOT_CLASSES = {
3725
3739
  md: "h-1.5 w-1.5",
3726
3740
  lg: "h-2 w-2"
3727
3741
  };
3728
- var RadioGroup3 = React30.forwardRef(({ className, size = "md", ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(RadioGroupSizeContext.Provider, { value: size, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3742
+ 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)(
3729
3743
  RadioGroupPrimitive.Root,
3730
3744
  {
3731
3745
  ref,
@@ -3735,10 +3749,10 @@ var RadioGroup3 = React30.forwardRef(({ className, size = "md", ...props }, ref)
3735
3749
  }
3736
3750
  ) }));
3737
3751
  RadioGroup3.displayName = RadioGroupPrimitive.Root.displayName;
3738
- var RadioGroupItem = React30.forwardRef(({ className, size, ...props }, ref) => {
3739
- const groupSize = React30.useContext(RadioGroupSizeContext);
3752
+ var RadioGroupItem = React31.forwardRef(({ className, size, ...props }, ref) => {
3753
+ const groupSize = React31.useContext(RadioGroupSizeContext);
3740
3754
  const resolved = size ?? groupSize;
3741
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3755
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3742
3756
  RadioGroupPrimitive.Item,
3743
3757
  {
3744
3758
  ref,
@@ -3755,7 +3769,7 @@ var RadioGroupItem = React30.forwardRef(({ className, size, ...props }, ref) =>
3755
3769
  className
3756
3770
  ),
3757
3771
  ...props,
3758
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
3772
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3759
3773
  "div",
3760
3774
  {
3761
3775
  className: cn("rounded-full bg-primary-foreground", DOT_CLASSES[resolved])
@@ -3768,7 +3782,7 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
3768
3782
 
3769
3783
  // src/resizable.tsx
3770
3784
  var import_react_resizable_panels = require("react-resizable-panels");
3771
- var import_jsx_runtime39 = require("react/jsx-runtime");
3785
+ var import_jsx_runtime40 = require("react/jsx-runtime");
3772
3786
  var HANDLE_SIZES = {
3773
3787
  xs: "w-0.5 [&[aria-orientation=horizontal]]:h-0.5 [&[aria-orientation=horizontal]]:w-full",
3774
3788
  sm: "w-1 [&[aria-orientation=horizontal]]:h-1 [&[aria-orientation=horizontal]]:w-full",
@@ -3782,7 +3796,7 @@ var HANDLE_SIZES = {
3782
3796
  var ResizablePanelGroup = ({
3783
3797
  className,
3784
3798
  ...props
3785
- }) => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3799
+ }) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3786
3800
  import_react_resizable_panels.Group,
3787
3801
  {
3788
3802
  "data-slot": "resizable-group",
@@ -3797,7 +3811,7 @@ var ResizableHandle = ({
3797
3811
  size = "xs",
3798
3812
  className,
3799
3813
  ...props
3800
- }) => /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3814
+ }) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3801
3815
  import_react_resizable_panels.Separator,
3802
3816
  {
3803
3817
  "data-slot": "resizable-handle",
@@ -3817,15 +3831,15 @@ var ResizableHandle = ({
3817
3831
  className
3818
3832
  ),
3819
3833
  ...props,
3820
- children: withHandle ? /* @__PURE__ */ (0, import_jsx_runtime39.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_runtime39.jsx)(DragHandleDots2Icon, { className: "h-2.5 w-2.5 group-aria-[orientation=horizontal]/handle:rotate-90" }) }) : null
3834
+ 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
3821
3835
  }
3822
3836
  );
3823
3837
  ResizableHandle.displayName = "ResizableHandle";
3824
3838
 
3825
3839
  // src/slider.tsx
3826
3840
  var SliderPrimitive = __toESM(require("@radix-ui/react-slider"), 1);
3827
- var React31 = __toESM(require("react"), 1);
3828
- var import_jsx_runtime40 = require("react/jsx-runtime");
3841
+ var React32 = __toESM(require("react"), 1);
3842
+ var import_jsx_runtime41 = require("react/jsx-runtime");
3829
3843
  var TRACK_CLASSES = {
3830
3844
  sm: "h-1",
3831
3845
  md: "h-1.5",
@@ -3836,12 +3850,12 @@ var THUMB_CLASSES = {
3836
3850
  md: "h-4 w-4",
3837
3851
  lg: "h-5 w-5"
3838
3852
  };
3839
- var Slider = React31.forwardRef(({ className, size = "md", ...props }, ref) => {
3853
+ var Slider = React32.forwardRef(({ className, size = "md", ...props }, ref) => {
3840
3854
  const thumbCount = Math.max(
3841
3855
  1,
3842
3856
  (props.value ?? props.defaultValue ?? [0]).length
3843
3857
  );
3844
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
3858
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
3845
3859
  SliderPrimitive.Root,
3846
3860
  {
3847
3861
  ref,
@@ -3853,7 +3867,7 @@ var Slider = React31.forwardRef(({ className, size = "md", ...props }, ref) => {
3853
3867
  ),
3854
3868
  ...props,
3855
3869
  children: [
3856
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3870
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3857
3871
  SliderPrimitive.Track,
3858
3872
  {
3859
3873
  "data-slot": "slider-track",
@@ -3862,7 +3876,7 @@ var Slider = React31.forwardRef(({ className, size = "md", ...props }, ref) => {
3862
3876
  TRACK_CLASSES[size],
3863
3877
  "data-[orientation=vertical]:h-full data-[orientation=vertical]:w-1.5"
3864
3878
  ),
3865
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3879
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3866
3880
  SliderPrimitive.Range,
3867
3881
  {
3868
3882
  "data-slot": "slider-range",
@@ -3871,7 +3885,7 @@ var Slider = React31.forwardRef(({ className, size = "md", ...props }, ref) => {
3871
3885
  )
3872
3886
  }
3873
3887
  ),
3874
- Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
3888
+ Array.from({ length: thumbCount }, (_, index) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3875
3889
  SliderPrimitive.Thumb,
3876
3890
  {
3877
3891
  "data-slot": "slider-thumb",
@@ -3898,8 +3912,8 @@ Slider.displayName = SliderPrimitive.Root.displayName;
3898
3912
  var ToggleGroupPrimitive = __toESM(require("@radix-ui/react-toggle-group"), 1);
3899
3913
  var TogglePrimitive = __toESM(require("@radix-ui/react-toggle"), 1);
3900
3914
  var import_class_variance_authority6 = require("class-variance-authority");
3901
- var React32 = __toESM(require("react"), 1);
3902
- var import_jsx_runtime41 = require("react/jsx-runtime");
3915
+ var React33 = __toESM(require("react"), 1);
3916
+ var import_jsx_runtime42 = require("react/jsx-runtime");
3903
3917
  var toggleVariants = (0, import_class_variance_authority6.cva)(
3904
3918
  "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",
3905
3919
  {
@@ -3920,7 +3934,7 @@ var toggleVariants = (0, import_class_variance_authority6.cva)(
3920
3934
  }
3921
3935
  }
3922
3936
  );
3923
- var Toggle = React32.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3937
+ var Toggle = React33.forwardRef(({ className, variant, size, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3924
3938
  TogglePrimitive.Root,
3925
3939
  {
3926
3940
  ref,
@@ -3930,21 +3944,21 @@ var Toggle = React32.forwardRef(({ className, variant, size, ...props }, ref) =>
3930
3944
  }
3931
3945
  ));
3932
3946
  Toggle.displayName = TogglePrimitive.Root.displayName;
3933
- var ToggleGroupContext = React32.createContext({ size: "default", variant: "default" });
3934
- var ToggleGroup = React32.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3947
+ var ToggleGroupContext = React33.createContext({ size: "default", variant: "default" });
3948
+ var ToggleGroup = React33.forwardRef(({ className, variant, size, children, ...props }, ref) => /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3935
3949
  ToggleGroupPrimitive.Root,
3936
3950
  {
3937
3951
  ref,
3938
3952
  "data-slot": "toggle-group",
3939
3953
  className: cn("flex items-center justify-center gap-1", className),
3940
3954
  ...props,
3941
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
3955
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ToggleGroupContext.Provider, { value: { variant, size }, children })
3942
3956
  }
3943
3957
  ));
3944
3958
  ToggleGroup.displayName = ToggleGroupPrimitive.Root.displayName;
3945
- var ToggleGroupItem = React32.forwardRef(({ className, children, variant, size, ...props }, ref) => {
3946
- const context = React32.useContext(ToggleGroupContext);
3947
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3959
+ var ToggleGroupItem = React33.forwardRef(({ className, children, variant, size, ...props }, ref) => {
3960
+ const context = React33.useContext(ToggleGroupContext);
3961
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3948
3962
  ToggleGroupPrimitive.Item,
3949
3963
  {
3950
3964
  ref,
@@ -3965,14 +3979,14 @@ ToggleGroupItem.displayName = ToggleGroupPrimitive.Item.displayName;
3965
3979
 
3966
3980
  // src/tooltip.tsx
3967
3981
  var TooltipPrimitive = __toESM(require("@radix-ui/react-tooltip"), 1);
3968
- var React33 = __toESM(require("react"), 1);
3969
- var import_jsx_runtime42 = require("react/jsx-runtime");
3982
+ var React34 = __toESM(require("react"), 1);
3983
+ var import_jsx_runtime43 = require("react/jsx-runtime");
3970
3984
  var TooltipProvider = TooltipPrimitive.Provider;
3971
3985
  var Tooltip = TooltipPrimitive.Root;
3972
3986
  var TooltipTrigger = TooltipPrimitive.Trigger;
3973
- var TooltipContent = React33.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
3987
+ var TooltipContent = React34.forwardRef(({ className, sideOffset = 4, container, ...props }, ref) => {
3974
3988
  const resolved = usePortalContainer(container);
3975
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
3989
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(TooltipPrimitive.Portal, { container: resolved ?? null, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
3976
3990
  TooltipPrimitive.Content,
3977
3991
  {
3978
3992
  ref,