@drivenets/design-system 0.17.0 → 0.18.1
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/CHANGELOG.md +24 -0
- package/dist/index.cjs +1797 -805
- package/dist/index.d.cts +117 -53
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +117 -53
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1799 -809
- package/dist/index.js.map +1 -1
- package/dist/index.min.css +1 -1
- package/package.json +3 -3
- package/src/components/ds-alert-banner/ds-alert-banner-global.figma.ts +49 -0
- package/src/components/ds-alert-banner/ds-alert-banner.figma.ts +51 -0
- package/src/components/ds-autocomplete/ds-autocomplete.module.scss +15 -4
- package/src/components/ds-autocomplete/ds-autocomplete.tsx +10 -3
- package/src/components/ds-autocomplete/ds-autocomplete.types.ts +8 -0
- package/src/components/ds-button-v3/ds-button-v3.figma.ts +5 -3
- package/src/components/ds-button-v3/ds-button-v3.module.scss +84 -17
- package/src/components/ds-button-v3/ds-button-v3.tsx +2 -0
- package/src/components/ds-button-v3/ds-button-v3.types.ts +11 -2
- package/src/components/ds-button-v3/ds-button-v4.figma.ts +121 -0
- package/src/components/ds-comment-bubble/ds-comment-bubble.figma.ts +52 -0
- package/src/components/ds-comment-card/ds-comment-card.figma.ts +36 -0
- package/src/components/ds-comment-indicator/ds-comment-indicator.figma.ts +32 -0
- package/src/components/ds-comments-drawer/ds-comments-drawer.figma.ts +19 -0
- package/src/components/ds-select/ds-select.figma.ts +2 -1
- package/src/components/ds-select/ds-select.tsx +6 -1
- package/src/components/ds-select/ds-select.types.ts +2 -1
- package/src/components/ds-slider/ds-slider.figma.ts +29 -0
- package/src/components/ds-slider/ds-slider.module.scss +104 -0
- package/src/components/ds-slider/ds-slider.tsx +118 -0
- package/src/components/ds-slider/ds-slider.types.ts +102 -0
- package/src/components/ds-slider/ds-slider.utils.ts +14 -0
- package/src/components/ds-slider/index.ts +11 -0
- package/src/components/ds-smart-tabs/figma/ds-smart-tabs-tab.figma.ts +83 -0
- package/src/components/ds-smart-tabs/figma/ds-smart-tabs.figma.ts +23 -0
- package/src/components/ds-table/components/ds-table-group-header-cell/ds-table-group-header-cell.module.scss +5 -1
- package/src/components/ds-table/components/ds-table-group-header-cell/ds-table-group-header-cell.tsx +15 -3
- package/src/components/ds-table/components/ds-table-header/ds-table-header.module.scss +15 -1
- package/src/components/ds-table/components/ds-table-header/ds-table-header.tsx +29 -6
- package/src/components/ds-table/components/ds-table-resize-handle/ds-table-resize-handle.module.scss +23 -0
- package/src/components/ds-table/components/ds-table-resize-handle/ds-table-resize-handle.tsx +218 -0
- package/src/components/ds-table/components/ds-table-resize-handle/ds-table-resize-handle.types.ts +14 -0
- package/src/components/ds-table/components/ds-table-resize-handle/index.ts +1 -0
- package/src/components/ds-table/components/ds-table-resize-overlay/ds-table-resize-overlay.module.scss +18 -0
- package/src/components/ds-table/components/ds-table-resize-overlay/ds-table-resize-overlay.tsx +16 -0
- package/src/components/ds-table/components/ds-table-resize-overlay/ds-table-resize-overlay.types.ts +13 -0
- package/src/components/ds-table/components/ds-table-resize-overlay/index.ts +1 -0
- package/src/components/ds-table/components/ds-table-row/ds-table-row.module.scss +1 -1
- package/src/components/ds-table/components/ds-table-row/ds-table-row.tsx +9 -2
- package/src/components/ds-table/components/ds-table-row-virtualized/ds-table-row-virtualized.module.scss +2 -1
- package/src/components/ds-table/components/ds-table-row-virtualized/ds-table-row-virtualized.tsx +9 -2
- package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-checkbox.tsx +2 -2
- package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-date.tsx +2 -1
- package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-number.tsx +2 -1
- package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-select.tsx +2 -1
- package/src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-text.tsx +2 -1
- package/src/components/ds-table/components/edit/ds-table-editing-cell/ds-table-editing-cell.tsx +12 -3
- package/src/components/ds-table/context/ds-table-context.tsx +208 -0
- package/src/components/ds-table/ds-table-defaults.ts +42 -0
- package/src/components/ds-table/ds-table.module.scss +4 -1
- package/src/components/ds-table/ds-table.tsx +139 -214
- package/src/components/ds-table/ds-table.types.ts +53 -47
- package/src/components/ds-table/grouping/utils/column-group.ts +7 -5
- package/src/components/ds-table/hooks/use-cell-editor.ts +5 -1
- package/src/components/ds-table/hooks/use-column-resize.ts +385 -0
- package/src/components/ds-table/hooks/use-editing-state.ts +190 -0
- package/src/components/ds-table/index.ts +1 -0
- package/src/components/ds-table/styles/_variables.scss +2 -1
- package/src/components/ds-table/utils/column-size-meta.augmentation.ts +16 -0
- package/src/components/ds-table/utils/column-size.ts +213 -10
- package/src/components/ds-table/utils/column-size.unit.test.ts +213 -0
- package/src/components/ds-table/utils/constants.ts +28 -0
- package/src/components/ds-table/utils/frozen-body.ts +33 -0
- package/src/components/ds-table/utils/frozen-body.unit.test.ts +44 -0
- package/src/components/ds-table/utils/table-api.ts +42 -0
- package/src/components/ds-table/utils/table-api.unit.test.ts +82 -0
- package/src/components/ds-table/utils/table-columns.tsx +119 -0
- package/src/components/ds-table/utils/table-columns.unit.test.ts +199 -0
- package/src/components/ds-tag/ds-tag.figma.ts +51 -0
- package/src/components/ds-tag-filter/ds-tag-filter.figma.ts +16 -0
- package/src/components/ds-tag-filter/ds-tag-filter.module.scss +7 -35
- package/src/components/ds-tag-filter/ds-tag-filter.tsx +34 -57
- package/src/components/ds-tag-filter/ds-tag-filter.types.ts +2 -1
- package/src/components/ds-tag-filter/hooks/use-tag-overflow-calculation.ts +13 -18
- package/src/components/ds-text-input/ds-input-field-v02.figma.ts +29 -4
- package/src/components/ds-text-input/ds-text-input.figma.ts +3 -2
- package/src/components/ds-text-input/ds-text-input.tsx +1 -0
- package/src/components/ds-text-input/ds-text-input.types.ts +1 -1
- package/src/components/ds-tree/ds-tree.figma.ts +54 -0
- package/src/components/ds-workspace-layout/ds-workspace-layout.figma.ts +99 -0
- package/src/components/ds-workspace-layout/ds-workspace-layout.module.scss +1 -8
- package/src/index.ts +1 -0
- package/src/styles/_gradients.scss +19 -0
- package/src/styles/_root.scss +39 -15
- package/src/styles/_typography.scss +1 -0
- package/src/styles/shared/_input.scss +10 -0
- package/src/styles/styles.scss +1 -0
- package/src/components/ds-table/context/ds-table-context.ts +0 -112
package/dist/index.cjs
CHANGED
|
@@ -53,6 +53,7 @@ let _radix_ui_react_collapsible = require("@radix-ui/react-collapsible");
|
|
|
53
53
|
_radix_ui_react_collapsible = __toESM(_radix_ui_react_collapsible, 1);
|
|
54
54
|
let _ark_ui_react_radio_group = require("@ark-ui/react/radio-group");
|
|
55
55
|
let _ark_ui_react_segment_group = require("@ark-ui/react/segment-group");
|
|
56
|
+
let _ark_ui_react_slider = require("@ark-ui/react/slider");
|
|
56
57
|
let _zag_js_steps = require("@zag-js/steps");
|
|
57
58
|
_zag_js_steps = __toESM(_zag_js_steps, 1);
|
|
58
59
|
let _zag_js_react = require("@zag-js/react");
|
|
@@ -3583,110 +3584,122 @@ var ds_autocomplete_module_default = {
|
|
|
3583
3584
|
"itemGroup": "pgg73q_itemGroup",
|
|
3584
3585
|
"itemIcon": "pgg73q_itemIcon",
|
|
3585
3586
|
"itemText": "pgg73q_itemText",
|
|
3587
|
+
"large": "pgg73q_large",
|
|
3586
3588
|
"loading": "pgg73q_loading",
|
|
3587
3589
|
"noMatches": "pgg73q_noMatches",
|
|
3588
3590
|
"positioner": "pgg73q_positioner",
|
|
3589
3591
|
"root": "pgg73q_root",
|
|
3592
|
+
"small": "pgg73q_small",
|
|
3590
3593
|
"startAdornment": "pgg73q_startAdornment",
|
|
3591
3594
|
"trigger": "pgg73q_trigger"
|
|
3592
3595
|
};
|
|
3593
3596
|
//#endregion
|
|
3594
3597
|
//#region src/components/ds-autocomplete/ds-autocomplete.tsx
|
|
3595
3598
|
const DsAutocomplete = (t0) => {
|
|
3596
|
-
const $ = (0, react_compiler_runtime.c)(
|
|
3597
|
-
const { id, options: t1, loading: t2, style, className, placeholder:
|
|
3599
|
+
const $ = (0, react_compiler_runtime.c)(58);
|
|
3600
|
+
const { id, options: t1, loading: t2, size: t3, style, className, placeholder: t4, disabled: t5, invalid: t6, onValueChange, onInputValueChange, onOpenChange, locale: t7, highlightMatch: t8, showTrigger: t9, startAdornment } = t0;
|
|
3598
3601
|
const options = t1 === void 0 ? [] : t1;
|
|
3599
3602
|
const loading = t2 === void 0 ? false : t2;
|
|
3600
|
-
const
|
|
3601
|
-
const
|
|
3602
|
-
const
|
|
3603
|
-
|
|
3604
|
-
|
|
3605
|
-
|
|
3606
|
-
|
|
3607
|
-
$[
|
|
3608
|
-
|
|
3609
|
-
|
|
3610
|
-
const
|
|
3611
|
-
const
|
|
3612
|
-
const
|
|
3613
|
-
const
|
|
3603
|
+
const size = t3 === void 0 ? "default" : t3;
|
|
3604
|
+
const placeholder = t4 === void 0 ? "Start typing to search..." : t4;
|
|
3605
|
+
const disabled = t5 === void 0 ? false : t5;
|
|
3606
|
+
const invalid = t6 === void 0 ? false : t6;
|
|
3607
|
+
let t10;
|
|
3608
|
+
if ($[0] !== t7) {
|
|
3609
|
+
t10 = t7 === void 0 ? {} : t7;
|
|
3610
|
+
$[0] = t7;
|
|
3611
|
+
$[1] = t10;
|
|
3612
|
+
} else t10 = $[1];
|
|
3613
|
+
const { loading: t11, noMatches: t12 } = t10;
|
|
3614
|
+
const loadingMessage = t11 === void 0 ? "Loading..." : t11;
|
|
3615
|
+
const noMatchesMessage = t12 === void 0 ? "No matches found" : t12;
|
|
3616
|
+
const highlightMatch = t8 === void 0 ? true : t8;
|
|
3617
|
+
const showTrigger = t9 === void 0 ? true : t9;
|
|
3614
3618
|
const [filterText, setFilterText] = (0, react.useState)("");
|
|
3615
|
-
let
|
|
3619
|
+
let t13;
|
|
3616
3620
|
if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
|
|
3617
|
-
|
|
3618
|
-
$[2] =
|
|
3619
|
-
} else
|
|
3620
|
-
const filterUtils = (0, _ark_ui_react_locale.useFilter)(
|
|
3621
|
+
t13 = { sensitivity: "base" };
|
|
3622
|
+
$[2] = t13;
|
|
3623
|
+
} else t13 = $[2];
|
|
3624
|
+
const filterUtils = (0, _ark_ui_react_locale.useFilter)(t13);
|
|
3621
3625
|
const collection = (0, _ark_ui_react_combobox.createListCollection)({
|
|
3622
3626
|
items: filterText ? options.filter((opt) => filterUtils.contains(opt.label, filterText)) : options,
|
|
3623
|
-
itemToString: _temp$
|
|
3627
|
+
itemToString: _temp$18,
|
|
3624
3628
|
itemToValue: _temp2$9
|
|
3625
3629
|
});
|
|
3626
|
-
let
|
|
3630
|
+
let t14;
|
|
3627
3631
|
if ($[3] !== onInputValueChange) {
|
|
3628
|
-
|
|
3632
|
+
t14 = (details) => {
|
|
3629
3633
|
setFilterText(details.inputValue);
|
|
3630
3634
|
onInputValueChange?.(details.inputValue);
|
|
3631
3635
|
};
|
|
3632
3636
|
$[3] = onInputValueChange;
|
|
3633
|
-
$[4] =
|
|
3634
|
-
} else
|
|
3635
|
-
const handleInputValueChange =
|
|
3636
|
-
let
|
|
3637
|
+
$[4] = t14;
|
|
3638
|
+
} else t14 = $[4];
|
|
3639
|
+
const handleInputValueChange = t14;
|
|
3640
|
+
let t15;
|
|
3637
3641
|
if ($[5] !== onValueChange) {
|
|
3638
|
-
|
|
3642
|
+
t15 = (details_0) => {
|
|
3639
3643
|
const selectedItem = details_0.items[0];
|
|
3640
3644
|
onValueChange?.(selectedItem?.value ?? "");
|
|
3641
3645
|
};
|
|
3642
3646
|
$[5] = onValueChange;
|
|
3643
|
-
$[6] =
|
|
3644
|
-
} else
|
|
3645
|
-
const handleValueChange =
|
|
3646
|
-
let
|
|
3647
|
+
$[6] = t15;
|
|
3648
|
+
} else t15 = $[6];
|
|
3649
|
+
const handleValueChange = t15;
|
|
3650
|
+
let t16;
|
|
3647
3651
|
if ($[7] !== onOpenChange) {
|
|
3648
|
-
|
|
3652
|
+
t16 = (details_1) => {
|
|
3649
3653
|
onOpenChange?.(details_1.open);
|
|
3650
3654
|
};
|
|
3651
3655
|
$[7] = onOpenChange;
|
|
3652
|
-
$[8] =
|
|
3653
|
-
} else
|
|
3654
|
-
const handleOpenChange =
|
|
3655
|
-
let
|
|
3656
|
+
$[8] = t16;
|
|
3657
|
+
} else t16 = $[8];
|
|
3658
|
+
const handleOpenChange = t16;
|
|
3659
|
+
let t17;
|
|
3656
3660
|
if ($[9] !== className || $[10] !== disabled || $[11] !== invalid) {
|
|
3657
|
-
|
|
3661
|
+
t17 = (0, classnames.default)(ds_autocomplete_module_default.root, {
|
|
3658
3662
|
[ds_autocomplete_module_default.disabled]: disabled,
|
|
3659
3663
|
[ds_autocomplete_module_default.invalid]: invalid
|
|
3660
3664
|
}, className);
|
|
3661
3665
|
$[9] = className;
|
|
3662
3666
|
$[10] = disabled;
|
|
3663
3667
|
$[11] = invalid;
|
|
3664
|
-
$[12] =
|
|
3665
|
-
} else
|
|
3666
|
-
const rootClass =
|
|
3667
|
-
const
|
|
3668
|
-
const
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3668
|
+
$[12] = t17;
|
|
3669
|
+
} else t17 = $[12];
|
|
3670
|
+
const rootClass = t17;
|
|
3671
|
+
const t18 = _ark_ui_react_combobox.Combobox;
|
|
3672
|
+
const t19 = true;
|
|
3673
|
+
const t20 = size === "small" && ds_autocomplete_module_default.small;
|
|
3674
|
+
const t21 = size === "large" && ds_autocomplete_module_default.large;
|
|
3675
|
+
let t22;
|
|
3676
|
+
if ($[13] !== t20 || $[14] !== t21) {
|
|
3677
|
+
t22 = (0, classnames.default)(ds_autocomplete_module_default.control, t20, t21);
|
|
3678
|
+
$[13] = t20;
|
|
3679
|
+
$[14] = t21;
|
|
3680
|
+
$[15] = t22;
|
|
3681
|
+
} else t22 = $[15];
|
|
3682
|
+
let t23;
|
|
3683
|
+
if ($[16] !== startAdornment) {
|
|
3684
|
+
t23 = startAdornment && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
3672
3685
|
className: ds_autocomplete_module_default.startAdornment,
|
|
3673
3686
|
children: startAdornment
|
|
3674
3687
|
});
|
|
3675
|
-
$[
|
|
3676
|
-
$[
|
|
3677
|
-
} else
|
|
3678
|
-
let
|
|
3679
|
-
if ($[
|
|
3680
|
-
|
|
3688
|
+
$[16] = startAdornment;
|
|
3689
|
+
$[17] = t23;
|
|
3690
|
+
} else t23 = $[17];
|
|
3691
|
+
let t24;
|
|
3692
|
+
if ($[18] !== placeholder) {
|
|
3693
|
+
t24 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_combobox.Combobox.Input, {
|
|
3681
3694
|
className: ds_autocomplete_module_default.input,
|
|
3682
3695
|
placeholder
|
|
3683
3696
|
});
|
|
3684
|
-
$[
|
|
3685
|
-
$[
|
|
3686
|
-
} else
|
|
3687
|
-
let
|
|
3688
|
-
if ($[
|
|
3689
|
-
|
|
3697
|
+
$[18] = placeholder;
|
|
3698
|
+
$[19] = t24;
|
|
3699
|
+
} else t24 = $[19];
|
|
3700
|
+
let t25;
|
|
3701
|
+
if ($[20] !== disabled || $[21] !== showTrigger || $[22] !== size) {
|
|
3702
|
+
t25 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_combobox.Combobox.Context, { children: (combobox) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
3690
3703
|
className: ds_autocomplete_module_default.iconContainer,
|
|
3691
3704
|
children: [combobox.inputValue && !disabled && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
|
|
3692
3705
|
type: "button",
|
|
@@ -3698,56 +3711,58 @@ const DsAutocomplete = (t0) => {
|
|
|
3698
3711
|
},
|
|
3699
3712
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
3700
3713
|
icon: "close",
|
|
3701
|
-
size: "medium"
|
|
3714
|
+
size: size === "small" ? "small" : "medium"
|
|
3702
3715
|
})
|
|
3703
3716
|
}), showTrigger && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_combobox.Combobox.Trigger, {
|
|
3704
3717
|
className: ds_autocomplete_module_default.trigger,
|
|
3705
3718
|
"aria-label": "Toggle dropdown",
|
|
3706
3719
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
3707
3720
|
icon: "keyboard_arrow_down",
|
|
3708
|
-
size: "medium"
|
|
3721
|
+
size: size === "small" ? "small" : "medium"
|
|
3709
3722
|
})
|
|
3710
3723
|
})]
|
|
3711
3724
|
}) });
|
|
3712
|
-
$[
|
|
3713
|
-
$[
|
|
3714
|
-
$[
|
|
3715
|
-
|
|
3716
|
-
|
|
3717
|
-
|
|
3718
|
-
|
|
3719
|
-
|
|
3725
|
+
$[20] = disabled;
|
|
3726
|
+
$[21] = showTrigger;
|
|
3727
|
+
$[22] = size;
|
|
3728
|
+
$[23] = t25;
|
|
3729
|
+
} else t25 = $[23];
|
|
3730
|
+
let t26;
|
|
3731
|
+
if ($[24] !== t22 || $[25] !== t23 || $[26] !== t24 || $[27] !== t25) {
|
|
3732
|
+
t26 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_combobox.Combobox.Control, {
|
|
3733
|
+
className: t22,
|
|
3720
3734
|
children: [
|
|
3721
|
-
|
|
3722
|
-
|
|
3723
|
-
|
|
3735
|
+
t23,
|
|
3736
|
+
t24,
|
|
3737
|
+
t25
|
|
3724
3738
|
]
|
|
3725
3739
|
});
|
|
3726
|
-
$[
|
|
3727
|
-
$[
|
|
3728
|
-
$[
|
|
3729
|
-
$[
|
|
3730
|
-
|
|
3740
|
+
$[24] = t22;
|
|
3741
|
+
$[25] = t23;
|
|
3742
|
+
$[26] = t24;
|
|
3743
|
+
$[27] = t25;
|
|
3744
|
+
$[28] = t26;
|
|
3745
|
+
} else t26 = $[28];
|
|
3731
3746
|
const T0 = _ark_ui_react_portal.Portal;
|
|
3732
|
-
const
|
|
3733
|
-
const
|
|
3734
|
-
const
|
|
3735
|
-
const
|
|
3736
|
-
let
|
|
3737
|
-
if ($[
|
|
3738
|
-
|
|
3747
|
+
const t27 = _ark_ui_react_combobox.Combobox;
|
|
3748
|
+
const t28 = ds_autocomplete_module_default;
|
|
3749
|
+
const t29 = _ark_ui_react_combobox.Combobox;
|
|
3750
|
+
const t30 = ds_autocomplete_module_default;
|
|
3751
|
+
let t31;
|
|
3752
|
+
if ($[29] !== loading || $[30] !== loadingMessage) {
|
|
3753
|
+
t31 = loading && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
3739
3754
|
className: ds_autocomplete_module_default.loading,
|
|
3740
3755
|
children: loadingMessage
|
|
3741
3756
|
});
|
|
3742
|
-
$[
|
|
3743
|
-
$[
|
|
3744
|
-
$[
|
|
3745
|
-
} else
|
|
3746
|
-
const
|
|
3757
|
+
$[29] = loading;
|
|
3758
|
+
$[30] = loadingMessage;
|
|
3759
|
+
$[31] = t31;
|
|
3760
|
+
} else t31 = $[31];
|
|
3761
|
+
const t32 = !loading && collection.items.length === 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
3747
3762
|
className: ds_autocomplete_module_default.noMatches,
|
|
3748
3763
|
children: noMatchesMessage
|
|
3749
3764
|
});
|
|
3750
|
-
const
|
|
3765
|
+
const t33 = !loading && collection.items.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_combobox.Combobox.ItemGroup, {
|
|
3751
3766
|
className: ds_autocomplete_module_default.itemGroup,
|
|
3752
3767
|
children: collection.items.map((option) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_combobox.Combobox.Item, {
|
|
3753
3768
|
item: option,
|
|
@@ -3766,44 +3781,44 @@ const DsAutocomplete = (t0) => {
|
|
|
3766
3781
|
})]
|
|
3767
3782
|
}, option.value))
|
|
3768
3783
|
});
|
|
3769
|
-
let
|
|
3770
|
-
if ($[
|
|
3771
|
-
|
|
3772
|
-
className:
|
|
3784
|
+
let t34;
|
|
3785
|
+
if ($[32] !== t29.Content || $[33] !== t30.content || $[34] !== t31 || $[35] !== t32 || $[36] !== t33) {
|
|
3786
|
+
t34 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(t29.Content, {
|
|
3787
|
+
className: t30.content,
|
|
3773
3788
|
children: [
|
|
3774
|
-
|
|
3775
|
-
|
|
3776
|
-
|
|
3789
|
+
t31,
|
|
3790
|
+
t32,
|
|
3791
|
+
t33
|
|
3777
3792
|
]
|
|
3778
3793
|
});
|
|
3779
|
-
$[
|
|
3780
|
-
$[
|
|
3781
|
-
$[
|
|
3782
|
-
$[
|
|
3783
|
-
$[
|
|
3784
|
-
$[
|
|
3785
|
-
} else
|
|
3786
|
-
let
|
|
3787
|
-
if ($[
|
|
3788
|
-
|
|
3789
|
-
className:
|
|
3790
|
-
children:
|
|
3791
|
-
});
|
|
3792
|
-
$[
|
|
3793
|
-
$[
|
|
3794
|
-
$[
|
|
3795
|
-
$[
|
|
3796
|
-
} else
|
|
3797
|
-
let
|
|
3798
|
-
if ($[
|
|
3799
|
-
|
|
3800
|
-
$[
|
|
3801
|
-
$[
|
|
3802
|
-
$[
|
|
3803
|
-
} else
|
|
3804
|
-
let
|
|
3805
|
-
if ($[
|
|
3806
|
-
|
|
3794
|
+
$[32] = t29.Content;
|
|
3795
|
+
$[33] = t30.content;
|
|
3796
|
+
$[34] = t31;
|
|
3797
|
+
$[35] = t32;
|
|
3798
|
+
$[36] = t33;
|
|
3799
|
+
$[37] = t34;
|
|
3800
|
+
} else t34 = $[37];
|
|
3801
|
+
let t35;
|
|
3802
|
+
if ($[38] !== t27.Positioner || $[39] !== t28.positioner || $[40] !== t34) {
|
|
3803
|
+
t35 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(t27.Positioner, {
|
|
3804
|
+
className: t28.positioner,
|
|
3805
|
+
children: t34
|
|
3806
|
+
});
|
|
3807
|
+
$[38] = t27.Positioner;
|
|
3808
|
+
$[39] = t28.positioner;
|
|
3809
|
+
$[40] = t34;
|
|
3810
|
+
$[41] = t35;
|
|
3811
|
+
} else t35 = $[41];
|
|
3812
|
+
let t36;
|
|
3813
|
+
if ($[42] !== T0 || $[43] !== t35) {
|
|
3814
|
+
t36 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(T0, { children: t35 });
|
|
3815
|
+
$[42] = T0;
|
|
3816
|
+
$[43] = t35;
|
|
3817
|
+
$[44] = t36;
|
|
3818
|
+
} else t36 = $[44];
|
|
3819
|
+
let t37;
|
|
3820
|
+
if ($[45] !== collection || $[46] !== disabled || $[47] !== handleInputValueChange || $[48] !== handleOpenChange || $[49] !== handleValueChange || $[50] !== id || $[51] !== invalid || $[52] !== rootClass || $[53] !== style || $[54] !== t18.Root || $[55] !== t26 || $[56] !== t36) {
|
|
3821
|
+
t37 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(t18.Root, {
|
|
3807
3822
|
id,
|
|
3808
3823
|
collection,
|
|
3809
3824
|
className: rootClass,
|
|
@@ -3813,33 +3828,40 @@ const DsAutocomplete = (t0) => {
|
|
|
3813
3828
|
onInputValueChange: handleInputValueChange,
|
|
3814
3829
|
onValueChange: handleValueChange,
|
|
3815
3830
|
onOpenChange: handleOpenChange,
|
|
3816
|
-
closeOnSelect:
|
|
3817
|
-
children: [
|
|
3818
|
-
});
|
|
3819
|
-
$[
|
|
3820
|
-
$[
|
|
3821
|
-
$[
|
|
3822
|
-
$[
|
|
3823
|
-
$[
|
|
3824
|
-
$[
|
|
3825
|
-
$[
|
|
3826
|
-
$[
|
|
3827
|
-
$[
|
|
3828
|
-
$[
|
|
3829
|
-
$[
|
|
3830
|
-
$[
|
|
3831
|
-
$[
|
|
3832
|
-
} else
|
|
3833
|
-
return
|
|
3831
|
+
closeOnSelect: t19,
|
|
3832
|
+
children: [t26, t36]
|
|
3833
|
+
});
|
|
3834
|
+
$[45] = collection;
|
|
3835
|
+
$[46] = disabled;
|
|
3836
|
+
$[47] = handleInputValueChange;
|
|
3837
|
+
$[48] = handleOpenChange;
|
|
3838
|
+
$[49] = handleValueChange;
|
|
3839
|
+
$[50] = id;
|
|
3840
|
+
$[51] = invalid;
|
|
3841
|
+
$[52] = rootClass;
|
|
3842
|
+
$[53] = style;
|
|
3843
|
+
$[54] = t18.Root;
|
|
3844
|
+
$[55] = t26;
|
|
3845
|
+
$[56] = t36;
|
|
3846
|
+
$[57] = t37;
|
|
3847
|
+
} else t37 = $[57];
|
|
3848
|
+
return t37;
|
|
3834
3849
|
};
|
|
3835
3850
|
DsAutocomplete.displayName = "DsAutocomplete";
|
|
3836
|
-
function _temp$
|
|
3851
|
+
function _temp$18(item) {
|
|
3837
3852
|
return item.label;
|
|
3838
3853
|
}
|
|
3839
3854
|
function _temp2$9(item_0) {
|
|
3840
3855
|
return item_0.value;
|
|
3841
3856
|
}
|
|
3842
3857
|
//#endregion
|
|
3858
|
+
//#region src/components/ds-autocomplete/ds-autocomplete.types.ts
|
|
3859
|
+
const autocompleteSizes = [
|
|
3860
|
+
"small",
|
|
3861
|
+
"default",
|
|
3862
|
+
"large"
|
|
3863
|
+
];
|
|
3864
|
+
//#endregion
|
|
3843
3865
|
//#region src/components/ds-avatar/ds-avatar.module.scss
|
|
3844
3866
|
var ds_avatar_module_default = {
|
|
3845
3867
|
"avatar": "VcKEMW_avatar",
|
|
@@ -3938,11 +3960,11 @@ const DsAvatar = (t0) => {
|
|
|
3938
3960
|
return t11;
|
|
3939
3961
|
};
|
|
3940
3962
|
DsAvatar.displayName = "DsAvatar";
|
|
3941
|
-
function _temp$
|
|
3963
|
+
function _temp$17(w) {
|
|
3942
3964
|
return w[0];
|
|
3943
3965
|
}
|
|
3944
3966
|
function _temp2$8(name_0) {
|
|
3945
|
-
return name_0.trim().split(" ").map(_temp$
|
|
3967
|
+
return name_0.trim().split(" ").map(_temp$17).join("");
|
|
3946
3968
|
}
|
|
3947
3969
|
//#endregion
|
|
3948
3970
|
//#region src/components/ds-avatar/ds-avatar.types.ts
|
|
@@ -4014,7 +4036,7 @@ const DsAvatarGroup = (t0) => {
|
|
|
4014
4036
|
t6 = remainingCount > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTooltip, {
|
|
4015
4037
|
content: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
4016
4038
|
className: ds_avatar_group_module_default.tooltipList,
|
|
4017
|
-
children: hiddenAvatars.map(_temp$
|
|
4039
|
+
children: hiddenAvatars.map(_temp$16)
|
|
4018
4040
|
}),
|
|
4019
4041
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
4020
4042
|
className: (0, classnames.default)(ds_avatar_group_module_default.moreAvatar, ds_avatar_group_module_default[size], ds_avatar_group_module_default[type]),
|
|
@@ -4048,7 +4070,7 @@ const DsAvatarGroup = (t0) => {
|
|
|
4048
4070
|
return t7;
|
|
4049
4071
|
};
|
|
4050
4072
|
DsAvatarGroup.displayName = "DsAvatarGroup";
|
|
4051
|
-
function _temp$
|
|
4073
|
+
function _temp$16(avatar_0, index_0) {
|
|
4052
4074
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTypography, {
|
|
4053
4075
|
variant: "body-xs-reg",
|
|
4054
4076
|
children: avatar_0.name
|
|
@@ -4102,6 +4124,7 @@ var ds_text_input_module_default = {
|
|
|
4102
4124
|
"iconButton": "zbxt3W_iconButton",
|
|
4103
4125
|
"indicator": "zbxt3W_indicator",
|
|
4104
4126
|
"input": "zbxt3W_input",
|
|
4127
|
+
"large": "zbxt3W_large",
|
|
4105
4128
|
"small": "zbxt3W_small",
|
|
4106
4129
|
"textInputContainer": "zbxt3W_textInputContainer",
|
|
4107
4130
|
"trigger": "zbxt3W_trigger"
|
|
@@ -4109,7 +4132,7 @@ var ds_text_input_module_default = {
|
|
|
4109
4132
|
//#endregion
|
|
4110
4133
|
//#region src/components/ds-text-input/ds-text-input.tsx
|
|
4111
4134
|
const DsTextInput = (t0) => {
|
|
4112
|
-
const $ = (0, react_compiler_runtime.c)(
|
|
4135
|
+
const $ = (0, react_compiler_runtime.c)(43);
|
|
4113
4136
|
const { id, ref, name, size: t1, type: t2, onFocus, onBlur, onKeyDown, onChange, onValueChange, className, style: t3, value, defaultValue, min, max, minLength, maxLength, placeholder, disabled: t4, readOnly: t5, tabIndex, slots } = t0;
|
|
4114
4137
|
const size = t1 === void 0 ? "default" : t1;
|
|
4115
4138
|
const type = t2 === void 0 ? "text" : t2;
|
|
@@ -4125,51 +4148,54 @@ const DsTextInput = (t0) => {
|
|
|
4125
4148
|
const InputWrapper = slots?.inputWrapper ?? react.Fragment;
|
|
4126
4149
|
const t7 = size === "small";
|
|
4127
4150
|
const t8 = size === "default";
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
|
|
4151
|
+
const t9 = size === "large";
|
|
4152
|
+
let t10;
|
|
4153
|
+
if ($[2] !== className || $[3] !== t7 || $[4] !== t8 || $[5] !== t9) {
|
|
4154
|
+
t10 = (0, classnames.default)(ds_text_input_module_default.textInputContainer, {
|
|
4131
4155
|
[ds_text_input_module_default.small]: t7,
|
|
4132
|
-
[ds_text_input_module_default.default]: t8
|
|
4156
|
+
[ds_text_input_module_default.default]: t8,
|
|
4157
|
+
[ds_text_input_module_default.large]: t9
|
|
4133
4158
|
}, className);
|
|
4134
4159
|
$[2] = className;
|
|
4135
4160
|
$[3] = t7;
|
|
4136
4161
|
$[4] = t8;
|
|
4137
4162
|
$[5] = t9;
|
|
4138
|
-
|
|
4139
|
-
|
|
4140
|
-
|
|
4141
|
-
|
|
4142
|
-
|
|
4163
|
+
$[6] = t10;
|
|
4164
|
+
} else t10 = $[6];
|
|
4165
|
+
const containerClass = t10;
|
|
4166
|
+
let t11;
|
|
4167
|
+
if ($[7] !== onChange || $[8] !== onValueChange) {
|
|
4168
|
+
t11 = (event) => {
|
|
4143
4169
|
const newValue = event.target.value;
|
|
4144
4170
|
onChange?.(event);
|
|
4145
4171
|
onValueChange?.(newValue);
|
|
4146
4172
|
};
|
|
4147
|
-
$[
|
|
4148
|
-
$[
|
|
4149
|
-
$[
|
|
4150
|
-
} else
|
|
4151
|
-
const handleChange =
|
|
4152
|
-
let
|
|
4153
|
-
if ($[
|
|
4154
|
-
|
|
4173
|
+
$[7] = onChange;
|
|
4174
|
+
$[8] = onValueChange;
|
|
4175
|
+
$[9] = t11;
|
|
4176
|
+
} else t11 = $[9];
|
|
4177
|
+
const handleChange = t11;
|
|
4178
|
+
let t12;
|
|
4179
|
+
if ($[10] !== slots) {
|
|
4180
|
+
t12 = slots?.startAdornment && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
4155
4181
|
className: ds_text_input_module_default.adornment,
|
|
4156
4182
|
children: slots.startAdornment
|
|
4157
4183
|
});
|
|
4158
|
-
$[
|
|
4159
|
-
$[10] = t11;
|
|
4160
|
-
} else t11 = $[10];
|
|
4161
|
-
let t12;
|
|
4162
|
-
if ($[11] === Symbol.for("react.memo_cache_sentinel")) {
|
|
4163
|
-
t12 = (0, classnames.default)(ds_text_input_module_default.input);
|
|
4184
|
+
$[10] = slots;
|
|
4164
4185
|
$[11] = t12;
|
|
4165
4186
|
} else t12 = $[11];
|
|
4166
4187
|
let t13;
|
|
4167
|
-
if ($[12]
|
|
4168
|
-
t13 =
|
|
4188
|
+
if ($[12] === Symbol.for("react.memo_cache_sentinel")) {
|
|
4189
|
+
t13 = (0, classnames.default)(ds_text_input_module_default.input);
|
|
4190
|
+
$[12] = t13;
|
|
4191
|
+
} else t13 = $[12];
|
|
4192
|
+
let t14;
|
|
4193
|
+
if ($[13] !== defaultValue || $[14] !== disabled || $[15] !== handleChange || $[16] !== id || $[17] !== max || $[18] !== maxLength || $[19] !== min || $[20] !== minLength || $[21] !== name || $[22] !== onBlur || $[23] !== onFocus || $[24] !== onKeyDown || $[25] !== placeholder || $[26] !== readOnly || $[27] !== ref || $[28] !== tabIndex || $[29] !== type || $[30] !== value) {
|
|
4194
|
+
t14 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
|
|
4169
4195
|
id,
|
|
4170
4196
|
ref,
|
|
4171
4197
|
name,
|
|
4172
|
-
className:
|
|
4198
|
+
className: t13,
|
|
4173
4199
|
type,
|
|
4174
4200
|
value,
|
|
4175
4201
|
defaultValue,
|
|
@@ -4186,66 +4212,70 @@ const DsTextInput = (t0) => {
|
|
|
4186
4212
|
onChange: handleChange,
|
|
4187
4213
|
tabIndex
|
|
4188
4214
|
});
|
|
4189
|
-
$[
|
|
4190
|
-
$[
|
|
4191
|
-
$[
|
|
4192
|
-
$[
|
|
4193
|
-
$[
|
|
4194
|
-
$[
|
|
4195
|
-
$[
|
|
4196
|
-
$[
|
|
4197
|
-
$[
|
|
4198
|
-
$[
|
|
4199
|
-
$[
|
|
4200
|
-
$[
|
|
4201
|
-
$[
|
|
4202
|
-
$[
|
|
4203
|
-
$[
|
|
4204
|
-
$[
|
|
4205
|
-
$[
|
|
4206
|
-
$[
|
|
4207
|
-
$[
|
|
4208
|
-
} else
|
|
4209
|
-
let t14;
|
|
4210
|
-
if ($[31] !== InputWrapper || $[32] !== t13) {
|
|
4211
|
-
t14 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(InputWrapper, { children: t13 });
|
|
4212
|
-
$[31] = InputWrapper;
|
|
4213
|
-
$[32] = t13;
|
|
4214
|
-
$[33] = t14;
|
|
4215
|
-
} else t14 = $[33];
|
|
4215
|
+
$[13] = defaultValue;
|
|
4216
|
+
$[14] = disabled;
|
|
4217
|
+
$[15] = handleChange;
|
|
4218
|
+
$[16] = id;
|
|
4219
|
+
$[17] = max;
|
|
4220
|
+
$[18] = maxLength;
|
|
4221
|
+
$[19] = min;
|
|
4222
|
+
$[20] = minLength;
|
|
4223
|
+
$[21] = name;
|
|
4224
|
+
$[22] = onBlur;
|
|
4225
|
+
$[23] = onFocus;
|
|
4226
|
+
$[24] = onKeyDown;
|
|
4227
|
+
$[25] = placeholder;
|
|
4228
|
+
$[26] = readOnly;
|
|
4229
|
+
$[27] = ref;
|
|
4230
|
+
$[28] = tabIndex;
|
|
4231
|
+
$[29] = type;
|
|
4232
|
+
$[30] = value;
|
|
4233
|
+
$[31] = t14;
|
|
4234
|
+
} else t14 = $[31];
|
|
4216
4235
|
let t15;
|
|
4217
|
-
if ($[
|
|
4218
|
-
t15 =
|
|
4236
|
+
if ($[32] !== InputWrapper || $[33] !== t14) {
|
|
4237
|
+
t15 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(InputWrapper, { children: t14 });
|
|
4238
|
+
$[32] = InputWrapper;
|
|
4239
|
+
$[33] = t14;
|
|
4240
|
+
$[34] = t15;
|
|
4241
|
+
} else t15 = $[34];
|
|
4242
|
+
let t16;
|
|
4243
|
+
if ($[35] !== slots) {
|
|
4244
|
+
t16 = slots?.endAdornment && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
4219
4245
|
className: ds_text_input_module_default.adornment,
|
|
4220
4246
|
children: slots.endAdornment
|
|
4221
4247
|
});
|
|
4222
|
-
$[
|
|
4223
|
-
$[
|
|
4224
|
-
} else
|
|
4225
|
-
let
|
|
4226
|
-
if ($[
|
|
4227
|
-
|
|
4248
|
+
$[35] = slots;
|
|
4249
|
+
$[36] = t16;
|
|
4250
|
+
} else t16 = $[36];
|
|
4251
|
+
let t17;
|
|
4252
|
+
if ($[37] !== containerClass || $[38] !== style || $[39] !== t12 || $[40] !== t15 || $[41] !== t16) {
|
|
4253
|
+
t17 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
4228
4254
|
className: containerClass,
|
|
4229
4255
|
style,
|
|
4230
4256
|
children: [
|
|
4231
|
-
|
|
4232
|
-
|
|
4233
|
-
|
|
4257
|
+
t12,
|
|
4258
|
+
t15,
|
|
4259
|
+
t16
|
|
4234
4260
|
]
|
|
4235
4261
|
});
|
|
4236
|
-
$[
|
|
4237
|
-
$[
|
|
4238
|
-
$[
|
|
4239
|
-
$[39] = t14;
|
|
4262
|
+
$[37] = containerClass;
|
|
4263
|
+
$[38] = style;
|
|
4264
|
+
$[39] = t12;
|
|
4240
4265
|
$[40] = t15;
|
|
4241
4266
|
$[41] = t16;
|
|
4242
|
-
|
|
4243
|
-
|
|
4267
|
+
$[42] = t17;
|
|
4268
|
+
} else t17 = $[42];
|
|
4269
|
+
return t17;
|
|
4244
4270
|
};
|
|
4245
4271
|
DsTextInput.displayName = "DsTextInput";
|
|
4246
4272
|
//#endregion
|
|
4247
4273
|
//#region src/components/ds-text-input/ds-text-input.types.ts
|
|
4248
|
-
const textInputSizes = [
|
|
4274
|
+
const textInputSizes = [
|
|
4275
|
+
"small",
|
|
4276
|
+
"default",
|
|
4277
|
+
"large"
|
|
4278
|
+
];
|
|
4249
4279
|
//#endregion
|
|
4250
4280
|
//#region src/components/ds-dropdown-menu/ds-dropdown-menu.tsx
|
|
4251
4281
|
const GroupContext = (0, react.createContext)(null);
|
|
@@ -4609,7 +4639,7 @@ const ItemGroupLabel = (t0) => {
|
|
|
4609
4639
|
className: t1,
|
|
4610
4640
|
style,
|
|
4611
4641
|
onClick: toggle,
|
|
4612
|
-
onKeyDown: _temp$
|
|
4642
|
+
onKeyDown: _temp$15,
|
|
4613
4643
|
children: [t2, t5]
|
|
4614
4644
|
})
|
|
4615
4645
|
});
|
|
@@ -4924,7 +4954,7 @@ DsDropdownMenu.ItemGroupLabel.displayName = "DsDropdownMenu.ItemGroupLabel";
|
|
|
4924
4954
|
DsDropdownMenu.ItemGroupContent.displayName = "DsDropdownMenu.ItemGroupContent";
|
|
4925
4955
|
DsDropdownMenu.Separator.displayName = "DsDropdownMenu.Separator";
|
|
4926
4956
|
DsDropdownMenuLegacy.displayName = "DsDropdownMenuLegacy";
|
|
4927
|
-
function _temp$
|
|
4957
|
+
function _temp$15(e) {
|
|
4928
4958
|
return e.stopPropagation();
|
|
4929
4959
|
}
|
|
4930
4960
|
function _temp2$7(e) {
|
|
@@ -4990,7 +5020,7 @@ const DsBreadcrumb = (t0) => {
|
|
|
4990
5020
|
placeholder: "Search",
|
|
4991
5021
|
value: search,
|
|
4992
5022
|
onValueChange: setSearch,
|
|
4993
|
-
onKeyDown: _temp$
|
|
5023
|
+
onKeyDown: _temp$14,
|
|
4994
5024
|
slots: { startAdornment: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
4995
5025
|
icon: "search",
|
|
4996
5026
|
size: "tiny"
|
|
@@ -5047,7 +5077,7 @@ const DsBreadcrumb = (t0) => {
|
|
|
5047
5077
|
return t4;
|
|
5048
5078
|
};
|
|
5049
5079
|
DsBreadcrumb.displayName = "DsBreadcrumb";
|
|
5050
|
-
function _temp$
|
|
5080
|
+
function _temp$14(e) {
|
|
5051
5081
|
return e.stopPropagation();
|
|
5052
5082
|
}
|
|
5053
5083
|
//#endregion
|
|
@@ -5503,7 +5533,7 @@ const iconSizeMap = Object.freeze({
|
|
|
5503
5533
|
* @summary action button with color/variant/size, icon-only, loading and selected states
|
|
5504
5534
|
*/
|
|
5505
5535
|
const DsButtonV3$1 = (t0) => {
|
|
5506
|
-
const $ = (0, react_compiler_runtime.c)(
|
|
5536
|
+
const $ = (0, react_compiler_runtime.c)(39);
|
|
5507
5537
|
let children;
|
|
5508
5538
|
let className;
|
|
5509
5539
|
let disabled;
|
|
@@ -5517,8 +5547,9 @@ const DsButtonV3$1 = (t0) => {
|
|
|
5517
5547
|
let t4;
|
|
5518
5548
|
let t5;
|
|
5519
5549
|
let t6;
|
|
5550
|
+
let t7;
|
|
5520
5551
|
if ($[0] !== t0) {
|
|
5521
|
-
({ref, className, style, children, icon, disabled, loading: t1, color: t2, variant: t3, size: t4, selected: t5,
|
|
5552
|
+
({ref, className, style, children, icon, disabled, loading: t1, color: t2, variant: t3, size: t4, selected: t5, highEmphasis: t6, type: t7, ...rest} = t0);
|
|
5522
5553
|
$[0] = t0;
|
|
5523
5554
|
$[1] = children;
|
|
5524
5555
|
$[2] = className;
|
|
@@ -5533,6 +5564,7 @@ const DsButtonV3$1 = (t0) => {
|
|
|
5533
5564
|
$[11] = t4;
|
|
5534
5565
|
$[12] = t5;
|
|
5535
5566
|
$[13] = t6;
|
|
5567
|
+
$[14] = t7;
|
|
5536
5568
|
} else {
|
|
5537
5569
|
children = $[1];
|
|
5538
5570
|
className = $[2];
|
|
@@ -5547,80 +5579,86 @@ const DsButtonV3$1 = (t0) => {
|
|
|
5547
5579
|
t4 = $[11];
|
|
5548
5580
|
t5 = $[12];
|
|
5549
5581
|
t6 = $[13];
|
|
5582
|
+
t7 = $[14];
|
|
5550
5583
|
}
|
|
5551
5584
|
const loading = t1 === void 0 ? false : t1;
|
|
5552
5585
|
const color = t2 === void 0 ? "default" : t2;
|
|
5553
5586
|
const variant = t3 === void 0 ? "primary" : t3;
|
|
5554
5587
|
const size = t4 === void 0 ? "medium" : t4;
|
|
5555
5588
|
const selected = t5 === void 0 ? false : t5;
|
|
5556
|
-
const
|
|
5589
|
+
const highEmphasis = t6 === void 0 ? false : t6;
|
|
5590
|
+
const type = t7 === void 0 ? "button" : t7;
|
|
5557
5591
|
const isIconOnly = icon !== void 0 && !children;
|
|
5558
|
-
const
|
|
5559
|
-
const
|
|
5560
|
-
let
|
|
5561
|
-
if ($[
|
|
5562
|
-
|
|
5563
|
-
$[
|
|
5564
|
-
$[
|
|
5565
|
-
} else
|
|
5566
|
-
const
|
|
5567
|
-
const
|
|
5568
|
-
const
|
|
5569
|
-
|
|
5570
|
-
|
|
5571
|
-
|
|
5592
|
+
const t8 = disabled || loading;
|
|
5593
|
+
const t9 = loading || void 0;
|
|
5594
|
+
let t10;
|
|
5595
|
+
if ($[15] !== className) {
|
|
5596
|
+
t10 = (0, classnames.default)(ds_button_v3_module_default.root, className);
|
|
5597
|
+
$[15] = className;
|
|
5598
|
+
$[16] = t10;
|
|
5599
|
+
} else t10 = $[16];
|
|
5600
|
+
const t11 = selected ? "true" : void 0;
|
|
5601
|
+
const t12 = highEmphasis ? "true" : void 0;
|
|
5602
|
+
const t13 = isIconOnly || void 0;
|
|
5603
|
+
const t14 = loading && !disabled ? "" : void 0;
|
|
5604
|
+
let t15;
|
|
5605
|
+
if ($[17] !== icon || $[18] !== loading || $[19] !== size) {
|
|
5606
|
+
t15 = loading ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsSpinner, {}) : icon && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
5572
5607
|
icon,
|
|
5573
5608
|
size: iconSizeMap[size],
|
|
5574
5609
|
"aria-hidden": true
|
|
5575
5610
|
});
|
|
5576
|
-
$[
|
|
5577
|
-
$[
|
|
5578
|
-
$[
|
|
5579
|
-
$[
|
|
5580
|
-
} else
|
|
5581
|
-
let
|
|
5582
|
-
if ($[
|
|
5583
|
-
|
|
5611
|
+
$[17] = icon;
|
|
5612
|
+
$[18] = loading;
|
|
5613
|
+
$[19] = size;
|
|
5614
|
+
$[20] = t15;
|
|
5615
|
+
} else t15 = $[20];
|
|
5616
|
+
let t16;
|
|
5617
|
+
if ($[21] !== children || $[22] !== color || $[23] !== ref || $[24] !== rest || $[25] !== selected || $[26] !== size || $[27] !== style || $[28] !== t10 || $[29] !== t11 || $[30] !== t12 || $[31] !== t13 || $[32] !== t14 || $[33] !== t15 || $[34] !== t8 || $[35] !== t9 || $[36] !== type || $[37] !== variant) {
|
|
5618
|
+
t16 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("button", {
|
|
5584
5619
|
ref,
|
|
5585
5620
|
type,
|
|
5586
|
-
disabled:
|
|
5587
|
-
"aria-busy":
|
|
5621
|
+
disabled: t8,
|
|
5622
|
+
"aria-busy": t9,
|
|
5588
5623
|
"aria-pressed": selected,
|
|
5589
|
-
className:
|
|
5624
|
+
className: t10,
|
|
5590
5625
|
style,
|
|
5591
5626
|
"data-color": color,
|
|
5592
5627
|
"data-variant": variant,
|
|
5593
5628
|
"data-size": size,
|
|
5594
|
-
"data-selected":
|
|
5595
|
-
"data-
|
|
5596
|
-
"data-
|
|
5629
|
+
"data-selected": t11,
|
|
5630
|
+
"data-high-emphasis": t12,
|
|
5631
|
+
"data-icon-only": t13,
|
|
5632
|
+
"data-loading": t14,
|
|
5597
5633
|
...rest,
|
|
5598
|
-
children: [
|
|
5599
|
-
});
|
|
5600
|
-
$[
|
|
5601
|
-
$[
|
|
5602
|
-
$[
|
|
5603
|
-
$[
|
|
5604
|
-
$[
|
|
5605
|
-
$[
|
|
5606
|
-
$[
|
|
5607
|
-
$[
|
|
5608
|
-
$[
|
|
5609
|
-
$[
|
|
5610
|
-
$[
|
|
5611
|
-
$[
|
|
5612
|
-
$[
|
|
5613
|
-
$[
|
|
5614
|
-
$[
|
|
5615
|
-
$[
|
|
5616
|
-
$[
|
|
5617
|
-
|
|
5618
|
-
|
|
5634
|
+
children: [t15, children]
|
|
5635
|
+
});
|
|
5636
|
+
$[21] = children;
|
|
5637
|
+
$[22] = color;
|
|
5638
|
+
$[23] = ref;
|
|
5639
|
+
$[24] = rest;
|
|
5640
|
+
$[25] = selected;
|
|
5641
|
+
$[26] = size;
|
|
5642
|
+
$[27] = style;
|
|
5643
|
+
$[28] = t10;
|
|
5644
|
+
$[29] = t11;
|
|
5645
|
+
$[30] = t12;
|
|
5646
|
+
$[31] = t13;
|
|
5647
|
+
$[32] = t14;
|
|
5648
|
+
$[33] = t15;
|
|
5649
|
+
$[34] = t8;
|
|
5650
|
+
$[35] = t9;
|
|
5651
|
+
$[36] = type;
|
|
5652
|
+
$[37] = variant;
|
|
5653
|
+
$[38] = t16;
|
|
5654
|
+
} else t16 = $[38];
|
|
5655
|
+
return t16;
|
|
5619
5656
|
};
|
|
5620
5657
|
//#endregion
|
|
5621
5658
|
//#region src/components/ds-button-v3/ds-button-v3.types.ts
|
|
5622
5659
|
const buttonV3Variants = [
|
|
5623
5660
|
"primary",
|
|
5661
|
+
"primary-subtle",
|
|
5624
5662
|
"secondary",
|
|
5625
5663
|
"tertiary"
|
|
5626
5664
|
];
|
|
@@ -7317,7 +7355,7 @@ const DsCommentThread = (t0) => {
|
|
|
7317
7355
|
const bottomRef = (0, react.useRef)(null);
|
|
7318
7356
|
let t1;
|
|
7319
7357
|
if ($[0] !== messages) {
|
|
7320
|
-
t1 = messages.find(_temp$
|
|
7358
|
+
t1 = messages.find(_temp$13) || messages[0];
|
|
7321
7359
|
$[0] = messages;
|
|
7322
7360
|
$[1] = t1;
|
|
7323
7361
|
} else t1 = $[1];
|
|
@@ -7458,7 +7496,7 @@ const DsCommentThread = (t0) => {
|
|
|
7458
7496
|
return t22;
|
|
7459
7497
|
};
|
|
7460
7498
|
DsCommentThread.displayName = "DsCommentThread";
|
|
7461
|
-
function _temp$
|
|
7499
|
+
function _temp$13(m) {
|
|
7462
7500
|
return m.isInitialMessage;
|
|
7463
7501
|
}
|
|
7464
7502
|
//#endregion
|
|
@@ -8182,7 +8220,7 @@ const DsCommentCard = (t0) => {
|
|
|
8182
8220
|
const { numericId, author, createdAt, messages, referenceTag, isActionRequired } = comment;
|
|
8183
8221
|
let t4;
|
|
8184
8222
|
if ($[0] !== messages) {
|
|
8185
|
-
t4 = messages.find(_temp$
|
|
8223
|
+
t4 = messages.find(_temp$12) || messages[0];
|
|
8186
8224
|
$[0] = messages;
|
|
8187
8225
|
$[1] = t4;
|
|
8188
8226
|
} else t4 = $[1];
|
|
@@ -8507,7 +8545,7 @@ const DsCommentCard = (t0) => {
|
|
|
8507
8545
|
return t34;
|
|
8508
8546
|
};
|
|
8509
8547
|
DsCommentCard.displayName = "DsCommentCard";
|
|
8510
|
-
function _temp$
|
|
8548
|
+
function _temp$12(m) {
|
|
8511
8549
|
return m.isInitialMessage;
|
|
8512
8550
|
}
|
|
8513
8551
|
function _temp2$6(m_0) {
|
|
@@ -9020,13 +9058,8 @@ const DsDrawer = Object.assign(DsDrawerRoot, {
|
|
|
9020
9058
|
//#region src/components/ds-tag-filter/ds-tag-filter.module.scss
|
|
9021
9059
|
var ds_tag_filter_module_default = {
|
|
9022
9060
|
"actionButton": "pHs_ea_actionButton",
|
|
9061
|
+
"actions": "pHs_ea_actions",
|
|
9023
9062
|
"container": "pHs_ea_container",
|
|
9024
|
-
"expanded": "pHs_ea_expanded",
|
|
9025
|
-
"ghostButtonContent": "pHs_ea_ghostButtonContent",
|
|
9026
|
-
"header": "pHs_ea_header",
|
|
9027
|
-
"headerActions": "pHs_ea_headerActions",
|
|
9028
|
-
"itemCheckbox": "pHs_ea_itemCheckbox",
|
|
9029
|
-
"label": "pHs_ea_label",
|
|
9030
9063
|
"measurementContainer": "pHs_ea_measurementContainer",
|
|
9031
9064
|
"tagsArea": "pHs_ea_tagsArea"
|
|
9032
9065
|
};
|
|
@@ -9076,14 +9109,11 @@ function getElementMeasurements(measurementContainer) {
|
|
|
9076
9109
|
//#endregion
|
|
9077
9110
|
//#region src/components/ds-tag-filter/hooks/use-tag-overflow-calculation.ts
|
|
9078
9111
|
/**
|
|
9079
|
-
* Custom hook to calculate how many tags fit
|
|
9080
|
-
*
|
|
9081
|
-
* Tags occupy the full container width. Non-tag elements (label, clear button,
|
|
9082
|
-
* expand control) live in a separate header row and don't affect the calculation.
|
|
9112
|
+
* Custom hook to calculate how many tags fit on the first row of the tags-area.
|
|
9083
9113
|
*/
|
|
9084
9114
|
const useTagOverflowCalculation = (t0) => {
|
|
9085
9115
|
const $ = (0, react_compiler_runtime.c)(15);
|
|
9086
|
-
const {
|
|
9116
|
+
const { tagsAreaRef, measurementRef, totalItems, expanded } = t0;
|
|
9087
9117
|
let t1;
|
|
9088
9118
|
if ($[0] === Symbol.for("react.memo_cache_sentinel")) {
|
|
9089
9119
|
t1 = {
|
|
@@ -9094,10 +9124,10 @@ const useTagOverflowCalculation = (t0) => {
|
|
|
9094
9124
|
} else t1 = $[0];
|
|
9095
9125
|
const [state, setState] = (0, react.useState)(t1);
|
|
9096
9126
|
let t2;
|
|
9097
|
-
if ($[1] !==
|
|
9127
|
+
if ($[1] !== measurementRef || $[2] !== tagsAreaRef) {
|
|
9098
9128
|
t2 = () => {
|
|
9099
|
-
if (!
|
|
9100
|
-
const
|
|
9129
|
+
if (!tagsAreaRef.current || !measurementRef.current) return;
|
|
9130
|
+
const tagsArea = tagsAreaRef.current;
|
|
9101
9131
|
const measurementContainer = measurementRef.current;
|
|
9102
9132
|
const { tagWidths, gap } = getElementMeasurements(measurementContainer);
|
|
9103
9133
|
if (tagWidths.length === 0) {
|
|
@@ -9107,20 +9137,20 @@ const useTagOverflowCalculation = (t0) => {
|
|
|
9107
9137
|
});
|
|
9108
9138
|
return;
|
|
9109
9139
|
}
|
|
9110
|
-
const { count } = fitTagsInRow(tagWidths, getContainerAvailableWidth(
|
|
9140
|
+
const { count } = fitTagsInRow(tagWidths, getContainerAvailableWidth(tagsArea), gap);
|
|
9111
9141
|
const hasOverflow = count < tagWidths.length;
|
|
9112
9142
|
setState({
|
|
9113
9143
|
visibleTagCount: count,
|
|
9114
9144
|
hasOverflow
|
|
9115
9145
|
});
|
|
9116
9146
|
};
|
|
9117
|
-
$[1] =
|
|
9118
|
-
$[2] =
|
|
9147
|
+
$[1] = measurementRef;
|
|
9148
|
+
$[2] = tagsAreaRef;
|
|
9119
9149
|
$[3] = t2;
|
|
9120
9150
|
} else t2 = $[3];
|
|
9121
9151
|
const calculateLayout = t2;
|
|
9122
9152
|
let t3;
|
|
9123
|
-
if ($[4] !== calculateLayout || $[5] !==
|
|
9153
|
+
if ($[4] !== calculateLayout || $[5] !== tagsAreaRef) {
|
|
9124
9154
|
t3 = () => {
|
|
9125
9155
|
const rafId = requestAnimationFrame(() => {
|
|
9126
9156
|
calculateLayout();
|
|
@@ -9130,41 +9160,41 @@ const useTagOverflowCalculation = (t0) => {
|
|
|
9130
9160
|
calculateLayout();
|
|
9131
9161
|
});
|
|
9132
9162
|
});
|
|
9133
|
-
if (
|
|
9163
|
+
if (tagsAreaRef.current) resizeObserver.observe(tagsAreaRef.current);
|
|
9134
9164
|
return () => {
|
|
9135
9165
|
cancelAnimationFrame(rafId);
|
|
9136
9166
|
resizeObserver.disconnect();
|
|
9137
9167
|
};
|
|
9138
9168
|
};
|
|
9139
9169
|
$[4] = calculateLayout;
|
|
9140
|
-
$[5] =
|
|
9170
|
+
$[5] = tagsAreaRef;
|
|
9141
9171
|
$[6] = t3;
|
|
9142
9172
|
} else t3 = $[6];
|
|
9143
9173
|
let t4;
|
|
9144
|
-
if ($[7] !== calculateLayout || $[8] !==
|
|
9174
|
+
if ($[7] !== calculateLayout || $[8] !== expanded || $[9] !== measurementRef || $[10] !== tagsAreaRef || $[11] !== totalItems) {
|
|
9145
9175
|
t4 = [
|
|
9146
|
-
|
|
9176
|
+
tagsAreaRef,
|
|
9147
9177
|
measurementRef,
|
|
9148
9178
|
totalItems,
|
|
9149
9179
|
expanded,
|
|
9150
9180
|
calculateLayout
|
|
9151
9181
|
];
|
|
9152
9182
|
$[7] = calculateLayout;
|
|
9153
|
-
$[8] =
|
|
9154
|
-
$[9] =
|
|
9155
|
-
$[10] =
|
|
9183
|
+
$[8] = expanded;
|
|
9184
|
+
$[9] = measurementRef;
|
|
9185
|
+
$[10] = tagsAreaRef;
|
|
9156
9186
|
$[11] = totalItems;
|
|
9157
9187
|
$[12] = t4;
|
|
9158
9188
|
} else t4 = $[12];
|
|
9159
9189
|
(0, react.useLayoutEffect)(t3, t4);
|
|
9160
9190
|
if (expanded) {
|
|
9161
9191
|
let t5;
|
|
9162
|
-
if ($[13] !==
|
|
9192
|
+
if ($[13] !== state) {
|
|
9163
9193
|
t5 = {
|
|
9164
|
-
|
|
9194
|
+
...state,
|
|
9165
9195
|
hasOverflow: true
|
|
9166
9196
|
};
|
|
9167
|
-
$[13] =
|
|
9197
|
+
$[13] = state;
|
|
9168
9198
|
$[14] = t5;
|
|
9169
9199
|
} else t5 = $[14];
|
|
9170
9200
|
return t5;
|
|
@@ -9175,13 +9205,9 @@ const useTagOverflowCalculation = (t0) => {
|
|
|
9175
9205
|
//#region src/components/ds-tag-filter/ds-tag-filter.tsx
|
|
9176
9206
|
/**
|
|
9177
9207
|
* Design system TagFilter component
|
|
9178
|
-
*
|
|
9179
|
-
* A component for displaying active filters as tags with overflow handling.
|
|
9180
|
-
* Non-tag elements (label, expand/collapse, clear) sit in a header row.
|
|
9181
|
-
* Tags occupy the full width below, wrapping as needed.
|
|
9182
9208
|
*/
|
|
9183
9209
|
const DsTagFilter = (t0) => {
|
|
9184
|
-
const $ = (0, react_compiler_runtime.c)(
|
|
9210
|
+
const $ = (0, react_compiler_runtime.c)(55);
|
|
9185
9211
|
const { items, locale: t1, className, style, onClearAll, onItemDelete, onItemSelect, onExpand } = t0;
|
|
9186
9212
|
let t2;
|
|
9187
9213
|
if ($[0] !== t1) {
|
|
@@ -9191,12 +9217,12 @@ const DsTagFilter = (t0) => {
|
|
|
9191
9217
|
} else t2 = $[1];
|
|
9192
9218
|
const locale = t2;
|
|
9193
9219
|
const [expanded, setExpanded] = (0, react.useState)(false);
|
|
9194
|
-
const
|
|
9220
|
+
const tagsAreaRef = (0, react.useRef)(null);
|
|
9195
9221
|
const measurementRef = (0, react.useRef)(null);
|
|
9196
9222
|
let t3;
|
|
9197
9223
|
if ($[2] !== expanded || $[3] !== items.length) {
|
|
9198
9224
|
t3 = {
|
|
9199
|
-
|
|
9225
|
+
tagsAreaRef,
|
|
9200
9226
|
measurementRef,
|
|
9201
9227
|
totalItems: items.length,
|
|
9202
9228
|
expanded
|
|
@@ -9206,25 +9232,24 @@ const DsTagFilter = (t0) => {
|
|
|
9206
9232
|
$[4] = t3;
|
|
9207
9233
|
} else t3 = $[4];
|
|
9208
9234
|
const { visibleTagCount, hasOverflow } = useTagOverflowCalculation(t3);
|
|
9209
|
-
const {
|
|
9210
|
-
const
|
|
9211
|
-
const
|
|
9212
|
-
const
|
|
9213
|
-
|
|
9214
|
-
let t8;
|
|
9235
|
+
const { clearButton: t4, showMore: t5, showLess: t6 } = locale;
|
|
9236
|
+
const clearButton = t4 === void 0 ? "Clear all filters" : t4;
|
|
9237
|
+
const showMore = t5 === void 0 ? "Show more" : t5;
|
|
9238
|
+
const showLess = t6 === void 0 ? "Show less" : t6;
|
|
9239
|
+
let t7;
|
|
9215
9240
|
if ($[5] !== expanded || $[6] !== items || $[7] !== visibleTagCount) {
|
|
9216
|
-
|
|
9241
|
+
t7 = expanded ? items : items.slice(0, visibleTagCount);
|
|
9217
9242
|
$[5] = expanded;
|
|
9218
9243
|
$[6] = items;
|
|
9219
9244
|
$[7] = visibleTagCount;
|
|
9220
|
-
$[8] =
|
|
9221
|
-
} else
|
|
9222
|
-
const visibleTags =
|
|
9245
|
+
$[8] = t7;
|
|
9246
|
+
} else t7 = $[8];
|
|
9247
|
+
const visibleTags = t7;
|
|
9223
9248
|
const hiddenCount = items.length - visibleTagCount;
|
|
9224
9249
|
if (items.length === 0) return null;
|
|
9225
|
-
let
|
|
9250
|
+
let t8;
|
|
9226
9251
|
if ($[9] !== onItemDelete || $[10] !== onItemSelect) {
|
|
9227
|
-
|
|
9252
|
+
t8 = (item) => ({
|
|
9228
9253
|
...item.slotProps?.tag,
|
|
9229
9254
|
label: item.label,
|
|
9230
9255
|
selected: item.selected,
|
|
@@ -9233,180 +9258,159 @@ const DsTagFilter = (t0) => {
|
|
|
9233
9258
|
});
|
|
9234
9259
|
$[9] = onItemDelete;
|
|
9235
9260
|
$[10] = onItemSelect;
|
|
9236
|
-
$[11] =
|
|
9237
|
-
} else
|
|
9238
|
-
const buildTagProps =
|
|
9239
|
-
let
|
|
9261
|
+
$[11] = t8;
|
|
9262
|
+
} else t8 = $[11];
|
|
9263
|
+
const buildTagProps = t8;
|
|
9264
|
+
let t9;
|
|
9240
9265
|
if ($[12] !== buildTagProps) {
|
|
9241
|
-
|
|
9266
|
+
t9 = (item_0) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTag, { ...buildTagProps(item_0) }, item_0.id);
|
|
9242
9267
|
$[12] = buildTagProps;
|
|
9243
|
-
$[13] =
|
|
9244
|
-
} else
|
|
9245
|
-
const renderTag =
|
|
9246
|
-
let
|
|
9268
|
+
$[13] = t9;
|
|
9269
|
+
} else t9 = $[13];
|
|
9270
|
+
const renderTag = t9;
|
|
9271
|
+
let t10;
|
|
9247
9272
|
if ($[14] !== expanded || $[15] !== onExpand) {
|
|
9248
|
-
|
|
9273
|
+
t10 = () => {
|
|
9249
9274
|
const newExpanded = !expanded;
|
|
9250
9275
|
setExpanded(newExpanded);
|
|
9251
9276
|
onExpand?.(newExpanded);
|
|
9252
9277
|
};
|
|
9253
9278
|
$[14] = expanded;
|
|
9254
9279
|
$[15] = onExpand;
|
|
9255
|
-
$[16] =
|
|
9256
|
-
} else
|
|
9257
|
-
const handleExpandToggle =
|
|
9258
|
-
let
|
|
9280
|
+
$[16] = t10;
|
|
9281
|
+
} else t10 = $[16];
|
|
9282
|
+
const handleExpandToggle = t10;
|
|
9283
|
+
let t11;
|
|
9259
9284
|
if ($[17] !== buildTagProps || $[18] !== items) {
|
|
9260
|
-
let
|
|
9285
|
+
let t12;
|
|
9261
9286
|
if ($[20] !== buildTagProps) {
|
|
9262
|
-
|
|
9287
|
+
t12 = (item_1) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTag, {
|
|
9263
9288
|
"data-measure-tag": "",
|
|
9264
9289
|
...buildTagProps(item_1)
|
|
9265
9290
|
}, item_1.id);
|
|
9266
9291
|
$[20] = buildTagProps;
|
|
9267
|
-
$[21] =
|
|
9268
|
-
} else
|
|
9269
|
-
|
|
9292
|
+
$[21] = t12;
|
|
9293
|
+
} else t12 = $[21];
|
|
9294
|
+
t11 = items.map(t12);
|
|
9270
9295
|
$[17] = buildTagProps;
|
|
9271
9296
|
$[18] = items;
|
|
9272
|
-
$[19] =
|
|
9273
|
-
} else
|
|
9274
|
-
let
|
|
9275
|
-
if ($[22] !==
|
|
9276
|
-
|
|
9297
|
+
$[19] = t11;
|
|
9298
|
+
} else t11 = $[19];
|
|
9299
|
+
let t12;
|
|
9300
|
+
if ($[22] !== t11) {
|
|
9301
|
+
t12 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
9277
9302
|
ref: measurementRef,
|
|
9278
9303
|
className: ds_tag_filter_module_default.measurementContainer,
|
|
9279
9304
|
"aria-hidden": "true",
|
|
9280
|
-
children:
|
|
9305
|
+
children: t11
|
|
9281
9306
|
});
|
|
9282
|
-
$[22] =
|
|
9283
|
-
$[23] =
|
|
9284
|
-
} else
|
|
9285
|
-
const measurementContainer =
|
|
9286
|
-
const
|
|
9287
|
-
let
|
|
9288
|
-
if ($[24] !== className
|
|
9289
|
-
|
|
9307
|
+
$[22] = t11;
|
|
9308
|
+
$[23] = t12;
|
|
9309
|
+
} else t12 = $[23];
|
|
9310
|
+
const measurementContainer = t12;
|
|
9311
|
+
const toggleLabel = expanded ? showLess : showMore;
|
|
9312
|
+
let t13;
|
|
9313
|
+
if ($[24] !== className) {
|
|
9314
|
+
t13 = (0, classnames.default)(ds_tag_filter_module_default.container, className);
|
|
9290
9315
|
$[24] = className;
|
|
9291
|
-
$[25] =
|
|
9292
|
-
|
|
9293
|
-
|
|
9316
|
+
$[25] = t13;
|
|
9317
|
+
} else t13 = $[25];
|
|
9318
|
+
let t14;
|
|
9319
|
+
if ($[26] !== renderTag || $[27] !== visibleTags) {
|
|
9320
|
+
let t15;
|
|
9321
|
+
if ($[29] !== renderTag) {
|
|
9322
|
+
t15 = (item_2) => renderTag(item_2);
|
|
9323
|
+
$[29] = renderTag;
|
|
9324
|
+
$[30] = t15;
|
|
9325
|
+
} else t15 = $[30];
|
|
9326
|
+
t14 = visibleTags.map(t15);
|
|
9327
|
+
$[26] = renderTag;
|
|
9328
|
+
$[27] = visibleTags;
|
|
9329
|
+
$[28] = t14;
|
|
9330
|
+
} else t14 = $[28];
|
|
9331
|
+
let t15;
|
|
9332
|
+
if ($[31] !== t14) {
|
|
9333
|
+
t15 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
9334
|
+
ref: tagsAreaRef,
|
|
9335
|
+
className: ds_tag_filter_module_default.tagsArea,
|
|
9336
|
+
"aria-live": "polite",
|
|
9337
|
+
children: t14
|
|
9338
|
+
});
|
|
9339
|
+
$[31] = t14;
|
|
9340
|
+
$[32] = t15;
|
|
9341
|
+
} else t15 = $[32];
|
|
9294
9342
|
let t16;
|
|
9295
|
-
if ($[
|
|
9296
|
-
t16 =
|
|
9297
|
-
variant: "
|
|
9298
|
-
|
|
9299
|
-
|
|
9343
|
+
if ($[33] !== expanded || $[34] !== handleExpandToggle || $[35] !== hasOverflow || $[36] !== hiddenCount || $[37] !== toggleLabel) {
|
|
9344
|
+
t16 = hasOverflow && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DsButtonV3, {
|
|
9345
|
+
variant: "tertiary",
|
|
9346
|
+
size: "small",
|
|
9347
|
+
className: ds_tag_filter_module_default.actionButton,
|
|
9348
|
+
"aria-expanded": expanded,
|
|
9349
|
+
onClick: handleExpandToggle,
|
|
9350
|
+
children: [`${toggleLabel} (${String(hiddenCount)})`, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
9351
|
+
icon: expanded ? "keyboard_arrow_up" : "keyboard_arrow_down",
|
|
9352
|
+
size: "tiny",
|
|
9353
|
+
"aria-hidden": true
|
|
9354
|
+
})]
|
|
9300
9355
|
});
|
|
9301
|
-
$[
|
|
9302
|
-
$[
|
|
9303
|
-
|
|
9356
|
+
$[33] = expanded;
|
|
9357
|
+
$[34] = handleExpandToggle;
|
|
9358
|
+
$[35] = hasOverflow;
|
|
9359
|
+
$[36] = hiddenCount;
|
|
9360
|
+
$[37] = toggleLabel;
|
|
9361
|
+
$[38] = t16;
|
|
9362
|
+
} else t16 = $[38];
|
|
9304
9363
|
let t17;
|
|
9305
|
-
if ($[
|
|
9306
|
-
t17 =
|
|
9307
|
-
|
|
9308
|
-
buttonType: "tertiary",
|
|
9309
|
-
variant: "ghost",
|
|
9310
|
-
className: ds_tag_filter_module_default.actionButton,
|
|
9311
|
-
contentClassName: ds_tag_filter_module_default.ghostButtonContent,
|
|
9364
|
+
if ($[39] !== clearButton || $[40] !== onClearAll) {
|
|
9365
|
+
t17 = onClearAll && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsButtonV3, {
|
|
9366
|
+
variant: "tertiary",
|
|
9312
9367
|
size: "small",
|
|
9313
|
-
|
|
9314
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, { icon: expanded ? "keyboard_arrow_up" : "keyboard_arrow_down" }), expanded ? showLess : `${showMore} (${String(hiddenCount)})`]
|
|
9315
|
-
});
|
|
9316
|
-
$[29] = expanded;
|
|
9317
|
-
$[30] = handleExpandToggle;
|
|
9318
|
-
$[31] = hasOverflow;
|
|
9319
|
-
$[32] = hiddenCount;
|
|
9320
|
-
$[33] = showLess;
|
|
9321
|
-
$[34] = showMore;
|
|
9322
|
-
$[35] = t17;
|
|
9323
|
-
} else t17 = $[35];
|
|
9324
|
-
let t18;
|
|
9325
|
-
if ($[36] !== clearButton || $[37] !== onClearAll) {
|
|
9326
|
-
t18 = onClearAll && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(DsButton, {
|
|
9327
|
-
design: "v1.2",
|
|
9328
|
-
buttonType: "tertiary",
|
|
9329
|
-
variant: "ghost",
|
|
9368
|
+
icon: "close",
|
|
9330
9369
|
className: ds_tag_filter_module_default.actionButton,
|
|
9331
|
-
contentClassName: ds_tag_filter_module_default.ghostButtonContent,
|
|
9332
|
-
size: "small",
|
|
9333
9370
|
onClick: onClearAll,
|
|
9334
|
-
children:
|
|
9371
|
+
children: clearButton
|
|
9372
|
+
});
|
|
9373
|
+
$[39] = clearButton;
|
|
9374
|
+
$[40] = onClearAll;
|
|
9375
|
+
$[41] = t17;
|
|
9376
|
+
} else t17 = $[41];
|
|
9377
|
+
let t18;
|
|
9378
|
+
if ($[42] !== t16 || $[43] !== t17) {
|
|
9379
|
+
t18 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
9380
|
+
className: ds_tag_filter_module_default.actions,
|
|
9381
|
+
children: [t16, t17]
|
|
9335
9382
|
});
|
|
9336
|
-
$[
|
|
9337
|
-
$[
|
|
9338
|
-
$[
|
|
9339
|
-
} else t18 = $[
|
|
9383
|
+
$[42] = t16;
|
|
9384
|
+
$[43] = t17;
|
|
9385
|
+
$[44] = t18;
|
|
9386
|
+
} else t18 = $[44];
|
|
9340
9387
|
let t19;
|
|
9341
|
-
if ($[
|
|
9388
|
+
if ($[45] !== style || $[46] !== t13 || $[47] !== t15 || $[48] !== t18) {
|
|
9342
9389
|
t19 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
9343
|
-
className:
|
|
9344
|
-
|
|
9390
|
+
className: t13,
|
|
9391
|
+
style,
|
|
9392
|
+
children: [t15, t18]
|
|
9345
9393
|
});
|
|
9346
|
-
$[
|
|
9347
|
-
$[
|
|
9348
|
-
$[
|
|
9349
|
-
|
|
9394
|
+
$[45] = style;
|
|
9395
|
+
$[46] = t13;
|
|
9396
|
+
$[47] = t15;
|
|
9397
|
+
$[48] = t18;
|
|
9398
|
+
$[49] = t19;
|
|
9399
|
+
} else t19 = $[49];
|
|
9350
9400
|
let t20;
|
|
9351
|
-
if ($[
|
|
9352
|
-
t20 =
|
|
9353
|
-
|
|
9354
|
-
|
|
9355
|
-
|
|
9356
|
-
$[42] = t16;
|
|
9357
|
-
$[43] = t19;
|
|
9358
|
-
$[44] = t20;
|
|
9359
|
-
} else t20 = $[44];
|
|
9401
|
+
if ($[50] !== measurementContainer) {
|
|
9402
|
+
t20 = (0, react_dom.createPortal)(measurementContainer, document.body);
|
|
9403
|
+
$[50] = measurementContainer;
|
|
9404
|
+
$[51] = t20;
|
|
9405
|
+
} else t20 = $[51];
|
|
9360
9406
|
let t21;
|
|
9361
|
-
if ($[
|
|
9362
|
-
|
|
9363
|
-
|
|
9364
|
-
|
|
9365
|
-
|
|
9366
|
-
|
|
9367
|
-
|
|
9368
|
-
t21 = visibleTags.map(t22);
|
|
9369
|
-
$[45] = renderTag;
|
|
9370
|
-
$[46] = visibleTags;
|
|
9371
|
-
$[47] = t21;
|
|
9372
|
-
} else t21 = $[47];
|
|
9373
|
-
let t22;
|
|
9374
|
-
if ($[50] !== t21) {
|
|
9375
|
-
t22 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
9376
|
-
className: ds_tag_filter_module_default.tagsArea,
|
|
9377
|
-
children: t21
|
|
9378
|
-
});
|
|
9379
|
-
$[50] = t21;
|
|
9380
|
-
$[51] = t22;
|
|
9381
|
-
} else t22 = $[51];
|
|
9382
|
-
let t23;
|
|
9383
|
-
if ($[52] !== style || $[53] !== t15 || $[54] !== t20 || $[55] !== t22) {
|
|
9384
|
-
t23 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
9385
|
-
ref: containerRef,
|
|
9386
|
-
className: t15,
|
|
9387
|
-
style,
|
|
9388
|
-
children: [t20, t22]
|
|
9389
|
-
});
|
|
9390
|
-
$[52] = style;
|
|
9391
|
-
$[53] = t15;
|
|
9392
|
-
$[54] = t20;
|
|
9393
|
-
$[55] = t22;
|
|
9394
|
-
$[56] = t23;
|
|
9395
|
-
} else t23 = $[56];
|
|
9396
|
-
let t24;
|
|
9397
|
-
if ($[57] !== measurementContainer) {
|
|
9398
|
-
t24 = (0, react_dom.createPortal)(measurementContainer, document.body);
|
|
9399
|
-
$[57] = measurementContainer;
|
|
9400
|
-
$[58] = t24;
|
|
9401
|
-
} else t24 = $[58];
|
|
9402
|
-
let t25;
|
|
9403
|
-
if ($[59] !== t23 || $[60] !== t24) {
|
|
9404
|
-
t25 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [t23, t24] });
|
|
9405
|
-
$[59] = t23;
|
|
9406
|
-
$[60] = t24;
|
|
9407
|
-
$[61] = t25;
|
|
9408
|
-
} else t25 = $[61];
|
|
9409
|
-
return t25;
|
|
9407
|
+
if ($[52] !== t19 || $[53] !== t20) {
|
|
9408
|
+
t21 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [t19, t20] });
|
|
9409
|
+
$[52] = t19;
|
|
9410
|
+
$[53] = t20;
|
|
9411
|
+
$[54] = t21;
|
|
9412
|
+
} else t21 = $[54];
|
|
9413
|
+
return t21;
|
|
9410
9414
|
};
|
|
9411
9415
|
DsTagFilter.displayName = "DsTagFilter";
|
|
9412
9416
|
//#endregion
|
|
@@ -9955,7 +9959,7 @@ const DsTabsTab = (t0) => {
|
|
|
9955
9959
|
})
|
|
9956
9960
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsDropdownMenu.Content, {
|
|
9957
9961
|
className: ds_tabs_tab_module_default.menuContent,
|
|
9958
|
-
children: menuActionItems.map(_temp$
|
|
9962
|
+
children: menuActionItems.map(_temp$11)
|
|
9959
9963
|
})]
|
|
9960
9964
|
});
|
|
9961
9965
|
$[17] = handleMenuActionSelect;
|
|
@@ -9994,7 +9998,7 @@ const DsTabsTab = (t0) => {
|
|
|
9994
9998
|
return t6;
|
|
9995
9999
|
};
|
|
9996
10000
|
DsTabsTab.displayName = "DsTabs.Tab";
|
|
9997
|
-
function _temp$
|
|
10001
|
+
function _temp$11(item) {
|
|
9998
10002
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsDropdownMenu.Item, {
|
|
9999
10003
|
value: item.value,
|
|
10000
10004
|
disabled: item.disabled,
|
|
@@ -10521,7 +10525,7 @@ const YearView$1 = () => {
|
|
|
10521
10525
|
return t0;
|
|
10522
10526
|
};
|
|
10523
10527
|
DsDateInput.displayName = "DsDateInput";
|
|
10524
|
-
function _temp$
|
|
10528
|
+
function _temp$10(weekDay, id) {
|
|
10525
10529
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableHeader, {
|
|
10526
10530
|
className: ds_date_input_module_default.tableHeader,
|
|
10527
10531
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTypography, {
|
|
@@ -10556,7 +10560,7 @@ function _temp4$2(datePicker) {
|
|
|
10556
10560
|
className: ds_date_input_module_default.tableHead,
|
|
10557
10561
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableRow, {
|
|
10558
10562
|
className: ds_date_input_module_default.tableRow,
|
|
10559
|
-
children: datePicker.weekDays.map(_temp$
|
|
10563
|
+
children: datePicker.weekDays.map(_temp$10)
|
|
10560
10564
|
})
|
|
10561
10565
|
}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableBody, {
|
|
10562
10566
|
className: ds_date_input_module_default.tableBody,
|
|
@@ -11199,7 +11203,7 @@ const DsCommentsDrawer = (t0) => {
|
|
|
11199
11203
|
authorsMap.set(comment.author.id, comment.author.name);
|
|
11200
11204
|
comment.labels?.forEach((label) => labelsSet.add(label));
|
|
11201
11205
|
});
|
|
11202
|
-
availableAuthors = Array.from(authorsMap.entries()).map(_temp$
|
|
11206
|
+
availableAuthors = Array.from(authorsMap.entries()).map(_temp$9);
|
|
11203
11207
|
availableLabels = Array.from(labelsSet);
|
|
11204
11208
|
let filteredComments = comments;
|
|
11205
11209
|
if (!showResolved) filteredComments = filteredComments.filter(_temp2$4);
|
|
@@ -11552,7 +11556,7 @@ const DsCommentsDrawer = (t0) => {
|
|
|
11552
11556
|
return t18;
|
|
11553
11557
|
};
|
|
11554
11558
|
DsCommentsDrawer.displayName = "DsCommentsDrawer";
|
|
11555
|
-
function _temp$
|
|
11559
|
+
function _temp$9(t0) {
|
|
11556
11560
|
const [id, name] = t0;
|
|
11557
11561
|
return {
|
|
11558
11562
|
id,
|
|
@@ -12356,7 +12360,7 @@ const DayView = (t0) => {
|
|
|
12356
12360
|
className: calendar_table_module_default.table,
|
|
12357
12361
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableHead, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableRow, {
|
|
12358
12362
|
className: calendar_table_module_default.tableRow,
|
|
12359
|
-
children: datePicker.weekDays.map(_temp$
|
|
12363
|
+
children: datePicker.weekDays.map(_temp$8)
|
|
12360
12364
|
}) }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableBody, {
|
|
12361
12365
|
className: calendar_table_module_default.tableBody,
|
|
12362
12366
|
children: datePicker.weeks.map(_temp3$3)
|
|
@@ -12371,7 +12375,7 @@ const DayView = (t0) => {
|
|
|
12371
12375
|
} else t1 = $[1];
|
|
12372
12376
|
return t1;
|
|
12373
12377
|
};
|
|
12374
|
-
function _temp$
|
|
12378
|
+
function _temp$8(weekDay, idx) {
|
|
12375
12379
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableHeader, {
|
|
12376
12380
|
className: calendar_table_module_default.tableHeader,
|
|
12377
12381
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTypography, {
|
|
@@ -12415,7 +12419,7 @@ const MonthView = () => {
|
|
|
12415
12419
|
} else t0 = $[0];
|
|
12416
12420
|
return t0;
|
|
12417
12421
|
};
|
|
12418
|
-
function _temp$
|
|
12422
|
+
function _temp$7(month, monthIdx) {
|
|
12419
12423
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableCell, {
|
|
12420
12424
|
value: month.value,
|
|
12421
12425
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableCellTrigger, {
|
|
@@ -12430,7 +12434,7 @@ function _temp$6(month, monthIdx) {
|
|
|
12430
12434
|
function _temp2$2(months, rowIdx) {
|
|
12431
12435
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableRow, {
|
|
12432
12436
|
className: calendar_table_module_default.tableRow,
|
|
12433
|
-
children: months.map(_temp$
|
|
12437
|
+
children: months.map(_temp$7)
|
|
12434
12438
|
}, rowIdx);
|
|
12435
12439
|
}
|
|
12436
12440
|
function _temp3$2(datePicker) {
|
|
@@ -12462,7 +12466,7 @@ const YearView = () => {
|
|
|
12462
12466
|
} else t0 = $[0];
|
|
12463
12467
|
return t0;
|
|
12464
12468
|
};
|
|
12465
|
-
function _temp$
|
|
12469
|
+
function _temp$6(year, yearIdx) {
|
|
12466
12470
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableCell, {
|
|
12467
12471
|
value: year.value,
|
|
12468
12472
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableCellTrigger, {
|
|
@@ -12477,7 +12481,7 @@ function _temp$5(year, yearIdx) {
|
|
|
12477
12481
|
function _temp2$1(years, rowIdx) {
|
|
12478
12482
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_date_picker.DatePicker.TableRow, {
|
|
12479
12483
|
className: calendar_table_module_default.tableRow,
|
|
12480
|
-
children: years.map(_temp$
|
|
12484
|
+
children: years.map(_temp$6)
|
|
12481
12485
|
}, rowIdx);
|
|
12482
12486
|
}
|
|
12483
12487
|
function _temp3$1(datePicker) {
|
|
@@ -12953,6 +12957,7 @@ var ds_select_module_default = {
|
|
|
12953
12957
|
"item": "KdTZ_G_item",
|
|
12954
12958
|
"itemIcon": "KdTZ_G_itemIcon",
|
|
12955
12959
|
"itemValue": "KdTZ_G_itemValue",
|
|
12960
|
+
"large": "KdTZ_G_large",
|
|
12956
12961
|
"multiSelectItemsContainer": "KdTZ_G_multiSelectItemsContainer",
|
|
12957
12962
|
"searchIcon": "KdTZ_G_searchIcon",
|
|
12958
12963
|
"searchInput": "KdTZ_G_searchInput",
|
|
@@ -13064,7 +13069,7 @@ const SELECT_ALL_OPTION = {
|
|
|
13064
13069
|
value: SELECT_ALL_VALUE
|
|
13065
13070
|
};
|
|
13066
13071
|
const DsSelect = (t0) => {
|
|
13067
|
-
const $ = (0, react_compiler_runtime.c)(
|
|
13072
|
+
const $ = (0, react_compiler_runtime.c)(30);
|
|
13068
13073
|
const { id, options: userOptions, value, style, size, clearable, onClear, onBlur, className, placeholder: t1, disabled, renderOption, ...multiselectProps } = t0;
|
|
13069
13074
|
const placeholder = t1 === void 0 ? "Click to select a value" : t1;
|
|
13070
13075
|
const [searchTerm, setSearchTerm] = (0, react.useState)("");
|
|
@@ -13072,7 +13077,7 @@ const DsSelect = (t0) => {
|
|
|
13072
13077
|
const internalOptions = multiselectProps.multiple ? [SELECT_ALL_OPTION, ...userOptions] : userOptions;
|
|
13073
13078
|
const collection = (0, _ark_ui_react_select.createListCollection)({
|
|
13074
13079
|
items: internalOptions,
|
|
13075
|
-
itemToValue: _temp$
|
|
13080
|
+
itemToValue: _temp$5
|
|
13076
13081
|
});
|
|
13077
13082
|
let t2;
|
|
13078
13083
|
if ($[0] !== searchTerm) {
|
|
@@ -13134,29 +13139,31 @@ const DsSelect = (t0) => {
|
|
|
13134
13139
|
});
|
|
13135
13140
|
};
|
|
13136
13141
|
const t4 = size === "small" && ds_select_module_default.small;
|
|
13137
|
-
|
|
13138
|
-
|
|
13139
|
-
|
|
13142
|
+
const t5 = size === "large" && ds_select_module_default.large;
|
|
13143
|
+
let t6;
|
|
13144
|
+
if ($[3] !== className || $[4] !== t4 || $[5] !== t5) {
|
|
13145
|
+
t6 = (0, classnames.default)(ds_select_module_default.control, t4, t5, className);
|
|
13140
13146
|
$[3] = className;
|
|
13141
13147
|
$[4] = t4;
|
|
13142
13148
|
$[5] = t5;
|
|
13143
|
-
|
|
13144
|
-
|
|
13145
|
-
|
|
13146
|
-
|
|
13147
|
-
|
|
13149
|
+
$[6] = t6;
|
|
13150
|
+
} else t6 = $[6];
|
|
13151
|
+
const t7 = size === "small" ? "small" : "medium";
|
|
13152
|
+
let t8;
|
|
13153
|
+
if ($[7] !== t7) {
|
|
13154
|
+
t8 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_select.Select.Indicator, {
|
|
13148
13155
|
className: ds_select_module_default.triggerIcon,
|
|
13149
13156
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
13150
13157
|
icon: "keyboard_arrow_down",
|
|
13151
|
-
size:
|
|
13158
|
+
size: t7
|
|
13152
13159
|
})
|
|
13153
13160
|
});
|
|
13154
|
-
$[6] = t6;
|
|
13155
13161
|
$[7] = t7;
|
|
13156
|
-
|
|
13157
|
-
|
|
13158
|
-
|
|
13159
|
-
|
|
13162
|
+
$[8] = t8;
|
|
13163
|
+
} else t8 = $[8];
|
|
13164
|
+
let t9;
|
|
13165
|
+
if ($[9] !== clearable || $[10] !== onClear || $[11] !== size) {
|
|
13166
|
+
t9 = clearable && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_select.Select.ClearTrigger, {
|
|
13160
13167
|
className: ds_select_module_default.clearIcon,
|
|
13161
13168
|
onClick: onClear,
|
|
13162
13169
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
@@ -13164,19 +13171,19 @@ const DsSelect = (t0) => {
|
|
|
13164
13171
|
size: size === "small" ? "small" : "medium"
|
|
13165
13172
|
})
|
|
13166
13173
|
});
|
|
13167
|
-
$[
|
|
13168
|
-
$[
|
|
13169
|
-
$[
|
|
13170
|
-
$[
|
|
13171
|
-
} else
|
|
13174
|
+
$[9] = clearable;
|
|
13175
|
+
$[10] = onClear;
|
|
13176
|
+
$[11] = size;
|
|
13177
|
+
$[12] = t9;
|
|
13178
|
+
} else t9 = $[12];
|
|
13172
13179
|
const T0 = _ark_ui_react_portal.Portal;
|
|
13173
|
-
const
|
|
13174
|
-
const
|
|
13175
|
-
const
|
|
13176
|
-
const
|
|
13177
|
-
let
|
|
13178
|
-
if ($[
|
|
13179
|
-
|
|
13180
|
+
const t10 = _ark_ui_react_select.Select;
|
|
13181
|
+
const t11 = ds_select_module_default;
|
|
13182
|
+
const t12 = _ark_ui_react_select.Select;
|
|
13183
|
+
const t13 = ds_select_module_default;
|
|
13184
|
+
let t14;
|
|
13185
|
+
if ($[13] !== searchTerm || $[14] !== userOptions.length) {
|
|
13186
|
+
t14 = userOptions.length > SEARCH_THRESHOLD && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
13180
13187
|
className: ds_select_module_default.searchInput,
|
|
13181
13188
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTextInput, {
|
|
13182
13189
|
placeholder: "Search",
|
|
@@ -13189,17 +13196,17 @@ const DsSelect = (t0) => {
|
|
|
13189
13196
|
}) }
|
|
13190
13197
|
})
|
|
13191
13198
|
});
|
|
13192
|
-
$[
|
|
13193
|
-
$[
|
|
13194
|
-
$[
|
|
13195
|
-
} else
|
|
13196
|
-
const
|
|
13199
|
+
$[13] = searchTerm;
|
|
13200
|
+
$[14] = userOptions.length;
|
|
13201
|
+
$[15] = t14;
|
|
13202
|
+
} else t14 = $[15];
|
|
13203
|
+
const t15 = multiselectProps.multiple && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SelectItemsChips, {
|
|
13197
13204
|
onValueChange: multiselectProps.onValueChange,
|
|
13198
13205
|
showAll: showAllItems,
|
|
13199
13206
|
onShowAll: () => setShowAllItems(true),
|
|
13200
13207
|
count: 6
|
|
13201
13208
|
});
|
|
13202
|
-
const
|
|
13209
|
+
const t16 = filteredOptions.map((item_0) => {
|
|
13203
13210
|
const checked = getItemCheckedState({
|
|
13204
13211
|
item: item_0,
|
|
13205
13212
|
select,
|
|
@@ -13223,52 +13230,52 @@ const DsSelect = (t0) => {
|
|
|
13223
13230
|
})
|
|
13224
13231
|
}, collection.getItemValue(item_0));
|
|
13225
13232
|
});
|
|
13226
|
-
let
|
|
13227
|
-
if ($[
|
|
13228
|
-
|
|
13229
|
-
className:
|
|
13233
|
+
let t17;
|
|
13234
|
+
if ($[16] !== t12.Content || $[17] !== t13.content || $[18] !== t14 || $[19] !== t15 || $[20] !== t16) {
|
|
13235
|
+
t17 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(t12.Content, {
|
|
13236
|
+
className: t13.content,
|
|
13230
13237
|
children: [
|
|
13231
|
-
t13,
|
|
13232
13238
|
t14,
|
|
13233
|
-
t15
|
|
13239
|
+
t15,
|
|
13240
|
+
t16
|
|
13234
13241
|
]
|
|
13235
13242
|
});
|
|
13236
|
-
$[
|
|
13237
|
-
$[
|
|
13238
|
-
$[17] = t13;
|
|
13243
|
+
$[16] = t12.Content;
|
|
13244
|
+
$[17] = t13.content;
|
|
13239
13245
|
$[18] = t14;
|
|
13240
13246
|
$[19] = t15;
|
|
13241
13247
|
$[20] = t16;
|
|
13242
|
-
|
|
13243
|
-
|
|
13244
|
-
|
|
13245
|
-
|
|
13246
|
-
|
|
13247
|
-
|
|
13248
|
+
$[21] = t17;
|
|
13249
|
+
} else t17 = $[21];
|
|
13250
|
+
let t18;
|
|
13251
|
+
if ($[22] !== t10.Positioner || $[23] !== t11.viewport || $[24] !== t17) {
|
|
13252
|
+
t18 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(t10.Positioner, {
|
|
13253
|
+
className: t11.viewport,
|
|
13254
|
+
children: t17
|
|
13248
13255
|
});
|
|
13249
|
-
$[
|
|
13250
|
-
$[
|
|
13251
|
-
$[23] = t9.Positioner;
|
|
13256
|
+
$[22] = t10.Positioner;
|
|
13257
|
+
$[23] = t11.viewport;
|
|
13252
13258
|
$[24] = t17;
|
|
13253
|
-
|
|
13254
|
-
|
|
13255
|
-
if ($[25] !== T0 || $[26] !== t17) {
|
|
13256
|
-
t18 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(T0, { children: t17 });
|
|
13257
|
-
$[25] = T0;
|
|
13258
|
-
$[26] = t17;
|
|
13259
|
-
$[27] = t18;
|
|
13260
|
-
} else t18 = $[27];
|
|
13259
|
+
$[25] = t18;
|
|
13260
|
+
} else t18 = $[25];
|
|
13261
13261
|
let t19;
|
|
13262
|
-
if ($[
|
|
13263
|
-
t19 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
13262
|
+
if ($[26] !== T0 || $[27] !== t18) {
|
|
13263
|
+
t19 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(T0, { children: t18 });
|
|
13264
|
+
$[26] = T0;
|
|
13265
|
+
$[27] = t18;
|
|
13264
13266
|
$[28] = t19;
|
|
13265
13267
|
} else t19 = $[28];
|
|
13268
|
+
let t20;
|
|
13269
|
+
if ($[29] === Symbol.for("react.memo_cache_sentinel")) {
|
|
13270
|
+
t20 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_select.Select.HiddenSelect, { style: { display: "none" } });
|
|
13271
|
+
$[29] = t20;
|
|
13272
|
+
} else t20 = $[29];
|
|
13266
13273
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_select.Select.RootProvider, {
|
|
13267
13274
|
value: select,
|
|
13268
13275
|
lazyMount: true,
|
|
13269
13276
|
children: [
|
|
13270
13277
|
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_select.Select.Control, {
|
|
13271
|
-
className:
|
|
13278
|
+
className: t6,
|
|
13272
13279
|
style,
|
|
13273
13280
|
onBlur,
|
|
13274
13281
|
onKeyDown: (e) => {
|
|
@@ -13284,11 +13291,11 @@ const DsSelect = (t0) => {
|
|
|
13284
13291
|
id,
|
|
13285
13292
|
className: ds_select_module_default.trigger,
|
|
13286
13293
|
"aria-labelledby": null,
|
|
13287
|
-
children: [renderTriggerValue(),
|
|
13288
|
-
}),
|
|
13294
|
+
children: [renderTriggerValue(), t8]
|
|
13295
|
+
}), t9]
|
|
13289
13296
|
}),
|
|
13290
|
-
|
|
13291
|
-
|
|
13297
|
+
t19,
|
|
13298
|
+
t20
|
|
13292
13299
|
]
|
|
13293
13300
|
});
|
|
13294
13301
|
};
|
|
@@ -13298,7 +13305,7 @@ function getItemCheckedState({ item, select, options }) {
|
|
|
13298
13305
|
return select.hasSelectedItems ? "indeterminate" : false;
|
|
13299
13306
|
}
|
|
13300
13307
|
DsSelect.displayName = "DsSelect";
|
|
13301
|
-
function _temp$
|
|
13308
|
+
function _temp$5(item) {
|
|
13302
13309
|
return item.value;
|
|
13303
13310
|
}
|
|
13304
13311
|
function _temp2(value_0) {
|
|
@@ -13320,6 +13327,7 @@ var ds_number_input_module_default = {
|
|
|
13320
13327
|
"iconButton": "XMQUTG_iconButton",
|
|
13321
13328
|
"indicator": "XMQUTG_indicator",
|
|
13322
13329
|
"input": "XMQUTG_input",
|
|
13330
|
+
"large": "XMQUTG_large",
|
|
13323
13331
|
"small": "XMQUTG_small",
|
|
13324
13332
|
"textInputContainer": "XMQUTG_textInputContainer",
|
|
13325
13333
|
"trigger": "XMQUTG_trigger"
|
|
@@ -13485,6 +13493,7 @@ var ds_password_input_module_default = {
|
|
|
13485
13493
|
"iconButton": "v5YZUq_iconButton",
|
|
13486
13494
|
"indicator": "v5YZUq_indicator",
|
|
13487
13495
|
"input": "v5YZUq_input",
|
|
13496
|
+
"large": "v5YZUq_large",
|
|
13488
13497
|
"small": "v5YZUq_small",
|
|
13489
13498
|
"textInputContainer": "v5YZUq_textInputContainer",
|
|
13490
13499
|
"trigger": "v5YZUq_trigger"
|
|
@@ -14554,7 +14563,7 @@ const FileUploadItem = (t0) => {
|
|
|
14554
14563
|
} else t20 = $[46];
|
|
14555
14564
|
let t21;
|
|
14556
14565
|
if ($[47] !== errors || $[48] !== status) {
|
|
14557
|
-
t21 = status === "error" && errors?.length && errors.map(_temp$
|
|
14566
|
+
t21 = status === "error" && errors?.length && errors.map(_temp$4);
|
|
14558
14567
|
$[47] = errors;
|
|
14559
14568
|
$[48] = status;
|
|
14560
14569
|
$[49] = t21;
|
|
@@ -14597,7 +14606,7 @@ const FileUploadItem = (t0) => {
|
|
|
14597
14606
|
} else t23 = $[60];
|
|
14598
14607
|
return t23;
|
|
14599
14608
|
};
|
|
14600
|
-
function _temp$
|
|
14609
|
+
function _temp$4(error) {
|
|
14601
14610
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
14602
14611
|
className: file_upload_item_module_default.errorMessage,
|
|
14603
14612
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
@@ -17374,7 +17383,7 @@ const DsRadioGroupLegacy = (t0) => {
|
|
|
17374
17383
|
} else t3 = $[3];
|
|
17375
17384
|
let t4;
|
|
17376
17385
|
if ($[4] !== options) {
|
|
17377
|
-
t4 = options.map(_temp$
|
|
17386
|
+
t4 = options.map(_temp$3);
|
|
17378
17387
|
$[4] = options;
|
|
17379
17388
|
$[5] = t4;
|
|
17380
17389
|
} else t4 = $[5];
|
|
@@ -17417,7 +17426,7 @@ const DsRadioGroup = {
|
|
|
17417
17426
|
DsRadioGroup.Root.displayName = "DsRadioGroup.Root";
|
|
17418
17427
|
DsRadioGroup.Item.displayName = "DsRadioGroup.Item";
|
|
17419
17428
|
DsRadioGroupLegacy.displayName = "DsRadioGroupLegacy";
|
|
17420
|
-
function _temp$
|
|
17429
|
+
function _temp$3(option) {
|
|
17421
17430
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_radio_group.RadioGroup.Item, {
|
|
17422
17431
|
value: option.value,
|
|
17423
17432
|
disabled: option.disabled,
|
|
@@ -17677,7 +17686,7 @@ const useIsOverflowing = (text) => {
|
|
|
17677
17686
|
const observer = new ResizeObserver(measure);
|
|
17678
17687
|
observer.observe(element);
|
|
17679
17688
|
const frame = requestAnimationFrame(measure);
|
|
17680
|
-
document.fonts.ready.then(measure).catch(_temp$
|
|
17689
|
+
document.fonts.ready.then(measure).catch(_temp$2);
|
|
17681
17690
|
document.fonts.addEventListener("loadingdone", measure);
|
|
17682
17691
|
return () => {
|
|
17683
17692
|
cancelAnimationFrame(frame);
|
|
@@ -17705,7 +17714,7 @@ const useIsOverflowing = (text) => {
|
|
|
17705
17714
|
} else t2 = $[4];
|
|
17706
17715
|
return t2;
|
|
17707
17716
|
};
|
|
17708
|
-
function _temp$
|
|
17717
|
+
function _temp$2() {}
|
|
17709
17718
|
//#endregion
|
|
17710
17719
|
//#region src/components/ds-site-node/ds-site-node.module.scss
|
|
17711
17720
|
var ds_site_node_module_default = {
|
|
@@ -18067,6 +18076,254 @@ DsSkeleton.Text.displayName = "DsSkeleton.Text";
|
|
|
18067
18076
|
DsSkeleton.Circle.displayName = "DsSkeleton.Circle";
|
|
18068
18077
|
DsSkeleton.Rect.displayName = "DsSkeleton.Rect";
|
|
18069
18078
|
//#endregion
|
|
18079
|
+
//#region src/components/ds-slider/ds-slider.utils.ts
|
|
18080
|
+
/**
|
|
18081
|
+
* Normalizes the public value (a number or a `[min, max]` tuple) into the
|
|
18082
|
+
* `number[]` shape Ark's slider works with. Returns `undefined` when no value
|
|
18083
|
+
* is provided so controlled/uncontrolled detection stays intact.
|
|
18084
|
+
*/
|
|
18085
|
+
const toArray = (value) => {
|
|
18086
|
+
if (value === void 0) return;
|
|
18087
|
+
return Array.isArray(value) ? value : [value];
|
|
18088
|
+
};
|
|
18089
|
+
//#endregion
|
|
18090
|
+
//#region src/components/ds-slider/ds-slider.module.scss
|
|
18091
|
+
var ds_slider_module_default = {
|
|
18092
|
+
"control": "_7ZtIQW_control",
|
|
18093
|
+
"header": "_7ZtIQW_header",
|
|
18094
|
+
"large": "_7ZtIQW_large",
|
|
18095
|
+
"range": "_7ZtIQW_range",
|
|
18096
|
+
"root": "_7ZtIQW_root",
|
|
18097
|
+
"small": "_7ZtIQW_small",
|
|
18098
|
+
"thumb": "_7ZtIQW_thumb",
|
|
18099
|
+
"track": "_7ZtIQW_track",
|
|
18100
|
+
"valueText": "_7ZtIQW_valueText"
|
|
18101
|
+
};
|
|
18102
|
+
//#endregion
|
|
18103
|
+
//#region src/components/ds-slider/ds-slider.tsx
|
|
18104
|
+
/**
|
|
18105
|
+
* @summary Selects a numeric value or a numeric interval by dragging thumbs along a track.
|
|
18106
|
+
*
|
|
18107
|
+
* Use for picking a number or interval from a known continuous range where visual
|
|
18108
|
+
* adjustment beats typing (filter ranges, thresholds, capacity limits). For exact
|
|
18109
|
+
* numeric entry use DsNumberInput; for a few discrete options use DsSegmentGroup.
|
|
18110
|
+
*/
|
|
18111
|
+
const DsSlider$1 = (t0) => {
|
|
18112
|
+
const $ = (0, react_compiler_runtime.c)(69);
|
|
18113
|
+
const { ref, className, style, label, type: t1, size: t2, min: t3, max: t4, step: t5, value, defaultValue, name, disabled: t6, thumbLabels, formatValue: t7, onValueChange, onValueChangeEnd } = t0;
|
|
18114
|
+
const type = t1 === void 0 ? "value" : t1;
|
|
18115
|
+
const size = t2 === void 0 ? "medium" : t2;
|
|
18116
|
+
const min = t3 === void 0 ? 0 : t3;
|
|
18117
|
+
const max = t4 === void 0 ? 100 : t4;
|
|
18118
|
+
const step = t5 === void 0 ? 1 : t5;
|
|
18119
|
+
const disabled = t6 === void 0 ? false : t6;
|
|
18120
|
+
const formatValue = t7 === void 0 ? String : t7;
|
|
18121
|
+
const isRange = type === "range";
|
|
18122
|
+
let t8;
|
|
18123
|
+
if ($[0] !== value) {
|
|
18124
|
+
t8 = toArray(value);
|
|
18125
|
+
$[0] = value;
|
|
18126
|
+
$[1] = t8;
|
|
18127
|
+
} else t8 = $[1];
|
|
18128
|
+
const controlledValue = t8;
|
|
18129
|
+
let t9;
|
|
18130
|
+
if ($[2] !== isRange || $[3] !== max || $[4] !== min) {
|
|
18131
|
+
t9 = isRange ? [min, max] : [min];
|
|
18132
|
+
$[2] = isRange;
|
|
18133
|
+
$[3] = max;
|
|
18134
|
+
$[4] = min;
|
|
18135
|
+
$[5] = t9;
|
|
18136
|
+
} else t9 = $[5];
|
|
18137
|
+
const fallbackValue = t9;
|
|
18138
|
+
let t10;
|
|
18139
|
+
if ($[6] !== isRange || $[7] !== max || $[8] !== min) {
|
|
18140
|
+
t10 = (next) => isRange ? [next[0] ?? min, next[1] ?? max] : next[0] ?? min;
|
|
18141
|
+
$[6] = isRange;
|
|
18142
|
+
$[7] = max;
|
|
18143
|
+
$[8] = min;
|
|
18144
|
+
$[9] = t10;
|
|
18145
|
+
} else t10 = $[9];
|
|
18146
|
+
const toPublicValue = t10;
|
|
18147
|
+
let t11;
|
|
18148
|
+
if ($[10] !== controlledValue || $[11] !== onValueChange || $[12] !== toPublicValue) {
|
|
18149
|
+
t11 = controlledValue !== void 0 ? (next_0) => onValueChange?.(toPublicValue(next_0)) : void 0;
|
|
18150
|
+
$[10] = controlledValue;
|
|
18151
|
+
$[11] = onValueChange;
|
|
18152
|
+
$[12] = toPublicValue;
|
|
18153
|
+
$[13] = t11;
|
|
18154
|
+
} else t11 = $[13];
|
|
18155
|
+
let t12;
|
|
18156
|
+
if ($[14] !== defaultValue || $[15] !== fallbackValue) {
|
|
18157
|
+
t12 = toArray(defaultValue) ?? fallbackValue;
|
|
18158
|
+
$[14] = defaultValue;
|
|
18159
|
+
$[15] = fallbackValue;
|
|
18160
|
+
$[16] = t12;
|
|
18161
|
+
} else t12 = $[16];
|
|
18162
|
+
const [values, setValues] = useControlled(controlledValue, t11, t12);
|
|
18163
|
+
let t13;
|
|
18164
|
+
if ($[17] !== controlledValue || $[18] !== onValueChange || $[19] !== setValues || $[20] !== toPublicValue) {
|
|
18165
|
+
t13 = (details) => {
|
|
18166
|
+
setValues(details.value);
|
|
18167
|
+
if (controlledValue === void 0) onValueChange?.(toPublicValue(details.value));
|
|
18168
|
+
};
|
|
18169
|
+
$[17] = controlledValue;
|
|
18170
|
+
$[18] = onValueChange;
|
|
18171
|
+
$[19] = setValues;
|
|
18172
|
+
$[20] = toPublicValue;
|
|
18173
|
+
$[21] = t13;
|
|
18174
|
+
} else t13 = $[21];
|
|
18175
|
+
const handleValueChange = t13;
|
|
18176
|
+
let t14;
|
|
18177
|
+
if ($[22] !== formatValue || $[23] !== isRange || $[24] !== max || $[25] !== min || $[26] !== values[0] || $[27] !== values[1]) {
|
|
18178
|
+
t14 = isRange ? `${formatValue(values[0] ?? min)}-${formatValue(values[1] ?? max)}` : formatValue(values[0] ?? min);
|
|
18179
|
+
$[22] = formatValue;
|
|
18180
|
+
$[23] = isRange;
|
|
18181
|
+
$[24] = max;
|
|
18182
|
+
$[25] = min;
|
|
18183
|
+
$[26] = values[0];
|
|
18184
|
+
$[27] = values[1];
|
|
18185
|
+
$[28] = t14;
|
|
18186
|
+
} else t14 = $[28];
|
|
18187
|
+
const valueText = t14;
|
|
18188
|
+
const textColor = disabled ? "disabled" : "main";
|
|
18189
|
+
let t15;
|
|
18190
|
+
if ($[29] !== isRange || $[30] !== label || $[31] !== thumbLabels) {
|
|
18191
|
+
t15 = isRange ? thumbLabels : label ? [label] : thumbLabels;
|
|
18192
|
+
$[29] = isRange;
|
|
18193
|
+
$[30] = label;
|
|
18194
|
+
$[31] = thumbLabels;
|
|
18195
|
+
$[32] = t15;
|
|
18196
|
+
} else t15 = $[32];
|
|
18197
|
+
const thumbAriaLabels = t15;
|
|
18198
|
+
const t16 = size === "small";
|
|
18199
|
+
const t17 = size === "large";
|
|
18200
|
+
let t18;
|
|
18201
|
+
if ($[33] !== className || $[34] !== t16 || $[35] !== t17) {
|
|
18202
|
+
t18 = (0, classnames.default)(ds_slider_module_default.root, {
|
|
18203
|
+
[ds_slider_module_default.small]: t16,
|
|
18204
|
+
[ds_slider_module_default.large]: t17
|
|
18205
|
+
}, className);
|
|
18206
|
+
$[33] = className;
|
|
18207
|
+
$[34] = t16;
|
|
18208
|
+
$[35] = t17;
|
|
18209
|
+
$[36] = t18;
|
|
18210
|
+
} else t18 = $[36];
|
|
18211
|
+
const rootClass = t18;
|
|
18212
|
+
let t19;
|
|
18213
|
+
if ($[37] !== onValueChangeEnd || $[38] !== toPublicValue) {
|
|
18214
|
+
t19 = (details_0) => onValueChangeEnd?.(toPublicValue(details_0.value));
|
|
18215
|
+
$[37] = onValueChangeEnd;
|
|
18216
|
+
$[38] = toPublicValue;
|
|
18217
|
+
$[39] = t19;
|
|
18218
|
+
} else t19 = $[39];
|
|
18219
|
+
let t20;
|
|
18220
|
+
if ($[40] !== label || $[41] !== textColor) {
|
|
18221
|
+
t20 = label && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTypography, {
|
|
18222
|
+
variant: "body-sm-md",
|
|
18223
|
+
color: textColor,
|
|
18224
|
+
children: label
|
|
18225
|
+
});
|
|
18226
|
+
$[40] = label;
|
|
18227
|
+
$[41] = textColor;
|
|
18228
|
+
$[42] = t20;
|
|
18229
|
+
} else t20 = $[42];
|
|
18230
|
+
let t21;
|
|
18231
|
+
if ($[43] !== textColor || $[44] !== valueText) {
|
|
18232
|
+
t21 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTypography, {
|
|
18233
|
+
variant: "body-sm-md",
|
|
18234
|
+
color: textColor,
|
|
18235
|
+
className: ds_slider_module_default.valueText,
|
|
18236
|
+
children: valueText
|
|
18237
|
+
});
|
|
18238
|
+
$[43] = textColor;
|
|
18239
|
+
$[44] = valueText;
|
|
18240
|
+
$[45] = t21;
|
|
18241
|
+
} else t21 = $[45];
|
|
18242
|
+
let t22;
|
|
18243
|
+
if ($[46] !== t20 || $[47] !== t21) {
|
|
18244
|
+
t22 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
18245
|
+
className: ds_slider_module_default.header,
|
|
18246
|
+
children: [t20, t21]
|
|
18247
|
+
});
|
|
18248
|
+
$[46] = t20;
|
|
18249
|
+
$[47] = t21;
|
|
18250
|
+
$[48] = t22;
|
|
18251
|
+
} else t22 = $[48];
|
|
18252
|
+
let t23;
|
|
18253
|
+
if ($[49] === Symbol.for("react.memo_cache_sentinel")) {
|
|
18254
|
+
t23 = /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_slider.Slider.Track, {
|
|
18255
|
+
className: ds_slider_module_default.track,
|
|
18256
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_slider.Slider.Range, { className: ds_slider_module_default.range })
|
|
18257
|
+
});
|
|
18258
|
+
$[49] = t23;
|
|
18259
|
+
} else t23 = $[49];
|
|
18260
|
+
let t24;
|
|
18261
|
+
if ($[50] !== values) {
|
|
18262
|
+
t24 = values.map(_temp$1);
|
|
18263
|
+
$[50] = values;
|
|
18264
|
+
$[51] = t24;
|
|
18265
|
+
} else t24 = $[51];
|
|
18266
|
+
let t25;
|
|
18267
|
+
if ($[52] !== t24) {
|
|
18268
|
+
t25 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_slider.Slider.Control, {
|
|
18269
|
+
className: ds_slider_module_default.control,
|
|
18270
|
+
children: [t23, t24]
|
|
18271
|
+
});
|
|
18272
|
+
$[52] = t24;
|
|
18273
|
+
$[53] = t25;
|
|
18274
|
+
} else t25 = $[53];
|
|
18275
|
+
let t26;
|
|
18276
|
+
if ($[54] !== disabled || $[55] !== handleValueChange || $[56] !== max || $[57] !== min || $[58] !== name || $[59] !== ref || $[60] !== rootClass || $[61] !== step || $[62] !== style || $[63] !== t19 || $[64] !== t22 || $[65] !== t25 || $[66] !== thumbAriaLabels || $[67] !== values) {
|
|
18277
|
+
t26 = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(_ark_ui_react_slider.Slider.Root, {
|
|
18278
|
+
ref,
|
|
18279
|
+
className: rootClass,
|
|
18280
|
+
style,
|
|
18281
|
+
value: values,
|
|
18282
|
+
min,
|
|
18283
|
+
max,
|
|
18284
|
+
step,
|
|
18285
|
+
name,
|
|
18286
|
+
disabled,
|
|
18287
|
+
"aria-label": thumbAriaLabels,
|
|
18288
|
+
onValueChange: handleValueChange,
|
|
18289
|
+
onValueChangeEnd: t19,
|
|
18290
|
+
children: [t22, t25]
|
|
18291
|
+
});
|
|
18292
|
+
$[54] = disabled;
|
|
18293
|
+
$[55] = handleValueChange;
|
|
18294
|
+
$[56] = max;
|
|
18295
|
+
$[57] = min;
|
|
18296
|
+
$[58] = name;
|
|
18297
|
+
$[59] = ref;
|
|
18298
|
+
$[60] = rootClass;
|
|
18299
|
+
$[61] = step;
|
|
18300
|
+
$[62] = style;
|
|
18301
|
+
$[63] = t19;
|
|
18302
|
+
$[64] = t22;
|
|
18303
|
+
$[65] = t25;
|
|
18304
|
+
$[66] = thumbAriaLabels;
|
|
18305
|
+
$[67] = values;
|
|
18306
|
+
$[68] = t26;
|
|
18307
|
+
} else t26 = $[68];
|
|
18308
|
+
return t26;
|
|
18309
|
+
};
|
|
18310
|
+
DsSlider$1.displayName = "DsSlider";
|
|
18311
|
+
function _temp$1(_, index) {
|
|
18312
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_slider.Slider.Thumb, {
|
|
18313
|
+
index,
|
|
18314
|
+
className: ds_slider_module_default.thumb,
|
|
18315
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_ark_ui_react_slider.Slider.HiddenInput, {})
|
|
18316
|
+
}, index);
|
|
18317
|
+
}
|
|
18318
|
+
//#endregion
|
|
18319
|
+
//#region src/components/ds-slider/index.ts
|
|
18320
|
+
const DsSlider = withResponsiveProps(DsSlider$1, [
|
|
18321
|
+
"size",
|
|
18322
|
+
"step",
|
|
18323
|
+
"thumbLabels"
|
|
18324
|
+
]);
|
|
18325
|
+
DsSlider.displayName = "DsSlider";
|
|
18326
|
+
//#endregion
|
|
18070
18327
|
//#region src/components/ds-smart-tabs/ds-smart-tabs.module.scss
|
|
18071
18328
|
var ds_smart_tabs_module_default = {
|
|
18072
18329
|
"active": "yjt8Lq_active",
|
|
@@ -19971,6 +20228,8 @@ var ds_table_header_module_default = {
|
|
|
19971
20228
|
"groupStart": "-2rCNG_groupStart",
|
|
19972
20229
|
"header": "-2rCNG_header",
|
|
19973
20230
|
"headerCell": "-2rCNG_headerCell",
|
|
20231
|
+
"headerLabel": "-2rCNG_headerLabel",
|
|
20232
|
+
"headerLabelStack": "-2rCNG_headerLabelStack",
|
|
19974
20233
|
"headerRow": "-2rCNG_headerRow",
|
|
19975
20234
|
"headerRowNoBorder": "-2rCNG_headerRowNoBorder",
|
|
19976
20235
|
"headerRowVirtualized": "-2rCNG_headerRowVirtualized",
|
|
@@ -19996,16 +20255,15 @@ var ds_table_shared_module_default = {
|
|
|
19996
20255
|
"rotate-90": "WQ6Axa_rotate-90"
|
|
19997
20256
|
};
|
|
19998
20257
|
//#endregion
|
|
19999
|
-
//#region src/components/ds-table/
|
|
20000
|
-
|
|
20001
|
-
const
|
|
20002
|
-
|
|
20003
|
-
|
|
20004
|
-
|
|
20005
|
-
};
|
|
20258
|
+
//#region src/components/ds-table/hooks/use-editing-state.ts
|
|
20259
|
+
/** Shown when an async `onCellEdit` commit rejects with a non-`Error` reason. */
|
|
20260
|
+
const EDIT_FALLBACK_ERROR = "Save failed";
|
|
20261
|
+
const isThenable = (value) => typeof value === "object" && value !== null && typeof value.then === "function";
|
|
20262
|
+
/** Prefer a thrown `Error`'s message; fall back to a generic string otherwise. */
|
|
20263
|
+
const extractErrorMessage = (reason, fallback) => reason instanceof Error && reason.message ? reason.message : fallback;
|
|
20006
20264
|
/**
|
|
20007
20265
|
* Hoisted editing state for single-cell-at-a-time inline editing.
|
|
20008
|
-
*
|
|
20266
|
+
* Surfaced on DsTableContext so cell renderers and editors share one provider.
|
|
20009
20267
|
*/
|
|
20010
20268
|
const useEditingState = (onCellEdit, onCellValidate) => {
|
|
20011
20269
|
const [editing, setEditing] = (0, react.useState)(null);
|
|
@@ -20015,6 +20273,12 @@ const useEditingState = (onCellEdit, onCellValidate) => {
|
|
|
20015
20273
|
onCellValidateRef.current = onCellValidate;
|
|
20016
20274
|
const editingRef = (0, react.useRef)(editing);
|
|
20017
20275
|
editingRef.current = editing;
|
|
20276
|
+
const generationRef = (0, react.useRef)(0);
|
|
20277
|
+
const abortRef = (0, react.useRef)(null);
|
|
20278
|
+
const abortPending = (0, react.useCallback)(() => {
|
|
20279
|
+
abortRef.current?.abort();
|
|
20280
|
+
abortRef.current = null;
|
|
20281
|
+
}, []);
|
|
20018
20282
|
return {
|
|
20019
20283
|
editing,
|
|
20020
20284
|
beginEdit: (0, react.useCallback)((cell) => {
|
|
@@ -20022,56 +20286,230 @@ const useEditingState = (onCellEdit, onCellValidate) => {
|
|
|
20022
20286
|
if (current) {
|
|
20023
20287
|
if (current.cell.row.id === cell.row.id && current.cell.column.id === cell.column.id) return;
|
|
20024
20288
|
}
|
|
20289
|
+
abortPending();
|
|
20290
|
+
generationRef.current += 1;
|
|
20025
20291
|
setEditing({
|
|
20026
20292
|
cell,
|
|
20027
20293
|
draftValue: cell.getValue(),
|
|
20028
|
-
error: null
|
|
20294
|
+
error: null,
|
|
20295
|
+
pending: false
|
|
20029
20296
|
});
|
|
20030
|
-
}, []),
|
|
20297
|
+
}, [abortPending]),
|
|
20031
20298
|
setDraft: (0, react.useCallback)((value) => {
|
|
20032
20299
|
const current = editingRef.current;
|
|
20033
20300
|
if (!current) return;
|
|
20301
|
+
const error = onCellValidateRef.current?.(current.cell.row.original, current.cell.column.id, value) ?? null;
|
|
20034
20302
|
setEditing({
|
|
20035
20303
|
...current,
|
|
20036
20304
|
draftValue: value,
|
|
20037
|
-
error
|
|
20305
|
+
error
|
|
20038
20306
|
});
|
|
20039
20307
|
}, []),
|
|
20040
20308
|
commit: (0, react.useCallback)((overrideValue) => {
|
|
20041
20309
|
const current = editingRef.current;
|
|
20042
|
-
if (!current) return;
|
|
20310
|
+
if (!current || current.pending) return;
|
|
20043
20311
|
const valueToCommit = overrideValue !== void 0 ? overrideValue : current.draftValue;
|
|
20044
|
-
const
|
|
20045
|
-
if (
|
|
20312
|
+
const validationError = onCellValidateRef.current?.(current.cell.row.original, current.cell.column.id, valueToCommit) ?? null;
|
|
20313
|
+
if (validationError !== null) {
|
|
20046
20314
|
setEditing({
|
|
20047
20315
|
...current,
|
|
20048
20316
|
draftValue: valueToCommit,
|
|
20049
|
-
error
|
|
20317
|
+
error: validationError,
|
|
20318
|
+
pending: false
|
|
20050
20319
|
});
|
|
20051
20320
|
return;
|
|
20052
20321
|
}
|
|
20053
|
-
|
|
20054
|
-
|
|
20055
|
-
|
|
20322
|
+
generationRef.current += 1;
|
|
20323
|
+
const token = generationRef.current;
|
|
20324
|
+
abortPending();
|
|
20325
|
+
const controller = new AbortController();
|
|
20326
|
+
abortRef.current = controller;
|
|
20327
|
+
const { signal } = controller;
|
|
20328
|
+
const isStale = () => generationRef.current !== token;
|
|
20329
|
+
const settle = () => {
|
|
20330
|
+
if (abortRef.current === controller) abortRef.current = null;
|
|
20331
|
+
};
|
|
20332
|
+
const showError = (error) => {
|
|
20333
|
+
settle();
|
|
20334
|
+
if (isStale()) return;
|
|
20335
|
+
const live = editingRef.current;
|
|
20336
|
+
setEditing(live ? {
|
|
20337
|
+
...live,
|
|
20338
|
+
draftValue: valueToCommit,
|
|
20339
|
+
error,
|
|
20340
|
+
pending: false
|
|
20341
|
+
} : null);
|
|
20342
|
+
};
|
|
20343
|
+
const editResult = onCellEditRef.current?.(current.cell.row.original, current.cell.column.id, valueToCommit, signal);
|
|
20344
|
+
const applyEditResult = (error) => {
|
|
20345
|
+
if (error !== null) {
|
|
20346
|
+
showError(error);
|
|
20347
|
+
return;
|
|
20348
|
+
}
|
|
20349
|
+
settle();
|
|
20350
|
+
if (isStale()) return;
|
|
20351
|
+
setEditing(null);
|
|
20352
|
+
};
|
|
20353
|
+
if (!isThenable(editResult)) {
|
|
20354
|
+
applyEditResult(editResult ?? null);
|
|
20355
|
+
return;
|
|
20356
|
+
}
|
|
20357
|
+
setEditing({
|
|
20358
|
+
...current,
|
|
20359
|
+
draftValue: valueToCommit,
|
|
20360
|
+
error: null,
|
|
20361
|
+
pending: true
|
|
20362
|
+
});
|
|
20363
|
+
editResult.then((value) => {
|
|
20364
|
+
applyEditResult(value ?? null);
|
|
20365
|
+
}, (reason) => {
|
|
20366
|
+
applyEditResult(extractErrorMessage(reason, EDIT_FALLBACK_ERROR));
|
|
20367
|
+
});
|
|
20368
|
+
}, [abortPending]),
|
|
20056
20369
|
cancel: (0, react.useCallback)(() => {
|
|
20370
|
+
abortPending();
|
|
20371
|
+
generationRef.current += 1;
|
|
20057
20372
|
setEditing(null);
|
|
20058
|
-
}, [])
|
|
20373
|
+
}, [abortPending])
|
|
20059
20374
|
};
|
|
20060
20375
|
};
|
|
20061
20376
|
//#endregion
|
|
20377
|
+
//#region src/components/ds-table/context/ds-table-context.tsx
|
|
20378
|
+
const DsTableContext = (0, react.createContext)(null);
|
|
20379
|
+
const useDsTableContext = () => {
|
|
20380
|
+
const context = (0, react.useContext)(DsTableContext);
|
|
20381
|
+
if (!context) throw new Error("useDsTableContext must be used within DsTable");
|
|
20382
|
+
return context;
|
|
20383
|
+
};
|
|
20384
|
+
/**
|
|
20385
|
+
* Assembles {@link DsTableContext} from public table props plus derived grouping
|
|
20386
|
+
* and resize slices. Owns inline-edit state. Picks context fields from
|
|
20387
|
+
* `tableProps` and ignores the rest (`columns`, `data`, etc.).
|
|
20388
|
+
*/
|
|
20389
|
+
const DsTableContextProvider = ({ tableProps, derived, children }) => {
|
|
20390
|
+
const { stickyHeader, bordered, fullWidth, rowSize, expandable, selectable, reorderable, showSelectAllCheckbox, loading, onRowClick, onRowDoubleClick, primaryRowActions, secondaryRowActions, renderExpandedRow, virtualized, activeRowId, locale, onCellEdit, onCellValidate } = tableProps;
|
|
20391
|
+
const { collapsedColumnGroups, onToggleColumnGroup } = derived.grouping;
|
|
20392
|
+
const { resizableColumns, resizeSizingReady, resizeContainerRef, onResizeHover, onResizeDragStart, onResizeReset, onResizeKeyboardNudge } = derived.resize;
|
|
20393
|
+
const { editing, beginEdit, setDraft, commit, cancel } = useEditingState(onCellEdit, onCellValidate);
|
|
20394
|
+
const contextValue = (0, react.useMemo)(() => ({
|
|
20395
|
+
stickyHeader,
|
|
20396
|
+
bordered,
|
|
20397
|
+
fullWidth,
|
|
20398
|
+
rowSize,
|
|
20399
|
+
expandable,
|
|
20400
|
+
selectable,
|
|
20401
|
+
reorderable,
|
|
20402
|
+
showSelectAllCheckbox,
|
|
20403
|
+
loading,
|
|
20404
|
+
onRowClick: loading ? void 0 : onRowClick,
|
|
20405
|
+
onRowDoubleClick: loading ? void 0 : onRowDoubleClick,
|
|
20406
|
+
primaryRowActions,
|
|
20407
|
+
secondaryRowActions,
|
|
20408
|
+
renderExpandedRow,
|
|
20409
|
+
virtualized,
|
|
20410
|
+
activeRowId,
|
|
20411
|
+
collapsedColumnGroups,
|
|
20412
|
+
onToggleColumnGroup,
|
|
20413
|
+
locale,
|
|
20414
|
+
onCellEdit,
|
|
20415
|
+
resizableColumns,
|
|
20416
|
+
resizeSizingReady,
|
|
20417
|
+
resizeContainerRef,
|
|
20418
|
+
onResizeHover,
|
|
20419
|
+
onResizeDragStart,
|
|
20420
|
+
onResizeReset,
|
|
20421
|
+
onResizeKeyboardNudge,
|
|
20422
|
+
editing,
|
|
20423
|
+
beginEdit,
|
|
20424
|
+
setDraft,
|
|
20425
|
+
commit,
|
|
20426
|
+
cancel
|
|
20427
|
+
}), [
|
|
20428
|
+
stickyHeader,
|
|
20429
|
+
bordered,
|
|
20430
|
+
fullWidth,
|
|
20431
|
+
rowSize,
|
|
20432
|
+
expandable,
|
|
20433
|
+
selectable,
|
|
20434
|
+
reorderable,
|
|
20435
|
+
showSelectAllCheckbox,
|
|
20436
|
+
loading,
|
|
20437
|
+
onRowClick,
|
|
20438
|
+
onRowDoubleClick,
|
|
20439
|
+
primaryRowActions,
|
|
20440
|
+
secondaryRowActions,
|
|
20441
|
+
renderExpandedRow,
|
|
20442
|
+
virtualized,
|
|
20443
|
+
activeRowId,
|
|
20444
|
+
collapsedColumnGroups,
|
|
20445
|
+
onToggleColumnGroup,
|
|
20446
|
+
locale,
|
|
20447
|
+
onCellEdit,
|
|
20448
|
+
resizableColumns,
|
|
20449
|
+
resizeSizingReady,
|
|
20450
|
+
resizeContainerRef,
|
|
20451
|
+
onResizeHover,
|
|
20452
|
+
onResizeDragStart,
|
|
20453
|
+
onResizeReset,
|
|
20454
|
+
onResizeKeyboardNudge,
|
|
20455
|
+
editing,
|
|
20456
|
+
beginEdit,
|
|
20457
|
+
setDraft,
|
|
20458
|
+
commit,
|
|
20459
|
+
cancel
|
|
20460
|
+
]);
|
|
20461
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableContext.Provider, {
|
|
20462
|
+
value: contextValue,
|
|
20463
|
+
children
|
|
20464
|
+
});
|
|
20465
|
+
};
|
|
20466
|
+
DsTableContextProvider.displayName = "DsTableContextProvider";
|
|
20467
|
+
/**
|
|
20468
|
+
* Column id used for the synthetic expander column injected when `expandable` is set.
|
|
20469
|
+
*/
|
|
20470
|
+
const EXPANDER_COLUMN_ID = "expander";
|
|
20471
|
+
/**
|
|
20472
|
+
* Column id used for the synthetic selection column injected when `selectable` is set.
|
|
20473
|
+
*/
|
|
20474
|
+
const SELECT_COLUMN_ID = "select";
|
|
20475
|
+
/**
|
|
20476
|
+
* Column id used for the synthetic reorder column injected when `reorderable` is set
|
|
20477
|
+
* (non-virtualized tables only).
|
|
20478
|
+
*/
|
|
20479
|
+
const REORDER_COLUMN_ID = "reorder";
|
|
20480
|
+
/**
|
|
20481
|
+
* Injected utility leaf ids (`select`, `expander`, `reorder`). Present in internal
|
|
20482
|
+
* sizing for layout; omitted from the public `onColumnSizingChange` payload.
|
|
20483
|
+
*/
|
|
20484
|
+
const BUILTIN_COLUMN_IDS = Object.freeze(/* @__PURE__ */ new Set([
|
|
20485
|
+
SELECT_COLUMN_ID,
|
|
20486
|
+
EXPANDER_COLUMN_ID,
|
|
20487
|
+
REORDER_COLUMN_ID
|
|
20488
|
+
]));
|
|
20489
|
+
//#endregion
|
|
20062
20490
|
//#region src/components/ds-table/utils/column-size.ts
|
|
20491
|
+
const DEFAULT_MAX_COLUMN_SIZE = Number.MAX_SAFE_INTEGER;
|
|
20063
20492
|
/**
|
|
20064
|
-
*
|
|
20493
|
+
* Whether a column should use a fixed width rather than fill (`flex: 1`).
|
|
20065
20494
|
*
|
|
20066
|
-
*
|
|
20067
|
-
*
|
|
20068
|
-
*
|
|
20495
|
+
* True when the user has resized it (`columnSizing` entry), or when the raw
|
|
20496
|
+
* column def authored `size` (`meta.hasExplicitSize`). TanStack merges a
|
|
20497
|
+
* default size of 150 onto every column, so `columnDef.size` alone cannot
|
|
20498
|
+
* tell authored 150px from an unsized fill column.
|
|
20499
|
+
*/
|
|
20500
|
+
const isExplicitColumnWidth = (column, columnSizing) => {
|
|
20501
|
+
if (columnSizing[column.id] !== void 0) return true;
|
|
20502
|
+
return column.columnDef.meta?.hasExplicitSize === true;
|
|
20503
|
+
};
|
|
20504
|
+
/**
|
|
20505
|
+
* Style for a table column/cell based on its size and whether that size is explicit.
|
|
20069
20506
|
*
|
|
20070
|
-
*
|
|
20071
|
-
*
|
|
20507
|
+
* Explicit columns get a fixed `width` plus `minWidth` and `flexShrink: 0` so they
|
|
20508
|
+
* enforce horizontal overflow on the table container. Fill columns grow evenly via
|
|
20509
|
+
* `flex: 1`.
|
|
20072
20510
|
*/
|
|
20073
|
-
const getColumnSizeStyle = (columnSize) => {
|
|
20074
|
-
if (
|
|
20511
|
+
const getColumnSizeStyle = (columnSize, isExplicit) => {
|
|
20512
|
+
if (isExplicit) return {
|
|
20075
20513
|
width: columnSize,
|
|
20076
20514
|
minWidth: columnSize,
|
|
20077
20515
|
flexShrink: 0
|
|
@@ -20081,35 +20519,116 @@ const getColumnSizeStyle = (columnSize) => {
|
|
|
20081
20519
|
minWidth: 0
|
|
20082
20520
|
};
|
|
20083
20521
|
};
|
|
20522
|
+
const getHeaderSizeCssVar = (headerId) => `--header-${headerId}-size`;
|
|
20523
|
+
const getColumnSizeCssVar = (columnId) => `--col-${columnId}-size`;
|
|
20084
20524
|
/**
|
|
20085
|
-
*
|
|
20525
|
+
* Pixel width via a CSS variable on an ancestor, so frozen (memoized) cells still
|
|
20526
|
+
* track live resize without React reconciling each row.
|
|
20086
20527
|
*/
|
|
20087
|
-
const
|
|
20528
|
+
const getResizableHeaderStyle = (headerId) => ({
|
|
20529
|
+
width: `calc(var(${getHeaderSizeCssVar(headerId)}) * 1px)`,
|
|
20530
|
+
minWidth: `calc(var(${getHeaderSizeCssVar(headerId)}) * 1px)`,
|
|
20531
|
+
flexShrink: 0
|
|
20532
|
+
});
|
|
20533
|
+
const getResizableColumnStyle = (columnId) => ({
|
|
20534
|
+
width: `calc(var(${getColumnSizeCssVar(columnId)}) * 1px)`,
|
|
20535
|
+
minWidth: `calc(var(${getColumnSizeCssVar(columnId)}) * 1px)`,
|
|
20536
|
+
flexShrink: 0
|
|
20537
|
+
});
|
|
20538
|
+
const getHeaderCellSizeStyle = (headerId, columnSize, isExplicit, resizeSizingReady) => {
|
|
20539
|
+
if (resizeSizingReady) return getResizableHeaderStyle(headerId);
|
|
20540
|
+
return getColumnSizeStyle(columnSize, isExplicit);
|
|
20541
|
+
};
|
|
20542
|
+
const getBodyCellSizeStyle = (columnId, columnSize, isExplicit, resizeSizingReady) => {
|
|
20543
|
+
if (resizeSizingReady) return getResizableColumnStyle(columnId);
|
|
20544
|
+
return getColumnSizeStyle(columnSize, isExplicit);
|
|
20545
|
+
};
|
|
20088
20546
|
/**
|
|
20089
|
-
*
|
|
20547
|
+
* TanStack v8 performant-resize map: header ids for header cells, column ids for
|
|
20548
|
+
* body cells. Values are unitless px; consumers use `calc(var(...) * 1px)`.
|
|
20090
20549
|
*/
|
|
20091
|
-
const
|
|
20550
|
+
const getColumnSizeCssVars = (headers) => {
|
|
20551
|
+
const colSizes = {};
|
|
20552
|
+
for (const header of headers) {
|
|
20553
|
+
colSizes[getHeaderSizeCssVar(header.id)] = header.getSize();
|
|
20554
|
+
colSizes[getColumnSizeCssVar(header.column.id)] = header.column.getSize();
|
|
20555
|
+
}
|
|
20556
|
+
return colSizes;
|
|
20557
|
+
};
|
|
20092
20558
|
/**
|
|
20093
|
-
*
|
|
20094
|
-
* (
|
|
20559
|
+
* TanStack `getSize()` formula: `min(max(minSize, width), maxSize)`. Defaults
|
|
20560
|
+
* match DsTable (`RESIZE_MIN_COLUMN_WIDTH`, unlimited max).
|
|
20095
20561
|
*/
|
|
20096
|
-
const
|
|
20562
|
+
const clampColumnSize = (width, minSize = 52, maxSize = DEFAULT_MAX_COLUMN_SIZE) => Math.min(Math.max(minSize, width), maxSize);
|
|
20563
|
+
/**
|
|
20564
|
+
* Clamps every finite entry in `sizing` to that leaf's `minSize` / `maxSize`.
|
|
20565
|
+
* Non-finite widths are omitted so they do not poison state. Ids missing from
|
|
20566
|
+
* `columns` use the table defaults.
|
|
20567
|
+
*/
|
|
20568
|
+
const clampColumnSizing = (sizing, columns) => {
|
|
20569
|
+
const boundsById = new Map(columns.map((column) => [column.id, column.columnDef]));
|
|
20570
|
+
const next = {};
|
|
20571
|
+
for (const [id, width] of Object.entries(sizing)) {
|
|
20572
|
+
if (!Number.isFinite(width)) continue;
|
|
20573
|
+
const bounds = boundsById.get(id);
|
|
20574
|
+
next[id] = clampColumnSize(width, bounds?.minSize ?? 52, bounds?.maxSize ?? DEFAULT_MAX_COLUMN_SIZE);
|
|
20575
|
+
}
|
|
20576
|
+
return next;
|
|
20577
|
+
};
|
|
20578
|
+
/**
|
|
20579
|
+
* Width to restore on double-click: explicit `columnDef.size`, otherwise the
|
|
20580
|
+
* snapshotted measured width.
|
|
20581
|
+
*/
|
|
20582
|
+
const getResizeOriginSize = (column, measuredWidth) => {
|
|
20583
|
+
if (isExplicitColumnWidth(column, {})) return column.columnDef.size;
|
|
20584
|
+
return measuredWidth;
|
|
20585
|
+
};
|
|
20586
|
+
/**
|
|
20587
|
+
* Measured leaf header widths keyed by column id. Group header cells share
|
|
20588
|
+
* `data-column-id` with a different id, so only `leafColumnIds` are read.
|
|
20589
|
+
*/
|
|
20590
|
+
const measureLeafHeaderWidths = (tableEl, leafColumnIds) => {
|
|
20591
|
+
const widths = {};
|
|
20592
|
+
for (const id of leafColumnIds) {
|
|
20593
|
+
const cell = tableEl.querySelector(`thead th[data-column-id="${CSS.escape(id)}"]`);
|
|
20594
|
+
if (cell instanceof HTMLElement) widths[id] = cell.getBoundingClientRect().width;
|
|
20595
|
+
}
|
|
20596
|
+
return widths;
|
|
20597
|
+
};
|
|
20598
|
+
/**
|
|
20599
|
+
* Sizing entries for leaves that are not yet in `existing`. Does not overwrite
|
|
20600
|
+
* user-resized (or previously snapshotted) ids.
|
|
20601
|
+
*/
|
|
20602
|
+
const collectMissingLeafSizing = (measured, existing) => {
|
|
20603
|
+
const next = {};
|
|
20604
|
+
for (const [id, width] of Object.entries(measured)) if (existing[id] === void 0) next[id] = Math.round(width);
|
|
20605
|
+
return next;
|
|
20606
|
+
};
|
|
20607
|
+
/**
|
|
20608
|
+
* Copy of `columnSizing` without injected utility leaves. Use at the public
|
|
20609
|
+
* `onColumnSizingChange` boundary so consumers persist only their own columns.
|
|
20610
|
+
*/
|
|
20611
|
+
const omitBuiltinColumnSizing = (columnSizing) => {
|
|
20612
|
+
const next = {};
|
|
20613
|
+
for (const [id, size] of Object.entries(columnSizing)) if (!BUILTIN_COLUMN_IDS.has(id)) next[id] = size;
|
|
20614
|
+
return next;
|
|
20615
|
+
};
|
|
20097
20616
|
//#endregion
|
|
20098
20617
|
//#region src/components/ds-table/grouping/utils/column-group.ts
|
|
20099
20618
|
/**
|
|
20100
20619
|
* Builds the flex style for a group header cell so it lines up with the combined
|
|
20101
20620
|
* width of its visible leaf columns.
|
|
20102
20621
|
*
|
|
20103
|
-
* Fixed-width leaves contribute to `flexBasis`;
|
|
20104
|
-
*
|
|
20105
|
-
*
|
|
20622
|
+
* Fixed-width leaves contribute to `flexBasis`; fill leaves each add one unit of
|
|
20623
|
+
* `flexGrow`, mirroring how {@link getColumnSizeStyle} sizes leaf cells so both
|
|
20624
|
+
* header rows distribute free space identically.
|
|
20106
20625
|
*/
|
|
20107
|
-
const getGroupColumnSizeStyle = (leafColumns) => {
|
|
20626
|
+
const getGroupColumnSizeStyle = (leafColumns, columnSizing) => {
|
|
20108
20627
|
let fixedWidth = 0;
|
|
20109
20628
|
let flexCount = 0;
|
|
20110
20629
|
for (const leaf of leafColumns) {
|
|
20111
20630
|
const size = leaf.getSize();
|
|
20112
|
-
if (
|
|
20631
|
+
if (isExplicitColumnWidth(leaf, columnSizing)) fixedWidth += size;
|
|
20113
20632
|
else flexCount += 1;
|
|
20114
20633
|
}
|
|
20115
20634
|
if (flexCount === 0) return {
|
|
@@ -20197,12 +20716,156 @@ const useColumnGroups = ({ columns, collapsedColumnGroups, onCollapsedColumnGrou
|
|
|
20197
20716
|
*/
|
|
20198
20717
|
const defaultDsTableLocale = Object.freeze({
|
|
20199
20718
|
collapseColumnGroup: "Collapse column group",
|
|
20200
|
-
expandColumnGroup: "Expand column group"
|
|
20719
|
+
expandColumnGroup: "Expand column group",
|
|
20720
|
+
resizeColumn: "Resize column"
|
|
20201
20721
|
});
|
|
20202
20722
|
//#endregion
|
|
20203
|
-
//#region src/components/ds-table/components/ds-table-
|
|
20204
|
-
var
|
|
20205
|
-
|
|
20723
|
+
//#region src/components/ds-table/components/ds-table-resize-handle/ds-table-resize-handle.module.scss
|
|
20724
|
+
var ds_table_resize_handle_module_default = { "resizeHandle": "vDdhQW_resizeHandle" };
|
|
20725
|
+
//#endregion
|
|
20726
|
+
//#region src/components/ds-table/components/ds-table-resize-handle/ds-table-resize-handle.tsx
|
|
20727
|
+
const clientPointFromEvent = (event) => {
|
|
20728
|
+
if (event instanceof MouseEvent) return {
|
|
20729
|
+
x: event.clientX,
|
|
20730
|
+
y: event.clientY
|
|
20731
|
+
};
|
|
20732
|
+
if (typeof TouchEvent !== "undefined" && event instanceof TouchEvent) {
|
|
20733
|
+
const touch = event.changedTouches[0];
|
|
20734
|
+
return touch ? {
|
|
20735
|
+
x: touch.clientX,
|
|
20736
|
+
y: touch.clientY
|
|
20737
|
+
} : null;
|
|
20738
|
+
}
|
|
20739
|
+
return null;
|
|
20740
|
+
};
|
|
20741
|
+
/**
|
|
20742
|
+
* Handle straddling the right edge of a resizable header cell.
|
|
20743
|
+
*
|
|
20744
|
+
* Drag is TanStack v8 `header.getResizeHandler()`. Hover drives the full-height
|
|
20745
|
+
* overlay; double-click restores snapshot origin widths for this header's
|
|
20746
|
+
* leaves. As a focusable `separator`, Arrow keys nudge the width (Shift for a
|
|
20747
|
+
* larger step) for keyboard operability (WCAG 2.1.1).
|
|
20748
|
+
*/
|
|
20749
|
+
const DsTableResizeHandle = ({ header }) => {
|
|
20750
|
+
const { resizeContainerRef, onResizeHover, onResizeDragStart, onResizeReset, onResizeKeyboardNudge, locale } = useDsTableContext();
|
|
20751
|
+
const handleRef = (0, react.useRef)(null);
|
|
20752
|
+
const isPointerOverRef = (0, react.useRef)(false);
|
|
20753
|
+
const detachDragEndRef = (0, react.useRef)(null);
|
|
20754
|
+
(0, react.useEffect)(() => () => {
|
|
20755
|
+
detachDragEndRef.current?.();
|
|
20756
|
+
}, []);
|
|
20757
|
+
const label = {
|
|
20758
|
+
...defaultDsTableLocale,
|
|
20759
|
+
...locale
|
|
20760
|
+
}.resizeColumn;
|
|
20761
|
+
const measureCellRightOffset = () => {
|
|
20762
|
+
const containerEl = resizeContainerRef?.current;
|
|
20763
|
+
const cellEl = handleRef.current?.closest("th");
|
|
20764
|
+
if (!containerEl || !cellEl) return null;
|
|
20765
|
+
return cellEl.getBoundingClientRect().right - containerEl.getBoundingClientRect().left + containerEl.scrollLeft;
|
|
20766
|
+
};
|
|
20767
|
+
const reportHover = () => {
|
|
20768
|
+
const offset = measureCellRightOffset();
|
|
20769
|
+
if (offset === null) return;
|
|
20770
|
+
onResizeHover?.(header.column.id, offset);
|
|
20771
|
+
};
|
|
20772
|
+
const clearHover = () => {
|
|
20773
|
+
isPointerOverRef.current = false;
|
|
20774
|
+
onResizeHover?.(null, null);
|
|
20775
|
+
};
|
|
20776
|
+
const syncHoverAtPoint = (clientX, clientY) => {
|
|
20777
|
+
const handleEl = handleRef.current;
|
|
20778
|
+
const hit = (handleEl?.ownerDocument ?? document).elementFromPoint(clientX, clientY);
|
|
20779
|
+
if (handleEl && hit && (hit === handleEl || handleEl.contains(hit))) {
|
|
20780
|
+
isPointerOverRef.current = true;
|
|
20781
|
+
reportHover();
|
|
20782
|
+
return;
|
|
20783
|
+
}
|
|
20784
|
+
clearHover();
|
|
20785
|
+
};
|
|
20786
|
+
const attachDragEndListeners = () => {
|
|
20787
|
+
detachDragEndRef.current?.();
|
|
20788
|
+
const doc = handleRef.current?.ownerDocument ?? document;
|
|
20789
|
+
const onDragEnd = (event) => {
|
|
20790
|
+
detachDragEndRef.current?.();
|
|
20791
|
+
detachDragEndRef.current = null;
|
|
20792
|
+
const point = clientPointFromEvent(event);
|
|
20793
|
+
clearHover();
|
|
20794
|
+
(handleRef.current?.ownerDocument.defaultView ?? window).requestAnimationFrame(() => {
|
|
20795
|
+
if (!point) return;
|
|
20796
|
+
syncHoverAtPoint(point.x, point.y);
|
|
20797
|
+
});
|
|
20798
|
+
};
|
|
20799
|
+
doc.addEventListener("mouseup", onDragEnd);
|
|
20800
|
+
doc.addEventListener("touchend", onDragEnd);
|
|
20801
|
+
detachDragEndRef.current = () => {
|
|
20802
|
+
doc.removeEventListener("mouseup", onDragEnd);
|
|
20803
|
+
doc.removeEventListener("touchend", onDragEnd);
|
|
20804
|
+
};
|
|
20805
|
+
};
|
|
20806
|
+
const handlePointerEnter = () => {
|
|
20807
|
+
isPointerOverRef.current = true;
|
|
20808
|
+
reportHover();
|
|
20809
|
+
};
|
|
20810
|
+
const handlePointerLeave = () => {
|
|
20811
|
+
clearHover();
|
|
20812
|
+
};
|
|
20813
|
+
const startDrag = () => {
|
|
20814
|
+
const offset = measureCellRightOffset();
|
|
20815
|
+
if (offset !== null) onResizeDragStart?.(offset);
|
|
20816
|
+
};
|
|
20817
|
+
const handlePointerDown = (event) => {
|
|
20818
|
+
if (event.pointerType === "touch") return;
|
|
20819
|
+
event.stopPropagation();
|
|
20820
|
+
startDrag();
|
|
20821
|
+
header.getResizeHandler(handleRef.current?.ownerDocument ?? document)(event);
|
|
20822
|
+
attachDragEndListeners();
|
|
20823
|
+
};
|
|
20824
|
+
const handleTouchStart = (event) => {
|
|
20825
|
+
event.stopPropagation();
|
|
20826
|
+
startDrag();
|
|
20827
|
+
header.getResizeHandler(handleRef.current?.ownerDocument ?? document)(event);
|
|
20828
|
+
attachDragEndListeners();
|
|
20829
|
+
};
|
|
20830
|
+
const handleReset = (event) => {
|
|
20831
|
+
event.preventDefault();
|
|
20832
|
+
event.stopPropagation();
|
|
20833
|
+
const leafIds = header.column.getLeafColumns().map((column) => column.id);
|
|
20834
|
+
onResizeReset?.(leafIds);
|
|
20835
|
+
if (isPointerOverRef.current) reportHover();
|
|
20836
|
+
else clearHover();
|
|
20837
|
+
};
|
|
20838
|
+
const handleKeyDown = (event) => {
|
|
20839
|
+
if (event.key !== "ArrowLeft" && event.key !== "ArrowRight") return;
|
|
20840
|
+
event.preventDefault();
|
|
20841
|
+
event.stopPropagation();
|
|
20842
|
+
const step = event.shiftKey ? 40 : 10;
|
|
20843
|
+
const delta = event.key === "ArrowRight" ? step : -step;
|
|
20844
|
+
onResizeKeyboardNudge?.(header.column.id, delta);
|
|
20845
|
+
};
|
|
20846
|
+
const isLeaf = header.subHeaders.length === 0;
|
|
20847
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
20848
|
+
ref: handleRef,
|
|
20849
|
+
role: "separator",
|
|
20850
|
+
"aria-orientation": "vertical",
|
|
20851
|
+
"aria-label": label,
|
|
20852
|
+
tabIndex: 0,
|
|
20853
|
+
"aria-valuenow": Math.round(header.getSize()),
|
|
20854
|
+
"aria-valuemin": isLeaf ? header.column.columnDef.minSize ?? 52 : void 0,
|
|
20855
|
+
className: ds_table_resize_handle_module_default.resizeHandle,
|
|
20856
|
+
onPointerDown: handlePointerDown,
|
|
20857
|
+
onPointerEnter: handlePointerEnter,
|
|
20858
|
+
onPointerLeave: handlePointerLeave,
|
|
20859
|
+
onTouchStart: handleTouchStart,
|
|
20860
|
+
onClick: (event) => event.stopPropagation(),
|
|
20861
|
+
onDoubleClick: handleReset,
|
|
20862
|
+
onKeyDown: handleKeyDown
|
|
20863
|
+
});
|
|
20864
|
+
};
|
|
20865
|
+
//#endregion
|
|
20866
|
+
//#region src/components/ds-table/components/ds-table-group-header-cell/ds-table-group-header-cell.module.scss
|
|
20867
|
+
var ds_table_group_header_cell_module_default = {
|
|
20868
|
+
"collapseToggle": "HuJ4KG_collapseToggle",
|
|
20206
20869
|
"groupHeaderCell": "HuJ4KG_groupHeaderCell",
|
|
20207
20870
|
"groupHeaderContent": "HuJ4KG_groupHeaderContent",
|
|
20208
20871
|
"groupLabel": "HuJ4KG_groupLabel"
|
|
@@ -20210,22 +20873,25 @@ var ds_table_group_header_cell_module_default = {
|
|
|
20210
20873
|
//#endregion
|
|
20211
20874
|
//#region src/components/ds-table/components/ds-table-group-header-cell/ds-table-group-header-cell.tsx
|
|
20212
20875
|
const DsTableGroupHeaderCell = ({ header }) => {
|
|
20213
|
-
const { collapsedColumnGroups, onToggleColumnGroup, locale } = useDsTableContext();
|
|
20876
|
+
const { collapsedColumnGroups, onToggleColumnGroup, locale, resizableColumns, resizeSizingReady } = useDsTableContext();
|
|
20214
20877
|
const groupId = header.column.id;
|
|
20215
|
-
const
|
|
20878
|
+
const visibleLeafColumns = header.column.getLeafColumns().filter((leaf) => leaf.getIsVisible());
|
|
20879
|
+
const groupStyle = resizeSizingReady ? getResizableHeaderStyle(header.id) : getGroupColumnSizeStyle(visibleLeafColumns, {});
|
|
20216
20880
|
const isCollapsible = header.column.columnDef.meta?.group?.collapsible ?? false;
|
|
20217
20881
|
const isCollapsed = collapsedColumnGroups?.includes(groupId) ?? false;
|
|
20882
|
+
const canResize = resizableColumns && !isCollapsed && header.column.getCanResize();
|
|
20218
20883
|
const mergedLocale = {
|
|
20219
20884
|
...defaultDsTableLocale,
|
|
20220
20885
|
...locale
|
|
20221
20886
|
};
|
|
20222
20887
|
const toggleLabel = isCollapsed ? mergedLocale.expandColumnGroup : mergedLocale.collapseColumnGroup;
|
|
20223
20888
|
const handleToggle = () => onToggleColumnGroup?.(groupId);
|
|
20224
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.
|
|
20889
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(TableHead, {
|
|
20890
|
+
"data-column-id": groupId,
|
|
20225
20891
|
className: ds_table_group_header_cell_module_default.groupHeaderCell,
|
|
20226
20892
|
style: groupStyle,
|
|
20227
20893
|
colSpan: header.colSpan,
|
|
20228
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
20894
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
20229
20895
|
className: ds_table_group_header_cell_module_default.groupHeaderContent,
|
|
20230
20896
|
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
20231
20897
|
className: ds_table_group_header_cell_module_default.groupLabel,
|
|
@@ -20240,42 +20906,49 @@ const DsTableGroupHeaderCell = ({ header }) => {
|
|
|
20240
20906
|
title: toggleLabel,
|
|
20241
20907
|
onClick: handleToggle
|
|
20242
20908
|
})]
|
|
20243
|
-
})
|
|
20909
|
+
}), canResize && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableResizeHandle, { header })]
|
|
20244
20910
|
});
|
|
20245
20911
|
};
|
|
20246
20912
|
//#endregion
|
|
20247
20913
|
//#region src/components/ds-table/components/ds-table-header/ds-table-header.tsx
|
|
20248
20914
|
const DsTableHeader = ({ table }) => {
|
|
20249
|
-
const { bordered, virtualized } = useDsTableContext();
|
|
20915
|
+
const { bordered, virtualized, resizableColumns, resizeSizingReady } = useDsTableContext();
|
|
20250
20916
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableHeader, {
|
|
20251
20917
|
className: (0, classnames.default)(ds_table_header_module_default.header, virtualized && ds_table_header_module_default.virtualizedHeader),
|
|
20252
20918
|
children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableRow, {
|
|
20253
20919
|
className: (0, classnames.default)(ds_table_header_module_default.headerRow, !bordered && ds_table_header_module_default.headerRowNoBorder, virtualized && ds_table_header_module_default.headerRowVirtualized),
|
|
20254
20920
|
children: headerGroup.headers.map((header) => {
|
|
20921
|
+
const columnSizing = table.getState().columnSizing;
|
|
20255
20922
|
if (header.isPlaceholder) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableHead, {
|
|
20256
20923
|
className: ds_table_header_module_default.headerCell,
|
|
20257
|
-
style:
|
|
20924
|
+
style: getHeaderCellSizeStyle(header.id, header.getSize(), isExplicitColumnWidth(header.column, resizeSizingReady ? columnSizing : {}), !!resizeSizingReady)
|
|
20258
20925
|
}, header.id);
|
|
20259
20926
|
if (header.subHeaders.length > 0) return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableGroupHeaderCell, { header }, header.id);
|
|
20260
|
-
const headerStyle =
|
|
20927
|
+
const headerStyle = getHeaderCellSizeStyle(header.id, header.column.getSize(), isExplicitColumnWidth(header.column, resizeSizingReady ? columnSizing : {}), !!resizeSizingReady);
|
|
20261
20928
|
const canSort = header.column.getCanSort();
|
|
20929
|
+
const canResize = resizableColumns && header.column.getCanResize();
|
|
20262
20930
|
const isSelectColumn = header.column.id === SELECT_COLUMN_ID;
|
|
20263
20931
|
const isGroupStart = isFirstLeafColumnOfGroup(header.column);
|
|
20264
20932
|
const metaFilter = header.column.columnDef.meta?.filter;
|
|
20265
20933
|
const resolvedFilter = metaFilter && "render" in metaFilter ? metaFilter : void 0;
|
|
20266
20934
|
const hasActiveColumnFilter = resolvedFilter?.hasActiveFilter ?? false;
|
|
20267
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.
|
|
20935
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(TableHead, {
|
|
20936
|
+
"data-column-id": header.column.id,
|
|
20268
20937
|
className: (0, classnames.default)(ds_table_header_module_default.headerCell, canSort && ds_table_header_module_default.sortableHeader, isSelectColumn && ds_table_header_module_default.selectHeaderCell, resolvedFilter && ds_table_header_module_default.filterableHeader, hasActiveColumnFilter && ds_table_header_module_default.filterActive, isGroupStart && ds_table_header_module_default.groupStart),
|
|
20269
20938
|
onClick: header.column.getToggleSortingHandler(),
|
|
20270
20939
|
style: headerStyle,
|
|
20271
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
20940
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
20272
20941
|
className: ds_table_header_module_default.headerSortContainer,
|
|
20273
20942
|
children: [
|
|
20274
20943
|
/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsStack, {
|
|
20275
20944
|
direction: "column",
|
|
20276
20945
|
justifyContent: "center",
|
|
20277
20946
|
width: "100%",
|
|
20278
|
-
|
|
20947
|
+
className: ds_table_header_module_default.headerLabelStack,
|
|
20948
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
20949
|
+
className: ds_table_header_module_default.headerLabel,
|
|
20950
|
+
children: (0, _tanstack_react_table.flexRender)(header.column.columnDef.header, header.getContext())
|
|
20951
|
+
})
|
|
20279
20952
|
}),
|
|
20280
20953
|
canSort && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
20281
20954
|
className: ds_table_header_module_default.pageButtonIconContainer,
|
|
@@ -20301,13 +20974,29 @@ const DsTableHeader = ({ table }) => {
|
|
|
20301
20974
|
})
|
|
20302
20975
|
})
|
|
20303
20976
|
]
|
|
20304
|
-
})
|
|
20977
|
+
}), canResize && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableResizeHandle, { header })]
|
|
20305
20978
|
}, header.id);
|
|
20306
20979
|
})
|
|
20307
20980
|
}, headerGroup.id))
|
|
20308
20981
|
});
|
|
20309
20982
|
};
|
|
20310
20983
|
//#endregion
|
|
20984
|
+
//#region src/components/ds-table/components/ds-table-resize-overlay/ds-table-resize-overlay.module.scss
|
|
20985
|
+
var ds_table_resize_overlay_module_default = { "resizeOverlay": "DO-LLa_resizeOverlay" };
|
|
20986
|
+
//#endregion
|
|
20987
|
+
//#region src/components/ds-table/components/ds-table-resize-overlay/ds-table-resize-overlay.tsx
|
|
20988
|
+
/**
|
|
20989
|
+
* Full-height divider that tracks the active column's right edge during hover
|
|
20990
|
+
* and drag resize.
|
|
20991
|
+
*/
|
|
20992
|
+
const DsTableResizeOverlay = ({ offset, phase }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
|
|
20993
|
+
className: ds_table_resize_overlay_module_default.resizeOverlay,
|
|
20994
|
+
style: { left: offset },
|
|
20995
|
+
"data-resize-overlay": true,
|
|
20996
|
+
"data-resize-phase": phase,
|
|
20997
|
+
"aria-hidden": true
|
|
20998
|
+
});
|
|
20999
|
+
//#endregion
|
|
20311
21000
|
//#region src/components/ds-table/ds-table.module.scss
|
|
20312
21001
|
var ds_table_module_default = {
|
|
20313
21002
|
"bulkActionsVisible": "iL9mtW_bulkActionsVisible",
|
|
@@ -20322,6 +21011,28 @@ var ds_table_module_default = {
|
|
|
20322
21011
|
"virtualizedContainer": "iL9mtW_virtualizedContainer"
|
|
20323
21012
|
};
|
|
20324
21013
|
//#endregion
|
|
21014
|
+
//#region src/components/ds-table/ds-table-defaults.ts
|
|
21015
|
+
/**
|
|
21016
|
+
* Applies the documented `DsTable` prop defaults. Call once at the table
|
|
21017
|
+
* boundary so orchestration and context see the same resolved values.
|
|
21018
|
+
*/
|
|
21019
|
+
const applyDsTableDefaults = (props) => ({
|
|
21020
|
+
...props,
|
|
21021
|
+
virtualized: props.virtualized ?? false,
|
|
21022
|
+
stickyHeader: props.stickyHeader ?? true,
|
|
21023
|
+
bordered: props.bordered ?? true,
|
|
21024
|
+
fullWidth: props.fullWidth ?? true,
|
|
21025
|
+
rowSize: props.rowSize ?? "medium",
|
|
21026
|
+
loading: props.loading ?? false,
|
|
21027
|
+
expandable: props.expandable ?? false,
|
|
21028
|
+
selectable: props.selectable ?? false,
|
|
21029
|
+
showSelectAllCheckbox: props.showSelectAllCheckbox ?? true,
|
|
21030
|
+
primaryRowActions: props.primaryRowActions ?? [],
|
|
21031
|
+
actions: props.actions ?? [],
|
|
21032
|
+
reorderable: props.reorderable ?? false,
|
|
21033
|
+
resizableColumns: props.resizableColumns ?? false
|
|
21034
|
+
});
|
|
21035
|
+
//#endregion
|
|
20325
21036
|
//#region src/components/ds-table/components/edit/ds-table-editable-cell/ds-table-editable-cell.module.scss
|
|
20326
21037
|
var ds_table_editable_cell_module_default = {
|
|
20327
21038
|
"editButton": "g5FEoW_editButton",
|
|
@@ -20387,12 +21098,16 @@ var ds_table_editing_cell_module_default = {
|
|
|
20387
21098
|
//#endregion
|
|
20388
21099
|
//#region src/components/ds-table/components/edit/ds-table-editing-cell/ds-table-editing-cell.tsx
|
|
20389
21100
|
const DsTableEditingCell = ({ cell }) => {
|
|
20390
|
-
const { commit, cancel } = useDsTableContext();
|
|
21101
|
+
const { commit, cancel, editing } = useDsTableContext();
|
|
20391
21102
|
const columnDef = cell.column.columnDef;
|
|
20392
21103
|
const editAnchorRef = (0, react.useRef)(null);
|
|
21104
|
+
const isActiveCell = editing?.cell.id === cell.id;
|
|
21105
|
+
const isPending = isActiveCell && editing.pending;
|
|
21106
|
+
const hasError = isActiveCell && editing.error !== null;
|
|
20393
21107
|
const handleSubmit = (event) => {
|
|
20394
21108
|
event.preventDefault();
|
|
20395
21109
|
event.stopPropagation();
|
|
21110
|
+
if (isPending || hasError) return;
|
|
20396
21111
|
commit();
|
|
20397
21112
|
};
|
|
20398
21113
|
(0, react.useEffect)(() => {
|
|
@@ -20444,6 +21159,8 @@ const DsTableEditingCell = ({ cell }) => {
|
|
|
20444
21159
|
variant: "tertiary",
|
|
20445
21160
|
size: "small",
|
|
20446
21161
|
icon: "check",
|
|
21162
|
+
loading: isPending,
|
|
21163
|
+
disabled: hasError,
|
|
20447
21164
|
"aria-label": "Confirm edit",
|
|
20448
21165
|
onClick: (event) => {
|
|
20449
21166
|
event.stopPropagation();
|
|
@@ -20589,7 +21306,7 @@ const DsRowDragHandle = ({ isDragging, attributes, listeners, style }) => {
|
|
|
20589
21306
|
});
|
|
20590
21307
|
};
|
|
20591
21308
|
const DsTableRow = ({ ref, row, isSelected }) => {
|
|
20592
|
-
const { reorderable, onRowClick, onRowDoubleClick, renderExpandedRow, bordered, rowSize, primaryRowActions, secondaryRowActions, activeRowId, loading } = useDsTableContext();
|
|
21309
|
+
const { reorderable, onRowClick, onRowDoubleClick, renderExpandedRow, bordered, rowSize, primaryRowActions, secondaryRowActions, activeRowId, loading, resizeSizingReady } = useDsTableContext();
|
|
20593
21310
|
const isExpanded = row.getIsExpanded();
|
|
20594
21311
|
const isActive = activeRowId === row.id;
|
|
20595
21312
|
const { attributes, listeners, setNodeRef, transform, transition, isDragging } = (0, _dnd_kit_sortable.useSortable)({
|
|
@@ -20618,7 +21335,8 @@ const DsTableRow = ({ ref, row, isSelected }) => {
|
|
|
20618
21335
|
onClick: () => onRowClick?.(row.original),
|
|
20619
21336
|
onDoubleClick: () => onRowDoubleClick?.(row.original),
|
|
20620
21337
|
children: row.getVisibleCells().map((cell, idx) => {
|
|
20621
|
-
const
|
|
21338
|
+
const columnSizing = cell.getContext().table.getState().columnSizing;
|
|
21339
|
+
const cellStyle = getBodyCellSizeStyle(cell.column.id, cell.column.getSize(), isExplicitColumnWidth(cell.column, resizeSizingReady ? columnSizing : {}), !!resizeSizingReady);
|
|
20622
21340
|
if (cell.column.id === "reorder") return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsRowDragHandle, {
|
|
20623
21341
|
isDragging,
|
|
20624
21342
|
attributes,
|
|
@@ -20650,56 +21368,6 @@ const DsTableRow = ({ ref, row, isSelected }) => {
|
|
|
20650
21368
|
})] });
|
|
20651
21369
|
};
|
|
20652
21370
|
//#endregion
|
|
20653
|
-
//#region src/components/ds-table/components/ds-table-row-expandable-cell/ds-table-row-expandable-cell.module.scss
|
|
20654
|
-
var ds_table_row_expandable_cell_module_default = { "button": "enUIjW_button" };
|
|
20655
|
-
//#endregion
|
|
20656
|
-
//#region src/components/ds-table/components/ds-table-row-expandable-cell/ds-table-row-expandable-cell.tsx
|
|
20657
|
-
const DsTableRowExpandableCell = ({ row, buttonClassName }) => {
|
|
20658
|
-
const isExpanded = row.getIsExpanded();
|
|
20659
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsButton, {
|
|
20660
|
-
design: "v1.2",
|
|
20661
|
-
buttonType: "tertiary",
|
|
20662
|
-
size: "small",
|
|
20663
|
-
className: (0, classnames.default)(ds_table_row_expandable_cell_module_default.button, buttonClassName),
|
|
20664
|
-
onClick: (e) => {
|
|
20665
|
-
e.stopPropagation();
|
|
20666
|
-
row.toggleExpanded();
|
|
20667
|
-
},
|
|
20668
|
-
onDoubleClick: (e) => {
|
|
20669
|
-
e.stopPropagation();
|
|
20670
|
-
},
|
|
20671
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
20672
|
-
icon: "chevron_right",
|
|
20673
|
-
size: "small",
|
|
20674
|
-
className: (0, classnames.default)(ds_table_shared_module_default.pageButtonIcon, isExpanded && "rotate-90")
|
|
20675
|
-
})
|
|
20676
|
-
});
|
|
20677
|
-
};
|
|
20678
|
-
//#endregion
|
|
20679
|
-
//#region src/components/ds-table/components/ds-table-row-selectable-cell/ds-table-row-selectable-cell.tsx
|
|
20680
|
-
const DsTableRowSelectableCell = ({ row }) => {
|
|
20681
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsCheckbox, {
|
|
20682
|
-
className: ds_table_shared_module_default.checkboxContainer,
|
|
20683
|
-
checked: row.getIsSelected(),
|
|
20684
|
-
disabled: !row.getCanSelect(),
|
|
20685
|
-
onCheckedChange: (checked) => row.toggleSelected(!!checked),
|
|
20686
|
-
onClick: (e) => e.stopPropagation(),
|
|
20687
|
-
onDoubleClick: (e) => e.stopPropagation()
|
|
20688
|
-
});
|
|
20689
|
-
};
|
|
20690
|
-
//#endregion
|
|
20691
|
-
//#region src/components/ds-table/components/ds-table-header-selectable-cell/ds-table-header-selectable-cell.tsx
|
|
20692
|
-
const DsTableHeaderSelectableCell = ({ table }) => {
|
|
20693
|
-
const checked = table.getIsAllRowsSelected() ? true : table.getIsSomeRowsSelected() ? "indeterminate" : false;
|
|
20694
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsCheckbox, {
|
|
20695
|
-
className: ds_table_shared_module_default.checkboxContainer,
|
|
20696
|
-
checked,
|
|
20697
|
-
onCheckedChange: (nextChecked) => table.toggleAllRowsSelected(!!nextChecked),
|
|
20698
|
-
onClick: (e) => e.stopPropagation(),
|
|
20699
|
-
onDoubleClick: (e) => e.stopPropagation()
|
|
20700
|
-
});
|
|
20701
|
-
};
|
|
20702
|
-
//#endregion
|
|
20703
21371
|
//#region src/components/ds-table/hooks/use-drag-and-drop.tsx
|
|
20704
21372
|
const DragWrapper = ({ children, onDragEnd, sensors }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_dnd_kit_core.DndContext, {
|
|
20705
21373
|
collisionDetection: _dnd_kit_core.closestCenter,
|
|
@@ -20744,6 +21412,201 @@ function useDragAndDrop({ isDragEnabled, onOrderChange, items }) {
|
|
|
20744
21412
|
};
|
|
20745
21413
|
}
|
|
20746
21414
|
//#endregion
|
|
21415
|
+
//#region src/components/ds-table/hooks/use-column-resize.ts
|
|
21416
|
+
const INITIAL_COLUMN_SIZING_INFO = {
|
|
21417
|
+
startOffset: null,
|
|
21418
|
+
startSize: null,
|
|
21419
|
+
deltaOffset: null,
|
|
21420
|
+
deltaPercentage: null,
|
|
21421
|
+
isResizingColumn: false,
|
|
21422
|
+
columnSizingStart: []
|
|
21423
|
+
};
|
|
21424
|
+
/**
|
|
21425
|
+
* Owns column-resize state, TanStack sizing handlers, origin snapshots, seed
|
|
21426
|
+
* measurement, hover/drag overlay model, and the context slice consumed by
|
|
21427
|
+
* resize handles.
|
|
21428
|
+
*
|
|
21429
|
+
* Call before `useReactTable`, spread `tableOptions` / `state` into it, then
|
|
21430
|
+
* `bind(table)` during render for CSS vars, overlay, and context.
|
|
21431
|
+
*/
|
|
21432
|
+
const useColumnResize = ({ enabled, columnSizing: columnSizingProp, onColumnSizingChange, columns, columnVisibility }) => {
|
|
21433
|
+
const [columnResizeState, setColumnResizeState] = (0, react.useState)({
|
|
21434
|
+
columnSizing: {},
|
|
21435
|
+
columnSizingInfo: INITIAL_COLUMN_SIZING_INFO
|
|
21436
|
+
});
|
|
21437
|
+
const { columnSizing: internalColumnSizing, columnSizingInfo } = columnResizeState;
|
|
21438
|
+
const columnSizing = (0, react.useMemo)(() => columnSizingProp ? {
|
|
21439
|
+
...columnSizingProp,
|
|
21440
|
+
...internalColumnSizing
|
|
21441
|
+
} : internalColumnSizing, [columnSizingProp, internalColumnSizing]);
|
|
21442
|
+
const [resizeHover, setResizeHover] = (0, react.useState)(null);
|
|
21443
|
+
const dragStartOffsetRef = (0, react.useRef)(null);
|
|
21444
|
+
const resizeOriginSizingRef = (0, react.useRef)({});
|
|
21445
|
+
const containerRef = (0, react.useRef)(null);
|
|
21446
|
+
const tableRef = (0, react.useRef)(null);
|
|
21447
|
+
const columnSizingRef = (0, react.useRef)(columnSizing);
|
|
21448
|
+
columnSizingRef.current = columnSizing;
|
|
21449
|
+
const columnSizingInfoRef = (0, react.useRef)(columnSizingInfo);
|
|
21450
|
+
columnSizingInfoRef.current = columnSizingInfo;
|
|
21451
|
+
const onColumnSizingChangeRef = (0, react.useRef)(onColumnSizingChange);
|
|
21452
|
+
onColumnSizingChangeRef.current = onColumnSizingChange;
|
|
21453
|
+
const leafSizeBoundsRef = (0, react.useRef)([]);
|
|
21454
|
+
const handleColumnSizingChange = (0, react.useCallback)((updaterOrValue) => {
|
|
21455
|
+
const clamped = clampColumnSizing(typeof updaterOrValue === "function" ? updaterOrValue(columnSizingRef.current) : updaterOrValue, leafSizeBoundsRef.current);
|
|
21456
|
+
columnSizingRef.current = clamped;
|
|
21457
|
+
setColumnResizeState((prev) => ({
|
|
21458
|
+
...prev,
|
|
21459
|
+
columnSizing: clamped
|
|
21460
|
+
}));
|
|
21461
|
+
}, []);
|
|
21462
|
+
const handleColumnSizingInfoChange = (0, react.useCallback)((updaterOrValue) => {
|
|
21463
|
+
const prevInfo = columnSizingInfoRef.current;
|
|
21464
|
+
const nextInfo = typeof updaterOrValue === "function" ? updaterOrValue(prevInfo) : updaterOrValue;
|
|
21465
|
+
const ended = Boolean(prevInfo.isResizingColumn) && nextInfo.isResizingColumn === false;
|
|
21466
|
+
columnSizingInfoRef.current = nextInfo;
|
|
21467
|
+
setColumnResizeState((prev) => ({
|
|
21468
|
+
...prev,
|
|
21469
|
+
columnSizingInfo: nextInfo
|
|
21470
|
+
}));
|
|
21471
|
+
if (ended) onColumnSizingChangeRef.current?.(omitBuiltinColumnSizing(columnSizingRef.current));
|
|
21472
|
+
}, []);
|
|
21473
|
+
const handleResizeHover = (0, react.useCallback)((columnId, offset) => {
|
|
21474
|
+
setResizeHover(columnId === null || offset === null ? null : {
|
|
21475
|
+
columnId,
|
|
21476
|
+
offset
|
|
21477
|
+
});
|
|
21478
|
+
}, []);
|
|
21479
|
+
const handleResizeDragStart = (0, react.useCallback)((offset) => {
|
|
21480
|
+
dragStartOffsetRef.current = offset;
|
|
21481
|
+
}, []);
|
|
21482
|
+
const handleResizeReset = (0, react.useCallback)((columnIds) => {
|
|
21483
|
+
const next = { ...columnSizingRef.current };
|
|
21484
|
+
for (const id of columnIds) {
|
|
21485
|
+
const origin = resizeOriginSizingRef.current[id];
|
|
21486
|
+
if (origin !== void 0) next[id] = origin;
|
|
21487
|
+
}
|
|
21488
|
+
const clamped = clampColumnSizing(next, leafSizeBoundsRef.current);
|
|
21489
|
+
handleColumnSizingChange(clamped);
|
|
21490
|
+
onColumnSizingChangeRef.current?.(omitBuiltinColumnSizing(clamped));
|
|
21491
|
+
}, [handleColumnSizingChange]);
|
|
21492
|
+
const handleResizeKeyboardNudge = (0, react.useCallback)((columnId, delta) => {
|
|
21493
|
+
const table = tableRef.current;
|
|
21494
|
+
const column = table?.getColumn(columnId);
|
|
21495
|
+
if (!table || !column) return;
|
|
21496
|
+
const leaves = column.getLeafColumns().filter((leaf) => leaf.getIsVisible() && leaf.getCanResize());
|
|
21497
|
+
const totalSize = leaves.reduce((sum, leaf) => sum + leaf.getSize(), 0);
|
|
21498
|
+
if (leaves.length === 0 || totalSize <= 0) return;
|
|
21499
|
+
const next = { ...columnSizingRef.current };
|
|
21500
|
+
for (const leaf of leaves) {
|
|
21501
|
+
const size = leaf.getSize();
|
|
21502
|
+
next[leaf.id] = Math.round(size + delta * (size / totalSize));
|
|
21503
|
+
}
|
|
21504
|
+
const clamped = clampColumnSizing(next, leafSizeBoundsRef.current);
|
|
21505
|
+
handleColumnSizingChange(clamped);
|
|
21506
|
+
onColumnSizingChangeRef.current?.(omitBuiltinColumnSizing(clamped));
|
|
21507
|
+
}, [handleColumnSizingChange]);
|
|
21508
|
+
(0, react.useLayoutEffect)(() => {
|
|
21509
|
+
if (!enabled) return;
|
|
21510
|
+
const container = containerRef.current;
|
|
21511
|
+
const table = tableRef.current;
|
|
21512
|
+
if (!container || !table) return;
|
|
21513
|
+
const seedMissingLeaves = () => {
|
|
21514
|
+
if (container.getBoundingClientRect().width === 0) return false;
|
|
21515
|
+
const tableEl = container.querySelector("table");
|
|
21516
|
+
if (!(tableEl instanceof HTMLElement)) return false;
|
|
21517
|
+
const leaves = table.getVisibleLeafColumns();
|
|
21518
|
+
const measured = measureLeafHeaderWidths(tableEl, leaves.map((column) => column.id));
|
|
21519
|
+
for (const column of leaves) {
|
|
21520
|
+
const measuredWidth = measured[column.id];
|
|
21521
|
+
if (measuredWidth === void 0 || resizeOriginSizingRef.current[column.id] !== void 0) continue;
|
|
21522
|
+
resizeOriginSizingRef.current[column.id] = getResizeOriginSize(column, Math.round(measuredWidth));
|
|
21523
|
+
}
|
|
21524
|
+
const missing = collectMissingLeafSizing(measured, columnSizingRef.current);
|
|
21525
|
+
if (Object.keys(missing).length > 0) handleColumnSizingChange((prev) => ({
|
|
21526
|
+
...clampColumnSizing(missing, leafSizeBoundsRef.current),
|
|
21527
|
+
...prev
|
|
21528
|
+
}));
|
|
21529
|
+
return true;
|
|
21530
|
+
};
|
|
21531
|
+
if (seedMissingLeaves()) return;
|
|
21532
|
+
const observer = new ResizeObserver(() => {
|
|
21533
|
+
if (seedMissingLeaves()) observer.disconnect();
|
|
21534
|
+
});
|
|
21535
|
+
observer.observe(container);
|
|
21536
|
+
return () => observer.disconnect();
|
|
21537
|
+
}, [
|
|
21538
|
+
enabled,
|
|
21539
|
+
columns,
|
|
21540
|
+
columnVisibility,
|
|
21541
|
+
handleColumnSizingChange
|
|
21542
|
+
]);
|
|
21543
|
+
const tableOptions = (0, react.useMemo)(() => ({
|
|
21544
|
+
enableColumnResizing: enabled,
|
|
21545
|
+
columnResizeMode: "onChange",
|
|
21546
|
+
...enabled ? { defaultColumn: { minSize: 52 } } : {},
|
|
21547
|
+
onColumnSizingChange: handleColumnSizingChange,
|
|
21548
|
+
onColumnSizingInfoChange: handleColumnSizingInfoChange
|
|
21549
|
+
}), [
|
|
21550
|
+
enabled,
|
|
21551
|
+
handleColumnSizingChange,
|
|
21552
|
+
handleColumnSizingInfoChange
|
|
21553
|
+
]);
|
|
21554
|
+
const bind = (table) => {
|
|
21555
|
+
tableRef.current = table;
|
|
21556
|
+
leafSizeBoundsRef.current = table.getAllLeafColumns();
|
|
21557
|
+
const visibleLeafIds = table.getVisibleLeafColumns().map((column) => column.id);
|
|
21558
|
+
const resizeSizingReady = enabled && visibleLeafIds.length > 0 && visibleLeafIds.every((id) => columnSizing[id] !== void 0);
|
|
21559
|
+
const columnSizeVars = resizeSizingReady ? {
|
|
21560
|
+
...getColumnSizeCssVars(table.getFlatHeaders()),
|
|
21561
|
+
width: table.getTotalSize()
|
|
21562
|
+
} : void 0;
|
|
21563
|
+
if (!enabled) return {
|
|
21564
|
+
columnSizeVars: void 0,
|
|
21565
|
+
activeResize: null,
|
|
21566
|
+
context: {
|
|
21567
|
+
resizableColumns: false,
|
|
21568
|
+
resizeSizingReady: false,
|
|
21569
|
+
resizeContainerRef: containerRef,
|
|
21570
|
+
onResizeHover: handleResizeHover,
|
|
21571
|
+
onResizeDragStart: handleResizeDragStart,
|
|
21572
|
+
onResizeReset: handleResizeReset,
|
|
21573
|
+
onResizeKeyboardNudge: handleResizeKeyboardNudge
|
|
21574
|
+
}
|
|
21575
|
+
};
|
|
21576
|
+
const isResizingColumn = columnSizingInfo.isResizingColumn;
|
|
21577
|
+
const resizingHeader = typeof isResizingColumn === "string" ? table.getFlatHeaders().find((header) => header.column.id === isResizingColumn) : void 0;
|
|
21578
|
+
const startSize = columnSizingInfo.startSize;
|
|
21579
|
+
const clampedResizeDelta = resizingHeader && startSize !== null ? resizingHeader.getSize() - startSize : columnSizingInfo.deltaOffset ?? 0;
|
|
21580
|
+
return {
|
|
21581
|
+
columnSizeVars,
|
|
21582
|
+
activeResize: isResizingColumn && dragStartOffsetRef.current !== null ? {
|
|
21583
|
+
offset: dragStartOffsetRef.current + clampedResizeDelta,
|
|
21584
|
+
phase: "dragging"
|
|
21585
|
+
} : resizeHover ? {
|
|
21586
|
+
offset: resizeHover.offset,
|
|
21587
|
+
phase: "hover"
|
|
21588
|
+
} : null,
|
|
21589
|
+
context: {
|
|
21590
|
+
resizableColumns: enabled,
|
|
21591
|
+
resizeSizingReady,
|
|
21592
|
+
resizeContainerRef: containerRef,
|
|
21593
|
+
onResizeHover: handleResizeHover,
|
|
21594
|
+
onResizeDragStart: handleResizeDragStart,
|
|
21595
|
+
onResizeReset: handleResizeReset,
|
|
21596
|
+
onResizeKeyboardNudge: handleResizeKeyboardNudge
|
|
21597
|
+
}
|
|
21598
|
+
};
|
|
21599
|
+
};
|
|
21600
|
+
return {
|
|
21601
|
+
tableOptions,
|
|
21602
|
+
state: {
|
|
21603
|
+
columnSizing,
|
|
21604
|
+
columnSizingInfo
|
|
21605
|
+
},
|
|
21606
|
+
bind
|
|
21607
|
+
};
|
|
21608
|
+
};
|
|
21609
|
+
//#endregion
|
|
20747
21610
|
//#region src/components/ds-table/components/ds-table-body-virtualized/ds-table-body-virtualized.module.scss
|
|
20748
21611
|
var ds_table_body_virtualized_module_default = {
|
|
20749
21612
|
"body": "vRRk8q_body",
|
|
@@ -20773,7 +21636,7 @@ var ds_table_row_virtualized_module_default = {
|
|
|
20773
21636
|
//#endregion
|
|
20774
21637
|
//#region src/components/ds-table/components/ds-table-row-virtualized/ds-table-row-virtualized.tsx
|
|
20775
21638
|
const DsTableRowVirtualized = ({ row, isSelected, rowsMapRef, rowHeightsMapRef, rowVirtualizer, virtualRow, isExpandedRowContent }) => {
|
|
20776
|
-
const { bordered, rowSize, activeRowId, primaryRowActions, secondaryRowActions, renderExpandedRow, onRowClick, onRowDoubleClick, loading } = useDsTableContext();
|
|
21639
|
+
const { bordered, rowSize, activeRowId, primaryRowActions, secondaryRowActions, renderExpandedRow, onRowClick, onRowDoubleClick, loading, resizeSizingReady } = useDsTableContext();
|
|
20777
21640
|
const isExpanded = row.getIsExpanded();
|
|
20778
21641
|
const isActive = activeRowId === row.id;
|
|
20779
21642
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableRow, {
|
|
@@ -20797,8 +21660,9 @@ const DsTableRowVirtualized = ({ row, isSelected, rowsMapRef, rowHeightsMapRef,
|
|
|
20797
21660
|
onDoubleClick: isExpandedRowContent ? void 0 : () => onRowDoubleClick?.(row.original),
|
|
20798
21661
|
children: isExpandedRowContent ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableCell, { children: renderExpandedRow?.(row.original) }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_jsx_runtime.Fragment, { children: row.getVisibleCells().map((cell, idx) => {
|
|
20799
21662
|
const isLastColumn = idx === row.getVisibleCells().length - 1;
|
|
21663
|
+
const columnSizing = cell.getContext().table.getState().columnSizing;
|
|
20800
21664
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableCell, {
|
|
20801
|
-
style:
|
|
21665
|
+
style: getBodyCellSizeStyle(cell.column.id, cell.column.getSize(), isExplicitColumnWidth(cell.column, resizeSizingReady ? columnSizing : {}), !!resizeSizingReady),
|
|
20802
21666
|
className: (0, classnames.default)(ds_table_row_virtualized_module_default.cell, cell.column.id === "expander" && ds_table_row_virtualized_module_default.expandableCell, cell.column.id === "select" && ds_table_row_virtualized_module_default.selectableCell, isFirstLeafColumnOfGroup(cell.column) && ds_table_row_virtualized_module_default.groupStart, typeof cell.column.columnDef.editCell === "function" && ds_table_row_virtualized_module_default.editableCell),
|
|
20803
21667
|
children: isLastColumn ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableCell, {
|
|
20804
21668
|
row,
|
|
@@ -20937,6 +21801,194 @@ function DsTableBody({ ref, rowVirtualizer, rowsMapRef, rowHeightsMapRef, rowsAn
|
|
|
20937
21801
|
});
|
|
20938
21802
|
}
|
|
20939
21803
|
//#endregion
|
|
21804
|
+
//#region src/components/ds-table/components/ds-table-header-selectable-cell/ds-table-header-selectable-cell.tsx
|
|
21805
|
+
const DsTableHeaderSelectableCell = ({ table }) => {
|
|
21806
|
+
const checked = table.getIsAllRowsSelected() ? true : table.getIsSomeRowsSelected() ? "indeterminate" : false;
|
|
21807
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsCheckbox, {
|
|
21808
|
+
className: ds_table_shared_module_default.checkboxContainer,
|
|
21809
|
+
checked,
|
|
21810
|
+
onCheckedChange: (nextChecked) => table.toggleAllRowsSelected(!!nextChecked),
|
|
21811
|
+
onClick: (e) => e.stopPropagation(),
|
|
21812
|
+
onDoubleClick: (e) => e.stopPropagation()
|
|
21813
|
+
});
|
|
21814
|
+
};
|
|
21815
|
+
//#endregion
|
|
21816
|
+
//#region src/components/ds-table/components/ds-table-row-expandable-cell/ds-table-row-expandable-cell.module.scss
|
|
21817
|
+
var ds_table_row_expandable_cell_module_default = { "button": "enUIjW_button" };
|
|
21818
|
+
//#endregion
|
|
21819
|
+
//#region src/components/ds-table/components/ds-table-row-expandable-cell/ds-table-row-expandable-cell.tsx
|
|
21820
|
+
const DsTableRowExpandableCell = ({ row, buttonClassName }) => {
|
|
21821
|
+
const isExpanded = row.getIsExpanded();
|
|
21822
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsButton, {
|
|
21823
|
+
design: "v1.2",
|
|
21824
|
+
buttonType: "tertiary",
|
|
21825
|
+
size: "small",
|
|
21826
|
+
className: (0, classnames.default)(ds_table_row_expandable_cell_module_default.button, buttonClassName),
|
|
21827
|
+
onClick: (e) => {
|
|
21828
|
+
e.stopPropagation();
|
|
21829
|
+
row.toggleExpanded();
|
|
21830
|
+
},
|
|
21831
|
+
onDoubleClick: (e) => {
|
|
21832
|
+
e.stopPropagation();
|
|
21833
|
+
},
|
|
21834
|
+
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
21835
|
+
icon: "chevron_right",
|
|
21836
|
+
size: "small",
|
|
21837
|
+
className: (0, classnames.default)(ds_table_shared_module_default.pageButtonIcon, isExpanded && "rotate-90")
|
|
21838
|
+
})
|
|
21839
|
+
});
|
|
21840
|
+
};
|
|
21841
|
+
//#endregion
|
|
21842
|
+
//#region src/components/ds-table/components/ds-table-row-selectable-cell/ds-table-row-selectable-cell.tsx
|
|
21843
|
+
const DsTableRowSelectableCell = ({ row }) => {
|
|
21844
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsCheckbox, {
|
|
21845
|
+
className: ds_table_shared_module_default.checkboxContainer,
|
|
21846
|
+
checked: row.getIsSelected(),
|
|
21847
|
+
disabled: !row.getCanSelect(),
|
|
21848
|
+
onCheckedChange: (checked) => row.toggleSelected(!!checked),
|
|
21849
|
+
onClick: (e) => e.stopPropagation(),
|
|
21850
|
+
onDoubleClick: (e) => e.stopPropagation()
|
|
21851
|
+
});
|
|
21852
|
+
};
|
|
21853
|
+
//#endregion
|
|
21854
|
+
//#region src/components/ds-table/utils/table-columns.tsx
|
|
21855
|
+
const EXPLICIT_SIZE_META = { hasExplicitSize: true };
|
|
21856
|
+
/**
|
|
21857
|
+
* Clones leaf defs that authored `size` so `meta.hasExplicitSize` survives
|
|
21858
|
+
* TanStack’s default-size merge. Group defs are cloned only to recurse;
|
|
21859
|
+
* unsized leaves are returned as-is.
|
|
21860
|
+
*/
|
|
21861
|
+
const stampExplicitSize = (columns) => columns.map((column) => {
|
|
21862
|
+
if ("columns" in column && column.columns) return {
|
|
21863
|
+
...column,
|
|
21864
|
+
columns: stampExplicitSize(column.columns)
|
|
21865
|
+
};
|
|
21866
|
+
if (column.size === void 0) return column;
|
|
21867
|
+
return {
|
|
21868
|
+
...column,
|
|
21869
|
+
meta: {
|
|
21870
|
+
...column.meta,
|
|
21871
|
+
...EXPLICIT_SIZE_META
|
|
21872
|
+
}
|
|
21873
|
+
};
|
|
21874
|
+
});
|
|
21875
|
+
/**
|
|
21876
|
+
* Prepends the builtin select / expander / reorder columns when those features
|
|
21877
|
+
* are on. Reorder is omitted for virtualized tables. Unshift order yields
|
|
21878
|
+
* visual order: reorder, expander, select, then consumer columns.
|
|
21879
|
+
*/
|
|
21880
|
+
const getAugmentedColumns = (columns, { selectable, expandable, reorderable, virtualized, showSelectAllCheckbox }) => {
|
|
21881
|
+
const augmentedColumns = stampExplicitSize(columns);
|
|
21882
|
+
if (selectable) augmentedColumns.unshift({
|
|
21883
|
+
id: SELECT_COLUMN_ID,
|
|
21884
|
+
size: 36,
|
|
21885
|
+
minSize: 36,
|
|
21886
|
+
maxSize: 36,
|
|
21887
|
+
enableSorting: false,
|
|
21888
|
+
enableResizing: false,
|
|
21889
|
+
meta: EXPLICIT_SIZE_META,
|
|
21890
|
+
header: ({ table }) => showSelectAllCheckbox ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableHeaderSelectableCell, { table }) : null,
|
|
21891
|
+
cell: ({ row }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableRowSelectableCell, { row })
|
|
21892
|
+
});
|
|
21893
|
+
if (expandable) augmentedColumns.unshift({
|
|
21894
|
+
id: EXPANDER_COLUMN_ID,
|
|
21895
|
+
size: 36,
|
|
21896
|
+
minSize: 36,
|
|
21897
|
+
maxSize: 36,
|
|
21898
|
+
enableSorting: false,
|
|
21899
|
+
enableResizing: false,
|
|
21900
|
+
meta: EXPLICIT_SIZE_META,
|
|
21901
|
+
header: () => null,
|
|
21902
|
+
cell: ({ row }) => row.getCanExpand() ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableRowExpandableCell, { row }) : null
|
|
21903
|
+
});
|
|
21904
|
+
if (reorderable && !virtualized) augmentedColumns.unshift({
|
|
21905
|
+
id: REORDER_COLUMN_ID,
|
|
21906
|
+
size: 60,
|
|
21907
|
+
minSize: 60,
|
|
21908
|
+
maxSize: 60,
|
|
21909
|
+
enableSorting: false,
|
|
21910
|
+
enableResizing: false,
|
|
21911
|
+
meta: EXPLICIT_SIZE_META,
|
|
21912
|
+
header: "Order",
|
|
21913
|
+
cell: () => null
|
|
21914
|
+
});
|
|
21915
|
+
return augmentedColumns;
|
|
21916
|
+
};
|
|
21917
|
+
/**
|
|
21918
|
+
* Replaces each leaf `cell` with `loadingCell` (or a default text skeleton).
|
|
21919
|
+
* Group columns are cloned with the same transform applied to their children.
|
|
21920
|
+
*/
|
|
21921
|
+
const toSkeletonColumns = (columns) => columns.map((column) => "columns" in column && column.columns ? {
|
|
21922
|
+
...column,
|
|
21923
|
+
columns: toSkeletonColumns(column.columns)
|
|
21924
|
+
} : {
|
|
21925
|
+
...column,
|
|
21926
|
+
cell: column.loadingCell ?? (() => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsSkeletonText, { width: "60%" }))
|
|
21927
|
+
});
|
|
21928
|
+
const createSkeletonRows = () => Array.from({ length: 5 }, (_, i) => ({ id: `ds-table-skeleton-${String(i)}` }));
|
|
21929
|
+
//#endregion
|
|
21930
|
+
//#region src/components/ds-table/utils/table-api.ts
|
|
21931
|
+
const createTableApi = (table) => ({
|
|
21932
|
+
selectRow: (rowId) => {
|
|
21933
|
+
table.getRow(rowId).toggleSelected(true);
|
|
21934
|
+
},
|
|
21935
|
+
deselectRow: (rowId) => {
|
|
21936
|
+
table.getRow(rowId).toggleSelected(false);
|
|
21937
|
+
},
|
|
21938
|
+
selectAllRows: () => {
|
|
21939
|
+
table.toggleAllRowsSelected(true);
|
|
21940
|
+
},
|
|
21941
|
+
deselectAllRows: () => {
|
|
21942
|
+
table.toggleAllRowsSelected(false);
|
|
21943
|
+
},
|
|
21944
|
+
selectRows: (rowIds) => {
|
|
21945
|
+
const selection = {};
|
|
21946
|
+
rowIds.forEach((id) => selection[id] = true);
|
|
21947
|
+
table.setRowSelection(selection);
|
|
21948
|
+
},
|
|
21949
|
+
getSelectedRows: () => {
|
|
21950
|
+
return table.getFilteredSelectedRowModel().rows.map((r) => r.original);
|
|
21951
|
+
},
|
|
21952
|
+
expandRow: (rowId) => {
|
|
21953
|
+
table.getRow(rowId).toggleExpanded(true);
|
|
21954
|
+
},
|
|
21955
|
+
collapseRow: (rowId) => {
|
|
21956
|
+
table.getRow(rowId).toggleExpanded(false);
|
|
21957
|
+
},
|
|
21958
|
+
expandAllRows: () => {
|
|
21959
|
+
table.toggleAllRowsExpanded(true);
|
|
21960
|
+
},
|
|
21961
|
+
collapseAllRows: () => {
|
|
21962
|
+
table.toggleAllRowsExpanded(false);
|
|
21963
|
+
},
|
|
21964
|
+
expandRows: (rowIds) => {
|
|
21965
|
+
const expansion = {};
|
|
21966
|
+
rowIds.forEach((id) => expansion[id] = true);
|
|
21967
|
+
table.setExpanded(expansion);
|
|
21968
|
+
}
|
|
21969
|
+
});
|
|
21970
|
+
//#endregion
|
|
21971
|
+
//#region src/components/ds-table/utils/frozen-body.ts
|
|
21972
|
+
/**
|
|
21973
|
+
* `React.memo` comparator for the table body during a column-resize drag.
|
|
21974
|
+
*
|
|
21975
|
+
* While a column is being resized, sizing is applied through CSS variables on
|
|
21976
|
+
* the table element, so body rows do not need to re-render — freezing them keeps
|
|
21977
|
+
* dragging smooth. `table` is a stable mutable instance (ref-equal across
|
|
21978
|
+
* renders), so comparing it is meaningless and it is skipped; every other prop
|
|
21979
|
+
* must be referentially unchanged to freeze. That way parent-driven updates mid-
|
|
21980
|
+
* drag (`rowSelection`, `emptyState`, `onScroll`, `infiniteScroll`, ...) are not
|
|
21981
|
+
* dropped.
|
|
21982
|
+
*/
|
|
21983
|
+
const areBodiesFrozen = (prev, next) => {
|
|
21984
|
+
if (!next.table.getState().columnSizingInfo.isResizingColumn) return false;
|
|
21985
|
+
const prevProps = prev;
|
|
21986
|
+
const nextProps = next;
|
|
21987
|
+
const keys = /* @__PURE__ */ new Set([...Object.keys(prevProps), ...Object.keys(nextProps)]);
|
|
21988
|
+
for (const key of keys) if (key !== "table" && prevProps[key] !== nextProps[key]) return false;
|
|
21989
|
+
return true;
|
|
21990
|
+
};
|
|
21991
|
+
//#endregion
|
|
20940
21992
|
//#region src/components/ds-table/ds-table.tsx
|
|
20941
21993
|
const ROW_SIZE_HEIGHT_MAP = {
|
|
20942
21994
|
small: 36,
|
|
@@ -20946,7 +21998,9 @@ const ROW_SIZE_HEIGHT_MAP = {
|
|
|
20946
21998
|
/**
|
|
20947
21999
|
* Design system Table component
|
|
20948
22000
|
*/
|
|
20949
|
-
const DsTable = (
|
|
22001
|
+
const DsTable = (props) => {
|
|
22002
|
+
const tableProps = applyDsTableDefaults(props);
|
|
22003
|
+
const { ref, columns: columnsProp, data: tableData, controls, virtualized, virtualizedOptions, className, emptyState, bordered, fullWidth, rowSize, loading, expandable, selectable, showSelectAllCheckbox, onSelectionChange, onSortingChange, onScroll, actions, reorderable, onOrderChange, columnFilters: externalColumnFilters, onColumnFiltersChange, columnVisibility: externalColumnVisibility, onColumnVisibilityChange, collapsedColumnGroups: externalCollapsedColumnGroups, onCollapsedColumnGroupsChange, infiniteScroll, resizableColumns, columnSizing, onColumnSizingChange } = tableProps;
|
|
20950
22004
|
const [data, setData] = react.useState(tableData);
|
|
20951
22005
|
const [sorting, setSorting] = react.useState([]);
|
|
20952
22006
|
const [internalColumnFilters, setInternalColumnFilters] = react.useState([]);
|
|
@@ -20960,7 +22014,6 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
20960
22014
|
},
|
|
20961
22015
|
items: data
|
|
20962
22016
|
});
|
|
20963
|
-
const tableContainerRef = react.useRef(null);
|
|
20964
22017
|
const columnFilters = externalColumnFilters ?? internalColumnFilters;
|
|
20965
22018
|
const handleColumnFiltersChange = (updaterOrValue) => {
|
|
20966
22019
|
const newFilters = typeof updaterOrValue === "function" ? updaterOrValue(columnFilters) : updaterOrValue;
|
|
@@ -20992,63 +22045,31 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
20992
22045
|
setRowSelection(newRowSelection);
|
|
20993
22046
|
onSelectionChange?.(newRowSelection);
|
|
20994
22047
|
};
|
|
20995
|
-
const
|
|
20996
|
-
const
|
|
20997
|
-
const
|
|
20998
|
-
|
|
20999
|
-
|
|
21000
|
-
|
|
21001
|
-
|
|
21002
|
-
|
|
21003
|
-
|
|
21004
|
-
enableSorting: false,
|
|
21005
|
-
enableResizing: false,
|
|
21006
|
-
header: ({ table }) => showSelectAllCheckbox ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableHeaderSelectableCell, { table }) : null,
|
|
21007
|
-
cell: ({ row }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableRowSelectableCell, { row })
|
|
21008
|
-
};
|
|
21009
|
-
augmentedColumns.unshift(selectColumn);
|
|
21010
|
-
}
|
|
21011
|
-
if (hasExpanderColumn) {
|
|
21012
|
-
const expanderColumn = {
|
|
21013
|
-
id: EXPANDER_COLUMN_ID,
|
|
21014
|
-
size: 36,
|
|
21015
|
-
enableSorting: false,
|
|
21016
|
-
enableResizing: false,
|
|
21017
|
-
header: () => null,
|
|
21018
|
-
cell: ({ row }) => row.getCanExpand() ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableRowExpandableCell, { row }) : null
|
|
21019
|
-
};
|
|
21020
|
-
augmentedColumns.unshift(expanderColumn);
|
|
21021
|
-
}
|
|
21022
|
-
if (hasReorderColumn) {
|
|
21023
|
-
const reorderColumn = {
|
|
21024
|
-
id: REORDER_COLUMN_ID,
|
|
21025
|
-
size: 60,
|
|
21026
|
-
enableSorting: false,
|
|
21027
|
-
enableResizing: false,
|
|
21028
|
-
header: "Order",
|
|
21029
|
-
cell: () => null
|
|
21030
|
-
};
|
|
21031
|
-
augmentedColumns.unshift(reorderColumn);
|
|
21032
|
-
}
|
|
21033
|
-
return augmentedColumns;
|
|
21034
|
-
}, [
|
|
22048
|
+
const hasSelectColumn = Boolean(selectable);
|
|
22049
|
+
const hasExpanderColumn = Boolean(expandable);
|
|
22050
|
+
const columns = (0, react.useMemo)(() => getAugmentedColumns(columnsProp, {
|
|
22051
|
+
selectable: hasSelectColumn,
|
|
22052
|
+
expandable: hasExpanderColumn,
|
|
22053
|
+
reorderable,
|
|
22054
|
+
virtualized,
|
|
22055
|
+
showSelectAllCheckbox
|
|
22056
|
+
}), [
|
|
21035
22057
|
columnsProp,
|
|
21036
|
-
hasExpanderColumn,
|
|
21037
|
-
hasReorderColumn,
|
|
21038
22058
|
hasSelectColumn,
|
|
22059
|
+
hasExpanderColumn,
|
|
22060
|
+
reorderable,
|
|
22061
|
+
virtualized,
|
|
21039
22062
|
showSelectAllCheckbox
|
|
21040
22063
|
]);
|
|
21041
|
-
const skeletonColumns = (0, react.useMemo)(() =>
|
|
21042
|
-
|
|
21043
|
-
|
|
21044
|
-
|
|
21045
|
-
|
|
21046
|
-
|
|
21047
|
-
|
|
21048
|
-
|
|
21049
|
-
|
|
21050
|
-
}, [columns]);
|
|
21051
|
-
const skeletonData = (0, react.useMemo)(() => Array.from({ length: 5 }, (_, i) => ({ id: `ds-table-skeleton-${String(i)}` })), []);
|
|
22064
|
+
const skeletonColumns = (0, react.useMemo)(() => toSkeletonColumns(columns), [columns]);
|
|
22065
|
+
const skeletonData = (0, react.useMemo)(() => createSkeletonRows(), []);
|
|
22066
|
+
const resize = useColumnResize({
|
|
22067
|
+
enabled: resizableColumns,
|
|
22068
|
+
columnSizing,
|
|
22069
|
+
onColumnSizingChange,
|
|
22070
|
+
columns,
|
|
22071
|
+
columnVisibility
|
|
22072
|
+
});
|
|
21052
22073
|
const table = (0, _tanstack_react_table.useReactTable)({
|
|
21053
22074
|
data: loading ? skeletonData : reorderable ? data : tableData,
|
|
21054
22075
|
columns: loading ? skeletonColumns : columns,
|
|
@@ -21062,87 +22083,30 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
21062
22083
|
getRowId: (row) => row.id,
|
|
21063
22084
|
getExpandedRowModel: (0, _tanstack_react_table.getExpandedRowModel)(),
|
|
21064
22085
|
getRowCanExpand: typeof expandable === "function" ? (row) => expandable(row.original) : () => expandable,
|
|
22086
|
+
...resize.tableOptions,
|
|
21065
22087
|
state: {
|
|
21066
22088
|
sorting,
|
|
21067
22089
|
columnFilters,
|
|
21068
22090
|
columnVisibility,
|
|
21069
|
-
rowSelection
|
|
22091
|
+
rowSelection,
|
|
22092
|
+
...resize.state
|
|
21070
22093
|
},
|
|
21071
22094
|
enableRowSelection: typeof selectable === "function" ? (row) => selectable(row.original) : selectable
|
|
21072
22095
|
});
|
|
21073
|
-
|
|
21074
|
-
|
|
21075
|
-
|
|
21076
|
-
},
|
|
21077
|
-
deselectRow: (rowId) => {
|
|
21078
|
-
table.getRow(rowId).toggleSelected(false);
|
|
21079
|
-
},
|
|
21080
|
-
selectAllRows: () => {
|
|
21081
|
-
table.toggleAllRowsSelected(true);
|
|
21082
|
-
},
|
|
21083
|
-
deselectAllRows: () => {
|
|
21084
|
-
table.toggleAllRowsSelected(false);
|
|
21085
|
-
},
|
|
21086
|
-
selectRows: (rowIds) => {
|
|
21087
|
-
const selection = {};
|
|
21088
|
-
rowIds.forEach((id) => selection[id] = true);
|
|
21089
|
-
table.setRowSelection(selection);
|
|
21090
|
-
},
|
|
21091
|
-
getSelectedRows: () => {
|
|
21092
|
-
return table.getFilteredSelectedRowModel().rows.map((r) => r.original);
|
|
21093
|
-
},
|
|
21094
|
-
expandRow: (rowId) => {
|
|
21095
|
-
table.getRow(rowId).toggleExpanded(true);
|
|
21096
|
-
},
|
|
21097
|
-
collapseRow: (rowId) => {
|
|
21098
|
-
table.getRow(rowId).toggleExpanded(false);
|
|
21099
|
-
},
|
|
21100
|
-
expandAllRows: () => {
|
|
21101
|
-
table.toggleAllRowsExpanded(true);
|
|
21102
|
-
},
|
|
21103
|
-
collapseAllRows: () => {
|
|
21104
|
-
table.toggleAllRowsExpanded(false);
|
|
21105
|
-
},
|
|
21106
|
-
expandRows: (rowIds) => {
|
|
21107
|
-
const expansion = {};
|
|
21108
|
-
rowIds.forEach((id) => expansion[id] = true);
|
|
21109
|
-
table.setExpanded(expansion);
|
|
21110
|
-
}
|
|
21111
|
-
}), [table]);
|
|
21112
|
-
const { rows, rowsById } = table.getRowModel();
|
|
21113
|
-
const renderEmptyState = () => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableRow, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableCell, {
|
|
21114
|
-
colSpan: columns.length,
|
|
21115
|
-
className: ds_table_module_default.emptyState,
|
|
21116
|
-
children: emptyState || "No results."
|
|
21117
|
-
}) });
|
|
22096
|
+
const { columnSizeVars, activeResize, context: resizeContext } = resize.bind(table);
|
|
22097
|
+
(0, react.useImperativeHandle)(ref, () => createTableApi(table), [table]);
|
|
22098
|
+
const { rowsById } = table.getRowModel();
|
|
21118
22099
|
const selectedRows = Object.entries(rowSelection).filter(([, selected]) => selected).map(([key]) => rowsById[key]?.original).filter((v) => !!v);
|
|
21119
22100
|
const isBulkActionsVisible = selectable && actions.length > 0 && selectedRows.length > 0;
|
|
21120
|
-
|
|
21121
|
-
|
|
21122
|
-
|
|
21123
|
-
|
|
21124
|
-
|
|
21125
|
-
|
|
21126
|
-
|
|
21127
|
-
|
|
21128
|
-
|
|
21129
|
-
showSelectAllCheckbox,
|
|
21130
|
-
loading,
|
|
21131
|
-
onRowClick: loading ? void 0 : onRowClick,
|
|
21132
|
-
onRowDoubleClick: loading ? void 0 : onRowDoubleClick,
|
|
21133
|
-
primaryRowActions,
|
|
21134
|
-
secondaryRowActions,
|
|
21135
|
-
renderExpandedRow,
|
|
21136
|
-
virtualized,
|
|
21137
|
-
activeRowId,
|
|
21138
|
-
collapsedColumnGroups,
|
|
21139
|
-
onToggleColumnGroup: toggleColumnGroup,
|
|
21140
|
-
locale,
|
|
21141
|
-
onCellEdit,
|
|
21142
|
-
...editingState
|
|
21143
|
-
};
|
|
21144
|
-
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableContext.Provider, {
|
|
21145
|
-
value: contextValue,
|
|
22101
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableContextProvider, {
|
|
22102
|
+
tableProps,
|
|
22103
|
+
derived: {
|
|
22104
|
+
grouping: {
|
|
22105
|
+
collapsedColumnGroups,
|
|
22106
|
+
onToggleColumnGroup: toggleColumnGroup
|
|
22107
|
+
},
|
|
22108
|
+
resize: resizeContext
|
|
22109
|
+
},
|
|
21146
22110
|
children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
21147
22111
|
className: (0, classnames.default)(ds_table_module_default.container, isBulkActionsVisible && ds_table_module_default.bulkActionsVisible, className),
|
|
21148
22112
|
children: [
|
|
@@ -21150,12 +22114,13 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
21150
22114
|
className: ds_table_module_default.controls,
|
|
21151
22115
|
children: controls
|
|
21152
22116
|
}),
|
|
21153
|
-
/* @__PURE__ */ (0, react_jsx_runtime.
|
|
21154
|
-
ref:
|
|
22117
|
+
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)("div", {
|
|
22118
|
+
ref: resizeContext.resizeContainerRef,
|
|
21155
22119
|
className: (0, classnames.default)(!virtualized && ds_table_module_default.dataTableContainer, virtualized && ds_table_module_default.virtualizedContainer),
|
|
21156
|
-
children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DragWrapper, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Table, {
|
|
22120
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DragWrapper, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Table, {
|
|
21157
22121
|
className: (0, classnames.default)(fullWidth && ds_table_module_default.fullWidth, !bordered && ds_table_module_default.tableNoBorder),
|
|
21158
|
-
|
|
22122
|
+
style: columnSizeVars,
|
|
22123
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableHeader, { table }), virtualized ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MemoizedDsTableBodyVirtualized, {
|
|
21159
22124
|
table,
|
|
21160
22125
|
emptyState,
|
|
21161
22126
|
estimateSize: virtualizedOptions?.estimateSize || ROW_SIZE_HEIGHT_MAP[rowSize],
|
|
@@ -21163,11 +22128,16 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
21163
22128
|
onScroll,
|
|
21164
22129
|
rowSelection,
|
|
21165
22130
|
infiniteScroll
|
|
21166
|
-
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(
|
|
21167
|
-
|
|
21168
|
-
|
|
21169
|
-
|
|
21170
|
-
|
|
22131
|
+
}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(MemoizedDsTableRowsBody, {
|
|
22132
|
+
table,
|
|
22133
|
+
rowSelection,
|
|
22134
|
+
emptyState,
|
|
22135
|
+
SortableWrapper
|
|
22136
|
+
})]
|
|
22137
|
+
}) }), activeResize ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableResizeOverlay, {
|
|
22138
|
+
offset: activeResize.offset,
|
|
22139
|
+
phase: activeResize.phase
|
|
22140
|
+
}) : null]
|
|
21171
22141
|
}),
|
|
21172
22142
|
selectable && actions.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableBulkActions, {
|
|
21173
22143
|
numSelectedRows: selectedRows.length,
|
|
@@ -21181,6 +22151,20 @@ const DsTable = ({ ref, columns: columnsProp, data: tableData, controls, virtual
|
|
|
21181
22151
|
})
|
|
21182
22152
|
});
|
|
21183
22153
|
};
|
|
22154
|
+
const DsTableRowsBody = ({ table, rowSelection, emptyState, SortableWrapper }) => {
|
|
22155
|
+
const { rows } = table.getRowModel();
|
|
22156
|
+
const columnCount = table.getVisibleLeafColumns().length;
|
|
22157
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableBody, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortableWrapper, { children: rows.length ? rows.map((row) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsTableRow, {
|
|
22158
|
+
row,
|
|
22159
|
+
isSelected: !!rowSelection[row.id]
|
|
22160
|
+
}, row.id)) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableRow, { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableCell, {
|
|
22161
|
+
colSpan: columnCount,
|
|
22162
|
+
className: ds_table_module_default.emptyState,
|
|
22163
|
+
children: emptyState || "No results."
|
|
22164
|
+
}) }) }) });
|
|
22165
|
+
};
|
|
22166
|
+
const MemoizedDsTableRowsBody = react.memo(DsTableRowsBody, areBodiesFrozen);
|
|
22167
|
+
const MemoizedDsTableBodyVirtualized = react.memo(DsTableBodyVirtualized, areBodiesFrozen);
|
|
21184
22168
|
DsTable.displayName = "DsTable";
|
|
21185
22169
|
//#endregion
|
|
21186
22170
|
//#region src/components/ds-table/hooks/use-cell-editor.ts
|
|
@@ -21195,6 +22179,7 @@ const useCellEditor = ({ cellContext }) => {
|
|
|
21195
22179
|
const isActiveCell = ctx.editing !== null && ctx.editing.cell.row.id === row.id && ctx.editing.cell.column.id === column.id;
|
|
21196
22180
|
const value = isActiveCell && ctx.editing ? ctx.editing.draftValue : getValue();
|
|
21197
22181
|
const error = isActiveCell && ctx.editing ? ctx.editing.error : null;
|
|
22182
|
+
const isPending = isActiveCell && ctx.editing ? ctx.editing.pending : false;
|
|
21198
22183
|
const setValue = (next) => {
|
|
21199
22184
|
ctx.setDraft(next);
|
|
21200
22185
|
};
|
|
@@ -21210,6 +22195,7 @@ const useCellEditor = ({ cellContext }) => {
|
|
|
21210
22195
|
return {
|
|
21211
22196
|
value,
|
|
21212
22197
|
error,
|
|
22198
|
+
isPending,
|
|
21213
22199
|
setValue,
|
|
21214
22200
|
commit,
|
|
21215
22201
|
cancel,
|
|
@@ -21241,7 +22227,7 @@ const TableEditFormControl = ({ cellContext, error, children }) => {
|
|
|
21241
22227
|
//#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-text.tsx
|
|
21242
22228
|
/** Text input editor for table cells. Render via `ColumnDef.editCell`. */
|
|
21243
22229
|
const DsTableEditCellText = ({ cellContext, placeholder, maxLength }) => {
|
|
21244
|
-
const { value, setValue, error } = useCellEditor({ cellContext });
|
|
22230
|
+
const { value, setValue, error, isPending } = useCellEditor({ cellContext });
|
|
21245
22231
|
const inputRef = (0, react.useRef)(null);
|
|
21246
22232
|
(0, react.useEffect)(() => {
|
|
21247
22233
|
const input = inputRef.current;
|
|
@@ -21258,6 +22244,7 @@ const DsTableEditCellText = ({ cellContext, placeholder, maxLength }) => {
|
|
|
21258
22244
|
value,
|
|
21259
22245
|
placeholder,
|
|
21260
22246
|
maxLength,
|
|
22247
|
+
disabled: isPending,
|
|
21261
22248
|
onValueChange: setValue,
|
|
21262
22249
|
slots: error ? { endAdornment: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
21263
22250
|
icon: "error",
|
|
@@ -21271,7 +22258,7 @@ DsTableEditCellText.displayName = "DsTableEditCellText";
|
|
|
21271
22258
|
//#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-number.tsx
|
|
21272
22259
|
/** Number input editor for table cells. Render via `ColumnDef.editCell`. */
|
|
21273
22260
|
const DsTableEditCellNumber = ({ cellContext, min, max, step }) => {
|
|
21274
|
-
const { value, setValue, error } = useCellEditor({ cellContext });
|
|
22261
|
+
const { value, setValue, error, isPending } = useCellEditor({ cellContext });
|
|
21275
22262
|
const inputRef = (0, react.useRef)(null);
|
|
21276
22263
|
(0, react.useEffect)(() => {
|
|
21277
22264
|
const input = inputRef.current;
|
|
@@ -21289,6 +22276,7 @@ const DsTableEditCellNumber = ({ cellContext, min, max, step }) => {
|
|
|
21289
22276
|
min,
|
|
21290
22277
|
max,
|
|
21291
22278
|
step,
|
|
22279
|
+
disabled: isPending,
|
|
21292
22280
|
onValueChange: setValue
|
|
21293
22281
|
})
|
|
21294
22282
|
});
|
|
@@ -21298,7 +22286,7 @@ DsTableEditCellNumber.displayName = "DsTableEditCellNumber";
|
|
|
21298
22286
|
//#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-select.tsx
|
|
21299
22287
|
/** Select editor for table cells. Render via `ColumnDef.editCell`. */
|
|
21300
22288
|
const DsTableEditCellSelect = ({ cellContext, options, placeholder }) => {
|
|
21301
|
-
const { value, setValue, error } = useCellEditor({ cellContext });
|
|
22289
|
+
const { value, setValue, error, isPending } = useCellEditor({ cellContext });
|
|
21302
22290
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableEditFormControl, {
|
|
21303
22291
|
cellContext,
|
|
21304
22292
|
error,
|
|
@@ -21307,6 +22295,7 @@ const DsTableEditCellSelect = ({ cellContext, options, placeholder }) => {
|
|
|
21307
22295
|
value,
|
|
21308
22296
|
options,
|
|
21309
22297
|
placeholder,
|
|
22298
|
+
disabled: isPending,
|
|
21310
22299
|
onValueChange: setValue
|
|
21311
22300
|
})
|
|
21312
22301
|
});
|
|
@@ -21316,7 +22305,7 @@ DsTableEditCellSelect.displayName = "DsTableEditCellSelect";
|
|
|
21316
22305
|
//#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-date.tsx
|
|
21317
22306
|
/** Date picker editor for table cells. Render via `ColumnDef.editCell`. */
|
|
21318
22307
|
const DsTableEditCellDate = ({ cellContext, min, max, placeholder }) => {
|
|
21319
|
-
const { value, setValue, error } = useCellEditor({ cellContext });
|
|
22308
|
+
const { value, setValue, error, isPending } = useCellEditor({ cellContext });
|
|
21320
22309
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TableEditFormControl, {
|
|
21321
22310
|
cellContext,
|
|
21322
22311
|
error,
|
|
@@ -21326,6 +22315,7 @@ const DsTableEditCellDate = ({ cellContext, min, max, placeholder }) => {
|
|
|
21326
22315
|
min,
|
|
21327
22316
|
max,
|
|
21328
22317
|
placeholder,
|
|
22318
|
+
disabled: isPending,
|
|
21329
22319
|
onChange: setValue,
|
|
21330
22320
|
slotProps: error ? { input: { slots: { endAdornment: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsIcon, {
|
|
21331
22321
|
icon: "error",
|
|
@@ -21339,10 +22329,10 @@ DsTableEditCellDate.displayName = "DsTableEditCellDate";
|
|
|
21339
22329
|
//#region src/components/ds-table/components/edit/cell-editors/ds-table-edit-cell-checkbox.tsx
|
|
21340
22330
|
/** Checkbox editor for table cells. Render via `ColumnDef.editCell`. */
|
|
21341
22331
|
const DsTableEditCellCheckbox = ({ cellContext, disabled }) => {
|
|
21342
|
-
const { value, setValue } = useCellEditor({ cellContext });
|
|
22332
|
+
const { value, setValue, isPending } = useCellEditor({ cellContext });
|
|
21343
22333
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DsCheckbox, {
|
|
21344
22334
|
checked: value,
|
|
21345
|
-
disabled,
|
|
22335
|
+
disabled: disabled || isPending,
|
|
21346
22336
|
onCheckedChange: (checked) => setValue(checked === true)
|
|
21347
22337
|
});
|
|
21348
22338
|
};
|
|
@@ -22911,6 +23901,7 @@ exports.DsSkeleton = DsSkeleton;
|
|
|
22911
23901
|
exports.DsSkeletonCircle = DsSkeletonCircle;
|
|
22912
23902
|
exports.DsSkeletonRect = DsSkeletonRect;
|
|
22913
23903
|
exports.DsSkeletonText = DsSkeletonText;
|
|
23904
|
+
exports.DsSlider = DsSlider;
|
|
22914
23905
|
exports.DsSmartTabs = DsSmartTabs;
|
|
22915
23906
|
exports.DsSpinner = DsSpinner;
|
|
22916
23907
|
exports.DsSplitButton = DsSplitButton;
|
|
@@ -22950,6 +23941,7 @@ exports.FileUpload = FileUpload;
|
|
|
22950
23941
|
exports.FileUploadError = FileUploadError;
|
|
22951
23942
|
exports.RetryableFileUploadError = RetryableFileUploadError;
|
|
22952
23943
|
exports.alertBannerVariants = alertBannerVariants;
|
|
23944
|
+
exports.autocompleteSizes = autocompleteSizes;
|
|
22953
23945
|
exports.breakpoints = breakpoints;
|
|
22954
23946
|
exports.buttonV3Colors = buttonV3Colors;
|
|
22955
23947
|
exports.buttonV3Sizes = buttonV3Sizes;
|