@aivenio/aquarium 1.14.0 → 1.16.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.
Files changed (43) hide show
  1. package/dist/_variables.scss +1 -1
  2. package/dist/_variables_timescale.scss +1 -1
  3. package/dist/atoms.cjs +184 -103
  4. package/dist/atoms.mjs +183 -103
  5. package/dist/src/atoms/Navigation/Navigation.d.ts +20 -0
  6. package/dist/src/atoms/Navigation/Navigation.js +49 -0
  7. package/dist/src/atoms/PageHeader/PageHeader.d.ts +13 -0
  8. package/dist/src/atoms/PageHeader/PageHeader.js +43 -0
  9. package/dist/src/atoms/index.d.ts +1 -0
  10. package/dist/src/atoms/index.js +2 -1
  11. package/dist/src/molecules/Alert/Alert.js +4 -5
  12. package/dist/src/molecules/Banner/Banner.js +4 -4
  13. package/dist/src/molecules/Button/Button.d.ts +63 -46
  14. package/dist/src/molecules/Button/Button.js +59 -13
  15. package/dist/src/molecules/Card/Card.js +4 -4
  16. package/dist/src/molecules/Card/Compact.js +4 -4
  17. package/dist/src/molecules/DataList/DataList.d.ts +3 -3
  18. package/dist/src/molecules/DataList/DataList.js +20 -7
  19. package/dist/src/molecules/DataTable/DataTable.d.ts +3 -3
  20. package/dist/src/molecules/DataTable/DataTable.js +19 -7
  21. package/dist/src/molecules/Dialog/Dialog.js +4 -4
  22. package/dist/src/molecules/DropdownMenu/DropdownMenu.d.ts +11 -5
  23. package/dist/src/molecules/DropdownMenu/DropdownMenu.js +2 -1
  24. package/dist/src/molecules/EmptyState/EmptyState.js +4 -4
  25. package/dist/src/molecules/LineClamp/LineClamp.js +3 -3
  26. package/dist/src/molecules/Modal/Modal.js +4 -4
  27. package/dist/src/molecules/Navigation/Navigation.d.ts +19 -0
  28. package/dist/src/molecules/Navigation/Navigation.js +27 -0
  29. package/dist/src/molecules/PageHeader/PageHeader.d.ts +2 -0
  30. package/dist/src/molecules/PageHeader/PageHeader.js +13 -12
  31. package/dist/src/molecules/Section/Section.js +3 -3
  32. package/dist/src/molecules/Stepper/Stepper.js +2 -1
  33. package/dist/src/molecules/index.d.ts +1 -0
  34. package/dist/src/molecules/index.js +2 -1
  35. package/dist/src/utils/table/types.d.ts +16 -1
  36. package/dist/src/utils/table/types.js +1 -1
  37. package/dist/styles.css +24 -11
  38. package/dist/styles_timescaledb.css +24 -11
  39. package/dist/system.cjs +1604 -1416
  40. package/dist/system.mjs +1605 -1418
  41. package/dist/tsconfig.module.tsbuildinfo +1 -1
  42. package/dist/types/tailwindGenerated.d.ts +1 -1
  43. package/package.json +2 -2
package/dist/system.cjs CHANGED
@@ -1458,6 +1458,22 @@ var require_questionMark = __commonJS({
1458
1458
  }
1459
1459
  });
1460
1460
 
1461
+ // src/icons/more.js
1462
+ var require_more = __commonJS({
1463
+ "src/icons/more.js"(exports) {
1464
+ "use strict";
1465
+ var data = {
1466
+ "body": '<path fill="currentColor" d="M3.5 13a2.5 2.5 0 100-5 2.5 2.5 0 000 5Zm14 0a2.5 2.5 0 100-5 2.5 2.5 0 000 5Zm-7 0a2.5 2.5 0 100-5 2.5 2.5 0 000 5Z"/>',
1467
+ "left": 0,
1468
+ "top": 0,
1469
+ "width": 20,
1470
+ "height": 20
1471
+ };
1472
+ exports.__esModule = true;
1473
+ exports.default = data;
1474
+ }
1475
+ });
1476
+
1461
1477
  // src/icons/smallCross.js
