@epam/uui 6.3.3 → 6.4.1-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/assets/styles/clickable.scss +26 -26
  2. package/assets/styles/dnd.scss +9 -9
  3. package/assets/styles/effects.scss +6 -6
  4. package/assets/styles/helpers.scss +3 -3
  5. package/assets/styles/index.scss +6 -6
  6. package/assets/styles/inputs.scss +70 -70
  7. package/assets/styles/typography.scss +184 -184
  8. package/components/datePickers/DatePicker.d.ts.map +1 -1
  9. package/components/datePickers/DatePickerBody.d.ts +5 -0
  10. package/components/datePickers/DatePickerBody.d.ts.map +1 -1
  11. package/components/datePickers/RangeDatePicker.d.ts.map +1 -1
  12. package/components/datePickers/RangeDatePickerBody.d.ts +1 -1
  13. package/components/datePickers/RangeDatePickerBody.d.ts.map +1 -1
  14. package/components/datePickers/RangeDatePickerInput.d.ts.map +1 -1
  15. package/components/datePickers/helpers.d.ts +2 -1
  16. package/components/datePickers/helpers.d.ts.map +1 -1
  17. package/components/errors/config.d.ts.map +1 -1
  18. package/components/filters/FilterPickerBody.d.ts.map +1 -1
  19. package/components/filters/FiltersPanelItem.d.ts.map +1 -1
  20. package/components/inputs/timePicker/TimePicker.d.ts.map +1 -1
  21. package/components/layout/LabeledInput.d.ts.map +1 -1
  22. package/components/layout/ScrollBars.d.ts +12 -0
  23. package/components/layout/ScrollBars.d.ts.map +1 -1
  24. package/components/navigation/Anchor.d.ts +3 -1
  25. package/components/navigation/Anchor.d.ts.map +1 -1
  26. package/components/navigation/MainMenu/Burger/BurgerButton.d.ts +3 -1
  27. package/components/navigation/MainMenu/Burger/BurgerButton.d.ts.map +1 -1
  28. package/components/navigation/MainMenu/MainMenuDropdown.d.ts.map +1 -1
  29. package/components/navigation/MainMenu/MainMenuIcon.d.ts +3 -1
  30. package/components/navigation/MainMenu/MainMenuIcon.d.ts.map +1 -1
  31. package/components/pickers/DataPickerBody.d.ts +6 -1
  32. package/components/pickers/DataPickerBody.d.ts.map +1 -1
  33. package/components/pickers/DataPickerRow.d.ts.map +1 -1
  34. package/components/pickers/PickerBodyMobileView.d.ts +2 -1
  35. package/components/pickers/PickerBodyMobileView.d.ts.map +1 -1
  36. package/components/pickers/PickerInput.d.ts +2 -2
  37. package/components/pickers/PickerInput.d.ts.map +1 -1
  38. package/components/pickers/PickerModal.d.ts.map +1 -1
  39. package/components/tables/ColumnHeaderDropdown/ColumnHeaderDropdown.d.ts.map +1 -1
  40. package/components/tables/DataTableHeaderCell.d.ts +1 -1
  41. package/components/tables/DataTableHeaderCell.d.ts.map +1 -1
  42. package/components/tables/DataTableHeaderRow.d.ts.map +1 -1
  43. package/components/widgets/DataRowAddons.d.ts.map +1 -1
  44. package/components/widgets/Paginator.d.ts.map +1 -1
  45. package/components/widgets/Tag.d.ts.map +1 -1
  46. package/index.esm.js +347 -201
  47. package/index.esm.js.map +1 -1
  48. package/index.js +344 -198
  49. package/index.js.map +1 -1
  50. package/package.json +5 -5
  51. package/readme.md +9 -9
  52. package/stats.html +1 -1
  53. package/styles.css +1103 -1114
  54. 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, 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, DataTableCellContainer, DataTableHeaderCell as DataTableHeaderCell$1, 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';
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, DataTableCellContainer, DataTableHeaderCell as DataTableHeaderCell$1, 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
- import { withMods, devLogger, uuiElement, useIsActive, uuiMod, cx as cx$1, uuiMarkers, IEditableDebouncer, isFocusReceiverInsideFocusLock, 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';
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, useImperativeHandle, useMemo, useReducer, useCallback, Fragment } from 'react';
6
+ import React__default, { forwardRef, useState, useEffect, useContext, useRef, useMemo, useImperativeHandle, useReducer, useCallback, Fragment } from 'react';
7
7
  import cx from 'classnames';
8
8
  import { offset } from '@floating-ui/react';
9
9
  import dayjs from 'dayjs';
@@ -15,8 +15,8 @@ import updateLocale from 'dayjs/plugin/updateLocale.js';
15
15
  import objectSupport from 'dayjs/plugin/objectSupport';
16
16
  import customParseFormat from 'dayjs/plugin/customParseFormat.js';
17
17
  import isoWeek from 'dayjs/plugin/isoWeek.js';
18
- import { useOverlayScrollbars } from 'overlayscrollbars-react';
19
18
  import isEqual from 'react-fast-compare';
19
+ import { useOverlayScrollbars } from 'overlayscrollbars-react';
20
20
  import FocusLock, { MoveFocusInside } from 'react-focus-lock';
21
21
 
22
22
  var _path$Q;
@@ -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(#rxjxnmw20s14yc7wc_a)"
159
+ clipPath: "url(#o66wzyj8d6nz4vuo_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: "rxjxnmhfz1pboirun_b",
180
+ id: "o66wzycpvnnm3f03f_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(#rxjxnmhfz1pboirun_b)",
193
+ mask: "url(#o66wzycpvnnm3f03f_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: "rxjxnmw20s14yc7wc_a"
279
+ id: "o66wzyj8d6nz4vuo_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":"dpkSNc","uui-spinner":"oxsdAj","uuiSpinner":"oxsdAj"};
930
+ var css$1w = {"root":"-rERxX","uui-spinner":"tmGu8u","uuiSpinner":"tmGu8u"};
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":"uolm7F","loading-word":"McidsQ","loadingWord":"McidsQ","animated-loading":"A1bEkN","animatedLoading":"A1bEkN","skeleton_loading":"_01M-hF","skeletonLoading":"_01M-hF"};
937
+ var css$1v = {"root":"YG5Frk","loading-word":"ddaclv","loadingWord":"ddaclv","animated-loading":"_2sk6Ph","animatedLoading":"_2sk6Ph","skeleton_loading":"eCOoaB","skeletonLoading":"eCOoaB"};
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":"iUsxUP","line-height":"BAeEx5","lineHeight":"BAeEx5","font-size":"hItLbk","fontSize":"hItLbk"};
954
+ var css$1u = {"root":"KLWzoq","line-height":"hWyW2v","lineHeight":"hWyW2v","font-size":"qBzQH7","fontSize":"qBzQH7"};
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":"bMbmsL"};
981
+ var css$1t = {"root":"qd0CK-"};
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":"pufwib"};
1486
+ var css$1s = {"root":"cg5jG-"};
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":"_58RMXB"};
1504
+ var css$1r = {"root":"_0wd3Z9"};
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":"pAqBVv"};
1541
+ var css$1q = {"root":"_8vaJ3-"};
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":"shN7Y7"};
1571
+ var css$1p = {"root":"EbDk16"};
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":"cvBqKr","withNotify":"yocW2W"};
1583
+ var css$1o = {"root":"IgWcfw","withNotify":"_7XjmaT"};
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":"u2hjky","noLeftPadding":"HiKm-D","foldingArea":"ZEHu-o","onlyFoldable":"xmOBsH","captionWrapper":"JpCPj9","withNotify":"R-x9pH"};
1630
+ var css$1n = {"root":"ii1Tlg","noLeftPadding":"oHyLdV","foldingArea":"xNmyNz","onlyFoldable":"D1eLwm","captionWrapper":"q0CZQq","withNotify":"eO3WxS"};
1631
1631
 
1632
- var css$1m = {"root":"sTz6SX"};
1632
+ var css$1m = {"root":"cg-MDT"};
1633
1633
 
1634
1634
  const AvatarStack = /* @__PURE__ */withMods(AvatarStack$1, () => [css$1m.root]);
1635
1635
 
1636
- var css$1l = {"root":"UJjX18"};
1636
+ var css$1l = {"root":"_9MeVl1"};
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":"TmgNQ2"};
1664
+ var css$1k = {"root":"lkDT6R"};
1665
1665
 
1666
1666
  function applyTagMods(props) {
1667
1667
  return [
@@ -1676,44 +1676,58 @@ const Tag = /* @__PURE__ */React__default.forwardRef((props, ref) => {
1676
1676
  const styles = [applyTagMods(props), props.cx];
1677
1677
  const ClearIcon = props.clearIcon ? props.clearIcon : settings.tag.icons.clearIcon;
1678
1678
  const DropdownIcon = props.dropdownIcon ? props.dropdownIcon : settings.tag.icons.dropdownIcon;
1679
+ const icon = (React__default.createElement(ControlIcon, { icon: props.icon, onClick: props.onIconClick, isDisabled: props.isDisabled, rawProps: {
1680
+ 'aria-label': 'Icon in input',
1681
+ } }));
1679
1682
  return (React__default.createElement(Clickable, { ...props, rawProps: {
1680
1683
  'aria-haspopup': props.isDropdown,
1681
1684
  'aria-expanded': props.isOpen,
1682
1685
  ...props.rawProps,
1683
1686
  }, cx: styles, ref: ref },
1684
- props.icon && props.iconPosition !== 'right' && (React__default.createElement(IconContainer, { icon: props.icon, onClick: !props.isDisabled ? props.onIconClick : undefined })),
1687
+ props.iconPosition !== 'right' && icon,
1685
1688
  props.caption && (React__default.createElement("div", { className: uuiElement.caption }, props.caption)),
1686
1689
  props.count !== undefined && props.count !== null && (React__default.createElement(CountIndicator, { color: (!props.color || props.color === 'neutral') ? 'white' : props.color, size: settings.tag.sizes.countIndicatorMap[(props.size || settings.tag.sizes.default)], caption: props.count })),
1687
- props.icon && props.iconPosition === 'right' && (React__default.createElement(IconContainer, { icon: props.icon, onClick: !props.isDisabled ? props.onIconClick : undefined })),
1688
- props.isDropdown && (React__default.createElement(IconContainer, { icon: DropdownIcon, flipY: props.isOpen })),
1689
- props.onClear && !props.isDisabled && (React__default.createElement(IconContainer, { cx: uuiMarkers.clickable, icon: ClearIcon, onClick: props.onClear }))));
1690
+ props.iconPosition === 'right' && icon,
1691
+ props.isDropdown && (React__default.createElement(ControlIcon, { icon: DropdownIcon, flipY: props.isOpen })),
1692
+ props.onClear && !props.isDisabled && (React__default.createElement(ControlIcon, { cx: "uui-icon-cancel", icon: ClearIcon, onClick: props.onClear, rawProps: {
1693
+ 'aria-label': 'Remove tag',
1694
+ } }))));
1690
1695
  });
1691
1696
 
1692
- var css$1j = {"root":"nzWlrk","page":"QsZuJ8","spacer":"m-5g-m","mode-ghost":"Q5Mw6F","modeGhost":"Q5Mw6F"};
1697
+ var css$1j = {"root":"nomWYi","page":"ShrTZL","spacer":"gVZEHt","mode-ghost":"OnqSGD","modeGhost":"OnqSGD"};
1693
1698
 
1694
1699
  function Paginator(props) {
1695
- const renderPaginator = (params) => (React__default.createElement("nav", { role: "navigation", className: cx(css$1j.root, 'uui-paginator', `uui-size-${props.size || settings.paginator.sizes.default}`), ...params.rawProps },
1696
- React__default.createElement(Button, { size: props.size || settings.paginator.sizes.default, icon: settings.paginator.icons.leftArrowIcon, onClick: params.goToPrev, isDisabled: params.isFirst || props.isDisabled, fill: "outline", color: "secondary" }),
1697
- params.pages.map((page, index) => {
1698
- if (page.type === 'spacer') {
1699
- return (React__default.createElement(Button, { cx: cx(css$1j.spacer, css$1j.page), size: props.size || settings.paginator.sizes.default, key: `${index}_spacer`, caption: "...", fill: "ghost", color: "secondary", tabIndex: -1, isDisabled: props.isDisabled }));
1700
- }
1701
- else {
1702
- return (React__default.createElement(Button, { cx: cx(css$1j[`mode-${!page.isActive && 'ghost'}`], css$1j.page), size: props.size || settings.paginator.sizes.default, key: page.pageNumber, caption: page.pageNumber, onClick: () => page.onClick?.(), rawProps: { 'aria-current': page.isActive }, fill: (page.isActive && 'outline') || 'ghost', color: "primary", isDisabled: props.isDisabled }));
1703
- }
1704
- }),
1705
- React__default.createElement(Button, { size: props.size || settings.paginator.sizes.default, icon: settings.paginator.icons.rightArrowIcon, onClick: params.goToNext, isDisabled: params.isLast || props.isDisabled, fill: "outline", color: "secondary" })));
1700
+ const renderPaginator = (params) => (React__default.createElement("nav", { role: "navigation", className: cx('uui-paginator', `uui-size-${props.size || settings.paginator.sizes.default}`), ...params.rawProps },
1701
+ React__default.createElement("ul", { className: css$1j.root },
1702
+ React__default.createElement("li", null,
1703
+ React__default.createElement(Button, { size: props.size || settings.paginator.sizes.default, icon: settings.paginator.icons.leftArrowIcon, onClick: params.goToPrev, isDisabled: params.isFirst || props.isDisabled, fill: "outline", color: "secondary", rawProps: {
1704
+ 'aria-label': 'Previous page',
1705
+ } })),
1706
+ params.pages.map((page, index) => {
1707
+ if (page.type === 'spacer') {
1708
+ return (React__default.createElement("li", { key: `${index}_spacer` },
1709
+ React__default.createElement(Button, { cx: cx(css$1j.spacer, css$1j.page), size: props.size || settings.paginator.sizes.default, caption: "...", fill: "ghost", color: "secondary", tabIndex: -1, isDisabled: props.isDisabled })));
1710
+ }
1711
+ else {
1712
+ return (React__default.createElement("li", { key: page.pageNumber },
1713
+ React__default.createElement(Button, { cx: cx(css$1j[`mode-${!page.isActive && 'ghost'}`], css$1j.page), size: props.size || settings.paginator.sizes.default, caption: page.pageNumber, onClick: () => page.onClick?.(), rawProps: { 'aria-current': page.isActive }, fill: (page.isActive && 'outline') || 'ghost', color: "primary", isDisabled: props.isDisabled })));
1714
+ }
1715
+ }),
1716
+ React__default.createElement("li", null,
1717
+ React__default.createElement(Button, { size: props.size || settings.paginator.sizes.default, icon: settings.paginator.icons.rightArrowIcon, onClick: params.goToNext, isDisabled: params.isLast || props.isDisabled, fill: "outline", color: "secondary", rawProps: {
1718
+ 'aria-label': 'Next page',
1719
+ } })))));
1706
1720
  return React__default.createElement(Paginator$1, { ...props, render: renderPaginator });
1707
1721
  }
1708
1722
 
1709
- var css$1i = {"root":"mbv-7G","progress-bar":"sLZ-sP","progressBar":"sLZ-sP","progressBar-indeterminate":"ZM2d6q","progressBarIndeterminate":"ZM2d6q","size-12":"mQV2DG","size12":"mQV2DG","size-18":"ch2kb0","size18":"ch2kb0","size-24":"QXgmWs","size24":"QXgmWs"};
1723
+ var css$1i = {"root":"sWkrVL","progress-bar":"_7begqO","progressBar":"_7begqO","progressBar-indeterminate":"y0smf9","progressBarIndeterminate":"y0smf9","size-12":"SXuyip","size12":"SXuyip","size-18":"_52yxTD","size18":"_52yxTD","size-24":"SUNEIR","size24":"SUNEIR"};
1710
1724
 
1711
1725
  const IndeterminateBar = /* @__PURE__ */React.forwardRef((props, ref) => {
1712
1726
  return (React.createElement("div", { ref: ref, className: cx('uui-indeterminate_bar', props.cx, css$1i.root, css$1i[`size-${props.size || 12}`]) },
1713
1727
  React.createElement("div", { className: cx(css$1i.progressBar) })));
1714
1728
  });
1715
1729
 
1716
- var css$1h = {"root":"x9sUUM","striped":"OXI-tg","animate-stripes":"Q95Po2","animateStripes":"Q95Po2","size-12":"TSer3i","size12":"TSer3i","size-18":"u4ly7L","size18":"u4ly7L","size-24":"jaWae1","size24":"jaWae1"};
1730
+ var css$1h = {"root":"T85CMI","striped":"f6nSVy","animate-stripes":"lBOPBW","animateStripes":"lBOPBW","size-12":"cFINQZ","size12":"cFINQZ","size-18":"I2EBy2","size18":"I2EBy2","size-24":"iTXtyz","size24":"iTXtyz"};
1717
1731
 
