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