1462
1478
  var require_smallCross = __commonJS({
1463
1479
  "src/icons/smallCross.js"(exports) {
@@ -1570,7 +1586,7 @@ __export(system_exports, {
1570
1586
  Divider: () => Divider2,
1571
1587
  Dropdown: () => Dropdown,
1572
1588
  DropdownButton: () => DropdownButton,
1573
- DropdownMenu: () => DropdownMenu3,
1589
+ DropdownMenu: () => DropdownMenu2,
1574
1590
  Element: () => Element,
1575
1591
  EmptyState: () => EmptyState,
1576
1592
  EmptyStateLayout: () => EmptyStateLayout,
@@ -1592,7 +1608,7 @@ __export(system_exports, {
1592
1608
  LabelControl: () => LabelControl,
1593
1609
  LineClamp: () => LineClamp2,
1594
1610
  Link: () => Link2,
1595
- List: () => List,
1611
+ List: () => List2,
1596
1612
  ListItem: () => ListItem,
1597
1613
  Modal: () => Modal2,
1598
1614
  ModalTab: () => ModalTab,
@@ -1604,9 +1620,10 @@ __export(system_exports, {
1604
1620
  MultiSelectBase: () => MultiSelectBase,
1605
1621
  NativeSelect: () => NativeSelect,
1606
1622
  NativeSelectBase: () => NativeSelectBase,
1623
+ Navigation: () => Navigation2,
1607
1624
  OneLineBanner: () => OneLineBanner,
1608
1625
  Option: () => Option,
1609
- PageHeader: () => PageHeader,
1626
+ PageHeader: () => PageHeader2,
1610
1627
  Pagination: () => Pagination,
1611
1628
  Popover: () => Popover2,
1612
1629
  PopoverDialog: () => PopoverDialog2,
@@ -1621,7 +1638,7 @@ __export(system_exports, {
1621
1638
  SecondaryButton: () => SecondaryButton,
1622
1639
  SecondaryDropdownButton: () => SecondaryDropdownButton,
1623
1640
  SecondaryGhostButton: () => SecondaryGhostButton,
1624
- Section: () => Section3,
1641
+ Section: () => Section4,
1625
1642
  SegmentedControl: () => SegmentedControl,
1626
1643
  SegmentedControlGroup: () => SegmentedControlGroup,
1627
1644
  Select: () => Select2,
@@ -1712,7 +1729,7 @@ __export(molecules_exports, {
1712
1729
  Divider: () => Divider2,
1713
1730
  Dropdown: () => Dropdown,
1714
1731
  DropdownButton: () => DropdownButton,
1715
- DropdownMenu: () => DropdownMenu3,
1732
+ DropdownMenu: () => DropdownMenu2,
1716
1733
  Element: () => Element,
1717
1734
  EmptyState: () => EmptyState,
1718
1735
  EmptyStateLayout: () => EmptyStateLayout,
@@ -1730,7 +1747,7 @@ __export(molecules_exports, {
1730
1747
  InputBase: () => InputBase,
1731
1748
  LineClamp: () => LineClamp2,
1732
1749
  Link: () => Link2,
1733
- List: () => List,
1750
+ List: () => List2,
1734
1751
  ListItem: () => ListItem,
1735
1752
  Modal: () => Modal2,
1736
1753
  ModalTab: () => ModalTab,
@@ -1742,9 +1759,10 @@ __export(molecules_exports, {
1742
1759
  MultiSelectBase: () => MultiSelectBase,
1743
1760
  NativeSelect: () => NativeSelect,
1744
1761
  NativeSelectBase: () => NativeSelectBase,
1762
+ Navigation: () => Navigation2,
1745
1763
  OneLineBanner: () => OneLineBanner,
1746
1764
  Option: () => Option,
1747
- PageHeader: () => PageHeader,
1765
+ PageHeader: () => PageHeader2,
1748
1766
  Pagination: () => Pagination,
1749
1767
  Popover: () => Popover2,
1750
1768
  PopoverDialog: () => PopoverDialog2,
@@ -1758,7 +1776,7 @@ __export(molecules_exports, {
1758
1776
  SecondaryButton: () => SecondaryButton,
1759
1777
  SecondaryDropdownButton: () => SecondaryDropdownButton,
1760
1778
  SecondaryGhostButton: () => SecondaryGhostButton,
1761
- Section: () => Section3,
1779
+ Section: () => Section4,
1762
1780
  SegmentedControl: () => SegmentedControl,
1763
1781
  SegmentedControlGroup: () => SegmentedControlGroup,
1764
1782
  Select: () => Select2,
@@ -3215,17 +3233,20 @@ var asButton = (Component, isDropdownButton) => {
3215
3233
  className: classNames(
3216
3234
  UNSAFE_className,
3217
3235
  !isIconOnlyButton && COLOR_CLASSNAMES[kind],
3218
- tw("inline-block border-0 rounded-sm transition whitespace-nowrap focus:outline-none relative", {
3219
- "text-grey-70 p-2 active:text-grey-70 active:bg-transparent hover:text-grey-90 hover:bg-grey-0 focus-visible:text-grey-90 focus-visible:bg-grey-0 disabled:text-grey-20 disabled:bg-transparent": isIconOnlyButton,
3220
- "typography-default-strong": !dense && !isIconOnlyButton && kind !== "text",
3221
- "typography-small-strong": dense && !isIconOnlyButton,
3222
- "py-3 px-4": !dense && isButton,
3223
- "py-2 px-3": dense && isButton,
3224
- "py-3": !dense && isGhost,
3225
- "py-2": dense && isGhost,
3226
- "block w-full": fullWidth && !isIconOnlyButton,
3227
- "cursor-not-allowed": !!disabled || !!loading2
3228
- })
3236
+ tw(
3237
+ "inline-block border-0 rounded-sm transition whitespace-nowrap focus:outline-none relative text-center",
3238
+ {
3239
+ "text-grey-70 p-2 active:text-grey-70 active:bg-transparent hover:text-grey-90 hover:bg-grey-0 focus-visible:text-grey-90 focus-visible:bg-grey-0 disabled:text-grey-20 disabled:bg-transparent": isIconOnlyButton,
3240
+ "typography-default-strong": !dense && !isIconOnlyButton && kind !== "text",
3241
+ "typography-small-strong": dense && !isIconOnlyButton && kind !== "text",
3242
+ "py-3 px-4": !dense && isButton,
3243
+ "py-2 px-3": dense && isButton,
3244
+ "py-3": !dense && isGhost,
3245
+ "py-2": dense && isGhost,
3246
+ "block w-full": fullWidth && !isIconOnlyButton,
3247
+ "cursor-not-allowed": !!disabled || !!loading2
3248
+ }
3249
+ )
3229
3250
  ),
3230
3251
  "aria-label": isIconOnlyButton ? ariaLabel != null ? ariaLabel : tooltip : ariaLabel,
3231
3252
  disabled: disabled || loading2
@@ -3252,31 +3273,36 @@ var PrimaryButton = import_react11.default.forwardRef((props, ref) => /* @__PURE
3252
3273
  }, props), {
3253
3274
  kind: "primary"
3254
3275
  })));
3255
- PrimaryButton.displayName = "PrimaryButton";
3276
+ PrimaryButton.displayName = "Button.Primary";
3277
+ Button.Primary = PrimaryButton;
3256
3278
  var SecondaryButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(Button, __spreadProps(__spreadValues({
3257
3279
  ref
3258
3280
  }, props), {
3259
3281
  kind: "secondary"
3260
3282
  })));
3261
- SecondaryButton.displayName = "SecondaryButton";
3283
+ SecondaryButton.displayName = "Button.Secondary";
3284
+ Button.Secondary = SecondaryButton;
3262
3285
  var GhostButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(Button, __spreadProps(__spreadValues({
3263
3286
  ref
3264
3287
  }, props), {
3265
3288
  kind: "ghost"
3266
3289
  })));
3267
- GhostButton.displayName = "GhostButton";
3290
+ GhostButton.displayName = "Button.Ghost";
3291
+ Button.Ghost = GhostButton;
3268
3292
  var SecondaryGhostButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(Button, __spreadProps(__spreadValues({
3269
3293
  ref
3270
3294
  }, props), {
3271
3295
  kind: "secondary-ghost"
3272
3296
  })));
3273
- SecondaryGhostButton.displayName = "SecondaryGhostButton";
3297
+ SecondaryGhostButton.displayName = "Button.SecondaryGhost";
3298
+ Button.SecondaryGhost = SecondaryGhostButton;
3274
3299
  var TextButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(Button, __spreadProps(__spreadValues({
3275
3300
  ref
3276
3301
  }, props), {
3277
3302
  kind: "text"
3278
3303
  })));
3279
- TextButton.displayName = "TextButton";
3304
+ TextButton.displayName = "Button.Text";
3305
+ Button.Text = TextButton;
3280
3306
  var IconButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(Button, __spreadProps(__spreadValues({
3281
3307
  ref
3282
3308
  }, props), {
@@ -3284,8 +3310,11 @@ var IconButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__
3284
3310
  loading: false,
3285
3311
  fullWidth: false
3286
3312
  })));
3287
- IconButton.displayName = "IconButton";
3313
+ IconButton.displayName = "Button.Icon";
3314
+ Button.Icon = IconButton;
3288
3315
  var ExternalLinkButton = asButton("a");
3316
+ ExternalLinkButton.displayName = "Button.ExternalLink";
3317
+ Button.ExternalLink = ExternalLinkButton;
3289
3318
  var IconExternalLinkButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(ExternalLinkButton, __spreadProps(__spreadValues({
3290
3319
  ref
3291
3320
  }, props), {
@@ -3293,20 +3322,25 @@ var IconExternalLinkButton = import_react11.default.forwardRef((props, ref) => /
3293
3322
  loading: false,
3294
3323
  fullWidth: false
3295
3324
  })));
3296
- IconExternalLinkButton.displayName = "IconExternalLink";
3325
+ IconExternalLinkButton.displayName = "Button.IconExternalLink";
3326
+ Button.IconExternalLink = IconExternalLinkButton;
3297
3327
  var DropdownButton = asButton("button", true);
3328
+ DropdownButton.displayName = "Button.Dropdown";
3329
+ Button.Dropdown = DropdownButton;
3298
3330
  var PrimaryDropdownButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(DropdownButton, __spreadProps(__spreadValues({
3299
3331
  ref
3300
3332
  }, props), {
3301
3333
  kind: "primary"
3302
3334
  })));
3303
- PrimaryDropdownButton.displayName = "PrimaryDropdownButton";
3335
+ PrimaryDropdownButton.displayName = "Button.PrimaryDropdown";
3336
+ Button.PrimaryDropdown = PrimaryDropdownButton;
3304
3337
  var SecondaryDropdownButton = import_react11.default.forwardRef((props, ref) => /* @__PURE__ */ import_react11.default.createElement(DropdownButton, __spreadProps(__spreadValues({
3305
3338
  ref
3306
3339
  }, props), {
3307
3340
  kind: "secondary"
3308
3341
  })));
3309
- SecondaryDropdownButton.displayName = "SecondaryDropdownButton";
3342
+ SecondaryDropdownButton.displayName = "Button.SecondaryDropdown";
3343
+ Button.SecondaryDropdown = SecondaryDropdownButton;
3310
3344
 
3311
3345
  // src/atoms/Alert/Alert.tsx
3312
3346
  var import_react13 = __toESM(require("react"));
@@ -3445,9 +3479,9 @@ var Alert2 = ({ description, type, title, onDismiss, children, action }) => /* @
3445
3479
  }, /* @__PURE__ */ import_react14.default.createElement(Alert.Icon, {
3446
3480
  type,
3447
3481
  dense: Boolean(title)
3448
- }), title && /* @__PURE__ */ import_react14.default.createElement(Alert.Title, null, title), /* @__PURE__ */ import_react14.default.createElement(Alert.Description, null, children || description), action && /* @__PURE__ */ import_react14.default.createElement(Alert.Actions, null, !isLink(action) && /* @__PURE__ */ import_react14.default.createElement(GhostButton, __spreadValues({
3482
+ }), title && /* @__PURE__ */ import_react14.default.createElement(Alert.Title, null, title), /* @__PURE__ */ import_react14.default.createElement(Alert.Description, null, children || description), action && /* @__PURE__ */ import_react14.default.createElement(Alert.Actions, null, !isLink(action) && /* @__PURE__ */ import_react14.default.createElement(Button.Ghost, __spreadValues({
3449
3483
  dense: true
3450
- }, (0, import_omit.default)(action, "text")), action.text), isLink(action) && /* @__PURE__ */ import_react14.default.createElement(ExternalLinkButton, __spreadValues({
3484
+ }, (0, import_omit.default)(action, "text")), action.text), isLink(action) && /* @__PURE__ */ import_react14.default.createElement(Button.ExternalLink, __spreadValues({
3451
3485
  dense: true,
3452
3486
  kind: "ghost"
3453
3487
  }, (0, import_omit.default)(action, "text")), action.text)), onDismiss && /* @__PURE__ */ import_react14.default.createElement(Alert.Dismiss, {
@@ -3844,7 +3878,7 @@ var createBanner = (displayName, opts = {}) => {
3844
3878
  flexGrow: isDismissable ? false : true
3845
3879
  }, children || description), action && /* @__PURE__ */ import_react22.default.createElement(Banner.Actions, {
3846
3880
  layout
3847
- }, /* @__PURE__ */ import_react22.default.createElement(GhostButton, __spreadValues({
3881
+ }, /* @__PURE__ */ import_react22.default.createElement(Button.Ghost, __spreadValues({
3848
3882
  dense: true
3849
3883
  }, (0, import_omit3.default)(action, "text")), action.text))), (props.layout === "vertical" || props.layout === void 0) && props.image !== void 0 && /* @__PURE__ */ import_react22.default.createElement(Banner.ImageContainer, null, props.image ? /* @__PURE__ */ import_react22.default.createElement("img", {
3850
3884
  src: props.image,
@@ -3853,7 +3887,7 @@ var createBanner = (displayName, opts = {}) => {
3853
3887
  style: { width: props.imageWidth, height: props.imageHeight }
3854
3888
  }) : /* @__PURE__ */ import_react22.default.createElement(BannerImageSkeleton, null)), isDismissable && /* @__PURE__ */ import_react22.default.createElement(Banner.DismissContainer, {
3855
3889
  layout
3856
- }, /* @__PURE__ */ import_react22.default.createElement(IconButton, {
3890
+ }, /* @__PURE__ */ import_react22.default.createElement(Button.Icon, {
3857
3891
  type: "button",
3858
3892
  tooltip: "Dismiss",
3859
3893
  icon: import_cross2.default,
@@ -4291,9 +4325,9 @@ var CompactCard = ({
4291
4325
  color: "grey-70"
4292
4326
  }, children))), (action || link) && /* @__PURE__ */ import_react30.default.createElement(Card.Actions, {
4293
4327
  dense: true
4294
- }, action && /* @__PURE__ */ import_react30.default.createElement(SecondaryButton, __spreadValues({
4328
+ }, action && /* @__PURE__ */ import_react30.default.createElement(Button.Secondary, __spreadValues({
4295
4329
  dense: true
4296
- }, (0, import_lodash.omit)(action, "text")), action.text), link && /* @__PURE__ */ import_react30.default.createElement(ExternalLinkButton, __spreadValues({
4330
+ }, (0, import_lodash.omit)(action, "text")), action.text), link && /* @__PURE__ */ import_react30.default.createElement(Button.ExternalLink, __spreadValues({
4297
4331
  dense: true,
4298
4332
  kind: "ghost"
4299
4333
  }, (0, import_lodash.omit)(link, "text")), link.text)));
@@ -4385,9 +4419,9 @@ var Card2 = ({
4385
4419
  wordBreak: "break-all"
4386
4420
  }, titleContent) : titleContent, /* @__PURE__ */ import_react31.default.createElement(Typography2.Caption, {
4387
4421
  color: "grey-70"
4388
- }, children || description)), (action || link) && /* @__PURE__ */ import_react31.default.createElement(Card.Actions, null, action && /* @__PURE__ */ import_react31.default.createElement(SecondaryButton, __spreadValues({
4422
+ }, children || description)), (action || link) && /* @__PURE__ */ import_react31.default.createElement(Card.Actions, null, action && /* @__PURE__ */ import_react31.default.createElement(Button.Secondary, __spreadValues({
4389
4423
  dense: true
4390
- }, (0, import_omit4.default)(action, "text")), action.text), link && /* @__PURE__ */ import_react31.default.createElement(ExternalLinkButton, __spreadValues({
4424
+ }, (0, import_omit4.default)(action, "text")), action.text), link && /* @__PURE__ */ import_react31.default.createElement(Button.ExternalLink, __spreadValues({
4391
4425
  dense: true,
4392
4426
  kind: "ghost"
4393
4427
  }, (0, import_omit4.default)(link, "text")), link.text)));
@@ -5351,100 +5385,549 @@ var Container2 = ({ maxWidth = "xl", children }) => /* @__PURE__ */ import_react
5351
5385
  }, children);
5352
5386
 
5353
5387
  // src/molecules/DataList/DataList.tsx
5354
- var import_react53 = __toESM(require("react"));
5388
+ var import_react57 = __toESM(require("react"));
5389
+ var import_compact = __toESM(require("lodash/compact"));
5390
+ var import_isFunction = __toESM(require("lodash/isFunction"));
5355
5391
 
5356
- // src/molecules/Template/Template.tsx
5392
+ // src/molecules/DropdownMenu/DropdownMenu.tsx
5393
+ var import_react51 = __toESM(require("react"));
5394
+ var import_i18n = require("@react-aria/i18n");
5395
+ var import_interactions2 = require("@react-aria/interactions");
5396
+ var import_menu = require("@react-aria/menu");
5397
+ var import_separator = require("@react-aria/separator");
5398
+ var import_utils3 = require("@react-aria/utils");
5399
+ var import_collections = require("@react-stately/collections");
5400
+ var import_menu2 = require("@react-stately/menu");
5401
+ var import_tree = require("@react-stately/tree");
5402
+
5403
+ // src/molecules/Input/Input.tsx
5404
+ var import_react49 = __toESM(require("react"));
5405
+ var import_omit6 = __toESM(require("lodash/omit"));
5406
+ var import_toString = __toESM(require("lodash/toString"));
5407
+ var import_uniqueId3 = __toESM(require("lodash/uniqueId"));
5408
+
5409
+ // src/utils/form/InputAdornment/InputAdornment.tsx
5357
5410
  var import_react48 = __toESM(require("react"));
5358
- var Template = ({
5359
- children,
5360
- columns,
5361
- alignSelf,
5362
- alignContent,
5363
- alignItems,
5364
- justifySelf,
5365
- gap,
5366
- columnGap,
5367
- rowGap,
5368
- fullHeight
5369
- }) => {
5370
- const gridTemplateColumns = typeof columns === "number" ? "1fr ".repeat(columns) : columns.map((column) => typeof column === "number" ? `${column}px` : column === "auto" ? column : `${column}fr`).join(" ");
5371
- const styles = useStyle({
5372
- height: fullHeight ? "100%" : void 0,
5373
- display: "grid",
5374
- gridTemplateColumns,
5375
- alignSelf,
5376
- alignContent,
5377
- alignItems,
5378
- justifySelf,
5379
- gap,
5380
- rowGap,
5381
- columnGap
5382
- });
5383
- return /* @__PURE__ */ import_react48.default.createElement("div", {
5384
- style: __spreadValues({}, styles)
5385
- }, children);
5411
+ var import_cross4 = __toESM(require_cross());
5412
+ var import_error2 = __toESM(require_error());
5413
+ var import_search2 = __toESM(require_search());
5414
+ var import_tick3 = __toESM(require_tick());
5415
+ var InputAdornment = ({ placement = "right", className, dense, children }) => {
5416
+ return /* @__PURE__ */ import_react48.default.createElement("span", {
5417
+ className: classNames(className, "absolute inset-y-0 grow-0 text-grey-40 flex items-center mx-3", {
5418
+ "right-0": placement === "right",
5419
+ "left-0": placement === "left",
5420
+ "typography-small": dense,
5421
+ "typography-default-strong": !dense
5422
+ })
5423
+ }, /* @__PURE__ */ import_react48.default.createElement(Flexbox, {
5424
+ gap: "3",
5425
+ wrap: "wrap"
5426
+ }, children));
5386
5427
  };
5428
+ var SearchIcon = ({ onClick }) => /* @__PURE__ */ import_react48.default.createElement(Icon, {
5429
+ icon: import_search2.default,
5430
+ color: "grey-30",
5431
+ "data-testid": "icon-search",
5432
+ onClick
5433
+ });
5434
+ var ResetIcon = ({ onClick }) => /* @__PURE__ */ import_react48.default.createElement(Icon, {
5435
+ className: "hover:cursor-pointer",
5436
+ icon: import_cross4.default,
5437
+ color: "grey-30",
5438
+ "data-testid": "icon-reset",
5439
+ onClick
5440
+ });
5387
5441
 
5388
- // src/atoms/DataList/DataList.tsx
5389
- var import_react51 = __toESM(require("react"));
5442
+ // src/molecules/Input/Input.tsx
5443
+ var createInput = (displayName, opts = {}) => {
5444
+ const InputComponent = (0, import_react49.forwardRef)(
5445
+ (_a, ref) => {
5446
+ var _b = _a, {
5447
+ type = "text",
5448
+ maxLength,
5449
+ valid = true,
5450
+ required = false,
5451
+ endAdornment,
5452
+ disabled = false,
5453
+ readOnly = false
5454
+ } = _b, props = __objRest(_b, [
5455
+ "type",
5456
+ "maxLength",
5457
+ "valid",
5458
+ "required",
5459
+ "endAdornment",
5460
+ "disabled",
5461
+ "readOnly"
5462
+ ]);
5463
+ var _a2;
5464
+ const inputRef = import_react49.default.useRef(null);
5465
+ (0, import_react49.useImperativeHandle)(ref, () => inputRef.current);
5466
+ const handleReset = () => {
5467
+ var _a3;
5468
+ const el = inputRef.current;
5469
+ if (el) {
5470
+ const lastValue = el.value;
5471
+ el.value = "";
5472
+ (_a3 = el._valueTracker) == null ? void 0 : _a3.setValue(lastValue);
5473
+ el.dispatchEvent(new Event("change", { bubbles: true }));
5474
+ el.focus();
5475
+ }
5476
+ };
5477
+ return /* @__PURE__ */ import_react49.default.createElement("span", {
5478
+ className: tw("relative block")
5479
+ }, opts.adornment && /* @__PURE__ */ import_react49.default.createElement(InputAdornment, {
5480
+ placement: "left"
5481
+ }, opts.adornment), /* @__PURE__ */ import_react49.default.createElement("input", __spreadProps(__spreadValues({
5482
+ ref: inputRef,
5483
+ type
5484
+ }, props), {
5485
+ disabled,
5486
+ maxLength,
5487
+ required,
5488
+ readOnly,
5489
+ className: classNames(
5490
+ {
5491
+ "pl-7": opts.adornment
5492
+ },
5493
+ getCommonInputStyles({ readOnly, valid }),
5494
+ props.className
5495
+ )
5496
+ })), opts.canReset && (props.value || ((_a2 = inputRef.current) == null ? void 0 : _a2.value)) && /* @__PURE__ */ import_react49.default.createElement(InputAdornment, null, /* @__PURE__ */ import_react49.default.createElement(ResetIcon, {
5497
+ onClick: handleReset
5498
+ })), !opts.canReset && endAdornment && /* @__PURE__ */ import_react49.default.createElement(InputAdornment, null, endAdornment));
5499
+ }
5500
+ );
5501
+ InputComponent.displayName = displayName;
5502
+ InputComponent.Skeleton = () => /* @__PURE__ */ import_react49.default.createElement(Skeleton, {
5503
+ height: 38
5504
+ });
5505
+ return InputComponent;
5506
+ };
5507
+ var InputBase = createInput("InputBase");
5508
+ var SearchInput = createInput("SearchInput", { adornment: /* @__PURE__ */ import_react49.default.createElement(SearchIcon, null), canReset: true });
5509
+ var Input2 = import_react49.default.forwardRef((_a, ref) => {
5510
+ var _b = _a, { readOnly = false } = _b, props = __objRest(_b, ["readOnly"]);
5511
+ var _a2, _b2, _c;
5512
+ const [value, setValue] = (0, import_react49.useState)((_b2 = (_a2 = props.value) != null ? _a2 : props.defaultValue) != null ? _b2 : "");
5513
+ const id = (0, import_react49.useRef)((_c = props.id) != null ? _c : `input-${(0, import_uniqueId3.default)()}`);
5514
+ const errorMessageId = (0, import_uniqueId3.default)();
5515
+ const errorProps = props.valid === false ? { "aria-invalid": true, "aria-describedby": errorMessageId } : {};
5516
+ const _d = getLabelControlProps(props), { "data-testid": dataTestId } = _d, labelControlProps = __objRest(_d, ["data-testid"]);
5517
+ const baseProps = (0, import_omit6.default)(props, Object.keys(labelControlProps));
5518
+ return /* @__PURE__ */ import_react49.default.createElement(LabelControl, __spreadValues({
5519
+ id: `${id.current}-label`,
5520
+ htmlFor: id.current,
5521
+ messageId: errorMessageId,
5522
+ length: value !== void 0 ? (0, import_toString.default)(value).length : void 0
5523
+ }, labelControlProps), /* @__PURE__ */ import_react49.default.createElement(InputBase, __spreadProps(__spreadValues(__spreadValues({
5524
+ ref
5525
+ }, baseProps), errorProps), {
5526
+ id: id.current,
5527
+ "data-testid": dataTestId,
5528
+ onChange: (e) => {
5529
+ var _a3;
5530
+ setValue(e.currentTarget.value);
5531
+ (_a3 = props.onChange) == null ? void 0 : _a3.call(props, e);
5532
+ },
5533
+ disabled: props.disabled,
5534
+ maxLength: props.maxLength,
5535
+ required: props.required,
5536
+ valid: props.valid,
5537
+ readOnly
5538
+ })));
5539
+ });
5540
+ Input2.displayName = "Input";
5541
+ Input2.Skeleton = () => /* @__PURE__ */ import_react49.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react49.default.createElement(InputBase.Skeleton, null));
5542
+ Input2.Skeleton.displayName = "Input.Skeleton";
5390
5543
 
5391
- // src/atoms/Table/Table.tsx
5544
+ // src/atoms/DropdownMenu/DropdownMenu.tsx
5392
5545
  var import_react50 = __toESM(require("react"));
5393
-
5394
- // src/atoms/RadioButton/RadioButton.tsx
5395
- var import_react49 = __toESM(require("react"));
5396
- var RadioButton = import_react49.default.forwardRef(
5546
+ var import_tick4 = __toESM(require_tick());
5547
+ var DropdownMenu = import_react50.default.forwardRef(
5397
5548
  (_a, ref) => {
5398
- var _b = _a, { id, children, name, disabled = false, readOnly = false } = _b, props = __objRest(_b, ["id", "children", "name", "disabled", "readOnly"]);
5399
- return /* @__PURE__ */ import_react49.default.createElement("input", __spreadProps(__spreadValues({
5400
- id,
5549
+ var _b = _a, { maxHeight = "450px", minWidth = "125px", maxWidth, className, children } = _b, props = __objRest(_b, ["maxHeight", "minWidth", "maxWidth", "className", "children"]);
5550
+ return /* @__PURE__ */ import_react50.default.createElement("div", __spreadValues({
5401
5551
  ref,
5402
- type: "radio",
5403
- name
5404
- }, props), {
5405
- className: classNames(
5406
- tw(
5407
- "inline-flex justify-center items-center self-center appearance-none",
5408
- "w-5 h-5 p-[3px] rounded-full cursor-pointer border border-grey-20",
5409
- "outline-none focus:border-info-70 checked:bg-navyBlue-100 checked:shadow-whiteInset",
5410
- {
5411
- "hover:border-grey-50 checked:border-navyBlue-100": !disabled,
5412
- "cursor-not-allowed border-grey-5 bg-grey-0 checked:bg-opacity-40": disabled
5413
- }
5414
- )
5415
- ),
5416
- readOnly,
5417
- disabled
5552
+ style: { maxHeight, minWidth, maxWidth },
5553
+ className: classNames(className, "bg-white w-full flex flex-col overflow-x-hidden typography-small text-grey-70")
5554
+ }, props), children);
5555
+ }
5556
+ );
5557
+ var ContentContainer = ({ children }) => /* @__PURE__ */ import_react50.default.createElement("div", {
5558
+ className: tw("p-3 overflow-y-auto overflow-x-hidden")
5559
+ }, children);
5560
+ DropdownMenu.ContentContainer = ContentContainer;
5561
+ var List = import_react50.default.forwardRef(
5562
+ (_a, ref) => {
5563
+ var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
5564
+ return /* @__PURE__ */ import_react50.default.createElement("ul", __spreadValues({
5565
+ ref,
5566
+ className: classNames(className, "outline-none ring-0")
5567
+ }, props), children);
5568
+ }
5569
+ );
5570
+ DropdownMenu.List = List;
5571
+ var Group2 = import_react50.default.forwardRef(
5572
+ (_a, ref) => {
5573
+ var _b = _a, { className, title, titleProps, children } = _b, props = __objRest(_b, ["className", "title", "titleProps", "children"]);
5574
+ return /* @__PURE__ */ import_react50.default.createElement("li", __spreadValues({
5575
+ ref
5576
+ }, props), title && /* @__PURE__ */ import_react50.default.createElement("div", __spreadValues({
5577
+ className: classNames(className, "p-3 text-grey-40 uppercase cursor-default typography-caption", {
5578
+ "text-grey-20": props.disabled
5579
+ })
5580
+ }, titleProps), title), children);
5581
+ }
5582
+ );
5583
+ DropdownMenu.Group = Group2;
5584
+ var Item2 = import_react50.default.forwardRef(
5585
+ (_a, ref) => {
5586
+ var _b = _a, { kind, highlighted, selected, className, icon, children } = _b, props = __objRest(_b, ["kind", "highlighted", "selected", "className", "icon", "children"]);
5587
+ return /* @__PURE__ */ import_react50.default.createElement("li", __spreadValues({
5588
+ ref,
5589
+ className: classNames(className, "flex items-center gap-x-3 p-3 outline-none", {
5590
+ "cursor-pointer hover:bg-grey-0": !props.disabled,
5591
+ "bg-grey-0": highlighted,
5592
+ "text-primary-80": kind === "action",
5593
+ "text-grey-20 cursor-not-allowed": props.disabled
5594
+ })
5595
+ }, props), icon && /* @__PURE__ */ import_react50.default.createElement(InlineIcon, {
5596
+ icon
5597
+ }), /* @__PURE__ */ import_react50.default.createElement("span", {
5598
+ className: tw("grow")
5599
+ }, children), selected && /* @__PURE__ */ import_react50.default.createElement(InlineIcon, {
5600
+ icon: import_tick4.default
5418
5601
  }));
5419
5602
  }
5420
5603
  );
5421
-
5422
- // src/atoms/Table/Table.tsx
5423
- var import_chevronDown3 = __toESM(require_chevronDown());
5424
- var import_chevronUp2 = __toESM(require_chevronUp());
5425
- var HeadContext = import_react50.default.createContext(null);
5426
- var tableClassNames = tw("w-full relative typography-default border-spacing-0");
5427
- var Table = (_a) => {
5428
- var _b = _a, { children, ariaLabel, className } = _b, rest = __objRest(_b, ["children", "ariaLabel", "className"]);
5429
- return /* @__PURE__ */ import_react50.default.createElement("table", __spreadProps(__spreadValues({}, rest), {
5430
- className: classNames(tableClassNames, className),
5431
- "aria-label": ariaLabel
5432
- }), children);
5604
+ DropdownMenu.Item = Item2;
5605
+ var Description = ({ disabled, children }) => /* @__PURE__ */ import_react50.default.createElement(Typography2.Caption, {
5606
+ color: disabled ? "grey-20" : "grey-40"
5607
+ }, children);
5608
+ DropdownMenu.Description = Description;
5609
+ var Separator = (_a) => {
5610
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5611
+ return /* @__PURE__ */ import_react50.default.createElement("li", __spreadProps(__spreadValues({}, props), {
5612
+ className: classNames(className, tw("m-3 block bg-grey-5 h-[1px]"))
5613
+ }));
5433
5614
  };
5434
- var TableHead = (_a) => {
5435
- var _b = _a, { children, sticky } = _b, rest = __objRest(_b, ["children", "sticky"]);
5436
- return /* @__PURE__ */ import_react50.default.createElement("thead", __spreadValues({}, rest), /* @__PURE__ */ import_react50.default.createElement("tr", null, /* @__PURE__ */ import_react50.default.createElement(HeadContext.Provider, {
5437
- value: { children, sticky }
5438
- }, children)));
5615
+ DropdownMenu.Separator = Separator;
5616
+ var EmptyStateContainer2 = (_a) => {
5617
+ var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
5618
+ return /* @__PURE__ */ import_react50.default.createElement("div", __spreadValues({
5619
+ className: classNames(tw("border border-dashed border-grey-10 p-3"), className)
5620
+ }, props), children);
5621
+ };
5622
+ DropdownMenu.EmptyStateContainer = EmptyStateContainer2;
5623
+
5624
+ // src/molecules/DropdownMenu/utils.ts
5625
+ var import_list = require("@react-stately/list");
5626
+ var filterCollection = (collection, inputValue, filter) => {
5627
+ return new import_list.ListCollection(filterNodes(collection, inputValue, filter));
5628
+ };
5629
+ var filterNodes = (nodes, inputValue, filter) => {
5630
+ const filteredNode = [];
5631
+ for (const node of nodes) {
5632
+ if (node.type === "section" && node.hasChildNodes) {
5633
+ const filtered = filterNodes(node.childNodes, inputValue, filter);
5634
+ if ([...filtered].length > 0) {
5635
+ filteredNode.push(__spreadProps(__spreadValues({}, node), { childNodes: filtered }));
5636
+ }
5637
+ } else if (node.type !== "section" && filter(node.textValue, inputValue)) {
5638
+ filteredNode.push(__spreadValues({}, node));
5639
+ }
5640
+ }
5641
+ return filteredNode;
5642
+ };
5643
+
5644
+ // src/molecules/DropdownMenu/DropdownMenu.tsx
5645
+ var DropdownMenu2 = (_a) => {
5646
+ var _b = _a, {
5647
+ onAction,
5648
+ selectionMode,
5649
+ selection,
5650
+ onSelectionChange,
5651
+ placement = "bottom-left",
5652
+ minWidth,
5653
+ maxWidth,
5654
+ searchable = false,
5655
+ emptyState,
5656
+ header,
5657
+ footer,
5658
+ children
5659
+ } = _b, props = __objRest(_b, [
5660
+ "onAction",
5661
+ "selectionMode",
5662
+ "selection",
5663
+ "onSelectionChange",
5664
+ "placement",
5665
+ "minWidth",
5666
+ "maxWidth",
5667
+ "searchable",
5668
+ "emptyState",
5669
+ "header",
5670
+ "footer",
5671
+ "children"
5672
+ ]);
5673
+ const triggerRef = import_react51.default.useRef(null);
5674
+ const [trigger, items] = extractTriggerAndItems(children);
5675
+ const state = (0, import_menu2.useMenuTriggerState)(props);
5676
+ const { menuTriggerProps, menuProps } = (0, import_menu.useMenuTrigger)({}, state, triggerRef);
5677
+ return /* @__PURE__ */ import_react51.default.createElement("div", null, /* @__PURE__ */ import_react51.default.createElement(import_interactions2.PressResponder, __spreadValues({
5678
+ ref: triggerRef,
5679
+ onPress: () => state.toggle()
5680
+ }, menuTriggerProps), /* @__PURE__ */ import_react51.default.createElement(TriggerWrapper, null, trigger.props.children)), state.isOpen && /* @__PURE__ */ import_react51.default.createElement(PopoverOverlay, {
5681
+ triggerRef,
5682
+ state,
5683
+ placement,
5684
+ focusable: false
5685
+ }, /* @__PURE__ */ import_react51.default.createElement(MenuWrapper, __spreadValues({
5686
+ onAction,
5687
+ selectionMode,
5688
+ selection,
5689
+ onSelectionChange,
5690
+ searchable,
5691
+ emptyState,
5692
+ minWidth,
5693
+ maxWidth,
5694
+ header,
5695
+ footer
5696
+ }, menuProps), items.props.children)));
5697
+ };
5698
+ DropdownMenu2.displayName = "DropdownMenu";
5699
+ var MenuTrigger = () => null;
5700
+ var MenuItems = () => null;
5701
+ DropdownMenu2.Trigger = MenuTrigger;
5702
+ DropdownMenu2.Trigger.displayName = "DropdownMenu.Trigger";
5703
+ DropdownMenu2.Items = MenuItems;
5704
+ DropdownMenu2.Items.displayName = "DropdownMenu.Items";
5705
+ DropdownMenu2.Item = import_collections.Item;
5706
+ DropdownMenu2.Item.displayName = "DropdownMenu.Item";
5707
+ DropdownMenu2.Section = import_collections.Section;
5708
+ DropdownMenu2.Section.displayName = "DropdownMenu.Section";
5709
+ var TriggerWrapper = (_a) => {
5710
+ var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
5711
+ const ref = import_react51.default.useRef(null);
5712
+ const { pressProps } = (0, import_interactions2.usePress)(__spreadProps(__spreadValues({}, props), { ref }));
5713
+ const trigger = import_react51.default.Children.only(children);
5714
+ if (!trigger || !import_react51.default.isValidElement(trigger)) {
5715
+ throw new Error("<DropdownMenu.Trigger> must have valid child");
5716
+ }
5717
+ return import_react51.default.cloneElement(trigger, __spreadValues({ ref }, (0, import_utils3.mergeProps)(pressProps, props)));
5718
+ };
5719
+ var isSectionNode = (item) => item.type === "section";
5720
+ var isItemNode = (item) => item.type === "item";
5721
+ var MenuWrapper = (_a) => {
5722
+ var _b = _a, {
5723
+ selection: selectedKeys,
5724
+ minWidth,
5725
+ maxWidth,
5726
+ searchable,
5727
+ emptyState,
5728
+ header,
5729
+ footer
5730
+ } = _b, props = __objRest(_b, [
5731
+ "selection",
5732
+ "minWidth",
5733
+ "maxWidth",
5734
+ "searchable",
5735
+ "emptyState",
5736
+ "header",
5737
+ "footer"
5738
+ ]);
5739
+ const ref = import_react51.default.useRef(null);
5740
+ const disabledKeys = getDisabledItemKeys(props.children);
5741
+ const state = (0, import_tree.useTreeState)(__spreadValues({
5742
+ disabledKeys,
5743
+ selectedKeys
5744
+ }, props));
5745
+ const { menuProps } = (0, import_menu.useMenu)(props, state, ref);
5746
+ const { contains } = (0, import_i18n.useFilter)({ sensitivity: "base" });
5747
+ const [search, setSearch] = import_react51.default.useState("");
5748
+ const filteredCollection = import_react51.default.useMemo(
5749
+ () => searchable ? filterCollection(state.collection, search, contains) : state.collection,
5750
+ [state.collection, search, contains]
5751
+ );
5752
+ return /* @__PURE__ */ import_react51.default.createElement(DropdownMenu, {
5753
+ minWidth: minWidth !== void 0 ? `${minWidth}px` : void 0,
5754
+ maxWidth: maxWidth !== void 0 ? `${maxWidth}px` : void 0
5755
+ }, header, /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.ContentContainer, null, searchable && /* @__PURE__ */ import_react51.default.createElement(SearchInput, {
5756
+ "aria-label": "search",
5757
+ value: search,
5758
+ onChange: (e) => setSearch(e.target.value),
5759
+ className: tw("mb-5")
5760
+ }), filteredCollection.size === 0 && emptyState && /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.EmptyStateContainer, null, emptyState), /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.List, __spreadValues({
5761
+ ref
5762
+ }, menuProps), Array.from(filteredCollection).map((item) => {
5763
+ if (isSectionNode(item)) {
5764
+ return /* @__PURE__ */ import_react51.default.createElement(SectionWrapper, {
5765
+ key: item.key,
5766
+ section: item,
5767
+ state
5768
+ });
5769
+ } else if (isItemNode(item)) {
5770
+ return /* @__PURE__ */ import_react51.default.createElement(ItemWrapper, {
5771
+ key: item.key,
5772
+ item,
5773
+ state
5774
+ });
5775
+ }
5776
+ }))), footer);
5777
+ };
5778
+ var ItemWrapper = ({ item, state }) => {
5779
+ const ref = import_react51.default.useRef(null);
5780
+ const { menuItemProps, descriptionProps, isSelected, isFocused, isDisabled } = (0, import_menu.useMenuItem)(
5781
+ { key: item.key, closeOnSelect: item.props.closeOnSelect },
5782
+ state,
5783
+ ref
5784
+ );
5785
+ const { icon, description, kind = "default" } = item.props;
5786
+ return /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.Item, __spreadProps(__spreadValues({
5787
+ ref
5788
+ }, menuItemProps), {
5789
+ kind,
5790
+ selected: isSelected,
5791
+ highlighted: isFocused,
5792
+ disabled: isDisabled,
5793
+ icon
5794
+ }), item.rendered, description && /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.Description, __spreadValues({
5795
+ disabled: isDisabled
5796
+ }, descriptionProps), description));
5797
+ };
5798
+ var SectionWrapper = ({ section, state }) => {
5799
+ const { itemProps, headingProps, groupProps } = (0, import_menu.useMenuSection)({
5800
+ "heading": section.rendered,
5801
+ "aria-label": section["aria-label"]
5802
+ });
5803
+ const { separatorProps } = (0, import_separator.useSeparator)({
5804
+ elementType: "li"
5805
+ });
5806
+ return /* @__PURE__ */ import_react51.default.createElement(import_react51.default.Fragment, null, section.key !== state.collection.getFirstKey() && /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.Separator, __spreadValues({}, separatorProps)), /* @__PURE__ */ import_react51.default.createElement(DropdownMenu.Group, __spreadValues({
5807
+ title: section.rendered,
5808
+ titleProps: headingProps
5809
+ }, itemProps), /* @__PURE__ */ import_react51.default.createElement("ul", __spreadValues({}, groupProps), Array.from(section.childNodes).map((node) => /* @__PURE__ */ import_react51.default.createElement(ItemWrapper, {
5810
+ key: node.key,
5811
+ item: node,
5812
+ state
5813
+ })))));
5814
+ };
5815
+ var extractTriggerAndItems = (children) => {
5816
+ const [trigger, items] = import_react51.default.Children.toArray(children);
5817
+ if (!isComponentType(trigger, MenuTrigger) || !isComponentType(items, MenuItems)) {
5818
+ throw new Error("<DropdownMenu> must have <DropdownMenu.Trigger> and <DropdownMenu.Items> defined");
5819
+ }
5820
+ return [trigger, items];
5821
+ };
5822
+ var getDisabledItemKeys = (children) => {
5823
+ const keys = import_react51.default.Children.map(children, (child) => {
5824
+ var _a, _b;
5825
+ if (!child || typeof child === "function") {
5826
+ return null;
5827
+ }
5828
+ if (isComponentType(child, import_collections.Item) && child.props.disabled) {
5829
+ return (_b = (_a = child.key) == null ? void 0 : _a.toString()) != null ? _b : null;
5830
+ }
5831
+ if (isComponentType(child, import_collections.Section)) {
5832
+ return getDisabledItemKeys(child.props.children);
5833
+ }
5834
+ return null;
5835
+ });
5836
+ return keys.flat().filter((key) => key !== null);
5837
+ };
5838
+
5839
+ // src/molecules/Template/Template.tsx
5840
+ var import_react52 = __toESM(require("react"));
5841
+ var Template = ({
5842
+ children,
5843
+ columns,
5844
+ alignSelf,
5845
+ alignContent,
5846
+ alignItems,
5847
+ justifySelf,
5848
+ gap,
5849
+ columnGap,
5850
+ rowGap,
5851
+ fullHeight
5852
+ }) => {
5853
+ const gridTemplateColumns = typeof columns === "number" ? "1fr ".repeat(columns) : columns.map((column) => typeof column === "number" ? `${column}px` : column === "auto" ? column : `${column}fr`).join(" ");
5854
+ const styles = useStyle({
5855
+ height: fullHeight ? "100%" : void 0,
5856
+ display: "grid",
5857
+ gridTemplateColumns,
5858
+ alignSelf,
5859
+ alignContent,
5860
+ alignItems,
5861
+ justifySelf,
5862
+ gap,
5863
+ rowGap,
5864
+ columnGap
5865
+ });
5866
+ return /* @__PURE__ */ import_react52.default.createElement("div", {
5867
+ style: __spreadValues({}, styles)
5868
+ }, children);
5869
+ };
5870
+
5871
+ // src/atoms/DataList/DataList.tsx
5872
+ var import_react55 = __toESM(require("react"));
5873
+
5874
+ // src/atoms/Table/Table.tsx
5875
+ var import_react54 = __toESM(require("react"));
5876
+
5877
+ // src/atoms/RadioButton/RadioButton.tsx
5878
+ var import_react53 = __toESM(require("react"));
5879
+ var RadioButton = import_react53.default.forwardRef(
5880
+ (_a, ref) => {
5881
+ var _b = _a, { id, children, name, disabled = false, readOnly = false } = _b, props = __objRest(_b, ["id", "children", "name", "disabled", "readOnly"]);
5882
+ return /* @__PURE__ */ import_react53.default.createElement("input", __spreadProps(__spreadValues({
5883
+ id,
5884
+ ref,
5885
+ type: "radio",
5886
+ name
5887
+ }, props), {
5888
+ className: classNames(
5889
+ tw(
5890
+ "inline-flex justify-center items-center self-center appearance-none",
5891
+ "w-5 h-5 p-[3px] rounded-full cursor-pointer border border-grey-20",
5892
+ "outline-none focus:border-info-70 checked:bg-navyBlue-100 checked:shadow-whiteInset",
5893
+ {
5894
+ "hover:border-grey-50 checked:border-navyBlue-100": !disabled,
5895
+ "cursor-not-allowed border-grey-5 bg-grey-0 checked:bg-opacity-40": disabled
5896
+ }
5897
+ )
5898
+ ),
5899
+ readOnly,
5900
+ disabled
5901
+ }));
5902
+ }
5903
+ );
5904
+
5905
+ // src/atoms/Table/Table.tsx
5906
+ var import_chevronDown3 = __toESM(require_chevronDown());
5907
+ var import_chevronUp2 = __toESM(require_chevronUp());
5908
+ var HeadContext = import_react54.default.createContext(null);
5909
+ var tableClassNames = tw("w-full relative typography-default border-spacing-0");
5910
+ var Table = (_a) => {
5911
+ var _b = _a, { children, ariaLabel, className } = _b, rest = __objRest(_b, ["children", "ariaLabel", "className"]);
5912
+ return /* @__PURE__ */ import_react54.default.createElement("table", __spreadProps(__spreadValues({}, rest), {
5913
+ className: classNames(tableClassNames, className),
5914
+ "aria-label": ariaLabel
5915
+ }), children);
5916
+ };
5917
+ var TableHead = (_a) => {
5918
+ var _b = _a, { children, sticky } = _b, rest = __objRest(_b, ["children", "sticky"]);
5919
+ return /* @__PURE__ */ import_react54.default.createElement("thead", __spreadValues({}, rest), /* @__PURE__ */ import_react54.default.createElement("tr", null, /* @__PURE__ */ import_react54.default.createElement(HeadContext.Provider, {
5920
+ value: { children, sticky }
5921
+ }, children)));
5439
5922
  };
5440
5923
  var TableBody = (_a) => {
5441
5924
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
5442
- return /* @__PURE__ */ import_react50.default.createElement("tbody", __spreadValues({}, rest), children);
5925
+ return /* @__PURE__ */ import_react54.default.createElement("tbody", __spreadValues({}, rest), children);
5443
5926
  };
5444
5927
  var rowClassNames = tw("children:border-grey-10 group children:last:border-b-0 hover:bg-grey-0");
5445
5928
  var TableRow = (_a) => {
5446
5929
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5447
- return /* @__PURE__ */ import_react50.default.createElement("tr", __spreadProps(__spreadValues({}, rest), {
5930
+ return /* @__PURE__ */ import_react54.default.createElement("tr", __spreadProps(__spreadValues({}, rest), {
5448
5931
  className: classNames(rowClassNames, className)
5449
5932
  }), children);
5450
5933
  };
@@ -5471,15 +5954,15 @@ var getHeadCellClassNames = (sticky = true, stickyColumn) => {
5471
5954
  };
5472
5955
  var TableCell = (_a) => {
5473
5956
  var _b = _a, { children, className, stickyColumn, align = "left" } = _b, rest = __objRest(_b, ["children", "className", "stickyColumn", "align"]);
5474
- const headContext = import_react50.default.useContext(HeadContext);
5475
- return headContext ? /* @__PURE__ */ import_react50.default.createElement("th", __spreadProps(__spreadValues({}, rest), {
5957
+ const headContext = import_react54.default.useContext(HeadContext);
5958
+ return headContext ? /* @__PURE__ */ import_react54.default.createElement("th", __spreadProps(__spreadValues({}, rest), {
5476
5959
  className: classNames(
5477
5960
  cellClassNames,
5478
5961
  getHeadCellClassNames(headContext.sticky, stickyColumn),
5479
5962
  getAlignClassNames(align),
5480
5963
  className
5481
5964
  )
5482
- }), children) : /* @__PURE__ */ import_react50.default.createElement("td", __spreadProps(__spreadValues({}, rest), {
5965
+ }), children) : /* @__PURE__ */ import_react54.default.createElement("td", __spreadProps(__spreadValues({}, rest), {
5483
5966
  className: classNames(
5484
5967
  cellClassNames,
5485
5968
  getBodyCellClassNames(true, stickyColumn),
@@ -5490,11 +5973,11 @@ var TableCell = (_a) => {
5490
5973
  };
5491
5974
  var TableSelectCell = (_a) => {
5492
5975
  var _b = _a, { ariaLabel } = _b, props = __objRest(_b, ["ariaLabel"]);
5493
- return /* @__PURE__ */ import_react50.default.createElement(Table.Cell, {
5976
+ return /* @__PURE__ */ import_react54.default.createElement(Table.Cell, {
5494
5977
  className: tw("leading-[0px]")
5495
- }, props.type === "radio" ? /* @__PURE__ */ import_react50.default.createElement(RadioButton, __spreadValues({
5978
+ }, props.type === "radio" ? /* @__PURE__ */ import_react54.default.createElement(RadioButton, __spreadValues({
5496
5979
  "aria-label": ariaLabel
5497
- }, props)) : /* @__PURE__ */ import_react50.default.createElement(Checkbox, __spreadValues({
5980
+ }, props)) : /* @__PURE__ */ import_react54.default.createElement(Checkbox, __spreadValues({
5498
5981
  "aria-label": ariaLabel
5499
5982
  }, props)));
5500
5983
  };
@@ -5504,39 +5987,39 @@ var getSortCellIconClassNames = (active) => {
5504
5987
  };
5505
5988
  var TableSortCell = (_a) => {
5506
5989
  var _b = _a, { children, direction = "none", onClick } = _b, rest = __objRest(_b, ["children", "direction", "onClick"]);
5507
- return /* @__PURE__ */ import_react50.default.createElement(Table.Cell, __spreadProps(__spreadValues({}, rest), {
5990
+ return /* @__PURE__ */ import_react54.default.createElement(Table.Cell, __spreadProps(__spreadValues({}, rest), {
5508
5991
  "aria-sort": direction
5509
- }), /* @__PURE__ */ import_react50.default.createElement("span", {
5992
+ }), /* @__PURE__ */ import_react54.default.createElement("span", {
5510
5993
  className: getSortCellButtonClassNames(rest.align),
5511
5994
  role: "button",
5512
5995
  tabIndex: -1,
5513
5996
  onClick
5514
- }, children, /* @__PURE__ */ import_react50.default.createElement("div", {
5997
+ }, children, /* @__PURE__ */ import_react54.default.createElement("div", {
5515
5998
  "data-sort-icons": true,
5516
5999
  className: tw("flex flex-col", {
5517
6000
  "invisible group-hover:visible": direction === "none"
5518
6001
  })
5519
- }, /* @__PURE__ */ import_react50.default.createElement(InlineIcon, {
6002
+ }, /* @__PURE__ */ import_react54.default.createElement(InlineIcon, {
5520
6003
  icon: import_chevronUp2.default,
5521
6004
  className: getSortCellIconClassNames(direction === "descending")
5522
- }), /* @__PURE__ */ import_react50.default.createElement(InlineIcon, {
6005
+ }), /* @__PURE__ */ import_react54.default.createElement(InlineIcon, {
5523
6006
  icon: import_chevronDown3.default,
5524
6007
  className: getSortCellIconClassNames(direction === "ascending")
5525
6008
  }))));
5526
6009
  };
5527
- var Item2 = ({ image, imageAlt, imageSize = 35, title, caption }) => /* @__PURE__ */ import_react50.default.createElement("div", {
6010
+ var Item4 = ({ image, imageAlt, imageSize = 35, title, caption }) => /* @__PURE__ */ import_react54.default.createElement("div", {
5528
6011
  className: tw("flex gap-4 items-center")
5529
- }, image && /* @__PURE__ */ import_react50.default.createElement("img", {
6012
+ }, image && /* @__PURE__ */ import_react54.default.createElement("img", {
5530
6013
  src: image,
5531
6014
  alt: imageAlt,
5532
6015
  style: { width: imageSize, height: imageSize }
5533
- }), /* @__PURE__ */ import_react50.default.createElement("div", null, title, caption && /* @__PURE__ */ import_react50.default.createElement(Typography2.Caption, null, caption)));
5534
- Table.Head = import_react50.default.memo(TableHead);
5535
- Table.Body = import_react50.default.memo(TableBody);
5536
- Table.Row = import_react50.default.memo(TableRow);
5537
- Table.Cell = import_react50.default.memo(TableCell);
5538
- Table.SortCell = import_react50.default.memo(TableSortCell);
5539
- Table.SelectCell = import_react50.default.memo(TableSelectCell);
6016
+ }), /* @__PURE__ */ import_react54.default.createElement("div", null, title, caption && /* @__PURE__ */ import_react54.default.createElement(Typography2.Caption, null, caption)));
6017
+ Table.Head = import_react54.default.memo(TableHead);
6018
+ Table.Body = import_react54.default.memo(TableBody);
6019
+ Table.Row = import_react54.default.memo(TableRow);
6020
+ Table.Cell = import_react54.default.memo(TableCell);
6021
+ Table.SortCell = import_react54.default.memo(TableSortCell);
6022
+ Table.SelectCell = import_react54.default.memo(TableSelectCell);
5540
6023
 
5541
6024
  // src/atoms/DataList/DataList.tsx
5542
6025
  var import_chevronDown4 = __toESM(require_chevronDown());
@@ -5548,7 +6031,7 @@ var getAlignClassNames2 = (align) => tw("flex items-center", {
5548
6031
  });
5549
6032
  var DataList = (_a) => {
5550
6033
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
5551
- return /* @__PURE__ */ import_react51.default.createElement("div", __spreadValues({}, rest));
6034
+ return /* @__PURE__ */ import_react55.default.createElement("div", __spreadValues({}, rest));
5552
6035
  };
5553
6036
  var HeadCell = (_a) => {
5554
6037
  var _b = _a, {
@@ -5562,7 +6045,7 @@ var HeadCell = (_a) => {
5562
6045
  "align",
5563
6046
  "stickyColumn"
5564
6047
  ]);
5565
- return /* @__PURE__ */ import_react51.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6048
+ return /* @__PURE__ */ import_react55.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5566
6049
  role: "cell",
5567
6050
  className: classNames(
5568
6051
  cellClassNames,
@@ -5580,1122 +6063,713 @@ var Cell = (_a) => {
5580
6063
  } = _b, rest = __objRest(_b, [
5581
6064
  "className",
5582
6065
  "align",
5583
- "stickyColumn"
5584
- ]);
5585
- return /* @__PURE__ */ import_react51.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5586
- role: "cell",
5587
- className: classNames(
5588
- cellClassNames,
5589
- getBodyCellClassNames(false, stickyColumn),
5590
- getAlignClassNames2(align),
5591
- tw("border-grey-10 group-hover:bg-grey-0 group-last:border-b-0"),
5592
- className
5593
- )
5594
- }));
5595
- };
5596
- var Row = (_a) => {
5597
- var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
5598
- return /* @__PURE__ */ import_react51.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5599
- className: classNames(tw("contents group"), className),
5600
- role: "row"
5601
- }));
5602
- };
5603
- var SortCell = (_a) => {
5604
- var _b = _a, { children, direction = "none", onClick, sticky } = _b, rest = __objRest(_b, ["children", "direction", "onClick", "sticky"]);
5605
- return /* @__PURE__ */ import_react51.default.createElement(HeadCell, __spreadProps(__spreadValues({}, rest), {
5606
- "aria-sort": direction,
5607
- role: "cell",
5608
- sticky
5609
- }), /* @__PURE__ */ import_react51.default.createElement("span", {
5610
- className: getSortCellButtonClassNames(rest.align),
5611
- role: "button",
5612
- tabIndex: -1,
5613
- onClick
5614
- }, children, /* @__PURE__ */ import_react51.default.createElement("div", {
5615
- "data-sort-icons": true,
5616
- className: tw("flex flex-col", {
5617
- "invisible group-hover:visible": direction === "none"
5618
- })
5619
- }, /* @__PURE__ */ import_react51.default.createElement(InlineIcon, {
5620
- icon: import_chevronUp3.default,
5621
- className: getSortCellIconClassNames(direction === "descending")
5622
- }), /* @__PURE__ */ import_react51.default.createElement(InlineIcon, {
5623
- icon: import_chevronDown4.default,
5624
- className: getSortCellIconClassNames(direction === "ascending")
5625
- }))));
5626
- };
5627
- DataList.HeadCell = HeadCell;
5628
- DataList.SortCell = SortCell;
5629
- DataList.Cell = Cell;
5630
- DataList.Row = Row;
5631
-
5632
- // src/utils/object.ts
5633
- var renameProperty = (oldProp, newProp, _a) => {
5634
- var _b = _a, { [oldProp]: oldValue } = _b, rest = __objRest(_b, [__restKey(oldProp)]);
5635
- return __spreadValues({
5636
- [newProp]: oldValue
5637
- }, rest);
5638
- };
5639
-
5640
- // src/utils/table/types.ts
5641
- var toSortDirection = (direction) => direction === "ascending" ? "asc" : direction === "descending" ? "desc" : false;
5642
- var cellProps = (column) => ({
5643
- key: column.key || column.headerName,
5644
- align: column.type === "number" || column.type === "action" ? "right" : "left",
5645
- stickyColumn: column.sticky
5646
- });
5647
- var columnIsFieldColumn = (column) => Boolean(column && column.field);
5648
-
5649
- // src/utils/table/useTableSort.tsx
5650
- var import_react52 = __toESM(require("react"));
5651
- var useTableSort = () => {
5652
- const [sort, setSort] = import_react52.default.useState();
5653
- const handleSortClick = (column) => {
5654
- if (sort && sort.column.headerName === column.headerName) {
5655
- if (sort.direction === "ascending") {
5656
- setSort({ column, direction: "descending" });
5657
- } else {
5658
- setSort(void 0);
5659
- }
5660
- } else {
5661
- setSort({ column, direction: "ascending" });
5662
- }
5663
- };
5664
- return [sort, handleSortClick];
5665
- };
5666
-
5667
- // src/utils/table/utils.ts
5668
- var import_orderBy2 = __toESM(require("lodash/orderBy"));
5669
- var sortRowsBy = (rows, sort) => {
5670
- if (!sort) {
5671
- return rows;
5672
- }
5673
- const sortFunction = sort.column.sort;
5674
- if (sortFunction) {
5675
- return [...rows].sort((a, b) => sortFunction(a, b, sort.direction));
5676
- } else if (columnIsFieldColumn(sort.column)) {
5677
- return (0, import_orderBy2.default)(rows, [sort.column.field], [toSortDirection(sort.direction)]);
5678
- }
5679
- return rows;
5680
- };
5681
-
5682
- // src/molecules/DataList/DataList.tsx
5683
- var DataList2 = ({
5684
- columns,
5685
- rows,
5686
- sticky
5687
- }) => {
5688
- const [sort, updateSort] = useTableSort();
5689
- const sortedRows = sortRowsBy(rows, sort);
5690
- const templateColumns = columns.map((column) => {
5691
- var _a;
5692
- return (_a = column.width) != null ? _a : "auto";
5693
- });
5694
- return /* @__PURE__ */ import_react53.default.createElement(Template, {
5695
- columns: templateColumns
5696
- }, columns.map(
5697
- (column) => columnIsFieldColumn(column) && column.sortable || column.sort ? /* @__PURE__ */ import_react53.default.createElement(DataList.SortCell, __spreadValues({
5698
- direction: sort && sort.column.headerName === column.headerName ? sort.direction : "none",
5699
- onClick: () => updateSort(column),
5700
- sticky
5701
- }, cellProps(column)), column.headerName) : /* @__PURE__ */ import_react53.default.createElement(DataList.HeadCell, __spreadProps(__spreadValues({}, cellProps(column)), {
5702
- sticky
5703
- }), column.headerName)
5704
- ), /* @__PURE__ */ import_react53.default.createElement(List, {
5705
- items: sortedRows,
5706
- renderItem: (row, index) => /* @__PURE__ */ import_react53.default.createElement(DataList.Row, {
5707
- key: row.id
5708
- }, /* @__PURE__ */ import_react53.default.createElement(List, {
5709
- items: columns,
5710
- renderItem: (column) => column.type === "status" ? /* @__PURE__ */ import_react53.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react53.default.createElement(StatusChip, __spreadValues({
5711
- dense: true
5712
- }, column.status(row, index, sortedRows)))) : column.type === "action" ? /* @__PURE__ */ import_react53.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react53.default.createElement(SecondaryButton, __spreadValues({
5713
- dense: true
5714
- }, renameProperty("text", "children", column.action(row, index, sortedRows))))) : column.type === "custom" ? /* @__PURE__ */ import_react53.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), column.UNSAFE_render(row, index, sortedRows)) : column.type === "item" ? /* @__PURE__ */ import_react53.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react53.default.createElement(Item2, __spreadValues({}, column.item(row, index, sortedRows)))) : /* @__PURE__ */ import_react53.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), column.formatter ? column.formatter(row[column.field], row, index, sortedRows) : row[column.field])
5715
- }))
5716
- }));
5717
- };
5718
-
5719
- // src/molecules/DataTable/DataTable.tsx
5720
- var import_react56 = __toESM(require("react"));
5721
-
5722
- // src/molecules/Table/Table.tsx
5723
- var import_react55 = __toESM(require("react"));
5724
-
5725
- // src/utils/table/useScrollTarget.ts
5726
- var import_react54 = __toESM(require("react"));
5727
- var useScrollTarget = (callback) => {
5728
- const targetRef = import_react54.default.useRef(null);
5729
- import_react54.default.useLayoutEffect(() => {
5730
- const observer = new IntersectionObserver((entries) => entries[0].isIntersecting && callback && callback(), {
5731
- root: null,
5732
- rootMargin: `0px 0px 200px 0px`
5733
- });
5734
- if (targetRef.current) {
5735
- observer.observe(targetRef.current);
5736
- }
5737
- return () => observer.disconnect();
5738
- }, []);
5739
- return targetRef;
5740
- };
5741
-
5742
- // src/molecules/Table/Table.tsx
5743
- var Table2 = (_a) => {
5744
- var _b = _a, { children, onPrev, onNext } = _b, rest = __objRest(_b, ["children", "onPrev", "onNext"]);
5745
- const bottomRef = useScrollTarget(onNext);
5746
- const topRef = useScrollTarget(onPrev);
5747
- return /* @__PURE__ */ import_react55.default.createElement("div", {
5748
- className: "relative w-full"
5749
- }, /* @__PURE__ */ import_react55.default.createElement("div", {
5750
- ref: topRef,
5751
- className: tw("absolute top-0 h-1 w-full left-0 bg-transparent")
5752
- }), /* @__PURE__ */ import_react55.default.createElement(Table, __spreadValues({}, rest), children), /* @__PURE__ */ import_react55.default.createElement("div", {
5753
- ref: bottomRef,
5754
- className: tw("absolute bottom-0 h-1 w-full left-0 bg-transparent")
5755
- }));
5756
- };
5757
- Table2.Head = Table.Head;
5758
- Table2.Body = Table.Body;
5759
- Table2.Row = Table.Row;
5760
- Table2.Cell = Table.Cell;
5761
- Table2.SortCell = Table.SortCell;
5762
- Table2.SelectCell = Table.SelectCell;
5763
-
5764
- // src/molecules/DataTable/DataTable.tsx
5765
- var DataTable = (_a) => {
5766
- var _b = _a, {
5767
- columns,
5768
- rows,
5769
- noWrap = false,
5770
- layout = "auto",
5771
- sticky
5772
- } = _b, rest = __objRest(_b, [
5773
- "columns",
5774
- "rows",
5775
- "noWrap",
5776
- "layout",
5777
- "sticky"
5778
- ]);
5779
- const [sort, updateSort] = useTableSort();
5780
- const sortedRows = sortRowsBy(rows, sort);
5781
- return /* @__PURE__ */ import_react56.default.createElement(Table2, __spreadProps(__spreadValues({}, rest), {
5782
- className: tw({
5783
- "whitespace-nowrap": noWrap,
5784
- "table-auto": layout === "auto",
5785
- "table-fixed": layout === "fixed"
5786
- })
5787
- }), /* @__PURE__ */ import_react56.default.createElement(Table2.Head, {
5788
- sticky
5789
- }, columns.map(
5790
- (column) => columnIsFieldColumn(column) && column.sortable || column.sort ? /* @__PURE__ */ import_react56.default.createElement(Table2.SortCell, __spreadValues({
5791
- direction: sort && sort.column.headerName === column.headerName ? sort.direction : "none",
5792
- onClick: () => updateSort(column),
5793
- style: { width: column.width },
5794
- "aria-label": column.headerInvisible ? column.headerName : void 0
5795
- }, cellProps(column)), !column.headerInvisible && column.headerName) : /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadProps(__spreadValues({}, cellProps(column)), {
5796
- style: { width: column.width },
5797
- "aria-label": column.headerInvisible ? column.headerName : void 0
5798
- }), !column.headerInvisible && column.headerName)
5799
- )), /* @__PURE__ */ import_react56.default.createElement(Table2.Body, null, /* @__PURE__ */ import_react56.default.createElement(List, {
5800
- items: sortedRows,
5801
- renderItem: (row, index) => /* @__PURE__ */ import_react56.default.createElement(Table2.Row, {
5802
- key: row.id
5803
- }, /* @__PURE__ */ import_react56.default.createElement(List, {
5804
- items: columns,
5805
- renderItem: (column) => column.type === "status" ? /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react56.default.createElement(StatusChip, __spreadValues({
5806
- dense: true
5807
- }, column.status(row, index, sortedRows)))) : column.type === "action" ? /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react56.default.createElement(SecondaryButton, __spreadValues({
5808
- dense: true
5809
- }, renameProperty("text", "children", column.action(row, index, sortedRows))))) : column.type === "custom" ? /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), column.UNSAFE_render(row, index, sortedRows)) : column.type === "item" ? /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react56.default.createElement(Item2, __spreadValues({}, column.item(row, index, sortedRows)))) : /* @__PURE__ */ import_react56.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), column.formatter ? column.formatter(row[column.field], row, index, sortedRows) : row[column.field])
5810
- }))
5811
- })));
5812
- };
5813
-
5814
- // src/molecules/Dialog/Dialog.tsx
5815
- var import_react58 = __toESM(require("react"));
5816
- var import_dialog = require("@react-aria/dialog");
5817
- var import_overlays6 = require("@react-aria/overlays");
5818
- var import_utils5 = require("@react-aria/utils");
5819
- var import_overlays7 = require("@react-stately/overlays");
5820
- var import_omit6 = __toESM(require("lodash/omit"));
5821
-
5822
- // src/atoms/Dialog/Dialog.tsx
5823
- var import_confirm2 = __toESM(require_confirm());
5824
- var import_error2 = __toESM(require_error());
5825
- var import_warningSign2 = __toESM(require_warningSign());
5826
- var DIALOG_ICONS_AND_COLORS = {
5827
- confirmation: {
5828
- icon: import_confirm2.default,
5829
- color: "info-70"
5830
- },
5831
- warning: {
5832
- icon: import_warningSign2.default,
5833
- color: "secondary-70"
5834
- },
5835
- danger: {
5836
- icon: import_error2.default,
5837
- color: "error-70"
5838
- }
5839
- };
5840
-
5841
- // src/atoms/Modal/Modal.tsx
5842
- var import_react57 = __toESM(require("react"));
5843
- var Modal = (_a) => {
5844
- var _b = _a, { children, className, open } = _b, rest = __objRest(_b, ["children", "className", "open"]);
5845
- return open ? /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6066
+ "stickyColumn"
6067
+ ]);
6068
+ return /* @__PURE__ */ import_react55.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6069
+ role: "cell",
5846
6070
  className: classNames(
5847
- tw("inset-0 overflow-y-auto z-modal flex justify-center items-center fixed py-7"),
6071
+ cellClassNames,
6072
+ getBodyCellClassNames(false, stickyColumn),
6073
+ getAlignClassNames2(align),
6074
+ tw("border-grey-10 group-hover:bg-grey-0 group-last:border-b-0"),
5848
6075
  className
5849
6076
  )
5850
- }), children) : null;
5851
- };
5852
- Modal.BackDrop = (_a) => {
5853
- var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
5854
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5855
- className: classNames(tw("-z-10 fixed min-w-full min-h-full bg-navyBlue-100 opacity-70"), className)
5856
6077
  }));
5857
6078
  };
5858
- Modal.Dialog = import_react57.default.forwardRef(
5859
- (_a, ref) => {
5860
- var _b = _a, { children, className, size = "sm" } = _b, rest = __objRest(_b, ["children", "className", "size"]);
5861
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({
5862
- ref,
5863
- "aria-modal": "true"
5864
- }, rest), {
5865
- className: classNames(
5866
- tw("relative bg-white rounded mx-7 w-full max-h-full flex flex-col"),
5867
- {
5868
- "max-w-[600px]": size === "sm",
5869
- "max-w-[940px]": size === "md",
5870
- "min-h-full": size === "full"
5871
- },
5872
- className
5873
- )
5874
- }), children);
5875
- }
5876
- );
5877
- Modal.Header = (_a) => {
5878
- var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5879
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5880
- className: classNames(tw("px-7 py-6 gap-3 flex items-center"), className)
5881
- }), children);
5882
- };
5883
- Modal.HeaderImage = (_a) => {
5884
- var _b = _a, { backgroundImage, className } = _b, rest = __objRest(_b, ["backgroundImage", "className"]);
5885
- const common = tw("h-[120px] min-h-[120px] w-full ");
5886
- return backgroundImage ? /* @__PURE__ */ import_react57.default.createElement("img", __spreadProps(__spreadValues({
5887
- "aria-hidden": true,
5888
- src: backgroundImage != null ? backgroundImage : void 0
5889
- }, rest), {
5890
- className: classNames(common, tw("object-cover"), className)
5891
- })) : /* @__PURE__ */ import_react57.default.createElement("div", {
5892
- className: classNames(common, tw("bg-grey-5"), className)
5893
- });
5894
- };
5895
- Modal.CloseButtonContainer = (_a) => {
6079
+ var Row = (_a) => {
5896
6080
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
5897
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5898
- className: classNames(tw("absolute top-[20px] right-[28px]"), className)
6081
+ return /* @__PURE__ */ import_react55.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6082
+ className: classNames(tw("contents group"), className),
6083
+ role: "row"
5899
6084
  }));
5900
6085
  };
5901
- Modal.Title = (_a) => {
5902
- var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5903
- return /* @__PURE__ */ import_react57.default.createElement(Typography, __spreadValues({
5904
- htmlTag: "h2",
5905
- variant: "subheading",
5906
- color: "grey-90",
5907
- className: classNames(tw("leading-none"), className)
5908
- }, rest), children);
5909
- };
5910
- Modal.Subtitle = (_a) => {
5911
- var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
5912
- return /* @__PURE__ */ import_react57.default.createElement(Typography, __spreadValues({
5913
- variant: "small",
5914
- color: "grey-60"
5915
- }, rest), children);
5916
- };
5917
- Modal.TitleContainer = (_a) => {
5918
- var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5919
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5920
- className: classNames(tw("flex flex-col grow gap-2"), className)
5921
- }), children);
5922
- };
5923
- Modal.Body = (_a) => {
5924
- var _b = _a, { children, className, noFooter = false, maxHeight, style } = _b, rest = __objRest(_b, ["children", "className", "noFooter", "maxHeight", "style"]);
5925
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5926
- className: classNames(tw("px-7 grow overflow-y-auto", { "pb-6": noFooter }), className),
5927
- style: __spreadValues({ maxHeight }, style)
5928
- }), children);
5929
- };
5930
- Modal.Footer = (_a) => {
5931
- var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5932
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5933
- className: classNames(tw("px-7 py-6"), className)
5934
- }), children);
5935
- };
5936
- Modal.Actions = (_a) => {
5937
- var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
5938
- return /* @__PURE__ */ import_react57.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
5939
- className: classNames(tw("flex gap-4 justify-end"), className)
5940
- }), children);
5941
- };
5942
-
5943
- // src/molecules/Dialog/Dialog.tsx
5944
- var Dialog = (props) => {
5945
- const ref = import_react58.default.useRef(null);
5946
- const state = (0, import_overlays7.useOverlayTriggerState)({ isOpen: props.open });
5947
- const { modalProps, underlayProps } = (0, import_overlays6.useModalOverlay)({}, state, ref);
5948
- if (!state.isOpen) {
5949
- return null;
5950
- }
5951
- return /* @__PURE__ */ import_react58.default.createElement(import_overlays6.Overlay, null, /* @__PURE__ */ import_react58.default.createElement(Modal, {
5952
- open: true
5953
- }, /* @__PURE__ */ import_react58.default.createElement(Modal.BackDrop, __spreadValues({}, underlayProps)), /* @__PURE__ */ import_react58.default.createElement(Modal.Dialog, __spreadValues({
5954
- ref,
5955
- size: "sm"
5956
- }, modalProps), /* @__PURE__ */ import_react58.default.createElement(DialogWrapper, __spreadValues({}, props)))));
5957
- };
5958
- var DialogWrapper = ({
5959
- title,
5960
- type = "confirmation",
5961
- children,
5962
- primaryAction,
5963
- secondaryAction
5964
- }) => {
5965
- const ref = import_react58.default.useRef(null);
5966
- const labelledBy = (0, import_utils5.useId)();
5967
- const describedBy = (0, import_utils5.useId)();
5968
- const { dialogProps } = (0, import_dialog.useDialog)(
5969
- { "role": "alertdialog", "aria-labelledby": labelledBy, "aria-describedby": describedBy },
5970
- ref
5971
- );
5972
- return /* @__PURE__ */ import_react58.default.createElement("div", __spreadProps(__spreadValues({
5973
- ref
5974
- }, dialogProps), {
5975
- className: tw("outline-none")
5976
- }), /* @__PURE__ */ import_react58.default.createElement(Modal.Header, null, /* @__PURE__ */ import_react58.default.createElement(Icon, {
5977
- icon: DIALOG_ICONS_AND_COLORS[type].icon,
5978
- color: DIALOG_ICONS_AND_COLORS[type].color,
5979
- fontSize: 20
5980
- }), /* @__PURE__ */ import_react58.default.createElement(Modal.Title, {
5981
- id: labelledBy,
5982
- variant: "large-strong",
5983
- color: DIALOG_ICONS_AND_COLORS[type].color
5984
- }, title)), /* @__PURE__ */ import_react58.default.createElement(Modal.Body, {
5985
- id: describedBy
5986
- }, children), /* @__PURE__ */ import_react58.default.createElement(Modal.Footer, null, /* @__PURE__ */ import_react58.default.createElement(Modal.Actions, null, secondaryAction && /* @__PURE__ */ import_react58.default.createElement(GhostButton, __spreadValues({
5987
- key: secondaryAction.text
5988
- }, (0, import_omit6.default)(secondaryAction, "text")), secondaryAction.text), /* @__PURE__ */ import_react58.default.createElement(SecondaryButton, __spreadValues({
5989
- key: primaryAction.text
5990
- }, (0, import_omit6.default)(primaryAction, "text")), primaryAction.text))));
5991
- };
5992
-
5993
- // src/molecules/Divider/Divider.tsx
5994
- var import_react59 = __toESM(require("react"));
5995
- var sizeClasses = {
5996
- horizontal: {
5997
- 1: "h-1px",
5998
- 2: "h-1",
5999
- 4: "h-2",
6000
- 8: "h-3",
6001
- 16: "h-5",
6002
- 24: "h-6"
6003
- },
6004
- vertical: {
6005
- 1: "w-1px",
6006
- 2: "w-1",
6007
- 4: "w-2",
6008
- 8: "w-3",
6009
- 16: "w-5",
6010
- 24: "w-6"
6011
- }
6012
- };
6013
- var Divider2 = (_a) => {
6014
- var _b = _a, { direction = "horizontal", size = 1 } = _b, props = __objRest(_b, ["direction", "size"]);
6015
- const sizeClass = sizeClasses[direction][size];
6016
- return /* @__PURE__ */ import_react59.default.createElement("div", __spreadProps(__spreadValues({}, props), {
6017
- className: tw(`bg-grey-5 ${sizeClass}`, {
6018
- "block w-full": direction === "horizontal",
6019
- "inline-block h-full": direction === "vertical"
6086
+ var SortCell = (_a) => {
6087
+ var _b = _a, { children, direction = "none", onClick, sticky } = _b, rest = __objRest(_b, ["children", "direction", "onClick", "sticky"]);
6088
+ return /* @__PURE__ */ import_react55.default.createElement(HeadCell, __spreadProps(__spreadValues({}, rest), {
6089
+ "aria-sort": direction,
6090
+ role: "cell",
6091
+ sticky
6092
+ }), /* @__PURE__ */ import_react55.default.createElement("span", {
6093
+ className: getSortCellButtonClassNames(rest.align),
6094
+ role: "button",
6095
+ tabIndex: -1,
6096
+ onClick
6097
+ }, children, /* @__PURE__ */ import_react55.default.createElement("div", {
6098
+ "data-sort-icons": true,
6099
+ className: tw("flex flex-col", {
6100
+ "invisible group-hover:visible": direction === "none"
6020
6101
  })
6021
- }));
6102
+ }, /* @__PURE__ */ import_react55.default.createElement(InlineIcon, {
6103
+ icon: import_chevronUp3.default,
6104
+ className: getSortCellIconClassNames(direction === "descending")
6105
+ }), /* @__PURE__ */ import_react55.default.createElement(InlineIcon, {
6106
+ icon: import_chevronDown4.default,
6107
+ className: getSortCellIconClassNames(direction === "ascending")
6108
+ }))));
6022
6109
  };
6110
+ DataList.HeadCell = HeadCell;
6111
+ DataList.SortCell = SortCell;
6112
+ DataList.Cell = Cell;
6113
+ DataList.Row = Row;
6023
6114
 
6024
- // src/molecules/Dropdown/Dropdown.tsx
6025
- var import_react63 = __toESM(require("react"));
6026
-
6027
- // src/molecules/Popover/Popover.tsx
6028
- var import_react62 = __toESM(require("react"));
6029
- var import_interactions2 = require("@react-aria/interactions");
6030
- var import_overlays8 = require("@react-aria/overlays");
6031
- var import_utils6 = require("@react-aria/utils");
6032
- var import_overlays9 = require("@react-stately/overlays");
6033
-
6034
- // src/molecules/Popover/Dialog.tsx
6035
- var import_react60 = __toESM(require("react"));
6036
- var import_dialog2 = require("@react-aria/dialog");
6037
- var Dialog2 = ({ children }) => {
6038
- const ref = import_react60.default.useRef(null);
6039
- const { dialogProps } = (0, import_dialog2.useDialog)({}, ref);
6040
- return /* @__PURE__ */ import_react60.default.createElement("div", __spreadProps(__spreadValues({
6041
- ref
6042
- }, dialogProps), {
6043
- className: tw("outline-none")
6044
- }), children);
6115
+ // src/utils/object.ts
6116
+ var renameProperty = (oldProp, newProp, _a) => {
6117
+ var _b = _a, { [oldProp]: oldValue } = _b, rest = __objRest(_b, [__restKey(oldProp)]);
6118
+ return __spreadValues({
6119
+ [newProp]: oldValue
6120
+ }, rest);
6045
6121
  };
6046
6122
 
6047
- // src/molecules/Popover/PopoverContext.tsx
6048
- var import_react61 = require("react");
6049
- var PopoverContext = (0, import_react61.createContext)(null);
6050
- var usePopoverContext = () => {
6051
- const ctx = (0, import_react61.useContext)(PopoverContext);
6052
- if (ctx === null) {
6053
- throw new Error("PopoverContext was used outside of provider.");
6054
- }
6055
- return ctx;
6056
- };
6123
+ // src/utils/table/types.ts
6124
+ var toSortDirection = (direction) => direction === "ascending" ? "asc" : direction === "descending" ? "desc" : false;
6125
+ var cellProps = (column) => ({
6126
+ key: column.key || column.headerName,
6127
+ align: column.type === "number" || column.type === "action" ? "right" : "left",
6128
+ stickyColumn: column.sticky
6129
+ });
6130
+ var columnIsFieldColumn = (column) => Boolean(column && column.field);
6057
6131
 
6058
- // src/molecules/Popover/Popover.tsx
6059
- var Popover2 = (props) => {
6060
- const {
6061
- id,
6062
- type,
6063
- placement = "bottom-left",
6064
- containFocus = true,
6065
- isKeyboardDismissDisabled = false,
6066
- targetRef,
6067
- offset,
6068
- crossOffset,
6069
- shouldFlip
6070
- } = props;
6071
- const triggerRef = (0, import_react62.useRef)(null);
6072
- const state = (0, import_overlays9.useOverlayTriggerState)(props);
6073
- const { triggerProps, overlayProps } = (0, import_overlays8.useOverlayTrigger)({ type: type != null ? type : "dialog" }, state, triggerRef);
6074
- return /* @__PURE__ */ import_react62.default.createElement(PopoverContext.Provider, {
6075
- value: {
6076
- state
6077
- }
6078
- }, import_react62.default.Children.map(props.children, (child) => {
6079
- if (isComponentType(child, Popover2.Trigger)) {
6080
- return /* @__PURE__ */ import_react62.default.createElement(import_interactions2.PressResponder, __spreadValues({
6081
- ref: triggerRef
6082
- }, triggerProps), /* @__PURE__ */ import_react62.default.createElement(PopoverTriggerWrapper, {
6083
- "data-testid": props["data-testid"],
6084
- "aria-controls": id
6085
- }, child.props.children));
6086
- }
6087
- if (isComponentType(child, Popover2.Panel)) {
6088
- return state.isOpen && /* @__PURE__ */ import_react62.default.createElement(PopoverOverlay, __spreadValues({
6089
- triggerRef: targetRef != null ? targetRef : triggerRef,
6090
- state,
6091
- placement,
6092
- isNonModal: !containFocus,
6093
- autoFocus: !containFocus,
6094
- isKeyboardDismissDisabled,
6095
- className: child.props.className,
6096
- offset,
6097
- crossOffset,
6098
- shouldFlip
6099
- }, overlayProps), containFocus ? /* @__PURE__ */ import_react62.default.createElement(Dialog2, null, child.props.children) : child.props.children);
6132
+ // src/utils/table/useTableSort.tsx
6133
+ var import_react56 = __toESM(require("react"));
6134
+ var useTableSort = () => {
6135
+ const [sort, setSort] = import_react56.default.useState();
6136
+ const handleSortClick = (column) => {
6137
+ if (sort && sort.column.headerName === column.headerName) {
6138
+ if (sort.direction === "ascending") {
6139
+ setSort({ column, direction: "descending" });
6140
+ } else {
6141
+ setSort(void 0);
6142
+ }
6143
+ } else {
6144
+ setSort({ column, direction: "ascending" });
6100
6145
  }
6101
- throw new Error("Invalid children element type");
6102
- }));
6103
- };
6104
- var Trigger = () => null;
6105
- Trigger.displayName = "Popover.Trigger";
6106
- Popover2.Trigger = Trigger;
6107
- var Panel = () => null;
6108
- Panel.displayName = "Popover.Panel";
6109
- Popover2.Panel = Panel;
6110
- var asPopoverButton = (Component, displayName) => {
6111
- const PopoverButton2 = (props) => {
6112
- const { onClick } = props;
6113
- const { state } = usePopoverContext();
6114
- const handleClick = (e) => {
6115
- state.close();
6116
- onClick == null ? void 0 : onClick(e);
6117
- };
6118
- return /* @__PURE__ */ import_react62.default.createElement(Component, __spreadProps(__spreadValues({}, props), {
6119
- onClick: handleClick
6120
- }));
6121
6146
  };
6122
- PopoverButton2.displayName = displayName;
6123
- return PopoverButton2;
6124
- };
6125
- var PopoverButton = asPopoverButton(Button, "PopoverButton");
6126
- Popover2.Button = PopoverButton;
6127
- var PopoverTriggerWrapper = (_a) => {
6128
- var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
6129
- var _a2;
6130
- const ref = (0, import_react62.useRef)(null);
6131
- const trigger = import_react62.default.Children.only(children);
6132
- const { pressProps } = (0, import_interactions2.usePress)(__spreadProps(__spreadValues({}, rest), { ref }));
6133
- return import_react62.default.cloneElement(trigger, __spreadProps(__spreadValues({
6134
- "ref": ref
6135
- }, (0, import_utils6.mergeProps)(pressProps, trigger.props)), {
6136
- "aria-controls": (_a2 = rest["aria-controls"]) != null ? _a2 : pressProps["aria-controls"]
6137
- }));
6147
+ return [sort, handleSortClick];
6138
6148
  };
6139
6149
 
6140
- // src/molecules/Dropdown/Dropdown.tsx
6141
- var Dropdown = ({ children, content, placement = "bottom-left" }) => {
6142
- return /* @__PURE__ */ import_react63.default.createElement(Popover2, {
6143
- type: "menu",
6144
- placement
6145
- }, /* @__PURE__ */ import_react63.default.createElement(Popover2.Trigger, null, children), /* @__PURE__ */ import_react63.default.createElement(Popover2.Panel, null, content));
6150
+ // src/utils/table/utils.ts
6151
+ var import_orderBy2 = __toESM(require("lodash/orderBy"));
6152
+ var sortRowsBy = (rows, sort) => {
6153
+ if (!sort) {
6154
+ return rows;
6155
+ }
6156
+ const sortFunction = sort.column.sort;
6157
+ if (sortFunction) {
6158
+ return [...rows].sort((a, b) => sortFunction(a, b, sort.direction));
6159
+ } else if (columnIsFieldColumn(sort.column)) {
6160
+ return (0, import_orderBy2.default)(rows, [sort.column.field], [toSortDirection(sort.direction)]);
6161
+ }
6162
+ return rows;
6146
6163
  };
6147
- var DropdownMenu = ({
6148
- title,
6149
- children,
6150
- contentId,
6151
- triggerId,
6152
- setClose = () => void 0
6164
+
6165
+ // src/molecules/DataList/DataList.tsx
6166
+ var import_more = __toESM(require_more());
6167
+ var DataList2 = ({
6168
+ columns,
6169
+ rows,
6170
+ sticky,
6171
+ menu,
6172
+ onAction
6153
6173
  }) => {
6154
- const menuRef = import_react63.default.useRef(null);
6155
- import_react63.default.useEffect(() => {
6156
- const id = setTimeout(() => {
6157
- var _a, _b, _c;
6158
- return (_c = (_b = (_a = menuRef.current) == null ? void 0 : _a.children) == null ? void 0 : _b[0]) == null ? void 0 : _c.focus();
6159
- });
6160
- return () => clearTimeout(id);
6161
- }, [menuRef.current]);
6162
- return /* @__PURE__ */ import_react63.default.createElement("div", {
6163
- style: { minWidth: "250px" },
6164
- className: tw("py-3 bg-white")
6165
- }, !!title && /* @__PURE__ */ import_react63.default.createElement("div", {
6166
- className: tw("px-4 py-4 text-left text-grey-100 typography-default-strong")
6167
- }, title), /* @__PURE__ */ import_react63.default.createElement("ol", {
6168
- role: "menu",
6169
- ref: menuRef,
6170
- id: contentId,
6171
- "aria-labelledby": triggerId
6172
- }, import_react63.default.Children.map(children, (child) => {
6173
- return import_react63.default.cloneElement(child, { setClose });
6174
- })));
6175
- };
6176
- var DropdownItem = (_a) => {
6177
- var _b = _a, {
6178
- children,
6179
- disabled = false,
6180
- tooltip,
6181
- tooltipPlacement,
6182
- color = "default",
6183
- onSelect,
6184
- setClose = () => void 0
6185
- } = _b, props = __objRest(_b, [
6186
- "children",
6187
- "disabled",
6188
- "tooltip",
6189
- "tooltipPlacement",
6190
- "color",
6191
- "onSelect",
6192
- "setClose"
6174
+ const [sort, updateSort] = useTableSort();
6175
+ const sortedRows = sortRowsBy(rows, sort);
6176
+ const templateColumns = (0, import_compact.default)([
6177
+ ...columns.map((column) => {
6178
+ var _a;
6179
+ return (_a = column.width) != null ? _a : "auto";
6180
+ }),
6181
+ menu ? "auto" : void 0
6193
6182
  ]);
6194
- const { state } = usePopoverContext();
6195
- const handleSelect = () => {
6196
- onSelect == null ? void 0 : onSelect();
6197
- state.close();
6198
- setClose();
6199
- };
6200
- const handleKeyDown = (event) => {
6201
- const target = event.target;
6202
- const parent = target.parentElement;
6203
- const first = parent.firstChild;
6204
- const last = parent.lastChild;
6205
- const next = target.nextElementSibling;
6206
- const prev = target.previousElementSibling;
6207
- if (event.key === "ArrowUp") {
6208
- prev ? prev.focus() : last.focus();
6209
- } else if (event.key === "ArrowDown") {
6210
- next ? next.focus() : first.focus();
6211
- } else if (event.key === "Tab") {
6212
- event.preventDefault();
6213
- event.stopPropagation();
6214
- } else if (event.key === "Home" || event.key === "PageUp") {
6215
- first.focus();
6216
- } else if (event.key === "End" || event.key === "PageDown") {
6217
- last.focus();
6218
- } else if (event.key === "Enter") {
6219
- !disabled && handleSelect();
6220
- }
6221
- };
6222
- const handleClick = (e) => {
6223
- e.stopPropagation();
6224
- if (!disabled) {
6225
- handleSelect();
6226
- }
6227
- };
6228
- const itemContent = /* @__PURE__ */ import_react63.default.createElement("div", {
6229
- className: tw("py-3 px-4")
6230
- }, children);
6231
- return /* @__PURE__ */ import_react63.default.createElement("li", __spreadProps(__spreadValues({
6232
- role: "menuitem",
6233
- tabIndex: -1,
6234
- onClick: handleClick,
6235
- onKeyDown: handleKeyDown
6236
- }, props), {
6237
- className: tw("typography-small flex items-center focus:ring-0", {
6238
- "text-grey-70 cursor-pointer hover:bg-grey-0": !disabled,
6239
- "text-grey-10 cursor-not-allowed": disabled,
6240
- "text-primary-70 hover:text-primary-80": color === "danger" && !disabled
6241
- })
6242
- }), tooltip ? /* @__PURE__ */ import_react63.default.createElement(Tooltip, {
6243
- content: tooltip,
6244
- placement: tooltipPlacement,
6245
- inline: false
6246
- }, /* @__PURE__ */ import_react63.default.createElement("div", {
6247
- tabIndex: 0,
6248
- className: tw("grow")
6249
- }, itemContent)) : itemContent);
6183
+ return /* @__PURE__ */ import_react57.default.createElement(Template, {
6184
+ columns: templateColumns
6185
+ }, columns.map(
6186
+ (column) => columnIsFieldColumn(column) && column.sortable || column.sort ? /* @__PURE__ */ import_react57.default.createElement(DataList.SortCell, __spreadValues({
6187
+ direction: sort && sort.column.headerName === column.headerName ? sort.direction : "none",
6188
+ onClick: () => updateSort(column),
6189
+ sticky
6190
+ }, cellProps(column)), column.headerName) : /* @__PURE__ */ import_react57.default.createElement(DataList.HeadCell, __spreadProps(__spreadValues({}, cellProps(column)), {
6191
+ sticky
6192
+ }), column.headerName)
6193
+ ), menu && /* @__PURE__ */ import_react57.default.createElement(DataList.HeadCell, {
6194
+ align: "right",
6195
+ "aria-label": "Context menu"
6196
+ }), /* @__PURE__ */ import_react57.default.createElement(List2, {
6197
+ items: sortedRows,
6198
+ renderItem: (row, index) => /* @__PURE__ */ import_react57.default.createElement(DataList.Row, {
6199
+ key: row.id
6200
+ }, /* @__PURE__ */ import_react57.default.createElement(List2, {
6201
+ items: columns,
6202
+ renderItem: (column) => column.type === "status" ? /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react57.default.createElement(StatusChip, __spreadValues({
6203
+ dense: true
6204
+ }, column.status(row, index, sortedRows)))) : column.type === "action" ? /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react57.default.createElement(Button.Secondary, __spreadValues({
6205
+ dense: true
6206
+ }, renameProperty("text", "children", column.action(row, index, sortedRows))))) : column.type === "custom" ? /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), column.UNSAFE_render(row, index, sortedRows)) : column.type === "item" ? /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react57.default.createElement(Item4, __spreadValues({}, column.item(row, index, sortedRows)))) : /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, __spreadValues({}, cellProps(column)), column.formatter ? column.formatter(row[column.field], row, index, sortedRows) : row[column.field])
6207
+ }), menu && /* @__PURE__ */ import_react57.default.createElement(DataList.Cell, {
6208
+ align: "right"
6209
+ }, /* @__PURE__ */ import_react57.default.createElement(DropdownMenu2, {
6210
+ onAction: (action) => onAction == null ? void 0 : onAction(action, row, index)
6211
+ }, /* @__PURE__ */ import_react57.default.createElement(DropdownMenu2.Trigger, null, /* @__PURE__ */ import_react57.default.createElement(Button.Icon, {
6212
+ "aria-label": "menu",
6213
+ icon: import_more.default
6214
+ })), (0, import_isFunction.default)(menu) ? menu(row, index) : menu)))
6215
+ }));
6250
6216
  };
6251
- Dropdown.Menu = DropdownMenu;
6252
- Dropdown.Item = DropdownItem;
6253
6217
 
6254
- // src/molecules/DropdownMenu/DropdownMenu.tsx
6255
- var import_react67 = __toESM(require("react"));
6256
- var import_i18n = require("@react-aria/i18n");
6257
- var import_interactions3 = require("@react-aria/interactions");
6258
- var import_menu = require("@react-aria/menu");
6259
- var import_separator = require("@react-aria/separator");
6260
- var import_utils8 = require("@react-aria/utils");
6261
- var import_collections = require("@react-stately/collections");
6262
- var import_menu2 = require("@react-stately/menu");
6263
- var import_tree = require("@react-stately/tree");
6264
-
6265
- // src/molecules/Input/Input.tsx
6266
- var import_react65 = __toESM(require("react"));
6267
- var import_omit7 = __toESM(require("lodash/omit"));
6268
- var import_toString = __toESM(require("lodash/toString"));
6269
- var import_uniqueId3 = __toESM(require("lodash/uniqueId"));
6218
+ // src/molecules/DataTable/DataTable.tsx
6219
+ var import_react60 = __toESM(require("react"));
6220
+ var import_compact2 = __toESM(require("lodash/compact"));
6221
+ var import_isFunction2 = __toESM(require("lodash/isFunction"));
6270
6222
 
6271
- // src/utils/form/InputAdornment/InputAdornment.tsx
6272
- var import_react64 = __toESM(require("react"));
6273
- var import_cross4 = __toESM(require_cross());
6274
- var import_error3 = __toESM(require_error());
6275
- var import_search2 = __toESM(require_search());
6276
- var import_tick3 = __toESM(require_tick());
6277
- var InputAdornment = ({ placement = "right", className, dense, children }) => {
6278
- return /* @__PURE__ */ import_react64.default.createElement("span", {
6279
- className: classNames(className, "absolute inset-y-0 grow-0 text-grey-40 flex items-center mx-3", {
6280
- "right-0": placement === "right",
6281
- "left-0": placement === "left",
6282
- "typography-small": dense,
6283
- "typography-default-strong": !dense
6284
- })
6285
- }, /* @__PURE__ */ import_react64.default.createElement(Flexbox, {
6286
- gap: "3",
6287
- wrap: "wrap"
6288
- }, children));
6289
- };
6290
- var SearchIcon = ({ onClick }) => /* @__PURE__ */ import_react64.default.createElement(Icon, {
6291
- icon: import_search2.default,
6292
- color: "grey-30",
6293
- "data-testid": "icon-search",
6294
- onClick
6295
- });
6296
- var ResetIcon = ({ onClick }) => /* @__PURE__ */ import_react64.default.createElement(Icon, {
6297
- className: "hover:cursor-pointer",
6298
- icon: import_cross4.default,
6299
- color: "grey-30",
6300
- "data-testid": "icon-reset",
6301
- onClick
6302
- });
6223
+ // src/molecules/Table/Table.tsx
6224
+ var import_react59 = __toESM(require("react"));
6303
6225
 
6304
- // src/molecules/Input/Input.tsx
6305
- var createInput = (displayName, opts = {}) => {
6306
- const InputComponent = (0, import_react65.forwardRef)(
6307
- (_a, ref) => {
6308
- var _b = _a, {
6309
- type = "text",
6310
- maxLength,
6311
- valid = true,
6312
- required = false,
6313
- endAdornment,
6314
- disabled = false,
6315
- readOnly = false
6316
- } = _b, props = __objRest(_b, [
6317
- "type",
6318
- "maxLength",
6319
- "valid",
6320
- "required",
6321
- "endAdornment",
6322
- "disabled",
6323
- "readOnly"
6324
- ]);
6325
- var _a2;
6326
- const inputRef = import_react65.default.useRef(null);
6327
- (0, import_react65.useImperativeHandle)(ref, () => inputRef.current);
6328
- const handleReset = () => {
6329
- var _a3;
6330
- const el = inputRef.current;
6331
- if (el) {
6332
- const lastValue = el.value;
6333
- el.value = "";
6334
- (_a3 = el._valueTracker) == null ? void 0 : _a3.setValue(lastValue);
6335
- el.dispatchEvent(new Event("change", { bubbles: true }));
6336
- el.focus();
6337
- }
6338
- };
6339
- return /* @__PURE__ */ import_react65.default.createElement("span", {
6340
- className: tw("relative block")
6341
- }, opts.adornment && /* @__PURE__ */ import_react65.default.createElement(InputAdornment, {
6342
- placement: "left"
6343
- }, opts.adornment), /* @__PURE__ */ import_react65.default.createElement("input", __spreadProps(__spreadValues({
6344
- ref: inputRef,
6345
- type
6346
- }, props), {
6347
- disabled,
6348
- maxLength,
6349
- required,
6350
- readOnly,
6351
- className: classNames(
6352
- {
6353
- "pl-7": opts.adornment
6354
- },
6355
- getCommonInputStyles({ readOnly, valid }),
6356
- props.className
6357
- )
6358
- })), opts.canReset && (props.value || ((_a2 = inputRef.current) == null ? void 0 : _a2.value)) && /* @__PURE__ */ import_react65.default.createElement(InputAdornment, null, /* @__PURE__ */ import_react65.default.createElement(ResetIcon, {
6359
- onClick: handleReset
6360
- })), !opts.canReset && endAdornment && /* @__PURE__ */ import_react65.default.createElement(InputAdornment, null, endAdornment));
6226
+ // src/utils/table/useScrollTarget.ts
6227
+ var import_react58 = __toESM(require("react"));
6228
+ var useScrollTarget = (callback) => {
6229
+ const targetRef = import_react58.default.useRef(null);
6230
+ import_react58.default.useLayoutEffect(() => {
6231
+ const observer = new IntersectionObserver((entries) => entries[0].isIntersecting && callback && callback(), {
6232
+ root: null,
6233
+ rootMargin: `0px 0px 200px 0px`
6234
+ });
6235
+ if (targetRef.current) {
6236
+ observer.observe(targetRef.current);
6361
6237
  }
6362
- );
6363
- InputComponent.displayName = displayName;
6364
- InputComponent.Skeleton = () => /* @__PURE__ */ import_react65.default.createElement(Skeleton, {
6365
- height: 38
6366
- });
6367
- return InputComponent;
6238
+ return () => observer.disconnect();
6239
+ }, []);
6240
+ return targetRef;
6368
6241
  };
6369
- var InputBase = createInput("InputBase");
6370
- var SearchInput = createInput("SearchInput", { adornment: /* @__PURE__ */ import_react65.default.createElement(SearchIcon, null), canReset: true });
6371
- var Input2 = import_react65.default.forwardRef((_a, ref) => {
6372
- var _b = _a, { readOnly = false } = _b, props = __objRest(_b, ["readOnly"]);
6373
- var _a2, _b2, _c;
6374
- const [value, setValue] = (0, import_react65.useState)((_b2 = (_a2 = props.value) != null ? _a2 : props.defaultValue) != null ? _b2 : "");
6375
- const id = (0, import_react65.useRef)((_c = props.id) != null ? _c : `input-${(0, import_uniqueId3.default)()}`);
6376
- const errorMessageId = (0, import_uniqueId3.default)();
6377
- const errorProps = props.valid === false ? { "aria-invalid": true, "aria-describedby": errorMessageId } : {};
6378
- const _d = getLabelControlProps(props), { "data-testid": dataTestId } = _d, labelControlProps = __objRest(_d, ["data-testid"]);
6379
- const baseProps = (0, import_omit7.default)(props, Object.keys(labelControlProps));
6380
- return /* @__PURE__ */ import_react65.default.createElement(LabelControl, __spreadValues({
6381
- id: `${id.current}-label`,
6382
- htmlFor: id.current,
6383
- messageId: errorMessageId,
6384
- length: value !== void 0 ? (0, import_toString.default)(value).length : void 0
6385
- }, labelControlProps), /* @__PURE__ */ import_react65.default.createElement(InputBase, __spreadProps(__spreadValues(__spreadValues({
6386
- ref
6387
- }, baseProps), errorProps), {
6388
- id: id.current,
6389
- "data-testid": dataTestId,
6390
- onChange: (e) => {
6391
- var _a3;
6392
- setValue(e.currentTarget.value);
6393
- (_a3 = props.onChange) == null ? void 0 : _a3.call(props, e);
6394
- },
6395
- disabled: props.disabled,
6396
- maxLength: props.maxLength,
6397
- required: props.required,
6398
- valid: props.valid,
6399
- readOnly
6242
+
6243
+ // src/molecules/Table/Table.tsx
6244
+ var Table2 = (_a) => {
6245
+ var _b = _a, { children, onPrev, onNext } = _b, rest = __objRest(_b, ["children", "onPrev", "onNext"]);
6246
+ const bottomRef = useScrollTarget(onNext);
6247
+ const topRef = useScrollTarget(onPrev);
6248
+ return /* @__PURE__ */ import_react59.default.createElement("div", {
6249
+ className: "relative w-full"
6250
+ }, /* @__PURE__ */ import_react59.default.createElement("div", {
6251
+ ref: topRef,
6252
+ className: tw("absolute top-0 h-1 w-full left-0 bg-transparent")
6253
+ }), /* @__PURE__ */ import_react59.default.createElement(Table, __spreadValues({}, rest), children), /* @__PURE__ */ import_react59.default.createElement("div", {
6254
+ ref: bottomRef,
6255
+ className: tw("absolute bottom-0 h-1 w-full left-0 bg-transparent")
6256
+ }));
6257
+ };
6258
+ Table2.Head = Table.Head;
6259
+ Table2.Body = Table.Body;
6260
+ Table2.Row = Table.Row;
6261
+ Table2.Cell = Table.Cell;
6262
+ Table2.SortCell = Table.SortCell;
6263
+ Table2.SelectCell = Table.SelectCell;
6264
+
6265
+ // src/molecules/DataTable/DataTable.tsx
6266
+ var import_more2 = __toESM(require_more());
6267
+ var DataTable = (_a) => {
6268
+ var _b = _a, {
6269
+ columns,
6270
+ rows,
6271
+ noWrap = false,
6272
+ layout = "auto",
6273
+ sticky,
6274
+ menu,
6275
+ onAction
6276
+ } = _b, rest = __objRest(_b, [
6277
+ "columns",
6278
+ "rows",
6279
+ "noWrap",
6280
+ "layout",
6281
+ "sticky",
6282
+ "menu",
6283
+ "onAction"
6284
+ ]);
6285
+ const [sort, updateSort] = useTableSort();
6286
+ const sortedRows = sortRowsBy(rows, sort);
6287
+ return /* @__PURE__ */ import_react60.default.createElement(Table2, __spreadProps(__spreadValues({}, rest), {
6288
+ className: tw({
6289
+ "whitespace-nowrap": noWrap,
6290
+ "table-auto": layout === "auto",
6291
+ "table-fixed": layout === "fixed"
6292
+ })
6293
+ }), /* @__PURE__ */ import_react60.default.createElement(Table2.Head, {
6294
+ sticky
6295
+ }, (0, import_compact2.default)([
6296
+ ...columns.map(
6297
+ (column) => columnIsFieldColumn(column) && column.sortable || column.sort ? /* @__PURE__ */ import_react60.default.createElement(Table2.SortCell, __spreadValues({
6298
+ direction: sort && sort.column.headerName === column.headerName ? sort.direction : "none",
6299
+ onClick: () => updateSort(column),
6300
+ style: { width: column.width },
6301
+ "aria-label": column.headerInvisible ? column.headerName : void 0
6302
+ }, cellProps(column)), !column.headerInvisible && column.headerName) : /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadProps(__spreadValues({}, cellProps(column)), {
6303
+ style: { width: column.width },
6304
+ "aria-label": column.headerInvisible ? column.headerName : void 0
6305
+ }), !column.headerInvisible && column.headerName)
6306
+ ),
6307
+ menu ? /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, {
6308
+ key: "__contextMenu",
6309
+ align: "right",
6310
+ "aria-label": "Context menu"
6311
+ }) : null
6312
+ ])), /* @__PURE__ */ import_react60.default.createElement(Table2.Body, null, /* @__PURE__ */ import_react60.default.createElement(List2, {
6313
+ items: sortedRows,
6314
+ renderItem: (row, index) => /* @__PURE__ */ import_react60.default.createElement(Table2.Row, {
6315
+ key: row.id
6316
+ }, /* @__PURE__ */ import_react60.default.createElement(List2, {
6317
+ items: columns,
6318
+ renderItem: (column) => column.type === "status" ? /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react60.default.createElement(StatusChip, __spreadValues({
6319
+ dense: true
6320
+ }, column.status(row, index, sortedRows)))) : column.type === "action" ? /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react60.default.createElement(Button.Secondary, __spreadValues({
6321
+ dense: true
6322
+ }, renameProperty("text", "children", column.action(row, index, sortedRows))))) : column.type === "custom" ? /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), column.UNSAFE_render(row, index, sortedRows)) : column.type === "item" ? /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), /* @__PURE__ */ import_react60.default.createElement(Item4, __spreadValues({}, column.item(row, index, sortedRows)))) : /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, __spreadValues({}, cellProps(column)), column.formatter ? column.formatter(row[column.field], row, index, sortedRows) : row[column.field])
6323
+ }), menu && /* @__PURE__ */ import_react60.default.createElement(Table2.Cell, {
6324
+ align: "right"
6325
+ }, /* @__PURE__ */ import_react60.default.createElement(DropdownMenu2, {
6326
+ onAction: (action) => onAction == null ? void 0 : onAction(action, row, index)
6327
+ }, /* @__PURE__ */ import_react60.default.createElement(DropdownMenu2.Trigger, null, /* @__PURE__ */ import_react60.default.createElement(Button.Icon, {
6328
+ "aria-label": "menu",
6329
+ icon: import_more2.default
6330
+ })), (0, import_isFunction2.default)(menu) ? menu(row, index) : menu)))
6400
6331
  })));
6401
- });
6402
- Input2.displayName = "Input";
6403
- Input2.Skeleton = () => /* @__PURE__ */ import_react65.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react65.default.createElement(InputBase.Skeleton, null));
6404
- Input2.Skeleton.displayName = "Input.Skeleton";
6332
+ };
6405
6333
 
6406
- // src/atoms/DropdownMenu/DropdownMenu.tsx
6407
- var import_react66 = __toESM(require("react"));
6408
- var import_tick4 = __toESM(require_tick());
6409
- var DropdownMenu2 = import_react66.default.forwardRef(
6410
- (_a, ref) => {
6411
- var _b = _a, { maxHeight = "450px", minWidth = "125px", maxWidth, className, children } = _b, props = __objRest(_b, ["maxHeight", "minWidth", "maxWidth", "className", "children"]);
6412
- return /* @__PURE__ */ import_react66.default.createElement("div", __spreadValues({
6413
- ref,
6414
- style: { maxHeight, minWidth, maxWidth },
6415
- className: classNames(className, "bg-white w-full flex flex-col overflow-x-hidden typography-small text-grey-70")
6416
- }, props), children);
6334
+ // src/molecules/Dialog/Dialog.tsx
6335
+ var import_react62 = __toESM(require("react"));
6336
+ var import_dialog = require("@react-aria/dialog");
6337
+ var import_overlays6 = require("@react-aria/overlays");
6338
+ var import_utils8 = require("@react-aria/utils");
6339
+ var import_overlays7 = require("@react-stately/overlays");
6340
+ var import_omit7 = __toESM(require("lodash/omit"));
6341
+
6342
+ // src/atoms/Dialog/Dialog.tsx
6343
+ var import_confirm2 = __toESM(require_confirm());
6344
+ var import_error3 = __toESM(require_error());
6345
+ var import_warningSign2 = __toESM(require_warningSign());
6346
+ var DIALOG_ICONS_AND_COLORS = {
6347
+ confirmation: {
6348
+ icon: import_confirm2.default,
6349
+ color: "info-70"
6350
+ },
6351
+ warning: {
6352
+ icon: import_warningSign2.default,
6353
+ color: "secondary-70"
6354
+ },
6355
+ danger: {
6356
+ icon: import_error3.default,
6357
+ color: "error-70"
6417
6358
  }
6418
- );
6419
- var ContentContainer = ({ children }) => /* @__PURE__ */ import_react66.default.createElement("div", {
6420
- className: tw("p-3 overflow-y-auto overflow-x-hidden")
6421
- }, children);
6422
- DropdownMenu2.ContentContainer = ContentContainer;
6423
- var List2 = import_react66.default.forwardRef(
6359
+ };
6360
+
6361
+ // src/atoms/Modal/Modal.tsx
6362
+ var import_react61 = __toESM(require("react"));
6363
+ var Modal = (_a) => {
6364
+ var _b = _a, { children, className, open } = _b, rest = __objRest(_b, ["children", "className", "open"]);
6365
+ return open ? /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6366
+ className: classNames(
6367
+ tw("inset-0 overflow-y-auto z-modal flex justify-center items-center fixed py-7"),
6368
+ className
6369
+ )
6370
+ }), children) : null;
6371
+ };
6372
+ Modal.BackDrop = (_a) => {
6373
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
6374
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6375
+ className: classNames(tw("-z-10 fixed min-w-full min-h-full bg-navyBlue-100 opacity-70"), className)
6376
+ }));
6377
+ };
6378
+ Modal.Dialog = import_react61.default.forwardRef(
6424
6379
  (_a, ref) => {
6425
- var _b = _a, { children, className } = _b, props = __objRest(_b, ["children", "className"]);
6426
- return /* @__PURE__ */ import_react66.default.createElement("ul", __spreadValues({
6380
+ var _b = _a, { children, className, size = "sm" } = _b, rest = __objRest(_b, ["children", "className", "size"]);
6381
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({
6427
6382
  ref,
6428
- className: classNames(className, "outline-none ring-0")
6429
- }, props), children);
6383
+ "aria-modal": "true"
6384
+ }, rest), {
6385
+ className: classNames(
6386
+ tw("relative bg-white rounded mx-7 w-full max-h-full flex flex-col"),
6387
+ {
6388
+ "max-w-[600px]": size === "sm",
6389
+ "max-w-[940px]": size === "md",
6390
+ "min-h-full": size === "full"
6391
+ },
6392
+ className
6393
+ )
6394
+ }), children);
6430
6395
  }
