@databricks/design-system 1.12.10 → 1.12.11

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 (203) hide show
  1. package/dist/{DropdownMenu-e0c3fc1d.js → DropdownMenu-eb8788e5.js} +431 -84
  2. package/dist/DropdownMenu-eb8788e5.js.map +1 -0
  3. package/dist/{common-31040b66.js → common-5b60d682.js} +3 -1
  4. package/dist/common-5b60d682.js.map +1 -0
  5. package/dist/design-system/ApplyGlobalStyles/ApplyGlobalStyles.d.ts +6 -0
  6. package/dist/design-system/ApplyGlobalStyles/ApplyGlobalStyles.d.ts.map +1 -0
  7. package/dist/design-system/ApplyGlobalStyles/index.d.ts +2 -0
  8. package/dist/design-system/ApplyGlobalStyles/index.d.ts.map +1 -0
  9. package/dist/design-system/Button/Button.d.ts +3 -1
  10. package/dist/design-system/Button/Button.d.ts.map +1 -1
  11. package/dist/design-system/Button/styles.d.ts +1 -1
  12. package/dist/design-system/Button/styles.d.ts.map +1 -1
  13. package/dist/design-system/Checkbox/Checkbox.d.ts.map +1 -1
  14. package/dist/design-system/DialogCombobox/DialogComboboxContent.d.ts +2 -1
  15. package/dist/design-system/DialogCombobox/DialogComboboxContent.d.ts.map +1 -1
  16. package/dist/design-system/DialogCombobox/DialogComboboxFooter.d.ts.map +1 -1
  17. package/dist/design-system/DialogCombobox/DialogComboboxOptionControlledList.d.ts +2 -1
  18. package/dist/design-system/DialogCombobox/DialogComboboxOptionControlledList.d.ts.map +1 -1
  19. package/dist/design-system/DialogCombobox/DialogComboboxOptionList.d.ts +2 -1
  20. package/dist/design-system/DialogCombobox/DialogComboboxOptionList.d.ts.map +1 -1
  21. package/dist/design-system/DialogCombobox/DialogComboboxOptionListCheckboxItem.d.ts.map +1 -1
  22. package/dist/design-system/DialogCombobox/DialogComboboxOptionListSearch.d.ts.map +1 -1
  23. package/dist/design-system/DialogCombobox/DialogComboboxOptionListSelectItem.d.ts.map +1 -1
  24. package/dist/design-system/DialogCombobox/DialogComboboxSectionHeader.d.ts.map +1 -1
  25. package/dist/design-system/DialogCombobox/DialogComboboxSeparator.d.ts.map +1 -1
  26. package/dist/design-system/DialogCombobox/DialogComboboxTrigger.d.ts.map +1 -1
  27. package/dist/design-system/DialogCombobox/index.d.ts +2 -1
  28. package/dist/design-system/DialogCombobox/index.d.ts.map +1 -1
  29. package/dist/design-system/DialogCombobox/shared.d.ts +5 -3
  30. package/dist/design-system/DialogCombobox/shared.d.ts.map +1 -1
  31. package/dist/design-system/DropdownMenu/DropdownMenu.d.ts.map +1 -1
  32. package/dist/design-system/Empty/Empty.d.ts.map +1 -1
  33. package/dist/design-system/FormV2/index.d.ts +6 -0
  34. package/dist/design-system/FormV2/index.d.ts.map +1 -1
  35. package/dist/design-system/Header/Header.d.ts +2 -2
  36. package/dist/design-system/Header/Header.d.ts.map +1 -1
  37. package/dist/design-system/Icon/Icon.d.ts +1 -1
  38. package/dist/design-system/Icon/Icon.d.ts.map +1 -1
  39. package/dist/design-system/Icon/__generated/icons/ClockKeyIcon.d.ts +4 -0
  40. package/dist/design-system/Icon/__generated/icons/ClockKeyIcon.d.ts.map +1 -0
  41. package/dist/design-system/Icon/__generated/icons/IngestionIcon.d.ts +4 -0
  42. package/dist/design-system/Icon/__generated/icons/IngestionIcon.d.ts.map +1 -0
  43. package/dist/design-system/Icon/__generated/icons/QuestionMarkSpeechBubbleIcon.d.ts +4 -0
  44. package/dist/design-system/Icon/__generated/icons/QuestionMarkSpeechBubbleIcon.d.ts.map +1 -0
  45. package/dist/design-system/Icon/__generated/icons/index.d.ts +3 -0
  46. package/dist/design-system/Icon/__generated/icons/index.d.ts.map +1 -1
  47. package/dist/design-system/Input/Input.d.ts +1 -0
  48. package/dist/design-system/Input/Input.d.ts.map +1 -1
  49. package/dist/design-system/LegacyNotification/LegacyNotification.d.ts.map +1 -1
  50. package/dist/design-system/{Skeleton → LegacySkeleton}/LegacySkeleton.d.ts +2 -1
  51. package/dist/design-system/LegacySkeleton/LegacySkeleton.d.ts.map +1 -0
  52. package/dist/design-system/LegacySkeleton/index.d.ts +2 -0
  53. package/dist/design-system/LegacySkeleton/index.d.ts.map +1 -0
  54. package/dist/design-system/LoadingState/LoadingState.d.ts +45 -0
  55. package/dist/design-system/LoadingState/LoadingState.d.ts.map +1 -0
  56. package/dist/design-system/LoadingState/index.d.ts +2 -0
  57. package/dist/design-system/LoadingState/index.d.ts.map +1 -0
  58. package/dist/design-system/Modal/Modal.d.ts +3 -1
  59. package/dist/design-system/Modal/Modal.d.ts.map +1 -1
  60. package/dist/design-system/Select/Select.d.ts +4 -3
  61. package/dist/design-system/Select/Select.d.ts.map +1 -1
  62. package/dist/design-system/{SkeletonV2 → Skeleton}/GenericSkeleton.d.ts +5 -2
  63. package/dist/design-system/Skeleton/GenericSkeleton.d.ts.map +1 -0
  64. package/dist/design-system/{SkeletonV2 → Skeleton}/ParagraphSkeleton.d.ts +5 -2
  65. package/dist/design-system/Skeleton/ParagraphSkeleton.d.ts.map +1 -0
  66. package/dist/design-system/{SkeletonV2 → Skeleton}/TableSkeleton.d.ts +3 -2
  67. package/dist/design-system/Skeleton/TableSkeleton.d.ts.map +1 -0
  68. package/dist/design-system/Skeleton/TitleSkeleton.d.ts +15 -0
  69. package/dist/design-system/Skeleton/TitleSkeleton.d.ts.map +1 -0
  70. package/dist/design-system/Skeleton/index.d.ts +4 -1
  71. package/dist/design-system/Skeleton/index.d.ts.map +1 -1
  72. package/dist/design-system/Skeleton/utils.d.ts.map +1 -0
  73. package/dist/design-system/Spinner/Spinner.d.ts +4 -1
  74. package/dist/design-system/Spinner/Spinner.d.ts.map +1 -1
  75. package/dist/design-system/TableUI/TableCell.d.ts +1 -1
  76. package/dist/design-system/TableUI/TableCell.d.ts.map +1 -1
  77. package/dist/design-system/TableUI/TableFilterInput.d.ts.map +1 -1
  78. package/dist/design-system/TableUI/TableFilterLayout.d.ts +1 -1
  79. package/dist/design-system/TableUI/TableFilterLayout.d.ts.map +1 -1
  80. package/dist/design-system/TableUI/TableHeader.d.ts +1 -1
  81. package/dist/design-system/TableUI/TableHeader.d.ts.map +1 -1
  82. package/dist/design-system/TableUI/TableRow.d.ts +1 -1
  83. package/dist/design-system/TableUI/TableRow.d.ts.map +1 -1
  84. package/dist/design-system/TableUI/TableRowAction.d.ts +1 -1
  85. package/dist/design-system/TableUI/TableRowAction.d.ts.map +1 -1
  86. package/dist/design-system/TableUI/TableRowSelectCell.d.ts +1 -1
  87. package/dist/design-system/TableUI/TableRowSelectCell.d.ts.map +1 -1
  88. package/dist/design-system/TableUI/tableStyles.d.ts +2 -1
  89. package/dist/design-system/TableUI/tableStyles.d.ts.map +1 -1
  90. package/dist/design-system/Tabs/index.d.ts +1 -0
  91. package/dist/design-system/Tabs/index.d.ts.map +1 -1
  92. package/dist/design-system/Tooltip/InfoTooltip.d.ts +3 -2
  93. package/dist/design-system/Tooltip/InfoTooltip.d.ts.map +1 -1
  94. package/dist/design-system/Tooltip/Tooltip.d.ts +8 -0
  95. package/dist/design-system/Tooltip/Tooltip.d.ts.map +1 -1
  96. package/dist/design-system/TypeaheadCombobox/CountBadge.d.ts +7 -0
  97. package/dist/design-system/TypeaheadCombobox/CountBadge.d.ts.map +1 -0
  98. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxCheckboxItem.d.ts +11 -0
  99. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxCheckboxItem.d.ts.map +1 -0
  100. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxControls.d.ts +11 -0
  101. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxControls.d.ts.map +1 -0
  102. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxFooter.d.ts +17 -0
  103. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxFooter.d.ts.map +1 -0
  104. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxInput.d.ts +9 -0
  105. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxInput.d.ts.map +1 -0
  106. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMenu.d.ts +17 -0
  107. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMenu.d.ts.map +1 -0
  108. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMenuItem.d.ts +19 -0
  109. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMenuItem.d.ts.map +1 -0
  110. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMultiSelectInput.d.ts +16 -0
  111. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxMultiSelectInput.d.ts.map +1 -0
  112. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxRoot.d.ts +13 -0
  113. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxRoot.d.ts.map +1 -0
  114. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSectionHeader.d.ts +2 -0
  115. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSectionHeader.d.ts.map +1 -0
  116. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSelectedItem.d.ts +13 -0
  117. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSelectedItem.d.ts.map +1 -0
  118. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSeparator.d.ts +2 -0
  119. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxSeparator.d.ts.map +1 -0
  120. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxToggleButton.d.ts +12 -0
  121. package/dist/design-system/TypeaheadCombobox/TypeaheadComboboxToggleButton.d.ts.map +1 -0
  122. package/dist/design-system/TypeaheadCombobox/hooks/downshiftHookWrappers.d.ts +24 -0
  123. package/dist/design-system/TypeaheadCombobox/hooks/downshiftHookWrappers.d.ts.map +1 -0
  124. package/dist/design-system/TypeaheadCombobox/hooks/index.d.ts +3 -0
  125. package/dist/design-system/TypeaheadCombobox/hooks/index.d.ts.map +1 -0
  126. package/dist/design-system/TypeaheadCombobox/hooks/useTypeaheadComboboxContext.d.ts +2 -0
  127. package/dist/design-system/TypeaheadCombobox/hooks/useTypeaheadComboboxContext.d.ts.map +1 -0
  128. package/dist/design-system/TypeaheadCombobox/index.d.ts +13 -0
  129. package/dist/design-system/TypeaheadCombobox/index.d.ts.map +1 -0
  130. package/dist/design-system/TypeaheadCombobox/providers/TypeaheadComboboxContext.d.ts +14 -0
  131. package/dist/design-system/TypeaheadCombobox/providers/TypeaheadComboboxContext.d.ts.map +1 -0
  132. package/dist/design-system/Typography/Link.d.ts.map +1 -1
  133. package/dist/design-system/Typography/Paragraph.d.ts.map +1 -1
  134. package/dist/design-system/Typography/Text.d.ts.map +1 -1
  135. package/dist/design-system/Typography/Title.d.ts.map +1 -1
  136. package/dist/design-system/_shared_/Combobox/ClearSelectionButton.d.ts +5 -0
  137. package/dist/design-system/_shared_/Combobox/ClearSelectionButton.d.ts.map +1 -0
  138. package/dist/design-system/_shared_/Combobox/EmptyResults.d.ts +2 -0
  139. package/dist/design-system/_shared_/Combobox/EmptyResults.d.ts.map +1 -0
  140. package/dist/design-system/_shared_/Combobox/HintRow.d.ts +8 -0
  141. package/dist/design-system/_shared_/Combobox/HintRow.d.ts.map +1 -0
  142. package/dist/design-system/_shared_/Combobox/LoadingSpinner.d.ts +2 -0
  143. package/dist/design-system/_shared_/Combobox/LoadingSpinner.d.ts.map +1 -0
  144. package/dist/design-system/_shared_/Combobox/SectionHeader.d.ts +2 -0
  145. package/dist/design-system/_shared_/Combobox/SectionHeader.d.ts.map +1 -0
  146. package/dist/design-system/_shared_/Combobox/Separator.d.ts +2 -0
  147. package/dist/design-system/_shared_/Combobox/Separator.d.ts.map +1 -0
  148. package/dist/design-system/_shared_/Combobox/index.d.ts +8 -0
  149. package/dist/design-system/_shared_/Combobox/index.d.ts.map +1 -0
  150. package/dist/design-system/_shared_/Combobox/styles.d.ts +14 -0
  151. package/dist/design-system/_shared_/Combobox/styles.d.ts.map +1 -0
  152. package/dist/design-system/_shared_/index.d.ts +2 -0
  153. package/dist/design-system/_shared_/index.d.ts.map +1 -0
  154. package/dist/design-system/index.d.ts +4 -1
  155. package/dist/design-system/index.d.ts.map +1 -1
  156. package/dist/design-system/types.d.ts +3 -2
  157. package/dist/design-system/types.d.ts.map +1 -1
  158. package/dist/design-system/utils/useStableUid.d.ts +2 -0
  159. package/dist/design-system/utils/useStableUid.d.ts.map +1 -0
  160. package/dist/design-system/utils/useUniqueId.d.ts +2 -0
  161. package/dist/design-system/utils/useUniqueId.d.ts.map +1 -0
  162. package/dist/development.js +2 -1
  163. package/dist/development.js.map +1 -1
  164. package/dist/index.js +1949 -627
  165. package/dist/index.js.map +1 -1
  166. package/dist/rollup/less.d.ts +0 -1
  167. package/dist/rollup/less.d.ts.map +1 -1
  168. package/dist/test-utils/common.d.ts +2 -0
  169. package/dist/test-utils/common.d.ts.map +1 -1
  170. package/dist/test-utils/enzyme/index.d.ts +1 -1
  171. package/dist/test-utils/enzyme/index.d.ts.map +1 -1
  172. package/dist/test-utils/enzyme/selectEvent.d.ts +13 -7
  173. package/dist/test-utils/enzyme/selectEvent.d.ts.map +1 -1
  174. package/dist/test-utils/enzyme/table.d.ts +3 -3
  175. package/dist/test-utils/enzyme/table.d.ts.map +1 -1
  176. package/dist/test-utils/enzyme/utils.d.ts +1 -1
  177. package/dist/test-utils/enzyme/utils.d.ts.map +1 -1
  178. package/dist/test-utils/enzyme.js +34 -13
  179. package/dist/test-utils/enzyme.js.map +1 -1
  180. package/dist/test-utils/rtl/selectEvent.d.ts +6 -0
  181. package/dist/test-utils/rtl/selectEvent.d.ts.map +1 -1
  182. package/dist/test-utils/rtl.js +39 -16
  183. package/dist/test-utils/rtl.js.map +1 -1
  184. package/dist/theme/colorList.d.ts +32 -0
  185. package/dist/theme/colorList.d.ts.map +1 -1
  186. package/dist/theme/colors.d.ts.map +1 -1
  187. package/package.json +5 -2
  188. package/dist/DropdownMenu-e0c3fc1d.js.map +0 -1
  189. package/dist/common-31040b66.js.map +0 -1
  190. package/dist/design-system/DialogCombobox/DialogComboboxEmpty.d.ts +0 -2
  191. package/dist/design-system/DialogCombobox/DialogComboboxEmpty.d.ts.map +0 -1
  192. package/dist/design-system/DialogCombobox/DialogComboboxLoadingSpinner.d.ts +0 -2
  193. package/dist/design-system/DialogCombobox/DialogComboboxLoadingSpinner.d.ts.map +0 -1
  194. package/dist/design-system/Skeleton/LegacySkeleton.d.ts.map +0 -1
  195. package/dist/design-system/SkeletonV2/GenericSkeleton.d.ts.map +0 -1
  196. package/dist/design-system/SkeletonV2/ParagraphSkeleton.d.ts.map +0 -1
  197. package/dist/design-system/SkeletonV2/TableSkeleton.d.ts.map +0 -1
  198. package/dist/design-system/SkeletonV2/TitleSkeleton.d.ts +0 -12
  199. package/dist/design-system/SkeletonV2/TitleSkeleton.d.ts.map +0 -1
  200. package/dist/design-system/SkeletonV2/index.d.ts +0 -5
  201. package/dist/design-system/SkeletonV2/index.d.ts.map +0 -1
  202. package/dist/design-system/SkeletonV2/utils.d.ts.map +0 -1
  203. /package/dist/design-system/{SkeletonV2 → Skeleton}/utils.d.ts +0 -0
package/dist/index.js CHANGED
@@ -1,20 +1,24 @@
1
1
  import * as React from 'react';
2
- import React__default, { useRef, useMemo, forwardRef, createContext, useContext, useState, useEffect, useImperativeHandle, Children, useCallback } from 'react';
3
- import { u as useDesignSystemTheme, I as Icon, D as DesignSystemAntDConfigProvider, R as RestoreAntDDefaultClsPrefix, g as getAnimationCss, C as CloseIcon, a as ChevronRightIcon, b as useDesignSystemFlags, i as importantify, c as DU_BOIS_ENABLE_ANIMATION_CLASSNAME, d as useDesignSystemContext, T as Tooltip, e as InfoIcon, f as Input, h as CheckIcon, B as Button, j as getValidationStateColor, A as ApplyDesignSystemContextOverrides, k as Typography, s as safex, l as dropdownContentStyles, m as Title$2, n as ChevronLeftIcon, o as Root$4, p as Trigger$2, q as getDefaultStyles, r as getPrimaryStyles, t as getDisabledStyles, v as lightColorList } from './DropdownMenu-e0c3fc1d.js';
4
- export { F as ApplyDesignSystemFlags, J as CursorIcon, y as DesignSystemContext, E as DesignSystemProvider, x as DesignSystemThemeContext, z as DesignSystemThemeProvider, H as DropdownMenu, K as FaceFrownIcon, L as FaceNeutralIcon, M as FaceSmileIcon, N as NewWindowIcon, W as WithDesignSystemThemeHoc, P as __INTERNAL_DO_NOT_USE_DEDUPE__Group, O as __INTERNAL_DO_NOT_USE__Password, _ as __INTERNAL_DO_NOT_USE__TextArea, w as getButtonEmotionStyles, Q as getTypographyColor, G as useAntDConfigProviderContext } from './DropdownMenu-e0c3fc1d.js';
5
- import { jsx, Fragment, jsxs } from '@emotion/react/jsx-runtime';
6
- import { css, keyframes, ClassNames, createElement } from '@emotion/react';
7
- import { Collapse, Alert as Alert$1, AutoComplete as AutoComplete$1, Breadcrumb as Breadcrumb$1, Checkbox as Checkbox$1, DatePicker, Dropdown as Dropdown$1, Form as Form$1, Radio as Radio$1, Select as Select$1, Col as Col$1, Row as Row$1, Space as Space$1, Layout as Layout$1, notification, Popover as Popover$2, Pagination as Pagination$1, Table as Table$1, Menu as Menu$1, Modal as Modal$1, Skeleton, Button as Button$1, Switch as Switch$1, Tabs as Tabs$1, Tree as Tree$1 } from 'antd';
2
+ import React__default, { useRef, useMemo, forwardRef, createContext, useContext, useState, useEffect, useImperativeHandle, Children, useCallback, useLayoutEffect } from 'react';
3
+ import { u as useDesignSystemTheme, I as Icon, D as DesignSystemAntDConfigProvider, R as RestoreAntDDefaultClsPrefix, g as getAnimationCss, C as CloseIcon, a as ChevronRightIcon, b as useDesignSystemFlags, i as importantify, S as Spinner, c as useDesignSystemContext, T as Tooltip, d as InfoIcon, e as Input, f as CheckIcon, B as Button, h as getValidationStateColor, A as ApplyDesignSystemContextOverrides, j as Typography, s as safex, L as LoadingState, k as LoadingIcon, l as dropdownContentStyles, m as Title$2, n as AccessibleContainer, o as ChevronLeftIcon, p as DU_BOIS_ENABLE_ANIMATION_CLASSNAME, v as visuallyHidden, q as Root$4, r as Trigger$2, t as getDefaultStyles, w as getPrimaryStyles, x as getDisabledStyles, y as lightColorList } from './DropdownMenu-eb8788e5.js';
4
+ export { J as ApplyDesignSystemFlags, N as CursorIcon, F as DesignSystemContext, H as DesignSystemProvider, E as DesignSystemThemeContext, G as DesignSystemThemeProvider, M as DropdownMenu, O as FaceFrownIcon, P as FaceNeutralIcon, Q as FaceSmileIcon, Y as LoadingStateContext, U as NewWindowIcon, W as WithDesignSystemThemeHoc, X as __INTERNAL_DO_NOT_USE_DEDUPE__Group, V as __INTERNAL_DO_NOT_USE__Password, _ as __INTERNAL_DO_NOT_USE__TextArea, z as getButtonEmotionStyles, Z as getTypographyColor, K as useAntDConfigProviderContext } from './DropdownMenu-eb8788e5.js';
5
+ import { jsx, jsxs, Fragment } from '@emotion/react/jsx-runtime';
6
+ import { css, Global, keyframes, ClassNames, createElement } from '@emotion/react';
7
+ import { Collapse, Alert as Alert$1, AutoComplete as AutoComplete$1, Breadcrumb as Breadcrumb$1, Checkbox as Checkbox$1, DatePicker, Dropdown as Dropdown$1, Form as Form$1, Radio as Radio$1, Select as Select$1, Col as Col$1, Row as Row$1, Space as Space$1, Layout as Layout$1, notification, Popover as Popover$2, Skeleton, Pagination as Pagination$1, Table as Table$1, Menu as Menu$1, Modal as Modal$1, Button as Button$1, Switch as Switch$1, Tabs as Tabs$1, Tree as Tree$1 } from 'antd';
8
8
  import classnames from 'classnames';
9
9
  import * as Popover$1 from '@radix-ui/react-popover';
10
10
  import * as DialogPrimitive from '@radix-ui/react-dialog';
11
11
  import { useController } from 'react-hook-form';
12
+ import _uniqueId from 'lodash/uniqueId';
12
13
  import * as Toast from '@radix-ui/react-toast';
13
14
  import { ResizableBox } from 'react-resizable';
14
15
  import _times from 'lodash/times';
15
16
  import _random from 'lodash/random';
16
17
  import AntDIcon, { InfoCircleOutlined } from '@ant-design/icons';
17
18
  import * as Toggle from '@radix-ui/react-toggle';
19
+ import { useFloating, autoUpdate, offset, flip, shift, useMergeRefs } from '@floating-ui/react';
20
+ import { createPortal } from 'react-dom';
21
+ import { useCombobox, useMultipleSelection } from 'downshift';
18
22
  import '@radix-ui/react-dropdown-menu';
19
23
  import 'chroma-js';
20
24
  import 'lodash/isNil';
@@ -25,55 +29,6 @@ import 'lodash/isString';
25
29
  import 'lodash/mapValues';
26
30
  import '@emotion/unitless';
27
31
 