1718
1732
  const DEFAULT_SIZE = '12';
1719
1733
  function applyProgressBarMods(mods) {
@@ -1728,14 +1742,14 @@ const ProgressBar = /* @__PURE__ */withMods(uuiComponents.ProgressBar, applyProg
1728
1742
  hideLabel: props.hideLabel || props.striped,
1729
1743
  }));
1730
1744
 
1731
- var css$1g = {"root":"dm2lWh"};
1745
+ var css$1g = {"root":"P-Cmqu"};
1732
1746
 
1733
1747
  const IndicatorBar = /* @__PURE__ */React.forwardRef((props, ref) => {
1734
1748
  const { progress } = props;
1735
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) }));
1736
1750
  });
1737
1751
 
1738
- var css$1f = {"root":"Wevfyh"};
1752
+ var css$1f = {"root":"_1Mr0VY"};
1739
1753
 
1740
1754
  const StatusIndicator = /* @__PURE__ */forwardRef((props, ref) => {
1741
1755
  return (React__default.createElement("div", { ref: ref, className: cx([
@@ -1750,7 +1764,7 @@ const StatusIndicator = /* @__PURE__ */forwardRef((props, ref) => {
1750
1764
  React__default.createElement("p", { className: "uui-status_indicator-caption" }, props.caption)));
1751
1765
  });
1752
1766
 
1753
- var css$1e = {"root":"tUtPao"};
1767
+ var css$1e = {"root":"Gd6Owo"};
1754
1768
 
1755
1769
  function applyCheckboxMods(mods) {
1756
1770
  return [
@@ -1768,7 +1782,7 @@ const applyUUICheckboxProps = (props) => {
1768
1782
  };
1769
1783
  const Checkbox = /* @__PURE__ */withMods(uuiComponents.Checkbox, applyCheckboxMods, applyUUICheckboxProps);
1770
1784
 
1771
- var css$1d = {"root":"_9T3ecW"};
1785
+ var css$1d = {"root":"FmOU1l"};
1772
1786
 
1773
1787
  function applyRadioInputMods(mods) {
1774
1788
  return [
@@ -1780,7 +1794,7 @@ function applyRadioInputMods(mods) {
1780
1794
  }
1781
1795
  const RadioInput = /* @__PURE__ */withMods(RadioInput$1, applyRadioInputMods, (props) => ({ icon: props.icon ? props.icon : settings.radioInput.icons.dotIcon }));
1782
1796
 
1783
- var css$1c = {"root":"LHUfJy"};
1797
+ var css$1c = {"root":"aiLFwk"};
1784
1798
 
1785
1799
  function applySwitchMods(mods) {
1786
1800
  return [
@@ -1804,7 +1818,7 @@ var EditMode;
1804
1818
  EditMode["INLINE"] = "inline";
1805
1819
  })(EditMode || (EditMode = {}));
1806
1820
 
1807
- var textInputCss = {"root":"nV0lWp"};
1821
+ var textInputCss = {"root":"N4GMpV"};
1808
1822
 
1809
1823
  const DEFAULT_MODE$3 = EditMode.FORM;
1810
1824
  function applyTextInputMods(mods) {
@@ -1829,7 +1843,7 @@ const SearchInput = /* @__PURE__ */React__default.forwardRef((props, ref) => {
1829
1843
  } }));
1830
1844
  });
1831
1845
 
1832
- var css$1b = {"root":"Dv1-mz"};
1846
+ var css$1b = {"root":"ZHQCH6"};
1833
1847
 
1834
1848
  const ControlGroup = /* @__PURE__ */withMods(ControlGroup$1, () => [css$1b.root, 'uui-control-group']);
1835
1849
 
@@ -1845,7 +1859,7 @@ function MultiSwitchComponent(props, ref) {
1845
1859
  }
1846
1860
  const MultiSwitch = /* @__PURE__ */React.forwardRef(MultiSwitchComponent);
1847
1861
 
1848
- var css$1a = {"root":"cbmBVi"};
1862
+ var css$1a = {"root":"nUEgSZ"};
1849
1863
 
1850
1864
  const DEFAULT_MODE$2 = EditMode.FORM;
1851
1865
  function applyNumericInputMods(mods) {
@@ -1865,7 +1879,7 @@ const NumericInput = /* @__PURE__ */withMods(NumericInput$1, applyNumericInputMo
1865
1879
  };
1866
1880
  });
1867
1881
 
1868
- var css$19 = {"root":"gVpB8t"};
1882
+ var css$19 = {"root":"GNWzGP"};
1869
1883
 
1870
1884
  const DEFAULT_MODE$1 = EditMode.FORM;
1871
1885
  function applyTextAreaMods(mods) {
@@ -1906,7 +1920,7 @@ function TREE_SHAKEABLE_INIT$1() {
1906
1920
  };
1907
1921
  }
1908
1922
 
1909
- var css$18 = {"root":"_0CgujI"};
1923
+ var css$18 = {"root":"_2ALu1f"};
1910
1924
 
1911
1925
  function applyDropdownContainerMods(mods) {
1912
1926
  return [
@@ -1917,7 +1931,7 @@ function applyDropdownContainerMods(mods) {
1917
1931
  }
1918
1932
  const DropdownContainer = /* @__PURE__ */withMods(uuiComponents.DropdownContainer, applyDropdownContainerMods);
1919
1933
 
1920
- var css$17 = {"root":"SZ7nWY","timepicker-input":"TxL-jx","timepickerInput":"TxL-jx","ltr-always":"UHPtDZ","ltrAlways":"UHPtDZ"};
1934
+ var css$17 = {"root":"ZrsqsF","timepicker-input":"jKz84-","timepickerInput":"jKz84-","ltr-always":"iSqVov","ltrAlways":"iSqVov"};
1921
1935
 
1922
1936
  const uuiTimePicker = {
1923
1937
  container: 'uui-timepicker-container',
@@ -2023,7 +2037,7 @@ const formatTime = (hours, minutes, meridian, format) => {
2023
2037
 
2024
2038
  const DEFAULT_MODE = EditMode.FORM;
2025
2039
  const valueToTimeString = (value, format) => {
2026
- if (value === null)
2040
+ if (value === null || (value?.hours === null && value?.minutes === null))
2027
2041
  return null;
2028
2042
  return uuiDayjs.dayjs()
2029
2043
  .set(value)
@@ -2035,6 +2049,7 @@ function TimePickerComponent(props, ref) {
2035
2049
  value: valueToTimeString(props.value, props.format),
2036
2050
  inputValue: valueToTimeString(props.value, props.format),
2037
2051
  });
2052
+ const targetRef = React__default.useRef(null);
2038
2053
  useEffect(() => {
2039
2054
  if (valueToTimeString(props.value, props.format) !== state.value) {
2040
2055
  const stringValue = valueToTimeString(props.value, props.format);
@@ -2056,13 +2071,17 @@ function TimePickerComponent(props, ref) {
2056
2071
  };
2057
2072
  const onClear = () => {
2058
2073
  props.onValueChange(null);
2074
+ setState((prevState) => ({ ...prevState, value: null, inputValue: null }));
2059
2075
  };
2060
2076
  const onToggle = (value) => {
2061
2077
  setState((prevState) => ({ ...prevState, isOpen: value }));
2062
2078
  };
2063
2079
  const saveTime = (newTime) => {
2064
2080
  setState((prevState) => ({ ...prevState, inputValue: newTime }));
2065
- props.onValueChange(formatStringTimeToObject(newTime));
2081
+ const newValue = formatStringTimeToObject(newTime);
2082
+ if (!isEqual(props.value, newValue)) {
2083
+ props.onValueChange(formatStringTimeToObject(newTime));
2084
+ }
2066
2085
  };
2067
2086
  const getTimeFromInputValue = (newValue) => {
2068
2087
  const trimmedNewValue = newValue.trimStart();
@@ -2076,7 +2095,6 @@ function TimePickerComponent(props, ref) {
2076
2095
  saveTime(inputValue);
2077
2096
  };
2078
2097
  const handleFocus = (e) => {
2079
- onToggle(true);
2080
2098
  props.onFocus?.(e);
2081
2099
  };
2082
2100
  const handleInputChange = (newValue) => {
@@ -2089,29 +2107,46 @@ function TimePickerComponent(props, ref) {
2089
2107
  }
2090
2108
  };
2091
2109
  const handleBlur = (e) => {
2092
- if (isFocusReceiverInsideFocusLock(e))
2093
- return;
2094
- onToggle(false);
2095
2110
  props.onBlur?.(e);
2096
2111
  if (state.value === '' || state.inputValue === '') {
2097
2112
  props.onValueChange(null);
2098
2113
  setState((prevState) => ({ ...prevState, value: null, inputValue: null }));
2099
2114
  }
2100
- state.value && state.inputValue && saveTime(state.value);
2115
+ else {
2116
+ saveTime(state.value);
2117
+ }
2118
+ };
2119
+ const onKeyDown = (e) => {
2120
+ if (e.key === 'Enter') {
2121
+ onToggle(true);
2122
+ }
2123
+ if (e.key === 'Escape' && state.isOpen) {
2124
+ e.preventDefault();
2125
+ e.stopPropagation();
2126
+ onToggle(false);
2127
+ }
2101
2128
  };
2102
2129
  const renderInput = (inputProps) => {
2103
- return (React__default.createElement(TextInput, { ...inputProps, onClick: null, 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, onFocus: handleFocus, onBlur: handleBlur, isDropdown: false, placeholder: props.placeholder ? props.placeholder : getFormat(), mode: props.mode || DEFAULT_MODE, rawProps: props.rawProps?.input }));
2130
+ 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) => {
2131
+ targetRef.current = node;
2132
+ if (typeof inputProps.ref === 'function') {
2133
+ inputProps.ref(node);
2134
+ }
2135
+ else if (inputProps.ref && 'current' in inputProps.ref) {
2136
+ inputProps.ref.current = node;
2137
+ }
2138
+ } }));
2104
2139
  };
2105
2140
  const renderBody = (bodyProps) => {
2106
2141
  const { forwardedRef, onValueChange, ...timePickerBodyProps } = props;
2107
- return (!props.isDisabled && !props.isReadonly && (React__default.createElement(DropdownContainer, { ...bodyProps, focusLock: false },
2142
+ return (!props.isDisabled && !props.isReadonly && (React__default.createElement(DropdownContainer, { ...bodyProps, shards: [targetRef] },
2108
2143
  React__default.createElement(TimePickerBody, { ...timePickerBodyProps, onValueChange: handleBodyValueChange, value: formatStringTimeToObject(state.value), rawProps: props.rawProps?.body, cx: props.bodyCx }))));
2109
2144
  };
2110
2145
  return (React__default.createElement(Dropdown$1, { renderTarget: (targetProps) => (props.renderTarget ? props.renderTarget(targetProps) : renderInput(targetProps)), renderBody: (bodyProps) => !props.isDisabled && !props.isReadonly && renderBody(bodyProps), onValueChange: !props.isDisabled && !props.isReadonly ? onToggle : null, value: state.isOpen, middleware: [offset(6)], ref: ref }));
2111
2146
  }
2112
2147
  const TimePicker = /* @__PURE__ */React__default.forwardRef(TimePickerComponent);
2113
2148
 
2114
- var css$16 = {"root":"RgwtBr"};
2149
+ var css$16 = {"root":"GA6XVL"};
2115
2150
 
2116
2151
  function applyInputAddonMods() {
2117
2152
  return [
@@ -2120,14 +2155,14 @@ function applyInputAddonMods() {
2120
2155
  }
2121
2156
  const InputAddon = /* @__PURE__ */withMods(InputAddon$1, applyInputAddonMods);
2122
2157
 
2123
- var css$15 = {"root":"DTDFey"};
2158
+ var css$15 = {"root":"YI2DoO"};
2124
2159
 
2125
2160
  function applySliderMods() {
2126
2161
  return [css$15.root, 'uui-color-neutral'];
2127
2162
  }
2128
2163
  const Slider = /* @__PURE__ */withMods(Slider$1, applySliderMods);
2129
2164
 
2130
- var css$14 = {"root":"AyT26F"};
2165
+ var css$14 = {"root":"c2Fz5n"};
2131
2166
 
2132
2167
  function applyTooltipMods(mods) {
2133
2168
  return [
@@ -2137,7 +2172,7 @@ function applyTooltipMods(mods) {
2137
2172
  }
2138
2173
  const Tooltip = /* @__PURE__ */withMods(uuiComponents.Tooltip, applyTooltipMods);
2139
2174
 
2140
- var css$13 = {"root":"_1-LKLW","tooltip":"_6n8Rzt"};
2175
+ var css$13 = {"root":"_4tN6Vo","tooltip":"_--ktVA"};
2141
2176
 
2142
2177
  function applyRatingMods(mods) {
2143
2178
  return [
@@ -2151,7 +2186,7 @@ const Rating = /* @__PURE__ */withMods(uuiComponents.Rating, applyRatingMods, (p
2151
2186
  Tooltip,
2152
2187
  }));
2153
2188
 
2154
- var css$12 = {"drag-handle-wrapper":"_5lu9Dy","dragHandleWrapper":"_5lu9Dy","with-indent":"NX4NdU","withIndent":"NX4NdU","drag-handle":"yyMf9e","dragHandle":"yyMf9e","icon-container":"QDWCMB","iconContainer":"QDWCMB"};
2189
+ var css$12 = {"drag-handle-wrapper":"YRz7Mc","dragHandleWrapper":"YRz7Mc","with-indent":"xWMYR8","withIndent":"xWMYR8","drag-handle":"ef-8MF","dragHandle":"ef-8MF","icon-container":"_4hI4b7","iconContainer":"_4hI4b7"};
2155
2190
 
2156
2191
  function DataRowAddons(props) {
2157
2192
  const row = props.rowProps;
@@ -2168,15 +2203,20 @@ function DataRowAddons(props) {
2168
2203
  return (React__default.createElement("div", { key: "dh", className: cx(css$12.dragHandleWrapper, row.indent > 0 && css$12.withIndent), style: { width: row.indent > 0 ? (getIndent() + getWidth()) : 0 }, ...props.eventHandlers },
2169
2204
  React__default.createElement(DragHandle, { cx: css$12.dragHandle })));
2170
2205
  };
2206
+ const handleFold = (e) => {
2207
+ if (e.key === 'Enter') {
2208
+ row.onFold(row);
2209
+ }
2210
+ };
2171
2211
  return (React__default.createElement(React__default.Fragment, null,
2172
2212
  row.dnd?.srcData && renderDragHandle(),
2173
- row?.checkbox?.isVisible && (React__default.createElement(Checkbox, { key: "cb", cx: "uui-dr_addons-checkbox", tabIndex: props.tabIndex, size: settings.dataTable.sizes.body.checkboxMap[props.size], value: row.isChecked, indeterminate: !row.isChecked && row.isChildrenChecked, onValueChange: () => row.onCheck?.(row), isDisabled: row.checkbox.isDisabled, isInvalid: row.checkbox.isInvalid })),
2174
- 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(IconContainer, { rawProps: {
2213
+ row?.checkbox?.isVisible && (React__default.createElement(Checkbox, { key: "cb", cx: "uui-dr_addons-checkbox", tabIndex: props.tabIndex, size: settings.dataTable.sizes.body.checkboxMap[props.size], value: row.isChecked, indeterminate: !row.isChecked && row.isChildrenChecked, onValueChange: () => row.onCheck?.(row), isDisabled: row.checkbox.isDisabled, isInvalid: row.checkbox.isInvalid, rawProps: { 'aria-label': 'Select' } })),
2214
+ 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: {
2175
2215
  'aria-label': row.isFolded ? 'Unfold' : 'Fold',
2176
2216
  role: 'button',
2177
2217
  }, key: "icon", icon: settings.dataTable.icons.body.foldingIcon, cx: [
2178
2218
  uuiElement.foldingArrow, uuiMarkers.clickable, css$12.iconContainer,
2179
- ], rotate: row.isFolded ? '90ccw' : '0', onClick: () => row.onFold(row), size: settings.dataTable.sizes.body.iconMap[props.size || settings.dataTable.sizes.body.row] }))))));
2219
+ ], rotate: row.isFolded ? '90ccw' : '0', onClick: () => row.onFold(row), onKeyDown: handleFold, size: settings.dataTable.sizes.body.iconMap[props.size || settings.dataTable.sizes.body.row], tabIndex: props.tabIndex }))))));
2180
2220
  }
2181
2221
 
2182
2222
  function VerticalTabButtonComponent(props, ref) {
@@ -2228,7 +2268,7 @@ function VerticalTabButtonComponent(props, ref) {
2228
2268
  }
2229
2269
  const VerticalTabButton = /* @__PURE__ */React__default.forwardRef(VerticalTabButtonComponent);
2230
2270
 
2231
- var css$11 = {"root":"gnFr4J","main-path":"svNf3N","mainPath":"svNf3N","content-wrapper":"J-ipHv","contentWrapper":"J-ipHv","content":"_5xanMQ","action-wrapper":"UtYDA3","actionWrapper":"UtYDA3","icon-wrapper":"MhpdaO","iconWrapper":"MhpdaO","icon":"_9Vn7Pz","close-icon":"CP2E8F","closeIcon":"CP2E8F"};
2271
+ var css$11 = {"root":"-AZD5l","main-path":"A8D5IL","mainPath":"A8D5IL","content-wrapper":"ESdizU","contentWrapper":"ESdizU","content":"gVGFnr","action-wrapper":"_3CNi09","actionWrapper":"_3CNi09","icon-wrapper":"AEgpSZ","iconWrapper":"AEgpSZ","icon":"jcBJDE","close-icon":"nrX1Kd","closeIcon":"nrX1Kd"};
2232
2272
 
2233
2273
  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 },
2234
2274
  React.createElement("div", { className: css$11.mainPath },
@@ -2246,7 +2286,7 @@ const ErrorAlert = /* @__PURE__ */React.forwardRef((props, ref) => React.createE
2246
2286
 
2247
2287
  const Dropdown = /* @__PURE__ */withMods(Dropdown$1);
2248
2288
 
2249
- var css$10 = {"submenu-root-item-rtl":"nnMnfl","submenuRootItemRtl":"nnMnfl","icon-after":"_0S0N4H","iconAfter":"_0S0N4H","submenu-root-item":"yIStM6","submenuRootItem":"yIStM6","icon-check":"iCT86R","iconCheck":"iCT86R","splitter-root":"VGEv2Z","splitterRoot":"VGEv2Z","splitter":"DBadzz","header-root":"qO1z0u","headerRoot":"qO1z0u","item-root":"Ev9E5N","itemRoot":"Ev9E5N","icon":"ZIuvRA","link":"gLnRBG","indent":"wSfXnL","selected-mark":"N8fR8R","selectedMark":"N8fR8R"};
2289
+ var css$10 = {"submenu-root-item-rtl":"He9nlj","submenuRootItemRtl":"He9nlj","icon-after":"DJA1nf","iconAfter":"DJA1nf","submenu-root-item":"FPXAdU","submenuRootItem":"FPXAdU","icon-check":"_6VyYYI","iconCheck":"_6VyYYI","splitter-root":"p6a8ks","splitterRoot":"p6a8ks","splitter":"OBncR1","header-root":"Q6WxhY","headerRoot":"Q6WxhY","item-root":"mKx6TD","itemRoot":"mKx6TD","icon":"v-dNnw","link":"Fa0FSB","indent":"hpjhIv","selected-mark":"IiWN5i","selectedMark":"IiWN5i"};
2250
2290
 
2251
2291
  var IDropdownControlKeys;
2252
2292
  (function (IDropdownControlKeys) {
@@ -2380,7 +2420,7 @@ function DropdownMenuSwitchButton(props) {
2380
2420
  React__default.createElement(Switch, { value: isSelected, tabIndex: -1, onValueChange: onHandleValueChange })));
2381
2421
  }
2382
2422
 
2383
- var css$$ = {"root":"_6FHJqJ","mode-block":"iuufnM","modeBlock":"iuufnM","mode-inline":"St3Pt4","modeInline":"St3Pt4","padding-0":"D0GNDi","padding0":"D0GNDi","padding-6":"Y-8Pta","padding6":"Y-8Pta","padding-12":"_4GJsxO","padding12":"_4GJsxO","padding-18":"wD3g1U","padding18":"wD3g1U"};
2423
+ var css$$ = {"root":"Vuhp5T","mode-block":"_4Ytq4q","modeBlock":"_4Ytq4q","mode-inline":"Uu-kpz","modeInline":"Uu-kpz","padding-0":"iIhgAX","padding0":"iIhgAX","padding-6":"dMYTXo","padding6":"dMYTXo","padding-12":"fU6vv2","padding12":"fU6vv2","padding-18":"D1X6y5","padding18":"D1X6y5"};
2384
2424
 
2385
2425
  function applyAccordionMods(mods) {
2386
2426
  return [
@@ -2393,7 +2433,7 @@ const Accordion = /* @__PURE__ */withMods(uuiComponents.Accordion, applyAccordio
2393
2433
  dropdownIcon: mods.dropdownIcon !== null && settings.accordion.icons.dropdownIcon,
2394
2434
  }));
2395
2435
 
2396
- var css$_ = {"root":"Nt3Vmd","align-items":"MHofXy","alignItems":"MHofXy","justify-content":"gEFWNK","justifyContent":"gEFWNK","border-top":"MtkWse","borderTop":"MtkWse","border-bottom":"NrnXXI","borderBottom":"NrnXXI","top-shadow":"NkGhGT","topShadow":"NkGhGT","padding":"DGrJ3D","margin":"_56-OZD","vPadding":"_4qpiO2","column-gap":"WIfh-k","columnGap":"WIfh-k","row-gap":"ByLp8m","rowGap":"ByLp8m","spacing":"Sdm7PW"};
2436
+ var css$_ = {"root":"_78kox8","align-items":"pALOKl","alignItems":"pALOKl","justify-content":"n9-HO1","justifyContent":"n9-HO1","border-top":"SyQ1-Z","borderTop":"SyQ1-Z","border-bottom":"uJ3zVB","borderBottom":"uJ3zVB","top-shadow":"AAkCe0","topShadow":"AAkCe0","padding":"_4Qg8r-","margin":"fZ-Uzs","vPadding":"c11Fz4","column-gap":"muZmDq","columnGap":"muZmDq","row-gap":"YafDEI","rowGap":"YafDEI","spacing":"g4aQ7w"};
2397
2437
 
2398
2438
  const FlexCell = /* @__PURE__ */withMods(FlexCell$1, () => [css$_.flexCell]);
2399
2439
 
@@ -2445,7 +2485,7 @@ const FlexRow = /* @__PURE__ */forwardRef((props, ref) => {
2445
2485
  } }, props.children));
2446
2486
  });
2447
2487
 
2448
- var css$Z = {"root":"bndaRP","margin-24":"p-NFd7","margin24":"p-NFd7","padding-12":"fefPkE","padding12":"fefPkE","padding-24":"-EdIVy","padding24":"-EdIVy","shadow":"IEGC8G","uui-surface-main":"OBk6Ve","uuiSurfaceMain":"OBk6Ve"};
2488
+ var css$Z = {"root":"h8UxYN","margin-24":"HqhPjY","margin24":"HqhPjY","padding-12":"_7OQUtz","padding12":"_7OQUtz","padding-24":"wxeTgM","padding24":"wxeTgM","shadow":"_5tdAQ4","uui-surface-main":"lSNKuA","uuiSurfaceMain":"lSNKuA"};
2449
2489
 
2450
2490
  const Panel = /* @__PURE__ */withMods(VPanel, (props) => [
2451
2491
  'uui-panel',
@@ -2455,7 +2495,7 @@ const Panel = /* @__PURE__ */withMods(VPanel, (props) => [
2455
2495
  props.background && css$Z[`uui-${props.background}`],
2456
2496
  ]);
2457
2497
 
2458
- var css$Y = {"root":"JRvS-I"};
2498
+ var css$Y = {"root":"k3oM9K"};
2459
2499
 
2460
2500
  function applyLabeledInputMods(mods) {
2461
2501
  return [
@@ -2464,15 +2504,20 @@ function applyLabeledInputMods(mods) {
2464
2504
  'uui-size-' + (mods.size || settings.labeledInput.sizes.default),
2465
2505
  ];
2466
2506
  }
2507
+ function getInfoIconForSize(size) {
2508
+ return size <= '30'
2509
+ ? settings.labeledInput.icons.fillInfoIcon
2510
+ : settings.labeledInput.icons.infoIcon;
2511
+ }
2467
2512
  function applyLabeledInputProps(props) {
2468
- return ({
2513
+ return {
2469
2514
  Tooltip: props.Tooltip || Tooltip,
2470
- infoIcon: props.infoIcon || props.size <= '30' ? settings.labeledInput.icons.fillInfoIcon : settings.labeledInput.icons.infoIcon,
2471
- });
2515
+ infoIcon: props.infoIcon || getInfoIconForSize(props.size),
2516
+ };
2472
2517
  }
2473
2518
  const LabeledInput = /* @__PURE__ */withMods(uuiComponents.LabeledInput, applyLabeledInputMods, applyLabeledInputProps);
2474
2519
 
2475
- var css$X = {"root":"PVUym3"};
2520
+ var css$X = {"root":"b4tIuJ"};
2476
2521
 
2477
2522
  function RadioGroup(props) {
2478
2523
  const direction = props.direction || 'vertical';
@@ -2487,7 +2532,7 @@ function RadioGroup(props) {
2487
2532
  })));
2488
2533
  }
2489
2534
 
2490
- var css$W = {"root":"nHJ-hZ","viewport":"wxehuT"};
2535
+ var css$W = {"root":"P-ohAs","viewport":"_8g-keC"};
2491
2536
 
2492
2537
  var uuiScrollbars;
2493
2538
  (function (uuiScrollbars) {
@@ -2497,16 +2542,25 @@ var uuiScrollbars;
2497
2542
  uuiScrollbars["uuiLineBottom"] = "uui-line-bottom";
2498
2543
  })(uuiScrollbars || (uuiScrollbars = {}));
2499
2544
  const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
2500
- const { cx: outerCx, children, overflowTopEffect = 'none', overflowBottomEffect = 'none', onScroll, autoHide = 'never', autoHideDelay, rawProps, ...rest } = props;
2545
+ const { cx: outerCx, children, overflowTopEffect = 'none', overflowBottomEffect = 'none', onScroll, autoHide = 'never', autoHideDelay, elementEvents, rawProps, ...rest } = props;
2501
2546
  const [shadowElements, setShadowElements] = useState({
2502
2547
  host: null,
2503
2548
  viewport: null,
2504
2549
  });
2505
2550
  const hostRef = useRef(null);
2506
2551
  const viewportRef = useRef(null);
2507
- const containerRef = useRef(null);
2552
+ const elementEventsEffective = useMemo(() => {
2553
+ const result = [['img', 'load']]; // this is default
2554
+ if (elementEvents && elementEvents.length > 0) {
2555
+ result.push(...elementEvents);
2556
+ }
2557
+ return result;
2558
+ }, [elementEvents]);
2508
2559
  const [initialize, osInstance] = useOverlayScrollbars({
2509
2560
  options: {
2561
+ update: {
2562
+ elementEvents: elementEventsEffective,
2563
+ },
2510
2564
  scrollbars: {
2511
2565
  theme: 'uui-scroll-bars',
2512
2566
  autoHide: autoHide,
@@ -2548,7 +2602,7 @@ const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
2548
2602
  useScrollShadows(shadowElements.host, shadowElements.viewport);
2549
2603
  useImperativeHandle(ref, () => {
2550
2604
  return {
2551
- container: containerRef.current,
2605
+ container: hostRef.current,
2552
2606
  view: viewportRef.current,
2553
2607
  };
2554
2608
  }, []);
@@ -2557,7 +2611,7 @@ const ScrollBars = /* @__PURE__ */forwardRef((props, ref) => {
2557
2611
  });
2558
2612
  ScrollBars.displayName = 'ScrollBars';
2559
2613
 
2560
- var css$V = {"scroll-container":"_23kSzp","scrollContainer":"_23kSzp","list-container":"PJiIxz","listContainer":"PJiIxz"};
2614
+ var css$V = {"scroll-container":"_2krmNf","scrollContainer":"_2krmNf","list-container":"_7zmV6q","listContainer":"_7zmV6q"};
2561
2615
 
2562
2616
  const VirtualList = /* @__PURE__ */React__default.forwardRef((props, ref) => {
2563
2617
  const { listContainerRef, offsetY, handleScroll, estimatedHeight, scrollContainerRef, } = useVirtualList({
@@ -2610,7 +2664,7 @@ function Tree(props) {
2610
2664
  return (React.createElement(VirtualList, { value: value, onValueChange: onValueChange, rowsCount: rowsCount, rows: renderedRows, cx: cx$1(propsCx), role: "tree" }));
2611
2665
  }
2612
2666
 
2613
- var css$U = {"root":"pdgEzz"};
2667
+ var css$U = {"root":"flGm0-"};
2614
2668
 
2615
2669
  function CheckboxGroup(props) {
2616
2670
  const currentValue = props.value || [];
@@ -2712,7 +2766,7 @@ const Tabs = /* @__PURE__ */forwardRef((props, ref) => {
2712
2766
  });
2713
2767
  Tabs.displayName = 'Tabs';
2714
2768
 
2715
- var css$T = {"root":"B-MREe","modal-blocker":"_71ZdkV","modalBlocker":"_71ZdkV","animateModalBlocker":"TJUR9d","modal":"_05ZVN-","modal-footer":"D2nU0P","modalFooter":"D2nU0P","border-top":"gVONDg","borderTop":"gVONDg","modal-header":"v1unTV","modalHeader":"v1unTV","border-bottom":"ze7Uv-","borderBottom":"ze7Uv-"};
2769
+ var css$T = {"root":"HLI76q","modal-blocker":"aXkr3-","modalBlocker":"aXkr3-","animateModalBlocker":"_74aywb","modal":"IaquOA","modal-footer":"ZQA-WC","modalFooter":"ZQA-WC","border-top":"Lx0X-r","borderTop":"Lx0X-r","modal-header":"mb3C-Z","modalHeader":"mb3C-Z","border-bottom":"SMNrOE","borderBottom":"SMNrOE"};
2716
2770
 
2717
2771
  const ModalBlocker = /* @__PURE__ */withMods(ModalBlocker$1, () => [css$T.modalBlocker]);
2718
2772
  const ModalWindow = /* @__PURE__ */withMods(ModalWindow$1, () => [css$T.root, css$T.modal], (props) => {
@@ -2904,7 +2958,7 @@ const TREE_SHAKEABLE_INIT = () => ({
2904
2958
  });
2905
2959
  const i18n = /* @__PURE__ */TREE_SHAKEABLE_INIT();
2906
2960
 
2907
- var css$S = {"root":"l8yk-s","icon-wrapper":"Mkwo0P","iconWrapper":"Mkwo0P","action-wrapper":"hVM9VD","actionWrapper":"hVM9VD","close-icon":"_9Hb8ZR","closeIcon":"_9Hb8ZR","main-path":"keDJfE","mainPath":"keDJfE","content":"X5hz2X","close-wrapper":"_7o71vO","closeWrapper":"_7o71vO","clear-notifications":"dZD3-7","clearNotifications":"dZD3-7"};
2961
+ var css$S = {"root":"eR6KR3","icon-wrapper":"E2PBfc","iconWrapper":"E2PBfc","action-wrapper":"l7gGg0","actionWrapper":"l7gGg0","close-icon":"Q6rXwG","closeIcon":"Q6rXwG","main-path":"W4YKXs","mainPath":"W4YKXs","content":"RmEqRm","close-wrapper":"MJTTeU","closeWrapper":"MJTTeU","clear-notifications":"_9CdTPS","clearNotifications":"_9CdTPS"};
2908
2962
 
2909
2963
  const NotificationCard = /* @__PURE__ */React__default.forwardRef((props, ref) => {
2910
2964
  const notificationCardNode = React__default.useRef(null);
@@ -2937,7 +2991,7 @@ function ClearNotification() {
2937
2991
  React__default.createElement(LinkButton, { caption: i18n.notificationCard.closeAllNotificationsButton, onClick: () => uuiCtx.uuiNotifications.clearAll() })));
2938
2992
  }
2939
2993
 
2940
- var css$R = {"footer":"_1-0oP9"};
2994
+ var css$R = {"footer":"a-fq0e"};
2941
2995
 
2942
2996
  class ConfirmationModal extends React.Component {
2943
2997
  render() {
@@ -2979,7 +3033,7 @@ function useReliableForceUpdate() {
2979
3033
  return red[1];
2980
3034
  }
2981
3035
 
2982
- var css$Q = {"root":"IAiwak","container":"_2E8lx6"};
3036
+ var css$Q = {"root":"HKKizN","container":"e8PE-q"};
2983
3037
 
2984
3038
  const defaultFormat = 'MMM D, YYYY';
2985
3039
  const valueFormat = 'YYYY-MM-DD';
@@ -2998,7 +3052,16 @@ const defaultRangeValue = {
2998
3052
  from: null,
2999
3053
  to: null,
3000
3054
  };
3001
- const getDisplayedMonth = (selectedDate, focus) => {
3055
+ const getDisplayedMonth = (selectedDate, focus, initialViewMonth) => {
3056
+ if (selectedDate.from || selectedDate.to) {
3057
+ return getDisplayedMonthBySelection(selectedDate, focus);
3058
+ }
3059
+ else if (initialViewMonth) {
3060
+ return getNewMonth(`${initialViewMonth}-01`);
3061
+ }
3062
+ return uuiDayjs.dayjs();
3063
+ };
3064
+ const getDisplayedMonthBySelection = (selectedDate, focus) => {
3002
3065
  if (selectedDate.from && selectedDate.to && focus) {
3003
3066
  return uuiDayjs.dayjs(selectedDate[focus]);
3004
3067
  }
@@ -3197,26 +3260,27 @@ function DatePickerHeader({ navIconLeft, navIconRight, value: { month, view }, o
3197
3260
  React.createElement(Button, { icon: navIconRight || settings.datePicker.icons.body.nextIcon, color: "secondary", fill: "ghost", cx: uuiHeader.navIconRight, onClick: !isDisabled && (() => onRightNavigationArrow()), isDisabled: disableNext }))));
3198
3261
  }
3199
3262
 
3200
- var css$P = {"root":"jnWZre"};
3263
+ var css$P = {"root":"W9e-sc"};
3201
3264
 
3202
3265
  function applyDateSelectionMods() {
3203
3266
  return [css$P.root, `uui-size-${settings.datePicker.sizes.body}`];
3204
3267
  }
3205
3268
  const Calendar = /* @__PURE__ */withMods(Calendar$1, applyDateSelectionMods);
3206
3269
 
3207
- var css$O = {"root":"LHAvX6"};
3270
+ var css$O = {"root":"o5uHOc"};
3208
3271
 
3209
3272
  const uuiDatePickerBody = {
3210
3273
  wrapper: 'uui-datepicker-body-wrapper',
3211
3274
  };
3212
3275
  const DatePickerBody = /* @__PURE__ */forwardRef(DatePickerBodyComp);
3213
3276
  function DatePickerBodyComp(props, ref) {
3214
- const { value, onValueChange } = props;
3215
- const [month, setMonth] = useState(getNewMonth(value));
3277
+ const { value, onValueChange, initialViewMonth } = props;
3278
+ const initialViewDate = value || (initialViewMonth ? `${initialViewMonth}-01` : '');
3279
+ const [month, setMonth] = useState(getNewMonth(initialViewDate));
3216
3280
  const [view, setView] = useState('DAY_SELECTION');
3217
3281
  // sync updated props with internal state
3218
3282
  useEffect(() => {
3219
- setMonth(getNewMonth(value));
3283
+ setMonth(getNewMonth(initialViewDate));
3220
3284
  setView('DAY_SELECTION');
3221
3285
  }, [value, setMonth]);
3222
3286
  return (React__default.createElement(StatelessDatePickerBody, { ref: ref, ...props, month: month, view: view, onValueChange: onValueChange, onMonthChange: (m) => setMonth(m), onViewChange: (v) => setView(v) }));
@@ -3314,7 +3378,7 @@ function DatePickerComponent(props, ref) {
3314
3378
  };
3315
3379
  const renderBody = useMemo(() => (renderProps) => {
3316
3380
  return (React__default.createElement(DropdownContainer, { ...renderProps },
3317
- 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 }),
3381
+ 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 }),
3318
3382
  props.renderFooter?.()));
3319
3383
  }, [value, onBodyValueChange]);
3320
3384
  return (React__default.createElement(Dropdown$1, { value: isBodyOpen, middleware: [offset(6)], placement: props.placement, ref: ref, onValueChange: (v) => {
@@ -3325,7 +3389,7 @@ function DatePickerComponent(props, ref) {
3325
3389
  }
3326
3390
  const DatePicker = /* @__PURE__ */React__default.forwardRef(DatePickerComponent);
3327
3391
 
3328
- var css$N = {"date-input":"O-HUK8","dateInput":"O-HUK8","root":"l745ew","separator":"_7XHHq5"};
3392
+ var css$N = {"date-input":"_5O2Vyh","dateInput":"_5O2Vyh","root":"SW9V00","separator":"qWAE5e"};
3329
3393
 
3330
3394
  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) => {
3331
3395
  const [inputValue, setInputValue] = useState(toCustomDateRangeFormat(value, format));
@@ -3387,16 +3451,18 @@ const RangeDatePickerInput = /* @__PURE__ */forwardRef(({ isDisabled, isInvalid,
3387
3451
  };
3388
3452
  onValueChange(newValue);
3389
3453
  };
3390
- const clearAllowed = !disableClear && !(preventEmptyFromDate && preventEmptyToDate) && inputValue.from && inputValue.to;
3454
+ const clearAllowed = !disableClear && !isReadonly && !isDisabled
3455
+ && !(preventEmptyFromDate && preventEmptyToDate)
3456
+ && ((value.from && !preventEmptyFromDate) || (value.to && !preventEmptyToDate));
3391
3457
  return (
3392
3458
  // eslint-disable-next-line jsx-a11y/no-static-element-interactions
3393
3459
  React__default.createElement("div", { ref: ref, className: cx$1(`uui-size-${size || settings.rangeDatePicker.sizes.default}`, 'uui-range-date-picker', classes, css$N.root, isDisabled && uuiMod.disabled, isReadonly && uuiMod.readonly, isInvalid && uuiMod.invalid, inFocus && uuiMod.focus), onKeyDown: onKeyDown },
3394
3460
  React__default.createElement(TextInput, { icon: settings.rangeDatePicker.icons.input.calendarIcon, cx: cx$1(css$N.dateInput, inFocus === 'from' && uuiMod.focus), size: size || settings.rangeDatePicker.sizes.default, placeholder: getPlaceholder ? getPlaceholder('from') : i18n.rangeDatePicker.pickerPlaceholderFrom, value: inputValue.from || undefined, onValueChange: (v) => onInputChange(v || '', 'from'), onFocus: (event) => handleFocus(event, 'from'), onBlur: (event) => handleBlur(event, 'from'), isInvalid: isInvalid, isDisabled: isDisabled, isReadonly: isReadonly, isDropdown: false, rawProps: rawProps?.from, onClick: onClick, onKeyDown: onInputKeyDown, id: id }),
3395
3461
  React__default.createElement("div", { className: css$N.separator }),
3396
- 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, onCancel: clearAllowed ? onClear : undefined, 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 })));
3462
+ 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 })));
3397
3463
  });
3398
3464
 
3399
- var css$M = {"root":"_9f9SK5"};
3465
+ var css$M = {"root":"e8CP52"};
3400
3466
 
3401
3467
  const uuiPresets = {
3402
3468
  container: 'uui-presets-container',
@@ -3416,7 +3482,7 @@ function CalendarPresets(props) {
3416
3482
  getPresets(props.presets).map((item) => (React.createElement(LinkButton, { key: item.key, caption: item.name, onClick: () => props.onPresetSet(item), size: settings.rangeDatePicker.sizes.preset })))));
3417
3483
  }
3418
3484
 
3419
- var css$L = {"root":"h--zMZ","container":"_1TghEu","day-selection":"ebrMLw","daySelection":"ebrMLw","from-picker":"HDLKfi","fromPicker":"HDLKfi","to-picker":"cX6Gj3","toPicker":"cX6Gj3","bodes-wrapper":"UB7ZwA","bodesWrapper":"UB7ZwA","blocker":"hjKe03"};
3485
+ var css$L = {"root":"t-7IbW","container":"mz-gC0","day-selection":"MWjUgo","daySelection":"MWjUgo","from-picker":"CkOMEl","fromPicker":"CkOMEl","to-picker":"wd8kxl","toPicker":"wd8kxl","bodes-wrapper":"dsp6dB","bodesWrapper":"dsp6dB","blocker":"we3R0m"};
3420
3486
 
3421
3487
  const uuiRangeDatePickerBody = {
3422
3488
  inRange: 'uui-range-datepicker-in-range',
@@ -3492,13 +3558,13 @@ const rangeDatePickerPresets = {
3492
3558
  };
3493
3559
  const RangeDatePickerBody = /* @__PURE__ */forwardRef(RangeDatePickerBodyComp);
3494
3560
  function RangeDatePickerBodyComp(props, ref) {
3495
- const { value: _value, filter } = props;
3561
+ const { value: _value, filter, initialViewMonth } = props;
3496
3562
  const { selectedDate: _selectedDate, inFocus, } = _value;
3497
3563
  const selectedDate = _selectedDate || defaultRangeValue; // also handles null in comparison to default value
3498
3564
  const [view, setView] = useState('DAY_SELECTION');
3499
3565
  const [disabledPanel, setDisabledPanel] = useState(null);
3500
3566
  const [month, setMonth] = useState(() => {
3501
- return getDisplayedMonth(selectedDate, inFocus);
3567
+ return getDisplayedMonth(selectedDate, inFocus, initialViewMonth);
3502
3568
  });
3503
3569
  const getRange = (newValue) => {
3504
3570
  if (!filter || filter(uuiDayjs.dayjs(newValue))) {
@@ -3562,7 +3628,7 @@ function RangeDatePickerBodyComp(props, ref) {
3562
3628
  }, presets: presets })));
3563
3629
  };
3564
3630
  useLayoutEffectSafeForSsr(() => {
3565
- const monthToSet = getDisplayedMonth(selectedDate, inFocus);
3631
+ const monthToSet = getDisplayedMonth(selectedDate, inFocus, initialViewMonth);
3566
3632
  // To avoid re-rendering the body if the current month being displayed is equal to or greater than 1
3567
3633
  const shouldNotIgnoreUpdate = !(uuiDayjs.dayjs(month).isSame(monthToSet, 'month') || uuiDayjs.dayjs(month).add(1, 'month').isSame(monthToSet, 'month'));
3568
3634
  if (shouldNotIgnoreUpdate) {
@@ -3618,7 +3684,7 @@ const getDayState = (day, selectedDate) => {
3618
3684
  };
3619
3685
  };
3620
3686
 
3621
- var css$K = {"dropdown-container":"OWH2eI","dropdownContainer":"OWH2eI"};
3687
+ var css$K = {"dropdown-container":"uz8bCC","dropdownContainer":"uz8bCC"};
3622
3688
 
3623
3689
  function RangeDatePickerComponent(props, ref) {
3624
3690
  const { value: _value, format = defaultFormat, size = settings.rangeDatePicker.sizes.default } = props;
@@ -3669,7 +3735,7 @@ function RangeDatePickerComponent(props, ref) {
3669
3735
  inFocus,
3670
3736
  }, onValueChange: onBodyValueChange, filter: props.filter, presets: props.presets, renderDay: props.renderDay, renderFooter: () => {
3671
3737
  return props.renderFooter?.(value);
3672
- }, isHoliday: props.isHoliday, rawProps: props.rawProps?.body, preventEmptyToDate: props.preventEmptyToDate, preventEmptyFromDate: props.preventEmptyFromDate }))));
3738
+ }, isHoliday: props.isHoliday, rawProps: props.rawProps?.body, preventEmptyToDate: props.preventEmptyToDate, preventEmptyFromDate: props.preventEmptyFromDate, initialViewMonth: props.initialViewMonth }))));
3673
3739
  };
