@cerberus-design/react 0.9.2-next-d32e769 → 0.9.2-next-863daf6

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.
Files changed (54) hide show
  1. package/build/legacy/_tsup-dts-rollup.d.cts +16 -10
  2. package/build/legacy/components/FileStatus.cjs +5 -5
  3. package/build/legacy/components/FileStatus.cjs.map +1 -1
  4. package/build/legacy/components/FileUploader.cjs +1 -1
  5. package/build/legacy/components/FileUploader.cjs.map +1 -1
  6. package/build/legacy/components/Spinner.cjs +104 -0
  7. package/build/legacy/components/Spinner.cjs.map +1 -0
  8. package/build/legacy/components/Tag.cjs.map +1 -1
  9. package/build/legacy/context/confirm-modal.cjs +2 -2
  10. package/build/legacy/context/confirm-modal.cjs.map +1 -1
  11. package/build/legacy/context/notification-center.cjs +50 -10
  12. package/build/legacy/context/notification-center.cjs.map +1 -1
  13. package/build/legacy/context/prompt-modal.cjs +2 -2
  14. package/build/legacy/context/prompt-modal.cjs.map +1 -1
  15. package/build/legacy/index.cjs +213 -95
  16. package/build/legacy/index.cjs.map +1 -1
  17. package/build/modern/_tsup-dts-rollup.d.ts +16 -10
  18. package/build/modern/{chunk-XOVQGPIE.js → chunk-BTEEBIVN.js} +2 -2
  19. package/build/modern/{chunk-XOVQGPIE.js.map → chunk-BTEEBIVN.js.map} +1 -1
  20. package/build/modern/{chunk-Z6IWNVPN.js → chunk-RBZAEOKN.js} +5 -2
  21. package/build/modern/chunk-RBZAEOKN.js.map +1 -0
  22. package/build/modern/chunk-RN6HSKIG.js +80 -0
  23. package/build/modern/chunk-RN6HSKIG.js.map +1 -0
  24. package/build/modern/{chunk-WWJRKSM5.js → chunk-RSFFVJSM.js} +3 -3
  25. package/build/modern/{chunk-WWJRKSM5.js.map → chunk-RSFFVJSM.js.map} +1 -1
  26. package/build/modern/{chunk-T7TOXGZT.js → chunk-V4Y7DU4B.js} +3 -3
  27. package/build/modern/chunk-V4Y7DU4B.js.map +1 -0
  28. package/build/modern/{chunk-O6WHVUEW.js → chunk-WFHZDHJB.js} +51 -11
  29. package/build/modern/chunk-WFHZDHJB.js.map +1 -0
  30. package/build/modern/{chunk-DGJPW76I.js → chunk-XGIACYC3.js} +6 -6
  31. package/build/modern/chunk-XGIACYC3.js.map +1 -0
  32. package/build/modern/components/FileStatus.js +1 -1
  33. package/build/modern/components/FileUploader.js +1 -1
  34. package/build/modern/components/Spinner.js +7 -0
  35. package/build/modern/components/Spinner.js.map +1 -0
  36. package/build/modern/components/Tag.js +1 -1
  37. package/build/modern/context/confirm-modal.js +1 -1
  38. package/build/modern/context/notification-center.js +1 -1
  39. package/build/modern/context/prompt-modal.js +1 -1
  40. package/build/modern/index.js +17 -13
  41. package/build/modern/index.js.map +1 -1
  42. package/package.json +4 -5
  43. package/src/components/FileStatus.tsx +5 -5
  44. package/src/components/FileUploader.tsx +1 -1
  45. package/src/components/Spinner.tsx +60 -0
  46. package/src/components/Tag.tsx +6 -5
  47. package/src/context/confirm-modal.tsx +2 -2
  48. package/src/context/notification-center.tsx +67 -12
  49. package/src/context/prompt-modal.tsx +2 -2
  50. package/src/index.ts +1 -0
  51. package/build/modern/chunk-DGJPW76I.js.map +0 -1
  52. package/build/modern/chunk-O6WHVUEW.js.map +0 -1
  53. package/build/modern/chunk-T7TOXGZT.js.map +0 -1
  54. package/build/modern/chunk-Z6IWNVPN.js.map +0 -1