28
- /**
29
- * Used to hide text visually, but still be readable by screen-readers
30
- * and other assistive devices.
31
- *
32
- * https://www.tpgi.com/the-anatomy-of-visually-hidden/
33
- */
34
- const visuallyHidden = {
35
- '&:not(:focus):not(:active)': {
36
- clip: 'rect(0 0 0 0)',
37
- clipPath: 'inset(50%)',
38
- height: '1px',
39
- overflow: 'hidden',
40
- position: 'absolute',
41
- whiteSpace: 'nowrap',
42
- width: '1px'
43
- }
44
- };
45
-
46
- function _EMOTION_STRINGIFIED_CSS_ERROR__$l() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
47
- var _ref2$8 = process.env.NODE_ENV === "production" ? {
48
- name: "g8zzui",
49
- styles: "cursor:progress"
50
- } : {
51
- name: "4y1qki-AccessibleContainer",
52
- styles: "cursor:progress;label:AccessibleContainer;",
53
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$l
54
- };
55
- function AccessibleContainer(_ref) {
56
- let {
57
- children,
58
- label
59
- } = _ref;
60
- if (!label) {
61
- return jsx(Fragment, {
62
- children: children
63
- });
64
- }
65
- return jsxs("div", {
66
- css: _ref2$8,
67
- children: [jsx("span", {
68
- css: visuallyHidden,
69
- children: label
70
- }), jsx("div", {
71
- "aria-hidden": true,
72
- children: children
73
- })]
74
- });
75
- }
76
-
77
32
  /**
78
33
  * A helper hook that allows quick creation of theme-dependent styles.
79
34
  * Results in more compact code than using useMemo and
@@ -1249,6 +1204,53 @@ function ClockIcon(props) {
1249
1204
  });
1250
1205
  }
1251
1206
 
1207
+ function SvgClockKeyIcon(props) {
1208
+ return jsxs("svg", {
1209
+ xmlns: "http://www.w3.org/2000/svg",
1210
+ width: "1em",
1211
+ height: "1em",
1212
+ fill: "none",
1213
+ viewBox: "0 0 16 16",
1214
+ ...props,
1215
+ children: [jsx("path", {
1216
+ fill: "currentColor",
1217
+ fillRule: "evenodd",
1218
+ d: "M15.25 12.5h-4.292a3 3 0 1 0-.13 1.5H12v2h1.5v-2h1v2H16v-2.75a.75.75 0 0 0-.75-.75ZM8 11.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z",
1219
+ clipRule: "evenodd"
1220
+ }), jsx("mask", {
1221
+ id: "ClockKeyIcon_svg__a",
1222
+ width: 17,
1223
+ height: 16,
1224
+ x: -1,
1225
+ y: 0,
1226
+ maskUnits: "userSpaceOnUse",
1227
+ style: {
1228
+ maskType: 'alpha'
1229
+ },
1230
+ children: jsx("path", {
1231
+ fill: "#D9D9D9",
1232
+ d: "M0 0h16v11.131h-2.848c-1.162 0-3.207-2.794-6.438-1.808-1.84.562-2.933 3.061-2.933 3.061V16H0V0Z"
1233
+ })
1234
+ }), jsxs("g", {
1235
+ fill: "currentColor",
1236
+ mask: "url(#ClockKeyIcon_svg__a)",
1237
+ children: [jsx("path", {
1238
+ fillRule: "evenodd",
1239
+ d: "M1.5 8a6.5 6.5 0 1 1 13 0 6.5 6.5 0 0 1-13 0ZM8 0a8 8 0 1 0 0 16A8 8 0 0 0 8 0Z",
1240
+ clipRule: "evenodd"
1241
+ }), jsx("path", {
1242
+ d: "M7.25 8V4h1.5v3.69l1.78 1.78-1.06 1.06-2-2A.75.75 0 0 1 7.25 8Z"
1243
+ })]
1244
+ })]
1245
+ });
1246
+ }
1247
+ function ClockKeyIcon(props) {
1248
+ return jsx(Icon, {
1249
+ ...props,
1250
+ component: SvgClockKeyIcon
1251
+ });
1252
+ }
1253
+
1252
1254
  function SvgCloudDownloadIcon(props) {
1253
1255
  return jsxs("svg", {
1254
1256
  xmlns: "http://www.w3.org/2000/svg",
@@ -2762,6 +2764,32 @@ function InfoFillIcon(props) {
2762
2764
  });
2763
2765
  }
2764
2766
 
2767
+ function SvgIngestionIcon(props) {
2768
+ return jsxs("svg", {
2769
+ xmlns: "http://www.w3.org/2000/svg",
2770
+ width: "1em",
2771
+ height: "1em",
2772
+ fill: "none",
2773
+ viewBox: "0 0 16 16",
2774
+ ...props,
2775
+ children: [jsx("path", {
2776
+ fill: "currentColor",
2777
+ d: "M15 2.5a.75.75 0 0 0-.75-.75h-3a.75.75 0 0 0-.75.75V6H12V3.25h1.5v9.5H12V10h-1.5v3.5c0 .414.336.75.75.75h3a.75.75 0 0 0 .75-.75v-11Z"
2778
+ }), jsx("path", {
2779
+ fill: "currentColor",
2780
+ fillRule: "evenodd",
2781
+ d: "M3.75 0c1.26 0 2.322.848 2.648 2.004A2.75 2.75 0 0 1 9 4.75v2.5h3v1.5H9v2.5a2.75 2.75 0 0 1-2.602 2.746 2.751 2.751 0 1 1-3.47-3.371 2.751 2.751 0 0 1 0-5.25A2.751 2.751 0 0 1 3.75 0ZM5 2.75a1.25 1.25 0 1 0-2.5 0 1.25 1.25 0 0 0 2.5 0Zm-.428 2.625a2.756 2.756 0 0 0 1.822-1.867A1.25 1.25 0 0 1 7.5 4.75v2.5H6.396a2.756 2.756 0 0 0-1.824-1.875ZM6.396 8.75H7.5v2.5a1.25 1.25 0 0 1-1.106 1.242 2.756 2.756 0 0 0-1.822-1.867A2.756 2.756 0 0 0 6.396 8.75ZM3.75 12a1.25 1.25 0 1 1 0 2.5 1.25 1.25 0 0 1 0-2.5Zm0-5.25a1.25 1.25 0 1 0 0 2.5 1.25 1.25 0 0 0 0-2.5Z",
2782
+ clipRule: "evenodd"
2783
+ })]
2784
+ });
2785
+ }
2786
+ function IngestionIcon(props) {
2787
+ return jsx(Icon, {
2788
+ ...props,
2789
+ component: SvgIngestionIcon
2790
+ });
2791
+ }
2792
+
2765
2793
  function SvgItalicIcon(props) {
2766
2794
  return jsx("svg", {
2767
2795
  xmlns: "http://www.w3.org/2000/svg",
@@ -3025,29 +3053,6 @@ function ListIcon(props) {
3025
3053
  });
3026
3054
  }
3027
3055
 
3028
- function SvgLoadingIcon(props) {
3029
- return jsx("svg", {
3030
- xmlns: "http://www.w3.org/2000/svg",
3031
- width: "1em",
3032
- height: "1em",
3033
- fill: "none",
3034
- viewBox: "0 0 24 24",
3035
- ...props,
3036
- children: jsx("path", {
3037
- fill: "currentColor",
3038
- fillRule: "evenodd",
3039
- d: "M23.212 12a.788.788 0 0 1-.789-.788 9.57 9.57 0 0 0-.757-3.751 9.662 9.662 0 0 0-5.129-5.129 9.587 9.587 0 0 0-3.749-.755.788.788 0 0 1 0-1.577c1.513 0 2.983.296 4.365.882a11.128 11.128 0 0 1 3.562 2.403 11.157 11.157 0 0 1 3.283 7.927.785.785 0 0 1-.786.788Z",
3040
- clipRule: "evenodd"
3041
- })
3042
- });
3043
- }
3044
- function LoadingIcon(props) {
3045
- return jsx(Icon, {
3046
- ...props,
3047
- component: SvgLoadingIcon
3048
- });
3049
- }
3050
-
3051
3056
  function SvgLockFillIcon(props) {
3052
3057
  return jsx("svg", {
3053
3058
  xmlns: "http://www.w3.org/2000/svg",
@@ -3946,6 +3951,34 @@ function QuestionMarkIcon(props) {
3946
3951
  });
3947
3952
  }
3948
3953
 
3954
+ function SvgQuestionMarkSpeechBubbleIcon(props) {
3955
+ return jsxs("svg", {
3956
+ xmlns: "http://www.w3.org/2000/svg",
3957
+ width: "1em",
3958
+ height: "1em",
3959
+ fill: "none",
3960
+ viewBox: "0 0 18 18",
3961
+ ...props,
3962
+ children: [jsx("path", {
3963
+ fill: "currentColor",
3964
+ fillRule: "evenodd",
3965
+ d: "M9 3.5a5.5 5.5 0 0 0-3.89 9.39.75.75 0 0 1 0 1.06l-.55.55h3.916a.75.75 0 0 1 .18-.01A5.5 5.5 0 1 0 9 3.5Zm-.295 12.494a7 7 0 1 0-5.157-2.603L2.22 14.72A.75.75 0 0 0 2.75 16h5.86a.762.762 0 0 0 .095-.006Z",
3966
+ clipRule: "evenodd"
3967
+ }), jsx("path", {
3968
+ fill: "currentColor",
3969
+ fillRule: "evenodd",
3970
+ d: "M11.079 8.111A2.25 2.25 0 1 0 6.75 7.25h1.5A.75.75 0 1 1 9 8a.75.75 0 0 0-.75.75V10h1.5v-.629a2.249 2.249 0 0 0 1.329-1.26ZM9 12.5A.75.75 0 1 1 9 11a.75.75 0 0 1 0 1.5Z",
3971
+ clipRule: "evenodd"
3972
+ })]
3973
+ });
3974
+ }
3975
+ function QuestionMarkSpeechBubbleIcon(props) {
3976
+ return jsx(Icon, {
3977
+ ...props,
3978
+ component: SvgQuestionMarkSpeechBubbleIcon
3979
+ });
3980
+ }
3981
+
3949
3982
  function SvgReaderModeIcon(props) {
3950
3983
  return jsxs("svg", {
3951
3984
  xmlns: "http://www.w3.org/2000/svg",
@@ -5716,6 +5749,23 @@ const getAlertEmotionStyles = (clsPrefix, theme, props) => {
5716
5749
  return /*#__PURE__*/css(styles, process.env.NODE_ENV === "production" ? "" : ";label:getAlertEmotionStyles;");
5717
5750
  };
5718
5751
 