3674
3740
  const handleEscape = (e) => {
3675
3741
  if (e.key === 'Escape' && isOpen) {
@@ -3686,7 +3752,7 @@ function RangeDatePickerComponent(props, ref) {
3686
3752
  }
3687
3753
  const RangeDatePicker = /* @__PURE__ */React__default.forwardRef(RangeDatePickerComponent);
3688
3754
 
3689
- var css$J = {"root":"CyOFln","blocker":"H-cZjS","marker":"KI6Qzs","top":"f-8yiA","bottom":"Ru99qO","left":"GkJivw","right":"j61gnS","inside":"bzYllE"};
3755
+ var css$J = {"root":"_22QTE1","blocker":"jo1jLX","marker":"hC7D4B","top":"IU1oP9","bottom":"g0-uFw","left":"ZbgvZ5","right":"gxoxxo","inside":"AjTVvj"};
3690
3756
 
3691
3757
  function DropMarker(props) {
3692
3758
  return props.isDndInProgress
@@ -3701,9 +3767,9 @@ function DropMarker(props) {
3701
3767
  : null;
3702
3768
  }
3703
3769
 
3704
- var css$I = {"search-wrapper":"_6NgEiS","searchWrapper":"_6NgEiS","no-data":"I1K0Ei","noData":"I1K0Ei"};
3770
+ var css$I = {"root":"DN2C02","search-wrapper":"xFbLs8","searchWrapper":"xFbLs8","no-data":"lsm8-P","noData":"lsm8-P"};
3705
3771
 
3706
- var css$H = {"picker-row":"-StfyF","pickerRow":"-StfyF","align-widgets-top":"JJnK6P","alignWidgetsTop":"JJnK6P","row-content":"S9tdXR","rowContent":"S9tdXR","align-widgets-center":"x-cav9","alignWidgetsCenter":"x-cav9","icon-container":"PxEPqM","iconContainer":"PxEPqM","content-wrapper":"tDzzsF","contentWrapper":"tDzzsF","icon-wrapper":"RlEzNR","iconWrapper":"RlEzNR","icon-default":"ZQpQ6Y","iconDefault":"ZQpQ6Y","selected-mark":"yEpqqx","selectedMark":"yEpqqx"};
3772
+ var css$H = {"picker-row":"ZV9Evd","pickerRow":"ZV9Evd","align-widgets-top":"gHuc-F","alignWidgetsTop":"gHuc-F","row-content":"sRX7Cb","rowContent":"sRX7Cb","align-widgets-center":"VW-1QN","alignWidgetsCenter":"VW-1QN","icon-container":"YGdY3d","iconContainer":"YGdY3d","content-wrapper":"orJNxE","contentWrapper":"orJNxE","icon-wrapper":"Uu5Nvt","iconWrapper":"Uu5Nvt","icon-default":"cB83jB","iconDefault":"cB83jB","selected-mark":"StYSsP","selectedMark":"StYSsP"};
3707
3773
 
3708
3774
  const mergeHighlightRanges = (ranges) => {
3709
3775
  const mergedRanges = [];
@@ -3770,7 +3836,7 @@ const getHighlightedSearchMatches = (str, search) => {
3770
3836
  return getDecoratedText(str, ranges);
3771
3837
  };
3772
3838
 
3773
- var css$G = {"root":"u16SjP","column-gap":"o40jjy","columnGap":"o40jjy","title":"_5qG2fv","subtitle":"GHUFnn","disabled":"GrQp1V","multiline":"gdrDvZ"};
3839
+ var css$G = {"root":"xgOlkL","column-gap":"TGS6aA","columnGap":"TGS6aA","title":"_76nI11","subtitle":"NjETha","disabled":"_5U6PdI","multiline":"vnj5wW"};
3774
3840
 
3775
3841
  function PickerItem(props) {
3776
3842
  const { highlightSearchMatches = true, size, avatarUrl, isLoading, isDisabled, icon, } = props;
@@ -3803,6 +3869,12 @@ function DataPickerRow(props) {
3803
3869
  rowNode.current?.removeEventListener('mouseenter', handleMouseEnter);
3804
3870
  };
3805
3871
  }, [props.onFocus, handleMouseEnter]);
3872
+ const handleFocus = () => {
3873
+ // If this row gets focus but is not the focused row, make it focused
3874
+ if (!props.isFocused && props.onFocus) {
3875
+ props.onFocus(props.index);
3876
+ }
3877
+ };
3806
3878
  const getSubtitle = ({ path }) => {
3807
3879
  if (!props.dataSourceState?.search)
3808
3880
  return;
@@ -3844,14 +3916,15 @@ function DataPickerRow(props) {
3844
3916
  const clickHandler = props.onClick || props.onSelect || props.onFold || props.onCheck;
3845
3917
  return (
3846
3918
  // eslint-disable-next-line jsx-a11y/click-events-have-key-events
3847
- React.createElement("div", { onClick: clickHandler && ((e) => !isEventTargetInsideClickable(e) && clickHandler(props)), role: "option", "aria-busy": props.isLoading, "aria-posinset": props.index + 1, "aria-checked": props.checkbox?.isVisible ? props.isChecked : null, "aria-selected": props.isSelectable ? props.isSelected : null, ref: rowNode, className: cx$1(css$H.pickerRow, 'uui-picker_input-row', `uui-size-${props.size || settings.pickerInput.sizes.body.row}`, css$H[`align-widgets-${props.alignActions || 'top'}`], clickHandler && props.isFocused && uuiMod.focus, clickHandler && uuiMarkers.clickable, props.cx), style: props.padding && {
3919
+ React.createElement("div", { onClick: clickHandler && ((e) => !isEventTargetInsideClickable(e) && clickHandler(props)), onFocus: handleFocus, role: "option", "aria-busy": props.isLoading, "aria-posinset": props.index + 1, "aria-checked": props.checkbox?.isVisible ? props.isChecked : null, "aria-selected": props.isSelectable ? props.isSelected : null, tabIndex: -1, ref: rowNode, id: props.rowKey, className: cx$1(css$H.pickerRow, 'uui-picker_input-row', `uui-size-${props.size || settings.pickerInput.sizes.body.row}`, css$H[`align-widgets-${props.alignActions || 'top'}`], clickHandler && props.isFocused && uuiMod.focus, clickHandler && uuiMarkers.clickable, props.cx), style: props.padding && {
3848
3920
  '--uui-data_picker-horizontal-padding': `${props.padding}px`,
3849
3921
  }, ...props.rawProps }, renderContent()));
3850
3922
  }
3851
3923
 
3852
- function DataPickerBody({ highlightSearchMatches = true, ...props }) {
3924
+ function DataPickerBody({ highlightSearchMatches = true, autoFocusSearch = true, ...props }) {
3853
3925
  const prevProps = usePrevious(props);
3854
3926
  const showSearch = props.showSearch === 'auto' ? props.totalCount > 10 : Boolean(props.showSearch);
3927
+ const [isKeyboardNavigation, setIsKeyboardNavigation] = React__default.useState(false);
3855
3928
  useEffect(() => {
3856
3929
  if (props.rows.length !== prevProps?.rows.length || (!isEqual(prevProps?.value.checked, props.value.checked) && !props.fixedBodyPosition)) {
3857
3930
  props.scheduleUpdate?.();
@@ -3859,9 +3932,36 @@ function DataPickerBody({ highlightSearchMatches = true, ...props }) {
3859
3932
  }, [props.rows, prevProps, props.value.checked, props.fixedBodyPosition]);
3860
3933
  const searchKeyDown = (e) => {
3861
3934
  props.onKeyDown?.(e);
3862
- if (e.shiftKey && e.key === 'Tab')
3863
- e.preventDefault();
3864
3935
  };
3936
+ const handleVirtualListFocus = (e) => {
3937
+ // Only set keyboard navigation if focus came from keyboard (Tab key)
3938
+ // Check if the focus event was triggered by keyboard navigation
3939
+ const isKeyboardFocus = e.target === e.currentTarget;
3940
+ if (isKeyboardFocus) {
3941
+ setIsKeyboardNavigation(true);
3942
+ }
3943
+ };
3944
+ const handleVirtualListBlur = (e) => {
3945
+ // Check if focus is moving outside the virtual list
3946
+ const relatedTarget = e.relatedTarget;
3947
+ const currentTarget = e.currentTarget;
3948
+ if (relatedTarget && !currentTarget.contains(relatedTarget)) {
3949
+ // Focus is leaving the virtual list, hide visual focus but keep focusedIndex for navigation "by circle"
3950
+ setIsKeyboardNavigation(false);
3951
+ }
3952
+ };
3953
+ const { focusedIndex, topIndex, } = props.value;
3954
+ const focusedRowId = useMemo(() => {
3955
+ // No need to make unnecessary calculations.
3956
+ if (!props.showSearch) {
3957
+ return '';
3958
+ }
3959
+ const focusedRow = props.rows.at(focusedIndex - topIndex);
3960
+ if (!focusedRow) {
3961
+ return '';
3962
+ }
3963
+ return focusedRow.rowKey;
3964
+ }, [props.showSearch, focusedIndex, topIndex]);
3865
3965
  const renderEmpty = () => {
3866
3966
  const search = props.value.search;
3867
3967
  if (props.renderEmpty) {
@@ -3896,25 +3996,36 @@ function DataPickerBody({ highlightSearchMatches = true, ...props }) {
3896
3996
  return props.size || settings.pickerInput.sizes.body.row;
3897
3997
  };
3898
3998
  const renderRow = (row, dsState) => {
3899
- const pickerRowProps = { ...row, getName: props.getName };
3999
+ const pickerRowProps = {
4000
+ ...row,
4001
+ getName: props.getName,
4002
+ cx: cx$1(row.cx, isKeyboardNavigation && row.isFocused && 'uui-focus', isKeyboardNavigation && row.isFocused && 'uui-keyboard-focus'),
4003
+ };
3900
4004
  return props.renderRow ? (props.renderRow(pickerRowProps, dsState)) : (React__default.createElement(DataPickerRow, { ...pickerRowProps, key: row.rowKey, size: getRowSize(), flattenSearchResults: props.flattenSearchResults, highlightSearchMatches: highlightSearchMatches, dataSourceState: dsState, getName: props.getName }));
3901
4005
  };
4006
+ const renderSearchInput = () => {
4007
+ return (React__default.createElement(SearchInput, { placeholder: i18n.dataPickerBody.searchPlaceholder, value: props.value.search, onValueChange: (newVal) => props.onValueChange({ ...props.value, search: newVal }), onKeyDown: searchKeyDown, size: searchSize, debounceDelay: props.searchDebounceDelay, rawProps: {
4008
+ dir: 'auto',
4009
+ 'aria-activedescendant': focusedRowId,
4010
+ } }));
4011
+ };
3902
4012
  const searchSize = isMobile()
3903
4013
  ? settings.pickerInput.sizes.body.mobileSearchInput
3904
4014
  : settings.pickerInput.sizes.body.getSearchSize({ pickerSize: props.searchSize });
3905
- const renderedDataRows = useMemo(() => props.rows.map((row) => renderRow(row, props.value)), [props.rows, props.value]);
4015
+ const renderedDataRows = useMemo(() => props.rows.map((row) => renderRow(row, props.value)), [props.rows, props.value, isKeyboardNavigation]);
3906
4016
  return (React__default.createElement(React__default.Fragment, null,
3907
4017
  showSearch && (React__default.createElement("div", { key: "search", className: cx$1(css$I.searchWrapper, 'uui-picker_input-body-search') },
3908
- React__default.createElement(FlexCell$1, { grow: 1 },
3909
- React__default.createElement(MoveFocusInside, null,
3910
- React__default.createElement(SearchInput, { placeholder: i18n.dataPickerBody.searchPlaceholder, value: props.value.search, onValueChange: (newVal) => props.onValueChange({ ...props.value, search: newVal }), onKeyDown: searchKeyDown, size: searchSize, debounceDelay: props.searchDebounceDelay, rawProps: { dir: 'auto' } }))))),
4018
+ React__default.createElement(FlexCell$1, { grow: 1 }, autoFocusSearch ? React__default.createElement(MoveFocusInside, null, renderSearchInput()) : renderSearchInput()))),
3911
4019
  React__default.createElement(FlexRow, { key: "body", cx: cx$1('uui-picker_input-body'), rawProps: { style: { maxHeight: props.maxHeight, maxWidth: props.maxWidth }, tabIndex: -1 } }, props.rows.length === 0 && props.value.topIndex === 0
3912
4020
  // 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
3913
4021
  // we fix this state on next render and shouldn't show empty state.
3914
- ? renderEmpty() : (React__default.createElement(VirtualList, { value: props.value, onValueChange: props.onValueChange, rows: renderedDataRows, rawProps: {
4022
+ ? renderEmpty() : (React__default.createElement(VirtualList, { value: props.value, onValueChange: props.onValueChange, rows: renderedDataRows, role: "listbox", cx: css$I.root, rawProps: {
3915
4023
  'aria-multiselectable': props.selectionMode === 'multi' ? true : null,
3916
4024
  'aria-orientation': 'vertical',
3917
- tabIndex: -1,
4025
+ tabIndex: 0,
4026
+ onKeyDown: props.onKeyDown,
4027
+ onFocus: handleVirtualListFocus,
4028
+ onBlur: handleVirtualListBlur,
3918
4029
  ...props.rawProps,
3919
4030
  }, rowsCount: props.rowsCount, isLoading: props.isReloading, renderBlocker: settings.pickerInput.renderBlocker, overflowTopEffect: showSearch ? 'line' : 'none', overflowBottomEffect: "line" })))));
3920
4031
  }
@@ -3943,7 +4054,7 @@ function DataPickerFooterImpl(props) {
3943
4054
  }
3944
4055
  const DataPickerFooter = /* @__PURE__ */React__default.memo(DataPickerFooterImpl);
3945
4056
 
3946
- var css$F = {"header":"dWqlir","title":"DLS7WK","close":"_4popBc"};
4057
+ var css$F = {"header":"AZz4sm","title":"wqVddw","close":"-F5F4O"};
3947
4058
 
3948
4059
  const DataPickerMobileHeaderImpl = (props) => {
3949
4060
  const title = props.title && typeof props.title === 'string' ? props.title.charAt(0).toUpperCase() + props.title.slice(1) : '';
@@ -3953,7 +4064,7 @@ const DataPickerMobileHeaderImpl = (props) => {
3953
4064
  };
3954
4065
  const DataPickerMobileHeader = /* @__PURE__ */React__default.memo(DataPickerMobileHeaderImpl);
3955
4066
 
3956
- var css$E = {"done":"dtgy0X","container":"kz9zZt"};
4067
+ var css$E = {"done":"qq1qxT","container":"_40T4mJ"};
3957
4068
 
3958
4069
  const PickerBodyMobileView = (props) => {
3959
4070
  const isMobileView = isMobile();
@@ -3965,7 +4076,7 @@ const PickerBodyMobileView = (props) => {
3965
4076
  isMobileView && (React__default.createElement(LinkButton, { caption: i18n.pickerInput.doneButton, onClick: () => props.onClose?.(), cx: css$E.done, size: settings.pickerInput.sizes.body.mobileFooterLinkButton }))));
3966
4077
  };
3967
4078
 
3968
- var css$D = {"sub-header-wrapper":"_3qCOvA","subHeaderWrapper":"_3qCOvA","switch":"P0z88W","no-found-modal-container":"mend-4","noFoundModalContainer":"mend-4","no-found-modal-container-icon":"fhhX5t","noFoundModalContainerIcon":"fhhX5t","no-found-modal-container-text":"PtJy9y","noFoundModalContainerText":"PtJy9y","body":"OEleEb"};
4079
+ var css$D = {"sub-header-wrapper":"-Ux2dj","subHeaderWrapper":"-Ux2dj","switch":"NoIFcA","search":"Y5QceC","no-found-modal-container":"_90xb1v","noFoundModalContainer":"_90xb1v","no-found-modal-container-icon":"Iuaf-8","noFoundModalContainerIcon":"Iuaf-8","no-found-modal-container-text":"k0AQZH","noFoundModalContainerText":"k0AQZH","body":"wfsrAa"};
3969
4080
 
3970
4081
  function PickerModal(props) {
3971
4082
  const { view, selection, dataSourceStateLens, dataSourceState, getName, clearSelection, getRows, getListProps, getFooterProps, isSingleSelect, handleDataSourceValueChange, } = usePickerModal(props);
@@ -3993,25 +4104,40 @@ function PickerModal(props) {
3993
4104
  React__default.createElement(Text, { cx: css$D.noFoundModalContainerText, fontSize: "12", lineHeight: "18", color: "primary" }, i18n.dataPickerBody.noRecordsSubTitle)));
3994
4105
  };
3995
4106
  const dataRows = getRows();
4107
+ const { focusedIndex, topIndex, } = dataSourceState;
4108
+ const focusedRowId = useMemo(() => {
4109
+ const focusedRow = dataRows.at(focusedIndex - topIndex);
4110
+ if (!focusedRow) {
4111
+ return '';
4112
+ }
4113
+ return focusedRow.rowKey;
4114
+ }, [focusedIndex, topIndex]);
4115
+ const onKeyDownHandler = (e) => {
4116
+ handleDataSourceKeyboard({
4117
+ value: dataSourceState,
4118
+ onValueChange: handleDataSourceValueChange,
4119
+ listView: view,
4120
+ rows: dataRows,
4121
+ searchPosition: 'body',
4122
+ }, e);
4123
+ };
3996
4124
  return (React__default.createElement(ModalBlocker, { ...props },
3997
4125
  React__default.createElement(ModalWindow, { width: 600, height: 700, cx: css$D.body },
3998
4126
  React__default.createElement(ModalHeader, { title: props.caption || i18n.pickerModal.headerTitle, onClose: () => props.abort() }),
3999
4127
  React__default.createElement(FlexCell, { cx: css$D.subHeaderWrapper },
4000
4128
  React__default.createElement(FlexRow, { vPadding: "24" },
4001
- React__default.createElement(SearchInput, { ...dataSourceStateLens.prop('search').toProps(), onKeyDown: (e) => handleDataSourceKeyboard({
4002
- value: dataSourceState,
4003
- onValueChange: handleDataSourceValueChange,
4004
- listView: view,
4005
- rows: dataRows,
4006
- searchPosition: 'body',
4007
- }, e), autoFocus: true, placeholder: i18n.pickerModal.searchPlaceholder, rawProps: { dir: 'auto' } })),
4129
+ React__default.createElement(MoveFocusInside, { className: css$D.search },
4130
+ React__default.createElement(SearchInput, { ...dataSourceStateLens.prop('search').toProps(), onKeyDown: onKeyDownHandler, placeholder: i18n.pickerModal.searchPlaceholder, rawProps: {
4131
+ dir: 'auto',
4132
+ 'aria-activedescendant': focusedRowId,
4133
+ } }))),
4008
4134
  !isSingleSelect() && (React__default.createElement(Switch, { cx: css$D.switch, size: settings.pickerInput.sizes.body.footerSwitchMap[settings.pickerInput.sizes.body.row], ...getFooterProps().showSelected, isDisabled: isSearching || view.getSelectedRowsCount() < 1, label: "Show only selected" })),
4009
4135
  props.renderFilter && React__default.createElement(FlexCell, { grow: 2 }, props.renderFilter(dataSourceStateLens.prop('filter').toProps()))),
4010
- React__default.createElement(DataPickerBody, { ...getListProps(), value: dataSourceState, onValueChange: handleDataSourceValueChange, showSearch: false, getName: getName, rows: dataRows, renderRow: renderRow, renderEmpty: renderNotFound, size: settings.pickerInput.sizes.body.row }),
4136
+ React__default.createElement(DataPickerBody, { ...getListProps(), value: dataSourceState, onValueChange: handleDataSourceValueChange, showSearch: false, getName: getName, rows: dataRows, renderRow: renderRow, renderEmpty: renderNotFound, size: settings.pickerInput.sizes.body.row, onKeyDown: onKeyDownHandler }),
4011
4137
  React__default.createElement(ModalFooter, null, props.renderFooter ? props.renderFooter(getFooterProps()) : renderFooter()))));
4012
4138
  }
4013
4139
 
4014
- var css$C = {"tooltip":"_4mcV-D"};
4140
+ var css$C = {"tooltip":"nqfmn3","noShrink":"ag--MC"};
4015
4141
 
4016
4142
  const PickerTogglerTag = /* @__PURE__ */React.forwardRef((props, ref) => {
4017
4143
  const tagProps = {
@@ -4023,14 +4149,14 @@ const PickerTogglerTag = /* @__PURE__ */React.forwardRef((props, ref) => {
4023
4149
  if (props.isCollapsed) {
4024
4150
  const collapsedRows = props.collapsedRows.map((row) => props.getName(row.value)).join(', ');
4025
4151
  return (React.createElement(Tooltip, { key: "selected", content: collapsedRows, closeDelay: 150, closeOnMouseLeave: "boundary", cx: css$C.tooltip },
4026
- React.createElement(Tag, { ref: ref, rawProps: { role: 'option' }, ...tagProps })));
4152
+ React.createElement(Tag, { ref: ref, rawProps: { role: 'option' }, ...tagProps, cx: css$C.noShrink })));
4027
4153
  }
4028
4154
  else {
4029
4155
  return React.createElement(Tag, { ref: ref, rawProps: { role: 'option' }, ...tagProps });
4030
4156
  }
4031
4157
  });
4032
4158
 
4033
- var css$B = {"root":"x5R0RZ"};
4159
+ var css$B = {"root":"Qjfu8Y"};
4034
4160
 
4035
4161
  const defaultMode = EditMode.FORM;
4036
4162
  function applyPickerTogglerMods(mods) {
@@ -4100,7 +4226,7 @@ function PickerInputComponent(props, ref) {
4100
4226
  const bodyHeight = isMobile() ? document.documentElement.clientHeight : props.dropdownHeight || settings.pickerInput.sizes.body.maxHeight;
4101
4227
  const minBodyWidth = props.minBodyWidth || settings.pickerInput.sizes.body.minWidth;
4102
4228
  const onKeyDown = (e) => handlePickerInputKeyboard(rows, e);
4103
- return (React__default.createElement(PickerBodyMobileView, { title: props.entityName, onClose: () => toggleBodyOpening(false), cx: [props.bodyCx, 'uui-picker_input-body-wrapper'], onKeyDown: onKeyDown, width: dropdownProps.togglerWidth > minBodyWidth ? dropdownProps.togglerWidth : minBodyWidth, focusLock: getSearchPosition() === 'body' },
4229
+ return (React__default.createElement(PickerBodyMobileView, { title: props.entityName, onClose: () => toggleBodyOpening(false), cx: [props.bodyCx, 'uui-picker_input-body-wrapper'], width: dropdownProps.togglerWidth > minBodyWidth ? dropdownProps.togglerWidth : minBodyWidth, focusLock: true, shards: getSearchPosition() === 'input' ? [togglerRef] : undefined, rawProps: { 'aria-modal': true } },
4104
4230
  React__default.createElement(DataPickerBody, { ...dropdownProps, ...getListProps(), showSearch: getSearchPosition() === 'body', getName: getName, value: dataSourceState, onValueChange: handleDataSourceValueChange, rows: rows, maxHeight: bodyHeight, searchSize: props.size, selectionMode: props.selectionMode, renderNotFound: props.renderNotFound, renderEmpty: props.renderEmpty, renderRow: props.renderRow, onKeyDown: onKeyDown, minCharsToSearch: props.minCharsToSearch, fixedBodyPosition: props.fixedBodyPosition, searchDebounceDelay: props.searchDebounceDelay, rawProps: props.rawProps?.body, highlightSearchMatches: props.highlightSearchMatches, flattenSearchResults: view.getConfig().flattenSearchResults }),
4105
4231
  renderFooter()));
4106
4232
  };
@@ -4108,11 +4234,11 @@ function PickerInputComponent(props, ref) {
4108
4234
  return (React__default.createElement(Dropdown, { renderTarget: (dropdownProps) => {
4109
4235
  const targetProps = getTogglerProps();
4110
4236
  return renderTarget({ ...dropdownProps, ...targetProps, renderItem });
4111
- }, renderBody: (bodyProps) => renderBody(bodyProps), value: shouldShowBody(), onValueChange: !props.isDisabled && toggleBodyOpening, placement: props.dropdownPlacement, middleware: middleware, closeBodyOnTogglerHidden: !isMobile(), portalTarget: props.portalTarget, ref: togglerRef }));
4237
+ }, renderBody: (bodyProps) => renderBody(bodyProps), value: shouldShowBody(), onValueChange: !props.isDisabled && toggleBodyOpening, placement: props.dropdownPlacement, middleware: middleware, closeBodyOnTogglerHidden: isMobile() ? false : props.closeBodyOnTogglerHidden, portalTarget: props.portalTarget, ref: togglerRef }));
4112
4238
  }
4113
4239
  const PickerInput = /* @__PURE__ */React__default.forwardRef(PickerInputComponent);
4114
4240
 
4115
- var css$A = {"row":"ioKxSN"};
4241
+ var css$A = {"row":"luGXrO"};
4116
4242
 
4117
4243
  function PickerListRow(props) {
4118
4244
  let label;
@@ -4132,7 +4258,7 @@ function PickerListRow(props) {
4132
4258
  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));
4133
4259
  }
4134
4260
 
4135
- var css$z = {"root":"bxJ1W7"};
4261
+ var css$z = {"root":"_6KhRL1"};
4136
4262
 
4137
4263
  function PickerList(props) {
4138
4264
  const { context, view, onlySelectedView, getName, getEntityName, appendLastSelected, getSelectedIdsArray, buildRowsList, getMaxDefaultItems, getModalTogglerCaption, } = usePickerList(props);
@@ -4167,7 +4293,7 @@ function PickerList(props) {
4167
4293
  }, selectedRows)));
4168
4294
  }
4169
4295
 
4170
- var css$y = {"root":"xeNBUr","wrapper":"Xg0x3n","align-widgets-top":"eHeecQ","alignWidgetsTop":"eHeecQ","align-widgets-center":"IYTmfs","alignWidgetsCenter":"IYTmfs"};
4296
+ var css$y = {"root":"ae2y-y","wrapper":"-ti4Ak","align-widgets-top":"-rtEm8","alignWidgetsTop":"-rtEm8","align-widgets-center":"sgsK4n","alignWidgetsCenter":"sgsK4n"};
4171
4297
 
4172
4298
  function DataTableCell(initialProps) {
4173
4299
  const props = { ...initialProps };
@@ -4217,7 +4343,7 @@ function DataTableCell(initialProps) {
4217
4343
  return React.createElement(DataTableCell$1, { ...props });
4218
4344
  }
4219
4345
 
4220
- var css$x = {"root":"KyIaqJ"};
4346
+ var css$x = {"root":"P3uLuH"};
4221
4347
 
4222
4348
  // Here we define a single instance of the renderCell function to make DataTableRow#shouldComponentUpdate work.
4223
4349
  // 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.
@@ -4233,7 +4359,7 @@ const DataTableRow = /* @__PURE__ */withMods(DataTableRow$1, ({ borderBottom = t
4233
4359
  ];
4234
4360
  }, () => propsMods);
4235
4361
 
4236
- var css$w = {"sorting-panel-container":"rljpiS","sortingPanelContainer":"rljpiS"};
4362
+ var css$w = {"sorting-panel-container":"JjOQqc","sortingPanelContainer":"JjOQqc"};
4237
4363
 
4238
4364
  const SortingPanelImpl = ({ sortDirection, onSort }) => {
4239
4365
  const sortAsc = useCallback(() => onSort(sortDirection === 'asc' ? undefined : 'asc'), [onSort]);
@@ -4247,13 +4373,13 @@ const SortingPanel = /* @__PURE__ */React__default.memo(SortingPanelImpl);
4247
4373
  const ColumnHeaderDropdownImpl = (props) => {
4248
4374
  const middleware = useMemo(() => [offset(1), mobilePositioning], []);
4249
4375
  const closeDropdown = useCallback(() => props.onOpenChange(false), [props.onOpenChange]);
4250
- return (React__default.createElement(Dropdown$1, { renderTarget: props.renderTarget, renderBody: (dropdownProps) => (React__default.createElement(PickerBodyMobileView, { width: 280, maxWidth: "auto", title: props.title, onClose: closeDropdown },
4376
+ return (React__default.createElement(Dropdown$1, { renderTarget: props.renderTarget, renderBody: (dropdownProps) => (React__default.createElement(PickerBodyMobileView, { width: 280, maxWidth: "auto", title: props.title, onClose: closeDropdown, rawProps: { 'aria-modal': true } },
4251
4377
  props.isSortable && React__default.createElement(SortingPanel, { sortDirection: props.sortDirection, onSort: props.onSort }),
4252
4378
  props.renderFilter(dropdownProps))), middleware: middleware, value: props.isOpen, onValueChange: props.onOpenChange }));
4253
4379
  };
4254
4380
  const ColumnHeaderDropdown = /* @__PURE__ */React__default.memo(ColumnHeaderDropdownImpl);
4255
4381
 
4256
- var css$v = {"root":"Ck-KHz","caption-wrapper":"tovuou","captionWrapper":"tovuou","sort-icon":"RIJMFS","sortIcon":"RIJMFS","dropdown-icon":"BgFxBb","dropdownIcon":"BgFxBb","infoIcon":"m9IO-U","align-right":"OvoBKt","alignRight":"OvoBKt","align-center":"Ec5nAn","alignCenter":"Ec5nAn","caption":"PYDEL8","truncate":"exm7Dv","upper-case":"HyeItf","upperCase":"HyeItf","checkbox":"aWT3wq","icon":"NvjR5G","fold-all-icon":"MWxuDp","foldAllIcon":"MWxuDp","cell-tooltip":"_5sa2Gu","cellTooltip":"_5sa2Gu","resizing-marker":"IVYqkm","resizingMarker":"IVYqkm","pinned-right":"_4NIKgX","pinnedRight":"_4NIKgX","draggable":"_1erJ0J","ghost":"tS0RWI","is-dragged-out":"fAZrIh","isDraggedOut":"fAZrIh","dnd-marker-left":"PzT1cZ","dndMarkerLeft":"PzT1cZ","dnd-marker-right":"YIoD08","dndMarkerRight":"YIoD08","cell-tooltip-wrapper":"rzGNKC","cellTooltipWrapper":"rzGNKC","cell-tooltip-text":"_3amhLs","cellTooltipText":"_3amhLs","tooltip-caption":"okkCmc","tooltipCaption":"okkCmc","tooltip-info":"Z3yhZx","tooltipInfo":"Z3yhZx"};
4382
+ var css$v = {"root":"MJLpus","caption-wrapper":"ohPeD8","captionWrapper":"ohPeD8","sort-icon":"NjdgKI","sortIcon":"NjdgKI","dropdown-icon":"kKYcNj","dropdownIcon":"kKYcNj","infoIcon":"eYFoTH","sortInActive":"p2USYh","align-right":"AXccWm","alignRight":"AXccWm","align-center":"vnka-Y","alignCenter":"vnka-Y","caption":"OjJJjN","truncate":"_7ioVNO","upper-case":"C-VAvt","upperCase":"C-VAvt","checkbox":"NGPbSU","icon":"u8z9RT","fold-all-icon":"_4KPyED","foldAllIcon":"_4KPyED","cell-tooltip":"nNwYJ5","cellTooltip":"nNwYJ5","resizing-marker":"ka--8Q","resizingMarker":"ka--8Q","pinned-right":"DQKLZt","pinnedRight":"DQKLZt","draggable":"GWeAJV","ghost":"_6glR-c","is-dragged-out":"iDM0UI","isDraggedOut":"iDM0UI","dnd-marker-left":"YfMd8a","dndMarkerLeft":"YfMd8a","dnd-marker-right":"Zc5EF3","dndMarkerRight":"Zc5EF3","cell-tooltip-wrapper":"_7x6mkx","cellTooltipWrapper":"_7x6mkx","cell-tooltip-text":"_45WssY","cellTooltipText":"_45WssY","tooltip-caption":"ryEuI8","tooltipCaption":"ryEuI8","tooltip-info":"NaiOJQ","tooltipInfo":"NaiOJQ"};
4257
4383
 
4258
4384
  class DataTableHeaderCell extends React.Component {
4259
4385
  constructor() {
@@ -4264,7 +4390,7 @@ class DataTableHeaderCell extends React.Component {
4264
4390
  this.getTooltipContent = (column) => (React.createElement("div", { className: cx$1(css$v.cellTooltipWrapper, uuiDataTableHeaderCell.uuiTableHeaderCaptionTooltip) },
4265
4391
  React.createElement(Text, { cx: [css$v.cellTooltipText, css$v.tooltipCaption] }, column.caption),
4266
4392
  column.info && (React.createElement(Text, { cx: [css$v.cellTooltipText, css$v.tooltipInfo] }, column.info))));
4267
- this.getColumnCaption = () => {
4393
+ this.getColumnCaption = (props, dropdownProps) => {
4268
4394
  const renderTooltip = this.props.column.renderTooltip || this.getTooltipContent;
4269
4395
  const captionCx = cx$1([
4270
4396
  css$v.caption,
@@ -4273,16 +4399,28 @@ class DataTableHeaderCell extends React.Component {
4273
4399
  'uui-typography-inline',
4274
4400
  this.props.size >= '48' && css$v.truncate,
4275
4401
  ]);
4402
+ const handleFilterOpen = (e) => {
4403
+ if (e.key === 'Enter' || e.key === ' ') {
4404
+ dropdownProps.onClick(e);
4405
+ e.preventDefault();
4406
+ }
4407
+ };
4408
+ const handleSort = (e) => {
4409
+ if (e.key === 'Enter' || e.key === ' ') {
4410
+ props.toggleSort(e);
4411
+ e.preventDefault();
4412
+ }
4413
+ };
4276
4414
  return (React.createElement("div", { className: cx$1(css$v.captionWrapper, css$v['align-' + this.props.column.textAlign], uuiDataTableHeaderCell.uuiTableHeaderCaptionWrapper) },
4277
- React.createElement(Tooltip, { placement: "top", color: "inverted", content: renderTooltip(this.props.column), cx: [css$v.cellTooltip, 'uui-dt-header-tooltip'], openDelay: 600 },
4415
+ React.createElement(Tooltip, { placement: "top", color: "inverted", content: renderTooltip(this.props.column), cx: [css$v.cellTooltip, 'uui-dt-header-tooltip'], openDelay: 600, closeOnMouseLeave: "boundary" },
4278
4416
  React.createElement("div", { key: "text", className: captionCx }, this.props.column.caption)),
4279
- this.props.column.isSortable && (!this.props.column.renderFilter || this.props.sortDirection) && (React.createElement(IconButton, { key: "sort", cx: cx$1(css$v.icon, css$v.sortIcon, this.props.sortDirection && css$v.sortIconActive, uuiDataTableHeaderCell.uuiTableHeaderSortIcon), color: this.props.sortDirection ? 'neutral' : 'secondary', icon: settings.dataTable.icons.header[this.props.sortDirection === 'desc' ? 'descSortIcon' : this.props.sortDirection === 'asc' ? 'ascSortIcon' : 'defaultSortIcon'] })),
4417
+ 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 })),
4280
4418
  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 })),
4281
- this.props.column.renderFilter && (React.createElement(IconButton, { key: "dropdown", cx: cx$1(css$v.icon, css$v.dropdownIcon, uuiDataTableHeaderCell.uuiTableHeaderDropdownIcon), color: "secondary", icon: settings.dataTable.icons.header[this.state.isDropdownOpen ? 'openedDropdownIcon' : 'dropdownIcon'] }))));
4419
+ 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 }))));
4282
4420
  };
4283
4421
  this.renderHeaderCheckbox = () => {
4284
4422
  if (this.props.selectAll && this.props.isFirstColumn) {
4285
- return (React.createElement(Checkbox, { size: settings.dataTable.sizes.body.checkboxMap[this.props.size], ...this.props.selectAll, cx: cx$1(css$v.checkbox, uuiDataTableHeaderCell.uuiTableHeaderCheckbox) }));
4423
+ 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) }));
4286
4424
  }
4287
4425
  };
4288
4426
  this.renderFoldAllIcon = () => {
@@ -4290,7 +4428,7 @@ class DataTableHeaderCell extends React.Component {
4290
4428
  return (React.createElement(Tooltip, { content: this.props.areAllFolded
4291
4429
  ? i18n.tables.columnHeader.expandAllTooltip
4292
4430
  : i18n.tables.columnHeader.collapseAllTooltip },
4293
- React.createElement(IconButton, { color: "secondary", 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: {
4431
+ 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: {
4294
4432
  'aria-label': this.props.areAllFolded ? 'Expand All' : 'Collapse All',
4295
4433
  'aria-expanded': !!this.props.areAllFolded,
4296
4434
  } })));
@@ -4334,7 +4472,7 @@ class DataTableHeaderCell extends React.Component {
4334
4472
  }, style: computeStyles },
4335
4473
  this.renderHeaderCheckbox(),
4336
4474
  this.renderFoldAllIcon(),
4337
- this.getColumnCaption(),
4475
+ this.getColumnCaption(props, dropdownProps),
4338
4476
  isResizable && this.renderResizingMarker(props)));
4339
4477
  };
4340
4478
  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 }));
@@ -4347,7 +4485,7 @@ class DataTableHeaderCell extends React.Component {
4347
4485
  }
4348
4486
  }