6431
6396
  );
6432
- DropdownMenu2.List = List2;
6433
- var Group2 = import_react66.default.forwardRef(
6434
- (_a, ref) => {
6435
- var _b = _a, { className, title, titleProps, children } = _b, props = __objRest(_b, ["className", "title", "titleProps", "children"]);
6436
- return /* @__PURE__ */ import_react66.default.createElement("li", __spreadValues({
6437
- ref
6438
- }, props), title && /* @__PURE__ */ import_react66.default.createElement("div", __spreadValues({
6439
- className: classNames(className, "p-3 text-grey-40 uppercase cursor-default typography-caption", {
6440
- "text-grey-20": props.disabled
6441
- })
6442
- }, titleProps), title), children);
6397
+ Modal.Header = (_a) => {
6398
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
6399
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6400
+ className: classNames(tw("px-7 py-6 gap-3 flex items-center"), className)
6401
+ }), children);
6402
+ };
6403
+ Modal.HeaderImage = (_a) => {
6404
+ var _b = _a, { backgroundImage, className } = _b, rest = __objRest(_b, ["backgroundImage", "className"]);
6405
+ const common = tw("h-[120px] min-h-[120px] w-full ");
6406
+ return backgroundImage ? /* @__PURE__ */ import_react61.default.createElement("img", __spreadProps(__spreadValues({
6407
+ "aria-hidden": true,
6408
+ src: backgroundImage != null ? backgroundImage : void 0
6409
+ }, rest), {
6410
+ className: classNames(common, tw("object-cover"), className)
6411
+ })) : /* @__PURE__ */ import_react61.default.createElement("div", {
6412
+ className: classNames(common, tw("bg-grey-5"), className)
6413
+ });
6414
+ };
6415
+ Modal.CloseButtonContainer = (_a) => {
6416
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
6417
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6418
+ className: classNames(tw("absolute top-[20px] right-[28px]"), className)
6419
+ }));
6420
+ };
6421
+ Modal.Title = (_a) => {
6422
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
6423
+ return /* @__PURE__ */ import_react61.default.createElement(Typography, __spreadValues({
6424
+ htmlTag: "h2",
6425
+ variant: "subheading",
6426
+ color: "grey-90",
6427
+ className: classNames(tw("leading-none"), className)
6428
+ }, rest), children);
6429
+ };
6430
+ Modal.Subtitle = (_a) => {
6431
+ var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
6432
+ return /* @__PURE__ */ import_react61.default.createElement(Typography, __spreadValues({
6433
+ variant: "small",
6434
+ color: "grey-60"
6435
+ }, rest), children);
6436
+ };
6437
+ Modal.TitleContainer = (_a) => {
6438
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
6439
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6440
+ className: classNames(tw("flex flex-col grow gap-2"), className)
6441
+ }), children);
6442
+ };
6443
+ Modal.Body = (_a) => {
6444
+ var _b = _a, { children, className, noFooter = false, maxHeight, style } = _b, rest = __objRest(_b, ["children", "className", "noFooter", "maxHeight", "style"]);
6445
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6446
+ className: classNames(tw("px-7 grow overflow-y-auto", { "pb-6": noFooter }), className),
6447
+ style: __spreadValues({ maxHeight }, style)
6448
+ }), children);
6449
+ };
6450
+ Modal.Footer = (_a) => {
6451
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
6452
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6453
+ className: classNames(tw("px-7 py-6"), className)
6454
+ }), children);
6455
+ };
6456
+ Modal.Actions = (_a) => {
6457
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
6458
+ return /* @__PURE__ */ import_react61.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
6459
+ className: classNames(tw("flex gap-4 justify-end"), className)
6460
+ }), children);
6461
+ };
6462
+
6463
+ // src/molecules/Dialog/Dialog.tsx
6464
+ var Dialog = (props) => {
6465
+ const ref = import_react62.default.useRef(null);
6466
+ const state = (0, import_overlays7.useOverlayTriggerState)({ isOpen: props.open });
6467
+ const { modalProps, underlayProps } = (0, import_overlays6.useModalOverlay)({}, state, ref);
6468
+ if (!state.isOpen) {
6469
+ return null;
6443
6470
  }
6444
- );
6445
- DropdownMenu2.Group = Group2;
6446
- var Item3 = import_react66.default.forwardRef(
6447
- (_a, ref) => {
6448
- var _b = _a, { kind, highlighted, selected, className, icon, children } = _b, props = __objRest(_b, ["kind", "highlighted", "selected", "className", "icon", "children"]);
6449
- return /* @__PURE__ */ import_react66.default.createElement("li", __spreadValues({
6450
- ref,
6451
- className: classNames(className, "flex items-center gap-x-3 p-3 outline-none", {
6452
- "cursor-pointer hover:bg-grey-0": !props.disabled,
6453
- "bg-grey-0": highlighted,
6454
- "text-primary-80": kind === "action",
6455
- "text-grey-20 cursor-not-allowed": props.disabled
6456
- })
6457
- }, props), icon && /* @__PURE__ */ import_react66.default.createElement(InlineIcon, {
6458
- icon
6459
- }), /* @__PURE__ */ import_react66.default.createElement("span", {
6460
- className: tw("grow")
6461
- }, children), selected && /* @__PURE__ */ import_react66.default.createElement(InlineIcon, {
6462
- icon: import_tick4.default
6463
- }));
6471
+ return /* @__PURE__ */ import_react62.default.createElement(import_overlays6.Overlay, null, /* @__PURE__ */ import_react62.default.createElement(Modal, {
6472
+ open: true
6473
+ }, /* @__PURE__ */ import_react62.default.createElement(Modal.BackDrop, __spreadValues({}, underlayProps)), /* @__PURE__ */ import_react62.default.createElement(Modal.Dialog, __spreadValues({
6474
+ ref,
6475
+ size: "sm"
6476
+ }, modalProps), /* @__PURE__ */ import_react62.default.createElement(DialogWrapper, __spreadValues({}, props)))));
6477
+ };
6478
+ var DialogWrapper = ({
6479
+ title,
6480
+ type = "confirmation",
6481
+ children,
6482
+ primaryAction,
6483
+ secondaryAction
6484
+ }) => {
6485
+ const ref = import_react62.default.useRef(null);
6486
+ const labelledBy = (0, import_utils8.useId)();
6487
+ const describedBy = (0, import_utils8.useId)();
6488
+ const { dialogProps } = (0, import_dialog.useDialog)(
6489
+ { "role": "alertdialog", "aria-labelledby": labelledBy, "aria-describedby": describedBy },
6490
+ ref
6491
+ );
6492
+ return /* @__PURE__ */ import_react62.default.createElement("div", __spreadProps(__spreadValues({
6493
+ ref
6494
+ }, dialogProps), {
6495
+ className: tw("outline-none")
6496
+ }), /* @__PURE__ */ import_react62.default.createElement(Modal.Header, null, /* @__PURE__ */ import_react62.default.createElement(Icon, {
6497
+ icon: DIALOG_ICONS_AND_COLORS[type].icon,
6498
+ color: DIALOG_ICONS_AND_COLORS[type].color,
6499
+ fontSize: 20
6500
+ }), /* @__PURE__ */ import_react62.default.createElement(Modal.Title, {
6501
+ id: labelledBy,
6502
+ variant: "large-strong",
6503
+ color: DIALOG_ICONS_AND_COLORS[type].color
6504
+ }, title)), /* @__PURE__ */ import_react62.default.createElement(Modal.Body, {
6505
+ id: describedBy
6506
+ }, children), /* @__PURE__ */ import_react62.default.createElement(Modal.Footer, null, /* @__PURE__ */ import_react62.default.createElement(Modal.Actions, null, secondaryAction && /* @__PURE__ */ import_react62.default.createElement(Button.Ghost, __spreadValues({
6507
+ key: secondaryAction.text
6508
+ }, (0, import_omit7.default)(secondaryAction, "text")), secondaryAction.text), /* @__PURE__ */ import_react62.default.createElement(Button.Secondary, __spreadValues({
6509
+ key: primaryAction.text
6510
+ }, (0, import_omit7.default)(primaryAction, "text")), primaryAction.text))));
6511
+ };
6512
+
6513
+ // src/molecules/Divider/Divider.tsx
6514
+ var import_react63 = __toESM(require("react"));
6515
+ var sizeClasses = {
6516
+ horizontal: {
6517
+ 1: "h-1px",
6518
+ 2: "h-1",
6519
+ 4: "h-2",
6520
+ 8: "h-3",
6521
+ 16: "h-5",
6522
+ 24: "h-6"
6523
+ },
6524
+ vertical: {
6525
+ 1: "w-1px",
6526
+ 2: "w-1",
6527
+ 4: "w-2",
6528
+ 8: "w-3",
6529
+ 16: "w-5",
6530
+ 24: "w-6"
6464
6531
  }
6465
- );
6466
- DropdownMenu2.Item = Item3;
6467
- var Description = ({ disabled, children }) => /* @__PURE__ */ import_react66.default.createElement(Typography2.Caption, {
6468
- color: disabled ? "grey-20" : "grey-40"
6469
- }, children);
6470
- DropdownMenu2.Description = Description;
6471
- var Separator = (_a) => {
6472
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6473
- return /* @__PURE__ */ import_react66.default.createElement("li", __spreadProps(__spreadValues({}, props), {
6474
- className: classNames(className, tw("m-3 block bg-grey-5 h-[1px]"))
6475
- }));
6476
6532
  };
6477
- DropdownMenu2.Separator = Separator;
6478
- var EmptyStateContainer2 = (_a) => {
6479
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6480
- return /* @__PURE__ */ import_react66.default.createElement("div", __spreadValues({
6481
- className: classNames(tw("border border-dashed border-grey-10 p-3"), className)
6482
- }, props), children);
6533
+ var Divider2 = (_a) => {
6534
+ var _b = _a, { direction = "horizontal", size = 1 } = _b, props = __objRest(_b, ["direction", "size"]);
6535
+ const sizeClass = sizeClasses[direction][size];
6536
+ return /* @__PURE__ */ import_react63.default.createElement("div", __spreadProps(__spreadValues({}, props), {
6537
+ className: tw(`bg-grey-5 ${sizeClass}`, {
6538
+ "block w-full": direction === "horizontal",
6539
+ "inline-block h-full": direction === "vertical"
6540
+ })
6541
+ }));
6483
6542
  };
6484
- DropdownMenu2.EmptyStateContainer = EmptyStateContainer2;
6485
6543
 
6486
- // src/molecules/DropdownMenu/utils.ts
6487
- var import_list = require("@react-stately/list");
6488
- var filterCollection = (collection, inputValue, filter) => {
6489
- return new import_list.ListCollection(filterNodes(collection, inputValue, filter));
6544
+ // src/molecules/Dropdown/Dropdown.tsx
6545
+ var import_react67 = __toESM(require("react"));
6546
+
6547
+ // src/molecules/Popover/Popover.tsx
6548
+ var import_react66 = __toESM(require("react"));
6549
+ var import_interactions3 = require("@react-aria/interactions");
6550
+ var import_overlays8 = require("@react-aria/overlays");
6551
+ var import_utils9 = require("@react-aria/utils");
6552
+ var import_overlays9 = require("@react-stately/overlays");
6553
+
6554
+ // src/molecules/Popover/Dialog.tsx
6555
+ var import_react64 = __toESM(require("react"));
6556
+ var import_dialog2 = require("@react-aria/dialog");
6557
+ var Dialog2 = ({ children }) => {
6558
+ const ref = import_react64.default.useRef(null);
6559
+ const { dialogProps } = (0, import_dialog2.useDialog)({}, ref);
6560
+ return /* @__PURE__ */ import_react64.default.createElement("div", __spreadProps(__spreadValues({
6561
+ ref
6562
+ }, dialogProps), {
6563
+ className: tw("outline-none")
6564
+ }), children);
6490
6565
  };
6491
- var filterNodes = (nodes, inputValue, filter) => {
6492
- const filteredNode = [];
6493
- for (const node of nodes) {
6494
- if (node.type === "section" && node.hasChildNodes) {
6495
- const filtered = filterNodes(node.childNodes, inputValue, filter);
6496
- if ([...filtered].length > 0) {
6497
- filteredNode.push(__spreadProps(__spreadValues({}, node), { childNodes: filtered }));
6498
- }
6499
- } else if (node.type !== "section" && filter(node.textValue, inputValue)) {
6500
- filteredNode.push(__spreadValues({}, node));
6501
- }
6566
+
6567
+ // src/molecules/Popover/PopoverContext.tsx
6568
+ var import_react65 = require("react");
6569
+ var PopoverContext = (0, import_react65.createContext)(null);
6570
+ var usePopoverContext = () => {
6571
+ const ctx = (0, import_react65.useContext)(PopoverContext);
6572
+ if (ctx === null) {
6573
+ throw new Error("PopoverContext was used outside of provider.");
6502
6574
  }
6503
- return filteredNode;
6575
+ return ctx;
6504
6576
  };
6505
6577
 
6506
- // src/molecules/DropdownMenu/DropdownMenu.tsx
6507
- var DropdownMenu3 = (_a) => {
6508
- var _b = _a, {
6509
- onAction,
6510
- selectionMode,
6511
- selection,
6512
- onSelectionChange,
6578
+ // src/molecules/Popover/Popover.tsx
6579
+ var Popover2 = (props) => {
6580
+ const {
6581
+ id,
6582
+ type,
6513
6583
  placement = "bottom-left",
6514
- minWidth,
6515
- maxWidth,
6516
- searchable = false,
6517
- emptyState,
6518
- header,
6519
- footer,
6520
- children
6521
- } = _b, props = __objRest(_b, [
6522
- "onAction",
6523
- "selectionMode",
6524
- "selection",
6525
- "onSelectionChange",
6526
- "placement",
6527
- "minWidth",
6528
- "maxWidth",
6529
- "searchable",
6530
- "emptyState",
6531
- "header",
6532
- "footer",
6533
- "children"
6534
- ]);
6535
- const triggerRef = import_react67.default.useRef(null);
6536
- const [trigger, items] = extractTriggerAndItems(children);
6537
- const state = (0, import_menu2.useMenuTriggerState)(props);
6538
- const { menuTriggerProps, menuProps } = (0, import_menu.useMenuTrigger)({}, state, triggerRef);
6539
- return /* @__PURE__ */ import_react67.default.createElement("div", null, /* @__PURE__ */ import_react67.default.createElement(import_interactions3.PressResponder, __spreadValues({
6540
- ref: triggerRef,
6541
- onPress: () => state.toggle()
6542
- }, menuTriggerProps), /* @__PURE__ */ import_react67.default.createElement(TriggerWrapper, null, trigger.props.children)), state.isOpen && /* @__PURE__ */ import_react67.default.createElement(PopoverOverlay, {
6543
- triggerRef,
6544
- state,
6545
- placement,
6546
- focusable: false
6547
- }, /* @__PURE__ */ import_react67.default.createElement(MenuWrapper, __spreadValues({
6548
- onAction,
6549
- selectionMode,
6550
- selection,
6551
- onSelectionChange,
6552
- searchable,
6553
- emptyState,
6554
- minWidth,
6555
- maxWidth,
6556
- header,
6557
- footer
6558
- }, menuProps), items.props.children)));
6559
- };
6560
- var MenuTrigger = () => null;
6561
- var MenuItems = () => null;
6562
- DropdownMenu3.Trigger = MenuTrigger;
6563
- DropdownMenu3.Trigger.displayName = "DropdownMenu.Trigger";
6564
- DropdownMenu3.Items = MenuItems;
6565
- DropdownMenu3.Items.displayName = "DropdownMenu.Items";
6566
- DropdownMenu3.Item = import_collections.Item;
6567
- DropdownMenu3.Item.displayName = "DropdownMenu.Item";
6568
- DropdownMenu3.Section = import_collections.Section;
6569
- DropdownMenu3.Section.displayName = "DropdownMenu.Section";
6570
- var TriggerWrapper = (_a) => {
6571
- var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
6572
- const ref = import_react67.default.useRef(null);
6573
- const { pressProps } = (0, import_interactions3.usePress)(__spreadProps(__spreadValues({}, props), { ref }));
6574
- const trigger = import_react67.default.Children.only(children);
6575
- if (!trigger || !import_react67.default.isValidElement(trigger)) {
6576
- throw new Error("<DropdownMenu.Trigger> must have valid child");
6577
- }
6578
- return import_react67.default.cloneElement(trigger, __spreadValues({ ref }, (0, import_utils8.mergeProps)(pressProps, props)));
6579
- };
6580
- var isSectionNode = (item) => item.type === "section";
6581
- var isItemNode = (item) => item.type === "item";
6582
- var MenuWrapper = (_a) => {
6583
- var _b = _a, {
6584
- selection: selectedKeys,
6585
- minWidth,
6586
- maxWidth,
6587
- searchable,
6588
- emptyState,
6589
- header,
6590
- footer
6591
- } = _b, props = __objRest(_b, [
6592
- "selection",
6593
- "minWidth",
6594
- "maxWidth",
6595
- "searchable",
6596
- "emptyState",
6597
- "header",
6598
- "footer"
6599
- ]);
6600
- const ref = import_react67.default.useRef(null);
6601
- const disabledKeys = getDisabledItemKeys(props.children);
6602
- const state = (0, import_tree.useTreeState)(__spreadValues({
6603
- disabledKeys,
6604
- selectedKeys
6605
- }, props));
6606
- const { menuProps } = (0, import_menu.useMenu)(props, state, ref);
6607
- const { contains } = (0, import_i18n.useFilter)({ sensitivity: "base" });
6608
- const [search, setSearch] = import_react67.default.useState("");
6609
- const filteredCollection = import_react67.default.useMemo(
6610
- () => searchable ? filterCollection(state.collection, search, contains) : state.collection,
6611
- [state.collection, search, contains]
6612
- );
6613
- return /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2, {
6614
- minWidth: minWidth !== void 0 ? `${minWidth}px` : void 0,
6615
- maxWidth: maxWidth !== void 0 ? `${maxWidth}px` : void 0
6616
- }, header, /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.ContentContainer, null, searchable && /* @__PURE__ */ import_react67.default.createElement(SearchInput, {
6617
- "aria-label": "search",
6618
- value: search,
6619
- onChange: (e) => setSearch(e.target.value),
6620
- className: tw("mb-5")
6621
- }), filteredCollection.size === 0 && emptyState && /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.EmptyStateContainer, null, emptyState), /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.List, __spreadValues({
6622
- ref
6623
- }, menuProps), Array.from(filteredCollection).map((item) => {
6624
- if (isSectionNode(item)) {
6625
- return /* @__PURE__ */ import_react67.default.createElement(SectionWrapper, {
6626
- key: item.key,
6627
- section: item,
6628
- state
6629
- });
6630
- } else if (isItemNode(item)) {
6631
- return /* @__PURE__ */ import_react67.default.createElement(ItemWrapper, {
6632
- key: item.key,
6633
- item,
6634
- state
6635
- });
6584
+ containFocus = true,
6585
+ isKeyboardDismissDisabled = false,
6586
+ targetRef,
6587
+ offset,
6588
+ crossOffset,
6589
+ shouldFlip
6590
+ } = props;
6591
+ const triggerRef = (0, import_react66.useRef)(null);
6592
+ const state = (0, import_overlays9.useOverlayTriggerState)(props);
6593
+ const { triggerProps, overlayProps } = (0, import_overlays8.useOverlayTrigger)({ type: type != null ? type : "dialog" }, state, triggerRef);
6594
+ return /* @__PURE__ */ import_react66.default.createElement(PopoverContext.Provider, {
6595
+ value: {
6596
+ state
6636
6597
  }
6637
- }))), footer);
6598
+ }, import_react66.default.Children.map(props.children, (child) => {
6599
+ if (isComponentType(child, Popover2.Trigger)) {
6600
+ return /* @__PURE__ */ import_react66.default.createElement(import_interactions3.PressResponder, __spreadValues({
6601
+ ref: triggerRef
6602
+ }, triggerProps), /* @__PURE__ */ import_react66.default.createElement(PopoverTriggerWrapper, {
6603
+ "data-testid": props["data-testid"],
6604
+ "aria-controls": id
6605
+ }, child.props.children));
6606
+ }
6607
+ if (isComponentType(child, Popover2.Panel)) {
6608
+ return state.isOpen && /* @__PURE__ */ import_react66.default.createElement(PopoverOverlay, __spreadValues({
6609
+ triggerRef: targetRef != null ? targetRef : triggerRef,
6610
+ state,
6611
+ placement,
6612
+ isNonModal: !containFocus,
6613
+ autoFocus: !containFocus,
6614
+ isKeyboardDismissDisabled,
6615
+ className: child.props.className,
6616
+ offset,
6617
+ crossOffset,
6618
+ shouldFlip
6619
+ }, overlayProps), containFocus ? /* @__PURE__ */ import_react66.default.createElement(Dialog2, null, child.props.children) : child.props.children);
6620
+ }
6621
+ throw new Error("Invalid children element type");
6622
+ }));
6638
6623
  };
6639
- var ItemWrapper = ({ item, state }) => {
6640
- const ref = import_react67.default.useRef(null);
6641
- const { menuItemProps, descriptionProps, isSelected, isFocused, isDisabled } = (0, import_menu.useMenuItem)(
6642
- { key: item.key, closeOnSelect: item.props.closeOnSelect },
6643
- state,
6644
- ref
6645
- );
6646
- const { icon, description, kind = "default" } = item.props;
6647
- return /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.Item, __spreadProps(__spreadValues({
6648
- ref
6649
- }, menuItemProps), {
6650
- kind,
6651
- selected: isSelected,
6652
- highlighted: isFocused,
6653
- disabled: isDisabled,
6654
- icon
6655
- }), item.rendered, description && /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.Description, __spreadValues({
6656
- disabled: isDisabled
6657
- }, descriptionProps), description));
6624
+ var Trigger = () => null;
6625
+ Trigger.displayName = "Popover.Trigger";
6626
+ Popover2.Trigger = Trigger;
6627
+ var Panel = () => null;
6628
+ Panel.displayName = "Popover.Panel";
6629
+ Popover2.Panel = Panel;
6630
+ var asPopoverButton = (Component, displayName) => {
6631
+ const PopoverButton2 = (props) => {
6632
+ const { onClick } = props;
6633
+ const { state } = usePopoverContext();
6634
+ const handleClick = (e) => {
6635
+ state.close();
6636
+ onClick == null ? void 0 : onClick(e);
6637
+ };
6638
+ return /* @__PURE__ */ import_react66.default.createElement(Component, __spreadProps(__spreadValues({}, props), {
6639
+ onClick: handleClick
6640
+ }));
6641
+ };
6642
+ PopoverButton2.displayName = displayName;
6643
+ return PopoverButton2;
6658
6644
  };
6659
- var SectionWrapper = ({ section, state }) => {
6660
- const { itemProps, headingProps, groupProps } = (0, import_menu.useMenuSection)({
6661
- "heading": section.rendered,
6662
- "aria-label": section["aria-label"]
6663
- });
6664
- const { separatorProps } = (0, import_separator.useSeparator)({
6665
- elementType: "li"
6666
- });
6667
- return /* @__PURE__ */ import_react67.default.createElement(import_react67.default.Fragment, null, section.key !== state.collection.getFirstKey() && /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.Separator, __spreadValues({}, separatorProps)), /* @__PURE__ */ import_react67.default.createElement(DropdownMenu2.Group, __spreadValues({
6668
- title: section.rendered,
6669
- titleProps: headingProps
6670
- }, itemProps), /* @__PURE__ */ import_react67.default.createElement("ul", __spreadValues({}, groupProps), Array.from(section.childNodes).map((node) => /* @__PURE__ */ import_react67.default.createElement(ItemWrapper, {
6671
- key: node.key,
6672
- item: node,
6673
- state
6674
- })))));
6645
+ var PopoverButton = asPopoverButton(Button, "PopoverButton");
6646
+ Popover2.Button = PopoverButton;
6647
+ var PopoverTriggerWrapper = (_a) => {
6648
+ var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
6649
+ var _a2;
6650
+ const ref = (0, import_react66.useRef)(null);
6651
+ const trigger = import_react66.default.Children.only(children);
6652
+ const { pressProps } = (0, import_interactions3.usePress)(__spreadProps(__spreadValues({}, rest), { ref }));
6653
+ return import_react66.default.cloneElement(trigger, __spreadProps(__spreadValues({
6654
+ "ref": ref
6655
+ }, (0, import_utils9.mergeProps)(pressProps, trigger.props)), {
6656
+ "aria-controls": (_a2 = rest["aria-controls"]) != null ? _a2 : pressProps["aria-controls"]
6657
+ }));
6675
6658
  };
6676
- var extractTriggerAndItems = (children) => {
6677
- const [trigger, items] = import_react67.default.Children.toArray(children);
6678
- if (!isComponentType(trigger, MenuTrigger) || !isComponentType(items, MenuItems)) {
6679
- throw new Error("<DropdownMenu> must have <DropdownMenu.Trigger> and <DropdownMenu.Items> defined");
6680
- }
6681
- return [trigger, items];
6659
+
6660
+ // src/molecules/Dropdown/Dropdown.tsx
6661
+ var Dropdown = ({ children, content, placement = "bottom-left" }) => {
6662
+ return /* @__PURE__ */ import_react67.default.createElement(Popover2, {
6663
+ type: "menu",
6664
+ placement
6665
+ }, /* @__PURE__ */ import_react67.default.createElement(Popover2.Trigger, null, children), /* @__PURE__ */ import_react67.default.createElement(Popover2.Panel, null, content));
6682
6666
  };
6683
- var getDisabledItemKeys = (children) => {
6684
- const keys = import_react67.default.Children.map(children, (child) => {
6685
- var _a, _b;
6686
- if (!child || typeof child === "function") {
6687
- return null;
6688
- }
6689
- if (isComponentType(child, import_collections.Item) && child.props.disabled) {
6690
- return (_b = (_a = child.key) == null ? void 0 : _a.toString()) != null ? _b : null;
6667
+ var DropdownMenu3 = ({
6668
+ title,
6669
+ children,
6670
+ contentId,
6671
+ triggerId,
6672
+ setClose = () => void 0
6673
+ }) => {
6674
+ const menuRef = import_react67.default.useRef(null);
6675
+ import_react67.default.useEffect(() => {
6676
+ const id = setTimeout(() => {
6677
+ var _a, _b, _c;
6678
+ return (_c = (_b = (_a = menuRef.current) == null ? void 0 : _a.children) == null ? void 0 : _b[0]) == null ? void 0 : _c.focus();
6679
+ });
6680
+ return () => clearTimeout(id);
6681
+ }, [menuRef.current]);
6682
+ return /* @__PURE__ */ import_react67.default.createElement("div", {
6683
+ style: { minWidth: "250px" },
6684
+ className: tw("py-3 bg-white")
6685
+ }, !!title && /* @__PURE__ */ import_react67.default.createElement("div", {
6686
+ className: tw("px-4 py-4 text-left text-grey-100 typography-default-strong")
6687
+ }, title), /* @__PURE__ */ import_react67.default.createElement("ol", {
6688
+ role: "menu",
6689
+ ref: menuRef,
6690
+ id: contentId,
6691
+ "aria-labelledby": triggerId
6692
+ }, import_react67.default.Children.map(children, (child) => {
6693
+ return import_react67.default.cloneElement(child, { setClose });
6694
+ })));
6695
+ };
6696
+ var DropdownItem = (_a) => {
6697
+ var _b = _a, {
6698
+ children,
6699
+ disabled = false,
6700
+ tooltip,
6701
+ tooltipPlacement,
6702
+ color = "default",
6703
+ onSelect,
6704
+ setClose = () => void 0
6705
+ } = _b, props = __objRest(_b, [
6706
+ "children",
6707
+ "disabled",
6708
+ "tooltip",
6709
+ "tooltipPlacement",
6710
+ "color",
6711
+ "onSelect",
6712
+ "setClose"
6713
+ ]);
6714
+ const { state } = usePopoverContext();
6715
+ const handleSelect = () => {
6716
+ onSelect == null ? void 0 : onSelect();
6717
+ state.close();
6718
+ setClose();
6719
+ };
6720
+ const handleKeyDown = (event) => {
6721
+ const target = event.target;
6722
+ const parent = target.parentElement;
6723
+ const first = parent.firstChild;
6724
+ const last = parent.lastChild;
6725
+ const next = target.nextElementSibling;
6726
+ const prev = target.previousElementSibling;
6727
+ if (event.key === "ArrowUp") {
6728
+ prev ? prev.focus() : last.focus();
6729
+ } else if (event.key === "ArrowDown") {
6730
+ next ? next.focus() : first.focus();
6731
+ } else if (event.key === "Tab") {
6732
+ event.preventDefault();
6733
+ event.stopPropagation();
6734
+ } else if (event.key === "Home" || event.key === "PageUp") {
6735
+ first.focus();
6736
+ } else if (event.key === "End" || event.key === "PageDown") {
6737
+ last.focus();
6738
+ } else if (event.key === "Enter") {
6739
+ !disabled && handleSelect();
6691
6740
  }
6692
- if (isComponentType(child, import_collections.Section)) {
6693
- return getDisabledItemKeys(child.props.children);
6741
+ };
6742
+ const handleClick = (e) => {
6743
+ e.stopPropagation();
6744
+ if (!disabled) {
6745
+ handleSelect();
6694
6746
  }
6695
- return null;
6696
- });
6697
- return keys.flat().filter((key) => key !== null);
6747
+ };
6748
+ const itemContent = /* @__PURE__ */ import_react67.default.createElement("div", {
6749
+ className: tw("py-3 px-4")
6750
+ }, children);
6751
+ return /* @__PURE__ */ import_react67.default.createElement("li", __spreadProps(__spreadValues({
6752
+ role: "menuitem",
6753
+ tabIndex: -1,
6754
+ onClick: handleClick,
6755
+ onKeyDown: handleKeyDown
6756
+ }, props), {
6757
+ className: tw("typography-small flex items-center focus:ring-0", {
6758
+ "text-grey-70 cursor-pointer hover:bg-grey-0": !disabled,
6759
+ "text-grey-10 cursor-not-allowed": disabled,
6760
+ "text-primary-70 hover:text-primary-80": color === "danger" && !disabled
6761
+ })
6762
+ }), tooltip ? /* @__PURE__ */ import_react67.default.createElement(Tooltip, {
6763
+ content: tooltip,
6764
+ placement: tooltipPlacement,
6765
+ inline: false
6766
+ }, /* @__PURE__ */ import_react67.default.createElement("div", {
6767
+ tabIndex: 0,
6768
+ className: tw("grow")
6769
+ }, itemContent)) : itemContent);
6698
6770
  };
6771
+ Dropdown.Menu = DropdownMenu3;
6772
+ Dropdown.Item = DropdownItem;
6699
6773
 
6700
6774
  // src/molecules/EmptyState/EmptyState.tsx
6701
6775
  var import_react69 = __toESM(require("react"));
@@ -6813,7 +6887,7 @@ var EmptyState = ({
6813
6887
  justifyContent: "center",
6814
6888
  alignItems: "center",
6815
6889
  wrap: "wrap"
6816
- }, primaryAction && /* @__PURE__ */ import_react69.default.createElement(PrimaryButton, __spreadValues({}, (0, import_omit8.default)(primaryAction, "text")), primaryAction.text), secondaryAction && /* @__PURE__ */ import_react69.default.createElement(SecondaryButton, __spreadValues({}, (0, import_omit8.default)(secondaryAction, "text")), secondaryAction.text)), footer && /* @__PURE__ */ import_react69.default.createElement(Box, {
6890
+ }, primaryAction && /* @__PURE__ */ import_react69.default.createElement(Button.Primary, __spreadValues({}, (0, import_omit8.default)(primaryAction, "text")), primaryAction.text), secondaryAction && /* @__PURE__ */ import_react69.default.createElement(Button.Secondary, __spreadValues({}, (0, import_omit8.default)(secondaryAction, "text")), secondaryAction.text)), footer && /* @__PURE__ */ import_react69.default.createElement(Box, {
6817
6891
  marginTop: "7"
6818
6892
  }, /* @__PURE__ */ import_react69.default.createElement(Typography2, {
6819
6893
  htmlTag: "div",
@@ -6888,7 +6962,7 @@ var LineClamp2 = ({
6888
6962
  lines,
6889
6963
  clamped,
6890
6964
  wordBreak
6891
- }, children), expandLabel && isClampingEnabled && /* @__PURE__ */ import_react71.default.createElement(GhostButton, {
6965
+ }, children), expandLabel && isClampingEnabled && /* @__PURE__ */ import_react71.default.createElement(Button.Ghost, {
6892
6966
  dense: true,
6893
6967
  onClick: handleClampedChange
6894
6968
  }, clamped ? expandLabel : collapseLabel));
@@ -6911,7 +6985,7 @@ var Link2 = (props) => /* @__PURE__ */ import_react73.default.createElement(Link
6911
6985
 
6912
6986
  // src/molecules/List/List.tsx
6913
6987
  var import_react74 = __toESM(require("react"));
6914
- var List = ({ items, renderItem, container = import_react74.default.Fragment }) => {
6988
+ var List2 = ({ items, renderItem, container = import_react74.default.Fragment }) => {
6915
6989
  const Component = container;
6916
6990
  return /* @__PURE__ */ import_react74.default.createElement(Component, null, items.map(renderItem));
6917
6991
  };
@@ -7287,10 +7361,10 @@ var ModalWrapper = import_react77.default.forwardRef(
7287
7361
  noFooter: !(secondaryActions || primaryAction)
7288
7362
  }, children), (secondaryActions || primaryAction) && /* @__PURE__ */ import_react77.default.createElement(Modal.Footer, null, /* @__PURE__ */ import_react77.default.createElement(Modal.Actions, null, secondaryActions && (0, import_castArray.default)(secondaryActions).filter(Boolean).map((_a2) => {
7289
7363
  var _b2 = _a2, { text } = _b2, action = __objRest(_b2, ["text"]);
7290
- return /* @__PURE__ */ import_react77.default.createElement(SecondaryButton, __spreadValues({
7364
+ return /* @__PURE__ */ import_react77.default.createElement(Button.Secondary, __spreadValues({
7291
7365
  key: text
7292
7366
  }, action), text);
7293
- }), primaryAction && /* @__PURE__ */ import_react77.default.createElement(PrimaryButton, __spreadValues({
7367
+ }), primaryAction && /* @__PURE__ */ import_react77.default.createElement(Button.Primary, __spreadValues({
7294
7368
  key: primaryAction.text
7295
7369
  }, (0, import_omit9.default)(primaryAction, "text")), primaryAction.text))));
7296
7370
  }
@@ -7901,12 +7975,140 @@ var NativeSelectSkeleton = () => /* @__PURE__ */ import_react81.default.createEl
7901
7975
  NativeSelect.Skeleton = NativeSelectSkeleton;
7902
7976
  NativeSelect.Skeleton.displayName = "NativeSelect.Skeleton";
7903
7977
 
7904
- // src/molecules/PageHeader/PageHeader.tsx
7978
+ // src/molecules/Navigation/Navigation.tsx
7979
+ var import_react83 = __toESM(require("react"));
7980
+
7981
+ // src/atoms/Navigation/Navigation.tsx
7905
7982
  var import_react82 = __toESM(require("react"));
7983
+ var Navigation = (_a) => {
7984
+ var _b = _a, { className, children } = _b, rest = __objRest(_b, ["className", "children"]);
7985
+ return /* @__PURE__ */ import_react82.default.createElement("nav", {
7986
+ className: classNames(tw("bg-grey-0 h-full"))
7987
+ }, /* @__PURE__ */ import_react82.default.createElement("ul", __spreadProps(__spreadValues({}, rest), {
7988
+ className: classNames(tw("flex flex-col h-full"), className),
7989
+ role: "menu"
7990
+ }), children));
7991
+ };
7992
+ var Header = (_a) => {
7993
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
7994
+ return /* @__PURE__ */ import_react82.default.createElement("li", __spreadProps(__spreadValues({}, rest), {
7995
+ role: "presentation",
7996
+ className: classNames(tw("px-6 py-5"), className)
7997
+ }));
7998
+ };
7999
+ var Footer = (_a) => {
8000
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
8001
+ return /* @__PURE__ */ import_react82.default.createElement("li", __spreadProps(__spreadValues({}, rest), {
8002
+ role: "presentation",
8003
+ className: classNames(tw("px-6 py-5 mt-auto"), className)
8004
+ }));
8005
+ };
8006
+ var Section2 = (_a) => {
8007
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
8008
+ return /* @__PURE__ */ import_react82.default.createElement("li", {
8009
+ role: "presentation"
8010
+ }, /* @__PURE__ */ import_react82.default.createElement("ul", __spreadProps(__spreadValues({}, rest), {
8011
+ role: "group",
8012
+ className: classNames(tw(" py-5 flex flex-col"), className)
8013
+ })));
8014
+ };
8015
+ var Divider3 = (_a) => {
8016
+ var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
8017
+ return /* @__PURE__ */ import_react82.default.createElement("li", __spreadProps(__spreadValues({
8018
+ role: "separator"
8019
+ }, rest), {
8020
+ className: classNames(tw("border-t-2 border-grey-5"), className)
8021
+ }));
8022
+ };
8023
+ var Item5 = (_a) => {
8024
+ var _b = _a, { className, active } = _b, rest = __objRest(_b, ["className", "active"]);
8025
+ return /* @__PURE__ */ import_react82.default.createElement("li", {
8026
+ role: "presentation"
8027
+ }, /* @__PURE__ */ import_react82.default.createElement("a", __spreadProps(__spreadValues({}, rest), {
8028
+ role: "menuitem",
8029
+ className: classNames(
8030
+ tw("py-3 px-6 hover:bg-grey-5 cursor-pointer flex gap-4 items-center typography-small focusable", {
8031
+ "text-grey-60": !active,
8032
+ "text-primary-80": !!active
8033
+ }),
8034
+ className
8035
+ )
8036
+ })));
8037
+ };
8038
+ Navigation.Header = Header;
8039
+ Navigation.Footer = Footer;
8040
+ Navigation.Section = Section2;
8041
+ Navigation.Item = Item5;
8042
+ Navigation.Divider = Divider3;
8043
+
8044
+ // src/molecules/Navigation/Navigation.tsx
8045
+ var Navigation2 = (props) => /* @__PURE__ */ import_react83.default.createElement(Navigation, __spreadValues({}, props));
8046
+ var Item6 = (_a) => {
8047
+ var _b = _a, { children, icon } = _b, rest = __objRest(_b, ["children", "icon"]);
8048
+ return /* @__PURE__ */ import_react83.default.createElement(Navigation.Item, __spreadValues({}, rest), icon && /* @__PURE__ */ import_react83.default.createElement(InlineIcon, {
8049
+ icon
8050
+ }), children);
8051
+ };
8052
+ Navigation2.Item = Item6;
8053
+ Navigation2.Divider = Navigation.Divider;
8054
+ Navigation2.Footer = Navigation.Footer;
8055
+ Navigation2.Header = Navigation.Header;
8056
+ Navigation2.Section = Navigation.Section;
8057
+
8058
+ // src/molecules/PageHeader/PageHeader.tsx
8059
+ var import_react85 = __toESM(require("react"));
7906
8060
  var import_castArray3 = __toESM(require("lodash/castArray"));
7907
8061
  var import_omit13 = __toESM(require("lodash/omit"));
7908
- var PageHeader = ({
8062
+
8063
+ // src/atoms/PageHeader/PageHeader.tsx
8064
+ var import_react84 = __toESM(require("react"));
8065
+ var PageHeader = (_a) => {
8066
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8067
+ return /* @__PURE__ */ import_react84.default.createElement("div", __spreadValues({
8068
+ className: classNames(tw("flex flex-row gap-4 pb-6"), className)
8069
+ }, rest), children);
8070
+ };
8071
+ PageHeader.Container = (_a) => {
8072
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8073
+ return /* @__PURE__ */ import_react84.default.createElement("div", __spreadValues({
8074
+ className: classNames(tw("flex flex-col grow gap-0"), className)
8075
+ }, rest), children);
8076
+ };
8077
+ PageHeader.TitleContainer = (_a) => {
8078
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8079
+ return /* @__PURE__ */ import_react84.default.createElement("div", __spreadValues({
8080
+ className: classNames(tw("flex flex-col justify-center gap-2"), className)
8081
+ }, rest), children);
8082
+ };
8083
+ PageHeader.Title = (_a) => {
8084
+ var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
8085
+ return /* @__PURE__ */ import_react84.default.createElement(Typography2.Heading, __spreadProps(__spreadValues({}, rest), {
8086
+ color: "grey-100"
8087
+ }), children);
8088
+ };
8089
+ PageHeader.Subtitle = (_a) => {
8090
+ var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
8091
+ return /* @__PURE__ */ import_react84.default.createElement(Typography2.Small, __spreadProps(__spreadValues({}, rest), {
8092
+ color: "grey-70"
8093
+ }), children);
8094
+ };
8095
+ PageHeader.Chips = (_a) => {
8096
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8097
+ return /* @__PURE__ */ import_react84.default.createElement("div", __spreadValues({
8098
+ className: classNames(tw("flex gap-3"), className)
8099
+ }, rest), children);
8100
+ };
8101
+ PageHeader.Actions = (_a) => {
8102
+ var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8103
+ return /* @__PURE__ */ import_react84.default.createElement("div", __spreadValues({
8104
+ className: classNames(tw("flex flex-row gap-4 self-start"), className)
8105
+ }, rest), children);
8106
+ };
8107
+
8108
+ // src/molecules/PageHeader/PageHeader.tsx
8109
+ var PageHeader2 = ({
7909
8110
  title,
8111
+ subtitle,
7910
8112
  image,
7911
8113
  imageAlt,
7912
8114
  primaryAction,
@@ -7914,48 +8116,32 @@ var PageHeader = ({
7914
8116
  chips = [],
7915
8117
  breadcrumbs
7916
8118
  }) => {
7917
- return /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
7918
- direction: "row",
7919
- gap: "4",
7920
- paddingBottom: "6"
7921
- }, /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
7922
- className: tw("grow"),
7923
- direction: "column",
7924
- gap: "0"
7925
- }, breadcrumbs && /* @__PURE__ */ import_react82.default.createElement(Breadcrumbs, null, breadcrumbs), /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
8119
+ return /* @__PURE__ */ import_react85.default.createElement(PageHeader, null, /* @__PURE__ */ import_react85.default.createElement(PageHeader.Container, null, breadcrumbs && /* @__PURE__ */ import_react85.default.createElement(Breadcrumbs, null, breadcrumbs), /* @__PURE__ */ import_react85.default.createElement(Flexbox, {
7926
8120
  gap: "5"
7927
- }, image && /* @__PURE__ */ import_react82.default.createElement("img", {
8121
+ }, image && /* @__PURE__ */ import_react85.default.createElement("img", {
7928
8122
  src: image,
7929
8123
  alt: imageAlt,
7930
8124
  className: tw("w-[56px] h-[56px]")
7931
- }), /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
7932
- direction: "column",
7933
- justifyContent: "center"
7934
- }, /* @__PURE__ */ import_react82.default.createElement(Typography2.Heading, null, title), chips.length > 0 && /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
7935
- gap: "3"
7936
- }, chips.map((chip) => /* @__PURE__ */ import_react82.default.createElement(Chip2, {
8125
+ }), /* @__PURE__ */ import_react85.default.createElement(PageHeader.TitleContainer, null, /* @__PURE__ */ import_react85.default.createElement(PageHeader.Title, null, title), chips.length > 0 && /* @__PURE__ */ import_react85.default.createElement(PageHeader.Chips, null, chips.map((chip) => /* @__PURE__ */ import_react85.default.createElement(Chip2, {
7937
8126
  key: chip,
7938
8127
  dense: true,
7939
8128
  text: chip
7940
- })))))), (secondaryActions || primaryAction) && /* @__PURE__ */ import_react82.default.createElement(Flexbox, {
7941
- gap: "4",
7942
- className: tw("self-start")
7943
- }, secondaryActions && (0, import_castArray3.default)(secondaryActions).filter(Boolean).map((_a) => {
8129
+ }))), subtitle && /* @__PURE__ */ import_react85.default.createElement(PageHeader.Subtitle, null, subtitle)))), (secondaryActions || primaryAction) && /* @__PURE__ */ import_react85.default.createElement(PageHeader.Actions, null, secondaryActions && (0, import_castArray3.default)(secondaryActions).filter(Boolean).map((_a) => {
7944
8130
  var _b = _a, { text } = _b, action = __objRest(_b, ["text"]);
7945
- return /* @__PURE__ */ import_react82.default.createElement(SecondaryButton, __spreadValues({
8131
+ return /* @__PURE__ */ import_react85.default.createElement(Button.Secondary, __spreadValues({
7946
8132
  key: text
7947
8133
  }, action), text);
7948
- }), primaryAction && /* @__PURE__ */ import_react82.default.createElement(PrimaryButton, __spreadValues({
8134
+ }), primaryAction && /* @__PURE__ */ import_react85.default.createElement(Button.Primary, __spreadValues({
7949
8135
  key: primaryAction.text
7950
8136
  }, (0, import_omit13.default)(primaryAction, "text")), primaryAction.text)));
7951
8137
  };
7952
8138
 
7953
8139
  // src/molecules/Pagination/Pagination.tsx
7954
- var import_react84 = __toESM(require("react"));
8140
+ var import_react87 = __toESM(require("react"));
7955
8141
  var import_clamp = __toESM(require("lodash/clamp"));
7956
8142
 
7957
8143
  // src/molecules/Select/Select.tsx
7958
- var import_react83 = __toESM(require("react"));
8144
+ var import_react86 = __toESM(require("react"));
7959
8145
  var import_downshift3 = require("downshift");
7960
8146
  var import_defaults = __toESM(require("lodash/defaults"));
7961
8147
  var import_isArray = __toESM(require("lodash/isArray"));
@@ -7971,10 +8157,10 @@ var hasOptionGroups = (val) => {
7971
8157
  };
7972
8158
  var defaultRenderOption = (item, props, { selectedItem }, { getOptionKey, getValue, optionToString = getOptionLabelBuiltin }) => {
7973
8159
  var _a, _b;
7974
- return /* @__PURE__ */ import_react83.default.createElement(Select.Item, __spreadValues({
8160
+ return /* @__PURE__ */ import_react86.default.createElement(Select.Item, __spreadValues({
7975
8161
  key: (_b = (_a = getOptionKey == null ? void 0 : getOptionKey(item)) != null ? _a : getValue == null ? void 0 : getValue(item)) != null ? _b : optionToString(item),
7976
8162
  selected: item === selectedItem
7977
- }, props), hasIconProperty(item) && /* @__PURE__ */ import_react83.default.createElement(InlineIcon, {
8163
+ }, props), hasIconProperty(item) && /* @__PURE__ */ import_react86.default.createElement(InlineIcon, {
7978
8164
  icon: item.icon
7979
8165
  }), optionToString(item));
7980
8166
  };
@@ -8045,9 +8231,9 @@ var _SelectBase = (props) => {
8045
8231
  "children",
8046
8232
  "labelWrapper"
8047
8233
  ]);
8048
- const [hasFocus, setFocus] = (0, import_react83.useState)(false);
8049
- const targetRef = (0, import_react83.useRef)(null);
8050
- const menuRef = (0, import_react83.useRef)(null);
8234
+ const [hasFocus, setFocus] = (0, import_react86.useState)(false);
8235
+ const targetRef = (0, import_react86.useRef)(null);
8236
+ const menuRef = (0, import_react86.useRef)(null);
8051
8237
  const items = hasOptionGroups(options) ? options.flatMap((g) => g.options) : options;
8052
8238
  const findItemByValue = (val) => {
8053
8239
  if (val === null) {
@@ -8093,13 +8279,13 @@ var _SelectBase = (props) => {
8093
8279
  },
8094
8280
  withDefaults
8095
8281
  );
8096
- const renderGroup = (group) => /* @__PURE__ */ import_react83.default.createElement(import_react83.default.Fragment, {
8282
+ const renderGroup = (group) => /* @__PURE__ */ import_react86.default.createElement(import_react86.default.Fragment, {
8097
8283
  key: group.label
8098
- }, /* @__PURE__ */ import_react83.default.createElement(Select.Group, null, group.label), group.options.map((opt) => renderItem(opt, items.indexOf(opt))));
8099
- const input = /* @__PURE__ */ import_react83.default.createElement(Select.InputContainer, __spreadProps(__spreadValues({}, getToggleButtonProps({ disabled: disabled || readOnly, ref: targetRef })), {
8284
+ }, /* @__PURE__ */ import_react86.default.createElement(Select.Group, null, group.label), group.options.map((opt) => renderItem(opt, items.indexOf(opt))));
8285
+ const input = /* @__PURE__ */ import_react86.default.createElement(Select.InputContainer, __spreadProps(__spreadValues({}, getToggleButtonProps({ disabled: disabled || readOnly, ref: targetRef })), {
8100
8286
  variant: disabled ? "disabled" : !valid ? "error" : readOnly ? "readOnly" : hasFocus ? "focused" : "default",
8101
8287
  tabIndex: 0
8102
- }), /* @__PURE__ */ import_react83.default.createElement(Select.Input, __spreadProps(__spreadValues({
8288
+ }), /* @__PURE__ */ import_react86.default.createElement(Select.Input, __spreadProps(__spreadValues({
8103
8289
  id,
8104
8290
  name
8105
8291
  }, rest), {
@@ -8111,26 +8297,26 @@ var _SelectBase = (props) => {
8111
8297
  tabIndex: -1,
8112
8298
  onFocus: () => setFocus(true),
8113
8299
  onBlur: () => setFocus(false)
8114
- })), !readOnly && /* @__PURE__ */ import_react83.default.createElement(Select.Toggle, {
8300
+ })), !readOnly && /* @__PURE__ */ import_react86.default.createElement(Select.Toggle, {
8115
8301
  disabled,
8116
8302
  isOpen,
8117
8303
  tabIndex: -1
8118
8304
  }));
8119
8305
  const menuProps = getMenuProps({ ref: menuRef }, { suppressRefError: !isOpen });
8120
- return /* @__PURE__ */ import_react83.default.createElement("div", {
8306
+ return /* @__PURE__ */ import_react86.default.createElement("div", {
8121
8307
  className: tw("relative")
8122
- }, labelWrapper ? import_react83.default.cloneElement(labelWrapper, { children: input }) : input, isOpen && /* @__PURE__ */ import_react83.default.createElement(PopoverOverlay, {
8308
+ }, labelWrapper ? import_react86.default.cloneElement(labelWrapper, { children: input }) : input, isOpen && /* @__PURE__ */ import_react86.default.createElement(PopoverOverlay, {
8123
8309
  state,
8124
8310
  triggerRef: targetRef,
8125
8311
  placement: "bottom-left",
8126
8312
  shouldFlip: true,
8127
8313
  style: { width: (_b = targetRef.current) == null ? void 0 : _b.offsetWidth }
8128
- }, /* @__PURE__ */ import_react83.default.createElement(Select.Menu, __spreadValues({
8314
+ }, /* @__PURE__ */ import_react86.default.createElement(Select.Menu, __spreadValues({
8129
8315
  ref: menuRef,
8130
8316
  maxHeight
8131
- }, menuProps), options.length === 0 && /* @__PURE__ */ import_react83.default.createElement(Select.EmptyStateContainer, null, emptyState), options.length > 0 && !hasOptionGroups(options) && options.map(renderItem), options.length > 0 && hasOptionGroups(options) && options.map(renderGroup), actions.length > 0 && /* @__PURE__ */ import_react83.default.createElement(import_react83.default.Fragment, null, /* @__PURE__ */ import_react83.default.createElement(Select.Divider, {
8317
+ }, menuProps), options.length === 0 && /* @__PURE__ */ import_react86.default.createElement(Select.EmptyStateContainer, null, emptyState), options.length > 0 && !hasOptionGroups(options) && options.map(renderItem), options.length > 0 && hasOptionGroups(options) && options.map(renderGroup), actions.length > 0 && /* @__PURE__ */ import_react86.default.createElement(import_react86.default.Fragment, null, /* @__PURE__ */ import_react86.default.createElement(Select.Divider, {
8132
8318
  onMouseOver: () => setHighlightedIndex(-1)
8133
- }), actions.map((act, index) => /* @__PURE__ */ import_react83.default.createElement(Select.ActionItem, __spreadProps(__spreadValues({
8319
+ }), actions.map((act, index) => /* @__PURE__ */ import_react86.default.createElement(Select.ActionItem, __spreadProps(__spreadValues({
8134
8320
  key: `${index}`
8135
8321
  }, act), {
8136
8322
  onMouseOver: () => setHighlightedIndex(-1),
@@ -8140,10 +8326,10 @@ var _SelectBase = (props) => {
8140
8326
  }
8141
8327
  }), act.label))))));
8142
8328
  };
8143
- var SelectBase = (props) => /* @__PURE__ */ import_react83.default.createElement(_SelectBase, __spreadProps(__spreadValues({}, props), {
8329
+ var SelectBase = (props) => /* @__PURE__ */ import_react86.default.createElement(_SelectBase, __spreadProps(__spreadValues({}, props), {
8144
8330
  labelWrapper: void 0
8145
8331
  }));
8146
- var SelectBaseSkeleton = () => /* @__PURE__ */ import_react83.default.createElement(Skeleton, {
8332
+ var SelectBaseSkeleton = () => /* @__PURE__ */ import_react86.default.createElement(Skeleton, {
8147
8333
  height: 38
8148
8334
  });
8149
8335
  SelectBase.Skeleton = SelectBaseSkeleton;
@@ -8154,26 +8340,26 @@ var Select2 = (_a) => {
8154
8340
  "options"
8155
8341
  ]);
8156
8342
  var _a2;
8157
- const id = (0, import_react83.useRef)((_a2 = props.id) != null ? _a2 : `select-${(0, import_uniqueId7.default)()}`);
8343
+ const id = (0, import_react86.useRef)((_a2 = props.id) != null ? _a2 : `select-${(0, import_uniqueId7.default)()}`);
8158
8344
  const errorMessageId = (0, import_uniqueId7.default)();
8159
8345
  const errorProps = props.valid === false ? { "aria-invalid": true, "aria-describedby": errorMessageId } : {};
8160
8346
  const labelProps = getLabelControlProps(props);
8161
8347
  const baseProps = (0, import_omit14.default)(props, Object.keys(labelProps));
8162
8348
  const legacyError = labelProps.error !== void 0 && labelProps.valid === false;
8163
8349
  const variant = !labelProps.valid || legacyError ? "error" : labelProps.disabled ? "disabled" : "default";
8164
- const label = /* @__PURE__ */ import_react83.default.createElement(Label, __spreadValues({
8350
+ const label = /* @__PURE__ */ import_react86.default.createElement(Label, __spreadValues({
8165
8351
  id: `${id.current}-label`,
8166
8352
  htmlFor: `${id.current}-input`,
8167
8353
  variant,
8168
8354
  messageId: errorMessageId
8169
8355
  }, labelProps));
8170
- return /* @__PURE__ */ import_react83.default.createElement(FormControl, null, /* @__PURE__ */ import_react83.default.createElement(_SelectBase, __spreadProps(__spreadValues(__spreadValues({}, baseProps), errorProps), {
8356
+ return /* @__PURE__ */ import_react86.default.createElement(FormControl, null, /* @__PURE__ */ import_react86.default.createElement(_SelectBase, __spreadProps(__spreadValues(__spreadValues({}, baseProps), errorProps), {
8171
8357
  id: `${id.current}-input`,
8172
8358
  options,
8173
8359
  disabled: props.disabled,
8174
8360
  valid: props.valid,
8175
8361
  labelWrapper: label
8176
- })), /* @__PURE__ */ import_react83.default.createElement(HelperText, {
8362
+ })), /* @__PURE__ */ import_react86.default.createElement(HelperText, {
8177
8363
  messageId: errorMessageId,
8178
8364
  error: !labelProps.valid,
8179
8365
  helperText: labelProps.helperText,
@@ -8182,7 +8368,7 @@ var Select2 = (_a) => {
8182
8368
  reserveSpaceForError: labelProps.reserveSpaceForError
8183
8369
  }));
8184
8370
  };
8185
- var SelectSkeleton = () => /* @__PURE__ */ import_react83.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react83.default.createElement(SelectBase.Skeleton, null));
8371
+ var SelectSkeleton = () => /* @__PURE__ */ import_react86.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react86.default.createElement(SelectBase.Skeleton, null));
8186
8372
  Select2.Skeleton = SelectSkeleton;
8187
8373
  Select2.Skeleton.displayName = "Select.Skeleton";
8188
8374
 
@@ -8201,23 +8387,23 @@ var Pagination = ({
8201
8387
  pageSizes,
8202
8388
  onPageSizeChange
8203
8389
  }) => {
8204
- const [value, setValue] = import_react84.default.useState(currentPage);
8205
- import_react84.default.useEffect(() => {
8390
+ const [value, setValue] = import_react87.default.useState(currentPage);
8391
+ import_react87.default.useEffect(() => {
8206
8392
  setValue(currentPage);
8207
8393
  }, [currentPage]);
8208
- return /* @__PURE__ */ import_react84.default.createElement(Box, {
8394
+ return /* @__PURE__ */ import_react87.default.createElement(Box, {
8209
8395
  className: tw("grid grid-cols-[200px_1fr_200px]"),
8210
8396
  backgroundColor: "grey-0",
8211
8397
  padding: "4"
8212
- }, pageSizes && onPageSizeChange && typeof pageSize === "number" ? /* @__PURE__ */ import_react84.default.createElement(Box, {
8398
+ }, pageSizes && onPageSizeChange && typeof pageSize === "number" ? /* @__PURE__ */ import_react87.default.createElement(Box, {
8213
8399
  display: "flex",
8214
8400
  alignItems: "center",
8215
8401
  gap: "4"
8216
- }, /* @__PURE__ */ import_react84.default.createElement(Typography2.Small, {
8402
+ }, /* @__PURE__ */ import_react87.default.createElement(Typography2.Small, {
8217
8403
  color: "grey-50"
8218
- }, "Items per page "), /* @__PURE__ */ import_react84.default.createElement("div", {
8404
+ }, "Items per page "), /* @__PURE__ */ import_react87.default.createElement("div", {
8219
8405
  className: tw("max-w-[70px]")
8220
- }, /* @__PURE__ */ import_react84.default.createElement(SelectBase, {
8406
+ }, /* @__PURE__ */ import_react87.default.createElement(SelectBase, {
8221
8407
  options: pageSizes.map((size) => size.toString()),
8222
8408
  value: pageSize.toString(),
8223
8409
  onChange: (size) => {
@@ -8228,26 +8414,26 @@ var Pagination = ({
8228
8414
  }
8229
8415
  }
8230
8416
  }
8231
- }))) : /* @__PURE__ */ import_react84.default.createElement("div", null), /* @__PURE__ */ import_react84.default.createElement(Box, {
8417
+ }))) : /* @__PURE__ */ import_react87.default.createElement("div", null), /* @__PURE__ */ import_react87.default.createElement(Box, {
8232
8418
  display: "flex",
8233
8419
  justifyContent: "center",
8234
8420
  alignItems: "center",
8235
8421
  className: tw("grow")
8236
- }, /* @__PURE__ */ import_react84.default.createElement(IconButton, {
8422
+ }, /* @__PURE__ */ import_react87.default.createElement(IconButton, {
8237
8423
  "aria-label": "First",
8238
8424
  onClick: () => onPageChange(1),
8239
8425
  icon: import_chevronBackward.default,
8240
8426
  disabled: !hasPreviousPage
8241
- }), /* @__PURE__ */ import_react84.default.createElement(IconButton, {
8427
+ }), /* @__PURE__ */ import_react87.default.createElement(IconButton, {
8242
8428
  "aria-label": "Previous",
8243
8429
  onClick: () => onPageChange(currentPage - 1),
8244
8430
  icon: import_chevronLeft3.default,
8245
8431
  disabled: !hasPreviousPage
8246
- }), /* @__PURE__ */ import_react84.default.createElement(Box, {
8432
+ }), /* @__PURE__ */ import_react87.default.createElement(Box, {
8247
8433
  paddingX: "4"
8248
- }, /* @__PURE__ */ import_react84.default.createElement(Typography2.Small, {
8434
+ }, /* @__PURE__ */ import_react87.default.createElement(Typography2.Small, {
8249
8435
  color: "grey-60"
8250
- }, "Page")), /* @__PURE__ */ import_react84.default.createElement(InputBase, {
8436
+ }, "Page")), /* @__PURE__ */ import_react87.default.createElement(InputBase, {
8251
8437
  className: classNames(tw("text-center max-w-[40px]"), "no-arrows"),
8252
8438
  type: "number",
8253
8439
  min: 1,
@@ -8264,67 +8450,67 @@ var Pagination = ({
8264
8450
  const newPage = !isNaN(numberValue) ? (0, import_clamp.default)(numberValue, 1, totalPages) : 1;
8265
8451
  onPageChange(newPage);
8266
8452
  }
8267
- }), /* @__PURE__ */ import_react84.default.createElement(Box, {
8453
+ }), /* @__PURE__ */ import_react87.default.createElement(Box, {
8268
8454
  paddingX: "4"
8269
- }, /* @__PURE__ */ import_react84.default.createElement(Typography2.Small, {
8455
+ }, /* @__PURE__ */ import_react87.default.createElement(Typography2.Small, {
8270
8456
  color: "grey-60"
8271
- }, "of ", totalPages)), /* @__PURE__ */ import_react84.default.createElement(IconButton, {
8457
+ }, "of ", totalPages)), /* @__PURE__ */ import_react87.default.createElement(IconButton, {
8272
8458
  "aria-label": "Next",
8273
8459
  onClick: () => onPageChange(currentPage + 1),
8274
8460
  icon: import_chevronRight3.default,
8275
8461
  disabled: !hasNextPage
8276
- }), /* @__PURE__ */ import_react84.default.createElement(IconButton, {
8462
+ }), /* @__PURE__ */ import_react87.default.createElement(IconButton, {
8277
8463
  "aria-label": "Last",
8278
8464
  onClick: () => onPageChange(totalPages),
8279
8465
  icon: import_chevronForward.default,
8280
8466
  disabled: !hasNextPage
8281
- })), /* @__PURE__ */ import_react84.default.createElement("div", null));
8467
+ })), /* @__PURE__ */ import_react87.default.createElement("div", null));
8282
8468
  };
8283
8469
 
8284
8470
  // src/molecules/PopoverDialog/PopoverDialog.tsx
8285
- var import_react86 = __toESM(require("react"));
8471
+ var import_react89 = __toESM(require("react"));
8286
8472
  var import_omit15 = __toESM(require("lodash/omit"));
8287
8473
 
8288
8474
  // src/atoms/PopoverDialog/PopoverDialog.tsx
8289
- var import_react85 = __toESM(require("react"));
8290
- var Header = (_a) => {
8475
+ var import_react88 = __toESM(require("react"));
8476
+ var Header2 = (_a) => {
8291
8477
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8292
- return /* @__PURE__ */ import_react85.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8478
+ return /* @__PURE__ */ import_react88.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8293
8479
  className: classNames(tw("p-5 gap-3 flex items-center"), className)
8294
8480
  }), children);
8295
8481
  };
8296
8482
  var Title = (_a) => {
8297
8483
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8298
- return /* @__PURE__ */ import_react85.default.createElement(Typography, __spreadProps(__spreadValues({}, rest), {
8484
+ return /* @__PURE__ */ import_react88.default.createElement(Typography, __spreadProps(__spreadValues({}, rest), {
8299
8485
  htmlTag: "h1",
8300
8486
  variant: "small-strong"
8301
8487
  }), children);
8302
8488
  };
8303
8489
  var Body = (_a) => {
8304
8490
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8305
- return /* @__PURE__ */ import_react85.default.createElement(Typography, __spreadProps(__spreadValues({}, rest), {
8491
+ return /* @__PURE__ */ import_react88.default.createElement(Typography, __spreadProps(__spreadValues({}, rest), {
8306
8492
  htmlTag: "div",
8307
8493
  variant: "caption",
8308
8494
  className: classNames(tw("px-5 overflow-y-auto"), className)
8309
8495
  }), children);
8310
8496
  };
8311
- var Footer = (_a) => {
8497
+ var Footer2 = (_a) => {
8312
8498
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8313
- return /* @__PURE__ */ import_react85.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8499
+ return /* @__PURE__ */ import_react88.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8314
8500
  className: classNames(tw("p-5"), className)
8315
8501
  }), children);
8316
8502
  };
8317
8503
  var Actions2 = (_a) => {
8318
8504
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8319
- return /* @__PURE__ */ import_react85.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8505
+ return /* @__PURE__ */ import_react88.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8320
8506
  className: classNames(tw("flex gap-4"), className)
8321
8507
  }), children);
8322
8508
  };
8323
8509
  var PopoverDialog = {
8324
- Header,
8510
+ Header: Header2,
8325
8511
  Title,
8326
8512
  Body,
8327
- Footer,
8513
+ Footer: Footer2,
8328
8514
  Actions: Actions2
8329
8515
  };
8330
8516
 
@@ -8332,13 +8518,13 @@ var PopoverDialog = {
8332
8518
  var PopoverDialog2 = ({ placement, open, title, secondaryAction, primaryAction, children }) => {
8333
8519
  const wrapPromptWithBody = (child) => {
8334
8520
  if (isComponentType(child, PopoverDialog2.Prompt)) {
8335
- return /* @__PURE__ */ import_react86.default.createElement(Popover2.Panel, {
8521
+ return /* @__PURE__ */ import_react89.default.createElement(Popover2.Panel, {
8336
8522
  className: tw("max-w-[300px]")
8337
- }, /* @__PURE__ */ import_react86.default.createElement(PopoverDialog.Header, null, /* @__PURE__ */ import_react86.default.createElement(PopoverDialog.Title, null, title)), child, /* @__PURE__ */ import_react86.default.createElement(PopoverDialog.Footer, null, /* @__PURE__ */ import_react86.default.createElement(PopoverDialog.Actions, null, secondaryAction && /* @__PURE__ */ import_react86.default.createElement(Popover2.Button, __spreadValues({
8523
+ }, /* @__PURE__ */ import_react89.default.createElement(PopoverDialog.Header, null, /* @__PURE__ */ import_react89.default.createElement(PopoverDialog.Title, null, title)), child, /* @__PURE__ */ import_react89.default.createElement(PopoverDialog.Footer, null, /* @__PURE__ */ import_react89.default.createElement(PopoverDialog.Actions, null, secondaryAction && /* @__PURE__ */ import_react89.default.createElement(Popover2.Button, __spreadValues({
8338
8524
  kind: "secondary-ghost",
8339
8525
  key: secondaryAction.text,
8340
8526
  dense: true
8341
- }, (0, import_omit15.default)(secondaryAction, "text")), secondaryAction.text), /* @__PURE__ */ import_react86.default.createElement(Popover2.Button, __spreadValues({
8527
+ }, (0, import_omit15.default)(secondaryAction, "text")), secondaryAction.text), /* @__PURE__ */ import_react89.default.createElement(Popover2.Button, __spreadValues({
8342
8528
  kind: "ghost",
8343
8529
  key: primaryAction.text,
8344
8530
  dense: true
@@ -8346,15 +8532,15 @@ var PopoverDialog2 = ({ placement, open, title, secondaryAction, primaryAction,
8346
8532
  }
8347
8533
  return child;
8348
8534
  };
8349
- return /* @__PURE__ */ import_react86.default.createElement(Popover2, {
8535
+ return /* @__PURE__ */ import_react89.default.createElement(Popover2, {
8350
8536
  type: "dialog",
8351
8537
  isOpen: open,
8352
8538
  placement,
8353
8539
  containFocus: true
8354
- }, import_react86.default.Children.map(children, wrapPromptWithBody));
8540
+ }, import_react89.default.Children.map(children, wrapPromptWithBody));
8355
8541
  };
8356
8542
  PopoverDialog2.Trigger = Popover2.Trigger;
8357
- var Prompt = ({ children }) => /* @__PURE__ */ import_react86.default.createElement(PopoverDialog.Body, null, children);
8543
+ var Prompt = ({ children }) => /* @__PURE__ */ import_react89.default.createElement(PopoverDialog.Body, null, children);
8358
8544
  Prompt.displayName = "PopoverDialog.Prompt";
8359
8545
  PopoverDialog2.Prompt = Prompt;
8360
8546
 
@@ -8363,14 +8549,14 @@ var import_react_dom = require("react-dom");
8363
8549
  var Portal = ({ children, to }) => (0, import_react_dom.createPortal)(children, to);
8364
8550
 
8365
8551
  // src/molecules/ProgressBar/ProgressBar.tsx
8366
- var import_react88 = __toESM(require("react"));
8552
+ var import_react91 = __toESM(require("react"));
8367
8553
 
8368
8554
  // src/atoms/ProgressBar/ProgressBar.tsx
8369
- var import_react87 = __toESM(require("react"));
8555
+ var import_react90 = __toESM(require("react"));
8370
8556
  var import_clamp2 = __toESM(require("lodash/clamp"));
8371
8557
  var ProgressBar = (_a) => {
8372
8558
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8373
- return /* @__PURE__ */ import_react87.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8559
+ return /* @__PURE__ */ import_react90.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8374
8560
  className: classNames(
8375
8561
  tw("relative flex items-center w-full bg-grey-0 h-2 rounded-full overflow-hidden"),
8376
8562
  className
@@ -8386,7 +8572,7 @@ var STATUS_COLORS = {
8386
8572
  ProgressBar.Indicator = (_a) => {
8387
8573
  var _b = _a, { min, max, value, "aria-label": ariaLabel, status, className } = _b, rest = __objRest(_b, ["min", "max", "value", "aria-label", "status", "className"]);
8388
8574
  const completedPercentage = (0, import_clamp2.default)((value - min) / (max - min) * 100, 0, 100);
8389
- return /* @__PURE__ */ import_react87.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8575
+ return /* @__PURE__ */ import_react90.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8390
8576
  className: classNames(
8391
8577
  tw("h-2 rounded-full transition-all ease-in-out delay-150"),
8392
8578
  STATUS_COLORS[status],
@@ -8402,11 +8588,11 @@ ProgressBar.Indicator = (_a) => {
8402
8588
  };
8403
8589
  ProgressBar.Labels = (_a) => {
8404
8590
  var _b = _a, { children, startLabel, endLabel, className } = _b, rest = __objRest(_b, ["children", "startLabel", "endLabel", "className"]);
8405
- return /* @__PURE__ */ import_react87.default.createElement("div", {
8591
+ return /* @__PURE__ */ import_react90.default.createElement("div", {
8406
8592
  className: classNames(tw("flex flex-row"), className)
8407
- }, /* @__PURE__ */ import_react87.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
8593
+ }, /* @__PURE__ */ import_react90.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
8408
8594
  className: tw("grow text-grey-70 typography-caption")
8409
- }), startLabel), /* @__PURE__ */ import_react87.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
8595
+ }), startLabel), /* @__PURE__ */ import_react90.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
8410
8596
  className: tw("grow text-grey-70 typography-caption text-right")
8411
8597
  }), endLabel));
8412
8598
  };
@@ -8424,7 +8610,7 @@ var ProgressBar2 = (props) => {
8424
8610
  if (min > max) {
8425
8611
  throw new Error("`min` value provided to `ProgressBar` is greater than `max` value.");
8426
8612
  }
8427
- const progress = /* @__PURE__ */ import_react88.default.createElement(ProgressBar, null, /* @__PURE__ */ import_react88.default.createElement(ProgressBar.Indicator, {
8613
+ const progress = /* @__PURE__ */ import_react91.default.createElement(ProgressBar, null, /* @__PURE__ */ import_react91.default.createElement(ProgressBar.Indicator, {
8428
8614
  status: value === max ? completedStatus : progresStatus,
8429
8615
  min,
8430
8616
  max,
@@ -8434,13 +8620,13 @@ var ProgressBar2 = (props) => {
8434
8620
  if (props.dense) {
8435
8621
  return progress;
8436
8622
  }
8437
- return /* @__PURE__ */ import_react88.default.createElement("div", null, progress, /* @__PURE__ */ import_react88.default.createElement(ProgressBar.Labels, {
8623
+ return /* @__PURE__ */ import_react91.default.createElement("div", null, progress, /* @__PURE__ */ import_react91.default.createElement(ProgressBar.Labels, {
8438
8624
  className: tw("py-2"),
8439
8625
  startLabel: props.startLabel,
8440
8626
  endLabel: props.endLabel
8441
8627
  }));
8442
8628
  };
8443
- var ProgressBarSkeleton = () => /* @__PURE__ */ import_react88.default.createElement(Skeleton, {
8629
+ var ProgressBarSkeleton = () => /* @__PURE__ */ import_react91.default.createElement(Skeleton, {
8444
8630
  height: 4,
8445
8631
  display: "block"
8446
8632
  });
@@ -8448,13 +8634,13 @@ ProgressBar2.Skeleton = ProgressBarSkeleton;
8448
8634
  ProgressBar2.Skeleton.displayName = "ProgressBar.Skeleton";
8449
8635
 
8450
8636
  // src/molecules/RadioButton/RadioButton.tsx
8451
- var import_react89 = __toESM(require("react"));
8452
- var RadioButton2 = import_react89.default.forwardRef(
8637
+ var import_react92 = __toESM(require("react"));
8638
+ var RadioButton2 = import_react92.default.forwardRef(
8453
8639
  (_a, ref) => {
8454
8640
  var _b = _a, { name, id, readOnly = false, disabled = false, caption, children, "aria-label": ariaLabel } = _b, props = __objRest(_b, ["name", "id", "readOnly", "disabled", "caption", "children", "aria-label"]);
8455
8641
  var _a2;
8456
8642
  const isChecked = (_a2 = props.checked) != null ? _a2 : props.defaultChecked;
8457
- return !readOnly || isChecked ? /* @__PURE__ */ import_react89.default.createElement(ControlLabel, {
8643
+ return !readOnly || isChecked ? /* @__PURE__ */ import_react92.default.createElement(ControlLabel, {
8458
8644
  htmlFor: id,
8459
8645
  label: children,
8460
8646
  "aria-label": ariaLabel,
@@ -8462,7 +8648,7 @@ var RadioButton2 = import_react89.default.forwardRef(
8462
8648
  readOnly,
8463
8649
  disabled,
8464
8650
  style: { gap: "0 8px" }
8465
- }, !readOnly && /* @__PURE__ */ import_react89.default.createElement(RadioButton, __spreadProps(__spreadValues({
8651
+ }, !readOnly && /* @__PURE__ */ import_react92.default.createElement(RadioButton, __spreadProps(__spreadValues({
8466
8652
  id,
8467
8653
  ref,
8468
8654
  name
@@ -8473,12 +8659,12 @@ var RadioButton2 = import_react89.default.forwardRef(
8473
8659
  }
8474
8660
  );
8475
8661
  RadioButton2.displayName = "RadioButton";
8476
- var RadioButtonSkeleton = () => /* @__PURE__ */ import_react89.default.createElement("div", {
8662
+ var RadioButtonSkeleton = () => /* @__PURE__ */ import_react92.default.createElement("div", {
8477
8663
  className: tw("flex gap-3")
8478
- }, /* @__PURE__ */ import_react89.default.createElement(Skeleton, {
8664
+ }, /* @__PURE__ */ import_react92.default.createElement(Skeleton, {
8479
8665
  height: 20,
8480
8666
  width: 20
8481
- }), /* @__PURE__ */ import_react89.default.createElement(Skeleton, {
8667
+ }), /* @__PURE__ */ import_react92.default.createElement(Skeleton, {
8482
8668
  height: 20,
8483
8669
  width: 150
8484
8670
  }));
@@ -8486,10 +8672,10 @@ RadioButton2.Skeleton = RadioButtonSkeleton;
8486
8672
  RadioButton2.Skeleton.displayName = "RadioButton.Skeleton";
8487
8673
 
8488
8674
  // src/molecules/RadioButtonGroup/RadioButtonGroup.tsx
8489
- var import_react90 = __toESM(require("react"));
8675
+ var import_react93 = __toESM(require("react"));
8490
8676
  var import_uniqueId8 = __toESM(require("lodash/uniqueId"));
8491
8677
  var isRadioButton = (c) => {
8492
- return import_react90.default.isValidElement(c) && c.type === RadioButton2;
8678
+ return import_react93.default.isValidElement(c) && c.type === RadioButton2;
8493
8679
  };
8494
8680
  var RadioButtonGroup = (_a) => {
8495
8681
  var _b = _a, {
@@ -8512,7 +8698,7 @@ var RadioButtonGroup = (_a) => {
8512
8698
  "children"
8513
8699
  ]);
8514
8700
  var _a2;
8515
- const [value, setValue] = import_react90.default.useState((_a2 = _value != null ? _value : defaultValue) != null ? _a2 : "");
8701
+ const [value, setValue] = import_react93.default.useState((_a2 = _value != null ? _value : defaultValue) != null ? _a2 : "");
8516
8702
  const errorMessageId = (0, import_uniqueId8.default)();
8517
8703
  const errorProps = props.valid === false ? { "aria-invalid": true, "aria-describedby": errorMessageId } : {};
8518
8704
  const labelControlProps = getLabelControlProps(props);
@@ -8523,14 +8709,14 @@ var RadioButtonGroup = (_a) => {
8523
8709
  setValue(e.target.value);
8524
8710
  onChange == null ? void 0 : onChange(e.target.value);
8525
8711
  };
8526
- const content = import_react90.default.Children.map(children, (c) => {
8712
+ const content = import_react93.default.Children.map(children, (c) => {
8527
8713
  var _a3, _b2, _c;
8528
8714
  if (!isRadioButton(c)) {
8529
8715
  return null;
8530
8716
  }
8531
8717
  const defaultChecked = defaultValue === void 0 ? void 0 : c.props.value === defaultValue;
8532
8718
  const checked = value === void 0 ? void 0 : c.props.value === value;
8533
- return import_react90.default.cloneElement(c, {
8719
+ return import_react93.default.cloneElement(c, {
8534
8720
  name,
8535
8721
  defaultChecked: (_a3 = c.props.defaultChecked) != null ? _a3 : defaultChecked,
8536
8722
  checked: (_b2 = c.props.checked) != null ? _b2 : checked,
@@ -8539,11 +8725,11 @@ var RadioButtonGroup = (_a) => {
8539
8725
  readOnly
8540
8726
  });
8541
8727
  });
8542
- return /* @__PURE__ */ import_react90.default.createElement(LabelControl, __spreadValues(__spreadValues({
8728
+ return /* @__PURE__ */ import_react93.default.createElement(LabelControl, __spreadValues(__spreadValues({
8543
8729
  fieldset: true
8544
- }, labelControlProps), errorProps), cols && /* @__PURE__ */ import_react90.default.createElement(InputGroup, {
8730
+ }, labelControlProps), errorProps), cols && /* @__PURE__ */ import_react93.default.createElement(InputGroup, {
8545
8731
  cols
8546
- }, content), !cols && /* @__PURE__ */ import_react90.default.createElement(Flexbox, {
8732
+ }, content), !cols && /* @__PURE__ */ import_react93.default.createElement(Flexbox, {
8547
8733
  direction,
8548
8734
  alignItems: "flex-start",
8549
8735
  colGap: "8",
@@ -8552,12 +8738,12 @@ var RadioButtonGroup = (_a) => {
8552
8738
  }, content));
8553
8739
  };
8554
8740
  var RadioButtonGroupSkeleton = ({ direction = "row", options = 2 }) => {
8555
- return /* @__PURE__ */ import_react90.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react90.default.createElement("div", {
8741
+ return /* @__PURE__ */ import_react93.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react93.default.createElement("div", {
8556
8742
  className: tw("flex flex-wrap", {
8557
8743
  "flex-row gap-8": direction === "row",
8558
8744
  "flex-col gap-2": direction === "column"
8559
8745
  })
8560
- }, Array.from({ length: options }).map((_, key) => /* @__PURE__ */ import_react90.default.createElement(RadioButton2.Skeleton, {
8746
+ }, Array.from({ length: options }).map((_, key) => /* @__PURE__ */ import_react93.default.createElement(RadioButton2.Skeleton, {
8561
8747
  key
8562
8748
  }))));
8563
8749
  };
@@ -8565,68 +8751,68 @@ RadioButtonGroup.Skeleton = RadioButtonGroupSkeleton;
8565
8751
  RadioButtonGroup.Skeleton.displayName = "RadioButtonGroup.Skeleton";
8566
8752
 
8567
8753
  // src/molecules/Section/Section.tsx
8568
- var import_react92 = __toESM(require("react"));
8754
+ var import_react95 = __toESM(require("react"));
8569
8755
  var import_castArray4 = __toESM(require("lodash/castArray"));
8570
8756
 
8571
8757
  // src/atoms/Section/Section.tsx
8572
- var import_react91 = __toESM(require("react"));
8573
- var Section2 = (_a) => {
8758
+ var import_react94 = __toESM(require("react"));
8759
+ var Section3 = (_a) => {
8574
8760
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
8575
- return /* @__PURE__ */ import_react91.default.createElement(Box, __spreadValues({
8761
+ return /* @__PURE__ */ import_react94.default.createElement(Box, __spreadValues({
8576
8762
  borderColor: "grey-5",
8577
8763
  borderWidth: "1px"
8578
8764
  }, rest), children);
8579
8765
  };
8580
- Section2.Header = (_a) => {
8766
+ Section3.Header = (_a) => {
8581
8767
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8582
- return /* @__PURE__ */ import_react91.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8768
+ return /* @__PURE__ */ import_react94.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8583
8769
  className: classNames(tw("px-6 py-5 flex gap-5 justify-between items-center"), className)
8584
8770
  }), children);
8585
8771
  };
8586
- Section2.TitleContainer = (_a) => {
8772
+ Section3.TitleContainer = (_a) => {
8587
8773
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8588
- return /* @__PURE__ */ import_react91.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8774
+ return /* @__PURE__ */ import_react94.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8589
8775
  className: classNames(tw("flex flex-col grow gap-2"), className)
8590
8776
  }), children);
8591
8777
  };
8592
- Section2.Title = (_a) => {
8778
+ Section3.Title = (_a) => {
8593
8779
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
8594
- return /* @__PURE__ */ import_react91.default.createElement(Typography2.Subheading, __spreadProps(__spreadValues({}, rest), {
8780
+ return /* @__PURE__ */ import_react94.default.createElement(Typography2.Subheading, __spreadProps(__spreadValues({}, rest), {
8595
8781
  color: "black"
8596
8782
  }), children);
8597
8783
  };
8598
- Section2.Subtitle = (_a) => {
8784
+ Section3.Subtitle = (_a) => {
8599
8785
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
8600
- return /* @__PURE__ */ import_react91.default.createElement(Typography2.SmallText, __spreadProps(__spreadValues({}, rest), {
8786
+ return /* @__PURE__ */ import_react94.default.createElement(Typography2.SmallText, __spreadProps(__spreadValues({}, rest), {
8601
8787
  color: "grey-70"
8602
8788
  }), children);
8603
8789
  };
8604
- Section2.Actions = (_a) => {
8790
+ Section3.Actions = (_a) => {
8605
8791
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8606
- return /* @__PURE__ */ import_react91.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8792
+ return /* @__PURE__ */ import_react94.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8607
8793
  className: classNames(tw("flex gap-4 justify-end"), className)
8608
8794
  }), children);
8609
8795
  };
8610
- Section2.Body = (_a) => {
8796
+ Section3.Body = (_a) => {
8611
8797
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
8612
- return /* @__PURE__ */ import_react91.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8798
+ return /* @__PURE__ */ import_react94.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8613
8799
  className: classNames(tw("p-6"), className)
8614
- }), /* @__PURE__ */ import_react91.default.createElement(Typography, {
8800
+ }), /* @__PURE__ */ import_react94.default.createElement(Typography, {
8615
8801
  htmlTag: "div",
8616
8802
  color: "grey-70"
8617
8803
  }, children));
8618
8804
  };
8619
8805
 
8620
8806
  // src/molecules/Section/Section.tsx
8621
- var Section3 = ({ title, subtitle, actions, children }) => /* @__PURE__ */ import_react92.default.createElement(Section2, null, title && /* @__PURE__ */ import_react92.default.createElement(import_react92.default.Fragment, null, /* @__PURE__ */ import_react92.default.createElement(Section2.Header, null, /* @__PURE__ */ import_react92.default.createElement(Section2.TitleContainer, null, /* @__PURE__ */ import_react92.default.createElement(Section2.Title, null, title), subtitle && /* @__PURE__ */ import_react92.default.createElement(Section2.Subtitle, null, subtitle)), /* @__PURE__ */ import_react92.default.createElement(Section2.Actions, null, actions && (0, import_castArray4.default)(actions).filter(Boolean).map((_a) => {
8807
+ var Section4 = ({ title, subtitle, actions, children }) => /* @__PURE__ */ import_react95.default.createElement(Section3, null, title && /* @__PURE__ */ import_react95.default.createElement(import_react95.default.Fragment, null, /* @__PURE__ */ import_react95.default.createElement(Section3.Header, null, /* @__PURE__ */ import_react95.default.createElement(Section3.TitleContainer, null, /* @__PURE__ */ import_react95.default.createElement(Section3.Title, null, title), subtitle && /* @__PURE__ */ import_react95.default.createElement(Section3.Subtitle, null, subtitle)), /* @__PURE__ */ import_react95.default.createElement(Section3.Actions, null, actions && (0, import_castArray4.default)(actions).filter(Boolean).map((_a) => {
8622
8808
  var _b = _a, { text } = _b, action = __objRest(_b, ["text"]);
8623
- return /* @__PURE__ */ import_react92.default.createElement(SecondaryButton, __spreadValues({
8809
+ return /* @__PURE__ */ import_react95.default.createElement(Button.Secondary, __spreadValues({
8624
8810
  key: text
8625
8811
  }, action), text);
8626
- }))), /* @__PURE__ */ import_react92.default.createElement(Divider2, null)), /* @__PURE__ */ import_react92.default.createElement(Section2.Body, null, children));
8812
+ }))), /* @__PURE__ */ import_react95.default.createElement(Divider2, null)), /* @__PURE__ */ import_react95.default.createElement(Section3.Body, null, children));
8627
8813
 
8628
8814
  // src/molecules/SegmentedControl/SegmentedControl.tsx
8629
- var import_react93 = __toESM(require("react"));
8815
+ var import_react96 = __toESM(require("react"));
8630
8816
  var SegmentedControl = (_a) => {
8631
8817
  var _b = _a, {
8632
8818
  children,
@@ -8643,7 +8829,7 @@ var SegmentedControl = (_a) => {
8643
8829
  "selected",
8644
8830
  "className"
8645
8831
  ]);
8646
- return /* @__PURE__ */ import_react93.default.createElement("button", __spreadProps(__spreadValues({
8832
+ return /* @__PURE__ */ import_react96.default.createElement("button", __spreadProps(__spreadValues({
8647
8833
  type: "button"
8648
8834
  }, rest), {
8649
8835
  className: classNames(
@@ -8674,11 +8860,11 @@ var SegmentedControlGroup = (_a) => {
8674
8860
  "border border-grey-20 text-grey-50": variant === "outlined",
8675
8861
  "bg-grey-0": variant === "raised"
8676
8862
  });
8677
- return /* @__PURE__ */ import_react93.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8863
+ return /* @__PURE__ */ import_react96.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8678
8864
  className: classNames(classes2, className)
8679
- }), import_react93.default.Children.map(
8865
+ }), import_react96.default.Children.map(
8680
8866
  children,
8681
- (child) => import_react93.default.cloneElement(child, {
8867
+ (child) => import_react96.default.cloneElement(child, {
8682
8868
  dense,
8683
8869
  variant,
8684
8870
  onClick: () => onChange(child.props.value),
@@ -8716,10 +8902,10 @@ var getCommonClassNames = (dense, selected) => tw(
8716
8902
  );
8717
8903
 
8718
8904
  // src/molecules/Spacing/Spacing.tsx
8719
- var import_react94 = __toESM(require("react"));
8905
+ var import_react97 = __toESM(require("react"));
8720
8906
  var Spacing = (_a) => {
8721
8907
  var _b = _a, { gap, row } = _b, rest = __objRest(_b, ["gap", "row"]);
8722
- return /* @__PURE__ */ import_react94.default.createElement(Box, __spreadProps(__spreadValues({}, rest), {
8908
+ return /* @__PURE__ */ import_react97.default.createElement(Box, __spreadProps(__spreadValues({}, rest), {
8723
8909
  display: "flex",
8724
8910
  flexDirection: row ? "row" : "column",
8725
8911
  gap
@@ -8727,14 +8913,14 @@ var Spacing = (_a) => {
8727
8913
  };
8728
8914
 
8729
8915
  // src/molecules/Stepper/Stepper.tsx
8730
- var import_react96 = __toESM(require("react"));
8916
+ var import_react99 = __toESM(require("react"));
8731
8917
 
8732
8918
  // src/atoms/Stepper/Stepper.tsx
8733
- var import_react95 = __toESM(require("react"));
8919
+ var import_react98 = __toESM(require("react"));
8734
8920
  var import_tick5 = __toESM(require_tick());
8735
8921
  var Stepper = (_a) => {
8736
8922
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
8737
- return /* @__PURE__ */ import_react95.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8923
+ return /* @__PURE__ */ import_react98.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8738
8924
  className: classNames(className)
8739
8925
  }));
8740
8926
  };
@@ -8748,7 +8934,7 @@ var ConnectorContainer = (_a) => {
8748
8934
  "completed",
8749
8935
  "dense"
8750
8936
  ]);
8751
- return /* @__PURE__ */ import_react95.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8937
+ return /* @__PURE__ */ import_react98.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8752
8938
  className: classNames(
8753
8939
  tw("absolute w-full -left-1/2", {
8754
8940
  "top-[3px] px-[14px]": Boolean(dense),
@@ -8760,7 +8946,7 @@ var ConnectorContainer = (_a) => {
8760
8946
  };
8761
8947
  var Connector = (_a) => {
8762
8948
  var _b = _a, { children, className, completed, dense } = _b, rest = __objRest(_b, ["children", "className", "completed", "dense"]);
8763
- return /* @__PURE__ */ import_react95.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8949
+ return /* @__PURE__ */ import_react98.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8764
8950
  className: classNames(
8765
8951
  tw("w-full", {
8766
8952
  "bg-grey-20": !completed,
@@ -8774,7 +8960,7 @@ var Connector = (_a) => {
8774
8960
  };
8775
8961
  var Step = (_a) => {
8776
8962
  var _b = _a, { className, state } = _b, rest = __objRest(_b, ["className", "state"]);
8777
- return /* @__PURE__ */ import_react95.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8963
+ return /* @__PURE__ */ import_react98.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8778
8964
  className: classNames(
8779
8965
  tw("flex flex-col items-center text-grey-90 relative text-center", {
8780
8966
  "text-grey-20": state === "inactive"
@@ -8795,13 +8981,13 @@ var getDenseClassNames = (state) => tw("h-[8px] w-[8px]", {
8795
8981
  });
8796
8982
  var Indicator = (_a) => {
8797
8983
  var _b = _a, { children, className, state, dense } = _b, rest = __objRest(_b, ["children", "className", "state", "dense"]);
8798
- return /* @__PURE__ */ import_react95.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8984
+ return /* @__PURE__ */ import_react98.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
8799
8985
  className: classNames(
8800
8986
  tw("rounded-full flex justify-center items-center mx-2 mb-3"),
8801
8987
  dense ? getDenseClassNames(state) : getClassNames(state),
8802
8988
  className
8803
8989
  )
8804
- }), state === "completed" ? /* @__PURE__ */ import_react95.default.createElement(InlineIcon, {
8990
+ }), state === "completed" ? /* @__PURE__ */ import_react98.default.createElement(InlineIcon, {
8805
8991
  icon: import_tick5.default
8806
8992
  }) : dense ? null : children);
8807
8993
  };
@@ -8812,46 +8998,47 @@ Stepper.ConnectorContainer = ConnectorContainer;
8812
8998
 
8813
8999
  // src/molecules/Stepper/Stepper.tsx
8814
9000
  var Stepper2 = ({ children, activeIndex, dense }) => {
8815
- const steps = import_react96.default.Children.count(children);
8816
- return /* @__PURE__ */ import_react96.default.createElement(Stepper, {
9001
+ const steps = import_react99.default.Children.count(children);
9002
+ return /* @__PURE__ */ import_react99.default.createElement(Stepper, {
8817
9003
  role: "list"
8818
- }, /* @__PURE__ */ import_react96.default.createElement(Template, {
9004
+ }, /* @__PURE__ */ import_react99.default.createElement(Template, {
8819
9005
  columns: steps
8820
- }, import_react96.default.Children.map(children, (child, index) => {
9006
+ }, import_react99.default.Children.map(children, (child, index) => {
8821
9007
  if (!isComponentType(child, Step2)) {
8822
9008
  return new Error("<Stepper> can only have <Stepper.Step> components as children");
8823
9009
  } else {
8824
9010
  const state = index > activeIndex ? "inactive" : index === activeIndex ? "active" : "completed";
8825
- return /* @__PURE__ */ import_react96.default.createElement(Stepper.Step, {
9011
+ return /* @__PURE__ */ import_react99.default.createElement(Stepper.Step, {
8826
9012
  state,
8827
9013
  "aria-current": state === "active" ? "step" : false,
8828
9014
  role: "listitem"
8829
- }, index > 0 && index <= steps && /* @__PURE__ */ import_react96.default.createElement(Stepper.ConnectorContainer, {
9015
+ }, index > 0 && index <= steps && /* @__PURE__ */ import_react99.default.createElement(Stepper.ConnectorContainer, {
8830
9016
  dense
8831
- }, /* @__PURE__ */ import_react96.default.createElement(Stepper.ConnectorContainer.Connector, {
9017
+ }, /* @__PURE__ */ import_react99.default.createElement(Stepper.ConnectorContainer.Connector, {
8832
9018
  completed: state === "completed" || state === "active"
8833
- })), /* @__PURE__ */ import_react96.default.createElement(Stepper.Step.Indicator, {
9019
+ })), /* @__PURE__ */ import_react99.default.createElement(Stepper.Step.Indicator, {
8834
9020
  state,
8835
9021
  dense
8836
9022
  }, index + 1), child.props.children);
8837
9023
  }
8838
9024
  })));
8839
9025
  };
9026
+ Stepper2.displayName = "Stepper";
8840
9027
  var Step2 = () => null;
8841
9028
  Step2.displayName = "Stepper.Step";
8842
9029
  Stepper2.Step = Step2;
8843
9030
 
8844
9031
  // src/molecules/Switch/Switch.tsx
8845
- var import_react98 = __toESM(require("react"));
9032
+ var import_react101 = __toESM(require("react"));
8846
9033
 
8847
9034
  // src/atoms/Switch/Switch.tsx
8848
- var import_react97 = __toESM(require("react"));
8849
- var Switch = import_react97.default.forwardRef(
9035
+ var import_react100 = __toESM(require("react"));
9036
+ var Switch = import_react100.default.forwardRef(
8850
9037
  (_a, ref) => {
8851
9038
  var _b = _a, { id, children, name, disabled = false, readOnly = false } = _b, props = __objRest(_b, ["id", "children", "name", "disabled", "readOnly"]);
8852
- return /* @__PURE__ */ import_react97.default.createElement("span", {
9039
+ return /* @__PURE__ */ import_react100.default.createElement("span", {
8853
9040
  className: tw("relative inline-flex justify-center items-center self-center group")
8854
- }, /* @__PURE__ */ import_react97.default.createElement("input", __spreadProps(__spreadValues({
9041
+ }, /* @__PURE__ */ import_react100.default.createElement("input", __spreadProps(__spreadValues({
8855
9042
  id,
8856
9043
  ref,
8857
9044
  type: "checkbox",
@@ -8870,7 +9057,7 @@ var Switch = import_react97.default.forwardRef(
8870
9057
  ),
8871
9058
  readOnly,
8872
9059
  disabled
8873
- })), /* @__PURE__ */ import_react97.default.createElement("span", {
9060
+ })), /* @__PURE__ */ import_react100.default.createElement("span", {
8874
9061
  className: tw(
8875
9062
  "pointer-events-none rounded-full absolute inline-block transition duration-300 h-4 w-4 transform peer-checked/switch:translate-x-5",
8876
9063
  "bg-white peer-disabled/switch:bg-grey-0 left-2 peer-checked/switch:left-1",
@@ -8883,12 +9070,12 @@ var Switch = import_react97.default.forwardRef(
8883
9070
  );
8884
9071
 
8885
9072
  // src/molecules/Switch/Switch.tsx
8886
- var Switch2 = import_react98.default.forwardRef(
9073
+ var Switch2 = import_react101.default.forwardRef(
8887
9074
  (_a, ref) => {
8888
9075
  var _b = _a, { id, name, caption, readOnly = false, disabled = false, children, "aria-label": ariaLabel } = _b, props = __objRest(_b, ["id", "name", "caption", "readOnly", "disabled", "children", "aria-label"]);
8889
9076
  var _a2;
8890
9077
  const isChecked = (_a2 = props.checked) != null ? _a2 : props.defaultChecked;
8891
- return !readOnly || isChecked ? /* @__PURE__ */ import_react98.default.createElement(ControlLabel, {
9078
+ return !readOnly || isChecked ? /* @__PURE__ */ import_react101.default.createElement(ControlLabel, {
8892
9079
  htmlFor: id,
8893
9080
  label: children,
8894
9081
  "aria-label": ariaLabel,
@@ -8896,7 +9083,7 @@ var Switch2 = import_react98.default.forwardRef(
8896
9083
  readOnly,
8897
9084
  disabled,
8898
9085
  style: { gap: "0 8px" }
8899
- }, !readOnly && /* @__PURE__ */ import_react98.default.createElement(Switch, __spreadProps(__spreadValues({
9086
+ }, !readOnly && /* @__PURE__ */ import_react101.default.createElement(Switch, __spreadProps(__spreadValues({
8900
9087
  id,
8901
9088
  ref,
8902
9089
  name
@@ -8907,12 +9094,12 @@ var Switch2 = import_react98.default.forwardRef(
8907
9094
  }
8908
9095
  );
8909
9096
  Switch2.displayName = "Switch";
8910
- var SwitchSkeleton = () => /* @__PURE__ */ import_react98.default.createElement("div", {
9097
+ var SwitchSkeleton = () => /* @__PURE__ */ import_react101.default.createElement("div", {
8911
9098
  className: tw("flex gap-3")
8912
- }, /* @__PURE__ */ import_react98.default.createElement(Skeleton, {
9099
+ }, /* @__PURE__ */ import_react101.default.createElement(Skeleton, {
8913
9100
  height: 20,
8914
9101
  width: 35
8915
- }), /* @__PURE__ */ import_react98.default.createElement(Skeleton, {
9102
+ }), /* @__PURE__ */ import_react101.default.createElement(Skeleton, {
8916
9103
  height: 20,
8917
9104
  width: 150
8918
9105
  }));
@@ -8920,7 +9107,7 @@ Switch2.Skeleton = SwitchSkeleton;
8920
9107
  Switch2.Skeleton.displayName = "Switch.Skeleton ";
8921
9108
 
8922
9109
  // src/molecules/SwitchGroup/SwitchGroup.tsx
8923
- var import_react99 = __toESM(require("react"));
9110
+ var import_react102 = __toESM(require("react"));
8924
9111
  var import_uniqueId9 = __toESM(require("lodash/uniqueId"));
8925
9112
  var SwitchGroup = (_a) => {
8926
9113
  var _b = _a, {
@@ -8939,7 +9126,7 @@ var SwitchGroup = (_a) => {
8939
9126
  "children"
8940
9127
  ]);
8941
9128
  var _a2;
8942
- const [selectedItems, setSelectedItems] = (0, import_react99.useState)((_a2 = value != null ? value : defaultValue) != null ? _a2 : []);
9129
+ const [selectedItems, setSelectedItems] = (0, import_react102.useState)((_a2 = value != null ? value : defaultValue) != null ? _a2 : []);
8943
9130
  if (value !== void 0 && value !== selectedItems) {
8944
9131
  setSelectedItems(value);
8945
9132
  }
@@ -8952,11 +9139,11 @@ var SwitchGroup = (_a) => {
8952
9139
  setSelectedItems(updated);
8953
9140
  onChange == null ? void 0 : onChange(updated);
8954
9141
  };
8955
- return /* @__PURE__ */ import_react99.default.createElement(LabelControl, __spreadValues(__spreadValues({
9142
+ return /* @__PURE__ */ import_react102.default.createElement(LabelControl, __spreadValues(__spreadValues({
8956
9143
  fieldset: true
8957
- }, labelControlProps), errorProps), /* @__PURE__ */ import_react99.default.createElement(InputGroup, {
9144
+ }, labelControlProps), errorProps), /* @__PURE__ */ import_react102.default.createElement(InputGroup, {
8958
9145
  cols
8959
- }, import_react99.default.Children.map(children, (c) => {
9146
+ }, import_react102.default.Children.map(children, (c) => {
8960
9147
  var _a3, _b2, _c, _d;
8961
9148
  if (!isComponentType(c, Switch2)) {
8962
9149
  return null;
@@ -8964,7 +9151,7 @@ var SwitchGroup = (_a) => {
8964
9151
  const str = (_a3 = c.props.value) == null ? void 0 : _a3.toString();
8965
9152
  const defaultChecked = defaultValue === void 0 ? void 0 : str !== void 0 && defaultValue.includes(str);
8966
9153
  const checked = value === void 0 ? void 0 : str !== void 0 && value.includes(str);
8967
- return import_react99.default.cloneElement(c, {
9154
+ return import_react102.default.cloneElement(c, {
8968
9155
  defaultChecked: (_b2 = c.props.defaultChecked) != null ? _b2 : defaultChecked,
8969
9156
  checked: (_c = c.props.checked) != null ? _c : checked,
8970
9157
  onChange: (_d = c.props.onChange) != null ? _d : handleChange,
@@ -8974,9 +9161,9 @@ var SwitchGroup = (_a) => {
8974
9161
  })));
8975
9162
  };
8976
9163
  var SwitchGroupSkeleton = ({ options = 2 }) => {
8977
- return /* @__PURE__ */ import_react99.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react99.default.createElement("div", {
9164
+ return /* @__PURE__ */ import_react102.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react102.default.createElement("div", {
8978
9165
  className: tw("flex flex-wrap flex-col gap-2")
8979
- }, Array.from({ length: options }).map((_, key) => /* @__PURE__ */ import_react99.default.createElement(Switch2.Skeleton, {
9166
+ }, Array.from({ length: options }).map((_, key) => /* @__PURE__ */ import_react102.default.createElement(Switch2.Skeleton, {
8980
9167
  key
8981
9168
  }))));
8982
9169
  };
@@ -8984,10 +9171,10 @@ SwitchGroup.Skeleton = SwitchGroupSkeleton;
8984
9171
  SwitchGroup.Skeleton.displayName = "SwitchGroup.Skeleton";
8985
9172
 
8986
9173
  // src/molecules/TagLabel/TagLabel.tsx
8987
- var import_react100 = __toESM(require("react"));
9174
+ var import_react103 = __toESM(require("react"));
8988
9175
  var TagLabel = (_a) => {
8989
9176
  var _b = _a, { title, dense = false } = _b, rest = __objRest(_b, ["title", "dense"]);
8990
- return /* @__PURE__ */ import_react100.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
9177
+ return /* @__PURE__ */ import_react103.default.createElement("span", __spreadProps(__spreadValues({}, rest), {
8991
9178
  className: tw("rounded-full text-white bg-primary-70", {
8992
9179
  "py-2 px-4 typography-caption": !dense,
8993
9180
  "py-2 px-3 typography-caption-small": dense
@@ -8996,14 +9183,14 @@ var TagLabel = (_a) => {
8996
9183
  };
8997
9184
 
8998
9185
  // src/molecules/Textarea/Textarea.tsx
8999
- var import_react101 = __toESM(require("react"));
9186
+ var import_react104 = __toESM(require("react"));
9000
9187
  var import_omit16 = __toESM(require("lodash/omit"));
9001
9188
  var import_toString2 = __toESM(require("lodash/toString"));
9002
9189
  var import_uniqueId10 = __toESM(require("lodash/uniqueId"));
9003
- var TextareaBase = import_react101.default.forwardRef(
9190
+ var TextareaBase = import_react104.default.forwardRef(
9004
9191
  (_a, ref) => {
9005
9192
  var _b = _a, { readOnly = false, valid = true } = _b, props = __objRest(_b, ["readOnly", "valid"]);
9006
- return /* @__PURE__ */ import_react101.default.createElement("textarea", __spreadProps(__spreadValues({
9193
+ return /* @__PURE__ */ import_react104.default.createElement("textarea", __spreadProps(__spreadValues({
9007
9194
  ref
9008
9195
  }, props), {
9009
9196
  readOnly,
@@ -9011,23 +9198,23 @@ var TextareaBase = import_react101.default.forwardRef(
9011
9198
  }));
9012
9199
  }
9013
9200
  );
9014
- TextareaBase.Skeleton = () => /* @__PURE__ */ import_react101.default.createElement(Skeleton, {
9201
+ TextareaBase.Skeleton = () => /* @__PURE__ */ import_react104.default.createElement(Skeleton, {
9015
9202
  height: 58
9016
9203
  });
9017
- var Textarea = import_react101.default.forwardRef((props, ref) => {
9204
+ var Textarea = import_react104.default.forwardRef((props, ref) => {
9018
9205
  var _a, _b, _c;
9019
- const [value, setValue] = (0, import_react101.useState)((_b = (_a = props.value) != null ? _a : props.defaultValue) != null ? _b : "");
9020
- const id = (0, import_react101.useRef)((_c = props.id) != null ? _c : `textarea-${(0, import_uniqueId10.default)()}`);
9206
+ const [value, setValue] = (0, import_react104.useState)((_b = (_a = props.value) != null ? _a : props.defaultValue) != null ? _b : "");
9207
+ const id = (0, import_react104.useRef)((_c = props.id) != null ? _c : `textarea-${(0, import_uniqueId10.default)()}`);
9021
9208
  const errorMessageId = (0, import_uniqueId10.default)();
9022
9209
  const errorProps = props.valid === false ? { "aria-invalid": true, "aria-describedby": errorMessageId } : {};
9023
9210
  const _d = getLabelControlProps(props), { "data-testid": dataTestId } = _d, labelControlProps = __objRest(_d, ["data-testid"]);
9024
9211
  const baseProps = (0, import_omit16.default)(props, Object.keys(labelControlProps));
9025
- return /* @__PURE__ */ import_react101.default.createElement(LabelControl, __spreadValues({
9212
+ return /* @__PURE__ */ import_react104.default.createElement(LabelControl, __spreadValues({
9026
9213
  id: `${id.current}-label`,
9027
9214
  htmlFor: id.current,
9028
9215
  messageId: errorMessageId,
9029
9216
  length: value !== void 0 ? (0, import_toString2.default)(value).length : void 0
9030
- }, labelControlProps), /* @__PURE__ */ import_react101.default.createElement(TextareaBase, __spreadProps(__spreadValues(__spreadValues({
9217
+ }, labelControlProps), /* @__PURE__ */ import_react104.default.createElement(TextareaBase, __spreadProps(__spreadValues(__spreadValues({
9031
9218
  ref
9032
9219
  }, baseProps), errorProps), {
9033
9220
  id: id.current,
@@ -9044,48 +9231,48 @@ var Textarea = import_react101.default.forwardRef((props, ref) => {
9044
9231
  })));
9045
9232
  });
9046
9233
  Textarea.displayName = "Textarea";
9047
- var TextAreaSkeleton = () => /* @__PURE__ */ import_react101.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react101.default.createElement(TextareaBase.Skeleton, null));
9234
+ var TextAreaSkeleton = () => /* @__PURE__ */ import_react104.default.createElement(LabelControl.Skeleton, null, /* @__PURE__ */ import_react104.default.createElement(TextareaBase.Skeleton, null));
9048
9235
  Textarea.Skeleton = TextAreaSkeleton;
9049
9236
  Textarea.Skeleton.displayName = "Textarea.Skeleton";
9050
9237
 
9051
9238
  // src/molecules/Timeline/Timeline.tsx
9052
- var import_react103 = __toESM(require("react"));
9239
+ var import_react106 = __toESM(require("react"));
9053
9240
 
9054
9241
  // src/atoms/Timeline/Timeline.tsx
9055
- var import_react102 = __toESM(require("react"));
9242
+ var import_react105 = __toESM(require("react"));
9056
9243
  var Timeline = (_a) => {
9057
9244
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9058
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9245
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9059
9246
  className: classNames(tw("grid grid-cols-[16px_1fr] gap-x-4"), className)
9060
9247
  }));
9061
9248
  };
9062
9249
  var Content2 = (_a) => {
9063
9250
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9064
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9251
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9065
9252
  className: classNames(tw("pb-6"), className)
9066
9253
  }));
9067
9254
  };
9068
9255
  var Separator2 = (_a) => {
9069
9256
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9070
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9257
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9071
9258
  className: classNames(tw("flex items-center justify-center h-5 w-5"), className)
9072
9259
  }));
9073
9260
  };
9074
9261
  var LineContainer = (_a) => {
9075
9262
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9076
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9263
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9077
9264
  className: classNames(tw("flex justify-center py-1"), className)
9078
9265
  }));
9079
9266
  };
9080
9267
  var Line = (_a) => {
9081
9268
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9082
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9269
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9083
9270
  className: classNames(tw("w-1 bg-grey-5 h-full justify-self-center"), className)
9084
9271
  }));
9085
9272
  };
9086
9273
  var Dot = (_a) => {
9087
9274
  var _b = _a, { className } = _b, rest = __objRest(_b, ["className"]);
9088
- return /* @__PURE__ */ import_react102.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9275
+ return /* @__PURE__ */ import_react105.default.createElement("div", __spreadProps(__spreadValues({}, rest), {
9089
9276
  className: classNames(tw("bg-grey-30 h-[6px] w-[6px] rounded"), className)
9090
9277
  }));
9091
9278
  };
@@ -9100,52 +9287,52 @@ var import_error4 = __toESM(require_error());
9100
9287
  var import_time = __toESM(require_time());
9101
9288
  var import_warningSign4 = __toESM(require_warningSign());
9102
9289
  var TimelineItem = () => null;
9103
- var Timeline2 = ({ children }) => /* @__PURE__ */ import_react103.default.createElement("div", null, import_react103.default.Children.map(children, (item) => {
9290
+ var Timeline2 = ({ children }) => /* @__PURE__ */ import_react106.default.createElement("div", null, import_react106.default.Children.map(children, (item) => {
9104
9291
  if (!isComponentType(item, TimelineItem)) {
9105
9292
  throw new Error("<Timeline> can only have <Timeline.Item> components as children");
9106
9293
  } else {
9107
9294
  const { props, key } = item;
9108
- return /* @__PURE__ */ import_react103.default.createElement(Timeline, {
9295
+ return /* @__PURE__ */ import_react106.default.createElement(Timeline, {
9109
9296
  key: key != null ? key : props.title
9110
- }, /* @__PURE__ */ import_react103.default.createElement(Timeline.Separator, null, props.variant === "error" ? /* @__PURE__ */ import_react103.default.createElement(Icon, {
9297
+ }, /* @__PURE__ */ import_react106.default.createElement(Timeline.Separator, null, props.variant === "error" ? /* @__PURE__ */ import_react106.default.createElement(Icon, {
9111
9298
  icon: import_error4.default,
9112
9299
  color: "error-30"
9113
- }) : props.variant === "warning" ? /* @__PURE__ */ import_react103.default.createElement(Icon, {
9300
+ }) : props.variant === "warning" ? /* @__PURE__ */ import_react106.default.createElement(Icon, {
9114
9301
  icon: import_warningSign4.default,
9115
9302
  color: "warning-30"
9116
- }) : props.variant === "info" ? /* @__PURE__ */ import_react103.default.createElement(Icon, {
9303
+ }) : props.variant === "info" ? /* @__PURE__ */ import_react106.default.createElement(Icon, {
9117
9304
  icon: import_time.default,
9118
9305
  color: "info-30"
9119
- }) : /* @__PURE__ */ import_react103.default.createElement(Timeline.Separator.Dot, null)), /* @__PURE__ */ import_react103.default.createElement(Typography2.Caption, {
9306
+ }) : /* @__PURE__ */ import_react106.default.createElement(Timeline.Separator.Dot, null)), /* @__PURE__ */ import_react106.default.createElement(Typography2.Caption, {
9120
9307
  color: "grey-50"
9121
- }, props.title), /* @__PURE__ */ import_react103.default.createElement(Timeline.LineContainer, null, /* @__PURE__ */ import_react103.default.createElement(Timeline.LineContainer.Line, null)), /* @__PURE__ */ import_react103.default.createElement(Timeline.Content, null, /* @__PURE__ */ import_react103.default.createElement(Typography2.Small, null, props.children)));
9308
+ }, props.title), /* @__PURE__ */ import_react106.default.createElement(Timeline.LineContainer, null, /* @__PURE__ */ import_react106.default.createElement(Timeline.LineContainer.Line, null)), /* @__PURE__ */ import_react106.default.createElement(Timeline.Content, null, /* @__PURE__ */ import_react106.default.createElement(Typography2.Small, null, props.children)));
9122
9309
  }
9123
9310
  }));
9124
- var TimelineItemSkeleton = () => /* @__PURE__ */ import_react103.default.createElement(Timeline, null, /* @__PURE__ */ import_react103.default.createElement(Timeline.Separator, null, /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9311
+ var TimelineItemSkeleton = () => /* @__PURE__ */ import_react106.default.createElement(Timeline, null, /* @__PURE__ */ import_react106.default.createElement(Timeline.Separator, null, /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9125
9312
  width: 6,
9126
9313
  height: 6,
9127
9314
  rounded: true
9128
- })), /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9315
+ })), /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9129
9316
  height: 12,
9130
9317
  width: 120
9131
- }), /* @__PURE__ */ import_react103.default.createElement(Timeline.LineContainer, null, /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9318
+ }), /* @__PURE__ */ import_react106.default.createElement(Timeline.LineContainer, null, /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9132
9319
  width: 2,
9133
9320
  height: "100%"
9134
- })), /* @__PURE__ */ import_react103.default.createElement(Timeline.Content, null, /* @__PURE__ */ import_react103.default.createElement(Box, {
9321
+ })), /* @__PURE__ */ import_react106.default.createElement(Timeline.Content, null, /* @__PURE__ */ import_react106.default.createElement(Box, {
9135
9322
  display: "flex",
9136
9323
  flexDirection: "column",
9137
9324
  gap: "3"
9138
- }, /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9325
+ }, /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9139
9326
  height: 32,
9140
9327
  width: "100%"
9141
- }), /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9328
+ }), /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9142
9329
  height: 32,
9143
9330
  width: "73%"
9144
- }), /* @__PURE__ */ import_react103.default.createElement(Skeleton, {
9331
+ }), /* @__PURE__ */ import_react106.default.createElement(Skeleton, {
9145
9332
  height: 32,
9146
9333
  width: "80%"
9147
9334
  }))));
9148
- var TimelineSkeleton = ({ items = 3 }) => /* @__PURE__ */ import_react103.default.createElement("div", null, Array.from({ length: items }).map((_, key) => /* @__PURE__ */ import_react103.default.createElement(TimelineItemSkeleton, {
9335
+ var TimelineSkeleton = ({ items = 3 }) => /* @__PURE__ */ import_react106.default.createElement("div", null, Array.from({ length: items }).map((_, key) => /* @__PURE__ */ import_react106.default.createElement(TimelineItemSkeleton, {
9149
9336
  key
9150
9337
  })));
9151
9338
  Timeline2.Item = TimelineItem;
@@ -9153,9 +9340,9 @@ Timeline2.Skeleton = TimelineSkeleton;
9153
9340
  Timeline2.Skeleton.displayName = "Timeline.Skeleton";
9154
9341
 
9155
9342
  // src/utils/table/useTableSelect.ts
9156
- var import_react104 = __toESM(require("react"));
9343
+ var import_react107 = __toESM(require("react"));
9157
9344
  var useTableSelect = (data, { key }) => {
9158
- const [selected, setSelected] = import_react104.default.useState([]);
9345
+ const [selected, setSelected] = import_react107.default.useState([]);
9159
9346
  const allSelected = selected.length === data.length;
9160
9347
  const isSelected = (dot) => selected.includes(dot[key]);
9161
9348
  const selectAll = () => setSelected(data.map((dot) => dot[key]));
@@ -9180,7 +9367,7 @@ var useTableSelect = (data, { key }) => {
9180
9367
  };
9181
9368
 
9182
9369
  // src/molecules/Pagination/usePagination.tsx
9183
- var import_react105 = require("react");
9370
+ var import_react108 = require("react");
9184
9371
  var import_clamp3 = __toESM(require("lodash/clamp"));
9185
9372
  var initialState = {
9186
9373
  currentPage: 1,
@@ -9188,8 +9375,8 @@ var initialState = {
9188
9375
  };
9189
9376
  var getPageIndex = (currentPage, pageSize) => currentPage === 0 ? 0 : (currentPage - 1) * pageSize;
9190
9377
  var usePagination = (items, options) => {
9191
- const [currentPage, setCurrentPage] = (0, import_react105.useState)((options == null ? void 0 : options.initialPage) || initialState.currentPage);
9192
- const [pageSize, setPageSize] = (0, import_react105.useState)((options == null ? void 0 : options.initialPageSize) || initialState.pageSize);
9378
+ const [currentPage, setCurrentPage] = (0, import_react108.useState)((options == null ? void 0 : options.initialPage) || initialState.currentPage);
9379
+ const [pageSize, setPageSize] = (0, import_react108.useState)((options == null ? void 0 : options.initialPageSize) || initialState.pageSize);
9193
9380
  const totalPages = items.length > 0 ? Math.ceil(items.length / pageSize) : 1;
9194
9381
  const hasPreviousPage = currentPage > 1;
9195
9382
  const hasNextPage = currentPage < totalPages;
@@ -9199,7 +9386,7 @@ var usePagination = (items, options) => {
9199
9386
  setPageSize(pageSize2);
9200
9387
  setCurrentPage((0, import_clamp3.default)((options == null ? void 0 : options.initialPage) || initialState.currentPage, 1, newTotalPages));
9201
9388
  };
9202
- (0, import_react105.useEffect)(() => {
9389
+ (0, import_react108.useEffect)(() => {
9203
9390
  setCurrentPage((0, import_clamp3.default)((options == null ? void 0 : options.initialPage) || initialState.currentPage, 1, totalPages));
9204
9391
  }, [items.length]);
9205
9392
  return [
@@ -9399,6 +9586,7 @@ var system_default = __spreadProps(__spreadValues({}, molecules_exports), {
9399
9586
  MultiSelectBase,
9400
9587
  NativeSelect,
9401
9588
  NativeSelectBase,
9589
+ Navigation,
9402
9590
  OneLineBanner,
9403
9591
  Option,
9404
9592
  PageHeader,