5752
+ const getGlobalStyles = theme => {
5753
+ return /*#__PURE__*/css({
5754
+ 'body, .mfe-root': {
5755
+ backgroundColor: theme.colors.backgroundPrimary,
5756
+ color: theme.colors.textPrimary
5757
+ }
5758
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getGlobalStyles;");
5759
+ };
5760
+ const ApplyGlobalStyles = () => {
5761
+ const {
5762
+ theme
5763
+ } = useDesignSystemTheme();
5764
+ return jsx(Global, {
5765
+ styles: getGlobalStyles(theme)
5766
+ });
5767
+ };
5768
+
5719
5769
  const AutoComplete = /* #__PURE__ */(() => {
5720
5770
  const AutoComplete = _ref => {
5721
5771
  let {
@@ -5824,6 +5874,11 @@ function getCheckboxEmotionStyles(clsPrefix, theme) {
5824
5874
  [classInner]: {
5825
5875
  borderColor: theme.colors.actionDefaultBorderDefault
5826
5876
  },
5877
+ // Style wrapper span added by Antd
5878
+ [`&> span:not(.${clsPrefix})`]: {
5879
+ display: 'inline-flex',
5880
+ alignItems: 'center'
5881
+ },
5827
5882
  // Layout styling
5828
5883
  [`&${classContainer}`]: {
5829
5884
  display: 'flex',
@@ -6405,7 +6460,33 @@ const DialogComboboxButtonContainer = _ref => {
6405
6460
  });
6406
6461
  };
6407
6462
 
6408
- const DialogComboboxEmpty = () => {
6463
+ const getButtonStyles = theme => {
6464
+ return /*#__PURE__*/css({
6465
+ color: theme.colors.textPlaceholder,
6466
+ fontSize: theme.typography.fontSizeSm,
6467
+ marginLeft: theme.spacing.xs,
6468
+ ':hover': {
6469
+ color: theme.colors.actionTertiaryTextHover
6470
+ }
6471
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getButtonStyles;");
6472
+ };
6473
+ const ClearSelectionButton = _ref => {
6474
+ let {
6475
+ ...restProps
6476
+ } = _ref;
6477
+ const {
6478
+ theme
6479
+ } = useDesignSystemTheme();
6480
+ return jsx(XCircleFillIcon, {
6481
+ "aria-hidden": "false",
6482
+ css: getButtonStyles(theme),
6483
+ role: "button",
6484
+ "aria-label": "Clear selection",
6485
+ ...restProps
6486
+ });
6487
+ };
6488
+
6489
+ const EmptyResults = () => {
6409
6490
  const {
6410
6491
  theme
6411
6492
  } = useDesignSystemTheme();
@@ -6420,69 +6501,32 @@ const DialogComboboxEmpty = () => {
6420
6501
  padding: '6px 12px',
6421
6502
  width: '100%',
6422
6503
  boxSizing: 'border-box'
6423
- }, process.env.NODE_ENV === "production" ? "" : ";label:DialogComboboxEmpty;"),
6504
+ }, process.env.NODE_ENV === "production" ? "" : ";label:EmptyResults;"),
6424
6505
  children: emptyText !== undefined ? emptyText : 'No results found'
6425
6506
  });
6426
6507
  };
6427
6508
 
6428
- const rotate = keyframes({
6429
- '0%': {
6430
- transform: 'rotate(0deg) translate3d(0, 0, 0)'
6431
- },
6432
- '100%': {
6433
- transform: 'rotate(360deg) translate3d(0, 0, 0)'
6434
- }
6435
- });
6436
- const cssSpinner = function (theme) {
6437
- let frameRate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 60;
6438
- let delay = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 0;
6439
- const styles = {
6440
- animation: `${rotate} 1s steps(${frameRate}, end) infinite`,
6441
- color: theme.colors.textSecondary,
6442
- animationDelay: `${delay}s`,
6443
- '@media only percy': {
6444
- animation: 'none'
6445
- }
6446
- };
6447
- return /*#__PURE__*/css(importantify(styles), process.env.NODE_ENV === "production" ? "" : ";label:cssSpinner;");
6448
- };
6449
- const Spinner = _ref => {
6509
+ const HintRow = _ref => {
6450
6510
  let {
6451
- frameRate,
6452
- size = 'default',
6453
- delay,
6454
- className: propClass,
6455
- label,
6456
- ...props
6511
+ disabled,
6512
+ children
6457
6513
  } = _ref;
6458
6514
  const {
6459
- classNamePrefix,
6460
6515
  theme
6461
6516
  } = useDesignSystemTheme();
6462
-
6463
- // We use Antd classes to keep styling unchanged
6464
- // TODO(FEINF-1407): We want to move away from Antd classes and use Emotion for styling in the future
6465
- const sizeSuffix = size === 'small' ? '-sm' : size === 'large' ? '-lg' : '';
6466
- const sizeClass = sizeSuffix ? `${classNamePrefix}-spin${sizeSuffix}` : '';
6467
- const wrapperClass = `${propClass || ''} ${classNamePrefix}-spin ${sizeClass} ${classNamePrefix}-spin-spinning ${DU_BOIS_ENABLE_ANIMATION_CLASSNAME}`.trim();
6468
- const className = `${classNamePrefix}-spin-dot ${DU_BOIS_ENABLE_ANIMATION_CLASSNAME}`.trim();
6469
- return (
6470
- // className has to follow {...props}, otherwise is `css` prop is passed down it will overwrite our className
6471
- jsx("div", {
6472
- ...props,
6473
- className: wrapperClass,
6474
- children: jsx(AccessibleContainer, {
6475
- label: label,
6476
- children: jsx(LoadingIcon, {
6477
- css: cssSpinner(theme, frameRate, delay),
6478
- className: className
6479
- })
6517
+ return jsx("div", {
6518
+ css: /*#__PURE__*/css({
6519
+ color: theme.colors.textSecondary,
6520
+ fontSize: theme.typography.fontSizeSm,
6521
+ ...(disabled && {
6522
+ color: theme.colors.actionDisabledText
6480
6523
  })
6481
- })
6482
- );
6524
+ }, process.env.NODE_ENV === "production" ? "" : ";label:HintRow;"),
6525
+ children: children
6526
+ });
6483
6527
  };
6484
6528
 
6485
- const DialogComboboxLoadingSpinner = props => {
6529
+ const LoadingSpinner = props => {
6486
6530
  const {
6487
6531
  theme
6488
6532
  } = useDesignSystemTheme();
@@ -6497,13 +6541,53 @@ const DialogComboboxLoadingSpinner = props => {
6497
6541
  '> span': {
6498
6542
  fontSize: 20
6499
6543
  }
6500
- }, process.env.NODE_ENV === "production" ? "" : ";label:DialogComboboxLoadingSpinner;"),
6544
+ }, process.env.NODE_ENV === "production" ? "" : ";label:LoadingSpinner;"),
6501
6545
  ...props
6502
6546
  });
6503
6547
  };
6504
6548
 
6505
- function _EMOTION_STRINGIFIED_CSS_ERROR__$k() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
6506
- const getContentWrapperStyles = (theme, _ref) => {
6549
+ const SectionHeader = _ref => {
6550
+ let {
6551
+ children,
6552
+ ...props
6553
+ } = _ref;
6554
+ const {
6555
+ theme
6556
+ } = useDesignSystemTheme();
6557
+ return jsx("div", {
6558
+ ...props,
6559
+ css: /*#__PURE__*/css({
6560
+ display: 'flex',
6561
+ flexDirection: 'row',
6562
+ alignItems: 'flex-start',
6563
+ padding: `${theme.spacing.xs}px ${theme.spacing.lg / 2}px`,
6564
+ alignSelf: 'stretch',
6565
+ fontWeight: 400,
6566
+ color: theme.colors.textSecondary
6567
+ }, process.env.NODE_ENV === "production" ? "" : ";label:SectionHeader;"),
6568
+ children: children
6569
+ });
6570
+ };
6571
+
6572
+ const Separator = props => {
6573
+ const {
6574
+ theme
6575
+ } = useDesignSystemTheme();
6576
+ return jsx("div", {
6577
+ ...props,
6578
+ css: /*#__PURE__*/css({
6579
+ display: 'flex',
6580
+ flexDirection: 'row',
6581
+ alignItems: 'center',
6582
+ margin: `${theme.spacing.xs}px ${theme.spacing.lg / 2}px`,
6583
+ border: `1px solid ${theme.colors.borderDecorative}`,
6584
+ borderBottom: 0,
6585
+ alignSelf: 'stretch'
6586
+ }, process.env.NODE_ENV === "production" ? "" : ";label:Separator;")
6587
+ });
6588
+ };
6589
+
6590
+ const getComboboxContentWrapperStyles = (theme, _ref) => {
6507
6591
  let {
6508
6592
  maxHeight = '100vh',
6509
6593
  maxWidth = '100vw',
@@ -6527,22 +6611,98 @@ const getContentWrapperStyles = (theme, _ref) => {
6527
6611
  boxSizing: 'border-box',
6528
6612
  border: `1px solid ${theme.colors.border}`,
6529
6613
  boxShadow: theme.general.shadowLow,
6530
- borderRadius: 4,
6614
+ borderRadius: theme.general.borderRadiusBase,
6531
6615
  colorScheme: theme.isDarkMode ? 'dark' : 'light'
6532
- }, process.env.NODE_ENV === "production" ? "" : ";label:getContentWrapperStyles;");
6616
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getComboboxContentWrapperStyles;");
6533
6617
  };
6534
- var _ref3$5 = process.env.NODE_ENV === "production" ? {
6535
- name: "1ij1o5n",
6536
- styles: "display:flex;flex-direction:column;align-items:flex-start;justify-content:center"
6537
- } : {
6538
- name: "189loa6-DialogComboboxContent",
6539
- styles: "display:flex;flex-direction:column;align-items:flex-start;justify-content:center;label:DialogComboboxContent;",
6540
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$k
6618
+ const getComboboxOptionItemWrapperStyles = theme => {
6619
+ return /*#__PURE__*/css(importantify({
6620
+ display: 'flex',
6621
+ flexDirection: 'row',
6622
+ alignItems: 'flex-start',
6623
+ justifyContent: 'flex-start',
6624
+ alignSelf: 'stretch',
6625
+ padding: '6px 32px 6px 12px',
6626
+ lineHeight: theme.typography.lineHeightBase,
6627
+ boxSizing: 'content-box',
6628
+ cursor: 'pointer',
6629
+ userSelect: 'none',
6630
+ '&:hover, &[data-highlighted="true"]': {
6631
+ background: theme.colors.actionTertiaryBackgroundHover
6632
+ },
6633
+ '&:focus': {
6634
+ background: theme.colors.actionTertiaryBackgroundHover,
6635
+ outline: 'none'
6636
+ },
6637
+ '&[disabled]': {
6638
+ pointerEvents: 'none',
6639
+ color: theme.colors.actionDisabledText,
6640
+ background: theme.colors.backgroundPrimary
6641
+ }
6642
+ }), process.env.NODE_ENV === "production" ? "" : ";label:getComboboxOptionItemWrapperStyles;");
6541
6643
  };
6542
- const DialogComboboxContent = /*#__PURE__*/forwardRef((_ref2, forwardedRef) => {
6543
- let {
6544
- children,
6545
- loading,
6644
+ const getInfoIconStyles = theme => {
6645
+ return /*#__PURE__*/css({
6646
+ paddingLeft: theme.spacing.xs,
6647
+ color: theme.colors.textSecondary,
6648
+ pointerEvents: 'all',
6649
+ cursor: 'pointer',
6650
+ verticalAlign: 'middle'
6651
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getInfoIconStyles;");
6652
+ };
6653
+ const getCheckboxStyles = (theme, textOverflowMode) => {
6654
+ return /*#__PURE__*/css({
6655
+ pointerEvents: 'none',
6656
+ height: 'unset',
6657
+ width: '100%',
6658
+ '& > label': {
6659
+ display: 'flex',
6660
+ width: '100%',
6661
+ fontSize: theme.typography.fontSizeBase,
6662
+ fontStyle: 'normal',
6663
+ fontWeight: 400,
6664
+ cursor: 'pointer',
6665
+ '& > span:first-of-type': {
6666
+ alignSelf: 'flex-start',
6667
+ marginTop: theme.spacing.xs / 2
6668
+ },
6669
+ '& > span:last-of-type': {
6670
+ paddingRight: 0,
6671
+ width: '100%',
6672
+ overflow: 'hidden',
6673
+ wordBreak: 'break-word',
6674
+ ...(textOverflowMode === 'ellipsis' ? {
6675
+ textOverflow: 'ellipsis',
6676
+ whiteSpace: 'nowrap'
6677
+ } : {})
6678
+ }
6679
+ }
6680
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getCheckboxStyles;");
6681
+ };
6682
+ const getFooterStyles = theme => {
6683
+ return /*#__PURE__*/css({
6684
+ width: '100%',
6685
+ background: theme.colors.backgroundPrimary,
6686
+ padding: `${theme.spacing.sm}px ${theme.spacing.lg / 2}px ${theme.spacing.sm}px ${theme.spacing.lg / 2}px`,
6687
+ position: 'sticky',
6688
+ bottom: 0
6689
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getFooterStyles;");
6690
+ };
6691
+
6692
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$s() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
6693
+ var _ref2$e = process.env.NODE_ENV === "production" ? {
6694
+ name: "1ij1o5n",
6695
+ styles: "display:flex;flex-direction:column;align-items:flex-start;justify-content:center"
6696
+ } : {
6697
+ name: "189loa6-DialogComboboxContent",
6698
+ styles: "display:flex;flex-direction:column;align-items:flex-start;justify-content:center;label:DialogComboboxContent;",
6699
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$s
6700
+ };
6701
+ const DialogComboboxContent = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
6702
+ let {
6703
+ children,
6704
+ loading,
6705
+ loadingDescription = 'DialogComboboxContent',
6546
6706
  matchTriggerWidth,
6547
6707
  textOverflowMode,
6548
6708
  maxHeight = 'var(--radix-popover-content-available-height)',
@@ -6554,7 +6714,7 @@ const DialogComboboxContent = /*#__PURE__*/forwardRef((_ref2, forwardedRef) => {
6554
6714
  side = 'bottom',
6555
6715
  sideOffset = 4,
6556
6716
  ...restProps
6557
- } = _ref2;
6717
+ } = _ref;
6558
6718
  const {
6559
6719
  theme
6560
6720
  } = useDesignSystemTheme();
@@ -6618,7 +6778,7 @@ const DialogComboboxContent = /*#__PURE__*/forwardRef((_ref2, forwardedRef) => {
6618
6778
  "aria-busy": loading,
6619
6779
  role: "listbox",
6620
6780
  "aria-multiselectable": multiSelect,
6621
- css: getContentWrapperStyles(theme, {
6781
+ css: getComboboxContentWrapperStyles(theme, {
6622
6782
  maxHeight,
6623
6783
  maxWidth,
6624
6784
  minHeight,
@@ -6631,11 +6791,12 @@ const DialogComboboxContent = /*#__PURE__*/forwardRef((_ref2, forwardedRef) => {
6631
6791
  ...restProps,
6632
6792
  ref: contentRef,
6633
6793
  children: jsx("div", {
6634
- css: _ref3$5,
6635
- children: loading ? jsx(DialogComboboxLoadingSpinner, {
6794
+ css: _ref2$e,
6795
+ children: loading ? jsx(LoadingSpinner, {
6636
6796
  "aria-label": "Loading",
6637
- alt: "Loading spinner"
6638
- }) : children ? children : jsx(DialogComboboxEmpty, {})
6797
+ alt: "Loading spinner",
6798
+ loadingDescription: loadingDescription
6799
+ }) : children ? children : jsx(EmptyResults, {})
6639
6800
  })
6640
6801
  })
6641
6802
  });
@@ -6670,15 +6831,6 @@ const DialogComboboxCountBadge = props => {
6670
6831
  });
6671
6832
  };
6672
6833
 
6673
- const getFooterStyles = theme => {
6674
- return /*#__PURE__*/css({
6675
- width: '100%',
6676
- background: theme.colors.backgroundPrimary,
6677
- padding: `${theme.spacing.sm}px ${theme.spacing.lg / 2}px ${theme.spacing.sm}px ${theme.spacing.lg / 2}px`,
6678
- position: 'sticky',
6679
- bottom: 0
6680
- }, process.env.NODE_ENV === "production" ? "" : ";label:getFooterStyles;");
6681
- };
6682
6834
  const DialogComboboxFooter = _ref => {
6683
6835
  let {
6684
6836
  children,
@@ -6735,109 +6887,6 @@ const DialogComboboxOptionListContextProvider = _ref => {
6735
6887
  });
6736
6888
  };
6737
6889
 
6738
- function _EMOTION_STRINGIFIED_CSS_ERROR__$j() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
6739
- var _ref2$7 = process.env.NODE_ENV === "production" ? {
6740
- name: "1pgv7dg",
6741
- styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%"
6742
- } : {
6743
- name: "1dtf9pj-DialogComboboxOptionList",
6744
- styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%;label:DialogComboboxOptionList;",
6745
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
6746
- };
6747
- const DialogComboboxOptionList = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
6748
- let {
6749
- children,
6750
- loading,
6751
- withProgressiveLoading,
6752
- ...restProps
6753
- } = _ref;
6754
- const {
6755
- isInsideDialogCombobox
6756
- } = useDialogComboboxContext();
6757
- const ref = useRef(null);
6758
- useImperativeHandle(forwardedRef, () => ref.current);
6759
- const [lookAhead, setLookAhead] = useState('');
6760
- if (!isInsideDialogCombobox) {
6761
- throw new Error('`DialogComboboxOptionList` must be used within `DialogCombobox`');
6762
- }
6763
- const lookAheadTimeout = useRef(null);
6764
- useEffect(() => {
6765
- if (lookAheadTimeout.current) {
6766
- clearTimeout(lookAheadTimeout.current);
6767
- }
6768
- lookAheadTimeout.current = setTimeout(() => {
6769
- setLookAhead('');
6770
- }, 1500);
6771
- return () => {
6772
- if (lookAheadTimeout.current) {
6773
- clearTimeout(lookAheadTimeout.current);
6774
- }
6775
- };
6776
- }, [lookAhead]);
6777
- useEffect(() => {
6778
- var _ref$current;
6779
- if (loading && !withProgressiveLoading) {
6780
- return;
6781
- }
6782
- const optionItems = (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.querySelectorAll('[role="option"]');
6783
- const hasTabIndexedOption = Array.from(optionItems !== null && optionItems !== void 0 ? optionItems : []).some(optionItem => {
6784
- return optionItem.getAttribute('tabindex') === '0';
6785
- });
6786
- if (!hasTabIndexedOption) {
6787
- const firstOptionItem = optionItems === null || optionItems === void 0 ? void 0 : optionItems[0];
6788
- if (firstOptionItem) {
6789
- firstOptionItem.setAttribute('tabindex', '0');
6790
- }
6791
- }
6792
- }, [loading, withProgressiveLoading]);
6793
- return jsx("div", {
6794
- ref: ref,
6795
- "aria-busy": loading,
6796
- css: _ref2$7,
6797
- ...restProps,
6798
- children: jsx(DialogComboboxOptionListContextProvider, {
6799
- value: {
6800
- isInsideDialogComboboxOptionList: true,
6801
- lookAhead,
6802
- setLookAhead
6803
- },
6804
- children: loading ? withProgressiveLoading ? jsxs(Fragment, {
6805
- children: [children, jsx(DialogComboboxLoadingSpinner, {
6806
- "aria-label": "Loading",
6807
- alt: "Loading spinner"
6808
- })]
6809
- }) : jsx(DialogComboboxLoadingSpinner, {
6810
- "aria-label": "Loading",
6811
- alt: "Loading spinner"
6812
- }) : children && Children.toArray(children).some(child => /*#__PURE__*/React__default.isValidElement(child)) ? children : jsx(DialogComboboxEmpty, {})
6813
- })
6814
- });
6815
- });
6816
-
6817
- const InfoTooltip = _ref => {
6818
- let {
6819
- title,
6820
- tooltipProps
6821
- } = _ref;
6822
- const {
6823
- theme
6824
- } = useDesignSystemTheme();
6825
- return jsx(Tooltip, {
6826
- title: title,
6827
- ...tooltipProps,
6828
- children: jsx(InfoCircleOutlined, {
6829
- css: /*#__PURE__*/css({
6830
- fontSize: theme.typography.fontSizeSm,
6831
- color: theme.colors.textSecondary
6832
- }, process.env.NODE_ENV === "production" ? "" : ";label:InfoTooltip;")
6833
- })
6834
- });
6835
- };
6836
-
6837
- const useDialogComboboxOptionListContext = () => {
6838
- return useContext(DialogComboboxOptionListContext);
6839
- };
6840
-
6841
6890
  const getDialogComboboxOptionLabelWidth = (theme, width) => {
6842
6891
  const paddingLeft = theme.spacing.xs + theme.spacing.sm;
6843
6892
  const iconWidth = theme.spacing.md;
@@ -6847,39 +6896,6 @@ const getDialogComboboxOptionLabelWidth = (theme, width) => {
6847
6896
  }
6848
6897
  return width - paddingLeft + iconWidth + labelMarginLeft;
6849
6898
  };
6850
- const getDialogComboboxOptionItemWrapperStyles = theme => {
6851
- return /*#__PURE__*/css(importantify({
6852
- display: 'flex',
6853
- flexDirection: 'row',
6854
- alignItems: 'flex-start',
6855
- justifyContent: 'flex-start',
6856
- alignSelf: 'stretch',
6857
- padding: '6px 32px 6px 12px',
6858
- lineHeight: theme.typography.lineHeightBase,
6859
- boxSizing: 'content-box',
6860
- cursor: 'pointer',
6861
- userSelect: 'none',
6862
- '&:hover': {
6863
- background: theme.colors.actionTertiaryBackgroundHover
6864
- },
6865
- '&:focus': {
6866
- background: theme.colors.actionTertiaryBackgroundHover,
6867
- outline: 'none'
6868
- },
6869
- '&[disabled]': {
6870
- pointerEvents: 'none',
6871
- color: theme.colors.actionDisabledText,
6872
- background: theme.colors.backgroundPrimary
6873
- }
6874
- }), process.env.NODE_ENV === "production" ? "" : ";label:getDialogComboboxOptionItemWrapperStyles;");
6875
- };
6876
- const infoIconStyles = theme => ({
6877
- paddingLeft: theme.spacing.xs,
6878
- color: theme.colors.textSecondary,
6879
- pointerEvents: 'all',
6880
- cursor: 'pointer',
6881
- verticalAlign: 'middle'
6882
- });
6883
6899
  function findClosestOptionSibling(element, direction) {
6884
6900
  const nextSibling = direction === 'previous' ? element.previousElementSibling : element.nextElementSibling;
6885
6901
  if ((nextSibling === null || nextSibling === void 0 ? void 0 : nextSibling.getAttribute('role')) === 'option') {
@@ -6893,6 +6909,31 @@ function findClosestOptionSibling(element, direction) {
6893
6909
  }
6894
6910
  return null;
6895
6911
  }
6912
+ const highlightOption = function (currentSelection, prevSelection) {
6913
+ var _currentSelection$scr;
6914
+ let focus = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
6915
+ if (prevSelection) {
6916
+ prevSelection.setAttribute('tabIndex', '-1');
6917
+ prevSelection.setAttribute('data-highlighted', 'false');
6918
+ }
6919
+ if (focus) {
6920
+ currentSelection.focus();
6921
+ }
6922
+ currentSelection.setAttribute('tabIndex', '0');
6923
+ currentSelection.setAttribute('data-highlighted', 'true');
6924
+ (_currentSelection$scr = currentSelection.scrollIntoView) === null || _currentSelection$scr === void 0 ? void 0 : _currentSelection$scr.call(currentSelection, {
6925
+ block: 'center'
6926
+ });
6927
+ };
6928
+ const findHighlightedOption = options => {
6929
+ var _options$find;
6930
+ return (_options$find = options.find(option => option.getAttribute('data-highlighted') === 'true')) !== null && _options$find !== void 0 ? _options$find : undefined;
6931
+ };
6932
+ const getContentOptions = element => {
6933
+ var _element$closest;
6934
+ const options = (_element$closest = element.closest('[data-combobox-option-list="true"]')) === null || _element$closest === void 0 ? void 0 : _element$closest.querySelectorAll('[role="option"]');
6935
+ return options ? Array.from(options) : undefined;
6936
+ };
6896
6937
  const getKeyboardNavigationFunctions = (handleSelect, _ref) => {
6897
6938
  let {
6898
6939
  onKeyDown,
@@ -6907,18 +6948,26 @@ const getKeyboardNavigationFunctions = (handleSelect, _ref) => {
6907
6948
  e.preventDefault();
6908
6949
  const nextSibling = findClosestOptionSibling(e.currentTarget, 'next');
6909
6950
  if (nextSibling) {
6910
- e.currentTarget.setAttribute('tabIndex', '-1');
6911
- nextSibling.focus();
6912
- nextSibling.setAttribute('tabIndex', '0');
6951
+ highlightOption(nextSibling, e.currentTarget);
6952
+ } else {
6953
+ var _getContentOptions;
6954
+ const firstOption = (_getContentOptions = getContentOptions(e.currentTarget)) === null || _getContentOptions === void 0 ? void 0 : _getContentOptions[0];
6955
+ if (firstOption) {
6956
+ highlightOption(firstOption, e.currentTarget);
6957
+ }
6913
6958
  }
6914
6959
  break;
6915
6960
  case 'ArrowUp':
6916
6961
  e.preventDefault();
6917
6962
  const previousSibling = findClosestOptionSibling(e.currentTarget, 'previous');
6918
6963
  if (previousSibling) {
6919
- e.currentTarget.setAttribute('tabIndex', '-1');
6920
- previousSibling.focus();
6921
- previousSibling.setAttribute('tabIndex', '0');
6964
+ highlightOption(previousSibling, e.currentTarget);
6965
+ } else {
6966
+ var _getContentOptions2;
6967
+ const lastOption = (_getContentOptions2 = getContentOptions(e.currentTarget)) === null || _getContentOptions2 === void 0 ? void 0 : _getContentOptions2.slice(-1)[0];
6968
+ if (lastOption) {
6969
+ highlightOption(lastOption, e.currentTarget);
6970
+ }
6922
6971
  }
6923
6972
  break;
6924
6973
  case 'Enter':
@@ -6967,50 +7016,174 @@ const dialogComboboxLookAheadKeyDown = (e, setLookAhead, lookAhead) => {
6967
7016
  }
6968
7017
  };
6969
7018
 
6970
- function _EMOTION_STRINGIFIED_CSS_ERROR__$i() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
6971
- var _ref2$6 = process.env.NODE_ENV === "production" ? {
6972
- name: "zjik7",
6973
- styles: "display:flex"
7019
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$r() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7020
+ var _ref2$d = process.env.NODE_ENV === "production" ? {
7021
+ name: "1pgv7dg",
7022
+ styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%"
6974
7023
  } : {
6975
- name: "tiu4as-content",
6976
- styles: "display:flex;label:content;",
6977
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
7024
+ name: "1dtf9pj-DialogComboboxOptionList",
7025
+ styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%;label:DialogComboboxOptionList;",
7026
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$r
6978
7027
  };
6979
- const DuboisDialogComboboxOptionListCheckboxItem = /*#__PURE__*/forwardRef((_ref, ref) => {
7028
+ const DialogComboboxOptionList = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
6980
7029
  let {
6981
- value,
6982
- checked,
6983
- indeterminate,
6984
- onChange,
6985
7030
  children,
6986
- disabledReason,
6987
- _TYPE,
6988
- ...props
7031
+ loading,
7032
+ loadingDescription = 'DialogComboboxOptionList',
7033
+ withProgressiveLoading,
7034
+ ...restProps
6989
7035
  } = _ref;
6990
7036
  const {
6991
- theme
6992
- } = useDesignSystemTheme();
6993
- const {
6994
- textOverflowMode,
6995
- contentWidth
7037
+ isInsideDialogCombobox
6996
7038
  } = useDialogComboboxContext();
6997
- const {
6998
- isInsideDialogComboboxOptionList,
6999
- setLookAhead,
7000
- lookAhead
7001
- } = useDialogComboboxOptionListContext();
7002
- if (!isInsideDialogComboboxOptionList) {
7003
- throw new Error('`DialogComboboxOptionListCheckboxItem` must be used within `DialogComboboxOptionList`');
7039
+ const ref = useRef(null);
7040
+ useImperativeHandle(forwardedRef, () => ref.current);
7041
+ const [lookAhead, setLookAhead] = useState('');
7042
+ if (!isInsideDialogCombobox) {
7043
+ throw new Error('`DialogComboboxOptionList` must be used within `DialogCombobox`');
7004
7044
  }
7005
- const handleSelect = () => {
7006
- if (onChange) {
7007
- onChange(value);
7045
+ const lookAheadTimeout = useRef(null);
7046
+ useEffect(() => {
7047
+ if (lookAheadTimeout.current) {
7048
+ clearTimeout(lookAheadTimeout.current);
7049
+ }
7050
+ lookAheadTimeout.current = setTimeout(() => {
7051
+ setLookAhead('');
7052
+ }, 1500);
7053
+ return () => {
7054
+ if (lookAheadTimeout.current) {
7055
+ clearTimeout(lookAheadTimeout.current);
7056
+ }
7057
+ };
7058
+ }, [lookAhead]);
7059
+ useEffect(() => {
7060
+ var _ref$current;
7061
+ if (loading && !withProgressiveLoading) {
7062
+ return;
7063
+ }
7064
+ const optionItems = (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.querySelectorAll('[role="option"]');
7065
+ const hasTabIndexedOption = Array.from(optionItems !== null && optionItems !== void 0 ? optionItems : []).some(optionItem => {
7066
+ return optionItem.getAttribute('tabindex') === '0';
7067
+ });
7068
+ if (!hasTabIndexedOption) {
7069
+ const firstOptionItem = optionItems === null || optionItems === void 0 ? void 0 : optionItems[0];
7070
+ if (firstOptionItem) {
7071
+ highlightOption(firstOptionItem, undefined, false);
7072
+ }
7073
+ }
7074
+ }, [loading, withProgressiveLoading]);
7075
+ const handleOnMouseEnter = event => {
7076
+ const target = event.target;
7077
+ if (target) {
7078
+ var _target$closest;
7079
+ const options = target.hasAttribute('data-combobox-option-list') ? target.querySelectorAll('[role="option"]') : target === null || target === void 0 ? void 0 : (_target$closest = target.closest('[data-combobox-option-list="true"]')) === null || _target$closest === void 0 ? void 0 : _target$closest.querySelectorAll('[role="option"]');
7080
+ if (options) {
7081
+ options.forEach(option => option.removeAttribute('data-highlighted'));
7082
+ }
7008
7083
  }
7009
7084
  };
7010
- let content = children !== null && children !== void 0 ? children : value;
7011
- if (props.disabled && disabledReason) {
7012
- content = jsxs("div", {
7013
- css: _ref2$6,
7085
+ return jsx("div", {
7086
+ ref: ref,
7087
+ "aria-busy": loading,
7088
+ "data-combobox-option-list": "true",
7089
+ css: _ref2$d,
7090
+ onMouseEnter: handleOnMouseEnter,
7091
+ ...restProps,
7092
+ children: jsx(DialogComboboxOptionListContextProvider, {
7093
+ value: {
7094
+ isInsideDialogComboboxOptionList: true,
7095
+ lookAhead,
7096
+ setLookAhead
7097
+ },
7098
+ children: loading ? withProgressiveLoading ? jsxs(Fragment, {
7099
+ children: [children, jsx(LoadingSpinner, {
7100
+ "aria-label": "Loading",
7101
+ alt: "Loading spinner",
7102
+ loadingDescription: loadingDescription
7103
+ })]
7104
+ }) : jsx(LoadingSpinner, {
7105
+ "aria-label": "Loading",
7106
+ alt: "Loading spinner",
7107
+ loadingDescription: loadingDescription
7108
+ }) : children && Children.toArray(children).some(child => /*#__PURE__*/React__default.isValidElement(child)) ? children : jsx(EmptyResults, {})
7109
+ })
7110
+ });
7111
+ });
7112
+
7113
+ const InfoTooltip = _ref => {
7114
+ let {
7115
+ title,
7116
+ tooltipProps,
7117
+ iconTitle,
7118
+ ...iconProps
7119
+ } = _ref;
7120
+ const {
7121
+ theme
7122
+ } = useDesignSystemTheme();
7123
+ return jsx(Tooltip, {
7124
+ title: title,
7125
+ ...tooltipProps,
7126
+ children: jsx(InfoCircleOutlined, {
7127
+ "aria-hidden": "false",
7128
+ title: iconTitle,
7129
+ "aria-label": iconTitle,
7130
+ css: /*#__PURE__*/css({
7131
+ fontSize: theme.typography.fontSizeSm,
7132
+ color: theme.colors.textSecondary
7133
+ }, process.env.NODE_ENV === "production" ? "" : ";label:InfoTooltip;"),
7134
+ ...iconProps
7135
+ })
7136
+ });
7137
+ };
7138
+
7139
+ const useDialogComboboxOptionListContext = () => {
7140
+ return useContext(DialogComboboxOptionListContext);
7141
+ };
7142
+
7143
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$q() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7144
+ var _ref2$c = process.env.NODE_ENV === "production" ? {
7145
+ name: "zjik7",
7146
+ styles: "display:flex"
7147
+ } : {
7148
+ name: "tiu4as-content",
7149
+ styles: "display:flex;label:content;",
7150
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$q
7151
+ };
7152
+ const DuboisDialogComboboxOptionListCheckboxItem = /*#__PURE__*/forwardRef((_ref, ref) => {
7153
+ let {
7154
+ value,
7155
+ checked,
7156
+ indeterminate,
7157
+ onChange,
7158
+ children,
7159
+ disabledReason,
7160
+ _TYPE,
7161
+ ...props
7162
+ } = _ref;
7163
+ const {
7164
+ theme
7165
+ } = useDesignSystemTheme();
7166
+ const {
7167
+ textOverflowMode,
7168
+ contentWidth
7169
+ } = useDialogComboboxContext();
7170
+ const {
7171
+ isInsideDialogComboboxOptionList,
7172
+ setLookAhead,
7173
+ lookAhead
7174
+ } = useDialogComboboxOptionListContext();
7175
+ if (!isInsideDialogComboboxOptionList) {
7176
+ throw new Error('`DialogComboboxOptionListCheckboxItem` must be used within `DialogComboboxOptionList`');
7177
+ }
7178
+ const handleSelect = () => {
7179
+ if (onChange) {
7180
+ onChange(value);
7181
+ }
7182
+ };
7183
+ let content = children !== null && children !== void 0 ? children : value;
7184
+ if (props.disabled && disabledReason) {
7185
+ content = jsxs("div", {
7186
+ css: _ref2$c,
7014
7187
  children: [jsx("div", {
7015
7188
  children: content
7016
7189
  }), jsx("div", {
@@ -7018,8 +7191,10 @@ const DuboisDialogComboboxOptionListCheckboxItem = /*#__PURE__*/forwardRef((_ref
7018
7191
  title: disabledReason,
7019
7192
  placement: "right",
7020
7193
  children: jsx("span", {
7021
- css: infoIconStyles(theme),
7022
- children: jsx(InfoIcon, {})
7194
+ css: getInfoIconStyles(theme),
7195
+ children: jsx(InfoIcon, {
7196
+ "aria-hidden": "false"
7197
+ })
7023
7198
  })
7024
7199
  })
7025
7200
  })]
@@ -7031,7 +7206,7 @@ const DuboisDialogComboboxOptionListCheckboxItem = /*#__PURE__*/forwardRef((_ref
7031
7206
  // Using aria-selected instead of aria-checked because the parent listbox
7032
7207
  ,
7033
7208
  "aria-selected": indeterminate ? false : checked,
7034
- css: [getDialogComboboxOptionItemWrapperStyles(theme), process.env.NODE_ENV === "production" ? "" : ";label:DuboisDialogComboboxOptionListCheckboxItem;"],
7209
+ css: [getComboboxOptionItemWrapperStyles(theme), process.env.NODE_ENV === "production" ? "" : ";label:DuboisDialogComboboxOptionListCheckboxItem;"],
7035
7210
  ...props,
7036
7211
  onClick: e => {
7037
7212
  if (props.disabled) {
@@ -7049,31 +7224,11 @@ const DuboisDialogComboboxOptionListCheckboxItem = /*#__PURE__*/forwardRef((_ref
7049
7224
  children: jsx(Checkbox, {
7050
7225
  disabled: props.disabled,
7051
7226
  isChecked: indeterminate ? null : checked,
7052
- css: /*#__PURE__*/css({
7053
- pointerEvents: 'none',
7054
- height: 'unset',
7055
- width: '100%',
7056
- '& > label': {
7057
- width: '100%',
7058
- fontSize: theme.typography.fontSizeBase,
7059
- fontStyle: 'normal',
7060
- fontWeight: 400,
7061
- cursor: 'pointer',
7062
- '& > span:last-of-type': {
7063
- paddingRight: 0,
7064
- width: '100%',
7065
- overflow: 'hidden',
7066
- wordBreak: 'break-word',
7067
- ...(textOverflowMode === 'ellipsis' && {
7068
- textOverflow: 'ellipsis',
7069
- whiteSpace: 'nowrap'
7070
- }),
7071
- ...(contentWidth ? {
7072
- width: getDialogComboboxOptionLabelWidth(theme, contentWidth)
7073
- } : {})
7074
- }
7227
+ css: [getCheckboxStyles(theme, textOverflowMode), contentWidth ? {
7228
+ '& > span:last-of-type': {
7229
+ width: getDialogComboboxOptionLabelWidth(theme, contentWidth)
7075
7230
  }
7076
- }, process.env.NODE_ENV === "production" ? "" : ";label:DuboisDialogComboboxOptionListCheckboxItem;"),
7231
+ } : {}, process.env.NODE_ENV === "production" ? "" : ";label:DuboisDialogComboboxOptionListCheckboxItem;"],
7077
7232
  tabIndex: -1
7078
7233
  // Needed because Antd handles keyboard inputs as clicks
7079
7234
  ,
@@ -7090,7 +7245,7 @@ DuboisDialogComboboxOptionListCheckboxItem.defaultProps = {
7090
7245
  };
7091
7246
  const DialogComboboxOptionListCheckboxItem = DuboisDialogComboboxOptionListCheckboxItem;
7092
7247
 
7093
- function _EMOTION_STRINGIFIED_CSS_ERROR__$h() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7248
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$p() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7094
7249
  const extractTextContent = node => {
7095
7250
  if (typeof node === 'string' || typeof node === 'number') {
7096
7251
  return node.toString();
@@ -7117,13 +7272,13 @@ const filterChildren = (children, searchValue) => {
7117
7272
  return child;
7118
7273
  })) === null || _React$Children$map === void 0 ? void 0 : _React$Children$map.filter(child => child);
7119
7274
  };
7120
- var _ref2$5 = process.env.NODE_ENV === "production" ? {
7275
+ var _ref2$b = process.env.NODE_ENV === "production" ? {
7121
7276
  name: "1d3w5wq",
7122
7277
  styles: "width:100%"
7123
7278
  } : {
7124
7279
  name: "csdki6-DialogComboboxOptionListSearch",
7125
7280
  styles: "width:100%;label:DialogComboboxOptionListSearch;",
7126
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$h
7281
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$p
7127
7282
  };
7128
7283
  const DialogComboboxOptionListSearch = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7129
7284
  var _filteredChildren, _filteredChildren$pro, _filteredChildren2;
@@ -7158,9 +7313,68 @@ const DialogComboboxOptionListSearch = /*#__PURE__*/forwardRef((_ref, forwardedR
7158
7313
  filteredChildren = /*#__PURE__*/React__default.cloneElement(children, {}, filteredChildren);
7159
7314
  }
7160
7315
  }
7316
+ const inputWrapperRef = useRef(null);
7317
+
7318
+ // When the search value changes, highlight the first option
7319
+ useEffect(() => {
7320
+ if (!inputWrapperRef.current) {
7321
+ return;
7322
+ }
7323
+ const optionItems = getContentOptions(inputWrapperRef.current);
7324
+ if (optionItems) {
7325
+ // Reset previous highlights
7326
+ const highlightedOption = findHighlightedOption(optionItems);
7327
+ const firstOptionItem = optionItems === null || optionItems === void 0 ? void 0 : optionItems[0];
7328
+ if (firstOptionItem) {
7329
+ highlightOption(firstOptionItem, highlightedOption, false);
7330
+ }
7331
+ }
7332
+ }, [searchValue]);
7333
+ const handleOnKeyDown = event => {
7334
+ if (event.key === 'ArrowDown' || event.key === 'ArrowUp' || event.key === 'Enter') {
7335
+ event.preventDefault();
7336
+ } else {
7337
+ return;
7338
+ }
7339
+
7340
+ // Find closest parent of type DialogComboboxOptionList and get all options within it
7341
+ const options = getContentOptions(event.target);
7342
+ if (!options) {
7343
+ return;
7344
+ }
7345
+ const highlightedOption = findHighlightedOption(options);
7346
+
7347
+ // If the user is navigating the option is highlighted without focusing in order to avoid losing focus on the input
7348
+ if (event.key === 'ArrowDown' || event.key === 'ArrowUp') {
7349
+ if (highlightedOption) {
7350
+ const nextOption = findClosestOptionSibling(highlightedOption, event.key === 'ArrowDown' ? 'next' : 'previous');
7351
+ if (nextOption) {
7352
+ highlightOption(nextOption, highlightedOption, false);
7353
+ } else if (event.key === 'ArrowDown') {
7354
+ // If there is no next option, highlight the first option
7355
+ const firstOption = options[0];
7356
+ highlightOption(firstOption, highlightedOption, false);
7357
+ } else if (event.key === 'ArrowUp') {
7358
+ // If there is no previous option, highlight the last option
7359
+ const lastOption = options[options.length - 1];
7360
+ highlightOption(lastOption, highlightedOption, false);
7361
+ }
7362
+ } else {
7363
+ // In case there is no highlighted option, highlight the first / last option depending on key
7364
+ const nextOption = event.key === 'ArrowDown' ? options[0] : options[options.length - 1];
7365
+ if (nextOption) {
7366
+ highlightOption(nextOption, undefined, false);
7367
+ }
7368
+ }
7369
+ // On Enter trigger a click event on the highlighted option
7370
+ } else if (event.key === 'Enter' && highlightedOption) {
7371
+ highlightedOption.click();
7372
+ }
7373
+ };
7161
7374
  const childrenIsNotEmpty = Children.toArray(hasWrapper ? children.props.children : children).some(child => /*#__PURE__*/React__default.isValidElement(child));
7162
7375
  return jsxs(Fragment, {
7163
7376
  children: [jsx("div", {
7377
+ ref: inputWrapperRef,
7164
7378
  css: /*#__PURE__*/css({
7165
7379
  padding: `${theme.spacing.sm}px ${theme.spacing.lg / 2}px ${theme.spacing.sm}px`,
7166
7380
  width: '100%',
@@ -7177,14 +7391,19 @@ const DialogComboboxOptionListSearch = /*#__PURE__*/forwardRef((_ref, forwardedR
7177
7391
  prefix: jsx(SearchIcon, {}),
7178
7392
  placeholder: "Search",
7179
7393
  onChange: handleOnChange,
7394
+ onKeyDown: event => {
7395
+ var _restProps$onKeyDown;
7396
+ handleOnKeyDown(event);
7397
+ (_restProps$onKeyDown = restProps.onKeyDown) === null || _restProps$onKeyDown === void 0 ? void 0 : _restProps$onKeyDown.call(restProps, event);
7398
+ },
7180
7399
  value: searchValue,
7181
7400
  ...restProps
7182
7401
  })
7183
7402
  }), virtualized ? children : (hasWrapper && (_filteredChildren = filteredChildren) !== null && _filteredChildren !== void 0 && (_filteredChildren$pro = _filteredChildren.props.children) !== null && _filteredChildren$pro !== void 0 && _filteredChildren$pro.length || !hasWrapper && (_filteredChildren2 = filteredChildren) !== null && _filteredChildren2 !== void 0 && _filteredChildren2.length) && childrenIsNotEmpty ? jsx("div", {
7184
7403
  "aria-live": "polite",
7185
- css: _ref2$5,
7404
+ css: _ref2$b,
7186
7405
  children: filteredChildren
7187
- }) : jsx(DialogComboboxEmpty, {})]
7406
+ }) : jsx(EmptyResults, {})]
7188
7407
  });
7189
7408
  });
7190
7409
 
@@ -7207,22 +7426,22 @@ const useSelectContext = () => {
7207
7426
  return useContext(SelectContext);
7208
7427
  };
7209
7428
 
7210
- function _EMOTION_STRINGIFIED_CSS_ERROR__$g() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7211
- var _ref2$4 = process.env.NODE_ENV === "production" ? {
7429
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$o() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7430
+ var _ref2$a = process.env.NODE_ENV === "production" ? {
7212
7431
  name: "zjik7",
7213
7432
  styles: "display:flex"
7214
7433
  } : {
7215
7434
  name: "tiu4as-content",
7216
7435
  styles: "display:flex;label:content;",
7217
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$g
7436
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$o
7218
7437
  };
7219
- var _ref3$4 = process.env.NODE_ENV === "production" ? {
7438
+ var _ref3$5 = process.env.NODE_ENV === "production" ? {
7220
7439
  name: "kjj0ot",
7221
7440
  styles: "padding-top:2px"
7222
7441
  } : {
7223
7442
  name: "15osdio-DuboisDialogComboboxOptionListSelectItem",
7224
7443
  styles: "padding-top:2px;label:DuboisDialogComboboxOptionListSelectItem;",
7225
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$g
7444
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$o
7226
7445
  };
7227
7446
  const DuboisDialogComboboxOptionListSelectItem = /*#__PURE__*/forwardRef((_ref, ref) => {
7228
7447
  let {
@@ -7301,22 +7520,24 @@ const DuboisDialogComboboxOptionListSelectItem = /*#__PURE__*/forwardRef((_ref,
7301
7520
  let content = children !== null && children !== void 0 ? children : value;
7302
7521
  if (props.disabled && disabledReason) {
7303
7522
  content = jsxs("div", {
7304
- css: _ref2$4,
7523
+ css: _ref2$a,
7305
7524
  children: [jsx("div", {
7306
7525
  children: content
7307
7526
  }), jsx(Tooltip, {
7308
7527
  title: disabledReason,
7309
7528
  placement: "right",
7310
7529
  children: jsx("span", {
7311
- css: infoIconStyles(theme),
7312
- children: jsx(InfoIcon, {})
7530
+ css: getInfoIconStyles(theme),
7531
+ children: jsx(InfoIcon, {
7532
+ "aria-hidden": "false"
7533
+ })
7313
7534
  })
7314
7535
  })]
7315
7536
  });
7316
7537
  }
7317
7538
  return jsxs("div", {
7318
7539
  ref: itemRef,
7319
- css: [getDialogComboboxOptionItemWrapperStyles(theme), {
7540
+ css: [getComboboxOptionItemWrapperStyles(theme), {
7320
7541
  '&:focus': {
7321
7542
  background: theme.colors.actionTertiaryBackgroundHover,
7322
7543
  outline: 'none'
@@ -7338,9 +7559,8 @@ const DuboisDialogComboboxOptionListSelectItem = /*#__PURE__*/forwardRef((_ref,
7338
7559
  }),
7339
7560
  role: "option",
7340
7561
  "aria-selected": checked,
7341
- "aria-label": value,
7342
7562
  children: [checked ? jsx(CheckIcon, {
7343
- css: _ref3$4
7563
+ css: _ref3$5
7344
7564
  }) : jsx("div", {
7345
7565
  style: {
7346
7566
  width: 16,
@@ -7372,20 +7592,21 @@ DuboisDialogComboboxOptionListSelectItem.defaultProps = {
7372
7592
  };
7373
7593
  const DialogComboboxOptionListSelectItem = DuboisDialogComboboxOptionListSelectItem;
7374
7594
 
7375
- function _EMOTION_STRINGIFIED_CSS_ERROR__$f() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7376
- var _ref2$3 = process.env.NODE_ENV === "production" ? {
7595
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$n() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7596
+ var _ref2$9 = process.env.NODE_ENV === "production" ? {
7377
7597
  name: "1pgv7dg",
7378
7598
  styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%"
7379
7599
  } : {
7380
7600
  name: "18t0chz-DialogComboboxOptionControlledList",
7381
7601
  styles: "display:flex;flex-direction:column;align-items:flex-start;width:100%;label:DialogComboboxOptionControlledList;",
7382
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$f
7602
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$n
7383
7603
  };
7384
7604
  const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7385
7605
  let {
7386
7606
  options,
7387
7607
  onChange,
7388
7608
  loading,
7609
+ loadingDescription = 'DialogComboboxOptionControlledList',
7389
7610
  withProgressiveLoading,
7390
7611
  withSearch,
7391
7612
  showAllOption,
@@ -7404,6 +7625,8 @@ const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwar
7404
7625
  throw new Error('`DialogComboboxOptionControlledList` must be used within `DialogCombobox`');
7405
7626
  }
7406
7627
  const lookAheadTimeout = useRef(null);
7628
+ const ref = useRef(null);
7629
+ useImperativeHandle(forwardedRef, () => ref.current);
7407
7630
  useEffect(() => {
7408
7631
  if (lookAheadTimeout.current) {
7409
7632
  clearTimeout(lookAheadTimeout.current);
@@ -7417,6 +7640,22 @@ const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwar
7417
7640
  }
7418
7641
  };
7419
7642
  }, [lookAhead]);
7643
+ useEffect(() => {
7644
+ var _ref$current;
7645
+ if (loading && !withProgressiveLoading) {
7646
+ return;
7647
+ }
7648
+ const optionItems = (_ref$current = ref.current) === null || _ref$current === void 0 ? void 0 : _ref$current.querySelectorAll('[role="option"]');
7649
+ const hasTabIndexedOption = Array.from(optionItems !== null && optionItems !== void 0 ? optionItems : []).some(optionItem => {
7650
+ return optionItem.getAttribute('tabindex') === '0';
7651
+ });
7652
+ if (!hasTabIndexedOption) {
7653
+ const firstOptionItem = optionItems === null || optionItems === void 0 ? void 0 : optionItems[0];
7654
+ if (firstOptionItem) {
7655
+ highlightOption(firstOptionItem, undefined, false);
7656
+ }
7657
+ }
7658
+ }, [loading, withProgressiveLoading]);
7420
7659
  const isOptionChecked = options.reduce((acc, option) => {
7421
7660
  acc[option] = value === null || value === void 0 ? void 0 : value.includes(option);
7422
7661
  return acc;
@@ -7459,7 +7698,7 @@ const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwar
7459
7698
  }
7460
7699
  }
7461
7700
  };
7462
- const renderedOptions = jsxs(DialogComboboxOptionList, {
7701
+ const renderedOptions = jsxs(Fragment, {
7463
7702
  children: [showAllOption && multiSelect && jsx(DialogComboboxOptionListCheckboxItem, {
7464
7703
  value: "all",
7465
7704
  onChange: handleSelectAll,
@@ -7476,12 +7715,18 @@ const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwar
7476
7715
  checked: isOptionChecked[option],
7477
7716
  onChange: handleUpdate,
7478
7717
  children: option
7479
- }, key)) : jsx(DialogComboboxEmpty, {})]
7718
+ }, key)) : jsx(EmptyResults, {})]
7719
+ });
7720
+ const optionList = jsx(DialogComboboxOptionList, {
7721
+ children: withSearch ? jsx(DialogComboboxOptionListSearch, {
7722
+ hasWrapper: true,
7723
+ children: renderedOptions
7724
+ }) : renderedOptions
7480
7725
  });
7481
7726
  return jsx("div", {
7482
- ref: forwardedRef,
7727
+ ref: ref,
7483
7728
  "aria-busy": loading,
7484
- css: _ref2$3,
7729
+ css: _ref2$9,
7485
7730
  ...restProps,
7486
7731
  children: jsx(DialogComboboxOptionListContextProvider, {
7487
7732
  value: {
@@ -7491,20 +7736,16 @@ const DialogComboboxOptionControlledList = /*#__PURE__*/forwardRef((_ref, forwar
7491
7736
  },
7492
7737
  children: jsx(Fragment, {
7493
7738
  children: loading ? withProgressiveLoading ? jsxs(Fragment, {
7494
- children: [withSearch ? jsx(DialogComboboxOptionListSearch, {
7495
- hasWrapper: true,
7496
- children: renderedOptions
7497
- }) : renderedOptions, jsx(DialogComboboxLoadingSpinner, {
7739
+ children: [optionList, jsx(LoadingSpinner, {
7498
7740
  "aria-label": "Loading",
7499
- alt: "Loading spinner"
7741
+ alt: "Loading spinner",
7742
+ loadingDescription: loadingDescription
7500
7743
  })]
7501
- }) : jsx(DialogComboboxLoadingSpinner, {
7744
+ }) : jsx(LoadingSpinner, {
7502
7745
  "aria-label": "Loading",
7503
- alt: "Loading spinner"
7504
- }) : withSearch ? jsx(DialogComboboxOptionListSearch, {
7505
- hasWrapper: true,
7506
- children: renderedOptions
7507
- }) : renderedOptions
7746
+ alt: "Loading spinner",
7747
+ loadingDescription: loadingDescription
7748
+ }) : optionList
7508
7749
  })
7509
7750
  })
7510
7751
  });
@@ -7515,51 +7756,27 @@ const DialogComboboxSectionHeader = _ref => {
7515
7756
  children,
7516
7757
  ...props
7517
7758
  } = _ref;
7518
- const {
7519
- theme
7520
- } = useDesignSystemTheme();
7521
7759
  const {
7522
7760
  isInsideDialogCombobox
7523
7761
  } = useDialogComboboxContext();
7524
7762
  if (!isInsideDialogCombobox) {
7525
7763
  throw new Error('`DialogComboboxSectionHeader` must be used within `DialogCombobox`');
7526
7764
  }
7527
- return jsx("div", {
7765
+ return jsx(SectionHeader, {
7528
7766
  ...props,
7529
- css: /*#__PURE__*/css({
7530
- display: 'flex',
7531
- flexDirection: 'row',
7532
- alignItems: 'flex-start',
7533
- padding: `${theme.spacing.xs}px ${theme.spacing.lg / 2}px`,
7534
- alignSelf: 'stretch',
7535
- fontWeight: 400,
7536
- color: theme.colors.textSecondary
7537
- }, process.env.NODE_ENV === "production" ? "" : ";label:DialogComboboxSectionHeader;"),
7538
7767
  children: children
7539
7768
  });
7540
7769
  };
7541
7770
 
7542
7771
  const DialogComboboxSeparator = props => {
7543
- const {
7544
- theme
7545
- } = useDesignSystemTheme();
7546
7772
  const {
7547
7773
  isInsideDialogCombobox
7548
7774
  } = useDialogComboboxContext();
7549
7775
  if (!isInsideDialogCombobox) {
7550
7776
  throw new Error('`DialogComboboxSeparator` must be used within `DialogCombobox`');
7551
7777
  }
7552
- return jsx("div", {
7553
- ...props,
7554
- css: /*#__PURE__*/css({
7555
- display: 'flex',
7556
- flexDirection: 'row',
7557
- alignItems: 'center',
7558
- margin: `${theme.spacing.xs}px ${theme.spacing.lg / 2}px`,
7559
- border: `1px solid ${theme.colors.borderDecorative}`,
7560
- borderBottom: 0,
7561
- alignSelf: 'stretch'
7562
- }, process.env.NODE_ENV === "production" ? "" : ";label:DialogComboboxSeparator;")
7778
+ return jsx(Separator, {
7779
+ ...props
7563
7780
  });
7564
7781
  };
7565
7782
 
@@ -7764,18 +7981,8 @@ const DialogComboboxTrigger = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7764
7981
  }, process.env.NODE_ENV === "production" ? "" : ";label:triggerContent;"),
7765
7982
  children: selectPlaceholder
7766
7983
  })
7767
- }), allowClear && value !== null && value !== void 0 && value.length ? jsx(XCircleFillIcon, {
7768
- onClick: handleClear,
7769
- css: /*#__PURE__*/css({
7770
- color: theme.colors.textPlaceholder,
7771
- fontSize: theme.typography.fontSizeSm,
7772
- marginLeft: theme.spacing.xs,
7773
- ':hover': {
7774
- color: theme.colors.actionTertiaryTextHover
7775
- }
7776
- }, process.env.NODE_ENV === "production" ? "" : ";label:triggerContent;"),
7777
- role: "button",
7778
- "aria-label": "Clear selection"
7984
+ }), allowClear && value !== null && value !== void 0 && value.length ? jsx(ClearSelectionButton, {
7985
+ onClick: handleClear
7779
7986
  }) : null, jsx(ChevronDownIcon, {
7780
7987
  css: /*#__PURE__*/css({
7781
7988
  color: theme.colors.textSecondary,
@@ -7802,16 +8009,15 @@ const DialogComboboxTrigger = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7802
8009
  }
7803
8010
  }, process.env.NODE_ENV === "production" ? "" : ";label:triggerContent;"),
7804
8011
  ref: triggerContentRef,
7805
- children: [withInlineLabel ? jsx("span", {
8012
+ children: [withInlineLabel ? jsxs("span", {
7806
8013
  css: /*#__PURE__*/css({
7807
8014
  height: theme.typography.lineHeightBase,
7808
8015
  marginRight: theme.spacing.xs,
7809
- fontWeight: theme.typography.typographyBoldFontWeight,
7810
8016
  whiteSpace: 'unset',
7811
8017
  overflow: 'unset',
7812
8018
  textOverflow: 'unset'
7813
8019
  }, process.env.NODE_ENV === "production" ? "" : ";label:triggerContent;"),
7814
- children: label
8020
+ children: [label, value !== null && value !== void 0 && value.length ? ':' : null]
7815
8021
  }) : !(value !== null && value !== void 0 && value.length) && jsx("span", {
7816
8022
  css: /*#__PURE__*/css({
7817
8023
  color: theme.colors.textPlaceholder
@@ -7829,18 +8035,8 @@ const DialogComboboxTrigger = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7829
8035
  "aria-label": "Selected options count"
7830
8036
  })]
7831
8037
  }) : displayedValues]
7832
- }), allowClear && value !== null && value !== void 0 && value.length ? jsx(XCircleFillIcon, {
7833
- onClick: handleClear,
7834
- css: /*#__PURE__*/css({
7835
- color: theme.colors.textPlaceholder,
7836
- fontSize: theme.typography.fontSizeSm,
7837
- marginLeft: theme.spacing.xs,
7838
- ':hover': {
7839
- color: theme.colors.actionTertiaryTextHover
7840
- }
7841
- }, process.env.NODE_ENV === "production" ? "" : ";label:triggerContent;"),
7842
- role: "button",
7843
- "aria-label": "Clear selection"
8038
+ }), allowClear && value !== null && value !== void 0 && value.length ? jsx(ClearSelectionButton, {
8039
+ onClick: handleClear
7844
8040
  }) : null, withChevronIcon ? jsx(ChevronDownIcon, {
7845
8041
  css: /*#__PURE__*/css({
7846
8042
  color: theme.colors.textSecondary,
@@ -7860,7 +8056,9 @@ const DialogComboboxTrigger = /*#__PURE__*/forwardRef((_ref, forwardedRef) => {
7860
8056
  "aria-label": `Remove ${label}`,
7861
8057
  onClick: handleRemove,
7862
8058
  dangerouslySetForceIconStyles: true,
7863
- children: jsx(CloseIcon, {})
8059
+ children: jsx(CloseIcon, {
8060
+ "aria-hidden": "false"
8061
+ })
7864
8062
  })]
7865
8063
  });
7866
8064
  });
@@ -7891,20 +8089,20 @@ const Spacer = _ref => {
7891
8089
  });
7892
8090
  };
7893
8091
 
7894
- function _EMOTION_STRINGIFIED_CSS_ERROR__$e() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
8092
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$m() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
7895
8093
  const DEFAULT_WIDTH$1 = 320;
7896
8094
  const MIN_WIDTH = 320;
7897
8095
  const MAX_WIDTH = '90vw';
7898
8096
  const DEFAULT_POSITION = 'right';
7899
8097
  const ZINDEX_OVERLAY = 10;
7900
8098
  const ZINDEX_CONTENT = ZINDEX_OVERLAY + 10;
7901
- var _ref2$2 = process.env.NODE_ENV === "production" ? {
8099
+ var _ref2$8 = process.env.NODE_ENV === "production" ? {
7902
8100
  name: "zh83op",
7903
8101
  styles: "flex-grow:1;margin-bottom:0;margin-top:0;white-space:nowrap;overflow:hidden"
7904
8102
  } : {
7905
8103
  name: "h5yqvj-Content",
7906
8104
  styles: "flex-grow:1;margin-bottom:0;margin-top:0;white-space:nowrap;overflow:hidden;label:Content;",
7907
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$e
8105
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$m
7908
8106
  };
7909
8107
  const Content$3 = _ref => {
7910
8108
  let {
@@ -8017,7 +8215,7 @@ const Content$3 = _ref => {
8017
8215
  children: [jsx(DialogPrimitive.Title, {
8018
8216
  title: typeof title === 'string' ? title : undefined,
8019
8217
  asChild: typeof title === 'string',
8020
- css: _ref2$2,
8218
+ css: _ref2$8,
8021
8219
  children: typeof title === 'string' ? jsx(Typography.Title, {
8022
8220
  level: 2,
8023
8221
  withoutMargins: true,
@@ -8136,7 +8334,7 @@ const Dropdown = _ref => {
8136
8334
  });
8137
8335
  };
8138
8336
 
8139
- function _EMOTION_STRINGIFIED_CSS_ERROR__$d() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
8337
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$l() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
8140
8338
  const {
8141
8339
  Title: Title$1,
8142
8340
  Paragraph
@@ -8149,8 +8347,9 @@ function getEmptyStyles(theme) {
8149
8347
  textAlign: 'center',
8150
8348
  maxWidth: 600,
8151
8349
  wordBreak: 'break-word',
8152
- // Set size of image to 64px
8153
- '> :first-child': {
8350
+ // TODO: This isn't ideal, but migrating to a safer selector would require a SAFE flag / careful migration.
8351
+ '> [role="img"]': {
8352
+ // Set size of image to 64px
8154
8353
  fontSize: 64,
8155
8354
  color: theme.colors.actionDisabledText,
8156
8355
  marginBottom: theme.spacing.md
@@ -8177,13 +8376,13 @@ function getEmptyDescriptionStyles(theme, clsPrefix) {
8177
8376
  };
8178
8377
  return /*#__PURE__*/css(styles, process.env.NODE_ENV === "production" ? "" : ";label:getEmptyDescriptionStyles;");
8179
8378
  }
8180
- var _ref$2 = process.env.NODE_ENV === "production" ? {
8379
+ var _ref$5 = process.env.NODE_ENV === "production" ? {
8181
8380
  name: "zl1inp",
8182
8381
  styles: "display:flex;justify-content:center"
8183
8382
  } : {
8184
8383
  name: "11tid6c-Empty",
8185
8384
  styles: "display:flex;justify-content:center;label:Empty;",
8186
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$d
8385
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$l
8187
8386
  };
8188
8387
  const Empty = props => {
8189
8388
  const {
@@ -8200,7 +8399,7 @@ const Empty = props => {
8200
8399
  } = props;
8201
8400
  return jsx("div", {
8202
8401
  ...dataProps,
8203
- css: _ref$2,
8402
+ css: _ref$5,
8204
8403
  children: jsxs("div", {
8205
8404
  css: [getEmptyStyles(theme), dangerouslyAppendEmotionCSS, process.env.NODE_ENV === "production" ? "" : ";label:Empty;"],
8206
8405
  children: [image, title && jsx(Title$1, {
@@ -8389,7 +8588,8 @@ const Hint = props => {
8389
8588
  });
8390
8589
  };
8391
8590
 
8392
- const getLabelStyles = (classNamePrefix, theme, _ref) => {
8591
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$k() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
8592
+ const getLabelStyles$1 = (classNamePrefix, theme, _ref) => {
8393
8593
  let {
8394
8594
  inline
8395
8595
  } = _ref;
@@ -8406,6 +8606,14 @@ const getLabelStyles = (classNamePrefix, theme, _ref) => {
8406
8606
  };
8407
8607
  return /*#__PURE__*/css(styles, process.env.NODE_ENV === "production" ? "" : ";label:getLabelStyles;");
8408
8608
  };
8609
+ var _ref2$7 = process.env.NODE_ENV === "production" ? {
8610
+ name: "s5xdrg",
8611
+ styles: "display:flex;align-items:center"
8612
+ } : {
8613
+ name: "53ggpt-Label",
8614
+ styles: "display:flex;align-items:center;label:Label;",
8615
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$k
8616
+ };
8409
8617
  const Label = props => {
8410
8618
  const {
8411
8619
  children,
@@ -8418,12 +8626,15 @@ const Label = props => {
8418
8626
  theme
8419
8627
  } = useDesignSystemTheme();
8420
8628
  return jsx("label", {
8421
- css: getLabelStyles(classNamePrefix, theme, {
8629
+ css: getLabelStyles$1(classNamePrefix, theme, {
8422
8630
  inline
8423
8631
  }),
8424
8632
  className: classnames(`${classNamePrefix}-label`, className),
8425
8633
  ...restProps,
8426
- children: children
8634
+ children: jsx("span", {
8635
+ css: _ref2$7,
8636
+ children: children
8637
+ })
8427
8638
  });
8428
8639
  };
8429
8640
 
@@ -9097,6 +9308,7 @@ function DuboisSelect(_ref2, ref) {
9097
9308
  children,
9098
9309
  validationState,
9099
9310
  loading,
9311
+ loadingDescription = 'Select',
9100
9312
  mode,
9101
9313
  options,
9102
9314
  notFoundContent,
@@ -9104,6 +9316,8 @@ function DuboisSelect(_ref2, ref) {
9104
9316
  dangerouslySetAntdProps,
9105
9317
  virtual,
9106
9318
  dropdownClassName,
9319
+ id,
9320
+ onDropdownVisibleChange,
9107
9321
  ...restProps
9108
9322
  } = _ref2;
9109
9323
  const {
@@ -9114,22 +9328,51 @@ function DuboisSelect(_ref2, ref) {
9114
9328
  USE_NEW_SELECT_DROPDOWN_STYLES
9115
9329
  } = useDesignSystemFlags();
9116
9330
  const clsPrefix = getPrefixedClassName('select');
9331
+ const [isOpen, setIsOpen] = useState(false);
9332
+ const [uniqueId, setUniqueId] = useState('');
9333
+ useEffect(() => {
9334
+ setUniqueId(id || _uniqueId('dubois-select-'));
9335
+ }, [id]);
9336
+ useEffect(() => {
9337
+ var _document$getElementB;
9338
+ // Ant doesn't populate aria-expanded on init (only on user interaction) so we need to do it ourselves
9339
+ // in order to pass accessibility tests (Microsoft Accessibility Insights). See: JOBS-11125
9340
+ (_document$getElementB = document.getElementById(uniqueId)) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.setAttribute('aria-expanded', 'false');
9341
+ }, [uniqueId]);
9117
9342
  return jsx(ClassNames, {
9118
9343
  children: _ref3 => {
9119
9344
  let {
9120
9345
  css: css$1
9121
9346
  } = _ref3;
9122
- return jsx(DesignSystemAntDConfigProvider, {
9123
- children: jsx(Select$1, {
9347
+ return jsxs(DesignSystemAntDConfigProvider, {
9348
+ children: [loading && jsx(LoadingState, {
9349
+ description: loadingDescription
9350
+ }), jsx(Select$1, {
9351
+ onDropdownVisibleChange: visible => {
9352
+ onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 ? void 0 : onDropdownVisibleChange(visible);
9353
+ setIsOpen(visible);
9354
+ }
9355
+ // unset aria-owns, aria-controls, and aria-activedescendant if the dropdown is closed;
9356
+ // ant always sets these even if the dropdown isn't present in the DOM yet.
9357
+ // This was flagged by Microsoft Accessibility Insights. See: JOBS-11125
9358
+ ,
9359
+ ...(!isOpen ? {
9360
+ 'aria-owns': undefined,
9361
+ 'aria-controls': undefined,
9362
+ 'aria-activedescendant': undefined
9363
+ } : {}),
9364
+ id: uniqueId,
9124
9365
  css: getSelectEmotionStyles({
9125
9366
  clsPrefix,
9126
9367
  theme,
9127
9368
  validationState
9128
9369
  }),
9129
9370
  removeIcon: jsx(CloseIcon, {
9371
+ "aria-hidden": "false",
9130
9372
  css: getIconSizeStyle(theme)
9131
9373
  }),
9132
9374
  clearIcon: jsx(XCircleFillIcon, {
9375
+ "aria-hidden": "false",
9133
9376
  css: getIconSizeStyle(theme, 12),
9134
9377
  "aria-label": "close-circle"
9135
9378
  }),
@@ -9137,6 +9380,7 @@ function DuboisSelect(_ref2, ref) {
9137
9380
  suffixIcon: loading && mode === 'tags' ? jsx(LoadingIcon, {
9138
9381
  spin: true,
9139
9382
  "aria-label": "loading",
9383
+ "aria-hidden": "false",
9140
9384
  css: getIconSizeStyle(theme, 12)
9141
9385
  }) : jsx(ChevronDownIcon, {
9142
9386
  css: getIconSizeStyle(theme)
@@ -9172,13 +9416,14 @@ function DuboisSelect(_ref2, ref) {
9172
9416
  value: "select-loading-options",
9173
9417
  className: `${clsPrefix}-loading-options`,
9174
9418
  children: jsx(LoadingIcon, {
9419
+ "aria-hidden": "false",
9175
9420
  spin: true,
9176
9421
  css: getLoadingIconStyles(theme),
9177
9422
  "aria-label": "loading"
9178
9423
  })
9179
9424
  })]
9180
9425
  }) : children
9181
- })
9426
+ })]
9182
9427
  });
9183
9428
  }
9184
9429
  });
@@ -9649,10 +9894,42 @@ const RHFControlledComponents = {
9649
9894
  RadioGroup: RHFControlledRadioGroup
9650
9895
  };
9651
9896
 
9897
+ const getHorizontalInputStyles = (theme, labelColWidth, inputColWidth) => {
9898
+ return /*#__PURE__*/css({
9899
+ display: 'flex',
9900
+ gap: theme.spacing.sm,
9901
+ '& > input, & > textarea, & > select': {
9902
+ marginTop: '0 !important'
9903
+ },
9904
+ '& > div:nth-of-type(1)': {
9905
+ width: labelColWidth
9906
+ },
9907
+ '& > div:nth-of-type(2)': {
9908
+ width: inputColWidth
9909
+ }
9910
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getHorizontalInputStyles;");
9911
+ };
9912
+ const HorizontalFormRow = _ref => {
9913
+ let {
9914
+ children,
9915
+ labelColWidth = '33%',
9916
+ inputColWidth = '66%',
9917
+ ...restProps
9918
+ } = _ref;
9919
+ const {
9920
+ theme
9921
+ } = useDesignSystemTheme();
9922
+ return jsx("div", {
9923
+ css: getHorizontalInputStyles(theme, labelColWidth, inputColWidth),
9924
+ ...restProps,
9925
+ children: children
9926
+ });
9927
+ };
9652
9928
  const FormUI = {
9653
9929
  Message: FormMessage,
9654
9930
  Label: Label,
9655
- Hint: Hint
9931
+ Hint: Hint,
9932
+ HorizontalFormRow
9656
9933
  };
9657
9934
 
9658
9935
  const Col = _ref => {
@@ -9695,7 +9972,7 @@ const Space = _ref => {
9695
9972
  });
9696
9973
  };
9697
9974
 
9698
- function _EMOTION_STRINGIFIED_CSS_ERROR__$c() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
9975
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$j() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
9699
9976
  const getHeaderStyles = (clsPrefix, theme) => {
9700
9977
  const breadcrumbClass = `.${clsPrefix}-breadcrumb`;
9701
9978
  const styles = {
@@ -9705,37 +9982,37 @@ const getHeaderStyles = (clsPrefix, theme) => {
9705
9982
  };
9706
9983
  return /*#__PURE__*/css(importantify(styles), process.env.NODE_ENV === "production" ? "" : ";label:getHeaderStyles;");
9707
9984
  };
9708
- var _ref$1 = process.env.NODE_ENV === "production" ? {
9709
- name: "5s4ezj",
9710
- styles: "display:inline-flex;vertical-align:middle;align-items:center;margin-left:8px"
9985
+ var _ref$4 = process.env.NODE_ENV === "production" ? {
9986
+ name: "eh0igi",
9987
+ styles: "display:inline-flex;vertical-align:middle;align-items:center"
9711
9988
  } : {
9712
- name: "gxikdi-titleAddOnsWrapper",
9713
- styles: "display:inline-flex;vertical-align:middle;align-items:center;margin-left:8px;label:titleAddOnsWrapper;",
9714
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
9989
+ name: "n13uil-titleAddOnsWrapper",
9990
+ styles: "display:inline-flex;vertical-align:middle;align-items:center;label:titleAddOnsWrapper;",
9991
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
9715
9992
  };
9716
- var _ref2$1 = process.env.NODE_ENV === "production" ? {
9993
+ var _ref2$6 = process.env.NODE_ENV === "production" ? {
9717
9994
  name: "1q4vxyr",
9718
9995
  styles: "margin-left:8px"
9719
9996
  } : {
9720
9997
  name: "ozrfom-buttonContainer",
9721
9998
  styles: "margin-left:8px;label:buttonContainer;",
9722
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
9999
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
9723
10000
  };
9724
- var _ref3$3 = process.env.NODE_ENV === "production" ? {
10001
+ var _ref3$4 = process.env.NODE_ENV === "production" ? {
9725
10002
  name: "s079uh",
9726
10003
  styles: "margin-top:2px"
9727
10004
  } : {
9728
10005
  name: "1ky5whb-titleIfOtherElementsPresent",
9729
10006
  styles: "margin-top:2px;label:titleIfOtherElementsPresent;",
9730
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
10007
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
9731
10008
  };
9732
- var _ref4$1 = process.env.NODE_ENV === "production" ? {
10009
+ var _ref4$2 = process.env.NODE_ENV === "production" ? {
9733
10010
  name: "fuxm9z",
9734
10011
  styles: "margin-top:0;margin-bottom:0 !important;align-self:stretch"
9735
10012
  } : {
9736
10013
  name: "h5m2l9-title",
9737
10014
  styles: "margin-top:0;margin-bottom:0 !important;align-self:stretch;label:title;",
9738
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
10015
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
9739
10016
  };
9740
10017
  var _ref5 = process.env.NODE_ENV === "production" ? {
9741
10018
  name: "1cl2a0e",
@@ -9743,7 +10020,7 @@ var _ref5 = process.env.NODE_ENV === "production" ? {
9743
10020
  } : {
9744
10021
  name: "m9gz0x-titleWrapper",
9745
10022
  styles: "display:flex;align-items:flex-start;justify-content:space-between;label:titleWrapper;",
9746
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
10023
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$j
9747
10024
  };
9748
10025
  const Header$1 = _ref6 => {
9749
10026
  let {
@@ -9766,12 +10043,13 @@ const Header$1 = _ref6 => {
9766
10043
  breadcrumbWrapper: /*#__PURE__*/css({
9767
10044
  lineHeight: theme.typography.lineHeightBase
9768
10045
  }, process.env.NODE_ENV === "production" ? "" : ";label:breadcrumbWrapper;"),
9769
- title: _ref4$1,
10046
+ title: _ref4$2,
9770
10047
  // TODO: Look into a more emotion-idomatic way of doing this.
9771
- titleIfOtherElementsPresent: _ref3$3,
9772
- buttonContainer: _ref2$1,
9773
- titleAddOnsWrapper: _ref$1
10048
+ titleIfOtherElementsPresent: _ref3$4,
10049
+ buttonContainer: _ref2$6,
10050
+ titleAddOnsWrapper: _ref$4
9774
10051
  };
10052
+ const buttonsArray = Array.isArray(buttons) ? buttons : [buttons];
9775
10053
  return jsxs("div", {
9776
10054
  css: [getHeaderStyles(clsPrefix, theme), dangerouslyAppendEmotionCSS, process.env.NODE_ENV === "production" ? "" : ";label:Header;"],
9777
10055
  ...rest,
@@ -9783,15 +10061,24 @@ const Header$1 = _ref6 => {
9783
10061
  children: [jsxs(Title$2, {
9784
10062
  level: 2,
9785
10063
  css: [styles.title, (buttons || breadcrumbs) && styles.titleIfOtherElementsPresent, process.env.NODE_ENV === "production" ? "" : ";label:Header;"],
9786
- children: [title, titleAddOns && jsx("span", {
9787
- css: styles.titleAddOnsWrapper,
9788
- children: titleAddOns
10064
+ children: [title, titleAddOns && jsxs(Fragment, {
10065
+ children: ["\u2002", jsx("span", {
10066
+ css: styles.titleAddOnsWrapper,
10067
+ children: titleAddOns
10068
+ })]
9789
10069
  })]
9790
10070
  }), buttons && jsx("div", {
9791
10071
  css: styles.buttonContainer,
9792
10072
  children: jsx(Space, {
9793
10073
  size: 8,
9794
- children: buttons
10074
+ children: buttonsArray.filter(Boolean).map((button, i) => {
10075
+ const defaultKey = `dubois-header-button-${i}`;
10076
+ return /*#__PURE__*/React__default.isValidElement(button) ? /*#__PURE__*/React__default.cloneElement(button, {
10077
+ key: button.key || defaultKey
10078
+ }) : jsx(React__default.Fragment, {
10079
+ children: button
10080
+ }, defaultKey);
10081
+ })
9795
10082
  })
9796
10083
  })]
9797
10084
  })]
@@ -9916,6 +10203,7 @@ function useLegacyNotification() {
9916
10203
  className: iconClassName
9917
10204
  });
9918
10205
  mergedArgs.closeIcon = jsx(CloseIcon, {
10206
+ "aria-hidden": "false",
9919
10207
  css: /*#__PURE__*/css({
9920
10208
  cursor: 'pointer',
9921
10209
  fontSize: theme.general.iconSize
@@ -10013,21 +10301,58 @@ const LegacyPopover = _ref => {
10013
10301
  });
10014
10302
  };
10015
10303
 
10016
- function _EMOTION_STRINGIFIED_CSS_ERROR__$b() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
10017
- function getPaginationEmotionStyles(clsPrefix, theme) {
10018
- const classRoot = `.${clsPrefix}-pagination`;
10019
- const classItem = `.${clsPrefix}-pagination-item`;
10020
- const classLink = `.${clsPrefix}-pagination-item-link`;
10021
- const classActive = `.${clsPrefix}-pagination-item-active`;
10022
- const classEllipsis = `.${clsPrefix}-pagination-item-ellipsis`;
10023
- const classNext = `.${clsPrefix}-pagination-next`;
10024
- const classPrev = `.${clsPrefix}-pagination-prev`;
10025
- const classJumpNext = `.${clsPrefix}-pagination-jump-next`;
10026
- const classJumpPrev = `.${clsPrefix}-pagination-jump-prev`;
10027
- const classSizeChanger = `.${clsPrefix}-pagination-options-size-changer`;
10028
- const classOptions = `.${clsPrefix}-pagination-options`;
10029
- const styles = {
10030
- 'span[role=img]': {
10304
+ /** @deprecated This component is deprecated. Use ParagraphSkeleton, TitleSkeleton, or GenericSkeleton instead. */
10305
+ const LegacySkeleton = /* #__PURE__ */(() => {
10306
+ const LegacySkeleton = _ref => {
10307
+ var _loading;
10308
+ let {
10309
+ dangerouslySetAntdProps,
10310
+ label,
10311
+ loadingDescription = 'LegacySkeleton',
10312
+ ...props
10313
+ } = _ref;
10314
+ // There is a conflict in how the 'loading' prop is handled here, so we can't default it to true in
10315
+ // props destructuring above like we do for 'loadingDescription'. The 'loading' param is used both
10316
+ // for <LoadingState> and in <AntDSkeleton>. The intent is for 'loading' to default to true in
10317
+ // <LoadingState>, but if we do that, <AntDSkeleton> will not render the children. The workaround
10318
+ // here is to default 'loading' to true only when considering whether to render a <LoadingState>.
10319
+ // Also, AntDSkeleton looks at the presence of 'loading' in props, so We cannot explicitly destructure
10320
+ // 'loading' in the constructor since we would no longer be able to differentiate between it not being
10321
+ // passed in at all and being passed undefined.
10322
+ const loadingStateLoading = (_loading = props.loading) !== null && _loading !== void 0 ? _loading : true;
10323
+ return jsx(DesignSystemAntDConfigProvider, {
10324
+ children: jsxs(AccessibleContainer, {
10325
+ label: label,
10326
+ children: [loadingStateLoading && jsx(LoadingState, {
10327
+ description: loadingDescription
10328
+ }), jsx(Skeleton, {
10329
+ ...props,
10330
+ ...dangerouslySetAntdProps
10331
+ })]
10332
+ })
10333
+ });
10334
+ };
10335
+ LegacySkeleton.Button = Skeleton.Button;
10336
+ LegacySkeleton.Image = Skeleton.Image;
10337
+ LegacySkeleton.Input = Skeleton.Input;
10338
+ return LegacySkeleton;
10339
+ })();
10340
+
10341
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$i() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
10342
+ function getPaginationEmotionStyles(clsPrefix, theme) {
10343
+ const classRoot = `.${clsPrefix}-pagination`;
10344
+ const classItem = `.${clsPrefix}-pagination-item`;
10345
+ const classLink = `.${clsPrefix}-pagination-item-link`;
10346
+ const classActive = `.${clsPrefix}-pagination-item-active`;
10347
+ const classEllipsis = `.${clsPrefix}-pagination-item-ellipsis`;
10348
+ const classNext = `.${clsPrefix}-pagination-next`;
10349
+ const classPrev = `.${clsPrefix}-pagination-prev`;
10350
+ const classJumpNext = `.${clsPrefix}-pagination-jump-next`;
10351
+ const classJumpPrev = `.${clsPrefix}-pagination-jump-prev`;
10352
+ const classSizeChanger = `.${clsPrefix}-pagination-options-size-changer`;
10353
+ const classOptions = `.${clsPrefix}-pagination-options`;
10354
+ const styles = {
10355
+ 'span[role=img]': {
10031
10356
  color: theme.colors.textSecondary,
10032
10357
  '> *': {
10033
10358
  color: 'inherit'
@@ -10150,13 +10475,13 @@ const Pagination = function Pagination(_ref) {
10150
10475
  })
10151
10476
  });
10152
10477
  };
10153
- var _ref3$2 = process.env.NODE_ENV === "production" ? {
10478
+ var _ref3$3 = process.env.NODE_ENV === "production" ? {
10154
10479
  name: "1u1zie3",
10155
10480
  styles: "width:120px"
10156
10481
  } : {
10157
10482
  name: "1am9qog-CursorPagination",
10158
10483
  styles: "width:120px;label:CursorPagination;",
10159
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$b
10484
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$i
10160
10485
  };
10161
10486
  const CursorPagination = function CursorPagination(_ref2) {
10162
10487
  let {
@@ -10202,7 +10527,7 @@ const CursorPagination = function CursorPagination(_ref2) {
10202
10527
  children: nextPageText
10203
10528
  }), pageSizeOptions && jsx(Select, {
10204
10529
  value: String(pageSizeValue),
10205
- css: _ref3$2,
10530
+ css: _ref3$3,
10206
10531
  onChange: pageSize => {
10207
10532
  const updatedPageSize = Number(pageSize);
10208
10533
  onPageSizeChange === null || onPageSizeChange === void 0 ? void 0 : onPageSizeChange(updatedPageSize);
@@ -10340,7 +10665,7 @@ const Menu = /* #__PURE__ */(() => {
10340
10665
  return Menu;
10341
10666
  })();
10342
10667
 
10343
- function _EMOTION_STRINGIFIED_CSS_ERROR__$a() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
10668
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$h() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
10344
10669
  const SIZE_PRESETS = {
10345
10670
  normal: 640,
10346
10671
  wide: 880
@@ -10434,7 +10759,8 @@ const getModalEmotionStyles = args => {
10434
10759
  paddingRight: MODAL_PADDING,
10435
10760
  minHeight: headerHeight / 2,
10436
10761
  display: 'flex',
10437
- alignItems: 'center'
10762
+ alignItems: 'center',
10763
+ overflowWrap: 'anywhere'
10438
10764
  },
10439
10765
  [classNameContent]: {
10440
10766
  backgroundColor: theme.colors.backgroundPrimary,
@@ -10536,6 +10862,7 @@ function Modal(_ref2) {
10536
10862
  size = 'normal',
10537
10863
  verticalSizing = 'dynamic',
10538
10864
  autoFocusButton,
10865
+ truncateTitle,
10539
10866
  ...props
10540
10867
  } = _ref2;
10541
10868
  const {
@@ -10551,7 +10878,16 @@ function Modal(_ref2) {
10551
10878
  maxedOutHeight: verticalSizing === 'maxed_out'
10552
10879
  }),
10553
10880
  title: jsx(RestoreAntDDefaultClsPrefix, {
10554
- children: title
10881
+ children: truncateTitle ? jsx("div", {
10882
+ css: /*#__PURE__*/css({
10883
+ textOverflow: 'ellipsis',
10884
+ marginRight: theme.spacing.md,
10885
+ overflow: 'hidden',
10886
+ whiteSpace: 'nowrap'
10887
+ }, process.env.NODE_ENV === "production" ? "" : ";label:Modal;"),
10888
+ title: typeof title === 'string' ? title : undefined,
10889
+ children: title
10890
+ }) : title
10555
10891
  }),
10556
10892
  footer: jsx(RestoreAntDDefaultClsPrefix, {
10557
10893
  children: footer === undefined ? jsx(DefaultFooter, {
@@ -10577,21 +10913,21 @@ function Modal(_ref2) {
10577
10913
  })
10578
10914
  });
10579
10915
  }
10580
- var _ref3$1 = process.env.NODE_ENV === "production" ? {
10916
+ var _ref3$2 = process.env.NODE_ENV === "production" ? {
10581
10917
  name: "b9hrb",
10582
10918
  styles: "position:relative;display:inline-flex;align-items:center"
10583
10919
  } : {
10584
10920
  name: "1jkwrsj-titleComp",
10585
10921
  styles: "position:relative;display:inline-flex;align-items:center;label:titleComp;",
10586
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
10922
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$h
10587
10923
  };
10588
- var _ref4 = process.env.NODE_ENV === "production" ? {
10924
+ var _ref4$1 = process.env.NODE_ENV === "production" ? {
10589
10925
  name: "1o6wc9k",
10590
10926
  styles: "padding-left:6px"
10591
10927
  } : {
10592
10928
  name: "i303lp-titleComp",
10593
10929
  styles: "padding-left:6px;label:titleComp;",
10594
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
10930
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$h
10595
10931
  };
10596
10932
  function DangerModal(props) {
10597
10933
  const {
@@ -10610,7 +10946,7 @@ function DangerModal(props) {
10610
10946
  const iconSize = 18;
10611
10947
  const iconFontSize = 18;
10612
10948
  const titleComp = jsxs("div", {
10613
- css: _ref3$1,
10949
+ css: _ref3$2,
10614
10950
  children: [jsx(DangerIcon, {
10615
10951
  css: /*#__PURE__*/css({
10616
10952
  color: theme.colors.textValidationDanger,
@@ -10620,7 +10956,7 @@ function DangerModal(props) {
10620
10956
  fontSize: iconFontSize
10621
10957
  }, process.env.NODE_ENV === "production" ? "" : ";label:titleComp;")
10622
10958
  }), jsx("div", {
10623
- css: _ref4,
10959
+ css: _ref4$1,
10624
10960
  children: title
10625
10961
  })]
10626
10962
  });
@@ -11171,7 +11507,7 @@ const SegmentedControlGroup = /*#__PURE__*/forwardRef(function SegmentedControlG
11171
11507
  });
11172
11508
  });
11173
11509
 
11174
- function _EMOTION_STRINGIFIED_CSS_ERROR__$9() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11510
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$g() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11175
11511
  const DEFAULT_WIDTH = 200;
11176
11512
  const ContentContextDefaults = {
11177
11513
  openPanelId: undefined,
@@ -11398,7 +11734,7 @@ var _ref7 = process.env.NODE_ENV === "production" ? {
11398
11734
  } : {
11399
11735
  name: "fs19p8-PanelHeader",
11400
11736
  styles: "display:flex;justify-content:space-between;align-items:center;label:PanelHeader;",
11401
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
11737
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$g
11402
11738
  };
11403
11739
  function PanelHeader(_ref6) {
11404
11740
  let {
@@ -11531,30 +11867,6 @@ const Sidebar = /* #__PURE__ */(() => {
11531
11867
  return Sidebar;
11532
11868
  })();
11533
11869
 
11534
- /** @deprecated This component is deprecated. Use ParagraphSkeleton, TitleSkeleton, or GenericSkeleton instead. */
11535
- const LegacySkeleton = /* #__PURE__ */(() => {
11536
- const LegacySkeleton = _ref => {
11537
- let {
11538
- dangerouslySetAntdProps,
11539
- label,
11540
- ...props
11541
- } = _ref;
11542
- return jsx(DesignSystemAntDConfigProvider, {
11543
- children: jsx(AccessibleContainer, {
11544
- label: label,
11545
- children: jsx(Skeleton, {
11546
- ...props,
11547
- ...dangerouslySetAntdProps
11548
- })
11549
- })
11550
- });
11551
- };
11552
- LegacySkeleton.Button = Skeleton.Button;
11553
- LegacySkeleton.Image = Skeleton.Image;
11554
- LegacySkeleton.Input = Skeleton.Input;
11555
- return LegacySkeleton;
11556
- })();
11557
-
11558
11870
  // This is a very simple PRNG that is seeded (so that the output is deterministic).
11559
11871
  // We need this in order to produce a random ragged edge for the table skeleton.
11560
11872
  function pseudoRandomNumberGeneratorFromSeed(seed) {
@@ -11612,45 +11924,51 @@ const genSkeletonAnimatedColor = function (theme) {
11612
11924
  }, process.env.NODE_ENV === "production" ? "" : ";label:genSkeletonAnimatedColor;");
11613
11925
  };
11614
11926
 
11615
- function _EMOTION_STRINGIFIED_CSS_ERROR__$8() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11927
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$f() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11616
11928
  const GenericContainerStyles = process.env.NODE_ENV === "production" ? {
11617
11929
  name: "12h7em6",
11618
11930
  styles: "cursor:progress;border-radius:var(--border-radius)"
11619
11931
  } : {
11620
11932
  name: "19fx6jo-GenericContainerStyles",
11621
11933
  styles: "cursor:progress;border-radius:var(--border-radius);label:GenericContainerStyles;",
11622
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
11934
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$f
11623
11935
  };
11624
11936
  const GenericSkeleton = _ref => {
11625
11937
  let {
11626
11938
  label,
11627
11939
  frameRate = 60,
11628
- style
11940
+ style,
11941
+ loading = true,
11942
+ loadingDescription = 'GenericSkeleton',
11943
+ ...restProps
11629
11944
  } = _ref;
11630
11945
  const {
11631
11946
  theme
11632
11947
  } = useDesignSystemTheme();
11633
- return jsx("div", {
11948
+ return jsxs("div", {
11634
11949
  css: [GenericContainerStyles, genSkeletonAnimatedColor(theme, frameRate), process.env.NODE_ENV === "production" ? "" : ";label:GenericSkeleton;"],
11635
11950
  style: {
11636
11951
  ...style,
11637
11952
  ['--border-radius']: `${theme.general.borderRadiusBase}px`
11638
11953
  },
11639
- children: jsx("span", {
11954
+ ...restProps,
11955
+ children: [loading && jsx(LoadingState, {
11956
+ description: loadingDescription
11957
+ }), jsx("span", {
11640
11958
  css: visuallyHidden,
11641
11959
  children: label
11642
- })
11960
+ })]
11643
11961
  });
11644
11962
  };
11645
11963
 
11646
- function _EMOTION_STRINGIFIED_CSS_ERROR__$7() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11964
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$e() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11647
11965
  const paragraphContainerStyles = process.env.NODE_ENV === "production" ? {
11648
11966
  name: "sj05g9",
11649
11967
  styles: "cursor:progress;width:100%;height:20px;display:flex;justify-content:flex-start;align-items:center"
11650
11968
  } : {
11651
11969
  name: "u3a3v7-paragraphContainerStyles",
11652
11970
  styles: "cursor:progress;width:100%;height:20px;display:flex;justify-content:flex-start;align-items:center;label:paragraphContainerStyles;",
11653
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
11971
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$e
11654
11972
  };
11655
11973
  const paragraphFillStyles = process.env.NODE_ENV === "production" ? {
11656
11974
  name: "10nptxl",
@@ -11658,14 +11976,17 @@ const paragraphFillStyles = process.env.NODE_ENV === "production" ? {
11658
11976
  } : {
11659
11977
  name: "h6xifd-paragraphFillStyles",
11660
11978
  styles: "border-radius:var(--border-radius);height:8px;label:paragraphFillStyles;",
11661
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
11979
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$e
11662
11980
  };
11663
11981
  const ParagraphSkeleton = _ref => {
11664
11982
  let {
11665
11983
  label,
11666
11984
  seed = '',
11667
11985
  frameRate = 60,
11668
- style
11986
+ style,
11987
+ loading = true,
11988
+ loadingDescription = 'ParagraphSkeleton',
11989
+ ...restProps
11669
11990
  } = _ref;
11670
11991
  const {
11671
11992
  theme
@@ -11677,7 +11998,10 @@ const ParagraphSkeleton = _ref => {
11677
11998
  ...style,
11678
11999
  ['--border-radius']: `${theme.general.borderRadiusBase}px`
11679
12000
  },
11680
- children: [jsx("span", {
12001
+ ...restProps,
12002
+ children: [loading && jsx(LoadingState, {
12003
+ description: loadingDescription
12004
+ }), jsx("span", {
11681
12005
  css: visuallyHidden,
11682
12006
  children: label
11683
12007
  }), jsx("div", {
@@ -11689,14 +12013,14 @@ const ParagraphSkeleton = _ref => {
11689
12013
  });
11690
12014
  };
11691
12015
 
11692
- function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12016
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$d() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11693
12017
  const titleContainerStyles = process.env.NODE_ENV === "production" ? {
11694
12018
  name: "116rc6i",
11695
12019
  styles: "cursor:progress;width:100%;height:28px;display:flex;justify-content:flex-start;align-items:center"
11696
12020
  } : {
11697
12021
  name: "1dar8xl-titleContainerStyles",
11698
12022
  styles: "cursor:progress;width:100%;height:28px;display:flex;justify-content:flex-start;align-items:center;label:titleContainerStyles;",
11699
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
12023
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$d
11700
12024
  };
11701
12025
  const titleFillStyles = process.env.NODE_ENV === "production" ? {
11702
12026
  name: "9fmdbb",
@@ -11704,13 +12028,16 @@ const titleFillStyles = process.env.NODE_ENV === "production" ? {
11704
12028
  } : {
11705
12029
  name: "1vyd6dg-titleFillStyles",
11706
12030
  styles: "border-radius:var(--border-radius);height:12px;width:100%;label:titleFillStyles;",
11707
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
12031
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$d
11708
12032
  };
11709
12033
  const TitleSkeleton = _ref => {
11710
12034
  let {
11711
12035
  label,
11712
12036
  frameRate = 60,
11713
- style
12037
+ style,
12038
+ loading = true,
12039
+ loadingDescription = 'TitleSkeleton',
12040
+ ...restProps
11714
12041
  } = _ref;
11715
12042
  const {
11716
12043
  theme
@@ -11721,7 +12048,10 @@ const TitleSkeleton = _ref => {
11721
12048
  ...style,
11722
12049
  ['--border-radius']: `${theme.general.borderRadiusBase}px`
11723
12050
  },
11724
- children: [jsx("span", {
12051
+ ...restProps,
12052
+ children: [loading && jsx(LoadingState, {
12053
+ description: loadingDescription
12054
+ }), jsx("span", {
11725
12055
  css: visuallyHidden,
11726
12056
  children: label
11727
12057
  }), jsx("div", {
@@ -11731,7 +12061,7 @@ const TitleSkeleton = _ref => {
11731
12061
  });
11732
12062
  };
11733
12063
 
11734
- function _EMOTION_STRINGIFIED_CSS_ERROR__$5() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12064
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$c() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
11735
12065
  // Class names that can be used to reference children within
11736
12066
  // Should not be used outside of design system
11737
12067
  // TODO: PE-239 Maybe we could add "dangerous" into the names or make them completely random.
@@ -11754,7 +12084,7 @@ const repeatingElementsStyles = {
11754
12084
  } : {
11755
12085
  name: "q5g0tm-cell",
11756
12086
  styles: "display:inline-grid;position:relative;flex:1;line-height:initial;box-sizing:border-box;padding-left:var(--table-spacing-sm);padding-right:var(--table-spacing-sm);word-break:break-word;overflow:hidden;& .anticon{vertical-align:text-bottom;};label:cell;",
11757
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12087
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11758
12088
  },
11759
12089
  header: process.env.NODE_ENV === "production" ? {
11760
12090
  name: "ik7qgz",
@@ -11762,7 +12092,7 @@ const repeatingElementsStyles = {
11762
12092
  } : {
11763
12093
  name: "1xg6jn4-header",
11764
12094
  styles: "font-weight:bold;align-items:flex-end;display:flex;overflow:hidden;&[aria-sort]{cursor:pointer;user-select:none;}.table-header-text{color:var(--table-header-text-color);}.table-header-icon-container{color:var(--table-header-sort-icon-color);display:none;}&[aria-sort]:hover{.table-header-icon-container, .table-header-text{color:var(--table-header-focus-color);}}&[aria-sort]:active{.table-header-icon-container, .table-header-text{color:var(--table-header-active-color);}}&:hover, &[aria-sort=\"ascending\"], &[aria-sort=\"descending\"]{.table-header-icon-container{display:inline;}};label:header;",
11765
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12095
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11766
12096
  },
11767
12097
  row: process.env.NODE_ENV === "production" ? {
11768
12098
  name: "gf0r0k",
@@ -11770,7 +12100,7 @@ const repeatingElementsStyles = {
11770
12100
  } : {
11771
12101
  name: "1nztrlu-row",
11772
12102
  styles: "display:flex;&.table-isHeader{> *{background-color:var(--table-header-background-color);}.table-isScrollable &{position:sticky;top:0;z-index:1;}}.table-row-select-cell input[type=\"checkbox\"] ~ *{opacity:var(--row-checkbox-opacity, 0);}&:not(.table-row-isGrid)&:hover{&:not(.table-isHeader){background-color:var(--table-row-hover);}.table-row-select-cell input[type=\"checkbox\"] ~ *{opacity:1;}}.table-row-select-cell input[type=\"checkbox\"]:focus ~ *{opacity:1;}> *{padding-top:var(--table-row-vertical-padding);padding-bottom:var(--table-row-vertical-padding);border-bottom:1px solid;border-color:var(--table-separator-color);}&.table-row-isGrid > *{border-right:1px solid;border-color:var(--table-separator-color);}&.table-row-isGrid > :first-of-type{border-left:1px solid;border-color:var(--table-separator-color);}&.table-row-isGrid.table-row-isHeader:first-of-type > *{border-top:1px solid;border-color:var(--table-separator-color);};label:row;",
11773
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12103
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11774
12104
  }
11775
12105
  };
11776
12106
 
@@ -11849,15 +12179,23 @@ const tableStyles = {
11849
12179
  } : {
11850
12180
  name: "1iv4trp-headerButtonTarget",
11851
12181
  styles: "align-items:flex-end;display:flex;overflow:hidden;width:100%;justify-content:inherit;&:focus{.table-header-text{color:var(--table-header-focus-color);}.table-header-icon-container{color:var(--table-header-focus-color);display:inline;}}&:active{.table-header-icon-container, .table-header-text{color:var(--table-header-active-color);}};label:headerButtonTarget;",
11852
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12182
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11853
12183
  },
11854
- sortHeaderIcon: process.env.NODE_ENV === "production" ? {
12184
+ sortHeaderIconOnRight: process.env.NODE_ENV === "production" ? {
11855
12185
  name: "1hdiaor",
11856
12186
  styles: "margin-left:var(--table-spacing-xs)"
11857
12187
  } : {
11858
- name: "oruvmh-sortHeaderIcon",
11859
- styles: "margin-left:var(--table-spacing-xs);label:sortHeaderIcon;",
11860
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12188
+ name: "evh3p3-sortHeaderIconOnRight",
12189
+ styles: "margin-left:var(--table-spacing-xs);label:sortHeaderIconOnRight;",
12190
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
12191
+ },
12192
+ sortHeaderIconOnLeft: process.env.NODE_ENV === "production" ? {
12193
+ name: "d4plmt",
12194
+ styles: "margin-right:var(--table-spacing-xs)"
12195
+ } : {
12196
+ name: "1gr7edl-sortHeaderIconOnLeft",
12197
+ styles: "margin-right:var(--table-spacing-xs);label:sortHeaderIconOnLeft;",
12198
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11861
12199
  },
11862
12200
  checkboxCell: process.env.NODE_ENV === "production" ? {
11863
12201
  name: "4cdr0s",
@@ -11865,7 +12203,7 @@ const tableStyles = {
11865
12203
  } : {
11866
12204
  name: "17au6u2-checkboxCell",
11867
12205
  styles: "display:flex;align-items:center;flex:0;padding-left:var(--table-spacing-sm);padding-top:0;padding-bottom:0;min-width:var(--table-spacing-md);max-width:var(--table-spacing-md);box-sizing:content-box;label:checkboxCell;",
11868
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12206
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11869
12207
  },
11870
12208
  resizeHandleContainer: /*#__PURE__*/css({
11871
12209
  position: 'absolute',
@@ -11886,7 +12224,7 @@ const tableStyles = {
11886
12224
  } : {
11887
12225
  name: "1ot7jju-resizeHandle",
11888
12226
  styles: "width:1px;background:var(--table-resize-handle-color);label:resizeHandle;",
11889
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12227
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11890
12228
  },
11891
12229
  paginationContainer: process.env.NODE_ENV === "production" ? {
11892
12230
  name: "ehlmid",
@@ -11894,7 +12232,7 @@ const tableStyles = {
11894
12232
  } : {
11895
12233
  name: "p324df-paginationContainer",
11896
12234
  styles: "display:flex;justify-content:flex-end;padding-top:var(--table-spacing-sm);padding-bottom:var(--table-spacing-sm);label:paginationContainer;",
11897
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
12235
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$c
11898
12236
  }
11899
12237
  };
11900
12238
  var tableStyles$1 = tableStyles;
@@ -12007,14 +12345,12 @@ const TableCell = /*#__PURE__*/forwardRef(function (_ref, ref) {
12007
12345
  children,
12008
12346
  className,
12009
12347
  ellipsis = false,
12010
- multiline: multilineProp,
12348
+ multiline = false,
12011
12349
  align = 'left',
12012
12350
  style,
12013
12351
  wrapContent = true,
12014
12352
  ...rest
12015
12353
  } = _ref;
12016
- const defaultToEllipsisSAFE = safex('databricks.fe.designsystem.defaultTableCellToEllipsis', false);
12017
- const multiline = multilineProp !== null && multilineProp !== void 0 ? multilineProp : !defaultToEllipsisSAFE;
12018
12354
  const {
12019
12355
  size,
12020
12356
  grid
@@ -12024,9 +12360,9 @@ const TableCell = /*#__PURE__*/forwardRef(function (_ref, ref) {
12024
12360
  typographySize = 'sm';
12025
12361
  }
12026
12362
  const content = wrapContent === true ? jsx(Typography.Text, {
12027
- ellipsis: defaultToEllipsisSAFE ? !multiline : ellipsis,
12363
+ ellipsis: !multiline,
12028
12364
  size: typographySize,
12029
- title: (defaultToEllipsisSAFE ? !multiline : ellipsis) && typeof children === 'string' && children || undefined,
12365
+ title: !multiline && typeof children === 'string' && children || undefined,
12030
12366
  children: children
12031
12367
  }) : children;
12032
12368
  return jsx("div", {
@@ -12099,7 +12435,7 @@ const TableRow = /*#__PURE__*/forwardRef(function TableRow(_ref, ref) {
12099
12435
  });
12100
12436
  });
12101
12437
 
12102
- function _EMOTION_STRINGIFIED_CSS_ERROR__$4() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12438
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$b() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12103
12439
  const TableRowActionStyles = {
12104
12440
  container: process.env.NODE_ENV === "production" ? {
12105
12441
  name: "gk361n",
@@ -12107,7 +12443,7 @@ const TableRowActionStyles = {
12107
12443
  } : {
12108
12444
  name: "q9pljs-container",
12109
12445
  styles: "width:32px;padding-top:var(--vertical-padding);padding-bottom:var(--vertical-padding);display:flex;align-items:start;justify-content:center;label:container;",
12110
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$4
12446
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$b
12111
12447
  }
12112
12448
  };
12113
12449
  const TableRowAction = /*#__PURE__*/forwardRef(function TableRowAction(_ref, ref) {
@@ -12139,7 +12475,7 @@ const TableRowAction = /*#__PURE__*/forwardRef(function TableRowAction(_ref, ref
12139
12475
  /** @deprecated Use `TableRowAction` instead */
12140
12476
  const TableRowMenuContainer = TableRowAction;
12141
12477
 
12142
- function _EMOTION_STRINGIFIED_CSS_ERROR__$3() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12478
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$a() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12143
12479
  const TableSkeletonStyles = {
12144
12480
  container: process.env.NODE_ENV === "production" ? {
12145
12481
  name: "6kz1wu",
@@ -12147,7 +12483,7 @@ const TableSkeletonStyles = {
12147
12483
  } : {
12148
12484
  name: "1we0er9-container",
12149
12485
  styles: "display:flex;flex-direction:column;align-items:flex-start;label:container;",
12150
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
12486
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
12151
12487
  },
12152
12488
  cell: process.env.NODE_ENV === "production" ? {
12153
12489
  name: "1t820zr",
@@ -12155,7 +12491,7 @@ const TableSkeletonStyles = {
12155
12491
  } : {
12156
12492
  name: "1m8dl5b-cell",
12157
12493
  styles: "width:100%;height:8px;border-radius:4px;background:var(--table-skeleton-color);margin-top:var(--table-skeleton-row-vertical-margin);margin-bottom:var(--table-skeleton-row-vertical-margin);label:cell;",
12158
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
12494
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$a
12159
12495
  }
12160
12496
  };
12161
12497
  const TableSkeleton = _ref => {
@@ -12195,13 +12531,17 @@ const TableSkeletonRows = _ref2 => {
12195
12531
  let {
12196
12532
  table,
12197
12533
  actionColumnIds = [],
12198
- numRows = 3
12534
+ numRows = 3,
12535
+ loading = true,
12536
+ loadingDescription = 'Table skeleton rows'
12199
12537
  } = _ref2;
12200
12538
  const {
12201
12539
  theme
12202
12540
  } = useDesignSystemTheme();
12203
- return jsx(Fragment, {
12204
- children: [...Array(numRows).keys()].map(i => jsx(TableRow, {
12541
+ return jsxs(Fragment, {
12542
+ children: [loading && jsx(LoadingState, {
12543
+ description: loadingDescription
12544
+ }), [...Array(numRows).keys()].map(i => jsx(TableRow, {
12205
12545
  children: table.getFlatHeaders().map(header => {
12206
12546
  var _meta$styles, _meta$numSkeletonLine;
12207
12547
  const meta = header.column.columnDef.meta;
@@ -12221,7 +12561,7 @@ const TableSkeletonRows = _ref2 => {
12221
12561
  })
12222
12562
  }, `cell-${header.id}-${i}`);
12223
12563
  })
12224
- }, i))
12564
+ }, i))]
12225
12565
  });
12226
12566
  };
12227
12567
 
@@ -12334,7 +12674,7 @@ const DropdownButton = props => {
12334
12674
  });
12335
12675
  };
12336
12676
 
12337
- function _EMOTION_STRINGIFIED_CSS_ERROR__$2() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12677
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$9() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12338
12678
  const BUTTON_HORIZONTAL_PADDING = 12;
12339
12679
  function getSplitButtonEmotionStyles(classNamePrefix, theme) {
12340
12680
  const classDefault = `.${classNamePrefix}-btn`;
@@ -12356,7 +12696,7 @@ function getSplitButtonEmotionStyles(classNamePrefix, theme) {
12356
12696
  },
12357
12697
  [classPrimary]: {
12358
12698
  ...getPrimaryStyles(theme),
12359
- [`&:first-child`]: {
12699
+ [`&:first-of-type`]: {
12360
12700
  borderRight: `1px solid ${theme.colors.actionPrimaryTextDefault}`,
12361
12701
  marginRight: 1
12362
12702
  },
@@ -12383,7 +12723,7 @@ function getSplitButtonEmotionStyles(classNamePrefix, theme) {
12383
12723
  },
12384
12724
  '[disabled]': {
12385
12725
  ...getDisabledStyles(theme),
12386
- [`&:first-child`]: {
12726
+ [`&:first-of-type`]: {
12387
12727
  borderRight: `1px solid ${theme.colors.actionDisabledText}`,
12388
12728
  marginRight: 1
12389
12729
  },
@@ -12391,7 +12731,7 @@ function getSplitButtonEmotionStyles(classNamePrefix, theme) {
12391
12731
  borderLeft: `1px solid ${theme.colors.actionDisabledText}`
12392
12732
  }
12393
12733
  },
12394
- [`${classDefault}:not(:first-child)`]: {
12734
+ [`${classDefault}:not(:first-of-type)`]: {
12395
12735
  width: theme.general.heightSm,
12396
12736
  padding: '3px !important'
12397
12737
  },
@@ -12400,13 +12740,13 @@ function getSplitButtonEmotionStyles(classNamePrefix, theme) {
12400
12740
  const importantStyles = importantify(styles);
12401
12741
  return /*#__PURE__*/css(importantStyles, process.env.NODE_ENV === "production" ? "" : ";label:getSplitButtonEmotionStyles;");
12402
12742
  }
12403
- var _ref = process.env.NODE_ENV === "production" ? {
12743
+ var _ref$3 = process.env.NODE_ENV === "production" ? {
12404
12744
  name: "tp1ooh",
12405
12745
  styles: "display:inline-flex;position:relative;vertical-align:middle"
12406
12746
  } : {
12407
12747
  name: "1kplxg4-SplitButton",
12408
12748
  styles: "display:inline-flex;position:relative;vertical-align:middle;label:SplitButton;",
12409
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$2
12749
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$9
12410
12750
  };
12411
12751
  const SplitButton = props => {
12412
12752
  const {
@@ -12439,7 +12779,7 @@ const SplitButton = props => {
12439
12779
  return jsx(DesignSystemAntDConfigProvider, {
12440
12780
  children: jsx("div", {
12441
12781
  ref: ref,
12442
- css: _ref,
12782
+ css: _ref$3,
12443
12783
  children: loading ? jsx(Button, {
12444
12784
  type: type === 'default' ? undefined : type,
12445
12785
  style: {
@@ -12606,7 +12946,7 @@ const Switch = _ref2 => {
12606
12946
  });
12607
12947
  };
12608
12948
 
12609
- function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12949
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$8() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12610
12950
  const getTableFilterInputStyles = (theme, defaultWidth) => {
12611
12951
  return /*#__PURE__*/css({
12612
12952
  [theme.responsive.mediaQueries.sm]: {
@@ -12620,21 +12960,21 @@ const getTableFilterInputStyles = (theme, defaultWidth) => {
12620
12960
  }
12621
12961
  }, process.env.NODE_ENV === "production" ? "" : ";label:getTableFilterInputStyles;");
12622
12962
  };
12623
- var _ref2 = process.env.NODE_ENV === "production" ? {
12963
+ var _ref2$5 = process.env.NODE_ENV === "production" ? {
12624
12964
  name: "7whenc",
12625
12965
  styles: "display:flex;width:100%"
12626
12966
  } : {
12627
12967
  name: "3ktoz7-component",
12628
12968
  styles: "display:flex;width:100%;label:component;",
12629
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
12969
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
12630
12970
  };
12631
- var _ref3 = process.env.NODE_ENV === "production" ? {
12971
+ var _ref3$1 = process.env.NODE_ENV === "production" ? {
12632
12972
  name: "82a6rk",
12633
12973
  styles: "flex:1"
12634
12974
  } : {
12635
12975
  name: "18ug1j7-component",
12636
12976
  styles: "flex:1;label:component;",
12637
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
12977
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$8
12638
12978
  };
12639
12979
  const TableFilterInput = /*#__PURE__*/forwardRef(function SearchInput(_ref, ref) {
12640
12980
  let {
@@ -12656,33 +12996,43 @@ const TableFilterInput = /*#__PURE__*/forwardRef(function SearchInput(_ref, ref)
12656
12996
  });
12657
12997
  if (showSearchButton) {
12658
12998
  component = jsxs(Input.Group, {
12659
- css: _ref2,
12999
+ css: _ref2$5,
12660
13000
  className: className,
12661
13001
  children: [jsx(Input, {
12662
13002
  allowClear: true,
12663
13003
  ...inputProps,
12664
13004
  ref: ref,
12665
- css: _ref3
13005
+ css: _ref3$1
12666
13006
  }), jsx(Button, {
12667
13007
  htmlType: "submit",
12668
13008
  children: jsx(SearchIcon, {})
12669
13009
  })]
12670
13010
  });
12671
13011
  }
12672
- return jsx("form", {
13012
+ const commonProps = {
12673
13013
  style: {
12674
13014
  height: theme.general.heightSm
12675
13015
  },
12676
- css: getTableFilterInputStyles(theme, DEFAULT_WIDTH),
12677
- onSubmit: e => {
12678
- e.preventDefault();
12679
- onSubmit === null || onSubmit === void 0 ? void 0 : onSubmit();
12680
- },
12681
- children: component
12682
- });
13016
+ css: getTableFilterInputStyles(theme, DEFAULT_WIDTH)
13017
+ };
13018
+ if (onSubmit) {
13019
+ return jsx("form", {
13020
+ ...commonProps,
13021
+ onSubmit: e => {
13022
+ e.preventDefault();
13023
+ onSubmit();
13024
+ },
13025
+ children: component
13026
+ });
13027
+ } else {
13028
+ return jsx("div", {
13029
+ ...commonProps,
13030
+ children: component
13031
+ });
13032
+ }
12683
13033
  });
12684
13034
 
12685
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
13035
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$7() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
12686
13036
  const tableFilterLayoutStyles = {
12687
13037
  layout: process.env.NODE_ENV === "production" ? {
12688
13038
  name: "1yb0qmd",
@@ -12690,7 +13040,7 @@ const tableFilterLayoutStyles = {
12690
13040
  } : {
12691
13041
  name: "bmua0k-layout",
12692
13042
  styles: "display:flex;flex-direction:row;justify-content:space-between;margin-bottom:var(--table-filter-layout-group-margin);label:layout;",
12693
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
13043
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
12694
13044
  },
12695
13045
  filters: process.env.NODE_ENV === "production" ? {
12696
13046
  name: "2pdmyz",
@@ -12698,7 +13048,7 @@ const tableFilterLayoutStyles = {
12698
13048
  } : {
12699
13049
  name: "i28ows-filters",
12700
13050
  styles: "display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:var(--table-filter-layout-item-gap);flex:1;label:filters;",
12701
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
13051
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
12702
13052
  },
12703
13053
  filterActions: process.env.NODE_ENV === "production" ? {
12704
13054
  name: "1ol8kzq",
@@ -12706,7 +13056,7 @@ const tableFilterLayoutStyles = {
12706
13056
  } : {
12707
13057
  name: "bcekwq-filterActions",
12708
13058
  styles: "display:flex;gap:var(--table-filter-layout-item-gap);margin-left:var(--table-filter-layout-group-margin);label:filterActions;",
12709
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
13059
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$7
12710
13060
  }
12711
13061
  };
12712
13062
  const TableFilterLayout = /*#__PURE__*/forwardRef(function TableFilterLayout(_ref, ref) {
@@ -12769,7 +13119,7 @@ const TableHeader = /*#__PURE__*/forwardRef(function TableHeader(_ref2, ref) {
12769
13119
  let {
12770
13120
  children,
12771
13121
  ellipsis = false,
12772
- multiline: multilineProp,
13122
+ multiline = false,
12773
13123
  sortable,
12774
13124
  sortDirection,
12775
13125
  onToggleSort,
@@ -12782,8 +13132,6 @@ const TableHeader = /*#__PURE__*/forwardRef(function TableHeader(_ref2, ref) {
12782
13132
  wrapContent = true,
12783
13133
  ...rest
12784
13134
  } = _ref2;
12785
- const defaultToEllipsisSAFE = safex('databricks.fe.designsystem.defaultTableCellToEllipsis', false);
12786
- const multiline = multilineProp !== null && multilineProp !== void 0 ? multilineProp : !defaultToEllipsisSAFE;
12787
13135
  const {
12788
13136
  size,
12789
13137
  grid
@@ -12810,15 +13158,16 @@ const TableHeader = /*#__PURE__*/forwardRef(function TableHeader(_ref2, ref) {
12810
13158
  ariaSort = 'none';
12811
13159
  }
12812
13160
  }
13161
+ const sortIconOnLeft = align === 'right';
12813
13162
  let typographySize = 'md';
12814
13163
  if (size === 'small') {
12815
13164
  typographySize = 'sm';
12816
13165
  }
12817
13166
  const content = wrapContent ? jsx(Typography.Text, {
12818
13167
  className: "table-header-text",
12819
- ellipsis: defaultToEllipsisSAFE ? !multiline : ellipsis,
13168
+ ellipsis: !multiline,
12820
13169
  size: typographySize,
12821
- title: (defaultToEllipsisSAFE ? !multiline : ellipsis) && typeof children === 'string' && children || undefined,
13170
+ title: !multiline && typeof children === 'string' && children || undefined,
12822
13171
  children: children
12823
13172
  }) : children;
12824
13173
  const resizeHandle = resizable ? jsx(TableHeaderResizeHandle, {
@@ -12851,11 +13200,15 @@ const TableHeader = /*#__PURE__*/forwardRef(function TableHeader(_ref2, ref) {
12851
13200
  return onToggleSort === null || onToggleSort === void 0 ? void 0 : onToggleSort(event);
12852
13201
  }
12853
13202
  },
12854
- children: [content, jsx("span", {
13203
+ children: [sortIconOnLeft ? jsx("span", {
12855
13204
  className: "table-header-icon-container",
12856
- css: [tableStyles$1.sortHeaderIcon, process.env.NODE_ENV === "production" ? "" : ";label:TableHeader;"],
13205
+ css: [tableStyles$1.sortHeaderIconOnLeft, process.env.NODE_ENV === "production" ? "" : ";label:TableHeader;"],
12857
13206
  children: sortIcon
12858
- })]
13207
+ }) : null, content, !sortIconOnLeft ? jsx("span", {
13208
+ className: "table-header-icon-container",
13209
+ css: [tableStyles$1.sortHeaderIconOnRight, process.env.NODE_ENV === "production" ? "" : ";label:TableHeader;"],
13210
+ children: sortIcon
13211
+ }) : null]
12859
13212
  }) : content, resizeHandle]
12860
13213
  });
12861
13214
  });
@@ -13226,11 +13579,8 @@ function Tag(props) {
13226
13579
  ...attributes,
13227
13580
  css: styles.tag,
13228
13581
  children: jsxs("div", {
13229
- css: styles.content,
13230
- children: [jsx("div", {
13231
- css: styles.text,
13232
- children: children
13233
- }), closable && jsx("button", {
13582
+ css: [styles.content, styles.text, process.env.NODE_ENV === "production" ? "" : ";label:Tag;"],
13583
+ children: [children, closable && jsx("button", {
13234
13584
  css: styles.close,
13235
13585
  tabIndex: 0,
13236
13586
  onClick: e => {
@@ -13666,5 +14016,977 @@ const Tree = /*#__PURE__*/forwardRef(function Tree(_ref, ref) {
13666
14016
  });
13667
14017
  });
13668
14018
 
13669
- export { AccessibleContainer, Accordion, AccordionPanel, Alert, AlignCenterIcon, AlignLeftIcon, AlignRightIcon, AppIcon, ApplyDesignSystemContextOverrides, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, ArrowsUpDownIcon, AutoComplete, BarChartIcon, BarGroupedIcon, BarStackedIcon, BeakerIcon, BinaryIcon, BoldIcon, BookIcon, BookmarkFillIcon, BookmarkIcon, BooksIcon, BracketsCurlyIcon, BracketsSquareIcon, BracketsXIcon, BranchIcon, Breadcrumb, BriefcaseFillIcon, BriefcaseIcon, Button, CalendarClockIcon, CalendarEventIcon, CalendarIcon, CaretDownSquareIcon, CaretUpSquareIcon, CatalogIcon, CatalogOffIcon, ChartLineIcon, CheckCircleBadgeIcon, CheckCircleFillIcon, CheckCircleIcon, CheckIcon, CheckLineIcon, Checkbox, CheckboxIcon, ChecklistIcon, ChevronDoubleDownIcon, ChevronDoubleLeftIcon, ChevronDoubleRightIcon, ChevronDoubleUpIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleIcon, ClipboardIcon, ClockIcon, CloseIcon, CloudDownloadIcon, CloudIcon, CloudKeyIcon, CloudModelIcon, CloudOffIcon, CloudUploadIcon, CodeIcon, Col, ColorFillIcon, ColumnIcon, ColumnsIcon, ConnectIcon, Content, CopyIcon, CursorPagination, CursorTypeIcon, DIcon, DU_BOIS_ENABLE_ANIMATION_CLASSNAME, DagIcon, DangerFillIcon, DangerIcon, DangerModal, DashIcon, DashboardIcon, DataIcon, DatabaseIcon, DecimalIcon, DesignSystemAntDConfigProvider, DialogCombobox, DialogComboboxButtonContainer, DialogComboboxContent, DialogComboboxCountBadge, DialogComboboxFooter, DialogComboboxHintRow, DialogComboboxLoadingSpinner, DialogComboboxOptionControlledList, DialogComboboxOptionList, DialogComboboxOptionListCheckboxItem, DialogComboboxOptionListSearch, DialogComboboxOptionListSelectItem, DialogComboboxSectionHeader, DialogComboboxSeparator, DialogComboboxTrigger, DotsCircleIcon, DownloadIcon, DragIcon, Drawer, Dropdown, DuboisDatePicker, Empty, ExpandLessIcon, ExpandMoreIcon, FileCodeIcon, FileDocumentIcon, FileIcon, FileImageIcon, FileModelIcon, FilterIcon, FloatIcon, FolderBranchIcon, FolderCloudFilledIcon, FolderCloudIcon, FolderFillIcon, FolderIcon, FontIcon, ForkIcon, Form, FormDubois, FormUI, FullscreenExitIcon, FullscreenIcon, FunctionIcon, GearFillIcon, GearIcon, GenericSkeleton, GiftIcon, GitCommitIcon, GlobeIcon, GridDashIcon, GridIcon, H1Icon, H2Icon, H3Icon, Header$1 as Header, HistoryIcon, HomeIcon, Icon, ImageIcon, IndentDecreaseIcon, IndentIncreaseIcon, InfinityIcon, InfoFillIcon, InfoIcon, InfoTooltip, Input, ItalicIcon, KeyIcon, KeyboardIcon, LayerIcon, Layout, LegacyDatePicker, LegacyPopover, LegacySkeleton, LegacyTable, LettersIcon, LibrariesIcon, LightningIcon, LinkIcon, LinkOffIcon, ListBorderIcon, ListIcon, LoadingIcon, LockFillIcon, LockIcon, LockUnlockedIcon, MIcon, Menu, MenuIcon, MinusBoxIcon, MinusCircleFillIcon, MinusCircleIcon, Modal, ModelsIcon, Nav, NavButton, NoIcon, NotebookIcon, Notification, NotificationIcon, NotificationOffIcon, NumbersIcon, OfficeIcon, OptGroup, Option, OverflowIcon, PageBottomIcon, PageFirstIcon, PageLastIcon, PageTopIcon, PageWrapper, Pagination, Panel, PanelBody, PanelHeader, PanelHeaderButtons, PanelHeaderTitle, ParagraphSkeleton, PencilIcon, PinCancelIcon, PinFillIcon, PinIcon, PipelineIcon, PlayCircleFillIcon, PlayCircleIcon, PlayIcon, PlugIcon, PlusCircleFillIcon, PlusCircleIcon, PlusIcon, PlusSquareIcon, Popover, QueryEditorIcon, QueryIcon, QuestionMarkFillIcon, QuestionMarkIcon, RHFControlledComponents, ROW_GUTTER_SIZE, Radio, ReaderModeIcon, RedoIcon, RefreshIcon, RestoreAntDDefaultClsPrefix, RobotIcon, Row, SaveIcon, SchoolIcon, SearchIcon, SecurityIcon, SegmentedControlButton, SegmentedControlGroup, Select, SelectOptGroup, SelectOption, SelectV2, SelectV2Content, SelectV2Option, SelectV2OptionGroup, SelectV2Trigger, ShareIcon, Sidebar, SidebarAutoIcon, SidebarCollapseIcon, SidebarExpandIcon, SidebarIcon, SlidersIcon, SortAlphabeticalAscendingIcon, SortAlphabeticalDescendingIcon, SortAlphabeticalLeftIcon, SortAlphabeticalRightIcon, SortAscendingIcon, SortDescendingIcon, SortUnsortedIcon, Space, Spacer, SpeechBubbleIcon, SpeechBubblePlusIcon, Spinner, SplitButton, StarFillIcon, StarIcon, StopCircleFillIcon, StopCircleIcon, StopIcon, StorefrontIcon, StreamIcon, Switch, SyncIcon, TabPane, Table, TableCell, TableContext, TableFilterInput, TableFilterLayout, TableHeader, TableIcon, TableInfinityIcon, TableLightningIcon, TableRow, TableRowAction, TableRowContext, TableRowMenuContainer, TableRowSelectCell, TableSkeleton, TableSkeletonRows, TableViewIcon, Tabs, Tag, TextBoxIcon, ThumbsDownIcon, ThumbsUpIcon, TitleSkeleton, ToggleButton, Tooltip, TrashIcon, Tree, TreeIcon, Typography, UnderlineIcon, UndoIcon, UploadIcon, UsbIcon, UserBadgeIcon, UserCircleIcon, UserGroupIcon, UserIcon, VisibleIcon, VisibleOffIcon, WarningFillIcon, WarningIcon, WorkflowsIcon, WorkspacesIcon, XCircleFillIcon, XCircleIcon, ZoomInIcon, ZoomOutIcon, __INTERNAL_DO_NOT_USE__FormItem, __INTERNAL_DO_NOT_USE__Group, __INTERNAL_DO_NOT_USE__HorizontalGroup, __INTERNAL_DO_NOT_USE__VerticalGroup, getAnimationCss, getPaginationEmotionStyles, getRadioStyles, getTabEmotionStyles, getValidationStateColor, getWrapperStyle, importantify, useDesignSystemFlags, useDesignSystemTheme, useLegacyNotification, useThemedStyles, visuallyHidden, withNotifications };
14019
+ const typeaheadComboboxContextDefaults = {
14020
+ isInsideTypeaheadCombobox: false,
14021
+ multiSelect: false
14022
+ };
14023
+ const TypeaheadComboboxContext = /*#__PURE__*/createContext(typeaheadComboboxContextDefaults);
14024
+ const TypeaheadComboboxContextProvider = _ref => {
14025
+ let {
14026
+ children,
14027
+ value
14028
+ } = _ref;
14029
+ return jsx(TypeaheadComboboxContext.Provider, {
14030
+ value: value,
14031
+ children: children
14032
+ });
14033
+ };
14034
+
14035
+ const TypeaheadComboboxRoot = /*#__PURE__*/forwardRef((_ref, ref) => {
14036
+ let {
14037
+ comboboxState,
14038
+ multiSelect = false,
14039
+ children,
14040
+ ...props
14041
+ } = _ref;
14042
+ const {
14043
+ refs,
14044
+ floatingStyles
14045
+ } = useFloating({
14046
+ whileElementsMounted: autoUpdate,
14047
+ middleware: [offset(4), flip(), shift()],
14048
+ placement: 'bottom-start'
14049
+ });
14050
+ return jsx(TypeaheadComboboxContextProvider, {
14051
+ value: {
14052
+ multiSelect,
14053
+ isInsideTypeaheadCombobox: true,
14054
+ floatingUiRefs: refs,
14055
+ floatingStyles: floatingStyles
14056
+ },
14057
+ children: jsx("div", {
14058
+ ...comboboxState.getComboboxProps({}, {
14059
+ suppressRefError: true
14060
+ }),
14061
+ ...props,
14062
+ ref: ref,
14063
+ children: children
14064
+ })
14065
+ });
14066
+ });
14067
+
14068
+ function useComboboxState(_ref) {
14069
+ let {
14070
+ allItems,
14071
+ items,
14072
+ itemToString,
14073
+ onIsOpenChange,
14074
+ ...props
14075
+ } = _ref;
14076
+ function getFilteredItems(inputValue) {
14077
+ var _inputValue$toLowerCa;
14078
+ const lowerCasedInputValue = (_inputValue$toLowerCa = inputValue === null || inputValue === void 0 ? void 0 : inputValue.toLowerCase()) !== null && _inputValue$toLowerCa !== void 0 ? _inputValue$toLowerCa : '';
14079
+ return allItems.filter(item => !inputValue || props.matcher(item, lowerCasedInputValue));
14080
+ }
14081
+ const comboboxState = useCombobox({
14082
+ onIsOpenChange: onIsOpenChange,
14083
+ onInputValueChange: props.multiSelect ? _ref2 => {
14084
+ let {
14085
+ inputValue
14086
+ } = _ref2;
14087
+ return inputValue !== undefined && props.setInputValue(inputValue);
14088
+ } : _ref3 => {
14089
+ let {
14090
+ inputValue
14091
+ } = _ref3;
14092
+ return props.setItems(getFilteredItems(inputValue));
14093
+ },
14094
+ items: items,
14095
+ itemToString(item) {
14096
+ return item ? itemToString ? itemToString(item) : item.toString() : '';
14097
+ },
14098
+ defaultHighlightedIndex: props.multiSelect ? 0 : undefined,
14099
+ // after selection for multiselect, highlight the first item.
14100
+ scrollIntoView: () => {},
14101
+ // disabling scroll because floating-ui repositions the menu
14102
+ selectedItem: props.multiSelect ? null : undefined,
14103
+ // useMultipleSelection will handle the item selection for multiselect
14104
+ stateReducer(state, actionAndChanges) {
14105
+ const {
14106
+ changes,
14107
+ type
14108
+ } = actionAndChanges;
14109
+ switch (type) {
14110
+ case useCombobox.stateChangeTypes.InputBlur:
14111
+ // If input is empty, clear selection
14112
+ if (!props.multiSelect && state.inputValue === '') {
14113
+ return {};
14114
+ } else {
14115
+ return changes;
14116
+ }
14117
+ case useCombobox.stateChangeTypes.InputKeyDownEnter:
14118
+ case useCombobox.stateChangeTypes.ItemClick:
14119
+ return {
14120
+ ...changes,
14121
+ highlightedIndex: 0,
14122
+ // with the first option highlighted.
14123
+ isOpen: props.multiSelect ? true : false // for multiselect, keep the menu open after selection.
14124
+ };
14125
+
14126
+ default:
14127
+ return changes;
14128
+ }
14129
+ },
14130
+ onStateChange: props.multiSelect ? _ref4 => {
14131
+ let {
14132
+ type,
14133
+ selectedItem: newSelectedItem,
14134
+ inputValue: newInputValue
14135
+ } = _ref4;
14136
+ switch (type) {
14137
+ case useCombobox.stateChangeTypes.InputKeyDownEnter:
14138
+ case useCombobox.stateChangeTypes.ItemClick:
14139
+ case useCombobox.stateChangeTypes.InputBlur:
14140
+ if (newSelectedItem) {
14141
+ props.setSelectedItems([...props.selectedItems, newSelectedItem]);
14142
+ props.setInputValue('');
14143
+ }
14144
+ break;
14145
+ case useCombobox.stateChangeTypes.InputChange:
14146
+ props.setInputValue(newInputValue !== null && newInputValue !== void 0 ? newInputValue : '');
14147
+ break;
14148
+ }
14149
+ // Unselect when clicking selected item
14150
+ if (newSelectedItem && props.selectedItems.includes(newSelectedItem)) {
14151
+ props.setSelectedItems(props.selectedItems.filter(item => item !== newSelectedItem));
14152
+ }
14153
+ } : undefined
14154
+ });
14155
+ return comboboxState;
14156
+ }
14157
+ function useMultipleSelectionState(selectedItems, setSelectedItems) {
14158
+ return useMultipleSelection({
14159
+ selectedItems,
14160
+ onStateChange(_ref5) {
14161
+ let {
14162
+ selectedItems: newSelectedItems,
14163
+ type
14164
+ } = _ref5;
14165
+ switch (type) {
14166
+ case useMultipleSelection.stateChangeTypes.SelectedItemKeyDownBackspace:
14167
+ case useMultipleSelection.stateChangeTypes.SelectedItemKeyDownDelete:
14168
+ case useMultipleSelection.stateChangeTypes.DropdownKeyDownBackspace:
14169
+ case useMultipleSelection.stateChangeTypes.FunctionRemoveSelectedItem:
14170
+ setSelectedItems(newSelectedItems || []);
14171
+ break;
14172
+ }
14173
+ }
14174
+ });
14175
+ }
14176
+
14177
+ const useTypeaheadComboboxContext = () => {
14178
+ return useContext(TypeaheadComboboxContext);
14179
+ };
14180
+
14181
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$6() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14182
+ var _ref$2 = process.env.NODE_ENV === "production" ? {
14183
+ name: "xv0ss6",
14184
+ styles: "padding:0;margin:0;display:flex;flex-direction:column;align-items:flex-start;position:absolute"
14185
+ } : {
14186
+ name: "1sd733r-getTypeaheadComboboxMenuStyles",
14187
+ styles: "padding:0;margin:0;display:flex;flex-direction:column;align-items:flex-start;position:absolute;label:getTypeaheadComboboxMenuStyles;",
14188
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$6
14189
+ };
14190
+ const getTypeaheadComboboxMenuStyles = () => {
14191
+ return _ref$2;
14192
+ };
14193
+ const TypeaheadComboboxMenu = /*#__PURE__*/forwardRef((_ref2, ref) => {
14194
+ let {
14195
+ comboboxState,
14196
+ loading,
14197
+ width,
14198
+ minWidth = 240,
14199
+ maxWidth,
14200
+ minHeight,
14201
+ maxHeight,
14202
+ listWrapperHeight,
14203
+ virtualizerRef,
14204
+ children,
14205
+ ...restProps
14206
+ } = _ref2;
14207
+ const {
14208
+ getMenuProps,
14209
+ isOpen
14210
+ } = comboboxState;
14211
+ const {
14212
+ ref: downshiftRef,
14213
+ ...downshiftProps
14214
+ } = getMenuProps({}, {
14215
+ suppressRefError: true
14216
+ });
14217
+ const {
14218
+ floatingUiRefs,
14219
+ floatingStyles,
14220
+ isInsideTypeaheadCombobox
14221
+ } = useTypeaheadComboboxContext();
14222
+ if (!isInsideTypeaheadCombobox) {
14223
+ throw new Error('`TypeaheadComboboxMenu` must be used within `TypeaheadCombobox`');
14224
+ }
14225
+ const mergedRef = useMergeRefs([ref, downshiftRef, floatingUiRefs === null || floatingUiRefs === void 0 ? void 0 : floatingUiRefs.setFloating]);
14226
+ const {
14227
+ theme
14228
+ } = useDesignSystemTheme();
14229
+ const {
14230
+ getPopupContainer
14231
+ } = useDesignSystemContext();
14232
+ if (!isOpen) return null;
14233
+ const hasResults = children && Children.toArray(children).some(child => {
14234
+ if ( /*#__PURE__*/React__default.isValidElement(child)) {
14235
+ var _child$props$__EMOTIO, _child$props$__EMOTIO2;
14236
+ const childType = (_child$props$__EMOTIO = (_child$props$__EMOTIO2 = child.props['__EMOTION_TYPE_PLEASE_DO_NOT_USE__']) === null || _child$props$__EMOTIO2 === void 0 ? void 0 : _child$props$__EMOTIO2.defaultProps._TYPE) !== null && _child$props$__EMOTIO !== void 0 ? _child$props$__EMOTIO : child.props._TYPE;
14237
+ return ['TypeaheadComboboxMenuItem', 'TypeaheadComboboxCheckboxItem'].includes(childType);
14238
+ }
14239
+ return false;
14240
+ });
14241
+ const footer = Children.toArray(children).filter(child => /*#__PURE__*/React__default.isValidElement(child) && child.props._TYPE === 'TypeaheadComboboxFooter');
14242
+ return /*#__PURE__*/createPortal(jsx("ul", {
14243
+ "aria-busy": loading,
14244
+ ...downshiftProps,
14245
+ ref: mergedRef,
14246
+ css: [getComboboxContentWrapperStyles(theme, {
14247
+ maxHeight,
14248
+ maxWidth,
14249
+ minHeight,
14250
+ minWidth,
14251
+ width
14252
+ }), getTypeaheadComboboxMenuStyles(), process.env.NODE_ENV === "production" ? "" : ";label:TypeaheadComboboxMenu;"],
14253
+ style: {
14254
+ ...floatingStyles
14255
+ },
14256
+ ...restProps,
14257
+ children: loading ? jsx(LoadingSpinner, {
14258
+ "aria-label": "Loading",
14259
+ alt: "Loading spinner"
14260
+ }) : hasResults ? jsx("div", {
14261
+ ref: virtualizerRef,
14262
+ style: {
14263
+ position: 'relative',
14264
+ width: '100%',
14265
+ ...(listWrapperHeight && {
14266
+ height: listWrapperHeight
14267
+ })
14268
+ },
14269
+ children: children
14270
+ }) : jsxs(Fragment, {
14271
+ children: [jsx(EmptyResults, {}), footer]
14272
+ })
14273
+ }), getPopupContainer ? getPopupContainer() : document.body);
14274
+ });
14275
+
14276
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$5() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14277
+ const getMenuItemStyles = (theme, isHighlighted, disabled) => {
14278
+ return /*#__PURE__*/css({
14279
+ ...(disabled && {
14280
+ pointerEvents: 'none',
14281
+ color: theme.colors.actionDisabledText
14282
+ }),
14283
+ ...(isHighlighted && {
14284
+ background: theme.colors.actionTertiaryBackgroundHover
14285
+ })
14286
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getMenuItemStyles;");
14287
+ };
14288
+ const getLabelStyles = (theme, textOverflowMode) => {
14289
+ return /*#__PURE__*/css({
14290
+ marginLeft: theme.spacing.sm,
14291
+ fontSize: theme.typography.fontSizeBase,
14292
+ fontStyle: 'normal',
14293
+ fontWeight: 400,
14294
+ cursor: 'pointer',
14295
+ overflow: 'hidden',
14296
+ wordBreak: 'break-word',
14297
+ ...(textOverflowMode === 'ellipsis' && {
14298
+ textOverflow: 'ellipsis',
14299
+ whiteSpace: 'nowrap'
14300
+ })
14301
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getLabelStyles;");
14302
+ };
14303
+ var _ref2$4 = process.env.NODE_ENV === "production" ? {
14304
+ name: "kjj0ot",
14305
+ styles: "padding-top:2px"
14306
+ } : {
14307
+ name: "1uez6s6-TypeaheadComboboxMenuItem",
14308
+ styles: "padding-top:2px;label:TypeaheadComboboxMenuItem;",
14309
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
14310
+ };
14311
+ var _ref3 = process.env.NODE_ENV === "production" ? {
14312
+ name: "zjik7",
14313
+ styles: "display:flex"
14314
+ } : {
14315
+ name: "1p9uv37-TypeaheadComboboxMenuItem",
14316
+ styles: "display:flex;label:TypeaheadComboboxMenuItem;",
14317
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$5
14318
+ };
14319
+ const TypeaheadComboboxMenuItem = /*#__PURE__*/forwardRef((_ref, ref) => {
14320
+ let {
14321
+ item,
14322
+ index,
14323
+ comboboxState,
14324
+ textOverflowMode = 'multiline',
14325
+ isDisabled,
14326
+ disabledReason,
14327
+ hintContent,
14328
+ children,
14329
+ ...restProps
14330
+ } = _ref;
14331
+ const {
14332
+ selectedItem,
14333
+ highlightedIndex,
14334
+ getItemProps
14335
+ } = comboboxState;
14336
+ const isSelected = selectedItem === item;
14337
+ const isHighlighted = highlightedIndex === index;
14338
+ const {
14339
+ theme
14340
+ } = useDesignSystemTheme();
14341
+ return jsxs("li", {
14342
+ ref: ref,
14343
+ role: "option",
14344
+ "aria-selected": isSelected,
14345
+ disabled: isDisabled,
14346
+ css: [getComboboxOptionItemWrapperStyles(theme), getMenuItemStyles(theme, isHighlighted, isDisabled), process.env.NODE_ENV === "production" ? "" : ";label:TypeaheadComboboxMenuItem;"],
14347
+ ...getItemProps({
14348
+ item,
14349
+ index,
14350
+ disabled: isDisabled
14351
+ }),
14352
+ ...restProps,
14353
+ children: [isSelected ? jsx(CheckIcon, {
14354
+ css: _ref2$4
14355
+ }) : jsx("div", {
14356
+ style: {
14357
+ width: 16,
14358
+ flexShrink: 0
14359
+ }
14360
+ }), jsxs("label", {
14361
+ css: getLabelStyles(theme, textOverflowMode),
14362
+ children: [isDisabled && disabledReason ? jsxs("div", {
14363
+ css: _ref3,
14364
+ children: [jsx("div", {
14365
+ children: children
14366
+ }), jsx("div", {
14367
+ css: getInfoIconStyles(theme),
14368
+ children: jsx(InfoTooltip, {
14369
+ title: disabledReason
14370
+ })
14371
+ })]
14372
+ }) : children, jsx(HintRow, {
14373
+ disabled: isDisabled,
14374
+ children: hintContent
14375
+ })]
14376
+ })]
14377
+ });
14378
+ });
14379
+ TypeaheadComboboxMenuItem.defaultProps = {
14380
+ _TYPE: 'TypeaheadComboboxMenuItem'
14381
+ };
14382
+
14383
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$4() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14384
+ var _ref2$3 = process.env.NODE_ENV === "production" ? {
14385
+ name: "zjik7",
14386
+ styles: "display:flex"
14387
+ } : {
14388
+ name: "1pneh3l-TypeaheadComboboxCheckboxItem",
14389
+ styles: "display:flex;label:TypeaheadComboboxCheckboxItem;",
14390
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$4
14391
+ };
14392
+ const TypeaheadComboboxCheckboxItem = /*#__PURE__*/forwardRef((_ref, ref) => {
14393
+ let {
14394
+ item,
14395
+ index,
14396
+ comboboxState,
14397
+ selectedItems,
14398
+ textOverflowMode = 'multiline',
14399
+ isDisabled,
14400
+ disabledReason,
14401
+ hintContent,
14402
+ children,
14403
+ ...restProps
14404
+ } = _ref;
14405
+ const {
14406
+ highlightedIndex,
14407
+ getItemProps
14408
+ } = comboboxState;
14409
+ const isHighlighted = highlightedIndex === index;
14410
+ const {
14411
+ theme
14412
+ } = useDesignSystemTheme();
14413
+ const isSelected = selectedItems.includes(item);
14414
+ return jsx("li", {
14415
+ ref: ref,
14416
+ role: "option",
14417
+ "aria-selected": isSelected,
14418
+ disabled: isDisabled,
14419
+ css: [getComboboxOptionItemWrapperStyles(theme), getMenuItemStyles(theme, isHighlighted, isDisabled), process.env.NODE_ENV === "production" ? "" : ";label:TypeaheadComboboxCheckboxItem;"],
14420
+ ...getItemProps({
14421
+ item,
14422
+ index,
14423
+ disabled: isDisabled
14424
+ }),
14425
+ ...restProps,
14426
+ children: jsx(Checkbox, {
14427
+ disabled: isDisabled,
14428
+ isChecked: isSelected,
14429
+ css: getCheckboxStyles(theme, textOverflowMode),
14430
+ tabIndex: -1
14431
+ // Needed because Antd handles keyboard inputs as clicks
14432
+ ,
14433
+ onClick: e => {
14434
+ e.stopPropagation();
14435
+ },
14436
+ children: jsxs("label", {
14437
+ children: [isDisabled && disabledReason ? jsxs("div", {
14438
+ css: _ref2$3,
14439
+ children: [jsx("div", {
14440
+ children: children
14441
+ }), jsx("div", {
14442
+ css: getInfoIconStyles(theme),
14443
+ children: jsx(InfoTooltip, {
14444
+ title: disabledReason
14445
+ })
14446
+ })]
14447
+ }) : children, jsx(HintRow, {
14448
+ disabled: isDisabled,
14449
+ children: hintContent
14450
+ })]
14451
+ })
14452
+ })
14453
+ });
14454
+ });
14455
+ TypeaheadComboboxCheckboxItem.defaultProps = {
14456
+ _TYPE: 'TypeaheadComboboxCheckboxItem'
14457
+ };
14458
+
14459
+ const getToggleButtonStyles = (theme, disabled) => {
14460
+ return /*#__PURE__*/css({
14461
+ cursor: 'pointer',
14462
+ userSelect: 'none',
14463
+ color: theme.colors.textSecondary,
14464
+ backgroundColor: 'transparent',
14465
+ border: 'none',
14466
+ padding: 0,
14467
+ marginLeft: theme.spacing.xs,
14468
+ height: 16,
14469
+ width: 16,
14470
+ ...(disabled && {
14471
+ color: theme.colors.actionDisabledText
14472
+ })
14473
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getToggleButtonStyles;");
14474
+ };
14475
+ const TypeaheadComboboxToggleButton = /*#__PURE__*/React__default.forwardRef((_ref, ref) => {
14476
+ let {
14477
+ disabled,
14478
+ ...restProps
14479
+ } = _ref;
14480
+ const {
14481
+ theme
14482
+ } = useDesignSystemTheme();
14483
+ const {
14484
+ onClick
14485
+ } = restProps;
14486
+ function handleClick(e) {
14487
+ e.stopPropagation();
14488
+ onClick(e);
14489
+ }
14490
+ return jsx("button", {
14491
+ "aria-label": "toggle menu",
14492
+ ref: ref,
14493
+ css: getToggleButtonStyles(theme, disabled),
14494
+ ...restProps,
14495
+ onClick: handleClick,
14496
+ children: jsx(ChevronDownIcon, {})
14497
+ });
14498
+ });
14499
+
14500
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$3() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14501
+ var _ref2$2 = process.env.NODE_ENV === "production" ? {
14502
+ name: "l1fpjx",
14503
+ styles: "pointer-events:all;vertical-align:text-top"
14504
+ } : {
14505
+ name: "4edanz-TypeaheadComboboxControls",
14506
+ styles: "pointer-events:all;vertical-align:text-top;label:TypeaheadComboboxControls;",
14507
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$3
14508
+ };
14509
+ const TypeaheadComboboxControls = _ref => {
14510
+ let {
14511
+ getDownshiftToggleButtonProps,
14512
+ showClearSelectionButton,
14513
+ handleClear,
14514
+ disabled
14515
+ } = _ref;
14516
+ const {
14517
+ theme
14518
+ } = useDesignSystemTheme();
14519
+ return jsxs("div", {
14520
+ css: /*#__PURE__*/css({
14521
+ position: 'absolute',
14522
+ top: theme.spacing.sm,
14523
+ right: 7,
14524
+ height: 16
14525
+ }, process.env.NODE_ENV === "production" ? "" : ";label:TypeaheadComboboxControls;"),
14526
+ children: [showClearSelectionButton && jsx(ClearSelectionButton, {
14527
+ onClick: handleClear,
14528
+ css: _ref2$2
14529
+ }), jsx(TypeaheadComboboxToggleButton, {
14530
+ ...getDownshiftToggleButtonProps(),
14531
+ disabled: disabled
14532
+ })]
14533
+ });
14534
+ };
14535
+
14536
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$2() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14537
+ var _ref$1 = process.env.NODE_ENV === "production" ? {
14538
+ name: "1lb3761",
14539
+ styles: "display:flex;position:relative;width:fit-content"
14540
+ } : {
14541
+ name: "rseyaw-getContainerStyles",
14542
+ styles: "display:flex;position:relative;width:fit-content;label:getContainerStyles;",
14543
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$2
14544
+ };
14545
+ const getContainerStyles$1 = () => {
14546
+ return _ref$1;
14547
+ };
14548
+ const getInputStyles$1 = theme => /*#__PURE__*/css({
14549
+ paddingRight: 52,
14550
+ width: '100%',
14551
+ minWidth: 72,
14552
+ '&:disabled': {
14553
+ border: 'none',
14554
+ backgroundColor: theme.colors.actionDisabledBackground,
14555
+ color: theme.colors.actionDisabledText
14556
+ },
14557
+ '&:not(:disabled)': {
14558
+ backgroundColor: 'transparent'
14559
+ }
14560
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getInputStyles;");
14561
+ const TypeaheadComboboxInput = /*#__PURE__*/forwardRef((_ref2, ref) => {
14562
+ let {
14563
+ comboboxState,
14564
+ allowClear = true,
14565
+ ...restProps
14566
+ } = _ref2;
14567
+ const {
14568
+ isInsideTypeaheadCombobox,
14569
+ floatingUiRefs
14570
+ } = useTypeaheadComboboxContext();
14571
+ if (!isInsideTypeaheadCombobox) {
14572
+ throw new Error('`TypeaheadComboboxInput` must be used within `TypeaheadCombobox`');
14573
+ }
14574
+ const {
14575
+ getInputProps,
14576
+ getToggleButtonProps,
14577
+ toggleMenu,
14578
+ inputValue,
14579
+ setInputValue,
14580
+ reset
14581
+ } = comboboxState;
14582
+ const {
14583
+ ref: downshiftRef,
14584
+ ...downshiftProps
14585
+ } = getInputProps({}, {
14586
+ suppressRefError: true
14587
+ });
14588
+ const mergedRef = useMergeRefs([ref, downshiftRef]);
14589
+ const {
14590
+ theme
14591
+ } = useDesignSystemTheme();
14592
+ const handleClick = () => {
14593
+ toggleMenu();
14594
+ };
14595
+ const handleClear = () => {
14596
+ setInputValue('');
14597
+ reset();
14598
+ };
14599
+ return jsxs("div", {
14600
+ ref: floatingUiRefs === null || floatingUiRefs === void 0 ? void 0 : floatingUiRefs.setReference,
14601
+ css: getContainerStyles$1(),
14602
+ children: [jsx(Input, {
14603
+ ref: mergedRef,
14604
+ ...downshiftProps,
14605
+ onClick: handleClick,
14606
+ css: getInputStyles$1(theme),
14607
+ ...restProps
14608
+ }), jsx(TypeaheadComboboxControls, {
14609
+ getDownshiftToggleButtonProps: getToggleButtonProps,
14610
+ showClearSelectionButton: allowClear && Boolean(inputValue),
14611
+ handleClear: handleClear,
14612
+ disabled: restProps.disabled
14613
+ })]
14614
+ });
14615
+ });
14616
+
14617
+ function _EMOTION_STRINGIFIED_CSS_ERROR__$1() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14618
+ const getSelectedItemStyles = theme => {
14619
+ return /*#__PURE__*/css({
14620
+ backgroundColor: theme.colors.tagDefault,
14621
+ borderRadius: theme.general.borderRadiusBase,
14622
+ color: theme.colors.textPrimary,
14623
+ lineHeight: theme.typography.lineHeightBase,
14624
+ fontSize: theme.typography.fontSizeBase,
14625
+ marginTop: 2,
14626
+ marginBottom: 2,
14627
+ marginInlineEnd: theme.spacing.xs,
14628
+ paddingRight: 0,
14629
+ paddingTop: 0,
14630
+ paddingBottom: 0,
14631
+ paddingInlineStart: theme.spacing.xs,
14632
+ position: 'relative',
14633
+ flex: 'none',
14634
+ maxWidth: '100%'
14635
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getSelectedItemStyles;");
14636
+ };
14637
+ const getIconContainerStyles = theme => {
14638
+ return /*#__PURE__*/css({
14639
+ width: 16,
14640
+ height: 16,
14641
+ ':hover': {
14642
+ color: theme.colors.actionTertiaryTextHover,
14643
+ backgroundColor: theme.colors.tagHover
14644
+ }
14645
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getIconContainerStyles;");
14646
+ };
14647
+ const getXIconStyles = theme => {
14648
+ return /*#__PURE__*/css({
14649
+ fontSize: theme.typography.fontSizeSm,
14650
+ verticalAlign: '-1px',
14651
+ paddingLeft: theme.spacing.xs / 2,
14652
+ paddingRight: theme.spacing.xs / 2
14653
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getXIconStyles;");
14654
+ };
14655
+ var _ref2$1 = process.env.NODE_ENV === "production" ? {
14656
+ name: "2bhlo8",
14657
+ styles: "margin-right:2px"
14658
+ } : {
14659
+ name: "d61dng-TypeaheadComboboxSelectedItem",
14660
+ styles: "margin-right:2px;label:TypeaheadComboboxSelectedItem;",
14661
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__$1
14662
+ };
14663
+ const TypeaheadComboboxSelectedItem = /*#__PURE__*/forwardRef((_ref, ref) => {
14664
+ let {
14665
+ item,
14666
+ getSelectedItemProps,
14667
+ removeSelectedItem,
14668
+ ...restProps
14669
+ } = _ref;
14670
+ const {
14671
+ theme
14672
+ } = useDesignSystemTheme();
14673
+ return jsxs("span", {
14674
+ ...getSelectedItemProps({
14675
+ selectedItem: item
14676
+ }),
14677
+ css: getSelectedItemStyles(theme),
14678
+ ref: ref,
14679
+ ...restProps,
14680
+ children: [jsx("span", {
14681
+ css: _ref2$1,
14682
+ children: item.title
14683
+ }), jsx("span", {
14684
+ css: getIconContainerStyles(theme),
14685
+ children: jsx(CloseIcon, {
14686
+ "aria-hidden": "false",
14687
+ onClick: e => {
14688
+ e.stopPropagation();
14689
+ removeSelectedItem(item);
14690
+ },
14691
+ css: getXIconStyles(theme),
14692
+ role: "button",
14693
+ "aria-label": "Remove selected item"
14694
+ })
14695
+ })]
14696
+ });
14697
+ });
14698
+
14699
+ const CountBadge = _ref => {
14700
+ let {
14701
+ countStartAt,
14702
+ totalCount
14703
+ } = _ref;
14704
+ const {
14705
+ theme
14706
+ } = useDesignSystemTheme();
14707
+ return jsx("div", {
14708
+ css: [getSelectedItemStyles(theme), {
14709
+ paddingInlineEnd: theme.spacing.xs
14710
+ }, process.env.NODE_ENV === "production" ? "" : ";label:CountBadge;"],
14711
+ children: countStartAt ? `+${totalCount - countStartAt}` : totalCount
14712
+ });
14713
+ };
14714
+
14715
+ function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
14716
+ const getContainerStyles = (theme, width, maxHeight) => {
14717
+ return /*#__PURE__*/css({
14718
+ cursor: 'text',
14719
+ display: 'inline-block',
14720
+ border: `1px solid ${theme.colors.border}`,
14721
+ borderRadius: theme.general.borderRadiusBase,
14722
+ minHeight: 32,
14723
+ height: 'auto',
14724
+ minWidth: 0,
14725
+ ...(width ? {
14726
+ width
14727
+ } : {}),
14728
+ ...(maxHeight ? {
14729
+ maxHeight
14730
+ } : {}),
14731
+ padding: '5px 52px 5px 12px',
14732
+ position: 'relative',
14733
+ overflow: 'auto',
14734
+ textOverflow: 'ellipsis',
14735
+ '&:hover': {
14736
+ border: `1px solid ${theme.colors.actionPrimaryBackgroundHover}`
14737
+ },
14738
+ '&:focus-within': {
14739
+ outlineColor: theme.colors.actionPrimaryBackgroundDefault,
14740
+ outlineWidth: 2,
14741
+ outlineOffset: -2,
14742
+ outlineStyle: 'solid',
14743
+ boxShadow: 'none',
14744
+ borderColor: 'transparent'
14745
+ },
14746
+ '&:disabled': {
14747
+ backgroundColor: theme.colors.actionDisabledBackground,
14748
+ color: theme.colors.actionDisabledText
14749
+ }
14750
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getContainerStyles;");
14751
+ };
14752
+ var _ref2 = process.env.NODE_ENV === "production" ? {
14753
+ name: "a9xlat",
14754
+ styles: "display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative"
14755
+ } : {
14756
+ name: "azzs2i-getContentWrapperStyles",
14757
+ styles: "display:flex;flex:auto;flex-wrap:wrap;max-width:100%;position:relative;label:getContentWrapperStyles;",
14758
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
14759
+ };
14760
+ const getContentWrapperStyles = () => {
14761
+ return _ref2;
14762
+ };
14763
+ var _ref = process.env.NODE_ENV === "production" ? {
14764
+ name: "qngrd1",
14765
+ styles: "display:inline-flex;position:relative;max-width:100%;align-self:auto;flex:none"
14766
+ } : {
14767
+ name: "10x8s5t-getInputWrapperStyles",
14768
+ styles: "display:inline-flex;position:relative;max-width:100%;align-self:auto;flex:none;label:getInputWrapperStyles;",
14769
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
14770
+ };
14771
+ const getInputWrapperStyles = () => {
14772
+ return _ref;
14773
+ };
14774
+ const getInputStyles = theme => {
14775
+ return /*#__PURE__*/css({
14776
+ lineHeight: 20,
14777
+ height: 24,
14778
+ margin: 0,
14779
+ padding: 0,
14780
+ appearance: 'none',
14781
+ cursor: 'auto',
14782
+ width: '100%',
14783
+ backgroundColor: 'transparent',
14784
+ color: theme.colors.textPrimary,
14785
+ '&, &:hover, &:focus-visible': {
14786
+ border: 'none',
14787
+ outline: 'none'
14788
+ },
14789
+ '&::placeholder': {
14790
+ color: theme.colors.textPlaceholder
14791
+ }
14792
+ }, process.env.NODE_ENV === "production" ? "" : ";label:getInputStyles;");
14793
+ };
14794
+ var _ref4 = process.env.NODE_ENV === "production" ? {
14795
+ name: "1r88pt9",
14796
+ styles: "visibility:hidden;white-space:pre;position:absolute"
14797
+ } : {
14798
+ name: "1noplic-content",
14799
+ styles: "visibility:hidden;white-space:pre;position:absolute;label:content;",
14800
+ toString: _EMOTION_STRINGIFIED_CSS_ERROR__
14801
+ };
14802
+ const TypeaheadComboboxMultiSelectInput = /*#__PURE__*/forwardRef((_ref3, ref) => {
14803
+ var _measureRef$current, _itemsRef$current, _containerRef$current, _innerRef$current2;
14804
+ let {
14805
+ comboboxState,
14806
+ multipleSelectionState,
14807
+ selectedItems,
14808
+ setSelectedItems,
14809
+ getSelectedItemLabel,
14810
+ allowClear = true,
14811
+ showTagAfterValueCount = 20,
14812
+ width,
14813
+ maxHeight,
14814
+ ...restProps
14815
+ } = _ref3;
14816
+ const {
14817
+ isInsideTypeaheadCombobox
14818
+ } = useTypeaheadComboboxContext();
14819
+ if (!isInsideTypeaheadCombobox) {
14820
+ throw new Error('`TypeaheadComboboxMultiSelectInput` must be used within `TypeaheadCombobox`');
14821
+ }
14822
+ const {
14823
+ getInputProps,
14824
+ getToggleButtonProps,
14825
+ toggleMenu,
14826
+ inputValue,
14827
+ setInputValue
14828
+ } = comboboxState;
14829
+ const {
14830
+ getSelectedItemProps,
14831
+ getDropdownProps,
14832
+ removeSelectedItem
14833
+ } = multipleSelectionState;
14834
+ const {
14835
+ ref: downshiftRef,
14836
+ ...downshiftProps
14837
+ } = getInputProps(getDropdownProps({}, {
14838
+ suppressRefError: true
14839
+ }));
14840
+ const {
14841
+ floatingUiRefs
14842
+ } = useTypeaheadComboboxContext();
14843
+ const containerRef = useRef(null);
14844
+ const mergedContainerRef = useMergeRefs([containerRef, floatingUiRefs === null || floatingUiRefs === void 0 ? void 0 : floatingUiRefs.setReference]);
14845
+ const itemsRef = useRef(null);
14846
+ const measureRef = useRef(null);
14847
+ const innerRef = useRef(null);
14848
+ const mergedInputRef = useMergeRefs([ref, innerRef, downshiftRef]);
14849
+ const {
14850
+ theme
14851
+ } = useDesignSystemTheme();
14852
+ const [inputWidth, setInputWidth] = useState(0);
14853
+ const shouldShowCountBadge = selectedItems.length > showTagAfterValueCount;
14854
+ const [showTooltip, setShowTooltip] = useState(shouldShowCountBadge);
14855
+ const selectedItemsToRender = selectedItems.slice(0, showTagAfterValueCount);
14856
+ const handleClick = () => {
14857
+ var _innerRef$current;
14858
+ (_innerRef$current = innerRef.current) === null || _innerRef$current === void 0 ? void 0 : _innerRef$current.focus();
14859
+ toggleMenu();
14860
+ };
14861
+ const handleClear = () => {
14862
+ setInputValue('');
14863
+ setSelectedItems([]);
14864
+ };
14865
+
14866
+ // We measure width and set to the input immediately
14867
+ useLayoutEffect(() => {
14868
+ if (measureRef !== null && measureRef !== void 0 && measureRef.current) {
14869
+ const measuredWidth = measureRef.current.scrollWidth;
14870
+ setInputWidth(measuredWidth);
14871
+ }
14872
+ }, [measureRef === null || measureRef === void 0 ? void 0 : (_measureRef$current = measureRef.current) === null || _measureRef$current === void 0 ? void 0 : _measureRef$current.scrollWidth, selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length]);
14873
+
14874
+ // Determine whether to show tooltip
14875
+ useEffect(() => {
14876
+ let isPartiallyHidden = false;
14877
+ if (itemsRef.current && containerRef.current) {
14878
+ const {
14879
+ clientHeight: innerHeight
14880
+ } = itemsRef.current;
14881
+ const {
14882
+ clientHeight: outerHeight
14883
+ } = containerRef.current;
14884
+ isPartiallyHidden = innerHeight > outerHeight;
14885
+ }
14886
+ setShowTooltip(shouldShowCountBadge || isPartiallyHidden);
14887
+ }, [shouldShowCountBadge, (_itemsRef$current = itemsRef.current) === null || _itemsRef$current === void 0 ? void 0 : _itemsRef$current.clientHeight, (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.clientHeight]);
14888
+ const content = jsxs("div", {
14889
+ onClick: handleClick,
14890
+ ref: mergedContainerRef,
14891
+ css: getContainerStyles(theme, width, maxHeight),
14892
+ children: [jsxs("div", {
14893
+ ref: itemsRef,
14894
+ css: getContentWrapperStyles(),
14895
+ children: [selectedItemsToRender === null || selectedItemsToRender === void 0 ? void 0 : selectedItemsToRender.map((selectedItemForRender, index) => jsx(TypeaheadComboboxSelectedItem, {
14896
+ label: getSelectedItemLabel(selectedItemForRender),
14897
+ item: selectedItemForRender,
14898
+ getSelectedItemProps: getSelectedItemProps,
14899
+ removeSelectedItem: removeSelectedItem
14900
+ }, `selected-item-${index}`)), shouldShowCountBadge && jsx(CountBadge, {
14901
+ countStartAt: showTagAfterValueCount,
14902
+ totalCount: selectedItems.length,
14903
+ role: "status",
14904
+ "aria-label": "Selected options count"
14905
+ }), jsxs("div", {
14906
+ css: getInputWrapperStyles(),
14907
+ children: [jsx("input", {
14908
+ ...downshiftProps,
14909
+ ref: mergedInputRef,
14910
+ css: [getInputStyles(theme), {
14911
+ width: inputWidth
14912
+ }, process.env.NODE_ENV === "production" ? "" : ";label:content;"],
14913
+ ...restProps
14914
+ }), jsxs("span", {
14915
+ ref: measureRef,
14916
+ "aria-hidden": true,
14917
+ css: _ref4,
14918
+ children: [selectedItems !== null && selectedItems !== void 0 && selectedItems.length ? (_innerRef$current2 = innerRef.current) === null || _innerRef$current2 === void 0 ? void 0 : _innerRef$current2.value : restProps.placeholder, "\xA0"]
14919
+ })]
14920
+ })]
14921
+ }), jsx(TypeaheadComboboxControls, {
14922
+ getDownshiftToggleButtonProps: getToggleButtonProps,
14923
+ showClearSelectionButton: allowClear && (Boolean(inputValue) || selectedItems && selectedItems.length > 0),
14924
+ handleClear: handleClear,
14925
+ disabled: restProps.disabled
14926
+ })]
14927
+ });
14928
+ if (showTooltip && selectedItems.length > 0) {
14929
+ return jsx(Tooltip, {
14930
+ title: selectedItems.map(item => getSelectedItemLabel(item)).join(', '),
14931
+ children: content
14932
+ });
14933
+ }
14934
+ return content;
14935
+ });
14936
+
14937
+ const TypeaheadComboboxSectionHeader = _ref => {
14938
+ let {
14939
+ children,
14940
+ ...props
14941
+ } = _ref;
14942
+ const {
14943
+ isInsideTypeaheadCombobox
14944
+ } = useTypeaheadComboboxContext();
14945
+ if (!isInsideTypeaheadCombobox) {
14946
+ throw new Error('`TypeaheadComboboxSectionHeader` must be used within `TypeaheadComboboxMenu`');
14947
+ }
14948
+ return jsx(SectionHeader, {
14949
+ ...props,
14950
+ children: children
14951
+ });
14952
+ };
14953
+
14954
+ const TypeaheadComboboxSeparator = props => {
14955
+ const {
14956
+ isInsideTypeaheadCombobox
14957
+ } = useTypeaheadComboboxContext();
14958
+ if (!isInsideTypeaheadCombobox) {
14959
+ throw new Error('`TypeaheadComboboxSeparator` must be used within `TypeaheadComboboxMenu`');
14960
+ }
14961
+ return jsx(Separator, {
14962
+ ...props
14963
+ });
14964
+ };
14965
+
14966
+ const DuboisTypeaheadComboboxFooter = _ref => {
14967
+ let {
14968
+ children,
14969
+ ...restProps
14970
+ } = _ref;
14971
+ const {
14972
+ theme
14973
+ } = useDesignSystemTheme();
14974
+ const {
14975
+ isInsideTypeaheadCombobox
14976
+ } = useTypeaheadComboboxContext();
14977
+ if (!isInsideTypeaheadCombobox) {
14978
+ throw new Error('`TypeaheadComboboxFooter` must be used within `TypeaheadComboboxMenu`');
14979
+ }
14980
+ return jsx("div", {
14981
+ ...restProps,
14982
+ css: getFooterStyles(theme),
14983
+ children: children
14984
+ });
14985
+ };
14986
+ DuboisTypeaheadComboboxFooter.defaultProps = {
14987
+ _TYPE: 'TypeaheadComboboxFooter'
14988
+ };
14989
+ const TypeaheadComboboxFooter = DuboisTypeaheadComboboxFooter;
14990
+
14991
+ export { AccessibleContainer, Accordion, AccordionPanel, Alert, AlignCenterIcon, AlignLeftIcon, AlignRightIcon, AppIcon, ApplyDesignSystemContextOverrides, ApplyGlobalStyles, ArrowDownIcon, ArrowLeftIcon, ArrowRightIcon, ArrowUpIcon, ArrowsUpDownIcon, AutoComplete, BarChartIcon, BarGroupedIcon, BarStackedIcon, BeakerIcon, BinaryIcon, BoldIcon, BookIcon, BookmarkFillIcon, BookmarkIcon, BooksIcon, BracketsCurlyIcon, BracketsSquareIcon, BracketsXIcon, BranchIcon, Breadcrumb, BriefcaseFillIcon, BriefcaseIcon, Button, CalendarClockIcon, CalendarEventIcon, CalendarIcon, CaretDownSquareIcon, CaretUpSquareIcon, CatalogIcon, CatalogOffIcon, ChartLineIcon, CheckCircleBadgeIcon, CheckCircleFillIcon, CheckCircleIcon, CheckIcon, CheckLineIcon, Checkbox, CheckboxIcon, ChecklistIcon, ChevronDoubleDownIcon, ChevronDoubleLeftIcon, ChevronDoubleRightIcon, ChevronDoubleUpIcon, ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon, ChevronUpIcon, CircleIcon, ClipboardIcon, ClockIcon, ClockKeyIcon, CloseIcon, CloudDownloadIcon, CloudIcon, CloudKeyIcon, CloudModelIcon, CloudOffIcon, CloudUploadIcon, CodeIcon, Col, ColorFillIcon, ColumnIcon, ColumnsIcon, ConnectIcon, Content, CopyIcon, CursorPagination, CursorTypeIcon, DIcon, DU_BOIS_ENABLE_ANIMATION_CLASSNAME, DagIcon, DangerFillIcon, DangerIcon, DangerModal, DashIcon, DashboardIcon, DataIcon, DatabaseIcon, DecimalIcon, DesignSystemAntDConfigProvider, DialogCombobox, DialogComboboxButtonContainer, DialogComboboxContent, DialogComboboxCountBadge, EmptyResults as DialogComboboxEmpty, DialogComboboxFooter, DialogComboboxHintRow, DialogComboboxOptionControlledList, DialogComboboxOptionList, DialogComboboxOptionListCheckboxItem, DialogComboboxOptionListSearch, DialogComboboxOptionListSelectItem, DialogComboboxSectionHeader, DialogComboboxSeparator, DialogComboboxTrigger, DotsCircleIcon, DownloadIcon, DragIcon, Drawer, Dropdown, DuboisDatePicker, Empty, ExpandLessIcon, ExpandMoreIcon, FileCodeIcon, FileDocumentIcon, FileIcon, FileImageIcon, FileModelIcon, FilterIcon, FloatIcon, FolderBranchIcon, FolderCloudFilledIcon, FolderCloudIcon, FolderFillIcon, FolderIcon, FontIcon, ForkIcon, Form, FormDubois, FormUI, FullscreenExitIcon, FullscreenIcon, FunctionIcon, GearFillIcon, GearIcon, GenericSkeleton, GiftIcon, GitCommitIcon, GlobeIcon, GridDashIcon, GridIcon, H1Icon, H2Icon, H3Icon, Header$1 as Header, HistoryIcon, HomeIcon, Icon, ImageIcon, IndentDecreaseIcon, IndentIncreaseIcon, InfinityIcon, InfoFillIcon, InfoIcon, InfoTooltip, IngestionIcon, Input, ItalicIcon, KeyIcon, KeyboardIcon, LayerIcon, Layout, LegacyDatePicker, LegacyPopover, LegacySkeleton, LegacyTable, LettersIcon, LibrariesIcon, LightningIcon, LinkIcon, LinkOffIcon, ListBorderIcon, ListIcon, LoadingIcon, LoadingState, LockFillIcon, LockIcon, LockUnlockedIcon, MIcon, Menu, MenuIcon, MinusBoxIcon, MinusCircleFillIcon, MinusCircleIcon, Modal, ModelsIcon, Nav, NavButton, NoIcon, NotebookIcon, Notification, NotificationIcon, NotificationOffIcon, NumbersIcon, OfficeIcon, OptGroup, Option, OverflowIcon, PageBottomIcon, PageFirstIcon, PageLastIcon, PageTopIcon, PageWrapper, Pagination, Panel, PanelBody, PanelHeader, PanelHeaderButtons, PanelHeaderTitle, ParagraphSkeleton, PencilIcon, PinCancelIcon, PinFillIcon, PinIcon, PipelineIcon, PlayCircleFillIcon, PlayCircleIcon, PlayIcon, PlugIcon, PlusCircleFillIcon, PlusCircleIcon, PlusIcon, PlusSquareIcon, Popover, QueryEditorIcon, QueryIcon, QuestionMarkFillIcon, QuestionMarkIcon, QuestionMarkSpeechBubbleIcon, RHFControlledComponents, ROW_GUTTER_SIZE, Radio, ReaderModeIcon, RedoIcon, RefreshIcon, RestoreAntDDefaultClsPrefix, RobotIcon, Row, SaveIcon, SchoolIcon, SearchIcon, SecurityIcon, SegmentedControlButton, SegmentedControlGroup, Select, SelectOptGroup, SelectOption, SelectV2, SelectV2Content, SelectV2Option, SelectV2OptionGroup, SelectV2Trigger, ShareIcon, Sidebar, SidebarAutoIcon, SidebarCollapseIcon, SidebarExpandIcon, SidebarIcon, SlidersIcon, SortAlphabeticalAscendingIcon, SortAlphabeticalDescendingIcon, SortAlphabeticalLeftIcon, SortAlphabeticalRightIcon, SortAscendingIcon, SortDescendingIcon, SortUnsortedIcon, Space, Spacer, SpeechBubbleIcon, SpeechBubblePlusIcon, Spinner, SplitButton, StarFillIcon, StarIcon, StopCircleFillIcon, StopCircleIcon, StopIcon, StorefrontIcon, StreamIcon, Switch, SyncIcon, TabPane, Table, TableCell, TableContext, TableFilterInput, TableFilterLayout, TableHeader, TableIcon, TableInfinityIcon, TableLightningIcon, TableRow, TableRowAction, TableRowContext, TableRowMenuContainer, TableRowSelectCell, TableSkeleton, TableSkeletonRows, TableViewIcon, Tabs, Tag, TextBoxIcon, ThumbsDownIcon, ThumbsUpIcon, TitleSkeleton, ToggleButton, Tooltip, TrashIcon, Tree, TreeIcon, TypeaheadComboboxCheckboxItem, TypeaheadComboboxFooter, TypeaheadComboboxInput, TypeaheadComboboxMenu, TypeaheadComboboxMenuItem, TypeaheadComboboxMultiSelectInput, TypeaheadComboboxRoot, TypeaheadComboboxSectionHeader, TypeaheadComboboxSelectedItem, TypeaheadComboboxSeparator, TypeaheadComboboxToggleButton, Typography, UnderlineIcon, UndoIcon, UploadIcon, UsbIcon, UserBadgeIcon, UserCircleIcon, UserGroupIcon, UserIcon, VisibleIcon, VisibleOffIcon, WarningFillIcon, WarningIcon, WorkflowsIcon, WorkspacesIcon, XCircleFillIcon, XCircleIcon, ZoomInIcon, ZoomOutIcon, __INTERNAL_DO_NOT_USE__FormItem, __INTERNAL_DO_NOT_USE__Group, __INTERNAL_DO_NOT_USE__HorizontalGroup, __INTERNAL_DO_NOT_USE__VerticalGroup, dialogComboboxLookAheadKeyDown, findClosestOptionSibling, findHighlightedOption, getAnimationCss, getContentOptions, getDialogComboboxOptionLabelWidth, getGlobalStyles, getKeyboardNavigationFunctions, getPaginationEmotionStyles, getRadioStyles, getTabEmotionStyles, getValidationStateColor, getWrapperStyle, highlightOption, importantify, resetTabIndexToFocusedElement, useComboboxState, useDesignSystemFlags, useDesignSystemTheme, useLegacyNotification, useMultipleSelectionState, useThemedStyles, useTypeaheadComboboxContext, visuallyHidden, withNotifications };
13670
14992
  //# sourceMappingURL=index.js.map