4349
4487
 
4350
- var css$u = {"root":"aL8Twq","caption-wrapper":"BhE4Li","captionWrapper":"BhE4Li","align-center":"R5SNqN","alignCenter":"R5SNqN","caption":"_5XUzaV","truncate":"VkQyIE","upper-case":"qyEjmE","upperCase":"qyEjmE","group-cell-tooltip":"kzEKJW","groupCellTooltip":"kzEKJW","group-cell-tooltip-wrapper":"fJhEde","groupCellTooltipWrapper":"fJhEde","group-cell-tooltip-text":"y8ZEYS","groupCellTooltipText":"y8ZEYS","tooltip-caption":"sqTDmB","tooltipCaption":"sqTDmB","tooltip-info":"Fkrwae","tooltipInfo":"Fkrwae"};
4488
+ var css$u = {"root":"YPhvpm","caption-wrapper":"Q-PMU3","captionWrapper":"Q-PMU3","align-center":"Qs9tDK","alignCenter":"Qs9tDK","caption":"d37ZU9","truncate":"hXklwY","upper-case":"HScr7i","upperCase":"HScr7i","group-cell-tooltip":"A05edc","groupCellTooltip":"A05edc","group-cell-tooltip-wrapper":"ii7QVL","groupCellTooltipWrapper":"ii7QVL","group-cell-tooltip-text":"-QRiXj","groupCellTooltipText":"-QRiXj","tooltip-caption":"_6SIcfa","tooltipCaption":"_6SIcfa","tooltip-info":"wR6NCW","tooltipInfo":"wR6NCW"};
4351
4489
 