@@ -56,6 +56,7 @@ __export(src_exports, {
56
56
  Radio: () => Radio,
57
57
  Select: () => Select,
58
58
  Show: () => Show,
59
+ Spinner: () => Spinner,
59
60
  THEME_KEY: () => THEME_KEY,
60
61
  Tab: () => Tab,
61
62
  TabList: () => TabList,
@@ -564,7 +565,7 @@ function FileStatus(props) {
564
565
  }
565
566
  ),
566
567
  /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(ProgressBar, { now, size: "sm" }),
567
- /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Field, { invalid: modalIconPalette === "red", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
568
+ /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(Field, { invalid: modalIconPalette === "hades-dark", children: /* @__PURE__ */ (0, import_jsx_runtime12.jsx)(
568
569
  FieldMessage,
569
570
  {
570
571
  className: (0, import_css7.css)({
@@ -667,13 +668,13 @@ function getModalIconPalette(status) {
667
668
  switch (status) {
668
669
  case "todo" /* TODO */:
669
670
  case "processing" /* PROCESSING */:
670
- return "light-purple";
671
+ return "charon-light";
671
672
  case "error" /* ERROR */:
672
- return "red";
673
+ return "hades-dark";
673
674
  case "done" /* DONE */:
674
- return "green";
675
+ return "thanatos-light";
675
676
  default:
676
- return "light-purple";
677
+ return "charon-light";
677
678
  }
678
679
  }
679
680
 
@@ -699,7 +700,7 @@ function FileUploader(props) {
699
700
  /* @__PURE__ */ (0, import_jsx_runtime13.jsx)("div", { className: styles.icon, children: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(
700
701
  Avatar,
701
702
  {
702
- gradient: "light-purple",
703
+ gradient: "charon-light",
703
704
  ariaLabel: "",
704
705
  icon: /* @__PURE__ */ (0, import_jsx_runtime13.jsx)(Icon, {}),
705
706
  size: "md",
@@ -1285,13 +1286,89 @@ function Option(props) {
1285
1286
  return /* @__PURE__ */ (0, import_jsx_runtime28.jsx)("option", { ...props });
1286
1287
  }
1287
1288
 
1289
+ // src/components/Spinner.tsx
1290
+ var import_jsx_runtime29 = require("react/jsx-runtime");
1291
+ function Spinner(props) {
1292
+ return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
1293
+ "svg",
1294
+ {
1295
+ "aria-busy": "true",
1296
+ role: "status",
1297
+ xmlns: "http://www.w3.org/2000/svg",
1298
+ height: props.size,
1299
+ width: props.size,
1300
+ viewBox: "0 0 24 24",
1301
+ ...props,
1302
+ children: /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
1303
+ "g",
1304
+ {
1305
+ fill: "none",
1306
+ stroke: "currentColor",
1307
+ strokeLinecap: "round",
1308
+ strokeLinejoin: "round",
1309
+ strokeWidth: 2,
1310
+ children: [
1311
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsxs)(
1312
+ "path",
1313
+ {
1314
+ strokeDasharray: 16,
1315
+ strokeDashoffset: 16,
1316
+ d: "M12 3c4.97 0 9 4.03 9 9",
1317
+ children: [
1318
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
1319
+ "animate",
1320
+ {
1321
+ fill: "freeze",
1322
+ attributeName: "stroke-dashoffset",
1323
+ dur: "0.15s",
1324
+ values: "16;0"
1325
+ }
1326
+ ),
1327
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
1328
+ "animateTransform",
1329
+ {
1330
+ attributeName: "transform",
1331
+ dur: "0.75s",
1332
+ repeatCount: "indefinite",
1333
+ type: "rotate",
1334
+ values: "0 12 12;360 12 12"
1335
+ }
1336
+ )
1337
+ ]
1338
+ }
1339
+ ),
1340
+ /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
1341
+ "path",
1342
+ {
1343
+ strokeDasharray: 64,
1344
+ strokeDashoffset: 64,
1345
+ strokeOpacity: 0.3,
1346
+ d: "M12 3c4.97 0 9 4.03 9 9c0 4.97 -4.03 9 -9 9c-4.97 0 -9 -4.03 -9 -9c0 -4.97 4.03 -9 9 -9Z",
1347
+ children: /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(
1348
+ "animate",
1349
+ {
1350
+ fill: "freeze",
1351
+ attributeName: "stroke-dashoffset",
1352
+ dur: "0.6s",
1353
+ values: "64;0"
1354
+ }
1355
+ )
1356
+ }
1357
+ )
1358
+ ]
1359
+ }
1360
+ )
1361
+ }
1362
+ );
1363
+ }
1364
+
1288
1365
  // src/components/Tab.tsx
1289
1366
  var import_react13 = require("react");
1290
1367
 
1291
1368
  // src/context/tabs.tsx
1292
1369
  var import_recipes20 = require("@cerberus/styled-system/recipes");
1293
1370
  var import_react11 = require("react");
1294
- var import_jsx_runtime29 = require("react/jsx-runtime");
1371
+ var import_jsx_runtime30 = require("react/jsx-runtime");
1295
1372
  var TabsContext = (0, import_react11.createContext)(null);
1296
1373
  function Tabs(props) {
1297
1374
  const { cache, active, id, palette } = props;
@@ -1323,7 +1400,7 @@ function Tabs(props) {
1323
1400
  window.localStorage.setItem(uuid, activeTab);
1324
1401
  }
1325
1402
  }, [activeTab, cache]);
1326
- return /* @__PURE__ */ (0, import_jsx_runtime29.jsx)(TabsContext.Provider, { value, children: props.children });
1403
+ return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(TabsContext.Provider, { value, children: props.children });
1327
1404
  }
1328
1405
  function useTabsContext() {
1329
1406
  const context = (0, import_react11.useContext)(TabsContext);
@@ -1393,7 +1470,7 @@ function useTabsKeyboardNavigation() {
1393
1470
  }
1394
1471
 
1395
1472
  // src/components/Tab.tsx
1396
- var import_jsx_runtime30 = require("react/jsx-runtime");
1473
+ var import_jsx_runtime31 = require("react/jsx-runtime");
1397
1474
  function Tab(props) {
1398
1475
  const { value, ...nativeProps } = props;
1399
1476
  const { active, onTabUpdate, styles } = useTabsContext();
@@ -1405,7 +1482,7 @@ function Tab(props) {
1405
1482
  (_a = props.onClick) == null ? void 0 : _a.call(props, e);
1406
1483
  startTransition(() => onTabUpdate(e.currentTarget.value));
1407
1484
  }
1408
- return /* @__PURE__ */ (0, import_jsx_runtime30.jsx)(
1485
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1409
1486
  "button",
1410
1487
  {
1411
1488
  ...nativeProps,
@@ -1426,11 +1503,11 @@ function Tab(props) {
1426
1503
  // src/components/TabList.tsx
1427
1504
  var import_css25 = require("@cerberus/styled-system/css");
1428
1505
  var import_patterns11 = require("@cerberus/styled-system/patterns");
1429
- var import_jsx_runtime31 = require("react/jsx-runtime");
1506
+ var import_jsx_runtime32 = require("react/jsx-runtime");
1430
1507
  function TabList(props) {
1431
1508
  const { description, ...nativeProps } = props;
1432
1509
  const { id, styles } = useTabsContext();
1433
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
1510
+ return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1434
1511
  "div",
1435
1512
  {
1436
1513
  ...nativeProps,
@@ -1450,12 +1527,12 @@ function TabList(props) {
1450
1527
  // src/components/TabPanel.tsx
1451
1528
  var import_css26 = require("@cerberus/styled-system/css");
1452
1529
  var import_react14 = require("react");
1453
- var import_jsx_runtime32 = require("react/jsx-runtime");
1530
+ var import_jsx_runtime33 = require("react/jsx-runtime");
1454
1531
  function TabPanel(props) {
1455
1532
  const { tab, ...nativeProps } = props;
1456
1533
  const { active, styles } = useTabsContext();
1457
1534
  const isActive = (0, import_react14.useMemo)(() => active === tab, [active, tab]);
1458
- return /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(Show, { when: isActive, children: /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
1535
+ return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(Show, { when: isActive, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
1459
1536
  "div",
1460
1537
  {
1461
1538
  ...nativeProps,
@@ -1471,52 +1548,52 @@ function TabPanel(props) {
1471
1548
  // src/components/Table.tsx
1472
1549
  var import_css27 = require("@cerberus/styled-system/css");
1473
1550
  var import_recipes21 = require("@cerberus/styled-system/recipes");
1474
- var import_jsx_runtime33 = require("react/jsx-runtime");
1551
+ var import_jsx_runtime34 = require("react/jsx-runtime");
1475
1552
  function Table(props) {
1476
1553
  const { caption, children, ...nativeProps } = props;
1477
1554
  const styles = (0, import_recipes21.table)();
1478
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("div", { className: styles.container, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
1555
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("div", { className: styles.container, children: /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
1479
1556
  "table",
1480
1557
  {
1481
1558
  ...nativeProps,
1482
1559
  className: (0, import_css27.cx)(nativeProps.className, styles.table),
1483
1560
  children: [
1484
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("caption", { className: styles.caption, children: caption }),
1561
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("caption", { className: styles.caption, children: caption }),
1485
1562
  children
1486
1563
  ]
1487
1564
  }
1488
1565
  ) });
1489
1566
  }
1490
1567
  function Tr(props) {
1491
- return /* @__PURE__ */ (0, import_jsx_runtime33.jsx)("tr", { ...props });
1568
+ return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("tr", { ...props });
1492
1569
  }
1493
1570
 
1494
1571
  // src/components/Thead.tsx
1495
1572
  var import_css28 = require("@cerberus/styled-system/css");
1496
1573
  var import_recipes22 = require("@cerberus/styled-system/recipes");
1497
- var import_jsx_runtime34 = require("react/jsx-runtime");
1574
+ var import_jsx_runtime35 = require("react/jsx-runtime");
1498
1575
  function Thead(props) {
1499
- return /* @__PURE__ */ (0, import_jsx_runtime34.jsx)("thead", { ...props, className: (0, import_css28.cx)(props.className, (0, import_recipes22.thead)()) });
1576
+ return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("thead", { ...props, className: (0, import_css28.cx)(props.className, (0, import_recipes22.thead)()) });
1500
1577
  }
1501
1578
 
1502
1579
  // src/components/Th.tsx
1503
1580
  var import_css29 = require("@cerberus/styled-system/css");
1504
1581
  var import_recipes23 = require("@cerberus/styled-system/recipes");
1505
- var import_jsx_runtime35 = require("react/jsx-runtime");
1582
+ var import_jsx_runtime36 = require("react/jsx-runtime");
1506
1583
  function Th(props) {
1507
1584
  const { size, onClick, ...nativeProps } = props;
1508
- return /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1585
+ return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
1509
1586
  Show,
1510
1587
  {
1511
1588
  when: Boolean(onClick),
1512
- fallback: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1589
+ fallback: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
1513
1590
  "th",
1514
1591
  {
1515
1592
  ...nativeProps,
1516
1593
  className: (0, import_css29.cx)(nativeProps.className, (0, import_recipes23.th)({ size }))
1517
1594
  }
1518
1595
  ),
1519
- children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)("th", { ...nativeProps, children: /* @__PURE__ */ (0, import_jsx_runtime35.jsx)(
1596
+ children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)("th", { ...nativeProps, children: /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
1520
1597
  "button",
1521
1598
  {
1522
1599
  className: (0, import_css29.cx)(
@@ -1541,10 +1618,10 @@ function Th(props) {
1541
1618
  // src/components/Td.tsx
1542
1619
  var import_css30 = require("@cerberus/styled-system/css");
1543
1620
  var import_recipes24 = require("@cerberus/styled-system/recipes");
1544
- var import_jsx_runtime36 = require("react/jsx-runtime");
1621
+ var import_jsx_runtime37 = require("react/jsx-runtime");
1545
1622
  function Td(props) {
1546
1623
  const { size, ...nativeProps } = props;
1547
- return /* @__PURE__ */ (0, import_jsx_runtime36.jsx)(
1624
+ return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
1548
1625
  "td",
1549
1626
  {
1550
1627
  ...nativeProps,
@@ -1561,10 +1638,10 @@ function Td(props) {
1561
1638
  // src/components/Tbody.tsx
1562
1639
  var import_recipes25 = require("@cerberus/styled-system/recipes");
1563
1640
  var import_css31 = require("@cerberus/styled-system/css");
1564
- var import_jsx_runtime37 = require("react/jsx-runtime");
1641
+ var import_jsx_runtime38 = require("react/jsx-runtime");
1565
1642
  function Tbody(props) {
1566
1643
  const { decoration, ...nativeProps } = props;
1567
- return /* @__PURE__ */ (0, import_jsx_runtime37.jsx)(
1644
+ return /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1568
1645
  "tbody",
1569
1646
  {
1570
1647
  ...nativeProps,
@@ -1582,14 +1659,14 @@ function Tbody(props) {
1582
1659
  var import_icons3 = require("@cerberus/icons");
1583
1660
  var import_css32 = require("@cerberus/styled-system/css");
1584
1661
  var import_recipes26 = require("@cerberus/styled-system/recipes");
1585
- var import_jsx_runtime38 = require("react/jsx-runtime");
1662
+ var import_jsx_runtime39 = require("react/jsx-runtime");
1586
1663
  function Tag(props) {
1587
1664
  const { shape: initShape, gradient, onClick, usage, ...nativeProps } = props;
1588
1665
  const palette = (props == null ? void 0 : props.palette) ?? "page";
1589
1666
  const isClosable = Boolean(onClick);
1590
1667
  const shape = isClosable ? "pill" : initShape;
1591
1668
  const closableStyles = isClosable ? closableCss : "";
1592
- return /* @__PURE__ */ (0, import_jsx_runtime38.jsxs)(
1669
+ return /* @__PURE__ */ (0, import_jsx_runtime39.jsxs)(
1593
1670
  "span",
1594
1671
  {
1595
1672
  ...nativeProps,
@@ -1605,7 +1682,7 @@ function Tag(props) {
1605
1682
  ),
1606
1683
  children: [
1607
1684
  props.children,
1608
- /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(Show, { when: isClosable, children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(
1685
+ /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(Show, { when: isClosable, children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
1609
1686
  "button",
1610
1687
  {
1611
1688
  "aria-label": "Close",
@@ -1615,7 +1692,7 @@ function Tag(props) {
1615
1692
  size: "sm"
1616
1693
  }),
1617
1694
  onClick,
1618
- children: /* @__PURE__ */ (0, import_jsx_runtime38.jsx)(import_icons3.Close, {})
1695
+ children: /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(import_icons3.Close, {})
1619
1696
  }
1620
1697
  ) })
1621
1698
  ]
@@ -1631,11 +1708,11 @@ var closableCss = (0, import_css32.css)({
1631
1708
  // src/components/Textarea.tsx
1632
1709
  var import_css33 = require("@cerberus/styled-system/css");
1633
1710
  var import_recipes27 = require("@cerberus/styled-system/recipes");
1634
- var import_jsx_runtime39 = require("react/jsx-runtime");
1711
+ var import_jsx_runtime40 = require("react/jsx-runtime");
1635
1712
  function Textarea(props) {
1636
1713
  const { describedBy, ...nativeProps } = props;
1637
1714
  const { invalid, ...fieldState } = useFieldContext();
1638
- return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
1715
+ return /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
1639
1716
  "textarea",
1640
1717
  {
1641
1718
  ...nativeProps,
@@ -1660,19 +1737,19 @@ function Textarea(props) {
1660
1737
  var import_css34 = require("@cerberus/styled-system/css");
1661
1738
  var import_patterns12 = require("@cerberus/styled-system/patterns");
1662
1739
  var import_recipes28 = require("@cerberus/styled-system/recipes");
1663
- var import_jsx_runtime40 = require("react/jsx-runtime");
1740
+ var import_jsx_runtime41 = require("react/jsx-runtime");
1664
1741
  function Toggle(props) {
1665
1742
  const { size, describedBy, ...nativeProps } = props;
1666
1743
  const styles = (0, import_recipes28.toggle)({ size });
1667
1744
  const { invalid, ...state } = useFieldContext();
1668
1745
  const Icon = $cerberusIcons.toggleChecked;
1669
- return /* @__PURE__ */ (0, import_jsx_runtime40.jsxs)(
1746
+ return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
1670
1747
  "span",
1671
1748
  {
1672
1749
  className: (0, import_css34.cx)("group", styles.track, (0, import_patterns12.hstack)()),
1673
1750
  "data-checked": props.checked || props.defaultChecked,
1674
1751
  children: [
1675
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
1752
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1676
1753
  "input",
1677
1754
  {
1678
1755
  ...nativeProps,
@@ -1684,7 +1761,7 @@ function Toggle(props) {
1684
1761
  type: "checkbox"
1685
1762
  }
1686
1763
  ),
1687
- /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(
1764
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1688
1765
  "span",
1689
1766
  {
1690
1767
  className: (0, import_css34.cx)(
@@ -1693,7 +1770,7 @@ function Toggle(props) {
1693
1770
  justify: "center"
1694
1771
  })
1695
1772
  ),
1696
- children: /* @__PURE__ */ (0, import_jsx_runtime40.jsx)(Icon, {})
1773
+ children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Icon, {})
1697
1774
  }
1698
1775
  )
1699
1776
  ]
@@ -1728,7 +1805,7 @@ function useModal() {
1728
1805
  }
1729
1806
 
1730
1807
  // src/context/confirm-modal.tsx
1731
- var import_jsx_runtime41 = require("react/jsx-runtime");
1808
+ var import_jsx_runtime42 = require("react/jsx-runtime");
1732
1809
  var ConfirmModalContext = (0, import_react16.createContext)(null);
1733
1810
  function ConfirmModal(props) {
1734
1811
  const { modalRef, show, close } = useModal();
@@ -1768,36 +1845,36 @@ function ConfirmModal(props) {
1768
1845
  }),
1769
1846
  [handleShow]
1770
1847
  );
1771
- return /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(ConfirmModalContext.Provider, { value, children: [
1848
+ return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(ConfirmModalContext.Provider, { value, children: [
1772
1849
  props.children,
1773
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(Modal, { onKeyDown: focusTrap, ref: modalRef, children: [
1774
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(ModalHeader, { children: [
1775
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1850
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(Modal, { onKeyDown: focusTrap, ref: modalRef, children: [
1851
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(ModalHeader, { children: [
1852
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1776
1853
  "div",
1777
1854
  {
1778
1855
  className: (0, import_patterns13.hstack)({
1779
1856
  justify: "center",
1780
1857
  w: "full"
1781
1858
  }),
1782
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1859
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1783
1860
  Show,
1784
1861
  {
1785
1862
  when: palette === "danger",
1786
- fallback: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1863
+ fallback: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1787
1864
  Avatar,
1788
1865
  {
1789
1866
  ariaLabel: "",
1790
- gradient: "light-purple",
1791
- icon: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(ConfirmIcon, { size: 24 }),
1867
+ gradient: "charon-light",
1868
+ icon: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ConfirmIcon, { size: 24 }),
1792
1869
  src: ""
1793
1870
  }
1794
1871
  ),
1795
- children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1872
+ children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1796
1873
  Avatar,
1797
1874
  {
1798
1875
  ariaLabel: "",
1799
- gradient: "red",
1800
- icon: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(ConfirmIcon, { size: 24 }),
1876
+ gradient: "hades-dark",
1877
+ icon: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ConfirmIcon, { size: 24 }),
1801
1878
  src: ""
1802
1879
  }
1803
1880
  )
@@ -1805,17 +1882,17 @@ function ConfirmModal(props) {
1805
1882
  )
1806
1883
  }
1807
1884
  ),
1808
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(ModalHeading, { children: content == null ? void 0 : content.heading }),
1809
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(ModalDescription, { children: content == null ? void 0 : content.description })
1885
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ModalHeading, { children: content == null ? void 0 : content.heading }),
1886
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(ModalDescription, { children: content == null ? void 0 : content.description })
1810
1887
  ] }),
1811
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(
1888
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
1812
1889
  "div",
1813
1890
  {
1814
1891
  className: (0, import_patterns13.hstack)({
1815
1892
  gap: "4"
1816
1893
  }),
1817
1894
  children: [
1818
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1895
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1819
1896
  Button,
1820
1897
  {
1821
1898
  autoFocus: true,
@@ -1829,7 +1906,7 @@ function ConfirmModal(props) {
1829
1906
  children: content == null ? void 0 : content.actionText
1830
1907
  }
1831
1908
  ),
1832
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
1909
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1833
1910
  Button,
1834
1911
  {
1835
1912
  className: (0, import_css35.css)({
@@ -1863,7 +1940,7 @@ var import_react17 = require("react");
1863
1940
  var import_patterns14 = require("@cerberus/styled-system/patterns");
1864
1941
  var import_recipes29 = require("@cerberus/styled-system/recipes");
1865
1942
  var import_css36 = require("@cerberus/styled-system/css");
1866
- var import_jsx_runtime42 = require("react/jsx-runtime");
1943
+ var import_jsx_runtime43 = require("react/jsx-runtime");
1867
1944
  var NotificationsContext = (0, import_react17.createContext)(null);
1868
1945
  function NotificationCenter(props) {
1869
1946
  const [activeNotifications, setActiveNotifications] = (0, import_react17.useState)([]);
@@ -1896,10 +1973,10 @@ function NotificationCenter(props) {
1896
1973
  }),
1897
1974
  [handleNotify]
1898
1975
  );
1899
- return /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(NotificationsContext.Provider, { value, children: [
1976
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(NotificationsContext.Provider, { value, children: [
1900
1977
  props.children,
1901
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Show, { when: activeNotifications.length > 0, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Portal, { container: props.container, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)("div", { className: styles.center, children: [
1902
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(Show, { when: activeNotifications.length >= 4, children: /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1978
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Show, { when: activeNotifications.length > 0, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Portal, { container: props.container, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)("div", { className: styles.center, children: [
1979
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Show, { when: activeNotifications.length >= 4, children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
1903
1980
  Button,
1904
1981
  {
1905
1982
  className: (0, import_css36.cx)(styles.closeAll, (0, import_patterns14.animateIn)()),
@@ -1911,7 +1988,7 @@ function NotificationCenter(props) {
1911
1988
  children: "Close all"
1912
1989
  }
1913
1990
  ) }),
1914
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
1991
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
1915
1992
  "div",
1916
1993
  {
1917
1994
  className: (0, import_patterns14.vstack)({
@@ -1921,17 +1998,11 @@ function NotificationCenter(props) {
1921
1998
  style: {
1922
1999
  alignItems: "flex-end"
1923
2000
  },
1924
- children: activeNotifications.map((option) => /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
1925
- Notification,
2001
+ children: activeNotifications.map((option) => /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2002
+ MatchNotification,
1926
2003
  {
1927
- id: option.id,
1928
- onClose: handleClose,
1929
- open: true,
1930
- palette: option.palette,
1931
- children: [
1932
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(NotificationHeading, { palette: option.palette, children: option.heading }),
1933
- /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(NotificationDescription, { palette: option.palette, children: option.description })
1934
- ]
2004
+ ...option,
2005
+ onClose: handleClose
1935
2006
  },
1936
2007
  option.id
1937
2008
  ))
@@ -1940,6 +2011,52 @@ function NotificationCenter(props) {
1940
2011
  ] }) }) })
1941
2012
  ] });
1942
2013
  }
2014
+ function MatchNotification(props) {
2015
+ const { palette, id, onClose, heading, description } = props;
2016
+ switch (palette) {
2017
+ case "success":
2018
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2019
+ Notification,
2020
+ {
2021
+ id,
2022
+ onClose,
2023
+ open: true,
2024
+ palette: "success",
2025
+ children: [
2026
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationHeading, { palette: "success", children: heading }),
2027
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationDescription, { palette: "success", children: description })
2028
+ ]
2029
+ },
2030
+ id
2031
+ );
2032
+ case "warning":
2033
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2034
+ Notification,
2035
+ {
2036
+ id,
2037
+ onClose,
2038
+ open: true,
2039
+ palette: "warning",
2040
+ children: [
2041
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationHeading, { palette: "warning", children: heading }),
2042
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationDescription, { palette: "warning", children: description })
2043
+ ]
2044
+ },
2045
+ id
2046
+ );
2047
+ case "danger":
2048
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Notification, { id, onClose, open: true, palette: "danger", children: [
2049
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationHeading, { palette: "danger", children: heading }),
2050
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationDescription, { palette: "danger", children: description })
2051
+ ] }, id);
2052
+ case "info":
2053
+ default:
2054
+ return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Notification, { id, onClose, open: true, palette: "info", children: [
2055
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationHeading, { palette: "info", children: heading }),
2056
+ /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(NotificationDescription, { palette: "info", children: description })
2057
+ ] }, id);
2058
+ }
2059
+ }
1943
2060
  function useNotificationCenter() {
1944
2061
  const context = (0, import_react17.useContext)(NotificationsContext);
1945
2062
  if (!context) {
@@ -1954,7 +2071,7 @@ function useNotificationCenter() {
1954
2071
  var import_react18 = require("react");
1955
2072
  var import_css37 = require("@cerberus/styled-system/css");
1956
2073
  var import_patterns15 = require("@cerberus/styled-system/patterns");
1957
- var import_jsx_runtime43 = require("react/jsx-runtime");
2074
+ var import_jsx_runtime44 = require("react/jsx-runtime");
1958
2075
  var PromptModalContext = (0, import_react18.createContext)(null);
1959
2076
  function PromptModal(props) {
1960
2077
  const { modalRef, show, close } = useModal();
@@ -2004,36 +2121,36 @@ function PromptModal(props) {
2004
2121
  }),
2005
2122
  [handleShow]
2006
2123
  );
2007
- return /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(PromptModalContext.Provider, { value, children: [
2124
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(PromptModalContext.Provider, { value, children: [
2008
2125
  props.children,
2009
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Modal, { onKeyDown: focusTrap, ref: modalRef, children: [
2010
- /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(ModalHeader, { children: [
2011
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2126
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(Portal, { children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(Modal, { onKeyDown: focusTrap, ref: modalRef, children: [
2127
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(ModalHeader, { children: [
2128
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2012
2129
  "div",
2013
2130
  {
2014
2131
  className: (0, import_patterns15.hstack)({
2015
2132
  justify: "center",
2016
2133
  w: "full"
2017
2134
  }),
2018
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2135
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2019
2136
  Show,
2020
2137
  {
2021
2138
  when: palette === "danger",
2022
- fallback: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2139
+ fallback: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2023
2140
  Avatar,
2024
2141
  {
2025
2142
  ariaLabel: "",
2026
- gradient: "light-purple",
2027
- icon: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(PromptIcon, { size: 24 }),
2143
+ gradient: "charon-light",
2144
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PromptIcon, { size: 24 }),
2028
2145
  src: ""
2029
2146
  }
2030
2147
  ),
2031
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2148
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2032
2149
  Avatar,
2033
2150
  {
2034
2151
  ariaLabel: "",
2035
- gradient: "red",
2036
- icon: /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(PromptIcon, { size: 24 }),
2152
+ gradient: "hades-dark",
2153
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PromptIcon, { size: 24 }),
2037
2154
  src: ""
2038
2155
  }
2039
2156
  )
@@ -2041,10 +2158,10 @@ function PromptModal(props) {
2041
2158
  )
2042
2159
  }
2043
2160
  ),
2044
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ModalHeading, { children: content == null ? void 0 : content.heading }),
2045
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(ModalDescription, { children: content == null ? void 0 : content.description })
2161
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ModalHeading, { children: content == null ? void 0 : content.heading }),
2162
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ModalDescription, { children: content == null ? void 0 : content.description })
2046
2163
  ] }),
2047
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2164
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2048
2165
  "div",
2049
2166
  {
2050
2167
  className: (0, import_patterns15.vstack)({
@@ -2052,10 +2169,10 @@ function PromptModal(props) {
2052
2169
  mt: "4",
2053
2170
  mb: "8"
2054
2171
  }),
2055
- children: /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Field, { invalid: !isValid, children: [
2056
- /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(Label, { htmlFor: "confirm", size: "md", children: [
2172
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(Field, { invalid: !isValid, children: [
2173
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(Label, { htmlFor: "confirm", size: "md", children: [
2057
2174
  "Type",
2058
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2175
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2059
2176
  "strong",
2060
2177
  {
2061
2178
  className: (0, import_css37.css)({
@@ -2066,7 +2183,7 @@ function PromptModal(props) {
2066
2183
  ),
2067
2184
  "to confirm"
2068
2185
  ] }),
2069
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2186
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2070
2187
  Input,
2071
2188
  {
2072
2189
  id: "confirm",
@@ -2078,7 +2195,7 @@ function PromptModal(props) {
2078
2195
  ] })
2079
2196
  }
2080
2197
  ),
2081
- /* @__PURE__ */ (0, import_jsx_runtime43.jsxs)(
2198
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
2082
2199
  "div",
2083
2200
  {
2084
2201
  className: (0, import_patterns15.hstack)({
@@ -2086,7 +2203,7 @@ function PromptModal(props) {
2086
2203
  gap: "4"
2087
2204
  }),
2088
2205
  children: [
2089
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2206
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2090
2207
  Button,
2091
2208
  {
2092
2209
  autoFocus: true,
@@ -2101,7 +2218,7 @@ function PromptModal(props) {
2101
2218
  children: content == null ? void 0 : content.actionText
2102
2219
  }
2103
2220
  ),
2104
- /* @__PURE__ */ (0, import_jsx_runtime43.jsx)(
2221
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
2105
2222
  Button,
2106
2223
  {
2107
2224
  className: (0, import_css37.css)({
@@ -2195,7 +2312,7 @@ function useTheme(defaultTheme = "cerberus", defaultColorMode = "light", options
2195
2312
  }
2196
2313
 
2197
2314
  // src/context/theme.tsx
2198
- var import_jsx_runtime44 = require("react/jsx-runtime");
2315
+ var import_jsx_runtime45 = require("react/jsx-runtime");
2199
2316
  var ThemeContext = (0, import_react20.createContext)(
2200
2317
  null
2201
2318
  );
@@ -2205,7 +2322,7 @@ function ThemeProvider(props) {
2205
2322
  updateMode: props.updateMode,
2206
2323
  updateTheme: props.updateTheme
2207
2324
  });
2208
- return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(ThemeContext.Provider, { value: state, children: props.children });
2325
+ return /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(ThemeContext.Provider, { value: state, children: props.children });
2209
2326
  }
2210
2327
  function useThemeContext() {
2211
2328
  const context = (0, import_react20.useContext)(ThemeContext);
@@ -2272,6 +2389,7 @@ __reExport(src_exports, require("@dnd-kit/core"), module.exports);
2272
2389
  Radio,
2273
2390
  Select,
2274
2391
  Show,
2392
+ Spinner,
2275
2393
  THEME_KEY,
2276
2394
  Tab,
2277
2395
  TabList,