@epam/uui 6.4.2 → 6.4.4
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/assets/styles/clickable.scss +26 -26
- package/assets/styles/dnd.scss +9 -9
- package/assets/styles/effects.scss +6 -6
- package/assets/styles/helpers.scss +12 -0
- package/assets/styles/index.scss +6 -6
- package/assets/styles/typography.scss +184 -184
- package/components/buttons/VerticalTabButton.d.ts.map +1 -1
- package/components/datePickers/DatePicker.d.ts.map +1 -1
- package/components/datePickers/RangeDatePickerInput.d.ts.map +1 -1
- package/components/filters/FilterNumericBody.d.ts +3 -3
- package/components/filters/FilterNumericBody.d.ts.map +1 -1
- package/components/filters/helpers/predicateHelpers.d.ts +11 -0
- package/components/filters/helpers/predicateHelpers.d.ts.map +1 -1
- package/components/inputs/timePicker/TimePicker.d.ts.map +1 -1
- package/components/inputs/timePicker/TimePickerBody.d.ts.map +1 -1
- package/components/layout/Blocker.d.ts +2 -1
- package/components/layout/Blocker.d.ts.map +1 -1
- package/components/layout/ScrollBars.d.ts +11 -1
- package/components/layout/ScrollBars.d.ts.map +1 -1
- package/components/layout/VirtualList.d.ts +1 -1
- package/components/layout/VirtualList.d.ts.map +1 -1
- package/components/overlays/DropdownMenu.d.ts +2 -2
- package/components/overlays/DropdownMenu.d.ts.map +1 -1
- package/components/pickers/DataPickerBody.d.ts.map +1 -1
- package/components/tables/ColumnHeaderDropdown/SortingPanel.d.ts.map +1 -1
- package/components/tables/DataTable.d.ts +3 -2
- package/components/tables/DataTable.d.ts.map +1 -1
- package/components/tables/DataTableHeaderCell.d.ts +2 -21
- package/components/tables/DataTableHeaderCell.d.ts.map +1 -1
- package/components/tables/columnsConfigurationModal/ColumnsConfigurationModal.d.ts +1 -1
- package/components/tables/columnsConfigurationModal/ColumnsConfigurationModal.d.ts.map +1 -1
- package/components/widgets/DataRowAddons.d.ts.map +1 -1
- package/i18n.d.ts +1 -0
- package/i18n.d.ts.map +1 -1
- package/index.esm.js +322 -242
- package/index.esm.js.map +1 -1
- package/index.js +320 -240
- package/index.js.map +1 -1
- package/package.json +5 -5
- package/readme.md +9 -9
- package/stats.html +1 -1
- package/styles.css +1043 -1024
- package/styles.css.map +1 -1
package/index.esm.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import * as uuiComponents from '@epam/uui-components';
|
|
2
|
-
import { Spinner as Spinner$1, Blocker as Blocker$1, Clickable, IconContainer, AvatarStack as AvatarStack$1, ControlIcon, Paginator as Paginator$1, RadioInput as RadioInput$1, TextInput as TextInput$1, ControlGroup as ControlGroup$1, NumericInput as NumericInput$1, TextArea as TextArea$1, Dropdown as Dropdown$1, InputAddon as InputAddon$1, Slider as Slider$1, DragHandle, Anchor as Anchor$1, FlexSpacer, Text as Text$1, FlexCell as FlexCell$1, VPanel, ModalBlocker as ModalBlocker$1, ModalWindow as ModalWindow$1, Snackbar as Snackbar$1, Calendar as Calendar$1, YearSelection, MonthSelection, Day, uuiDaySelection, Avatar, usePickerModal, handleDataSourceKeyboard, PickerToggler as PickerToggler$1, usePickerInput, usePickerList, DataTableCell as DataTableCell$1, DataTableRow as DataTableRow$1,
|
|
2
|
+
import { Spinner as Spinner$1, Blocker as Blocker$1, Clickable, IconContainer, AvatarStack as AvatarStack$1, ControlIcon, Paginator as Paginator$1, RadioInput as RadioInput$1, TextInput as TextInput$1, ControlGroup as ControlGroup$1, NumericInput as NumericInput$1, TextArea as TextArea$1, Dropdown as Dropdown$1, InputAddon as InputAddon$1, Slider as Slider$1, DragHandle, Anchor as Anchor$1, FlexSpacer, Text as Text$1, FlexCell as FlexCell$1, VPanel, ModalBlocker as ModalBlocker$1, ModalWindow as ModalWindow$1, Snackbar as Snackbar$1, Calendar as Calendar$1, YearSelection, MonthSelection, Day, uuiDaySelection, Avatar, usePickerModal, handleDataSourceKeyboard, PickerToggler as PickerToggler$1, usePickerInput, usePickerList, DataTableCell as DataTableCell$1, DataTableRow as DataTableRow$1, DataTableHeaderCell as DataTableHeaderCell$1, DataTableCellContainer, DataTableHeaderRow as DataTableHeaderRow$1, useColumnsConfiguration, Accordion as Accordion$1, DataTableSelectionProvider, DataTableFocusProvider, useShowSelected, usePickerApi, AdaptivePanel, Burger as Burger$1, Button as Button$1, DropSpot as DropSpot$1, UploadFileToggler, ErrorCatch } from '@epam/uui-components';
|
|
3
3
|
export { Avatar, DataTableCellContainer, FlexSpacer, IconContainer, MainMenuCustomElement, MainMenuLogo } from '@epam/uui-components';
|
|
4
4
|
import { withMods, devLogger, uuiElement, useIsActive, uuiMod, cx as cx$1, uuiMarkers, IEditableDebouncer, UuiContext, getDir, isEventTargetInsideClickable, directionMode, useScrollShadows, useVirtualList, isMobile, i18n as i18n$1, useUuiContext, useLayoutEffectSafeForSsr, usePrevious, mobilePositioning, uuiDataTableHeaderCell, uuiDataTableHeaderGroupCell, DndActor, uuiDndState, useColumnsConfig, uuiScrollShadows, useForceUpdate, getSeparatedValue, useArrayDataSource, orderBy, getOrderBetween, Form as Form$1, useForm as useForm$1, formatBytes, useUuiError } from '@epam/uui-core';
|
|
5
5
|
import * as React from 'react';
|
|
6
|
-
import React__default, { forwardRef, useState, useEffect, useContext, useRef,
|
|
6
|
+
import React__default, { forwardRef, useState, useEffect, useContext, useRef, useMemo, useImperativeHandle, useReducer, useCallback, useId, Fragment } from 'react';
|
|
7
7
|
import cx from 'classnames';
|
|
8
8
|
import { offset } from '@floating-ui/react';
|
|
9
9
|
import dayjs from 'dayjs';
|
|
@@ -156,7 +156,7 @@ var SvgEmptyTable = function SvgEmptyTable(props, ref) {
|
|
|
156
156
|
xmlns: "http://www.w3.org/2000/svg",
|
|
157
157
|
ref: ref
|
|
158
158
|
}, props), /*#__PURE__*/React.createElement("g", {
|
|
159
|
-
clipPath: "url(#
|
|
159
|
+
clipPath: "url(#g3sdanswhqkvot7f_a)"
|
|
160
160
|
}, _path$I || (_path$I = /*#__PURE__*/React.createElement("path", {
|
|
161
161
|
d: "M150.585 1.535C49.483-11.495 27.481 61.805 45.725 97.481c10.581 20.69-39.64 70.792 17.744 81.468 27.538 5.123 36-13.341 62.433-10.655 35.4 3.6 148.167-4.73 88.349-78.915-31.713-39.335 1.026-79.506-63.666-87.844Z",
|
|
162
162
|
fill: "#F5F6FA"
|
|
@@ -177,7 +177,7 @@ var SvgEmptyTable = function SvgEmptyTable(props, ref) {
|
|
|
177
177
|
d: "M86.786 22.982c-2.55 0-4.965 2.07-4.965 4.552V120.6c0 2.484 2.4 4.572 4.965 4.572h88.101c2.582 0 4.986-2.089 4.986-4.572V27.534c0-2.464-2.418-4.552-4.986-4.552h-88.1Zm-5.793 4.552c0-3.022 2.874-5.38 5.793-5.38h88.101c2.935 0 5.814 2.374 5.814 5.38V120.6c0 3.021-2.86 5.4-5.814 5.4h-88.1c-2.94 0-5.794-2.381-5.794-5.4V27.534Z",
|
|
178
178
|
fill: "#1D1E26"
|
|
179
179
|
})), /*#__PURE__*/React.createElement("mask", {
|
|
180
|
-
id: "
|
|
180
|
+
id: "g3sdancilj2tzyi46_b",
|
|
181
181
|
style: {
|
|
182
182
|
maskType: "alpha"
|
|
183
183
|
},
|
|
@@ -190,7 +190,7 @@ var SvgEmptyTable = function SvgEmptyTable(props, ref) {
|
|
|
190
190
|
d: "M174.887 125.586h-88.1c-2.752 0-5.38-2.234-5.38-4.986V27.534c0-2.752 2.644-4.966 5.38-4.966h88.1c2.752 0 5.4 2.23 5.4 4.966V120.6c0 2.752-2.632 4.986-5.4 4.986Z",
|
|
191
191
|
fill: "#9BDEFF"
|
|
192
192
|
}))), _g || (_g = /*#__PURE__*/React.createElement("g", {
|
|
193
|
-
mask: "url(#
|
|
193
|
+
mask: "url(#g3sdancilj2tzyi46_b)",
|
|
194
194
|
fillRule: "evenodd",
|
|
195
195
|
clipRule: "evenodd"
|
|
196
196
|
}, /*#__PURE__*/React.createElement("path", {
|
|
@@ -276,7 +276,7 @@ var SvgEmptyTable = function SvgEmptyTable(props, ref) {
|
|
|
276
276
|
d: "M24.73 96.184a.414.414 0 0 1 .581.06l48.646 59.751a.413.413 0 1 1-.642.523L24.67 96.766a.414.414 0 0 1 .06-.582Z",
|
|
277
277
|
fill: "#fff"
|
|
278
278
|
}))), _defs || (_defs = /*#__PURE__*/React.createElement("defs", null, /*#__PURE__*/React.createElement("clipPath", {
|
|
279
|
-
id: "
|
|
279
|
+
id: "g3sdanswhqkvot7f_a"
|
|
280
280
|
}, /*#__PURE__*/React.createElement("path", {
|
|
281
281
|
fill: "#fff",
|
|
282
282
|
transform: "translate(.552)",
|
|
@@ -927,14 +927,14 @@ var SvgSearchWithBackground = function SvgSearchWithBackground(props, ref) {
|
|
|
927
927
|
};
|
|
928
928
|
var ForwardRef$4 = /*#__PURE__*/forwardRef(SvgSearchWithBackground);
|
|
929
929
|
|
|
930
|
-
var css$1w = {"root":"
|
|
930
|
+
var css$1w = {"root":"UE27xC","uui-spinner":"JZ8Uv5","uuiSpinner":"JZ8Uv5"};
|
|
931
931
|
|
|
932
932
|
function applySpinnerMods() {
|
|
933
933
|
return [css$1w.root, 'uui-spinner'];
|
|
934
934
|
}
|
|
935
935
|
const Spinner = /* @__PURE__ */withMods(Spinner$1, applySpinnerMods);
|
|
936
936
|
|
|
937
|
-
var css$1v = {"root":"
|
|
937
|
+
var css$1v = {"root":"vlgrhq","loading-word":"RxXHQu","loadingWord":"RxXHQu","animated-loading":"vIsykU","animatedLoading":"vIsykU","skeleton_loading":"MTpfbj","skeletonLoading":"MTpfbj"};
|
|
938
938
|
|
|
939
939
|
const TextPlaceholder = (props) => {
|
|
940
940
|
const pattern = ' ';
|
|
@@ -951,7 +951,7 @@ const TextPlaceholder = (props) => {
|
|
|
951
951
|
]), dangerouslySetInnerHTML: { __html: it } })))));
|
|
952
952
|
};
|
|
953
953
|
|
|
954
|
-
var css$1u = {"root":"
|
|
954
|
+
var css$1u = {"root":"GDTy8P","line-height":"uxBDY-","lineHeight":"uxBDY-","font-size":"Jfl4Kx","fontSize":"Jfl4Kx"};
|
|
955
955
|
|
|
956
956
|
function applyTextMods(mods) {
|
|
957
957
|
return [
|
|
@@ -978,7 +978,7 @@ const Text = /* @__PURE__ */withMods(uuiComponents.Text, applyTextMods, (props)
|
|
|
978
978
|
};
|
|
979
979
|
});
|
|
980
980
|
|
|
981
|
-
var css$1t = {"root":"
|
|
981
|
+
var css$1t = {"root":"tP39oV"};
|
|
982
982
|
|
|
983
983
|
const Blocker = /* @__PURE__ */withMods(Blocker$1, () => [css$1t.root], () => ({ renderSpinner: settings.blocker.renderSpinner }));
|
|
984
984
|
|
|
@@ -1483,7 +1483,7 @@ const settings = {
|
|
|
1483
1483
|
textInput: textInputSettings,
|
|
1484
1484
|
};
|
|
1485
1485
|
|
|
1486
|
-
var css$1s = {"root":"
|
|
1486
|
+
var css$1s = {"root":"UngvQG"};
|
|
1487
1487
|
|
|
1488
1488
|
function applyButtonMods(mods) {
|
|
1489
1489
|
return [
|
|
@@ -1501,7 +1501,7 @@ const Button = /* @__PURE__ */withMods(uuiComponents.Button, applyButtonMods, ()
|
|
|
1501
1501
|
};
|
|
1502
1502
|
});
|
|
1503
1503
|
|
|
1504
|
-
var css$1r = {"root":"
|
|
1504
|
+
var css$1r = {"root":"WpOWm9"};
|
|
1505
1505
|
|
|
1506
1506
|
function applyIconButtonMods(props) {
|
|
1507
1507
|
return ['uui-icon_button', `uui-color-${props.color || 'neutral'}`, css$1r.root];
|
|
@@ -1538,7 +1538,7 @@ function getIconClass(props) {
|
|
|
1538
1538
|
return [classList['has-left-icon'] ? 'uui-has-left-icon' : 'uui-no-left-icon', classList['has-right-icon'] ? 'uui-has-right-icon' : 'uui-no-right-icon'];
|
|
1539
1539
|
}
|
|
1540
1540
|
|
|
1541
|
-
var css$1q = {"root":"
|
|
1541
|
+
var css$1q = {"root":"-wCqo3"};
|
|
1542
1542
|
|
|
1543
1543
|
const DEFAULT_COLOR = 'primary';
|
|
1544
1544
|
const LinkButton = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
@@ -1568,7 +1568,7 @@ const LinkButton = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
|
1568
1568
|
props.isDropdown && (React.createElement(IconContainer, { icon: DropdownIcon, flipY: props.isOpen }))));
|
|
1569
1569
|
});
|
|
1570
1570
|
|
|
1571
|
-
var css$1p = {"root":"
|
|
1571
|
+
var css$1p = {"root":"Nn9bGc"};
|
|
1572
1572
|
|
|
1573
1573
|
const CountIndicator = /* @__PURE__ */forwardRef((props, ref) => {
|
|
1574
1574
|
return (React__default.createElement("div", { ref: ref, className: cx([
|
|
@@ -1580,7 +1580,7 @@ const CountIndicator = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
1580
1580
|
]) }, props.caption));
|
|
1581
1581
|
});
|
|
1582
1582
|
|
|
1583
|
-
var css$1o = {"root":"
|
|
1583
|
+
var css$1o = {"root":"HB7Csf","withNotify":"_73xN8N"};
|
|
1584
1584
|
|
|
1585
1585
|
const TabButton = /* @__PURE__ */React__default.forwardRef((props, refExternal) => {
|
|
1586
1586
|
const refLocal = React__default.useRef(null);
|
|
@@ -1627,13 +1627,13 @@ const TabButton = /* @__PURE__ */React__default.forwardRef((props, refExternal)
|
|
|
1627
1627
|
props.onClear && !props.isDisabled && (React__default.createElement(IconContainer, { cx: uuiMarkers.clickable, icon: ClearIcon, onClick: props.onClear }))));
|
|
1628
1628
|
});
|
|
1629
1629
|
|
|
1630
|
-
var css$1n = {"root":"
|
|
1630
|
+
var css$1n = {"root":"DjEb16","noLeftPadding":"vFYbua","foldingArea":"d2FFaF","onlyFoldable":"F6gy36","captionWrapper":"_92Ln4t","withNotify":"tqso6T"};
|
|
1631
1631
|
|
|
1632
|
-
var css$1m = {"root":"
|
|
1632
|
+
var css$1m = {"root":"e0-jaV"};
|
|
1633
1633
|
|
|
1634
1634
|
const AvatarStack = /* @__PURE__ */withMods(AvatarStack$1, () => [css$1m.root]);
|
|
1635
1635
|
|
|
1636
|
-
var css$1l = {"root":"
|
|
1636
|
+
var css$1l = {"root":"MoXaMB"};
|
|
1637
1637
|
|
|
1638
1638
|
const DEFAULT_FILL = 'solid';
|
|
1639
1639
|
function applyBadgeMods(mods) {
|
|
@@ -1661,7 +1661,7 @@ const Badge = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
1661
1661
|
props.isDropdown && (React__default.createElement(IconContainer, { icon: DropdownIcon, flipY: props.isOpen }))));
|
|
1662
1662
|
});
|
|
1663
1663
|
|
|
1664
|
-
var css$1k = {"root":"
|
|
1664
|
+
var css$1k = {"root":"EluYH6"};
|
|
1665
1665
|
|
|
1666
1666
|
function applyTagMods(props) {
|
|
1667
1667
|
return [
|
|
@@ -1694,7 +1694,7 @@ const Tag = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
1694
1694
|
} }))));
|
|
1695
1695
|
});
|
|
1696
1696
|
|
|
1697
|
-
var css$1j = {"root":"
|
|
1697
|
+
var css$1j = {"root":"dGyt7a","page":"Ir6nO6","spacer":"I3NMdL","mode-ghost":"_4xtqr6","modeGhost":"_4xtqr6"};
|
|
1698
1698
|
|
|
1699
1699
|
function Paginator(props) {
|
|
1700
1700
|
const renderPaginator = (params) => (React__default.createElement("nav", { role: "navigation", className: cx('uui-paginator', `uui-size-${props.size || settings.paginator.sizes.default}`), ...params.rawProps },
|
|
@@ -1720,14 +1720,14 @@ function Paginator(props) {
|
|
|
1720
1720
|
return React__default.createElement(Paginator$1, { ...props, render: renderPaginator });
|
|
1721
1721
|
}
|
|
1722
1722
|
|
|
1723
|
-
var css$1i = {"root":"
|
|
1723
|
+
var css$1i = {"root":"C4JxUr","progress-bar":"nJiiRt","progressBar":"nJiiRt","progressBar-indeterminate":"Un-0I3","progressBarIndeterminate":"Un-0I3","size-12":"J-wweH","size12":"J-wweH","size-18":"YaxwGL","size18":"YaxwGL","size-24":"gljeGl","size24":"gljeGl"};
|
|
1724
1724
|
|
|
1725
1725
|
const IndeterminateBar = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
1726
1726
|
return (React.createElement("div", { ref: ref, className: cx('uui-indeterminate_bar', props.cx, css$1i.root, css$1i[`size-${props.size || 12}`]) },
|
|
1727
1727
|
React.createElement("div", { className: cx(css$1i.progressBar) })));
|
|
1728
1728
|
});
|
|
1729
1729
|
|
|
1730
|
-
var css$1h = {"root":"
|
|
1730
|
+
var css$1h = {"root":"ClOpVp","striped":"_8YBwrZ","animate-stripes":"-jpz57","animateStripes":"-jpz57","size-12":"tNDqAh","size12":"tNDqAh","size-18":"EolQHk","size18":"EolQHk","size-24":"JYY2Ik","size24":"JYY2Ik"};
|
|
1731
1731
|
|
|
1732
1732
|
const DEFAULT_SIZE = '12';
|
|
1733
1733
|
function applyProgressBarMods(mods) {
|
|
@@ -1742,14 +1742,14 @@ const ProgressBar = /* @__PURE__ */withMods(uuiComponents.ProgressBar, applyProg
|
|
|
1742
1742
|
hideLabel: props.hideLabel || props.striped,
|
|
1743
1743
|
}));
|
|
1744
1744
|
|
|
1745
|
-
var css$1g = {"root":"
|
|
1745
|
+
var css$1g = {"root":"_0mbooH"};
|
|
1746
1746
|
|
|
1747
1747
|
const IndicatorBar = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
1748
1748
|
const { progress } = props;
|
|
1749
1749
|
return progress || progress === 0 ? (React.createElement(ProgressBar, { ref: ref, progress: progress, cx: cx(css$1g.root, props.cx), hideLabel: true })) : (React.createElement(IndeterminateBar, { ref: ref, cx: cx(css$1g.root, props.cx) }));
|
|
1750
1750
|
});
|
|
1751
1751
|
|
|
1752
|
-
var css$1f = {"root":"
|
|
1752
|
+
var css$1f = {"root":"-Ez8OP"};
|
|
1753
1753
|
|
|
1754
1754
|
const StatusIndicator = /* @__PURE__ */forwardRef((props, ref) => {
|
|
1755
1755
|
return (React__default.createElement("div", { ref: ref, className: cx([
|
|
@@ -1764,7 +1764,7 @@ const StatusIndicator = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
1764
1764
|
React__default.createElement("p", { className: "uui-status_indicator-caption" }, props.caption)));
|
|
1765
1765
|
});
|
|
1766
1766
|
|
|
1767
|
-
var css$1e = {"root":"
|
|
1767
|
+
var css$1e = {"root":"ONuItu"};
|
|
1768
1768
|
|
|
1769
1769
|
function applyCheckboxMods(mods) {
|
|
1770
1770
|
return [
|
|
@@ -1782,7 +1782,7 @@ const applyUUICheckboxProps = (props) => {
|
|
|
1782
1782
|
};
|
|
1783
1783
|
const Checkbox = /* @__PURE__ */withMods(uuiComponents.Checkbox, applyCheckboxMods, applyUUICheckboxProps);
|
|
1784
1784
|
|
|
1785
|
-
var css$1d = {"root":"
|
|
1785
|
+
var css$1d = {"root":"JmMFgU"};
|
|
1786
1786
|
|
|
1787
1787
|
function applyRadioInputMods(mods) {
|
|
1788
1788
|
return [
|
|
@@ -1794,7 +1794,7 @@ function applyRadioInputMods(mods) {
|
|
|
1794
1794
|
}
|
|
1795
1795
|
const RadioInput = /* @__PURE__ */withMods(RadioInput$1, applyRadioInputMods, (props) => ({ icon: props.icon ? props.icon : settings.radioInput.icons.dotIcon }));
|
|
1796
1796
|
|
|
1797
|
-
var css$1c = {"root":"
|
|
1797
|
+
var css$1c = {"root":"XQzutj"};
|
|
1798
1798
|
|
|
1799
1799
|
function applySwitchMods(mods) {
|
|
1800
1800
|
return [
|
|
@@ -1818,7 +1818,7 @@ var EditMode;
|
|
|
1818
1818
|
EditMode["INLINE"] = "inline";
|
|
1819
1819
|
})(EditMode || (EditMode = {}));
|
|
1820
1820
|
|
|
1821
|
-
var textInputCss = {"root":"
|
|
1821
|
+
var textInputCss = {"root":"hMCzBl"};
|
|
1822
1822
|
|
|
1823
1823
|
const DEFAULT_MODE$3 = EditMode.FORM;
|
|
1824
1824
|
function applyTextInputMods(mods) {
|
|
@@ -1843,7 +1843,7 @@ const SearchInput = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
1843
1843
|
} }));
|
|
1844
1844
|
});
|
|
1845
1845
|
|
|
1846
|
-
var css$1b = {"root":"
|
|
1846
|
+
var css$1b = {"root":"BPv3vl"};
|
|
1847
1847
|
|
|
1848
1848
|
const ControlGroup = /* @__PURE__ */withMods(ControlGroup$1, () => [css$1b.root, 'uui-control-group']);
|
|
1849
1849
|
|
|
@@ -1859,7 +1859,7 @@ function MultiSwitchComponent(props, ref) {
|
|
|
1859
1859
|
}
|
|
1860
1860
|
const MultiSwitch = /* @__PURE__ */React.forwardRef(MultiSwitchComponent);
|
|
1861
1861
|
|
|
1862
|
-
var css$1a = {"root":"
|
|
1862
|
+
var css$1a = {"root":"MPAM05"};
|
|
1863
1863
|
|
|
1864
1864
|
const DEFAULT_MODE$2 = EditMode.FORM;
|
|
1865
1865
|
function applyNumericInputMods(mods) {
|
|
@@ -1879,7 +1879,7 @@ const NumericInput = /* @__PURE__ */withMods(NumericInput$1, applyNumericInputMo
|
|
|
1879
1879
|
};
|
|
1880
1880
|
});
|
|
1881
1881
|
|
|
1882
|
-
var css$19 = {"root":"
|
|
1882
|
+
var css$19 = {"root":"NvBVoj"};
|
|
1883
1883
|
|
|
1884
1884
|
const DEFAULT_MODE$1 = EditMode.FORM;
|
|
1885
1885
|
function applyTextAreaMods(mods) {
|
|
@@ -1920,7 +1920,7 @@ function TREE_SHAKEABLE_INIT$1() {
|
|
|
1920
1920
|
};
|
|
1921
1921
|
}
|
|
1922
1922
|
|
|
1923
|
-
var css$18 = {"root":"
|
|
1923
|
+
var css$18 = {"root":"wZvAB2"};
|
|
1924
1924
|
|
|
1925
1925
|
function applyDropdownContainerMods(mods) {
|
|
1926
1926
|
return [
|
|
@@ -1931,7 +1931,7 @@ function applyDropdownContainerMods(mods) {
|
|
|
1931
1931
|
}
|
|
1932
1932
|
const DropdownContainer = /* @__PURE__ */withMods(uuiComponents.DropdownContainer, applyDropdownContainerMods);
|
|
1933
1933
|
|
|
1934
|
-
var css$17 = {"root":"
|
|
1934
|
+
var css$17 = {"root":"uQskY7","timepicker-input":"pyHstO","timepickerInput":"pyHstO","ltr-always":"wGaM07","ltrAlways":"wGaM07"};
|
|
1935
1935
|
|
|
1936
1936
|
const uuiTimePicker = {
|
|
1937
1937
|
container: 'uui-timepicker-container',
|
|
@@ -1976,11 +1976,11 @@ function TimePickerBody(props) {
|
|
|
1976
1976
|
React.createElement(IconContainer, { size: 18, rawProps: { 'aria-label': 'Increment hours' }, cx: uuiTimePicker.iconUp, icon: ForwardRef$P, onClick: () => onHoursChange(uuiDayjs.dayjs().set(props.value).add(1, 'h').hour()) }),
|
|
1977
1977
|
React.createElement(NumericInput$1, { cx: uuiTimePicker.input, onValueChange: onHoursChange, value: +(uuiDayjs.dayjs()
|
|
1978
1978
|
.set(props.value)
|
|
1979
|
-
.format(MAX_HOURS === FORMAT_12H ? 'hh' : 'HH')), isReadonly: true, min: MIN_HOURS, max: MAX_HOURS }),
|
|
1979
|
+
.format(MAX_HOURS === FORMAT_12H ? 'hh' : 'HH')), formatValue: (v) => String(v).padStart(2, '0'), isReadonly: true, min: MIN_HOURS, max: MAX_HOURS }),
|
|
1980
1980
|
React.createElement(IconContainer, { size: 18, rawProps: { 'aria-label': 'Decrement hours' }, cx: uuiTimePicker.iconDown, icon: ForwardRef$P, onClick: () => onHoursChange(uuiDayjs.dayjs().set(props.value).subtract(1, 'h').hour()) })),
|
|
1981
1981
|
React.createElement("div", { className: uuiTimePicker.elementContainer },
|
|
1982
1982
|
React.createElement(IconContainer, { size: 18, rawProps: { 'aria-label': 'Increment minutes' }, cx: uuiTimePicker.iconUp, icon: ForwardRef$P, onClick: handleMinutesUpClick }),
|
|
1983
|
-
React.createElement(NumericInput$1, { cx: uuiTimePicker.input, onValueChange: onMinutesChange, value: +uuiDayjs.dayjs().set(props.value).format('m'), isReadonly: true, min: MIN_MINUTES, max: MAX_MINUTES }),
|
|
1983
|
+
React.createElement(NumericInput$1, { cx: uuiTimePicker.input, onValueChange: onMinutesChange, value: +uuiDayjs.dayjs().set(props.value).format('m'), formatValue: (v) => String(v).padStart(2, '0'), isReadonly: true, min: MIN_MINUTES, max: MAX_MINUTES }),
|
|
1984
1984
|
React.createElement(IconContainer, { size: 18, rawProps: { 'aria-label': 'Decrement minutes' }, cx: uuiTimePicker.iconDown, icon: ForwardRef$P, onClick: handleMinutesDownClick }))),
|
|
1985
1985
|
MAX_HOURS === FORMAT_12H && (React.createElement("div", { className: uuiTimePicker.elementContainer },
|
|
1986
1986
|
React.createElement(IconContainer, { size: 18, cx: uuiTimePicker.iconUp, icon: ForwardRef$P, onClick: onTimeTypeChange }),
|
|
@@ -2104,11 +2104,15 @@ function TimePickerComponent(props, ref) {
|
|
|
2104
2104
|
if (isTimeValid(result)) {
|
|
2105
2105
|
setState((prevState) => ({ ...prevState, value: result }));
|
|
2106
2106
|
}
|
|
2107
|
+
// save time immediately if the input value is valid
|
|
2108
|
+
if (isTimeValid(newValue)) {
|
|
2109
|
+
saveTime(newValue);
|
|
2110
|
+
}
|
|
2107
2111
|
}
|
|
2108
2112
|
};
|
|
2109
2113
|
const handleBlur = (e) => {
|
|
2110
2114
|
props.onBlur?.(e);
|
|
2111
|
-
if (state.value === '' || state.inputValue === '') {
|
|
2115
|
+
if (state.value === '' || state.inputValue === '' || state.value === null) {
|
|
2112
2116
|
props.onValueChange(null);
|
|
2113
2117
|
setState((prevState) => ({ ...prevState, value: null, inputValue: null }));
|
|
2114
2118
|
}
|
|
@@ -2128,6 +2132,8 @@ function TimePickerComponent(props, ref) {
|
|
|
2128
2132
|
};
|
|
2129
2133
|
const renderInput = (inputProps) => {
|
|
2130
2134
|
return (React__default.createElement(TextInput, { ...inputProps, size: props.size, isDisabled: props.isDisabled, isReadonly: props.isReadonly, isInvalid: props.isInvalid, cx: [css$17.root, css$17.timepickerInput, props.inputCx], value: state.inputValue, onValueChange: handleInputChange, onCancel: !props.disableClear && onClear, onKeyDown: onKeyDown, onFocus: handleFocus, onBlur: handleBlur, isDropdown: false, placeholder: props.placeholder ? props.placeholder : getFormat(), mode: props.mode || DEFAULT_MODE, rawProps: props.rawProps?.input, ref: (node) => {
|
|
2135
|
+
if (!node)
|
|
2136
|
+
return;
|
|
2131
2137
|
targetRef.current = node;
|
|
2132
2138
|
if (typeof inputProps.ref === 'function') {
|
|
2133
2139
|
inputProps.ref(node);
|
|
@@ -2146,7 +2152,7 @@ function TimePickerComponent(props, ref) {
|
|
|
2146
2152
|
}
|
|
2147
2153
|
const TimePicker = /* @__PURE__ */React__default.forwardRef(TimePickerComponent);
|
|
2148
2154
|
|
|
2149
|
-
var css$16 = {"root":"
|
|
2155
|
+
var css$16 = {"root":"mSYQeQ"};
|
|
2150
2156
|
|
|
2151
2157
|
function applyInputAddonMods() {
|
|
2152
2158
|
return [
|
|
@@ -2155,14 +2161,14 @@ function applyInputAddonMods() {
|
|
|
2155
2161
|
}
|
|
2156
2162
|
const InputAddon = /* @__PURE__ */withMods(InputAddon$1, applyInputAddonMods);
|
|
2157
2163
|
|
|
2158
|
-
var css$15 = {"root":"
|
|
2164
|
+
var css$15 = {"root":"_0T9jml"};
|
|
2159
2165
|
|
|
2160
2166
|
function applySliderMods() {
|
|
2161
2167
|
return [css$15.root, 'uui-color-neutral'];
|
|
2162
2168
|
}
|
|
2163
2169
|
const Slider = /* @__PURE__ */withMods(Slider$1, applySliderMods);
|
|
2164
2170
|
|
|
2165
|
-
var css$14 = {"root":"
|
|
2171
|
+
var css$14 = {"root":"OySA86"};
|
|
2166
2172
|
|
|
2167
2173
|
function applyTooltipMods(mods) {
|
|
2168
2174
|
return [
|
|
@@ -2172,7 +2178,7 @@ function applyTooltipMods(mods) {
|
|
|
2172
2178
|
}
|
|
2173
2179
|
const Tooltip = /* @__PURE__ */withMods(uuiComponents.Tooltip, applyTooltipMods);
|
|
2174
2180
|
|
|
2175
|
-
var css$13 = {"root":"
|
|
2181
|
+
var css$13 = {"root":"OqYx-a","tooltip":"-VZob5"};
|
|
2176
2182
|
|
|
2177
2183
|
function applyRatingMods(mods) {
|
|
2178
2184
|
return [
|
|
@@ -2186,10 +2192,13 @@ const Rating = /* @__PURE__ */withMods(uuiComponents.Rating, applyRatingMods, (p
|
|
|
2186
2192
|
Tooltip,
|
|
2187
2193
|
}));
|
|
2188
2194
|
|
|
2189
|
-
var css$12 = {"drag-handle-wrapper":"
|
|
2195
|
+
var css$12 = {"drag-handle-wrapper":"RZxDvE","dragHandleWrapper":"RZxDvE","with-indent":"_6omlAl","withIndent":"_6omlAl","drag-handle":"qN7vvv","dragHandle":"qN7vvv","icon-container":"Y7UjiS","iconContainer":"Y7UjiS"};
|
|
2190
2196
|
|
|
2191
2197
|
function DataRowAddons(props) {
|
|
2192
2198
|
const row = props.rowProps;
|
|
2199
|
+
const checkboxSize = settings.dataTable.sizes.body.checkboxMap[props.size];
|
|
2200
|
+
const isCheckboxVisible = row?.checkbox?.isVisible;
|
|
2201
|
+
const reserveCheckboxSpace = row?.checkbox?.reserveSpace;
|
|
2193
2202
|
const getIndent = () => {
|
|
2194
2203
|
return (row.indent - 1) * settings.dataTable.sizes.body.indentUnitMap[props.size || settings.dataTable.sizes.body.row];
|
|
2195
2204
|
};
|
|
@@ -2210,7 +2219,8 @@ function DataRowAddons(props) {
|
|
|
2210
2219
|
};
|
|
2211
2220
|
return (React__default.createElement(React__default.Fragment, null,
|
|
2212
2221
|
row.dnd?.srcData && renderDragHandle(),
|
|
2213
|
-
|
|
2222
|
+
isCheckboxVisible && (React__default.createElement(Checkbox, { key: "cb", cx: "uui-dr_addons-checkbox", tabIndex: props.tabIndex, size: checkboxSize, value: row.isChecked, indeterminate: !row.isChecked && row.isChildrenChecked, onValueChange: () => row.onCheck?.(row), isDisabled: row.checkbox.isDisabled, isInvalid: row.checkbox.isInvalid, rawProps: { 'aria-label': 'Select' } })),
|
|
2223
|
+
!isCheckboxVisible && reserveCheckboxSpace && (React__default.createElement("div", { key: "cb-spacer", className: cx('uui-checkbox-container', 'uui-dr_addons-checkbox-spacer', `uui-size-${checkboxSize}`), "aria-hidden": "true" })),
|
|
2214
2224
|
row.indent > 0 && (React__default.createElement("div", { key: "fold", className: cx('uui-dr_addons-indent', `uui-size-${props.size || settings.dataTable.sizes.body.row}`), style: { marginInlineStart: getIndent(), width: getWidth() } }, row.isFoldable && (React__default.createElement(ControlIcon, { rawProps: {
|
|
2215
2225
|
'aria-label': row.isFolded ? 'Unfold' : 'Fold',
|
|
2216
2226
|
role: 'button',
|
|
@@ -2248,6 +2258,7 @@ function VerticalTabButtonComponent(props, ref) {
|
|
|
2248
2258
|
const ClearIcon = props.clearIcon ? props.clearIcon : settings.verticalTabButton.icons.clearIcon;
|
|
2249
2259
|
return (React__default.createElement(Clickable, { ...props, onClick: props.onClick || props.onFold, rawProps: {
|
|
2250
2260
|
role: 'tab',
|
|
2261
|
+
'aria-selected': isActive,
|
|
2251
2262
|
...props.rawProps,
|
|
2252
2263
|
}, cx: styles, ref: ref },
|
|
2253
2264
|
props.indent > 0 && (React__default.createElement("div", { key: "fold", className: cx$1(css$1n.foldingArea, props.onFold && uuiMarkers.clickable), style: { '--uui-folding-indent': `${props.indent - 1}` }, onClick: props.onFold }, props.isFoldable && (React__default.createElement(IconContainer, { rawProps: {
|
|
@@ -2268,7 +2279,7 @@ function VerticalTabButtonComponent(props, ref) {
|
|
|
2268
2279
|
}
|
|
2269
2280
|
const VerticalTabButton = /* @__PURE__ */React__default.forwardRef(VerticalTabButtonComponent);
|
|
2270
2281
|
|
|
2271
|
-
var css$11 = {"root":"
|
|
2282
|
+
var css$11 = {"root":"suPfV7","main-path":"GqksXy","mainPath":"GqksXy","content-wrapper":"-N7JSJ","contentWrapper":"-N7JSJ","content":"sn-tUw","action-wrapper":"pAzBw1","actionWrapper":"pAzBw1","icon-wrapper":"JdDOMV","iconWrapper":"JdDOMV","icon":"Bp4zdQ","close-icon":"sSZgE3","closeIcon":"sSZgE3"};
|
|
2272
2283
|
|
|
2273
2284
|
const Alert = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement("div", { role: "alert", ref: ref, className: cx('uui-alert', css$11.root, props.color && `uui-color-${props.color}`, props.cx, `uui-size-${props.size || settings.alert.sizes.default}`), ...props.rawProps },
|
|
2274
2285
|
React.createElement("div", { className: css$11.mainPath },
|
|
@@ -2286,7 +2297,7 @@ const ErrorAlert = /* @__PURE__ */React.forwardRef((props, ref) => React.createE
|
|
|
2286
2297
|
|
|
2287
2298
|
const Dropdown = /* @__PURE__ */withMods(Dropdown$1);
|
|
2288
2299
|
|
|
2289
|
-
var css$10 = {"submenu-root-item-rtl":"
|
|
2300
|
+
var css$10 = {"submenu-root-item-rtl":"_8sezyH","submenuRootItemRtl":"_8sezyH","icon-after":"_2tkap9","iconAfter":"_2tkap9","submenu-root-item":"_7b-9d4","submenuRootItem":"_7b-9d4","icon-check":"K4cfYl","iconCheck":"K4cfYl","splitter-root":"gUr7g6","splitterRoot":"gUr7g6","splitter":"A6ftY9","header-root":"_85nMHp","headerRoot":"_85nMHp","item-root":"m-YPSQ","itemRoot":"m-YPSQ","icon":"_0nKtmu","link":"nvd2aA","indent":"yJQ5rE","selected-mark":"T6eITy","selectedMark":"T6eITy"};
|
|
2290
2301
|
|
|
2291
2302
|
var IDropdownControlKeys;
|
|
2292
2303
|
(function (IDropdownControlKeys) {
|
|
@@ -2303,7 +2314,7 @@ function DropdownMenuContainer(props) {
|
|
|
2303
2314
|
const getMenuItems = () => {
|
|
2304
2315
|
if (!menuRef.current)
|
|
2305
2316
|
return [];
|
|
2306
|
-
return Array.from(menuRef.current.querySelectorAll(`[role
|
|
2317
|
+
return Array.from(menuRef.current.querySelectorAll(`[role^="menuitem"]:not(.${uuiMod.disabled})`));
|
|
2307
2318
|
};
|
|
2308
2319
|
const changeFocus = (nextFocusedIndex) => {
|
|
2309
2320
|
const menuItems = getMenuItems();
|
|
@@ -2370,7 +2381,7 @@ const DropdownMenuButton = /* @__PURE__ */React__default.forwardRef((props, ref)
|
|
|
2370
2381
|
};
|
|
2371
2382
|
const isAnchor = Boolean(link || href);
|
|
2372
2383
|
const itemClassNames = cx$1(props.cx, css$10.itemRoot, isDisabled && uuiMod.disabled, isActive && uuiMod.active, isOpen && uuiMod.opened, (!isDisabled && onClick) && uuiMarkers.clickable);
|
|
2373
|
-
return isAnchor ? (React__default.createElement(Anchor$1, { cx: cx$1(css$10.link, itemClassNames), link: link, href: href, rawProps: { role: 'menuitem', tabIndex: isDisabled ? -1 : 0 }, onClick: handleClick, isDisabled: isDisabled, target: target }, getMenuButtonContent())) : (React__default.createElement("div", { tabIndex: isDisabled ? -1 : 0, role: "menuitem", onKeyDown: isDisabled ? null : handleOpenDropdown, className: itemClassNames, onClick: handleClick, ref: ref },
|
|
2384
|
+
return isAnchor ? (React__default.createElement(Anchor$1, { cx: cx$1(css$10.link, itemClassNames), link: link, href: href, rawProps: { role: 'menuitem', tabIndex: isDisabled ? -1 : 0, ...props.rawProps }, onClick: handleClick, isDisabled: isDisabled, target: target }, getMenuButtonContent())) : (React__default.createElement("div", { tabIndex: isDisabled ? -1 : 0, role: "menuitem", onKeyDown: isDisabled ? null : handleOpenDropdown, className: itemClassNames, onClick: handleClick, ref: ref, ...props.rawProps },
|
|
2374
2385
|
getMenuButtonContent(),
|
|
2375
2386
|
isSelected && (React__default.createElement(React__default.Fragment, null,
|
|
2376
2387
|
React__default.createElement(FlexSpacer, null),
|
|
@@ -2401,6 +2412,7 @@ function DropdownSubMenu(props) {
|
|
|
2401
2412
|
}
|
|
2402
2413
|
function DropdownMenuSwitchButton(props) {
|
|
2403
2414
|
const context = useContext(UuiContext);
|
|
2415
|
+
const switchRef = useRef(null);
|
|
2404
2416
|
const { icon, caption, isDisabled, isSelected, onValueChange, } = props;
|
|
2405
2417
|
const onHandleValueChange = (value) => {
|
|
2406
2418
|
if (isDisabled || !onValueChange)
|
|
@@ -2413,14 +2425,20 @@ function DropdownMenuSwitchButton(props) {
|
|
|
2413
2425
|
onHandleValueChange(!isSelected);
|
|
2414
2426
|
}
|
|
2415
2427
|
};
|
|
2416
|
-
|
|
2428
|
+
const handleClick = (event) => {
|
|
2429
|
+
const isSwitchClicked = switchRef.current?.contains(event.target);
|
|
2430
|
+
if (isSwitchClicked)
|
|
2431
|
+
return;
|
|
2432
|
+
onHandleValueChange(!isSelected);
|
|
2433
|
+
};
|
|
2434
|
+
return (React__default.createElement("div", { className: cx$1(props.cx, css$10.itemRoot, isDisabled && uuiMod.disabled, (!isDisabled || onValueChange) && uuiMarkers.clickable), onClick: handleClick, role: "menuitem", onKeyDown: handleKeySelect, tabIndex: isDisabled ? -1 : 0 },
|
|
2417
2435
|
icon && React__default.createElement(IconContainer, { icon: icon, cx: css$10.iconBefore }),
|
|
2418
2436
|
React__default.createElement(Text$1, null, caption),
|
|
2419
2437
|
React__default.createElement(FlexSpacer, null),
|
|
2420
|
-
React__default.createElement(Switch, { value: isSelected, tabIndex: -1, onValueChange: onHandleValueChange })));
|
|
2438
|
+
React__default.createElement(Switch, { value: isSelected, tabIndex: -1, onValueChange: onHandleValueChange, ref: switchRef })));
|
|
2421
2439
|
}
|
|
2422
2440
|
|
|
2423
|
-
var css$$ = {"root":"
|
|
2441
|
+
var css$$ = {"root":"PcyFZ3","mode-block":"-hovKu","modeBlock":"-hovKu","mode-inline":"_7uG285","modeInline":"_7uG285","padding-0":"MsI11x","padding0":"MsI11x","padding-6":"xfO-1U","padding6":"xfO-1U","padding-12":"jQJc2I","padding12":"jQJc2I","padding-18":"dEVGd2","padding18":"dEVGd2"};
|
|
2424
2442
|
|
|
2425
2443
|
function applyAccordionMods(mods) {
|
|
2426
2444
|
return [
|
|
@@ -2433,7 +2451,7 @@ const Accordion = /* @__PURE__ */withMods(uuiComponents.Accordion, applyAccordio
|
|
|
2433
2451
|
dropdownIcon: mods.dropdownIcon !== null && settings.accordion.icons.dropdownIcon,
|
|
2434
2452
|
}));
|
|
2435
2453
|
|
|
2436
|
-
var css$_ = {"root":"
|
|
2454
|
+
var css$_ = {"root":"ikdE6t","align-items":"NQh8KE","alignItems":"NQh8KE","justify-content":"_8UUkKu","justifyContent":"_8UUkKu","border-top":"E1eUd7","borderTop":"E1eUd7","border-bottom":"FpoPsZ","borderBottom":"FpoPsZ","top-shadow":"i8Vw0o","topShadow":"i8Vw0o","padding":"cbGu2X","margin":"OqFcqI","vPadding":"lcmsET","column-gap":"_4jB8Qh","columnGap":"_4jB8Qh","row-gap":"CNZhiF","rowGap":"CNZhiF","spacing":"TrD3JA"};
|
|
2437
2455
|
|
|
2438
2456
|
const FlexCell = /* @__PURE__ */withMods(FlexCell$1, () => [css$_.flexCell]);
|
|
2439
2457
|
|
|
@@ -2485,7 +2503,7 @@ const FlexRow = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
2485
2503
|
} }, props.children));
|
|
2486
2504
|
});
|
|
2487
2505
|
|
|
2488
|
-
var css$Z = {"root":"
|
|
2506
|
+
var css$Z = {"root":"mdSWEE","margin-24":"_2nytQ-","margin24":"_2nytQ-","padding-12":"GMGJf2","padding12":"GMGJf2","padding-24":"u-TmU9","padding24":"u-TmU9","shadow":"GJha7t","uui-surface-main":"BHP0Yp","uuiSurfaceMain":"BHP0Yp"};
|
|
2489
2507
|
|
|
2490
2508
|
const Panel = /* @__PURE__ */withMods(VPanel, (props) => [
|
|
2491
2509
|
'uui-panel',
|
|
@@ -2495,7 +2513,7 @@ const Panel = /* @__PURE__ */withMods(VPanel, (props) => [
|
|
|
2495
2513
|
props.background && css$Z[`uui-${props.background}`],
|
|
2496
2514
|
]);
|
|
2497
2515
|
|
|
2498
|
-
var css$Y = {"root":"
|
|
2516
|
+
var css$Y = {"root":"a0b0i-"};
|
|
2499
2517
|
|
|
2500
2518
|
function applyLabeledInputMods(mods) {
|
|
2501
2519
|
return [
|
|
@@ -2517,7 +2535,7 @@ function applyLabeledInputProps(props) {
|
|
|
2517
2535
|
}
|
|
2518
2536
|
const LabeledInput = /* @__PURE__ */withMods(uuiComponents.LabeledInput, applyLabeledInputMods, applyLabeledInputProps);
|
|
2519
2537
|
|
|
2520
|
-
var css$X = {"root":"
|
|
2538
|
+
var css$X = {"root":"cKPomo"};
|
|
2521
2539
|
|
|
2522
2540
|
function RadioGroup(props) {
|
|
2523
2541
|
const direction = props.direction || 'vertical';
|
|
@@ -2532,7 +2550,7 @@ function RadioGroup(props) {
|
|
|
2532
2550
|
})));
|
|
2533
2551
|
}
|
|
2534
2552
|
|
|
2535
|
-
var css$W = {"root":"
|
|
2553
|
+
var css$W = {"root":"Yc1hqI","viewport":"AR-rKK"};
|
|
2536
2554
|
|
|
2537
2555
|
var uuiScrollbars;
|
|
2538
2556
|
(function (uuiScrollbars) {
|
|
@@ -2542,16 +2560,25 @@ var uuiScrollbars;
|
|
|
2542
2560
|
uuiScrollbars["uuiLineBottom"] = "uui-line-bottom";
|
|
2543
2561
|
})(uuiScrollbars || (uuiScrollbars = {}));
|
|
2544
2562
|
const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
|
|
2545
|
-
const { cx: outerCx, children, overflowTopEffect = 'none', overflowBottomEffect = 'none', onScroll, autoHide = 'never', autoHideDelay, rawProps, ...rest } = props;
|
|
2563
|
+
const { cx: outerCx, children, overflowTopEffect = 'none', overflowBottomEffect = 'none', onScroll, autoHide = 'never', autoHideDelay, elementEvents, rawProps, ...rest } = props;
|
|
2546
2564
|
const [shadowElements, setShadowElements] = useState({
|
|
2547
2565
|
host: null,
|
|
2548
2566
|
viewport: null,
|
|
2549
2567
|
});
|
|
2550
2568
|
const hostRef = useRef(null);
|
|
2551
2569
|
const viewportRef = useRef(null);
|
|
2552
|
-
const
|
|
2570
|
+
const elementEventsEffective = useMemo(() => {
|
|
2571
|
+
const result = [['img', 'load']]; // this is default
|
|
2572
|
+
if (elementEvents && elementEvents.length > 0) {
|
|
2573
|
+
result.push(...elementEvents);
|
|
2574
|
+
}
|
|
2575
|
+
return result;
|
|
2576
|
+
}, [elementEvents]);
|
|
2553
2577
|
const [initialize, osInstance] = useOverlayScrollbars({
|
|
2554
2578
|
options: {
|
|
2579
|
+
update: {
|
|
2580
|
+
elementEvents: elementEventsEffective,
|
|
2581
|
+
},
|
|
2555
2582
|
scrollbars: {
|
|
2556
2583
|
theme: 'uui-scroll-bars',
|
|
2557
2584
|
autoHide: autoHide,
|
|
@@ -2593,7 +2620,7 @@ const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
2593
2620
|
useScrollShadows(shadowElements.host, shadowElements.viewport);
|
|
2594
2621
|
useImperativeHandle(ref, () => {
|
|
2595
2622
|
return {
|
|
2596
|
-
container:
|
|
2623
|
+
container: hostRef.current,
|
|
2597
2624
|
view: viewportRef.current,
|
|
2598
2625
|
};
|
|
2599
2626
|
}, []);
|
|
@@ -2602,7 +2629,7 @@ const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
2602
2629
|
});
|
|
2603
2630
|
ScrollBars.displayName = 'ScrollBars';
|
|
2604
2631
|
|
|
2605
|
-
var css$V = {"scroll-container":"
|
|
2632
|
+
var css$V = {"scroll-container":"gugpxO","scrollContainer":"gugpxO","list-container":"DtcsB0","listContainer":"DtcsB0"};
|
|
2606
2633
|
|
|
2607
2634
|
const VirtualList = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
2608
2635
|
const { listContainerRef, offsetY, handleScroll, estimatedHeight, scrollContainerRef, } = useVirtualList({
|
|
@@ -2611,8 +2638,11 @@ const VirtualList = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
2611
2638
|
onScroll: props.onScroll,
|
|
2612
2639
|
rowsCount: props.rowsCount,
|
|
2613
2640
|
rowsSelector: props.rowsSelector,
|
|
2641
|
+
rowHeight: props.rowHeight,
|
|
2642
|
+
rowGap: props.rowGap,
|
|
2614
2643
|
});
|
|
2615
2644
|
React__default.useImperativeHandle(ref, () => scrollContainerRef.current, [scrollContainerRef.current]);
|
|
2645
|
+
const [blockerInset, setBlockerInset] = React__default.useState(null);
|
|
2616
2646
|
const renderRows = () => props.renderRows?.({
|
|
2617
2647
|
listContainerRef, estimatedHeight, offsetY,
|
|
2618
2648
|
}) || (React__default.createElement("div", { className: css$V.listContainer, style: { minHeight: `${estimatedHeight}px` } },
|
|
@@ -2622,9 +2652,28 @@ const VirtualList = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
2622
2652
|
return;
|
|
2623
2653
|
scrollContainerRef.current = scrollbars.view;
|
|
2624
2654
|
}, []);
|
|
2625
|
-
|
|
2655
|
+
const rawProps = React__default.useMemo(() => ({
|
|
2656
|
+
...(props.rawProps ?? {}),
|
|
2657
|
+
style: {
|
|
2658
|
+
...(props.rawProps?.style ?? {}),
|
|
2659
|
+
overflow: props.isLoading ? 'hidden' : props.rawProps?.style?.overflow,
|
|
2660
|
+
},
|
|
2661
|
+
}), [props.rawProps, props.isLoading]);
|
|
2662
|
+
const updateBlockerInset = React__default.useCallback(() => {
|
|
2663
|
+
const scrollContainer = scrollContainerRef.current;
|
|
2664
|
+
if (!scrollContainer)
|
|
2665
|
+
return;
|
|
2666
|
+
const { scrollTop, scrollLeft } = scrollContainer;
|
|
2667
|
+
setBlockerInset({ top: scrollTop, left: scrollLeft, right: -scrollLeft, bottom: -scrollTop });
|
|
2668
|
+
}, [setBlockerInset]);
|
|
2669
|
+
React__default.useEffect(() => {
|
|
2670
|
+
if (props.isLoading) {
|
|
2671
|
+
updateBlockerInset();
|
|
2672
|
+
}
|
|
2673
|
+
}, [props.isLoading, updateBlockerInset]);
|
|
2674
|
+
return (React__default.createElement(ScrollBars, { cx: cx$1(css$V.scrollContainer, props.cx), onScroll: handleScroll, ref: scrollBarsRef, rawProps: rawProps, overflowTopEffect: props.overflowTopEffect, overflowBottomEffect: props.overflowBottomEffect, autoHide: props.isLoading ? 'scroll' : undefined },
|
|
2626
2675
|
renderRows(),
|
|
2627
|
-
React__default.createElement(Blocker, { isEnabled: props.isLoading })));
|
|
2676
|
+
React__default.createElement(Blocker, { isEnabled: props.isLoading, inset: blockerInset })));
|
|
2628
2677
|
});
|
|
2629
2678
|
|
|
2630
2679
|
const RichTextView = /* @__PURE__ */withMods(uuiComponents.RichTextView, (mods) => ['uui-typography', `uui-typography-size-${mods.size || settings.richTextView.sizes.default}`]);
|
|
@@ -2655,7 +2704,7 @@ function Tree(props) {
|
|
|
2655
2704
|
return (React.createElement(VirtualList, { value: value, onValueChange: onValueChange, rowsCount: rowsCount, rows: renderedRows, cx: cx$1(propsCx), role: "tree" }));
|
|
2656
2705
|
}
|
|
2657
2706
|
|
|
2658
|
-
var css$U = {"root":"
|
|
2707
|
+
var css$U = {"root":"lMXYuJ"};
|
|
2659
2708
|
|
|
2660
2709
|
function CheckboxGroup(props) {
|
|
2661
2710
|
const currentValue = props.value || [];
|
|
@@ -2757,7 +2806,7 @@ const Tabs = /* @__PURE__ */forwardRef((props, ref) => {
|
|
|
2757
2806
|
});
|
|
2758
2807
|
Tabs.displayName = 'Tabs';
|
|
2759
2808
|
|
|
2760
|
-
var css$T = {"root":"
|
|
2809
|
+
var css$T = {"root":"_4yUjfz","modal-blocker":"TX5p8-","modalBlocker":"TX5p8-","animateModalBlocker":"qsInCo","modal":"_2Ks58T","modal-footer":"qmTu-7","modalFooter":"qmTu-7","border-top":"_6W15ve","borderTop":"_6W15ve","modal-header":"kBqnuN","modalHeader":"kBqnuN","border-bottom":"mGXFEu","borderBottom":"mGXFEu"};
|
|
2761
2810
|
|
|
2762
2811
|
const ModalBlocker = /* @__PURE__ */withMods(ModalBlocker$1, () => [css$T.modalBlocker]);
|
|
2763
2812
|
const ModalWindow = /* @__PURE__ */withMods(ModalWindow$1, () => [css$T.root, css$T.modal], (props) => {
|
|
@@ -2864,6 +2913,7 @@ const TREE_SHAKEABLE_INIT = () => ({
|
|
|
2864
2913
|
columnHeader: {
|
|
2865
2914
|
collapseAllTooltip: 'Collapse All',
|
|
2866
2915
|
expandAllTooltip: 'Expand All',
|
|
2916
|
+
filterActiveLabel: 'filter active',
|
|
2867
2917
|
},
|
|
2868
2918
|
},
|
|
2869
2919
|
pickerFilterHeader: {
|
|
@@ -2949,7 +2999,7 @@ const TREE_SHAKEABLE_INIT = () => ({
|
|
|
2949
2999
|
});
|
|
2950
3000
|
const i18n = /* @__PURE__ */TREE_SHAKEABLE_INIT();
|
|
2951
3001
|
|
|
2952
|
-
var css$S = {"root":"
|
|
3002
|
+
var css$S = {"root":"VCuR5k","icon-wrapper":"prqZvp","iconWrapper":"prqZvp","action-wrapper":"X-IzMp","actionWrapper":"X-IzMp","close-icon":"_3EZ22P","closeIcon":"_3EZ22P","main-path":"QDcskl","mainPath":"QDcskl","content":"J9j7nF","close-wrapper":"Cq64U-","closeWrapper":"Cq64U-","clear-notifications":"M5PhB8","clearNotifications":"M5PhB8"};
|
|
2953
3003
|
|
|
2954
3004
|
const NotificationCard = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
2955
3005
|
const notificationCardNode = React__default.useRef(null);
|
|
@@ -2982,7 +3032,7 @@ function ClearNotification() {
|
|
|
2982
3032
|
React__default.createElement(LinkButton, { caption: i18n.notificationCard.closeAllNotificationsButton, onClick: () => uuiCtx.uuiNotifications.clearAll() })));
|
|
2983
3033
|
}
|
|
2984
3034
|
|
|
2985
|
-
var css$R = {"footer":"
|
|
3035
|
+
var css$R = {"footer":"J56wd0"};
|
|
2986
3036
|
|
|
2987
3037
|
class ConfirmationModal extends React.Component {
|
|
2988
3038
|
render() {
|
|
@@ -3024,7 +3074,7 @@ function useReliableForceUpdate() {
|
|
|
3024
3074
|
return red[1];
|
|
3025
3075
|
}
|
|
3026
3076
|
|
|
3027
|
-
var css$Q = {"root":"
|
|
3077
|
+
var css$Q = {"root":"CGEeiF","container":"vi-Ish"};
|
|
3028
3078
|
|
|
3029
3079
|
const defaultFormat = 'MMM D, YYYY';
|
|
3030
3080
|
const valueFormat = 'YYYY-MM-DD';
|
|
@@ -3251,14 +3301,14 @@ function DatePickerHeader({ navIconLeft, navIconRight, value: { month, view }, o
|
|
|
3251
3301
|
React.createElement(Button, { icon: navIconRight || settings.datePicker.icons.body.nextIcon, color: "secondary", fill: "ghost", cx: uuiHeader.navIconRight, onClick: !isDisabled && (() => onRightNavigationArrow()), isDisabled: disableNext }))));
|
|
3252
3302
|
}
|
|
3253
3303
|
|
|
3254
|
-
var css$P = {"root":"
|
|
3304
|
+
var css$P = {"root":"EXKo7e"};
|
|
3255
3305
|
|
|
3256
3306
|
function applyDateSelectionMods() {
|
|
3257
3307
|
return [css$P.root, `uui-size-${settings.datePicker.sizes.body}`];
|
|
3258
3308
|
}
|
|
3259
3309
|
const Calendar = /* @__PURE__ */withMods(Calendar$1, applyDateSelectionMods);
|
|
3260
3310
|
|
|
3261
|
-
var css$O = {"root":"
|
|
3311
|
+
var css$O = {"root":"fM4MRI"};
|
|
3262
3312
|
|
|
3263
3313
|
const uuiDatePickerBody = {
|
|
3264
3314
|
wrapper: 'uui-datepicker-body-wrapper',
|
|
@@ -3324,7 +3374,8 @@ function DatePickerComponent(props, ref) {
|
|
|
3324
3374
|
setInputValue(toCustomDateFormat(value, format));
|
|
3325
3375
|
}, [value, setInputValue]);
|
|
3326
3376
|
const onValueChange = (newValue) => {
|
|
3327
|
-
|
|
3377
|
+
const isValueChanged = (value || '') !== (newValue || '');
|
|
3378
|
+
if (isValueChanged) {
|
|
3328
3379
|
props.onValueChange(newValue);
|
|
3329
3380
|
if (props.getValueChangeAnalyticsEvent) {
|
|
3330
3381
|
const event = props.getValueChangeAnalyticsEvent(newValue, value);
|
|
@@ -3339,6 +3390,10 @@ function DatePickerComponent(props, ref) {
|
|
|
3339
3390
|
};
|
|
3340
3391
|
const onBlur = (e) => {
|
|
3341
3392
|
props.onBlur?.(e);
|
|
3393
|
+
const formattedValue = toCustomDateFormat(value, format);
|
|
3394
|
+
if (inputValue === formattedValue) {
|
|
3395
|
+
return; // No changes made to the field, skip validation
|
|
3396
|
+
}
|
|
3342
3397
|
if (isValidDate(inputValue, format, props.filter)) {
|
|
3343
3398
|
setInputValue(toCustomDateFormat(inputValue, format));
|
|
3344
3399
|
onValueChange(toValueDateFormat(inputValue, format));
|
|
@@ -3367,7 +3422,7 @@ function DatePickerComponent(props, ref) {
|
|
|
3367
3422
|
props.onFocus?.(e);
|
|
3368
3423
|
}, onKeyDown: onInputKeyDown, onBlur: onBlur, mode: props.mode || defaultMode$1, rawProps: props.rawProps?.input, id: props.id }));
|
|
3369
3424
|
};
|
|
3370
|
-
const renderBody = useMemo(() => (renderProps)
|
|
3425
|
+
const renderBody = useMemo(() => function (renderProps) {
|
|
3371
3426
|
return (React__default.createElement(DropdownContainer, { ...renderProps },
|
|
3372
3427
|
React__default.createElement(DatePickerBody, { value: value, onValueChange: onBodyValueChange, cx: cx$1(props.bodyCx), filter: props.filter, isHoliday: props.isHoliday, renderDay: props.renderDay, rawProps: props.rawProps?.body, initialViewMonth: props.initialViewMonth }),
|
|
3373
3428
|
props.renderFooter?.()));
|
|
@@ -3380,7 +3435,7 @@ function DatePickerComponent(props, ref) {
|
|
|
3380
3435
|
}
|
|
3381
3436
|
const DatePicker = /* @__PURE__ */React__default.forwardRef(DatePickerComponent);
|
|
3382
3437
|
|
|
3383
|
-
var css$N = {"date-input":"
|
|
3438
|
+
var css$N = {"date-input":"f61-sG","dateInput":"f61-sG","root":"g7GnjG","separator":"awlDd6"};
|
|
3384
3439
|
|
|
3385
3440
|
const RangeDatePickerInput = /* @__PURE__ */forwardRef(({ isDisabled, isInvalid, isReadonly, size, disableClear, rawProps, value, inFocus, format, onValueChange, onFocusInput, onBlurInput, onClick, getPlaceholder, filter, onKeyDown, preventEmptyFromDate, preventEmptyToDate, id, cx: classes, }, ref) => {
|
|
3386
3441
|
const [inputValue, setInputValue] = useState(toCustomDateRangeFormat(value, format));
|
|
@@ -3403,6 +3458,10 @@ const RangeDatePickerInput = /* @__PURE__ */forwardRef(({ isDisabled, isInvalid,
|
|
|
3403
3458
|
};
|
|
3404
3459
|
const handleBlur = (event, inputType) => {
|
|
3405
3460
|
onBlurInput?.(event, inputType);
|
|
3461
|
+
const formattedValue = toCustomDateRangeFormat(value, format);
|
|
3462
|
+
if (inputValue[inputType] === formattedValue[inputType]) {
|
|
3463
|
+
return; // No changes made to this field, skip validation
|
|
3464
|
+
}
|
|
3406
3465
|
const canBeEmpty = {
|
|
3407
3466
|
from: !preventEmptyFromDate,
|
|
3408
3467
|
to: !preventEmptyToDate,
|
|
@@ -3453,7 +3512,7 @@ const RangeDatePickerInput = /* @__PURE__ */forwardRef(({ isDisabled, isInvalid,
|
|
|
3453
3512
|
React__default.createElement(TextInput, { cx: cx$1(css$N.dateInput, inFocus === 'to' && uuiMod.focus), placeholder: getPlaceholder ? getPlaceholder('to') : i18n.rangeDatePicker.pickerPlaceholderTo, size: size || settings.rangeDatePicker.sizes.default, value: inputValue.to || undefined, icon: clearAllowed && ForwardRef$Q, iconPosition: "right", iconLabel: "Clear selected date range", onIconClick: onClear, onValueChange: (v) => onInputChange(v || '', 'to'), onFocus: (e) => handleFocus(e, 'to'), onBlur: (e) => handleBlur(e, 'to'), isInvalid: isInvalid, isDisabled: isDisabled, isReadonly: isReadonly, isDropdown: false, rawProps: rawProps?.to, onClick: onClick, onKeyDown: onInputKeyDown })));
|
|
3454
3513
|
});
|
|
3455
3514
|
|
|
3456
|
-
var css$M = {"root":"
|
|
3515
|
+
var css$M = {"root":"FE5uLX"};
|
|
3457
3516
|
|
|
3458
3517
|
const uuiPresets = {
|
|
3459
3518
|
container: 'uui-presets-container',
|
|
@@ -3473,7 +3532,7 @@ function CalendarPresets(props) {
|
|
|
3473
3532
|
getPresets(props.presets).map((item) => (React.createElement(LinkButton, { key: item.key, caption: item.name, onClick: () => props.onPresetSet(item), size: settings.rangeDatePicker.sizes.preset })))));
|
|
3474
3533
|
}
|
|
3475
3534
|
|
|
3476
|
-
var css$L = {"root":"
|
|
3535
|
+
var css$L = {"root":"g-Uh-a","container":"chyhsa","day-selection":"o1UhI-","daySelection":"o1UhI-","from-picker":"_9tzbXn","fromPicker":"_9tzbXn","to-picker":"wJloKY","toPicker":"wJloKY","bodes-wrapper":"R7HbPd","bodesWrapper":"R7HbPd","blocker":"VyzdAJ"};
|
|
3477
3536
|
|
|
3478
3537
|
const uuiRangeDatePickerBody = {
|
|
3479
3538
|
inRange: 'uui-range-datepicker-in-range',
|
|
@@ -3675,7 +3734,7 @@ const getDayState = (day, selectedDate) => {
|
|
|
3675
3734
|
};
|
|
3676
3735
|
};
|
|
3677
3736
|
|
|
3678
|
-
var css$K = {"dropdown-container":"
|
|
3737
|
+
var css$K = {"dropdown-container":"uKTNuw","dropdownContainer":"uKTNuw"};
|
|
3679
3738
|
|
|
3680
3739
|
function RangeDatePickerComponent(props, ref) {
|
|
3681
3740
|
const { value: _value, format = defaultFormat, size = settings.rangeDatePicker.sizes.default } = props;
|
|
@@ -3743,7 +3802,7 @@ function RangeDatePickerComponent(props, ref) {
|
|
|
3743
3802
|
}
|
|
3744
3803
|
const RangeDatePicker = /* @__PURE__ */React__default.forwardRef(RangeDatePickerComponent);
|
|
3745
3804
|
|
|
3746
|
-
var css$J = {"root":"
|
|
3805
|
+
var css$J = {"root":"u7dZKH","blocker":"Uk3hQU","marker":"xeke1m","top":"B0TIVy","bottom":"_85B0uh","left":"ePl0zr","right":"_4R6YIi","inside":"gEBKHQ"};
|
|
3747
3806
|
|
|
3748
3807
|
function DropMarker(props) {
|
|
3749
3808
|
return props.isDndInProgress
|
|
@@ -3758,9 +3817,9 @@ function DropMarker(props) {
|
|
|
3758
3817
|
: null;
|
|
3759
3818
|
}
|
|
3760
3819
|
|
|
3761
|
-
var css$I = {"root":"
|
|
3820
|
+
var css$I = {"root":"tMJiQm","search-wrapper":"fhZFAT","searchWrapper":"fhZFAT","no-data":"WMkNix","noData":"WMkNix","empty-status-announcer":"bvtPB7","emptyStatusAnnouncer":"bvtPB7"};
|
|
3762
3821
|
|
|
3763
|
-
var css$H = {"picker-row":"
|
|
3822
|
+
var css$H = {"picker-row":"AznH1Z","pickerRow":"AznH1Z","align-widgets-top":"XPma4m","alignWidgetsTop":"XPma4m","row-content":"JwKtND","rowContent":"JwKtND","align-widgets-center":"JHmBNU","alignWidgetsCenter":"JHmBNU","icon-container":"oPKubC","iconContainer":"oPKubC","content-wrapper":"Pz-8SD","contentWrapper":"Pz-8SD","icon-wrapper":"lOXhs1","iconWrapper":"lOXhs1","icon-default":"zkdtCU","iconDefault":"zkdtCU","selected-mark":"Rfykaj","selectedMark":"Rfykaj"};
|
|
3764
3823
|
|
|
3765
3824
|
const mergeHighlightRanges = (ranges) => {
|
|
3766
3825
|
const mergedRanges = [];
|
|
@@ -3827,7 +3886,7 @@ const getHighlightedSearchMatches = (str, search) => {
|
|
|
3827
3886
|
return getDecoratedText(str, ranges);
|
|
3828
3887
|
};
|
|
3829
3888
|
|
|
3830
|
-
var css$G = {"root":"
|
|
3889
|
+
var css$G = {"root":"OpXQJD","column-gap":"_2jvmWR","columnGap":"_2jvmWR","title":"vhbNHi","subtitle":"BAV0Du","disabled":"-byJT0","multiline":"_7FoW3u"};
|
|
3831
3890
|
|
|
3832
3891
|
function PickerItem(props) {
|
|
3833
3892
|
const { highlightSearchMatches = true, size, avatarUrl, isLoading, isDisabled, icon, } = props;
|
|
@@ -3916,6 +3975,15 @@ function DataPickerBody({ highlightSearchMatches = true, autoFocusSearch = true,
|
|
|
3916
3975
|
const prevProps = usePrevious(props);
|
|
3917
3976
|
const showSearch = props.showSearch === 'auto' ? props.totalCount > 10 : Boolean(props.showSearch);
|
|
3918
3977
|
const [isKeyboardNavigation, setIsKeyboardNavigation] = React__default.useState(false);
|
|
3978
|
+
const [emptyMessage, setEmptyMessage] = React__default.useState('');
|
|
3979
|
+
// We need to also ensure that topIndex === 0, because we can have state were there is no rows but topIndex > 0, in case when we scrolled lover than we have rows
|
|
3980
|
+
// we fix this state on next render and shouldn't show empty state.
|
|
3981
|
+
const isEmptyList = props.rows.length === 0 && props.value.topIndex === 0;
|
|
3982
|
+
useEffect(() => {
|
|
3983
|
+
if (!isEmptyList) {
|
|
3984
|
+
setEmptyMessage('');
|
|
3985
|
+
}
|
|
3986
|
+
}, [isEmptyList]);
|
|
3919
3987
|
useEffect(() => {
|
|
3920
3988
|
if (props.rows.length !== prevProps?.rows.length || (!isEqual(prevProps?.value.checked, props.value.checked) && !props.fixedBodyPosition)) {
|
|
3921
3989
|
props.scheduleUpdate?.();
|
|
@@ -4005,12 +4073,11 @@ function DataPickerBody({ highlightSearchMatches = true, autoFocusSearch = true,
|
|
|
4005
4073
|
: settings.pickerInput.sizes.body.getSearchSize({ pickerSize: props.searchSize });
|
|
4006
4074
|
const renderedDataRows = useMemo(() => props.rows.map((row) => renderRow(row, props.value)), [props.rows, props.value, isKeyboardNavigation]);
|
|
4007
4075
|
return (React__default.createElement(React__default.Fragment, null,
|
|
4076
|
+
React__default.createElement("div", { className: css$I.emptyStatusAnnouncer, role: "status", "aria-live": "polite", "aria-atomic": "true" }, emptyMessage),
|
|
4008
4077
|
showSearch && (React__default.createElement("div", { key: "search", className: cx$1(css$I.searchWrapper, 'uui-picker_input-body-search') },
|
|
4009
4078
|
React__default.createElement(FlexCell$1, { grow: 1 }, autoFocusSearch ? React__default.createElement(MoveFocusInside, null, renderSearchInput()) : renderSearchInput()))),
|
|
4010
|
-
React__default.createElement(FlexRow, { key: "body", cx: cx$1('uui-picker_input-body'), rawProps: { style: { maxHeight: props.maxHeight, maxWidth: props.maxWidth }, tabIndex: -1 } },
|
|
4011
|
-
|
|
4012
|
-
// we fix this state on next render and shouldn't show empty state.
|
|
4013
|
-
? renderEmpty() : (React__default.createElement(VirtualList, { value: props.value, onValueChange: props.onValueChange, rows: renderedDataRows, role: "listbox", cx: css$I.root, rawProps: {
|
|
4079
|
+
React__default.createElement(FlexRow, { key: "body", cx: cx$1('uui-picker_input-body'), rawProps: { style: { maxHeight: props.maxHeight, maxWidth: props.maxWidth }, tabIndex: -1 } }, isEmptyList
|
|
4080
|
+
? (React__default.createElement("div", { ref: (el) => el && setEmptyMessage(el.textContent ?? '') }, renderEmpty())) : (React__default.createElement(VirtualList, { value: props.value, onValueChange: props.onValueChange, rows: renderedDataRows, role: "listbox", cx: css$I.root, rawProps: {
|
|
4014
4081
|
'aria-multiselectable': props.selectionMode === 'multi' ? true : null,
|
|
4015
4082
|
'aria-orientation': 'vertical',
|
|
4016
4083
|
tabIndex: 0,
|
|
@@ -4045,7 +4112,7 @@ function DataPickerFooterImpl(props) {
|
|
|
4045
4112
|
}
|
|
4046
4113
|
const DataPickerFooter = /* @__PURE__ */React__default.memo(DataPickerFooterImpl);
|
|
4047
4114
|
|
|
4048
|
-
var css$F = {"header":"
|
|
4115
|
+
var css$F = {"header":"dcE--O","title":"KTqdQx","close":"ish9jy"};
|
|
4049
4116
|
|
|
4050
4117
|
const DataPickerMobileHeaderImpl = (props) => {
|
|
4051
4118
|
const title = props.title && typeof props.title === 'string' ? props.title.charAt(0).toUpperCase() + props.title.slice(1) : '';
|
|
@@ -4055,7 +4122,7 @@ const DataPickerMobileHeaderImpl = (props) => {
|
|
|
4055
4122
|
};
|
|
4056
4123
|
const DataPickerMobileHeader = /* @__PURE__ */React__default.memo(DataPickerMobileHeaderImpl);
|
|
4057
4124
|
|
|
4058
|
-
var css$E = {"done":"
|
|
4125
|
+
var css$E = {"done":"zlooV9","container":"_4TbYLa"};
|
|
4059
4126
|
|
|
4060
4127
|
const PickerBodyMobileView = (props) => {
|
|
4061
4128
|
const isMobileView = isMobile();
|
|
@@ -4067,7 +4134,7 @@ const PickerBodyMobileView = (props) => {
|
|
|
4067
4134
|
isMobileView && (React__default.createElement(LinkButton, { caption: i18n.pickerInput.doneButton, onClick: () => props.onClose?.(), cx: css$E.done, size: settings.pickerInput.sizes.body.mobileFooterLinkButton }))));
|
|
4068
4135
|
};
|
|
4069
4136
|
|
|
4070
|
-
var css$D = {"sub-header-wrapper":"
|
|
4137
|
+
var css$D = {"sub-header-wrapper":"DctblX","subHeaderWrapper":"DctblX","switch":"nxAIRh","search":"gA8hqk","no-found-modal-container":"OK1ls2","noFoundModalContainer":"OK1ls2","no-found-modal-container-icon":"OkqEpQ","noFoundModalContainerIcon":"OkqEpQ","no-found-modal-container-text":"AHOgpq","noFoundModalContainerText":"AHOgpq","body":"aioejM"};
|
|
4071
4138
|
|
|
4072
4139
|
function PickerModal(props) {
|
|
4073
4140
|
const { view, selection, dataSourceStateLens, dataSourceState, getName, clearSelection, getRows, getListProps, getFooterProps, isSingleSelect, handleDataSourceValueChange, } = usePickerModal(props);
|
|
@@ -4128,7 +4195,7 @@ function PickerModal(props) {
|
|
|
4128
4195
|
React__default.createElement(ModalFooter, null, props.renderFooter ? props.renderFooter(getFooterProps()) : renderFooter()))));
|
|
4129
4196
|
}
|
|
4130
4197
|
|
|
4131
|
-
var css$C = {"tooltip":"
|
|
4198
|
+
var css$C = {"tooltip":"_4Treuu","noShrink":"rR7TvO"};
|
|
4132
4199
|
|
|
4133
4200
|
const PickerTogglerTag = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
4134
4201
|
const tagProps = {
|
|
@@ -4147,7 +4214,7 @@ const PickerTogglerTag = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
|
4147
4214
|
}
|
|
4148
4215
|
});
|
|
4149
4216
|
|
|
4150
|
-
var css$B = {"root":"
|
|
4217
|
+
var css$B = {"root":"QGtLbJ"};
|
|
4151
4218
|
|
|
4152
4219
|
const defaultMode = EditMode.FORM;
|
|
4153
4220
|
function applyPickerTogglerMods(mods) {
|
|
@@ -4229,7 +4296,7 @@ function PickerInputComponent(props, ref) {
|
|
|
4229
4296
|
}
|
|
4230
4297
|
const PickerInput = /* @__PURE__ */React__default.forwardRef(PickerInputComponent);
|
|
4231
4298
|
|
|
4232
|
-
var css$A = {"row":"
|
|
4299
|
+
var css$A = {"row":"hWRm8c"};
|
|
4233
4300
|
|
|
4234
4301
|
function PickerListRow(props) {
|
|
4235
4302
|
let label;
|
|
@@ -4249,7 +4316,7 @@ function PickerListRow(props) {
|
|
|
4249
4316
|
return (React__default.createElement("div", { role: "option", "aria-selected": props.isSelectable ? props.isSelected : undefined, "aria-busy": props.isLoading, "aria-posinset": props.index + 1, ...(props.checkbox?.isVisible && { 'aria-checked': props.isChecked }), className: css$A.row }, component));
|
|
4250
4317
|
}
|
|
4251
4318
|
|
|
4252
|
-
var css$z = {"root":"
|
|
4319
|
+
var css$z = {"root":"BM9No7"};
|
|
4253
4320
|
|
|
4254
4321
|
function PickerList(props) {
|
|
4255
4322
|
const { context, view, onlySelectedView, getName, getEntityName, appendLastSelected, getSelectedIdsArray, buildRowsList, getMaxDefaultItems, getModalTogglerCaption, } = usePickerList(props);
|
|
@@ -4284,7 +4351,7 @@ function PickerList(props) {
|
|
|
4284
4351
|
}, selectedRows)));
|
|
4285
4352
|
}
|
|
4286
4353
|
|
|
4287
|
-
var css$y = {"root":"
|
|
4354
|
+
var css$y = {"root":"djeBSr","wrapper":"_2xF4NN","align-widgets-top":"-mnZme","alignWidgetsTop":"-mnZme","align-widgets-center":"DCXMuu","alignWidgetsCenter":"DCXMuu"};
|
|
4288
4355
|
|
|
4289
4356
|
function DataTableCell(initialProps) {
|
|
4290
4357
|
const props = { ...initialProps };
|
|
@@ -4334,7 +4401,7 @@ function DataTableCell(initialProps) {
|
|
|
4334
4401
|
return React.createElement(DataTableCell$1, { ...props });
|
|
4335
4402
|
}
|
|
4336
4403
|
|
|
4337
|
-
var css$x = {"root":"
|
|
4404
|
+
var css$x = {"root":"_-58jb7"};
|
|
4338
4405
|
|
|
4339
4406
|
// Here we define a single instance of the renderCell function to make DataTableRow#shouldComponentUpdate work.
|
|
4340
4407
|
// As we need our mods to style the cell properly, we extract them from DataTableCellProps.rowProps, which is a hack, but it's reliable enough.
|
|
@@ -4350,14 +4417,16 @@ const DataTableRow = /* @__PURE__ */withMods(DataTableRow$1, ({ borderBottom = t
|
|
|
4350
4417
|
];
|
|
4351
4418
|
}, () => propsMods);
|
|
4352
4419
|
|
|
4353
|
-
var css$w = {"sorting-panel-container":"
|
|
4420
|
+
var css$w = {"sorting-panel-container":"vLpv8O","sortingPanelContainer":"vLpv8O"};
|
|
4354
4421
|
|
|
4355
4422
|
const SortingPanelImpl = ({ sortDirection, onSort }) => {
|
|
4356
4423
|
const sortAsc = useCallback(() => onSort(sortDirection === 'asc' ? undefined : 'asc'), [onSort]);
|
|
4357
4424
|
const sortDesc = useCallback(() => onSort(sortDirection === 'desc' ? undefined : 'desc'), [onSort]);
|
|
4425
|
+
const isAscSelected = sortDirection === 'asc';
|
|
4426
|
+
const isDescSelected = sortDirection === 'desc';
|
|
4358
4427
|
return (React__default.createElement(FlexCell, { cx: cx$1(css$w.sortingPanelContainer, 'uui-dropdownMenu-body') },
|
|
4359
|
-
React__default.createElement(DropdownMenuButton, { isActive:
|
|
4360
|
-
React__default.createElement(DropdownMenuButton, { isActive:
|
|
4428
|
+
React__default.createElement(DropdownMenuButton, { isActive: isAscSelected, caption: i18n.pickerFilterHeader.sortAscending, icon: settings.dataTable.icons.header.ascSortIcon, onClick: sortAsc, rawProps: { role: 'menuitemradio', 'aria-checked': isAscSelected } }),
|
|
4429
|
+
React__default.createElement(DropdownMenuButton, { isActive: isDescSelected, caption: i18n.pickerFilterHeader.sortDescending, icon: settings.dataTable.icons.header.descSortIcon, onClick: sortDesc, rawProps: { role: 'menuitemradio', 'aria-checked': isDescSelected } })));
|
|
4361
4430
|
};
|
|
4362
4431
|
const SortingPanel = /* @__PURE__ */React__default.memo(SortingPanelImpl);
|
|
4363
4432
|
|
|
@@ -4370,113 +4439,114 @@ const ColumnHeaderDropdownImpl = (props) => {
|
|
|
4370
4439
|
};
|
|
4371
4440
|
const ColumnHeaderDropdown = /* @__PURE__ */React__default.memo(ColumnHeaderDropdownImpl);
|
|
4372
4441
|
|
|
4373
|
-
var css$v = {"root":"
|
|
4442
|
+
var css$v = {"root":"MlPbCS","caption-wrapper":"NiopQP","captionWrapper":"NiopQP","sort-icon":"UO6JkM","sortIcon":"UO6JkM","dropdown-icon":"iRU0zZ","dropdownIcon":"iRU0zZ","infoIcon":"L7egmt","sortInActive":"gfP7KI","align-right":"uk9YRV","alignRight":"uk9YRV","align-center":"hOepfI","alignCenter":"hOepfI","caption":"iW3U6O","truncate":"_7SBpJX","upper-case":"ub6mi-","upperCase":"ub6mi-","checkbox":"NO-b1J","icon":"GFDAeS","fold-all-icon":"x5NQJW","foldAllIcon":"x5NQJW","cell-tooltip":"FZW2AN","cellTooltip":"FZW2AN","resizing-marker":"w8Dc-z","resizingMarker":"w8Dc-z","pinned-right":"_3OcRs0","pinnedRight":"_3OcRs0","draggable":"z-n-KL","ghost":"nSsP-w","is-dragged-out":"n7UC4E","isDraggedOut":"n7UC4E","dnd-marker-left":"iYrgv0","dndMarkerLeft":"iYrgv0","dnd-marker-right":"dx-azV","dndMarkerRight":"dx-azV","cell-tooltip-wrapper":"PGSC1n","cellTooltipWrapper":"PGSC1n","cell-tooltip-text":"h3gfus","cellTooltipText":"h3gfus","tooltip-caption":"ChZNkP","tooltipCaption":"ChZNkP","tooltip-info":"hMScDw","tooltipInfo":"hMScDw"};
|
|
4374
4443
|
|
|
4375
|
-
|
|
4376
|
-
|
|
4377
|
-
|
|
4378
|
-
|
|
4379
|
-
|
|
4380
|
-
|
|
4381
|
-
|
|
4382
|
-
|
|
4383
|
-
|
|
4384
|
-
|
|
4385
|
-
|
|
4386
|
-
|
|
4387
|
-
|
|
4388
|
-
|
|
4389
|
-
|
|
4390
|
-
|
|
4391
|
-
|
|
4392
|
-
|
|
4393
|
-
|
|
4394
|
-
|
|
4395
|
-
|
|
4396
|
-
|
|
4397
|
-
|
|
4398
|
-
|
|
4399
|
-
|
|
4400
|
-
|
|
4401
|
-
props.toggleSort(e);
|
|
4402
|
-
e.preventDefault();
|
|
4403
|
-
}
|
|
4404
|
-
};
|
|
4405
|
-
return (React.createElement("div", { className: cx$1(css$v.captionWrapper, css$v['align-' + this.props.column.textAlign], uuiDataTableHeaderCell.uuiTableHeaderCaptionWrapper) },
|
|
4406
|
-
React.createElement(Tooltip, { placement: "top", color: "inverted", content: renderTooltip(this.props.column), cx: [css$v.cellTooltip, 'uui-dt-header-tooltip'], openDelay: 600, closeOnMouseLeave: "boundary" },
|
|
4407
|
-
React.createElement("div", { key: "text", className: captionCx }, this.props.column.caption)),
|
|
4408
|
-
this.props.column.isSortable && (!this.props.column.renderFilter || this.props.sortDirection) && (React.createElement(ControlIcon, { key: "sort", cx: cx$1(css$v.icon, css$v.sortIcon, !this.props.sortDirection && css$v.sortInActive, uuiDataTableHeaderCell.uuiTableHeaderSortIcon), icon: settings.dataTable.icons.header[this.props.sortDirection === 'desc' ? 'descSortIcon' : this.props.sortDirection === 'asc' ? 'ascSortIcon' : 'defaultSortIcon'], onKeyDown: !this.props.column.renderFilter ? handleSort : undefined })),
|
|
4409
|
-
this.props.isFilterActive && (React.createElement(IconButton, { key: "filter", cx: cx$1(css$v.icon, !this.props.sortDirection && css$v.filterIcon, uuiDataTableHeaderCell.uuiTableHeaderFilterIcon), color: "neutral", icon: settings.dataTable.icons.header.filterIcon })),
|
|
4410
|
-
this.props.column.renderFilter && (React.createElement(ControlIcon, { key: "dropdown", cx: cx$1(css$v.icon, css$v.dropdownIcon, uuiDataTableHeaderCell.uuiTableHeaderDropdownIcon), icon: settings.dataTable.icons.header[this.state.isDropdownOpen ? 'openedDropdownIcon' : 'dropdownIcon'], onKeyDown: handleFilterOpen }))));
|
|
4411
|
-
};
|
|
4412
|
-
this.renderHeaderCheckbox = () => {
|
|
4413
|
-
if (this.props.selectAll && this.props.isFirstColumn) {
|
|
4414
|
-
return (React.createElement(Checkbox, { size: settings.dataTable.sizes.body.checkboxMap[this.props.size], rawProps: { 'aria-label': 'Select All' }, ...this.props.selectAll, cx: cx$1(css$v.checkbox, uuiDataTableHeaderCell.uuiTableHeaderCheckbox) }));
|
|
4444
|
+
function DefaultTooltipContent(column) {
|
|
4445
|
+
return (React__default.createElement("div", { className: cx$1(css$v.cellTooltipWrapper, uuiDataTableHeaderCell.uuiTableHeaderCaptionTooltip) },
|
|
4446
|
+
React__default.createElement(Text, { cx: [css$v.cellTooltipText, css$v.tooltipCaption] }, column.caption),
|
|
4447
|
+
column.info && (React__default.createElement(Text, { cx: [css$v.cellTooltipText, css$v.tooltipInfo] }, column.info))));
|
|
4448
|
+
}
|
|
4449
|
+
function DataTableHeaderCell(props) {
|
|
4450
|
+
const [isDropdownOpen, setIsDropdownOpen] = useState(null);
|
|
4451
|
+
const id = useId();
|
|
4452
|
+
const captionId = `uui-dt-header-caption-${id}-${props.column.key}`;
|
|
4453
|
+
const captionAriaProps = {
|
|
4454
|
+
'aria-labelledby': captionId,
|
|
4455
|
+
'aria-description': props.isFilterActive ? i18n.tables.columnHeader.filterActiveLabel : undefined,
|
|
4456
|
+
};
|
|
4457
|
+
const getColumnCaption = (contentProps, dropdownProps) => {
|
|
4458
|
+
const renderTooltip = props.column.renderTooltip || DefaultTooltipContent;
|
|
4459
|
+
const captionCx = cx$1([
|
|
4460
|
+
css$v.caption,
|
|
4461
|
+
props.textCase === 'upper' && css$v.upperCase,
|
|
4462
|
+
uuiDataTableHeaderCell.uuiTableHeaderCaption,
|
|
4463
|
+
'uui-typography-inline',
|
|
4464
|
+
props.size >= '48' && css$v.truncate,
|
|
4465
|
+
]);
|
|
4466
|
+
const handleFilterOpen = (e) => {
|
|
4467
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
4468
|
+
dropdownProps.onClick(e);
|
|
4469
|
+
e.preventDefault();
|
|
4415
4470
|
}
|
|
4416
4471
|
};
|
|
4417
|
-
|
|
4418
|
-
if (
|
|
4419
|
-
|
|
4420
|
-
|
|
4421
|
-
: i18n.tables.columnHeader.collapseAllTooltip },
|
|
4422
|
-
React.createElement(ControlIcon, { cx: cx$1(css$v.icon, css$v.foldAllIcon, uuiDataTableHeaderCell.uuiTableHeaderFoldAllIcon), icon: settings.dataTable.icons.header[this.props.areAllFolded ? 'unfoldIcon' : 'foldIcon'], onClick: this.props.onFoldAll, rawProps: {
|
|
4423
|
-
'aria-label': this.props.areAllFolded ? 'Expand All' : 'Collapse All',
|
|
4424
|
-
'aria-expanded': !!this.props.areAllFolded,
|
|
4425
|
-
} })));
|
|
4472
|
+
const handleSort = (e) => {
|
|
4473
|
+
if (e.key === 'Enter' || e.key === ' ') {
|
|
4474
|
+
contentProps.toggleSort(e);
|
|
4475
|
+
e.preventDefault();
|
|
4426
4476
|
}
|
|
4427
4477
|
};
|
|
4428
|
-
|
|
4429
|
-
|
|
4430
|
-
|
|
4431
|
-
|
|
4432
|
-
|
|
4433
|
-
|
|
4434
|
-
|
|
4435
|
-
|
|
4436
|
-
|
|
4437
|
-
|
|
4438
|
-
const { columnsGap, isLastColumn } = this.props;
|
|
4439
|
-
if (columnsGap)
|
|
4440
|
-
return isLastColumn ? `${columnsGap}px` : `${+columnsGap / 2}px`;
|
|
4441
|
-
return `var(--uui-dt-header-cell-padding${isLastColumn ? '-edge' : ''})`;
|
|
4442
|
-
};
|
|
4443
|
-
this.getResizingMarkerWidth = () => {
|
|
4444
|
-
const { columnsGap } = this.props;
|
|
4445
|
-
return columnsGap ? `${+columnsGap / 2}px` : 'var(--uui-resize-marker-width)';
|
|
4446
|
-
};
|
|
4447
|
-
this.renderCellContent = (props, dropdownProps) => {
|
|
4448
|
-
const isResizable = this.props.column.allowResizing ?? this.props.allowColumnsResizing;
|
|
4449
|
-
const onClickEvent = !props.isResizing && (!this.props.column.renderFilter ? props.toggleSort : dropdownProps?.onClick);
|
|
4450
|
-
const computeStyles = {
|
|
4451
|
-
'--uui-dt-header-cell-icon-size': `${settings.dataTable.sizes.header.iconMap[this.props.size || settings.dataTable.sizes.header.row]}px`,
|
|
4452
|
-
'--uui-dt-header-cell-padding-start': this.getLeftPadding(),
|
|
4453
|
-
'--uui-dt-header-cell-padding-end': this.getRightPadding(),
|
|
4454
|
-
'--uui-dt-header-cell-resizing-marker-width': this.getResizingMarkerWidth(),
|
|
4455
|
-
};
|
|
4456
|
-
return (React.createElement(DataTableCellContainer, { column: this.props.column, ref: (ref) => {
|
|
4457
|
-
props.ref(ref);
|
|
4458
|
-
dropdownProps?.ref?.(ref);
|
|
4459
|
-
}, cx: cx$1(uuiDataTableHeaderCell.uuiTableHeaderCell, (this.props.column.isSortable || this.props.isDropdown) && uuiMarkers.clickable, css$v.root, `uui-size-${this.props.size || settings.dataTable.sizes.header.row}`, this.props.isFirstColumn && 'uui-dt-header-first-column', this.props.isLastColumn && 'uui-dt-header-last-column', this.props.column.fix && css$v['pinned-' + this.props.column.fix], isResizable && uuiMarkers.resizable, props.isDraggable && css$v.draggable, props.isDragGhost && css$v.ghost, props.isDraggedOut && css$v.isDraggedOut, props.isDndInProgress && css$v['dnd-marker-' + props.position]), onClick: onClickEvent, rawProps: {
|
|
4460
|
-
role: 'columnheader',
|
|
4461
|
-
'aria-sort': this.props.sortDirection === 'asc' ? 'ascending' : this.props.sortDirection ? 'descending' : 'none',
|
|
4462
|
-
...props.eventHandlers,
|
|
4463
|
-
}, style: computeStyles },
|
|
4464
|
-
this.renderHeaderCheckbox(),
|
|
4465
|
-
this.renderFoldAllIcon(),
|
|
4466
|
-
this.getColumnCaption(props, dropdownProps),
|
|
4467
|
-
isResizable && this.renderResizingMarker(props)));
|
|
4468
|
-
};
|
|
4469
|
-
this.renderCellWithFilter = (props) => (React.createElement(ColumnHeaderDropdown, { isOpen: this.state.isDropdownOpen, isSortable: this.props.column.isSortable, renderTarget: (dropdownProps) => this.renderCellContent(props, dropdownProps), renderFilter: this.props.renderFilter, onSort: this.props.onSort, sortDirection: this.props.sortDirection, onOpenChange: (isDropdownOpen) => this.setState({ isDropdownOpen }), title: this.props.column.caption }));
|
|
4470
|
-
}
|
|
4471
|
-
render() {
|
|
4472
|
-
if (this.props.column.renderHeaderCell) {
|
|
4473
|
-
return this.props.column.renderHeaderCell(this.props);
|
|
4478
|
+
return (React__default.createElement("div", { className: cx$1(css$v.captionWrapper, css$v['align-' + props.column.textAlign], uuiDataTableHeaderCell.uuiTableHeaderCaptionWrapper) },
|
|
4479
|
+
React__default.createElement(Tooltip, { placement: "top", color: "inverted", content: renderTooltip(props.column), cx: [css$v.cellTooltip, 'uui-dt-header-tooltip'], openDelay: 600, closeOnMouseLeave: "boundary" },
|
|
4480
|
+
React__default.createElement("div", { key: "text", id: captionId, className: captionCx }, props.column.caption)),
|
|
4481
|
+
props.column.isSortable && (!props.column.renderFilter || props.sortDirection) && (React__default.createElement(ControlIcon, { key: "sort", cx: cx$1(css$v.icon, css$v.sortIcon, !props.sortDirection && css$v.sortInActive, uuiDataTableHeaderCell.uuiTableHeaderSortIcon), icon: settings.dataTable.icons.header[props.sortDirection === 'desc' ? 'descSortIcon' : props.sortDirection === 'asc' ? 'ascSortIcon' : 'defaultSortIcon'], onKeyDown: !props.column.renderFilter ? handleSort : undefined, rawProps: { ...captionAriaProps, 'aria-hidden': !!props.column.renderFilter } })),
|
|
4482
|
+
props.isFilterActive && (React__default.createElement(IconButton, { key: "filter", cx: cx$1(css$v.icon, !props.sortDirection && css$v.filterIcon, uuiDataTableHeaderCell.uuiTableHeaderFilterIcon), color: "neutral", icon: settings.dataTable.icons.header.filterIcon, rawProps: { 'aria-hidden': true } })),
|
|
4483
|
+
props.column.renderFilter && (React__default.createElement(ControlIcon, { key: "dropdown", cx: cx$1(css$v.icon, css$v.dropdownIcon, uuiDataTableHeaderCell.uuiTableHeaderDropdownIcon), icon: settings.dataTable.icons.header[isDropdownOpen ? 'openedDropdownIcon' : 'dropdownIcon'], onKeyDown: handleFilterOpen, rawProps: captionAriaProps }))));
|
|
4484
|
+
};
|
|
4485
|
+
const renderHeaderCheckbox = () => {
|
|
4486
|
+
if (props.selectAll && props.isFirstColumn) {
|
|
4487
|
+
return (React__default.createElement(Checkbox, { size: settings.dataTable.sizes.body.checkboxMap[props.size], rawProps: { 'aria-label': 'Select All' }, ...props.selectAll, cx: cx$1(css$v.checkbox, uuiDataTableHeaderCell.uuiTableHeaderCheckbox) }));
|
|
4474
4488
|
}
|
|
4475
|
-
|
|
4489
|
+
};
|
|
4490
|
+
const renderFoldAllIcon = () => {
|
|
4491
|
+
if (props.isFirstColumn && props.showFoldAll) {
|
|
4492
|
+
return (React__default.createElement(Tooltip, { content: props.areAllFolded
|
|
4493
|
+
? i18n.tables.columnHeader.expandAllTooltip
|
|
4494
|
+
: i18n.tables.columnHeader.collapseAllTooltip },
|
|
4495
|
+
React__default.createElement(ControlIcon, { cx: cx$1(css$v.icon, css$v.foldAllIcon, uuiDataTableHeaderCell.uuiTableHeaderFoldAllIcon), icon: settings.dataTable.icons.header[props.areAllFolded ? 'unfoldIcon' : 'foldIcon'], onClick: props.onFoldAll, rawProps: {
|
|
4496
|
+
'aria-label': props.areAllFolded ? 'Expand All' : 'Collapse All',
|
|
4497
|
+
'aria-expanded': !!props.areAllFolded,
|
|
4498
|
+
} })));
|
|
4499
|
+
}
|
|
4500
|
+
};
|
|
4501
|
+
const renderResizingMarker = (contentProps) => {
|
|
4502
|
+
return (React__default.createElement("div", { role: "separator", onMouseDown: contentProps.onResizeStart, className: cx$1(css$v.resizingMarker, uuiMarkers.draggable, uuiMarkers.clickable) }));
|
|
4503
|
+
};
|
|
4504
|
+
const getLeftPadding = () => {
|
|
4505
|
+
const { columnsGap, isFirstColumn } = props;
|
|
4506
|
+
if (columnsGap)
|
|
4507
|
+
return isFirstColumn ? `${columnsGap}px` : `${+columnsGap / 2}px`;
|
|
4508
|
+
return `var(--uui-dt-header-cell-padding${isFirstColumn ? '-edge' : ''})`;
|
|
4509
|
+
};
|
|
4510
|
+
const getRightPadding = () => {
|
|
4511
|
+
const { columnsGap, isLastColumn } = props;
|
|
4512
|
+
if (columnsGap)
|
|
4513
|
+
return isLastColumn ? `${columnsGap}px` : `${+columnsGap / 2}px`;
|
|
4514
|
+
return `var(--uui-dt-header-cell-padding${isLastColumn ? '-edge' : ''})`;
|
|
4515
|
+
};
|
|
4516
|
+
const getResizingMarkerWidth = () => {
|
|
4517
|
+
const { columnsGap } = props;
|
|
4518
|
+
return columnsGap ? `${+columnsGap / 2}px` : 'var(--uui-resize-marker-width)';
|
|
4519
|
+
};
|
|
4520
|
+
const renderCellContent = (contentProps, dropdownProps) => {
|
|
4521
|
+
const isResizable = props.column.allowResizing ?? props.allowColumnsResizing;
|
|
4522
|
+
const onClickEvent = !contentProps.isResizing && (!props.column.renderFilter ? contentProps.toggleSort : dropdownProps?.onClick);
|
|
4523
|
+
const computeStyles = {
|
|
4524
|
+
'--uui-dt-header-cell-icon-size': `${settings.dataTable.sizes.header.iconMap[props.size || settings.dataTable.sizes.header.row]}px`,
|
|
4525
|
+
'--uui-dt-header-cell-padding-start': getLeftPadding(),
|
|
4526
|
+
'--uui-dt-header-cell-padding-end': getRightPadding(),
|
|
4527
|
+
'--uui-dt-header-cell-resizing-marker-width': getResizingMarkerWidth(),
|
|
4528
|
+
};
|
|
4529
|
+
return (React__default.createElement(DataTableCellContainer, { column: props.column, ref: (ref) => {
|
|
4530
|
+
contentProps.ref(ref);
|
|
4531
|
+
dropdownProps?.ref?.(ref);
|
|
4532
|
+
}, cx: cx$1(uuiDataTableHeaderCell.uuiTableHeaderCell, (props.column.isSortable || props.isDropdown) && uuiMarkers.clickable, css$v.root, `uui-size-${props.size || settings.dataTable.sizes.header.row}`, props.isFirstColumn && 'uui-dt-header-first-column', props.isLastColumn && 'uui-dt-header-last-column', props.column.fix && css$v['pinned-' + props.column.fix], isResizable && uuiMarkers.resizable, contentProps.isDraggable && css$v.draggable, contentProps.isDragGhost && css$v.ghost, contentProps.isDraggedOut && css$v.isDraggedOut, contentProps.isDndInProgress && css$v['dnd-marker-' + contentProps.position]), onClick: onClickEvent, rawProps: {
|
|
4533
|
+
role: 'columnheader',
|
|
4534
|
+
'aria-sort': props.sortDirection === 'asc' ? 'ascending' : props.sortDirection ? 'descending' : 'none',
|
|
4535
|
+
...contentProps.eventHandlers,
|
|
4536
|
+
}, style: computeStyles },
|
|
4537
|
+
renderHeaderCheckbox(),
|
|
4538
|
+
renderFoldAllIcon(),
|
|
4539
|
+
getColumnCaption(contentProps, dropdownProps),
|
|
4540
|
+
isResizable && renderResizingMarker(contentProps)));
|
|
4541
|
+
};
|
|
4542
|
+
const renderCellWithFilter = (contentProps) => (React__default.createElement(ColumnHeaderDropdown, { isOpen: isDropdownOpen, isSortable: props.column.isSortable, renderTarget: (dropdownProps) => renderCellContent(contentProps, dropdownProps), renderFilter: props.renderFilter, onSort: props.onSort, sortDirection: props.sortDirection, onOpenChange: setIsDropdownOpen, title: props.column.caption }));
|
|
4543
|
+
if (props.column.renderHeaderCell) {
|
|
4544
|
+
return props.column.renderHeaderCell(props);
|
|
4476
4545
|
}
|
|
4546
|
+
return (React__default.createElement(DataTableHeaderCell$1, { ...props, renderCellContent: props.column.renderFilter ? renderCellWithFilter : renderCellContent }));
|
|
4477
4547
|
}
|
|
4478
4548
|
|
|
4479
|
-
var css$u = {"root":"
|
|
4549
|
+
var css$u = {"root":"_2uQD0I","caption-wrapper":"DCW1wE","captionWrapper":"DCW1wE","align-center":"OOZAi0","alignCenter":"OOZAi0","caption":"RJC3aU","truncate":"Ik27Fy","upper-case":"h7yYCr","upperCase":"h7yYCr","group-cell-tooltip":"Gtpssv","groupCellTooltip":"Gtpssv","group-cell-tooltip-wrapper":"Mx2RxI","groupCellTooltipWrapper":"Mx2RxI","group-cell-tooltip-text":"Rd2QDK","groupCellTooltipText":"Rd2QDK","tooltip-caption":"lj18gK","tooltipCaption":"lj18gK","tooltip-info":"_8tibXu","tooltipInfo":"_8tibXu"};
|
|
4480
4550
|
|
|
4481
4551
|
class DataTableHeaderGroupCell extends React.Component {
|
|
4482
4552
|
constructor() {
|
|
@@ -4516,7 +4586,7 @@ class DataTableHeaderGroupCell extends React.Component {
|
|
|
4516
4586
|
}
|
|
4517
4587
|
}
|
|
4518
4588
|
|
|
4519
|
-
var css$t = {"root":"
|
|
4589
|
+
var css$t = {"root":"_5cSIAT"};
|
|
4520
4590
|
|
|
4521
4591
|
const DataTableHeaderRow = /* @__PURE__ */withMods(DataTableHeaderRow$1, () => [css$t.root, 'uui-dt-vars'], (mods) => {
|
|
4522
4592
|
return ({
|
|
@@ -4528,6 +4598,20 @@ const DataTableHeaderRow = /* @__PURE__ */withMods(DataTableHeaderRow$1, () => [
|
|
|
4528
4598
|
});
|
|
4529
4599
|
});
|
|
4530
4600
|
|
|
4601
|
+
/**
|
|
4602
|
+
* Checks if the value is a range object with at least one boundary property defined
|
|
4603
|
+
*/
|
|
4604
|
+
const isValidRangeValue = (range) => {
|
|
4605
|
+
return range != null && (range.from != null || range.to != null);
|
|
4606
|
+
};
|
|
4607
|
+
const isFilledArray = (arr) => {
|
|
4608
|
+
return Array.isArray(arr) && arr.length > 0;
|
|
4609
|
+
};
|
|
4610
|
+
const hasSomeNullishProp = (obj) => {
|
|
4611
|
+
return Object.keys(obj).some((prop) => obj[prop] == null);
|
|
4612
|
+
};
|
|
4613
|
+
const isValidArrayValue = isFilledArray;
|
|
4614
|
+
const hasSomeNullishPredicate = hasSomeNullishProp;
|
|
4531
4615
|
const normalizeFilterWithPredicates = (filter) => {
|
|
4532
4616
|
if (!filter) {
|
|
4533
4617
|
return {};
|
|
@@ -4545,27 +4629,21 @@ const normalizeFilterWithPredicates = (filter) => {
|
|
|
4545
4629
|
if ('from' in filterValue && 'to' in filterValue) {
|
|
4546
4630
|
continue;
|
|
4547
4631
|
}
|
|
4548
|
-
if ('in' in filterValue &&
|
|
4632
|
+
if ('in' in filterValue && !isValidArrayValue(filterValue.in)) {
|
|
4549
4633
|
delete filter[key];
|
|
4550
4634
|
}
|
|
4551
|
-
if ('nin' in filterValue &&
|
|
4635
|
+
if ('nin' in filterValue && !isValidArrayValue(filterValue.nin)) {
|
|
4552
4636
|
delete filter[key];
|
|
4553
4637
|
}
|
|
4554
|
-
if ('inRange' in filterValue) {
|
|
4555
|
-
|
|
4556
|
-
delete filter[key];
|
|
4557
|
-
}
|
|
4638
|
+
if ('inRange' in filterValue && !isValidRangeValue(filterValue.inRange)) {
|
|
4639
|
+
delete filter[key];
|
|
4558
4640
|
}
|
|
4559
|
-
if ('notInRange' in filterValue) {
|
|
4560
|
-
|
|
4561
|
-
|
|
4562
|
-
|
|
4641
|
+
if ('notInRange' in filterValue && !isValidRangeValue(filterValue.notInRange)) {
|
|
4642
|
+
delete filter[key];
|
|
4643
|
+
}
|
|
4644
|
+
if (hasSomeNullishPredicate(filterValue)) {
|
|
4645
|
+
delete filter[key];
|
|
4563
4646
|
}
|
|
4564
|
-
Object.keys(filterValue).forEach((predicate) => {
|
|
4565
|
-
if (filterValue[predicate] === null || filterValue[predicate] === undefined) {
|
|
4566
|
-
delete filter[key];
|
|
4567
|
-
}
|
|
4568
|
-
});
|
|
4569
4647
|
}
|
|
4570
4648
|
}
|
|
4571
4649
|
return result;
|
|
@@ -4616,7 +4694,7 @@ const UUI_FILTERS_PANEL_ITEM_TOGGLER_SELECTION = 'uui-filters-panel-item-toggler
|
|
|
4616
4694
|
const UUI_FILTERS_PANEL_ITEM_TOGGLER_POSTFIX = 'uui-filters-panel-item-toggler-postfix';
|
|
4617
4695
|
const UUI_FILTERS_PANEL_BODY_FOOTER = 'uui-filters-panel-item-footer';
|
|
4618
4696
|
|
|
4619
|
-
var css$s = {"body":"
|
|
4697
|
+
var css$s = {"body":"Oeq3L5","header":"eMTe8I","title":"q4z-t1","removeButton":"-mPrB9","with-search":"_5ZXgMR","withSearch":"_5ZXgMR"};
|
|
4620
4698
|
|
|
4621
4699
|
function FilterColumnBody(props) {
|
|
4622
4700
|
const [predicate, setPredicate] = useState(getDefaultPredicate(props.predicates, props.value));
|
|
@@ -4677,7 +4755,7 @@ const useColumnsWithFilters = (initialColumns, filters) => {
|
|
|
4677
4755
|
return columns;
|
|
4678
4756
|
};
|
|
4679
4757
|
|
|
4680
|
-
var css$r = {"unpin-icon":"
|
|
4758
|
+
var css$r = {"unpin-icon":"BnhK--","unpinIcon":"BnhK--","pin-toggler-icon":"d2W-Dd","pinTogglerIcon":"d2W-Dd"};
|
|
4681
4759
|
|
|
4682
4760
|
function PinIconButton(props) {
|
|
4683
4761
|
const i18nLocal = i18n.tables.columnsConfigurationModal;
|
|
@@ -4728,7 +4806,7 @@ function getUnpinIcon(params) {
|
|
|
4728
4806
|
}
|
|
4729
4807
|
}
|
|
4730
4808
|
|
|
4731
|
-
var css$q = {"row-wrapper":"
|
|
4809
|
+
var css$q = {"row-wrapper":"c9H8oz","rowWrapper":"c9H8oz","pin-icon-button":"yaZ9Zn","pinIconButton":"yaZ9Zn","not-pinned":"hpuUvH","notPinned":"hpuUvH","checkbox":"iJa3dS","drag-handle":"QzxqNA","dragHandle":"QzxqNA","dnd-disabled":"PZUp2w","dndDisabled":"PZUp2w"};
|
|
4732
4810
|
|
|
4733
4811
|
const ColumnRow = /* @__PURE__ */React.memo(function ColumnRow(props) {
|
|
4734
4812
|
const { column } = props;
|
|
@@ -4762,7 +4840,7 @@ const ColumnRow = /* @__PURE__ */React.memo(function ColumnRow(props) {
|
|
|
4762
4840
|
return (React.createElement(DndActor, { key: column.key, srcData: isDndAllowed && data, dstData: data, canAcceptDrop: onCanAcceptDrop, onDrop: onDrop, render: renderContent }));
|
|
4763
4841
|
});
|
|
4764
4842
|
|
|
4765
|
-
var css$p = {"root":"
|
|
4843
|
+
var css$p = {"root":"I8e28f","main-panel":"w7Zcli","mainPanel":"w7Zcli","group":"-JPNp5","group-title":"L-MM9V","groupTitle":"L-MM9V","group-items":"uN10Jg","groupItems":"uN10Jg","no-data":"-l34C5","noData":"-l34C5","no-data-title":"C6xq4x","noDataTitle":"C6xq4x","no-data-sub-title":"mcfBS1","noDataSubTitle":"mcfBS1","h-divider":"_91tlWq","hDivider":"_91tlWq","search-area":"Mm3qTT","searchArea":"Mm3qTT","subgroup-accordion":"AALvgz","subgroupAccordion":"AALvgz","subgroup":"vsKUIZ","subgroup-title":"FiM4NP","subgroupTitle":"FiM4NP"};
|
|
4766
4844
|
|
|
4767
4845
|
const renderGroupTitle = (title, amount) => (React.createElement(FlexRow, { cx: css$p.group },
|
|
4768
4846
|
React.createElement(Text, { size: "none", cx: css$p.groupTitle }, title),
|
|
@@ -4865,7 +4943,7 @@ const getChildrenAndRest = (row, rows) => {
|
|
|
4865
4943
|
return [children, rest];
|
|
4866
4944
|
};
|
|
4867
4945
|
|
|
4868
|
-
var css$o = {"listContainer":"
|
|
4946
|
+
var css$o = {"listContainer":"-gBDgo","header":"uPVX4r","group":"Nlg0US","stickyHeader":"P-aC-C"};
|
|
4869
4947
|
|
|
4870
4948
|
function DataRowsGroup({ row, childRows, renderRow, top = 1, }) {
|
|
4871
4949
|
const rowRef = useRef(undefined);
|
|
@@ -4905,7 +4983,7 @@ function DataRowsContainer({ estimatedHeight, listContainerRef, offsetY, rows, r
|
|
|
4905
4983
|
React__default.createElement(DataRowsGroups, { rows: rows, renderRow: renderRow, top: headerRef?.current?.clientHeight }))));
|
|
4906
4984
|
}
|
|
4907
4985
|
|
|
4908
|
-
var css$n = {"root":"
|
|
4986
|
+
var css$n = {"root":"Rt6x9-","sticky-header":"qKF0-g","stickyHeader":"qKF0-g","no-results":"fSp-H-","noResults":"fSp-H-","icon":"EpGowY","title":"ImAAqn"};
|
|
4909
4987
|
|
|
4910
4988
|
function DataTable(props) {
|
|
4911
4989
|
const { uuiModals } = useUuiContext();
|
|
@@ -4947,6 +5025,7 @@ function DataTable(props) {
|
|
|
4947
5025
|
role: 'table',
|
|
4948
5026
|
'aria-colcount': columns.length,
|
|
4949
5027
|
'aria-rowcount': props.rowsCount,
|
|
5028
|
+
...props.rawProps,
|
|
4950
5029
|
};
|
|
4951
5030
|
return (React.createElement(DataTableSelectionProvider, { onCopy: props.onCopy, rows: rows, columns: columns },
|
|
4952
5031
|
React.createElement(DataTableFocusProvider, { dataTableFocusManager: props.dataTableFocusManager }, props.disableVirtualization === true
|
|
@@ -4954,7 +5033,7 @@ function DataTable(props) {
|
|
|
4954
5033
|
: (React.createElement(VirtualList, { value: props.value, onValueChange: props.onValueChange, onScroll: props.onScroll, rowsCount: props.rowsCount, renderRows: renderTableBody, cx: classes, isLoading: props.isReloading, rowsSelector: "[role=row]", rawProps: rawProps })))));
|
|
4955
5034
|
}
|
|
4956
5035
|
|
|
4957
|
-
var css$m = {"root":"
|
|
5036
|
+
var css$m = {"root":"bEq-Qb","title-wrapper":"iUPJXI","titleWrapper":"iUPJXI","title":"h6zCAh","text-wrapper":"AAQtxj","textWrapper":"AAQtxj","selection":"v2oaFP","postfix":"_5Ql-LF","selected":"O-rh-V"};
|
|
4958
5037
|
|
|
4959
5038
|
const FilterPanelItemToggler = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
4960
5039
|
const togglerPickerOpened = (e) => {
|
|
@@ -5179,9 +5258,10 @@ function FilterRangeDatePickerBody(props) {
|
|
|
5179
5258
|
renderFooter()));
|
|
5180
5259
|
}
|
|
5181
5260
|
|
|
5182
|
-
var css$l = {"container":"
|
|
5261
|
+
var css$l = {"container":"xeqrCL"};
|
|
5183
5262
|
|
|
5184
|
-
function FilterNumericBody(props) {
|
|
5263
|
+
function FilterNumericBody({ min, max, step, ...props }) {
|
|
5264
|
+
const numericInputProps = { min, max, step };
|
|
5185
5265
|
const isInRangePredicate = props?.selectedPredicate === 'inRange' || props?.selectedPredicate === 'notInRange';
|
|
5186
5266
|
const isWrongRange = (from, to) => {
|
|
5187
5267
|
if (!to && to !== 0)
|
|
@@ -5230,15 +5310,15 @@ function FilterNumericBody(props) {
|
|
|
5230
5310
|
return (React__default.createElement("div", null,
|
|
5231
5311
|
React__default.createElement(FlexRow, { padding: "12", alignItems: "center", columnGap: "12", borderBottom: true, cx: css$l.container },
|
|
5232
5312
|
React__default.createElement(FlexCell, { width: "100%" },
|
|
5233
|
-
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: value?.from ?? null, onValueChange: rangeValueHandler('from'), placeholder: "Min", formatOptions: { maximumFractionDigits: 2 } })),
|
|
5313
|
+
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: value?.from ?? null, onValueChange: rangeValueHandler('from'), placeholder: "Min", formatOptions: { maximumFractionDigits: 2 }, ...numericInputProps })),
|
|
5234
5314
|
React__default.createElement(FlexCell, { width: "100%" },
|
|
5235
|
-
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: value?.to ?? null, onValueChange: rangeValueHandler('to'), placeholder: "Max", formatOptions: { maximumFractionDigits: 2 }, isInvalid: isWrongRange(value?.from, value?.to) }))),
|
|
5315
|
+
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: value?.to ?? null, onValueChange: rangeValueHandler('to'), placeholder: "Max", formatOptions: { maximumFractionDigits: 2 }, isInvalid: isWrongRange(value?.from, value?.to), ...numericInputProps }))),
|
|
5236
5316
|
renderFooter()));
|
|
5237
5317
|
}
|
|
5238
5318
|
return (React__default.createElement("div", null,
|
|
5239
5319
|
React__default.createElement(FlexRow, { padding: "12", alignItems: "center", borderBottom: true, cx: css$l.container },
|
|
5240
5320
|
React__default.createElement(FlexCell, { width: 130 },
|
|
5241
|
-
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: typeof props.value === 'number' ? props.value : null, onValueChange: props.onValueChange, placeholder: "Enter a number", formatOptions: { maximumFractionDigits: 2 } }))),
|
|
5321
|
+
React__default.createElement(NumericInput, { size: settings.filtersPanel.sizes.default, value: typeof props.value === 'number' ? props.value : null, onValueChange: props.onValueChange, placeholder: "Enter a number", formatOptions: { maximumFractionDigits: 2 }, ...numericInputProps }))),
|
|
5242
5322
|
renderFooter()));
|
|
5243
5323
|
}
|
|
5244
5324
|
|
|
@@ -5317,9 +5397,9 @@ function FiltersToolbarItemImpl(props) {
|
|
|
5317
5397
|
props.predicates ? (React__default.createElement(FilterPredicatePanel, { predicates: props.predicates, predicate: predicate, type: props.type, onValueChange: props.onValueChange, value: props.value, setPredicate: setPredicate })) : (!hideTitle && (React__default.createElement("div", { className: css$s.title }, props.title))),
|
|
5318
5398
|
!props?.isAlwaysVisible && (React__default.createElement(LinkButton, { cx: css$s.removeButton, caption: i18n.filterToolbar.datePicker.removeCaption, onClick: removeOnclickHandler, size: settings.filtersPanel.sizes.pickerBodyLinkButton, icon: settings.filtersPanel.icons.pickerBodyRemoveIcon }))));
|
|
5319
5399
|
const renderBody = (dropdownProps) => {
|
|
5320
|
-
return isPickersType ? (React__default.createElement(PickerBodyMobileView, { ...dropdownProps, rawProps: {
|
|
5400
|
+
return isPickersType ? (React__default.createElement(PickerBodyMobileView, { ...dropdownProps, rawProps: { 'aria-modal': true }, cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], title: props.title, width: settings.filtersPanel.sizes.pickerBodyMinWidth, onClose: () => isOpenChange(false) },
|
|
5321
5401
|
renderHeader(hideHeaderTitle),
|
|
5322
|
-
React__default.createElement(FilterItemBody, { ...props, ...dropdownProps, selectedPredicate: predicate, value: getValue(predicate, props.value), onValueChange: onValueChange }))) : (React__default.createElement(DropdownContainer, { cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], ...dropdownProps, rawProps: {
|
|
5402
|
+
React__default.createElement(FilterItemBody, { ...props, ...dropdownProps, selectedPredicate: predicate, value: getValue(predicate, props.value), onValueChange: onValueChange }))) : (React__default.createElement(DropdownContainer, { cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], ...dropdownProps, rawProps: { 'aria-modal': true } },
|
|
5323
5403
|
renderHeader(hideHeaderTitle),
|
|
5324
5404
|
React__default.createElement(FilterItemBody, { ...props, ...dropdownProps, selectedPredicate: predicate, value: getValue(predicate, props.value), onValueChange: onValueChange })));
|
|
5325
5405
|
};
|
|
@@ -5490,7 +5570,7 @@ function FiltersToolbarImpl(props) {
|
|
|
5490
5570
|
}
|
|
5491
5571
|
const FiltersPanel = /* @__PURE__ */React__default.memo(FiltersToolbarImpl);
|
|
5492
5572
|
|
|
5493
|
-
var css$k = {"delete-button":"
|
|
5573
|
+
var css$k = {"delete-button":"frGXqP","deleteButton":"frGXqP","tab-button":"_5COuq7","tabButton":"_5COuq7","targetOpen":"zE5K4c"};
|
|
5494
5574
|
|
|
5495
5575
|
function PresetActionsDropdown(props) {
|
|
5496
5576
|
const { uuiNotifications } = useUuiContext();
|
|
@@ -5566,7 +5646,7 @@ const UUI_PRESETS_PANEL_MORE_BUTTON = 'uui-presets-panel-more-button';
|
|
|
5566
5646
|
const UUI_PRESETS_PANEL_INPUT = 'uui-presets-panel-input';
|
|
5567
5647
|
const UUI_PRESETS_PANEL_PRESET = 'uui-presets-panel-preset';
|
|
5568
5648
|
|
|
5569
|
-
var css$j = {"preset-input-cell":"
|
|
5649
|
+
var css$j = {"preset-input-cell":"CX--BX","presetInputCell":"CX--BX","preset-input":"Pc-ija","presetInput":"Pc-ija"};
|
|
5570
5650
|
|
|
5571
5651
|
function PresetInput(props) {
|
|
5572
5652
|
const [presetCaption, setPresetCaption] = useState(props.preset?.name || '');
|
|
@@ -5593,7 +5673,7 @@ function PresetInput(props) {
|
|
|
5593
5673
|
React__default.createElement(TextInput, { cx: css$j.presetInput, onValueChange: setPresetCaption, value: presetCaption, onCancel: cancelActionHandler, onAccept: acceptActionHandler, onBlur: newPresetOnBlurHandler, autoFocus: true, maxLength: 50, isReadonly: readonly })));
|
|
5594
5674
|
}
|
|
5595
5675
|
|
|
5596
|
-
var css$i = {"preset":"
|
|
5676
|
+
var css$i = {"preset":"_7-CwRy","activePreset":"I-Hd6X"};
|
|
5597
5677
|
|
|
5598
5678
|
function Preset(props) {
|
|
5599
5679
|
const [isRenamePreset, setIsRenamePreset] = useState(false);
|
|
@@ -5618,7 +5698,7 @@ function Preset(props) {
|
|
|
5618
5698
|
return (React__default.createElement(FlexCell, { key: props.preset.id, alignSelf: "center", width: "auto" }, isRenamePreset ? (React__default.createElement(PresetInput, { onCancel: cancelRenamePreset, onSuccess: handlePresetRename, preset: props.preset })) : (React__default.createElement(TabButton, { caption: props.preset.name, onClick: !isPresetActive && choosePresetHandler, cx: [css$i.preset, isPresetActive && css$i.activePreset, UUI_PRESETS_PANEL_PRESET], size: settings.presetsPanel.sizes.tabButton, withNotify: isPresetActive && props.hasPresetChanged(props.preset), icon: PresetActionsDropdownComponent, iconPosition: "right", isActive: isPresetActive }))));
|
|
5619
5699
|
}
|
|
5620
5700
|
|
|
5621
|
-
var css$h = {"divider":"
|
|
5701
|
+
var css$h = {"divider":"eB2z47","dropdownDeleteIcon":"_8t-mZX","presetsWrapper":"xc27q1","addPresetContainer":"wrmFxW","dropContainer":"iqVuNd"};
|
|
5622
5702
|
|
|
5623
5703
|
function PresetsPanel(props) {
|
|
5624
5704
|
const [isAddingPreset, setIsAddingPreset] = useState(false);
|
|
@@ -5667,9 +5747,9 @@ function PresetsPanel(props) {
|
|
|
5667
5747
|
React__default.createElement(AdaptivePanel, { items: getPanelItems() }))));
|
|
5668
5748
|
}
|
|
5669
5749
|
|
|
5670
|
-
var css$g = {"root":"
|
|
5750
|
+
var css$g = {"root":"LJp6vz"};
|
|
5671
5751
|
|
|
5672
|
-
var css$f = {"root":"
|
|
5752
|
+
var css$f = {"root":"_6gLsRs","burger-content":"rkuFY6","burgerContent":"rkuFY6"};
|
|
5673
5753
|
|
|
5674
5754
|
var _path$3;
|
|
5675
5755
|
function _extends$3() { return _extends$3 = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends$3.apply(null, arguments); }
|
|
@@ -5712,7 +5792,7 @@ var SvgNavigationArrowDownOutline = function SvgNavigationArrowDownOutline(props
|
|
|
5712
5792
|
};
|
|
5713
5793
|
var ForwardRef$2 = /*#__PURE__*/forwardRef(SvgNavigationArrowDownOutline);
|
|
5714
5794
|
|
|
5715
|
-
var css$e = {"root":"
|
|
5795
|
+
var css$e = {"root":"OZQczq","button-primary":"wx8yiu","buttonPrimary":"wx8yiu","button-secondary":"gy-75D","buttonSecondary":"gy-75D","hasIcon":"QjBofk","dropdown":"qLwDDX"};
|
|
5716
5796
|
|
|
5717
5797
|
function applyBurgerButtonMods(props) {
|
|
5718
5798
|
return [
|
|
@@ -5737,13 +5817,13 @@ const BurgerButton = /* @__PURE__ */React__default.forwardRef((props, ref) => {
|
|
|
5737
5817
|
}, dropdownIcon: ForwardRef$2 }));
|
|
5738
5818
|
});
|
|
5739
5819
|
|
|
5740
|
-
var css$d = {"search-input":"
|
|
5820
|
+
var css$d = {"search-input":"gQLAWs","searchInput":"gQLAWs"};
|
|
5741
5821
|
|
|
5742
5822
|
function BurgerSearch(props) {
|
|
5743
5823
|
return (React.createElement(TextInput$1, { cx: cx(css$d.searchInput, 'uui-main_menu-burger-search'), iconPosition: "left", icon: ForwardRef$M, placeholder: props.placeholder, value: props.value, onValueChange: props.onValueChange, onCancel: props.onCancel, cancelIcon: props.value && ForwardRef$Q }));
|
|
5744
5824
|
}
|
|
5745
5825
|
|
|
5746
|
-
var css$c = {"root":"
|
|
5826
|
+
var css$c = {"root":"w-S8L1","group-header":"YGKwqA","groupHeader":"YGKwqA","group-name":"mbcwfp","groupName":"mbcwfp","line":"YjM1L5"};
|
|
5747
5827
|
|
|
5748
5828
|
function BurgerGroupHeader(props) {
|
|
5749
5829
|
return (React.createElement("div", { className: cx(css$c.root, css$c.groupHeader, 'uui-burger-group-header') },
|
|
@@ -5751,7 +5831,7 @@ function BurgerGroupHeader(props) {
|
|
|
5751
5831
|
React.createElement("span", { className: css$c.groupName }, props.caption)));
|
|
5752
5832
|
}
|
|
5753
5833
|
|
|
5754
|
-
var css$b = {"root":"
|
|
5834
|
+
var css$b = {"root":"C1udgy","type-primary":"LMLYUT","typePrimary":"LMLYUT","type-secondary":"_1NwAKU","typeSecondary":"_1NwAKU"};
|
|
5755
5835
|
|
|
5756
5836
|
const MainMenuButton = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
5757
5837
|
const { type, ...clickableProps } = props;
|
|
@@ -5779,7 +5859,7 @@ const MainMenuButton = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
|
5779
5859
|
props.isDropdown && (React.createElement(IconContainer, { icon: ForwardRef$P, flipY: props.isOpen }))));
|
|
5780
5860
|
});
|
|
5781
5861
|
|
|
5782
|
-
var css$a = {"dropdown-body":"
|
|
5862
|
+
var css$a = {"dropdown-body":"PB-SfU","dropdownBody":"PB-SfU"};
|
|
5783
5863
|
|
|
5784
5864
|
function MainMenuDropdown(props) {
|
|
5785
5865
|
const handleEscape = (e, onClose, isOpen) => {
|
|
@@ -5825,12 +5905,12 @@ var SvgNavigationGlobalMenuOutlineOutline = function SvgNavigationGlobalMenuOutl
|
|
|
5825
5905
|
};
|
|
5826
5906
|
var ForwardRef$1 = /*#__PURE__*/forwardRef(SvgNavigationGlobalMenuOutlineOutline);
|
|
5827
5907
|
|
|
5828
|
-
var css$9 = {"global-menu-btn":"
|
|
5908
|
+
var css$9 = {"global-menu-btn":"A39zfo","globalMenuBtn":"A39zfo","global-menu-icon":"iMqHXL","globalMenuIcon":"iMqHXL"};
|
|
5829
5909
|
|
|
5830
5910
|
const GlobalMenu = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement("button", { ref: ref, id: "global_menu_toggle", className: cx(css$9.globalMenuBtn, props.cx), ...props.rawProps },
|
|
5831
5911
|
React.createElement(IconContainer, { size: 36, icon: ForwardRef$1, cx: css$9.globalMenuIcon }))));
|
|
5832
5912
|
|
|
5833
|
-
var css$8 = {"container":"
|
|
5913
|
+
var css$8 = {"container":"Vfxej-","open":"_6xCWfp","folding-arrow":"Vw00hX","foldingArrow":"Vw00hX"};
|
|
5834
5914
|
|
|
5835
5915
|
const MainMenuAvatar = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement("button", { ref: ref, className: cx(css$8.container, props.isDropdown && css$8.dropdown, props.isOpen && css$8.open, props.onClick && uuiMarkers.clickable, props.cx), onClick: props.onClick, ...props.rawProps },
|
|
5836
5916
|
React.createElement(Avatar, { size: "36", img: props.avatarUrl }),
|
|
@@ -5838,15 +5918,15 @@ const MainMenuAvatar = /* @__PURE__ */React.forwardRef((props, ref) => (React.cr
|
|
|
5838
5918
|
props.isDropdown && (React.createElement("div", null,
|
|
5839
5919
|
React.createElement(IconContainer, { size: 18, icon: ForwardRef$P, flipY: props.isOpen, cx: css$8.foldingArrow }))))));
|
|
5840
5920
|
|
|
5841
|
-
var css$7 = {"search-input":"
|
|
5921
|
+
var css$7 = {"search-input":"_67jSLc","searchInput":"_67jSLc"};
|
|
5842
5922
|
|
|
5843
5923
|
const MainMenuSearch = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement(IEditableDebouncer, { ...props, render: (iEditable) => (React.createElement(TextInput$1, { iconPosition: "left", icon: ForwardRef$M, cancelIcon: props.value?.length > 0 && ForwardRef$Q, ...props, ...iEditable, ref: ref, cx: cx$1(css$7.searchInput, props.cx), ...props.rawProps })) })));
|
|
5844
5924
|
|
|
5845
|
-
var css$6 = {"container":"
|
|
5925
|
+
var css$6 = {"container":"CuJETf"};
|
|
5846
5926
|
|
|
5847
5927
|
const MainMenuIcon = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement(IconButton, { ref: ref, icon: props.icon, cx: cx$1(props.cx, css$6.container), ...props })));
|
|
5848
5928
|
|
|
5849
|
-
var css$5 = {"root":"
|
|
5929
|
+
var css$5 = {"root":"b0P50j"};
|
|
5850
5930
|
|
|
5851
5931
|
const Anchor = /* @__PURE__ */withMods(Anchor$1, () => [css$5.root]);
|
|
5852
5932
|
|
|
@@ -5904,7 +5984,7 @@ var SvgFileCloudUploadFill = function SvgFileCloudUploadFill(props, ref) {
|
|
|
5904
5984
|
};
|
|
5905
5985
|
var ForwardRef = /*#__PURE__*/forwardRef(SvgFileCloudUploadFill);
|
|
5906
5986
|
|
|
5907
|
-
var css$4 = {"root":"
|
|
5987
|
+
var css$4 = {"root":"s2hV5Q","drop-start":"B8kpCs","dropStart":"B8kpCs","drop-over":"MXcGrP","dropOver":"MXcGrP","link":"_1RYnw-","drop-area":"jz8iwH","dropArea":"jz8iwH","drop-caption":"_1IWZzH","dropCaption":"_1IWZzH","icon-blue":"rnKR0s","iconBlue":"rnKR0s"};
|
|
5908
5988
|
|
|
5909
5989
|
function DropSpot(props) {
|
|
5910
5990
|
const getInfoText = typeof props.infoText === 'string'
|
|
@@ -5922,7 +6002,7 @@ function DropSpot(props) {
|
|
|
5922
6002
|
return React.createElement(DropSpot$1, { render: renderAttachmentArea, onFilesDropped: props.onUploadFiles });
|
|
5923
6003
|
}
|
|
5924
6004
|
|
|
5925
|
-
var css$3 = {"root":"
|
|
6005
|
+
var css$3 = {"root":"nksM9G"};
|
|
5926
6006
|
|
|
5927
6007
|
const SvgCircleProgress = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
5928
6008
|
const outsetRadius = props.size / 2 - 1;
|
|
@@ -5933,7 +6013,7 @@ const SvgCircleProgress = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
|
5933
6013
|
React.createElement("circle", { strokeWidth: 1, fill: "transparent", r: outsetRadius, cx: props.size / 2, cy: props.size / 2 })));
|
|
5934
6014
|
});
|
|
5935
6015
|
|
|
5936
|
-
var css$2 = {"root":"
|
|
6016
|
+
var css$2 = {"root":"vLjTKy","file-name":"_6HkxLE","fileName":"_6HkxLE","default-color":"_2IV72d","defaultColor":"_2IV72d","doc-color":"jEY6Ye","docColor":"jEY6Ye","xls-color":"PNefNe","xlsColor":"PNefNe","pdf-color":"_-1OcsO","pdfColor":"_-1OcsO","movie-color":"CFmzjL","movieColor":"CFmzjL","img-color":"s7NiFu","imgColor":"s7NiFu","mov-color":"ZfaPOA","movColor":"ZfaPOA","error-block":"YS16lt","errorBlock":"YS16lt","icons-block":"sJWOvu","iconsBlock":"sJWOvu"};
|
|
5937
6017
|
|
|
5938
6018
|
const FileCard = /* @__PURE__ */React.forwardRef((props, ref) => {
|
|
5939
6019
|
const [isLoadingShow, setIsLoadingShow] = React.useState(true);
|
|
@@ -6053,7 +6133,7 @@ const getErrorPageConfig = () => ({
|
|
|
6053
6133
|
},
|
|
6054
6134
|
});
|
|
6055
6135
|
|
|
6056
|
-
var css$1 = {"container":"
|
|
6136
|
+
var css$1 = {"container":"p7VA34"};
|
|
6057
6137
|
|
|
6058
6138
|
const ErrorPage = (props) => {
|
|
6059
6139
|
const isMobileScreen = isMobile();
|
|
@@ -6065,7 +6145,7 @@ const ErrorPage = (props) => {
|
|
|
6065
6145
|
props?.supportLink && React__default.createElement("div", { className: "uui-error-support-link" }, props?.supportLink))));
|
|
6066
6146
|
};
|
|
6067
6147
|
|
|
6068
|
-
var css = {"recovery-spinner":"
|
|
6148
|
+
var css = {"recovery-spinner":"qpWq9b","recoverySpinner":"qpWq9b","recovery-message":"_8tB95V","recoveryMessage":"_8tB95V","modal-blocker":"DWNCZ1","modalBlocker":"DWNCZ1","modalFadeIn":"-rCBak"};
|
|
6069
6149
|
|
|
6070
6150
|
function ErrorHandler(props) {
|
|
6071
6151
|
const { uuiNotifications, uuiModals, uuiApi } = useUuiContext();
|