4352
4490
  class DataTableHeaderGroupCell extends React.Component {
4353
4491
  constructor() {
@@ -4387,13 +4525,17 @@ class DataTableHeaderGroupCell extends React.Component {
4387
4525
  }
4388
4526
  }
4389
4527
 
4390
- var css$t = {"root":"zFwUX2"};
4528
+ var css$t = {"root":"LQ3nji"};
4391
4529
 
4392
- const DataTableHeaderRow = /* @__PURE__ */withMods(DataTableHeaderRow$1, () => [css$t.root, 'uui-dt-vars'], (mods) => ({
4393
- renderCell: (props) => (React.createElement(DataTableHeaderCell, { ...props, size: mods.size, textCase: mods.textCase || 'normal', key: props.column.key, columnsGap: mods.columnsGap })),
4394
- renderGroupCell: (props) => (React.createElement(DataTableHeaderGroupCell, { ...props, size: mods.size, textCase: mods.textCase || 'normal', key: props.key, columnsGap: mods.columnsGap })),
4395
- renderConfigButton: () => (React.createElement(IconButton, { key: "configuration", onClick: mods.onConfigButtonClick, cx: ['config-icon', `uui-size-${settings.dataTable.sizes.header.iconMap[mods.size || settings.dataTable.sizes.header.row]}`], color: "neutral", icon: settings.dataTable.icons.header.configIcon })),
4396
- }));
4530
+ const DataTableHeaderRow = /* @__PURE__ */withMods(DataTableHeaderRow$1, () => [css$t.root, 'uui-dt-vars'], (mods) => {
4531
+ return ({
4532
+ renderCell: (props) => (React.createElement(DataTableHeaderCell, { ...props, size: mods.size, textCase: mods.textCase || 'normal', key: props.column.key, columnsGap: mods.columnsGap })),
4533
+ renderGroupCell: (props) => (React.createElement(DataTableHeaderGroupCell, { ...props, size: mods.size, textCase: mods.textCase || 'normal', key: props.key, columnsGap: mods.columnsGap })),
4534
+ renderConfigButton: () => (React.createElement(ControlIcon, { key: "configuration", onClick: mods.onConfigButtonClick, size: settings.dataTable.sizes.header.iconMap[mods.size || settings.dataTable.sizes.header.row], cx: ['config-icon'], icon: settings.dataTable.icons.header.configIcon, rawProps: {
4535
+ 'aria-label': 'Configure columns',
4536
+ } })),
4537
+ });
4538
+ });
4397
4539
 
4398
4540
  const normalizeFilterWithPredicates = (filter) => {
4399
4541
  if (!filter) {
@@ -4483,7 +4625,7 @@ const UUI_FILTERS_PANEL_ITEM_TOGGLER_SELECTION = 'uui-filters-panel-item-toggler
4483
4625
  const UUI_FILTERS_PANEL_ITEM_TOGGLER_POSTFIX = 'uui-filters-panel-item-toggler-postfix';
4484
4626
  const UUI_FILTERS_PANEL_BODY_FOOTER = 'uui-filters-panel-item-footer';
4485
4627
 
4486
- var css$s = {"body":"rzzXLN","header":"IFH7Cw","title":"bfx5Tz","removeButton":"pOOiE6","with-search":"u9Wf35","withSearch":"u9Wf35"};
4628
+ var css$s = {"body":"Cgez4E","header":"O7hH4D","title":"AnrAje","removeButton":"pw1vuC","with-search":"ePEaMD","withSearch":"ePEaMD"};
4487
4629
 
4488
4630
  function FilterColumnBody(props) {
4489
4631
  const [predicate, setPredicate] = useState(getDefaultPredicate(props.predicates, props.value));
@@ -4507,7 +4649,7 @@ function FilterColumnBody(props) {
4507
4649
  return props.predicates?.length > 0 && (React__default.createElement("div", { className: css$s.header },
4508
4650
  React__default.createElement(FilterPredicatePanel, { ...panelProps })));
4509
4651
  };
4510
- return (React__default.createElement(DropdownContainer, { style: { minWidth: '360px' }, cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], ...props },
4652
+ return (React__default.createElement(DropdownContainer, { style: { minWidth: '360px' }, cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], ...props, focusLock: false, rawProps: { 'aria-modal': true } },
4511
4653
  renderHeader(),
4512
4654
  React__default.createElement(FilterItemBody, { ...props, selectedPredicate: predicate, value: getValue(predicate, props.value), onValueChange: onValueChange })));
4513
4655
  }
@@ -4544,7 +4686,7 @@ const useColumnsWithFilters = (initialColumns, filters) => {
4544
4686
  return columns;
4545
4687
  };
4546
4688
 
4547
- var css$r = {"unpin-icon":"GWvjk2","unpinIcon":"GWvjk2","pin-toggler-icon":"_2jyLnZ","pinTogglerIcon":"_2jyLnZ"};
4689
+ var css$r = {"unpin-icon":"Nxvd7H","unpinIcon":"Nxvd7H","pin-toggler-icon":"fG9JjQ","pinTogglerIcon":"fG9JjQ"};
4548
4690
 
4549
4691
  function PinIconButton(props) {
4550
4692
  const i18nLocal = i18n.tables.columnsConfigurationModal;
@@ -4595,7 +4737,7 @@ function getUnpinIcon(params) {
4595
4737
  }
4596
4738
  }
4597
4739
 
4598
- var css$q = {"row-wrapper":"_9wTmmF","rowWrapper":"_9wTmmF","pin-icon-button":"_3XFwfA","pinIconButton":"_3XFwfA","not-pinned":"Zn9VUK","notPinned":"Zn9VUK","checkbox":"d3OPjY","drag-handle":"_7-QbWp","dragHandle":"_7-QbWp","dnd-disabled":"c8MqGC","dndDisabled":"c8MqGC"};
4740
+ var css$q = {"row-wrapper":"_8NCedf","rowWrapper":"_8NCedf","pin-icon-button":"jfvmSt","pinIconButton":"jfvmSt","not-pinned":"OvTdDW","notPinned":"OvTdDW","checkbox":"KWEjLV","drag-handle":"VDUDgX","dragHandle":"VDUDgX","dnd-disabled":"dDZaOA","dndDisabled":"dDZaOA"};
4599
4741
 
4600
4742
  const ColumnRow = /* @__PURE__ */React.memo(function ColumnRow(props) {
4601
4743
  const { column } = props;
@@ -4629,7 +4771,7 @@ const ColumnRow = /* @__PURE__ */React.memo(function ColumnRow(props) {
4629
4771
  return (React.createElement(DndActor, { key: column.key, srcData: isDndAllowed && data, dstData: data, canAcceptDrop: onCanAcceptDrop, onDrop: onDrop, render: renderContent }));
4630
4772
  });
4631
4773
 
4632
- var css$p = {"root":"l7zs0-","main-panel":"wMbeYU","mainPanel":"wMbeYU","group":"vdzyBr","group-title":"tz0Ysp","groupTitle":"tz0Ysp","group-items":"VsxZVD","groupItems":"VsxZVD","no-data":"xyWtJv","noData":"xyWtJv","no-data-title":"mdTCLB","noDataTitle":"mdTCLB","no-data-sub-title":"XcLNpa","noDataSubTitle":"XcLNpa","h-divider":"T74Nj-","hDivider":"T74Nj-","search-area":"VbSpki","searchArea":"VbSpki","subgroup-accordion":"Pd2epb","subgroupAccordion":"Pd2epb","subgroup":"vwjpH9","subgroup-title":"_60zNp2","subgroupTitle":"_60zNp2"};
4774
+ var css$p = {"root":"WFAJIu","main-panel":"gnN2L8","mainPanel":"gnN2L8","group":"s7rdZG","group-title":"h7pjdp","groupTitle":"h7pjdp","group-items":"-clb9l","groupItems":"-clb9l","no-data":"sYlk8C","noData":"sYlk8C","no-data-title":"M-HUYY","noDataTitle":"M-HUYY","no-data-sub-title":"mGCD1R","noDataSubTitle":"mGCD1R","h-divider":"Pd9LlD","hDivider":"Pd9LlD","search-area":"hMbWvD","searchArea":"hMbWvD","subgroup-accordion":"N3AQr2","subgroupAccordion":"N3AQr2","subgroup":"pgdZt7","subgroup-title":"a51HcU","subgroupTitle":"a51HcU"};
4633
4775
 
4634
4776
  const renderGroupTitle = (title, amount) => (React.createElement(FlexRow, { cx: css$p.group },
4635
4777
  React.createElement(Text, { size: "none", cx: css$p.groupTitle }, title),
@@ -4732,7 +4874,7 @@ const getChildrenAndRest = (row, rows) => {
4732
4874
  return [children, rest];
4733
4875
  };
4734
4876
 
4735
- var css$o = {"listContainer":"Q-Ch6h","header":"AAgchz","group":"VxmsI7","stickyHeader":"J9Tklo"};
4877
+ var css$o = {"listContainer":"o3EBCy","header":"YjOVZ0","group":"_2CvL54","stickyHeader":"INY7eh"};
4736
4878
 
4737
4879
  function DataRowsGroup({ row, childRows, renderRow, top = 1, }) {
4738
4880
  const rowRef = useRef(undefined);
@@ -4772,7 +4914,7 @@ function DataRowsContainer({ estimatedHeight, listContainerRef, offsetY, rows, r
4772
4914
  React__default.createElement(DataRowsGroups, { rows: rows, renderRow: renderRow, top: headerRef?.current?.clientHeight }))));
4773
4915
  }
4774
4916
 
4775
- var css$n = {"root":"QyMtkZ","sticky-header":"_0UBG1u","stickyHeader":"_0UBG1u","no-results":"_6oZt0j","noResults":"_6oZt0j","icon":"AzAfuB","title":"vn2Xrj"};
4917
+ var css$n = {"root":"tjYSZ7","sticky-header":"v-kz2B","stickyHeader":"v-kz2B","no-results":"BZ2BIi","noResults":"BZ2BIi","icon":"iIx8Y7","title":"_8vR-87"};
4776
4918
 
4777
4919
  function DataTable(props) {
4778
4920
  const { uuiModals } = useUuiContext();
@@ -4821,7 +4963,7 @@ function DataTable(props) {
4821
4963
  : (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 })))));
4822
4964
  }
4823
4965
 
4824
- var css$m = {"root":"R--cjC","title-wrapper":"l-sDvY","titleWrapper":"l-sDvY","title":"jDkMWZ","text-wrapper":"huVKvh","textWrapper":"huVKvh","selection":"FmpwJ-","postfix":"FoUBhP","selected":"-S9Skk"};
4966
+ var css$m = {"root":"Jr6fN7","title-wrapper":"ZpWRnD","titleWrapper":"ZpWRnD","title":"_0ZQ5pw","text-wrapper":"clmXAV","textWrapper":"clmXAV","selection":"_7Ex0VE","postfix":"r6Jk2T","selected":"_8wnXVv"};
4825
4967
 
4826
4968
  const FilterPanelItemToggler = /* @__PURE__ */React.forwardRef((props, ref) => {
4827
4969
  const togglerPickerOpened = (e) => {
@@ -4920,7 +5062,7 @@ function FilterPickerBody({ highlightSearchMatches = true, ...restProps }) {
4920
5062
  rows,
4921
5063
  }, e);
4922
5064
  return (React.createElement(React.Fragment, null,
4923
- React.createElement(DataPickerBody, { ...getListProps(), selectionMode: props.selectionMode, rows: rows, maxHeight: maxHeight, maxWidth: maxWidth, searchSize: settings.pickerInput.sizes.body.row, showSearch: props.showSearch ?? true, getName: getName, value: dataSourceState, onValueChange: handleDataSourceValueChange, renderRow: props.renderRow, onKeyDown: onKeyDown, minCharsToSearch: props.minCharsToSearch, searchDebounceDelay: props.searchDebounceDelay, rawProps: props.rawProps?.body, highlightSearchMatches: props.highlightSearchMatches, flattenSearchResults: view.getConfig().flattenSearchResults }),
5065
+ React.createElement(DataPickerBody, { ...getListProps(), selectionMode: props.selectionMode, rows: rows, maxHeight: maxHeight, maxWidth: maxWidth, searchSize: settings.pickerInput.sizes.body.row, showSearch: props.showSearch ?? true, getName: getName, value: dataSourceState, onValueChange: handleDataSourceValueChange, renderRow: props.renderRow, onKeyDown: onKeyDown, minCharsToSearch: props.minCharsToSearch, searchDebounceDelay: props.searchDebounceDelay, rawProps: props.rawProps?.body, highlightSearchMatches: props.highlightSearchMatches, flattenSearchResults: view.getConfig().flattenSearchResults, autoFocusSearch: false }),
4924
5066
  renderFooter()));
4925
5067
  };
4926
5068
  return renderBody();
@@ -5046,7 +5188,7 @@ function FilterRangeDatePickerBody(props) {
5046
5188
  renderFooter()));
5047
5189
  }
5048
5190
 
5049
- var css$l = {"container":"BU-ui6"};
5191
+ var css$l = {"container":"JBPNQI"};
5050
5192
 
5051
5193
  function FilterNumericBody(props) {
5052
5194
  const isInRangePredicate = props?.selectedPredicate === 'inRange' || props?.selectedPredicate === 'notInRange';
@@ -5184,9 +5326,9 @@ function FiltersToolbarItemImpl(props) {
5184
5326
  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))),
