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