5185
5327
  !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 }))));
5186
5328
  const renderBody = (dropdownProps) => {
5187
- return isPickersType ? (React__default.createElement(PickerBodyMobileView, { ...dropdownProps, cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], title: props.title, width: settings.filtersPanel.sizes.pickerBodyMinWidth, onClose: () => isOpenChange(false) },
5329
+ return isPickersType ? (React__default.createElement(PickerBodyMobileView, { ...dropdownProps, rawProps: { ...dropdownProps.arrowProps, 'aria-modal': true }, cx: [css$s.body, UUI_FILTERS_PANEL_ITEM_BODY], title: props.title, width: settings.filtersPanel.sizes.pickerBodyMinWidth, onClose: () => isOpenChange(false) },
5188
5330
  renderHeader(hideHeaderTitle),
5189
- 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 },
5331
+ 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: { ...dropdownProps.arrowProps, 'aria-modal': true } },
5190
5332
  renderHeader(hideHeaderTitle),
5191
5333
  React__default.createElement(FilterItemBody, { ...props, ...dropdownProps, selectedPredicate: predicate, value: getValue(predicate, props.value), onValueChange: onValueChange })));
5192
5334
  };
@@ -5357,7 +5499,7 @@ function FiltersToolbarImpl(props) {
5357
5499
  }
5358
5500
  const FiltersPanel = /* @__PURE__ */React__default.memo(FiltersToolbarImpl);
5359
5501
 
5360
- var css$k = {"delete-button":"xmirER","deleteButton":"xmirER","tab-button":"dzZ4kJ","tabButton":"dzZ4kJ","targetOpen":"uVDrYJ"};
5502
+ var css$k = {"delete-button":"OkvPVs","deleteButton":"OkvPVs","tab-button":"mzvBgk","tabButton":"mzvBgk","targetOpen":"Xd8-BI"};
5361
5503
 
5362
5504
  function PresetActionsDropdown(props) {
5363
5505
  const { uuiNotifications } = useUuiContext();
@@ -5433,7 +5575,7 @@ const UUI_PRESETS_PANEL_MORE_BUTTON = 'uui-presets-panel-more-button';
5433
5575
  const UUI_PRESETS_PANEL_INPUT = 'uui-presets-panel-input';
5434
5576
  const UUI_PRESETS_PANEL_PRESET = 'uui-presets-panel-preset';
5435
5577
 
5436
- var css$j = {"preset-input-cell":"X6dfIE","presetInputCell":"X6dfIE","preset-input":"KWCrrV","presetInput":"KWCrrV"};
5578
+ var css$j = {"preset-input-cell":"zBtfM-","presetInputCell":"zBtfM-","preset-input":"_8-wJJA","presetInput":"_8-wJJA"};
5437
5579
 
5438
5580
  function PresetInput(props) {
5439
5581
  const [presetCaption, setPresetCaption] = useState(props.preset?.name || '');
@@ -5460,7 +5602,7 @@ function PresetInput(props) {
5460
5602
  React__default.createElement(TextInput, { cx: css$j.presetInput, onValueChange: setPresetCaption, value: presetCaption, onCancel: cancelActionHandler, onAccept: acceptActionHandler, onBlur: newPresetOnBlurHandler, autoFocus: true, maxLength: 50, isReadonly: readonly })));
5461
5603
  }
5462
5604
 
5463
- var css$i = {"preset":"-uZkrv","activePreset":"op4Qx0"};
5605
+ var css$i = {"preset":"Cl35Fz","activePreset":"ywDM3I"};
5464
5606
 
5465
5607
  function Preset(props) {
5466
5608
  const [isRenamePreset, setIsRenamePreset] = useState(false);
@@ -5485,7 +5627,7 @@ function Preset(props) {
5485
5627
  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 }))));
5486
5628
  }
5487
5629
 
5488
- var css$h = {"divider":"_4tDRWz","dropdownDeleteIcon":"FkHpAH","presetsWrapper":"HfQbG6","addPresetContainer":"sAEbnU","dropContainer":"xcIYcQ"};
5630
+ var css$h = {"divider":"Pfwr3S","dropdownDeleteIcon":"TEqwSY","presetsWrapper":"JDdEfY","addPresetContainer":"sOjGi2","dropContainer":"FTtAnD"};
5489
5631
 
5490
5632
  function PresetsPanel(props) {
5491
5633
  const [isAddingPreset, setIsAddingPreset] = useState(false);
@@ -5534,9 +5676,9 @@ function PresetsPanel(props) {
5534
5676
  React__default.createElement(AdaptivePanel, { items: getPanelItems() }))));
5535
5677
  }
5536
5678
 
5537
- var css$g = {"root":"Bx9J8v"};
5679
+ var css$g = {"root":"vXX3DP"};
5538
5680
 
5539
- var css$f = {"root":"_2aTpmj","burger-content":"blr-tu","burgerContent":"blr-tu"};
5681
+ var css$f = {"root":"mM4fS8","burger-content":"Iip-wm","burgerContent":"Iip-wm"};
5540
5682
 
5541
5683
  var _path$3;
5542
5684
  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); }
@@ -5579,7 +5721,7 @@ var SvgNavigationArrowDownOutline = function SvgNavigationArrowDownOutline(props
5579
5721
  };
5580
5722
  var ForwardRef$2 = /*#__PURE__*/forwardRef(SvgNavigationArrowDownOutline);
5581
5723
 
5582
- var css$e = {"root":"dkpNIL","button-primary":"iuc9Ll","buttonPrimary":"iuc9Ll","button-secondary":"_6lB3hL","buttonSecondary":"_6lB3hL","hasIcon":"InEgC7","dropdown":"g8DRM9"};
5724
+ var css$e = {"root":"aoIEPm","button-primary":"Pdl-O-","buttonPrimary":"Pdl-O-","button-secondary":"irX5AT","buttonSecondary":"irX5AT","hasIcon":"MM3Rem","dropdown":"ad9kUj"};
5583
5725
 
5584
5726
  function applyBurgerButtonMods(props) {
5585
5727
  return [
@@ -5604,13 +5746,13 @@ const BurgerButton = /* @__PURE__ */React__default.forwardRef((props, ref) => {
5604
5746
  }, dropdownIcon: ForwardRef$2 }));
5605
5747
  });
5606
5748
 
5607
- var css$d = {"search-input":"na3WgR","searchInput":"na3WgR"};
5749
+ var css$d = {"search-input":"oSkSBR","searchInput":"oSkSBR"};
5608
5750
 
5609
5751
  function BurgerSearch(props) {
5610
5752
  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 }));
5611
5753
  }
5612
5754
 
5613
- var css$c = {"root":"TVwSBe","group-header":"FVN9mR","groupHeader":"FVN9mR","group-name":"q4fQD0","groupName":"q4fQD0","line":"ohInOl"};
5755
+ var css$c = {"root":"Z8MKw1","group-header":"lBb5vZ","groupHeader":"lBb5vZ","group-name":"orLD22","groupName":"orLD22","line":"EkVnP-"};
5614
5756
 
5615
5757
  function BurgerGroupHeader(props) {
5616
5758
  return (React.createElement("div", { className: cx(css$c.root, css$c.groupHeader, 'uui-burger-group-header') },
@@ -5618,7 +5760,7 @@ function BurgerGroupHeader(props) {
5618
5760
  React.createElement("span", { className: css$c.groupName }, props.caption)));
5619
5761
  }
5620
5762
 
5621
- var css$b = {"root":"W-FE93","type-primary":"C20kxK","typePrimary":"C20kxK","type-secondary":"_7QoYDY","typeSecondary":"_7QoYDY"};
5763
+ var css$b = {"root":"WSCYgO","type-primary":"izG5lJ","typePrimary":"izG5lJ","type-secondary":"gsjURf","typeSecondary":"gsjURf"};
5622
5764
 
5623
5765
  const MainMenuButton = /* @__PURE__ */React.forwardRef((props, ref) => {
5624
5766
  const { type, ...clickableProps } = props;
@@ -5646,7 +5788,7 @@ const MainMenuButton = /* @__PURE__ */React.forwardRef((props, ref) => {
5646
5788
  props.isDropdown && (React.createElement(IconContainer, { icon: ForwardRef$P, flipY: props.isOpen }))));
5647
5789
  });
5648
5790
 
5649
- var css$a = {"dropdown-body":"Sbn6kF","dropdownBody":"Sbn6kF"};
5791
+ var css$a = {"dropdown-body":"g83vaP","dropdownBody":"g83vaP"};
5650
5792
 
5651
5793
  function MainMenuDropdown(props) {
5652
5794
  const handleEscape = (e, onClose, isOpen) => {
@@ -5654,10 +5796,13 @@ function MainMenuDropdown(props) {
5654
5796
  onClose();
5655
5797
  }
5656
5798
  };
5657
- return (React__default.createElement(Dropdown$1, { renderTarget: (dropdownProps) => (React__default.createElement(MainMenuButton, { caption: props.caption, ...dropdownProps, rawProps: props.rawProps, isActive: props.isActive, isDropdown: true })), renderBody: (dropdownBodyProps) => (React__default.createElement(FocusLock, { returnFocus: true, persistentFocus: true, lockProps: {
5799
+ return (React__default.createElement(Dropdown$1, { renderTarget: (dropdownProps) => (React__default.createElement(MainMenuButton, { caption: props.caption, ...dropdownProps, rawProps: {
5800
+ 'aria-haspopup': 'menu',
5801
+ ...props.rawProps,
5802
+ }, isActive: props.isActive, isDropdown: true })), renderBody: (dropdownBodyProps) => (React__default.createElement(FocusLock, { returnFocus: true, persistentFocus: true, lockProps: {
5658
5803
  onKeyDown: (e) => handleEscape(e, dropdownBodyProps.onClose, dropdownBodyProps.isOpen),
5659
5804
  } },
5660
- React__default.createElement("div", { className: cx(css$a.dropdownBody, 'uui-main_menu-dropdown', props.cx) }, props.renderBody({ ...dropdownBodyProps })))), placement: "bottom-start" }));
5805
+ React__default.createElement("div", { className: cx(css$a.dropdownBody, 'uui-main_menu-dropdown', props.cx), role: "menu" }, props.renderBody({ ...dropdownBodyProps })))), placement: "bottom-start" }));
5661
5806
  }
5662
5807
 
5663
5808
  function applyMainMenuMods() {
@@ -5689,12 +5834,12 @@ var SvgNavigationGlobalMenuOutlineOutline = function SvgNavigationGlobalMenuOutl
5689
5834
  };
5690
5835
  var ForwardRef$1 = /*#__PURE__*/forwardRef(SvgNavigationGlobalMenuOutlineOutline);
5691
5836
 
5692
- var css$9 = {"global-menu-btn":"JslM6H","globalMenuBtn":"JslM6H","global-menu-icon":"b3HWPM","globalMenuIcon":"b3HWPM"};
5837
+ var css$9 = {"global-menu-btn":"GxtYRl","globalMenuBtn":"GxtYRl","global-menu-icon":"qI7KOq","globalMenuIcon":"qI7KOq"};
5693
5838
 
5694
5839
  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 },
5695
5840
  React.createElement(IconContainer, { size: 36, icon: ForwardRef$1, cx: css$9.globalMenuIcon }))));
5696
5841
 
5697
- var css$8 = {"container":"fizvnn","open":"ZWSL6o","folding-arrow":"QjgEVb","foldingArrow":"QjgEVb"};
5842
+ var css$8 = {"container":"PK5s5K","open":"_--CMyR","folding-arrow":"R2UeDT","foldingArrow":"R2UeDT"};
5698
5843
 
5699
5844
  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 },
5700
5845
  React.createElement(Avatar, { size: "36", img: props.avatarUrl }),
@@ -5702,15 +5847,15 @@ const MainMenuAvatar = /* @__PURE__ */React.forwardRef((props, ref) => (React.cr
5702
5847
  props.isDropdown && (React.createElement("div", null,
5703
5848
  React.createElement(IconContainer, { size: 18, icon: ForwardRef$P, flipY: props.isOpen, cx: css$8.foldingArrow }))))));
5704
5849
 
5705
- var css$7 = {"search-input":"_96ClOE","searchInput":"_96ClOE"};
5850
+ var css$7 = {"search-input":"PyAbJ7","searchInput":"PyAbJ7"};
5706
5851
 
5707
5852
  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 })) })));
5708
5853
 
5709
- var css$6 = {"container":"_6DEYCV"};
5854
+ var css$6 = {"container":"_8jcFV6"};
5710
5855
 
5711
5856
  const MainMenuIcon = /* @__PURE__ */React.forwardRef((props, ref) => (React.createElement(IconButton, { ref: ref, icon: props.icon, cx: cx$1(props.cx, css$6.container), ...props })));
5712
5857
 
5713
- var css$5 = {"root":"UD4xba"};
5858
+ var css$5 = {"root":"M7lLFI"};
5714
5859
 
5715
5860
  const Anchor = /* @__PURE__ */withMods(Anchor$1, () => [css$5.root]);
5716
5861
 
@@ -5768,7 +5913,7 @@ var SvgFileCloudUploadFill = function SvgFileCloudUploadFill(props, ref) {
5768
5913
  };
5769
5914
  var ForwardRef = /*#__PURE__*/forwardRef(SvgFileCloudUploadFill);
5770
5915
 
5771
- var css$4 = {"root":"c5ju2U","drop-start":"_114QVF","dropStart":"_114QVF","drop-over":"oSYNsy","dropOver":"oSYNsy","link":"_1mmrVv","drop-area":"_4jHpBM","dropArea":"_4jHpBM","drop-caption":"RLzs0n","dropCaption":"RLzs0n","icon-blue":"_2we0-q","iconBlue":"_2we0-q"};
5916
+ var css$4 = {"root":"sObhr8","drop-start":"_1k1E2E","dropStart":"_1k1E2E","drop-over":"_2f9qQJ","dropOver":"_2f9qQJ","link":"_4q4vVv","drop-area":"D2cItJ","dropArea":"D2cItJ","drop-caption":"UC-LWl","dropCaption":"UC-LWl","icon-blue":"ALwEj-","iconBlue":"ALwEj-"};
5772
5917
 
5773
5918
  function DropSpot(props) {
5774
5919
  const getInfoText = typeof props.infoText === 'string'
@@ -5786,7 +5931,7 @@ function DropSpot(props) {
5786
5931
  return React.createElement(DropSpot$1, { render: renderAttachmentArea, onFilesDropped: props.onUploadFiles });
5787
5932
  }
5788
5933
 
5789
- var css$3 = {"root":"_994kkB"};
5934
+ var css$3 = {"root":"cqnPz7"};
5790
5935
 
5791
5936
  const SvgCircleProgress = /* @__PURE__ */React.forwardRef((props, ref) => {
5792
5937
  const outsetRadius = props.size / 2 - 1;
@@ -5797,7 +5942,7 @@ const SvgCircleProgress = /* @__PURE__ */React.forwardRef((props, ref) => {
5797
5942
  React.createElement("circle", { strokeWidth: 1, fill: "transparent", r: outsetRadius, cx: props.size / 2, cy: props.size / 2 })));
5798
5943
  });
5799
5944
 
5800
- var css$2 = {"root":"HIioBH","file-name":"Viin8x","fileName":"Viin8x","default-color":"ctiPRC","defaultColor":"ctiPRC","doc-color":"xHfMWQ","docColor":"xHfMWQ","xls-color":"QICpHh","xlsColor":"QICpHh","pdf-color":"mvjeQS","pdfColor":"mvjeQS","movie-color":"L3qkOq","movieColor":"L3qkOq","img-color":"dFud6U","imgColor":"dFud6U","mov-color":"_8cFs4A","movColor":"_8cFs4A","error-block":"O8mFs-","errorBlock":"O8mFs-","icons-block":"-xczdV","iconsBlock":"-xczdV"};
5945
+ var css$2 = {"root":"_3cwuh-","file-name":"_6gnHvs","fileName":"_6gnHvs","default-color":"otwSV0","defaultColor":"otwSV0","doc-color":"_3DPL0n","docColor":"_3DPL0n","xls-color":"NJu6xp","xlsColor":"NJu6xp","pdf-color":"-VxYwF","pdfColor":"-VxYwF","movie-color":"Wr52xo","movieColor":"Wr52xo","img-color":"Bz5e4C","imgColor":"Bz5e4C","mov-color":"w6Twno","movColor":"w6Twno","error-block":"dfEKNZ","errorBlock":"dfEKNZ","icons-block":"NhB8mK","iconsBlock":"NhB8mK"};
5801
5946
 
5802
5947
  const FileCard = /* @__PURE__ */React.forwardRef((props, ref) => {
5803
5948
  const [isLoadingShow, setIsLoadingShow] = React.useState(true);
@@ -5879,44 +6024,45 @@ const getRecoveryMessageConfig = () => ({
5879
6024
  'connection-lost': i18n.errorHandler.recoveryMessageConfig['connection-lost'],
5880
6025
  maintenance: i18n.errorHandler.recoveryMessageConfig.maintenance,
5881
6026
  'server-overload': i18n.errorHandler.recoveryMessageConfig['server-overload'],
6027
+ 'abort-signal': { title: 'abort signal', subtitle: 'abort signal' },
5882
6028
  });
5883
6029
  const getErrorPageConfig = () => ({
5884
6030
  notFound: {
5885
- imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_404_Monochrome.svg',
5886
- mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_404_Monochrome.svg',
6031
+ imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/404.svg',
6032
+ mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/404.svg',
5887
6033
  title: i18n.errorHandler.errorPageConfig.notFound.title,
5888
6034
  subtitle: i18n.errorHandler.errorPageConfig.notFound.subtitle,
5889
6035
  },
5890
6036
  permissionDenied: {
5891
- imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_403_Monochrome.svg',
5892
- mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_403_Monochrome.svg',
6037
+ imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/403.svg',
6038
+ mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/403.svg',
5893
6039
  title: i18n.errorHandler.errorPageConfig.permissionDenied.title,
5894
6040
  subtitle: i18n.errorHandler.errorPageConfig.permissionDenied.subtitle,
5895
6041
  },
5896
6042
  serverError: {
5897
- imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_500_Monochrome.svg',
5898
- mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_500_Monochrome.svg',
6043
+ imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/500.svg',
6044
+ mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/500.svg',
5899
6045
  title: i18n.errorHandler.errorPageConfig.serverError.title,
5900
6046
  subtitle: i18n.errorHandler.errorPageConfig.serverError.subtitle,
5901
6047
  supportLink: i18n.errorHandler.supportMessage,
5902
6048
  },
5903
6049
  serviceUnavailable: {
5904
- imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_503_Monochrome.svg',
5905
- mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Error_503_Monochrome.svg',
6050
+ imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/503.svg',
6051
+ mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/503.svg',
5906
6052
  title: i18n.errorHandler.errorPageConfig.serviceUnavailable.title,
5907
6053
  subtitle: i18n.errorHandler.errorPageConfig.serviceUnavailable.subtitle,
5908
6054
  supportLink: i18n.errorHandler.supportMessage,
5909
6055
  },
5910
6056
  default: {
5911
- imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Empty_Monochrome.svg',
5912
- mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-illustrations/L_Empty_Monochrome.svg',
6057
+ imageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/Something went wrong.svg',
6058
+ mobileImageUrl: 'https://static.cdn.epam.com/uploads/690afa39a93c88c4dd13758fe1d869d5/EPM-UUI/error-pages-2025/Something went wrong.svg',
5913
6059
  title: i18n.errorHandler.errorPageConfig.default.title,
5914
6060
  subtitle: i18n.errorHandler.errorPageConfig.default.subtitle,
5915
6061
  supportLink: i18n.errorHandler.supportMessage,
5916
6062
  },
5917
6063
  });
5918
6064
 
5919
- var css$1 = {"container":"sOYAuU"};
6065
+ var css$1 = {"container":"ps4eFP"};
5920
6066
 
5921
6067
  const ErrorPage = (props) => {
5922
6068
  const isMobileScreen = isMobile();
@@ -5928,7 +6074,7 @@ const ErrorPage = (props) => {
5928
6074
  props?.supportLink && React__default.createElement("div", { className: "uui-error-support-link" }, props?.supportLink))));
5929
6075
  };
5930
6076
 
5931
- var css = {"recovery-spinner":"bhxznH","recoverySpinner":"bhxznH","recovery-message":"_9ChxuD","recoveryMessage":"_9ChxuD","modal-blocker":"mEW5sf","modalBlocker":"mEW5sf","modalFadeIn":"gG1KuR"};
6077
+ var css = {"recovery-spinner":"l2XbfG","recoverySpinner":"l2XbfG","recovery-message":"-GLWvF","recoveryMessage":"-GLWvF","modal-blocker":"W-r0eV","modalBlocker":"W-r0eV","modalFadeIn":"_5NM4ym"};
5932
6078
 
5933
6079
  function ErrorHandler(props) {
5934
6080
  const { uuiNotifications, uuiModals, uuiApi } = useUuiContext();