@procore/core-react 11.29.0 → 11.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (200) hide show
  1. package/dist/AnchorNavigation/AnchorNavigation.d.ts +9 -0
  2. package/dist/AnchorNavigation/AnchorNavigation.js +50 -0
  3. package/dist/AnchorNavigation/AnchorNavigation.js.map +1 -0
  4. package/dist/AnchorNavigation/AnchorNavigation.styles.d.ts +7 -0
  5. package/dist/AnchorNavigation/AnchorNavigation.styles.js +29 -0
  6. package/dist/AnchorNavigation/AnchorNavigation.styles.js.map +1 -0
  7. package/dist/AnchorNavigation/index.d.ts +1 -0
  8. package/dist/AnchorNavigation/index.js +2 -0
  9. package/dist/AnchorNavigation/index.js.map +1 -0
  10. package/dist/Avatar/Avatar.styles.js +5 -5
  11. package/dist/AvatarStack/AvatarStack.styles.js +7 -7
  12. package/dist/Badge/Badge.styles.js +2 -2
  13. package/dist/Banner/Banner.styles.js +10 -10
  14. package/dist/Box/Box.styles.js +1 -1
  15. package/dist/Breadcrumbs/Breadcrumbs.styles.js +4 -4
  16. package/dist/Button/Button.styles.js +5 -5
  17. package/dist/Calendar/Calendar.styles.js +8 -8
  18. package/dist/Card/Card.styles.js +1 -1
  19. package/dist/Checkbox/Checkbox.styles.js +6 -6
  20. package/dist/ContactItem/ContactItem.styles.js +5 -5
  21. package/dist/Content/Content.styles.js +2 -2
  22. package/dist/DateInput/DateInput.js +0 -7
  23. package/dist/DateInput/DateInput.js.map +1 -1
  24. package/dist/DateInput/DateInput.styles.js +6 -6
  25. package/dist/DetailPage/DetailPage.styles.js +7 -7
  26. package/dist/Dropdown/Dropdown.styles.js +3 -3
  27. package/dist/DropdownFlyout/DropdownFlyout.styles.js +4 -4
  28. package/dist/Dropzone/Dropzone.js +1 -1
  29. package/dist/Dropzone/Dropzone.styles.js +9 -9
  30. package/dist/EmptyState/EmptyState.styles.js +6 -6
  31. package/dist/Field/Field.styles.js +3 -3
  32. package/dist/FileList/FileList.styles.js +4 -4
  33. package/dist/FileSelect/FileExplorer/FileExplorer.styles.js +9 -9
  34. package/dist/FileSelect/FileExplorer/FileExplorerSidebar.styles.js +3 -3
  35. package/dist/FileSelect/FileSelect.styles.js +2 -2
  36. package/dist/FileSelect/FileSelectDropzone/FileSelectDropzone.styles.js +3 -3
  37. package/dist/FileSelect/FileTokenList/FileTokenList.styles.js +2 -2
  38. package/dist/FileSelect/GridSource/GridSource.styles.js +6 -6
  39. package/dist/FileSelect/LocalSource/LocalSource.styles.js +4 -4
  40. package/dist/FileSelect/SourceItem/SourceItem.styles.js +3 -3
  41. package/dist/FileSelect/ThumbnailList/ThumbnailList.styles.js +6 -6
  42. package/dist/FileSelect/TreeSource/TreeSource.styles.js +1 -1
  43. package/dist/FileToken/FileToken.styles.js +4 -4
  44. package/dist/FilterToken/FilterToken.styles.js +2 -2
  45. package/dist/FlexList/FlexList.styles.js +1 -1
  46. package/dist/Form/Form.styles.js +16 -16
  47. package/dist/Grid/Grid.styles.js +2 -2
  48. package/dist/GroupSelect/GroupSelect.styles.js +1 -1
  49. package/dist/Input/Input.styles.js +1 -1
  50. package/dist/Link/Link.styles.js +1 -1
  51. package/dist/ListPage/ListPage.styles.js +8 -8
  52. package/dist/Loader/Loader.styles.js +2 -2
  53. package/dist/MenuImperative/MenuImperative.styles.js +10 -10
  54. package/dist/Modal/Modal.styles.js +13 -13
  55. package/dist/Modal/useInitializeModalFocus.js +1 -1
  56. package/dist/Modal/useInitializeModalFocus.js.map +1 -1
  57. package/dist/MultiSelect/MultiSelect.styles.js +6 -6
  58. package/dist/NextMenu/NextMenu.styles.js +3 -3
  59. package/dist/Notation/Notation.js +1 -1
  60. package/dist/NumberInput/NumberInput.styles.js +7 -7
  61. package/dist/Overlay/OverlayArrow.styles.js +1 -1
  62. package/dist/PageLayout/PageLayout.styles.js +13 -13
  63. package/dist/Pagination/Pagination.styles.js +5 -5
  64. package/dist/Panel/Panel.styles.js +11 -11
  65. package/dist/Pill/Pill.styles.js +2 -2
  66. package/dist/PillSelect/PillSelect.styles.js +4 -4
  67. package/dist/Popover/Popover.styles.js +2 -2
  68. package/dist/Portal/Portal.styles.js +1 -1
  69. package/dist/ProgressBar/ProgressBar.styles.js +2 -2
  70. package/dist/RadioButton/RadioButton.styles.js +3 -3
  71. package/dist/Required/Required.styles.js +3 -3
  72. package/dist/Search/Search.styles.js +5 -5
  73. package/dist/Section/Section.styles.js +6 -6
  74. package/dist/SegmentedController/SegmentedController.styles.js +4 -4
  75. package/dist/Select/Select.styles.js +7 -7
  76. package/dist/Semantic/Semantic.styles.js +9 -9
  77. package/dist/Sidebar/Sidebar.styles.js +7 -7
  78. package/dist/Slider/Slider.styles.js +5 -5
  79. package/dist/Spinner/Spinner.styles.js +7 -7
  80. package/dist/SuperSelect/SuperSelect.presets.styles.js +1 -1
  81. package/dist/SuperSelect/SuperSelect.styles.d.ts +1 -0
  82. package/dist/SuperSelect/SuperSelect.styles.js +39 -38
  83. package/dist/SuperSelect/SuperSelect.styles.js.map +1 -1
  84. package/dist/SuperSelect/SuperSelect.types.d.ts +1 -0
  85. package/dist/SuperSelect/SuperSelect.types.js.map +1 -1
  86. package/dist/SuperSelect/useSuperSelect.d.ts +1 -1
  87. package/dist/SuperSelect/useSuperSelect.js +15 -6
  88. package/dist/SuperSelect/useSuperSelect.js.map +1 -1
  89. package/dist/Switch/Switch.styles.js +4 -4
  90. package/dist/Table/Table.styles.js +28 -28
  91. package/dist/TableShelf/TableShelf.styles.js +5 -5
  92. package/dist/Tabs/Tabs.styles.js +8 -8
  93. package/dist/Tearsheet/Tearsheet.styles.js +5 -5
  94. package/dist/TextArea/TextArea.styles.js +1 -1
  95. package/dist/TextEditorOutput/TextEditorOutput.styles.js +1 -1
  96. package/dist/Thumbnail/Thumbnail.styles.js +17 -17
  97. package/dist/ThumbnailGrid/ThumbnailGrid.styles.js +7 -7
  98. package/dist/TieredSelect/TieredSelect.styles.js +9 -9
  99. package/dist/Tile/Tile.styles.js +8 -8
  100. package/dist/Title/Title.styles.js +7 -7
  101. package/dist/Toast/Toast.styles.js +3 -3
  102. package/dist/ToggleButton/ToggleButton.styles.js +1 -1
  103. package/dist/Token/Token.styles.js +3 -3
  104. package/dist/ToolHeader/ToolHeader.styles.js +6 -6
  105. package/dist/Tooltip/Tooltip.styles.js +2 -2
  106. package/dist/Tree/Tree.styles.js +9 -9
  107. package/dist/Typeahead/Typeahead.styles.js +3 -3
  108. package/dist/Typography/Typography.styles.js +1 -1
  109. package/dist/Typography/Typography.table.story.js +2 -2
  110. package/dist/_hooks/I18n.d.ts +1 -36
  111. package/dist/_hooks/I18n.js +0 -6
  112. package/dist/_hooks/I18n.js.map +1 -1
  113. package/dist/_hooks/getI18nProviderLocale.d.ts +7 -0
  114. package/dist/_hooks/getI18nProviderLocale.js +28 -0
  115. package/dist/_hooks/getI18nProviderLocale.js.map +1 -0
  116. package/dist/_typedoc/Avatar/Avatar.types.json +20 -20
  117. package/dist/_typedoc/AvatarStack/AvatarStack.types.json +23 -23
  118. package/dist/_typedoc/Badge/Badge.types.json +6 -6
  119. package/dist/_typedoc/Banner/Banner.types.json +13 -13
  120. package/dist/_typedoc/Box/Box.types.json +68 -68
  121. package/dist/_typedoc/Breadcrumbs/Breadcrumbs.types.json +10 -10
  122. package/dist/_typedoc/Button/Button.types.json +12 -12
  123. package/dist/_typedoc/Calendar/Calendar.types.json +80 -80
  124. package/dist/_typedoc/Card/Card.types.json +6 -6
  125. package/dist/_typedoc/Checkbox/Checkbox.types.json +9 -9
  126. package/dist/_typedoc/ContactItem/ContactItem.types.json +9 -9
  127. package/dist/_typedoc/DateInput/DateInput.types.json +35 -35
  128. package/dist/_typedoc/DateSelect/DateSelect.types.json +13 -13
  129. package/dist/_typedoc/DetailPage/DetailPage.types.json +4 -4
  130. package/dist/_typedoc/Dropdown/Dropdown.types.json +37 -37
  131. package/dist/_typedoc/DropdownFlyout/DropdownFlyout.types.json +29 -29
  132. package/dist/_typedoc/Dropzone/Dropzone.types.json +41 -41
  133. package/dist/_typedoc/EmptyState/EmptyState.types.json +14 -14
  134. package/dist/_typedoc/FileList/FileList.types.json +9 -9
  135. package/dist/_typedoc/FileSelect/FileSelect.types.json +26 -26
  136. package/dist/_typedoc/FileSelect/GridSource/GridSource.types.json +20 -20
  137. package/dist/_typedoc/FileSelect/LocalSource/LocalSource.types.json +14 -14
  138. package/dist/_typedoc/FileSelect/TreeSource/TreeSource.types.json +9 -9
  139. package/dist/_typedoc/Flex/Flex.types.json +27 -27
  140. package/dist/_typedoc/FlexList/FlexList.types.json +30 -30
  141. package/dist/_typedoc/Form/Form.types.json +726 -726
  142. package/dist/_typedoc/Grid/Grid.types.json +8 -8
  143. package/dist/_typedoc/GroupSelect/GroupSelect.types.json +52 -52
  144. package/dist/_typedoc/Input/Input.types.json +2 -2
  145. package/dist/_typedoc/Link/Link.types.json +4 -4
  146. package/dist/_typedoc/ListPage/ListPage.types.json +13 -13
  147. package/dist/_typedoc/Menu/Menu.types.json +62 -62
  148. package/dist/_typedoc/MenuImperative/MenuImperative.types.json +74 -74
  149. package/dist/_typedoc/Modal/Modal.types.json +41 -41
  150. package/dist/_typedoc/MultiSelect/MultiSelect.types.json +31 -31
  151. package/dist/_typedoc/Notation/Notation.types.json +4 -4
  152. package/dist/_typedoc/NumberInput/NumberInput.types.json +38 -38
  153. package/dist/_typedoc/OverlayTrigger/OverlayTrigger.types.json +31 -31
  154. package/dist/_typedoc/PageLayout/PageLayout.types.json +22 -22
  155. package/dist/_typedoc/Pagination/Pagination.types.json +7 -7
  156. package/dist/_typedoc/Panel/Panel.types.json +27 -27
  157. package/dist/_typedoc/Pill/Pill.types.json +2 -2
  158. package/dist/_typedoc/PillSelect/PillSelect.types.json +47 -47
  159. package/dist/_typedoc/Popover/Popover.types.json +14 -14
  160. package/dist/_typedoc/ProgressBar/ProgressBar.types.json +6 -6
  161. package/dist/_typedoc/RadioButton/RadioButton.types.json +6 -6
  162. package/dist/_typedoc/Required/Required.types.json +5 -5
  163. package/dist/_typedoc/Search/Search.types.json +18 -18
  164. package/dist/_typedoc/Section/Section.types.json +14 -14
  165. package/dist/_typedoc/SegmentedController/SegmentedController.types.json +20 -20
  166. package/dist/_typedoc/Select/Select.types.json +57 -57
  167. package/dist/_typedoc/Slider/Slider.types.json +6 -6
  168. package/dist/_typedoc/Spinner/Spinner.types.json +9 -9
  169. package/dist/_typedoc/Switch/Switch.types.json +3 -3
  170. package/dist/_typedoc/Table/Table.types.json +99 -99
  171. package/dist/_typedoc/Tabs/Tabs.types.json +17 -17
  172. package/dist/_typedoc/Tearsheet/Tearsheet.types.json +16 -16
  173. package/dist/_typedoc/TextArea/TextArea.types.json +3 -3
  174. package/dist/_typedoc/TextEditor/TextEditor.types.json +9 -9
  175. package/dist/_typedoc/TextEditorOutput/TextEditorOutput.types.json +4 -4
  176. package/dist/_typedoc/Thumbnail/Thumbnail.types.json +19 -19
  177. package/dist/_typedoc/TieredDropdown/TieredDropdown.types.json +42 -42
  178. package/dist/_typedoc/TieredSelect/TieredSelect.types.json +28 -28
  179. package/dist/_typedoc/Tile/Tile.types.json +30 -30
  180. package/dist/_typedoc/Title/Title.types.json +1 -1
  181. package/dist/_typedoc/Toast/Toast.types.json +4 -4
  182. package/dist/_typedoc/ToggleButton/ToggleButton.types.json +3 -3
  183. package/dist/_typedoc/Token/Token.types.json +4 -4
  184. package/dist/_typedoc/ToolHeader/ToolHeader.types.json +10 -10
  185. package/dist/_typedoc/Tooltip/Tooltip.types.json +13 -13
  186. package/dist/_typedoc/Tree/Tree.types.json +86 -86
  187. package/dist/_typedoc/Typeahead/Typeahead.types.json +2 -2
  188. package/dist/_typedoc/Typography/Typography.types.json +8 -8
  189. package/dist/_typedoc/_utils/types.json +3 -3
  190. package/dist/_utils/CalendarHelpers.js +1 -4
  191. package/dist/_utils/CalendarHelpers.js.map +1 -1
  192. package/dist/_utils/TinyMCE.js +0 -3
  193. package/dist/_utils/TinyMCE.js.map +1 -1
  194. package/dist/index.d.ts +1 -0
  195. package/dist/index.js +1 -0
  196. package/dist/index.js.map +1 -1
  197. package/package.json +5 -5
  198. package/dist/_locales/en-US.json +0 -33
  199. package/dist/_locales/it-IT.json +0 -1
  200. package/dist/_locales/ko.json +0 -1
@@ -25,6 +25,7 @@ import { useZIndexContext } from '../_hooks/ZIndex';
25
25
  import { spacing } from '../_styles/spacing';
26
26
  import * as defaultComponents from './SuperSelect.components';
27
27
  import { draggableOptionIdSymbol } from './SuperSelect.constants';
28
+ import { extendedSelectMenuWidth } from './SuperSelect.styles';
28
29
  import { collectGroupsInOrderOfOccurrence, createOptgroup, getBatchOptionFormatter, getIsAllOptionsUngrouped, getOptionIsOptgroup, getOptionsSortingAlgorithm, isMultiple, removeEmptyOptGroups, reorder, sortOptgroups } from './SuperSelect.utils';
29
30
  var listContainerVerticalPadding = spacing.sm * 2;
30
31
  function noop() {}
@@ -180,7 +181,9 @@ export function useSuperSelect(_ref3) {
180
181
  sort = _ref3$sort === void 0 ? true : _ref3$sort,
181
182
  _ref3$tabIndex = _ref3.tabIndex,
182
183
  tabIndex = _ref3$tabIndex === void 0 ? 0 : _ref3$tabIndex,
183
- value_ = _ref3.value;
184
+ value_ = _ref3.value,
185
+ _ref3$overlayMatchesT = _ref3.overlayMatchesTriggerWidth,
186
+ overlayMatchesTriggerWidth = _ref3$overlayMatchesT === void 0 ? true : _ref3$overlayMatchesT;
184
187
  React.useEffect(function () {
185
188
  if (!draggable) {
186
189
  return;
@@ -432,13 +435,19 @@ export function useSuperSelect(_ref3) {
432
435
  },
433
436
  whileElementsMounted: autoUpdate,
434
437
  strategy: 'fixed',
435
- middleware: [offset(2), flip(), size({
436
- apply: function apply(_ref10) {
437
- var availableHeight = _ref10.availableHeight,
438
- elements = _ref10.elements;
438
+ middleware: [offset(function (_ref10) {
439
+ var rects = _ref10.rects;
440
+ return {
441
+ mainAxis: 2,
442
+ crossAxis: overlayMatchesTriggerWidth ? 0 : (rects.floating.width - rects.reference.width) / 2
443
+ };
444
+ }), flip(), size({
445
+ apply: function apply(_ref11) {
446
+ var availableHeight = _ref11.availableHeight,
447
+ elements = _ref11.elements;
439
448
  if (boundWidthRef.current) {
440
449
  boundWidthRef.current = false;
441
- setWidth(elements.reference.getBoundingClientRect().width);
450
+ setWidth(overlayMatchesTriggerWidth ? elements.reference.getBoundingClientRect().width : extendedSelectMenuWidth);
442
451
  }
443
452
  setMaxHeight(availableHeight);
444
453
  },
@@ -1 +1 @@
1
- {"version":3,"file":"useSuperSelect.js","names":["autoUpdate","flip","offset","size","useClick","useDismiss","useFloating","useInteractions","useListNavigation","useId","debounce","uniq","React","ulid","useI18nContext","useZIndexContext","spacing","defaultComponents","draggableOptionIdSymbol","collectGroupsInOrderOfOccurrence","createOptgroup","getBatchOptionFormatter","getIsAllOptionsUngrouped","getOptionIsOptgroup","getOptionsSortingAlgorithm","isMultiple","removeEmptyOptGroups","reorder","sortOptgroups","listContainerVerticalPadding","sm","noop","defaultGetOptionValue","option","value","defaultGetOptionIsBatch","Array","isArray","defaultGetOptionIsDisabled","_option$disabled","disabled","defaultGetOptionGroup","_option$group","group","defaultSetOptionGroup","_objectSpread","defaultGetOptionLabel","_option$label","label","stringContains","str1","str2","toLowerCase","includes","useTokenNavigation","context","_ref","arguments","length","undefined","_ref$enabled","enabled","_ref$value","_ref$activeIndex","activeIndex","_ref$onNavigate","onNavigate","_ref$onChange","onChange","reference","onKeyDown","e","key","Math","max","repeat","nextVal","filter","_","i","useKeyboardSelection","_ref2","_ref2$enabled","_ref2$onSelect","onSelect","floating","useSuperSelect","_ref3","_ref3$block","block","customComponents","components","defaultValue","_ref3$disabled","_ref3$draggable","draggable","_ref3$emptyMessage","emptyMessage","error","footer","_ref3$getOptionGroup","getOptionGroup","_ref3$getOptionIsBatc","getOptionIsBatch","_ref3$getOptionIsDisa","getOptionIsDisabled","_ref3$getOptionLabel","getOptionLabel","_ref3$getOptionValue","getOptionValue","_ref3$onScrollBottom","onScrollBottom","_ref3$onOpenChange","onOpenChange","header","_ref3$loading","loading","_ref3$multiple","multiple","onManualSort","_ref3$options","options","sourceOptions","placeholder","_ref3$preset","preset","presetProps","_ref3$search","search","_ref3$selectionStyle","selectionStyle","_ref3$setOptionGroup","setOptionGroup","_ref3$sort","sort","_ref3$tabIndex","tabIndex","value_","useEffect","isUsingDefaultGetter","isUsingDefaultSetter","console","warn","i18n","initialValue","_React$useState","useState","_React$useState2","_slicedToArray","val","setVal","setValue","v","navigationList","useRef","virtuoso","searchRef","overlayId","listId","_React$useState3","_React$useState4","open","setOpen","_React$useState5","_React$useState6","pointer","setPointer","_React$useState7","_React$useState8","width","setWidth","_React$useState9","_React$useState10","maxHeight","setMaxHeight","_React$useState11","_React$useState12","listHeight","setListHeight","_React$useState13","_React$useState14","searchHeight","setSearchHeight","_React$useState15","_React$useState16","footerHeight","setFooterHeight","listContainerHeight","min","_React$useState17","_React$useState18","searchValue","setSearchValue_","setSearchValue","_React$useState19","_React$useState20","activeMenuIndex","setActiveMenuIndex","_React$useState21","_React$useState22","activeTokenIndex","setActiveTokenIndex","sortOptions","useMemo","formatBatchOption","enforceOptionsSortingOrder","useCallback","groupAndSort","opts","_collectGroupsInOrder","groups","groupedOptions","Object","entries","_ref4","_ref5","_ref6","groupA","_ref7","groupB","flatMap","_ref8","_ref9","groupName","groupOptions","deriveOptionsSortingOrder","_collectGroupsInOrder2","groupAndSortAlgorithm","queried","opt","_toConsumableArray","map","_React$useState23","_React$useState24","draggableOptions","setDraggableOptions","_defineProperty","queriedDraggableOptions","groupIndices","reduce","acc","push","selectedIndex","findIndex","isSelectableOption","selectedOption","find","selectedLabel","o","getFirstSelectableOptionIndex","optionValue","concat","onKeyboardSelect","getOptionIsSelected","isEmpty","boundWidthRef","current","whileElementsMounted","strategy","middleware","apply","_ref10","availableHeight","elements","getBoundingClientRect","padding","_useZIndexContext","zIndex","_useInteractions","keyboardHandlers","disabledIndices","listRef","loop","virtual","$block","$disabled","$error","$hasClearIcon","$loading","$multiple","$open","$placeholder","role","id","onPointerMove","style","position","left","x","top","y","getReferenceProps","getFloatingProps","getItemProps","getLabelProps","$hoverable","getMultiInputProps","ref","_floating$refs$floati","preventDefault","stopPropagation","refs","focus","currentTarget","opacity","getMultiValueProps","index","onClick","getSearchContainerProps","el","_el$clientHeight","clientHeight","getSearchProps","t","getHeaderProps","getFooterProps","_el$clientHeight2","getEmptyMessageProps","getClearProps","getMenuProps","scrollable","height","getVirtuosoProps","atBottomStateChange","atBottom","data","Item","initialTopMostItemIndex","flex","totalListHeightChanged","onDragEnd","result","destination","source","startIndex","destinationIndex","_reorder","nextOptions","prevGroup","nextGroup","adjustedOptions","setTimeout","fill","useLayoutEffect","_virtuoso$current","scrollIntoView","config","state","props","clear","item","menu","multiInput","overlay","searchContainer","tokenClear","trigger","isBatch","isSelected","isDisabled","isOptgroup","SuperSelectContext","createContext","useSuperSelectContext","ctx","useContext","Error"],"sources":["../../src/SuperSelect/useSuperSelect.ts"],"sourcesContent":["import type { ElementProps, FloatingContext } from '@floating-ui/react'\nimport {\n autoUpdate,\n flip,\n offset,\n size,\n useClick,\n useDismiss,\n useFloating,\n useInteractions,\n useListNavigation,\n} from '@floating-ui/react'\nimport { useId } from '@react-aria/utils'\nimport debounce from 'lodash.debounce'\nimport uniq from 'lodash.uniq'\nimport React from 'react'\nimport type { VirtuosoHandle, VirtuosoProps } from 'react-virtuoso'\nimport { ulid } from 'ulid'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useZIndexContext } from '../_hooks/ZIndex'\nimport { spacing } from '../_styles/spacing'\nimport * as defaultComponents from './SuperSelect.components'\nimport { draggableOptionIdSymbol } from './SuperSelect.constants'\nimport type {\n KeyboardSelectionProps,\n SuperSelectApi,\n SuperSelectConfig,\n SuperSelectOption,\n SuperSelectValue,\n SuperSelectValuePrimitive,\n TokenNavigationProps,\n} from './SuperSelect.types'\nimport {\n collectGroupsInOrderOfOccurrence,\n createOptgroup,\n getBatchOptionFormatter,\n getIsAllOptionsUngrouped,\n getOptionIsOptgroup,\n getOptionsSortingAlgorithm,\n isMultiple,\n removeEmptyOptGroups,\n reorder,\n sortOptgroups,\n} from './SuperSelect.utils'\n\nconst listContainerVerticalPadding = spacing.sm * 2\n\nfunction noop() {}\n\nfunction defaultGetOptionValue(option: SuperSelectOption) {\n return option?.value\n}\n\nfunction defaultGetOptionIsBatch(option: SuperSelectOption): boolean {\n return Array.isArray(option?.value)\n}\n\nfunction defaultGetOptionIsDisabled(option: SuperSelectOption): boolean {\n return option?.disabled ?? false\n}\n\nfunction defaultGetOptionGroup(option: SuperSelectOption): string {\n return option?.group ?? ''\n}\n\nfunction defaultSetOptionGroup(\n option: SuperSelectOption,\n group: string\n): SuperSelectOption {\n return {\n ...option,\n group,\n }\n}\n\nfunction defaultGetOptionLabel(option: SuperSelectOption): string {\n return option?.label ?? ''\n}\n\nfunction stringContains(str1: string, str2: string) {\n return str1.toLowerCase().includes(str2.toLowerCase())\n}\n\nfunction useTokenNavigation(\n context: FloatingContext<HTMLElement>,\n {\n enabled = true,\n value = [],\n activeIndex = null,\n onNavigate = noop,\n onChange = noop,\n }: TokenNavigationProps = {}\n): ElementProps {\n return {\n reference: {\n onKeyDown(e) {\n if (!enabled || !Array.isArray(value)) {\n return\n }\n\n if (e.key === 'ArrowLeft') {\n if (activeIndex !== null) {\n onNavigate(Math.max(0, activeIndex - 1))\n } else if (value.length > 0) {\n onNavigate(value.length - 1)\n }\n } else if (e.key === 'ArrowRight') {\n if (activeIndex !== null) {\n if (activeIndex === value.length - 1) {\n onNavigate(null)\n } else {\n onNavigate(activeIndex + 1)\n }\n }\n } else if (e.key === 'Backspace') {\n if (!e.repeat) {\n if (activeIndex !== null) {\n const nextVal = value.filter((_, i) => i !== activeIndex)\n\n onChange(nextVal)\n\n if (activeIndex >= nextVal.length) {\n onNavigate(null)\n }\n } else if (value.length > 0) {\n onChange(value.filter((_, i) => i !== value.length - 1))\n }\n }\n }\n },\n },\n }\n}\n\nfunction useKeyboardSelection(\n context: FloatingContext<HTMLElement>,\n { enabled = true, onSelect = () => {} }: KeyboardSelectionProps = {}\n): ElementProps {\n function onKeyDown(e: React.KeyboardEvent) {\n if (!enabled) {\n return\n }\n\n if (e.key === 'Enter') {\n onSelect()\n }\n }\n\n return {\n reference: {\n onKeyDown,\n },\n floating: {\n onKeyDown,\n },\n }\n}\n\nexport function useSuperSelect({\n block = false,\n components: customComponents,\n defaultValue,\n disabled = false,\n draggable = false,\n emptyMessage = 'No results',\n error,\n footer,\n getOptionGroup = defaultGetOptionGroup,\n getOptionIsBatch = defaultGetOptionIsBatch,\n getOptionIsDisabled = defaultGetOptionIsDisabled,\n getOptionLabel = defaultGetOptionLabel,\n getOptionValue = defaultGetOptionValue,\n onScrollBottom = noop,\n onOpenChange = noop,\n header,\n loading = false,\n multiple = false,\n onChange,\n onManualSort,\n options: sourceOptions = [],\n placeholder,\n preset = '',\n presetProps,\n search = true,\n selectionStyle = 'highlight',\n setOptionGroup = defaultSetOptionGroup,\n sort = true,\n tabIndex = 0,\n value: value_,\n}: SuperSelectConfig) {\n React.useEffect(() => {\n if (!draggable) {\n return\n }\n\n const isUsingDefaultGetter = getOptionGroup === defaultGetOptionGroup\n const isUsingDefaultSetter = setOptionGroup === defaultSetOptionGroup\n\n if (\n (isUsingDefaultGetter && !isUsingDefaultSetter) ||\n (!isUsingDefaultGetter && isUsingDefaultSetter)\n ) {\n console.warn(\n `SuperSelect: Using potentially conflicting \"getOptionGroup\" and \"setOptionGroup\" implementations.\n Group reassignment after drag-and-drop operation might be broken.`\n )\n }\n }, [draggable, getOptionGroup, setOptionGroup])\n\n const i18n = useI18nContext()\n\n const initialValue = defaultValue ?? (multiple ? [] : null)\n const [val, setVal] = React.useState<SuperSelectValue>(initialValue)\n const value = value_ !== undefined ? value_ : val\n function setValue(v: SuperSelectValue) {\n if (!value_) {\n setVal(v)\n }\n\n if (onChange) {\n onChange(v)\n }\n }\n\n const navigationList = React.useRef<Array<HTMLElement | null>>([])\n const virtuoso = React.useRef<VirtuosoHandle>(null)\n const searchRef = React.useRef<HTMLInputElement>(null)\n\n const overlayId = useId() // TODO use React 18 useId\n const listId = useId() // TODO use React 18 useId\n\n const [open, setOpen] = React.useState(false)\n const [pointer, setPointer] = React.useState(false)\n const [width, setWidth] = React.useState(248)\n const [maxHeight, setMaxHeight] = React.useState(248)\n const [listHeight, setListHeight] = React.useState(0)\n const [searchHeight, setSearchHeight] = React.useState(0)\n const [footerHeight, setFooterHeight] = React.useState(0)\n const listContainerHeight = Math.min(\n maxHeight - searchHeight - footerHeight + listContainerVerticalPadding,\n listHeight + listContainerVerticalPadding\n )\n const [searchValue, setSearchValue_] = React.useState('')\n const setSearchValue = debounce(setSearchValue_, 250) // TODO use React 18 useDeferredValue\n\n const [activeMenuIndex, setActiveMenuIndex] = React.useState<number | null>(\n null\n )\n const [activeTokenIndex, setActiveTokenIndex] = React.useState<number | null>(\n null\n )\n\n const components = {\n ...defaultComponents,\n ...(customComponents || {}),\n }\n\n // TODO #memogetters: consider having getOption... getter functions memoized by consumers\n // Until then, exclude these callbacks from effect and memo dependencies\n const sortOptions = React.useMemo(\n () => getOptionsSortingAlgorithm({ getOptionIsBatch, getOptionLabel }),\n // skip `getOptionIsBatch` and `getOptionLabel`\n []\n )\n\n const formatBatchOption = React.useMemo(\n () =>\n getBatchOptionFormatter({\n value,\n multiple,\n getOptionIsBatch,\n getOptionValue,\n }),\n // skip `getOptionIsBatch` and `getOptionValue`, refer to TODO #memogetters\n [value, multiple]\n )\n\n // collect groups, sort them and populate them with options, and sort the options inside the groups\n const enforceOptionsSortingOrder = React.useCallback(\n function groupAndSort(opts: SuperSelectOption[]) {\n const { groups, groupedOptions } = collectGroupsInOrderOfOccurrence(\n opts,\n getOptionGroup\n )\n\n if (getIsAllOptionsUngrouped(groups)) {\n return opts.sort(sortOptions)\n }\n\n return Object.entries(groupedOptions)\n .sort(([groupA], [groupB]) => sortOptgroups(groupA, groupB))\n .flatMap(([groupName, groupOptions]) =>\n createOptgroup(groupName, groupOptions.sort(sortOptions))\n )\n },\n // skip `getOptionGroup`, refer to TODO #memogetters\n [sortOptions]\n )\n\n // collect groups and populate them with options\n const deriveOptionsSortingOrder = React.useCallback(\n (opts: SuperSelectOption[]) => {\n const { groups, groupedOptions } = collectGroupsInOrderOfOccurrence(\n opts,\n getOptionGroup\n )\n\n if (getIsAllOptionsUngrouped(groups)) {\n return opts\n }\n\n // display optgroups in the order of occurrence, as they are considered pre-sorted\n return groups.flatMap((group) => {\n const groupOptions = groupedOptions[group]\n\n return createOptgroup(group, groupOptions)\n })\n },\n // skip `getOptionGroup`, refer to TODO #memogetters\n []\n )\n\n const groupAndSortAlgorithm = React.useMemo(\n () => (sort ? enforceOptionsSortingOrder : deriveOptionsSortingOrder),\n [sort, enforceOptionsSortingOrder, deriveOptionsSortingOrder]\n )\n\n const options = React.useMemo(\n () => {\n const queried = searchValue\n ? sourceOptions.filter((opt) =>\n stringContains(getOptionLabel(opt), searchValue)\n )\n : [...sourceOptions] // make a copy of source options to prevent the mutation when sorting\n\n return groupAndSortAlgorithm(queried).map(formatBatchOption)\n },\n // skip `getOptionLabel`, refer to TODO #memogetters\n [groupAndSortAlgorithm, formatBatchOption, searchValue, sourceOptions]\n )\n\n const [draggableOptions, setDraggableOptions] = React.useState<\n SuperSelectOption[]\n >([])\n\n React.useEffect(\n () => {\n if (!draggable) {\n return\n }\n // make a copy of source options to prevent the mutation when sorting\n const opts = groupAndSortAlgorithm(\n sourceOptions.map((opt) => ({\n ...opt,\n [draggableOptionIdSymbol]: ulid(),\n }))\n )\n setDraggableOptions(opts)\n },\n // in draggable mode, sourceOptions must be memoized, othewise reorder will not work\n [draggable, sourceOptions, groupAndSortAlgorithm]\n )\n\n const queriedDraggableOptions = React.useMemo(\n () => {\n if (!draggable) {\n return []\n }\n\n const queried = searchValue\n ? removeEmptyOptGroups(\n draggableOptions.filter((opt) => {\n if (!getOptionIsOptgroup(opt)) {\n return stringContains(getOptionLabel(opt), searchValue)\n }\n return true\n })\n )\n : draggableOptions\n\n return queried.map(formatBatchOption)\n },\n // skip `getOptionLabel`, refer to TODO #memogetters\n [draggable, draggableOptions, searchValue, formatBatchOption]\n )\n\n const groupIndices = React.useMemo(() => {\n return options.reduce((acc, opt, i) => {\n if (getOptionIsOptgroup(opt)) {\n acc.push(i)\n }\n return acc\n }, [] as number[])\n }, [options])\n\n const selectedIndex = React.useMemo(() => {\n return options.findIndex(\n (option) => isSelectableOption(option) && getOptionValue(option) === value\n )\n }, [options, value])\n\n const selectedOption = React.useMemo(() => {\n const val = Array.isArray(value) ? value[0] : value\n return options.find((option) => getOptionValue(option) === val)\n }, [options, value])\n\n const selectedLabel = React.useMemo(() => {\n return selectedOption ? getOptionLabel(selectedOption) : ''\n }, [selectedOption])\n\n function isSelectableOption(o: SuperSelectOption) {\n return !getOptionIsOptgroup(o) && !getOptionIsDisabled(o)\n }\n\n function getFirstSelectableOptionIndex() {\n return options.findIndex(isSelectableOption)\n }\n\n function onSelect(option: SuperSelectOption) {\n if (getOptionIsDisabled(option)) {\n return\n }\n\n const optionValue = getOptionValue(option)\n\n if (isMultiple(multiple, value)) {\n if (Array.isArray(optionValue)) {\n setValue(uniq([...value, ...optionValue]))\n } else {\n setValue(\n value.includes(optionValue)\n ? value.filter(\n (val: SuperSelectValuePrimitive) => val !== optionValue\n )\n : [...value, optionValue]\n )\n }\n } else {\n setValue(optionValue)\n }\n }\n\n function onKeyboardSelect() {\n if (activeMenuIndex !== null) {\n const option = options[activeMenuIndex]\n\n if (option) {\n onSelect(option)\n }\n }\n }\n\n function getOptionIsSelected(option: SuperSelectOption) {\n return Array.isArray(value)\n ? value.includes(getOptionValue(option))\n : value === getOptionValue(option)\n }\n\n function isEmpty() {\n return Array.isArray(value) ? value.length === 0 : value === null\n }\n\n const boundWidthRef = React.useRef(open)\n\n React.useEffect(() => {\n boundWidthRef.current = open\n }, [open])\n\n const floating = useFloating<HTMLElement>({\n open,\n onOpenChange: (open) => {\n setOpen(open)\n onOpenChange(open)\n },\n whileElementsMounted: autoUpdate,\n strategy: 'fixed',\n middleware: [\n offset(2),\n flip(),\n size({\n apply({ availableHeight, elements }) {\n if (boundWidthRef.current) {\n boundWidthRef.current = false\n setWidth(elements.reference.getBoundingClientRect().width)\n }\n setMaxHeight(availableHeight)\n },\n padding: 10,\n }),\n ],\n })\n\n const { value: zIndex } = useZIndexContext()\n\n const { getReferenceProps, getFloatingProps, getItemProps } = useInteractions(\n [\n useClick(floating.context, {\n enabled: !disabled,\n keyboardHandlers: false,\n }),\n useDismiss(floating.context, {\n enabled: !disabled,\n }),\n useListNavigation(floating.context, {\n activeIndex: activeMenuIndex,\n disabledIndices: groupIndices,\n enabled: !disabled,\n listRef: navigationList,\n loop: true,\n onNavigate: (i) => setActiveMenuIndex(() => i),\n selectedIndex,\n virtual: true,\n }),\n useTokenNavigation(floating.context, {\n activeIndex: activeTokenIndex,\n enabled: !disabled && multiple && searchValue === '',\n onChange: setValue,\n onNavigate: (i) => setActiveTokenIndex(() => i),\n value,\n }),\n useKeyboardSelection(floating.context, {\n enabled: !disabled,\n onSelect: onKeyboardSelect,\n }),\n {\n reference: {\n $block: block,\n $disabled: disabled,\n $error: error,\n $hasClearIcon: !disabled && !loading,\n $loading: loading,\n $multiple: multiple,\n $open: open,\n $placeholder: !selectedLabel,\n 'aria-controls': search ? overlayId : listId,\n 'aria-expanded': open,\n 'aria-haspopup': search ? 'dialog' : 'listbox',\n onKeyDown() {\n setPointer(false)\n },\n role: 'combobox',\n search,\n tabIndex: disabled ? -1 : tabIndex,\n } as any, // TODO fix type\n floating: {\n role: search ? 'dialog' : 'none',\n id: overlayId,\n onKeyDown() {\n setPointer(false)\n },\n onPointerMove() {\n setPointer(true)\n },\n style: {\n position: floating.strategy,\n left: floating.x || 0,\n top: floating.y || 0,\n width,\n maxHeight,\n zIndex,\n },\n },\n },\n ]\n )\n\n function getLabelProps() {\n return {\n $hoverable: false,\n }\n }\n\n function getMultiInputProps(): React.AriaAttributes &\n React.InputHTMLAttributes<HTMLInputElement> & {\n ref: React.Ref<HTMLInputElement>\n } {\n return {\n ref: searchRef,\n placeholder: isEmpty() ? placeholder : '',\n disabled,\n 'aria-controls': listId,\n onKeyDown(e) {\n if (e.key === 'Tab') {\n if (open) {\n e.preventDefault()\n e.stopPropagation()\n floating.refs.floating.current?.focus()\n }\n }\n },\n onChange(e) {\n setSearchValue(e.currentTarget.value)\n setActiveTokenIndex(null)\n },\n style: {\n opacity: activeTokenIndex === null ? 1 : 0,\n },\n }\n }\n\n function getMultiValueProps(index: number) {\n return {\n onClick(e: React.MouseEvent) {\n // prevent the menu from closing\n e.stopPropagation()\n\n if (isMultiple(multiple, value)) {\n setValue(value.filter((_, i) => i !== index))\n }\n },\n }\n }\n\n function getSearchContainerProps() {\n return {\n ref: (el: HTMLElement | null) => {\n setSearchHeight(el?.clientHeight ?? 0)\n },\n }\n }\n\n function getSearchProps() {\n return {\n 'aria-controls': listId,\n onChange(value: string) {\n setSearchValue(value)\n setActiveTokenIndex(null)\n },\n placeholder: i18n.t('core.select.search'),\n }\n }\n\n function getHeaderProps() {\n return {\n ref: (el: HTMLElement | null) => {},\n }\n }\n\n function getFooterProps() {\n return {\n ref: (el: HTMLElement | null) => {\n setFooterHeight(el?.clientHeight ?? 0)\n },\n onKeyDown: (e: React.KeyboardEvent) => {\n if (e.key !== 'Escape') {\n e.stopPropagation()\n }\n },\n }\n }\n\n function getEmptyMessageProps() {\n return {\n emptyMessage,\n }\n }\n\n function getClearProps() {\n return {\n 'aria-hidden': true,\n 'aria-label': i18n.t('core.select.clear'),\n onClick(e: React.MouseEvent) {\n // prevent the menu from closing\n e.stopPropagation()\n\n setActiveTokenIndex(null)\n setValue(multiple ? [] : null)\n setOpen(true)\n },\n }\n }\n\n function getMenuProps() {\n return {\n scrollable: false,\n style: {\n height: listContainerHeight,\n },\n }\n }\n\n function getVirtuosoProps(): VirtuosoProps<{}, {}> {\n const atBottomStateChange = (atBottom: boolean) => {\n if (atBottom) {\n onScrollBottom()\n }\n }\n\n return {\n role: 'listbox',\n id: overlayId,\n data: draggable ? queriedDraggableOptions : options,\n components: {\n Item: components?.Item as any, // TODO fix type\n },\n initialTopMostItemIndex: selectedIndex >= 0 ? selectedIndex : 0,\n style: {\n flex: '1 1 auto',\n },\n tabIndex: -1,\n totalListHeightChanged: setListHeight,\n atBottomStateChange,\n }\n }\n\n const onDragEnd = React.useCallback((result) => {\n if (!result.destination) {\n return\n }\n if (result.source.index === result.destination.index) {\n return\n }\n\n const startIndex = result.source.index\n const destinationIndex = result.destination.index\n\n setDraggableOptions((options) => {\n const { nextOptions, prevGroup, nextGroup } = reorder(\n options,\n startIndex,\n destinationIndex\n )\n\n const adjustedOptions =\n prevGroup !== nextGroup\n ? nextOptions.map((option, index) => {\n if (index === destinationIndex) {\n return setOptionGroup(option, nextGroup)\n }\n return option\n })\n : nextOptions\n\n if (typeof onManualSort === 'function') {\n setTimeout(() => {\n onManualSort(\n adjustedOptions.filter((option) => !getOptionIsOptgroup(option))\n )\n }, 0)\n }\n\n return adjustedOptions\n })\n }, [])\n\n // run effect when the `open` state changes\n //\n // if it was closed and is now open, reset the highlighted index to be\n // the first selectable option\n //\n // if it was open and is now closed, reset the search value and focused token index\n React.useEffect(() => {\n if (open) {\n setActiveMenuIndex(() =>\n selectedIndex >= 0 ? selectedIndex : getFirstSelectableOptionIndex()\n )\n } else {\n setSearchValue(() => '')\n setActiveTokenIndex(() => null)\n }\n }, [open])\n\n // run the effect when user enters a serach value\n //\n // if the select is currently open then reset highlighted item to be the first\n // selectable option\n React.useEffect(() => {\n if (open) {\n setActiveMenuIndex(() => getFirstSelectableOptionIndex())\n }\n }, [searchValue])\n\n // when we change the value then close the overlay, but only if we have\n // actually selected a value\n //\n // multiple mode forces the overlay to stay open\n React.useEffect(() => {\n if (!multiple && value !== null) {\n setOpen(() => false)\n }\n }, [value])\n\n // recreate the array to hold dom refs when our options change\n React.useEffect(() => {\n navigationList.current = [...Array(options.length).fill(null)]\n }, [options])\n\n // scroll virtuoso list activeMenuIndex into view when the index changes\n React.useLayoutEffect(() => {\n if (activeMenuIndex !== null) {\n if (!pointer) {\n virtuoso.current?.scrollIntoView({ index: activeMenuIndex })\n }\n }\n }, [activeMenuIndex, open])\n\n return {\n config: {\n block,\n disabled,\n draggable,\n emptyMessage,\n error,\n footer,\n header,\n placeholder,\n preset,\n presetProps,\n selectionStyle,\n tabIndex,\n loading,\n multiple,\n },\n components,\n state: {\n activeMenuIndex,\n activeTokenIndex,\n isEmpty,\n listContainerHeight,\n listId,\n maxHeight,\n onDragEnd,\n onSelect,\n open,\n options: draggable ? queriedDraggableOptions : options,\n overlayId,\n searchValue,\n selectedIndex,\n selectedLabel,\n selectedOption,\n setOpen,\n setPointer,\n setSearchValue: setSearchValue,\n sourceOptions,\n value,\n width,\n },\n props: {\n clear: getClearProps,\n emptyMessage: getEmptyMessageProps,\n footer: getFooterProps,\n header: getHeaderProps,\n item: getItemProps,\n label: getLabelProps,\n menu: getMenuProps,\n multiInput: getMultiInputProps,\n overlay: getFloatingProps,\n search: getSearchProps,\n searchContainer: getSearchContainerProps,\n tokenClear: getMultiValueProps,\n trigger: getReferenceProps,\n virtuoso: getVirtuosoProps,\n },\n option: {\n group: getOptionGroup,\n isBatch: getOptionIsBatch,\n isSelected: getOptionIsSelected,\n isDisabled: getOptionIsDisabled,\n isOptgroup: getOptionIsOptgroup,\n label: getOptionLabel,\n value: getOptionValue,\n },\n refs: {\n floating,\n navigationList,\n virtuoso,\n },\n }\n}\n\nexport const SuperSelectContext = React.createContext<SuperSelectApi | null>(\n null\n)\n\nexport function useSuperSelectContext() {\n const ctx = React.useContext(SuperSelectContext)\n\n if (!ctx) {\n throw new Error('Invalid SuperSelectContext')\n }\n\n return ctx as SuperSelectApi\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useSuperSelect.js","names":["autoUpdate","flip","offset","size","useClick","useDismiss","useFloating","useInteractions","useListNavigation","useId","debounce","uniq","React","ulid","useI18nContext","useZIndexContext","spacing","defaultComponents","draggableOptionIdSymbol","extendedSelectMenuWidth","collectGroupsInOrderOfOccurrence","createOptgroup","getBatchOptionFormatter","getIsAllOptionsUngrouped","getOptionIsOptgroup","getOptionsSortingAlgorithm","isMultiple","removeEmptyOptGroups","reorder","sortOptgroups","listContainerVerticalPadding","sm","noop","defaultGetOptionValue","option","value","defaultGetOptionIsBatch","Array","isArray","defaultGetOptionIsDisabled","_option$disabled","disabled","defaultGetOptionGroup","_option$group","group","defaultSetOptionGroup","_objectSpread","defaultGetOptionLabel","_option$label","label","stringContains","str1","str2","toLowerCase","includes","useTokenNavigation","context","_ref","arguments","length","undefined","_ref$enabled","enabled","_ref$value","_ref$activeIndex","activeIndex","_ref$onNavigate","onNavigate","_ref$onChange","onChange","reference","onKeyDown","e","key","Math","max","repeat","nextVal","filter","_","i","useKeyboardSelection","_ref2","_ref2$enabled","_ref2$onSelect","onSelect","floating","useSuperSelect","_ref3","_ref3$block","block","customComponents","components","defaultValue","_ref3$disabled","_ref3$draggable","draggable","_ref3$emptyMessage","emptyMessage","error","footer","_ref3$getOptionGroup","getOptionGroup","_ref3$getOptionIsBatc","getOptionIsBatch","_ref3$getOptionIsDisa","getOptionIsDisabled","_ref3$getOptionLabel","getOptionLabel","_ref3$getOptionValue","getOptionValue","_ref3$onScrollBottom","onScrollBottom","_ref3$onOpenChange","onOpenChange","header","_ref3$loading","loading","_ref3$multiple","multiple","onManualSort","_ref3$options","options","sourceOptions","placeholder","_ref3$preset","preset","presetProps","_ref3$search","search","_ref3$selectionStyle","selectionStyle","_ref3$setOptionGroup","setOptionGroup","_ref3$sort","sort","_ref3$tabIndex","tabIndex","value_","_ref3$overlayMatchesT","overlayMatchesTriggerWidth","useEffect","isUsingDefaultGetter","isUsingDefaultSetter","console","warn","i18n","initialValue","_React$useState","useState","_React$useState2","_slicedToArray","val","setVal","setValue","v","navigationList","useRef","virtuoso","searchRef","overlayId","listId","_React$useState3","_React$useState4","open","setOpen","_React$useState5","_React$useState6","pointer","setPointer","_React$useState7","_React$useState8","width","setWidth","_React$useState9","_React$useState10","maxHeight","setMaxHeight","_React$useState11","_React$useState12","listHeight","setListHeight","_React$useState13","_React$useState14","searchHeight","setSearchHeight","_React$useState15","_React$useState16","footerHeight","setFooterHeight","listContainerHeight","min","_React$useState17","_React$useState18","searchValue","setSearchValue_","setSearchValue","_React$useState19","_React$useState20","activeMenuIndex","setActiveMenuIndex","_React$useState21","_React$useState22","activeTokenIndex","setActiveTokenIndex","sortOptions","useMemo","formatBatchOption","enforceOptionsSortingOrder","useCallback","groupAndSort","opts","_collectGroupsInOrder","groups","groupedOptions","Object","entries","_ref4","_ref5","_ref6","groupA","_ref7","groupB","flatMap","_ref8","_ref9","groupName","groupOptions","deriveOptionsSortingOrder","_collectGroupsInOrder2","groupAndSortAlgorithm","queried","opt","_toConsumableArray","map","_React$useState23","_React$useState24","draggableOptions","setDraggableOptions","_defineProperty","queriedDraggableOptions","groupIndices","reduce","acc","push","selectedIndex","findIndex","isSelectableOption","selectedOption","find","selectedLabel","o","getFirstSelectableOptionIndex","optionValue","concat","onKeyboardSelect","getOptionIsSelected","isEmpty","boundWidthRef","current","whileElementsMounted","strategy","middleware","_ref10","rects","mainAxis","crossAxis","apply","_ref11","availableHeight","elements","getBoundingClientRect","padding","_useZIndexContext","zIndex","_useInteractions","keyboardHandlers","disabledIndices","listRef","loop","virtual","$block","$disabled","$error","$hasClearIcon","$loading","$multiple","$open","$placeholder","role","id","onPointerMove","style","position","left","x","top","y","getReferenceProps","getFloatingProps","getItemProps","getLabelProps","$hoverable","getMultiInputProps","ref","_floating$refs$floati","preventDefault","stopPropagation","refs","focus","currentTarget","opacity","getMultiValueProps","index","onClick","getSearchContainerProps","el","_el$clientHeight","clientHeight","getSearchProps","t","getHeaderProps","getFooterProps","_el$clientHeight2","getEmptyMessageProps","getClearProps","getMenuProps","scrollable","height","getVirtuosoProps","atBottomStateChange","atBottom","data","Item","initialTopMostItemIndex","flex","totalListHeightChanged","onDragEnd","result","destination","source","startIndex","destinationIndex","_reorder","nextOptions","prevGroup","nextGroup","adjustedOptions","setTimeout","fill","useLayoutEffect","_virtuoso$current","scrollIntoView","config","state","props","clear","item","menu","multiInput","overlay","searchContainer","tokenClear","trigger","isBatch","isSelected","isDisabled","isOptgroup","SuperSelectContext","createContext","useSuperSelectContext","ctx","useContext","Error"],"sources":["../../src/SuperSelect/useSuperSelect.ts"],"sourcesContent":["import type { ElementProps, FloatingContext } from '@floating-ui/react'\nimport {\n autoUpdate,\n flip,\n offset,\n size,\n useClick,\n useDismiss,\n useFloating,\n useInteractions,\n useListNavigation,\n} from '@floating-ui/react'\nimport { useId } from '@react-aria/utils'\nimport debounce from 'lodash.debounce'\nimport uniq from 'lodash.uniq'\nimport React from 'react'\nimport type { VirtuosoHandle, VirtuosoProps } from 'react-virtuoso'\nimport { ulid } from 'ulid'\nimport { useI18nContext } from '../_hooks/I18n'\nimport { useZIndexContext } from '../_hooks/ZIndex'\nimport { spacing } from '../_styles/spacing'\nimport * as defaultComponents from './SuperSelect.components'\nimport { draggableOptionIdSymbol } from './SuperSelect.constants'\nimport { extendedSelectMenuWidth } from './SuperSelect.styles'\nimport type {\n KeyboardSelectionProps,\n SuperSelectApi,\n SuperSelectConfig,\n SuperSelectOption,\n SuperSelectValue,\n SuperSelectValuePrimitive,\n TokenNavigationProps,\n} from './SuperSelect.types'\nimport {\n collectGroupsInOrderOfOccurrence,\n createOptgroup,\n getBatchOptionFormatter,\n getIsAllOptionsUngrouped,\n getOptionIsOptgroup,\n getOptionsSortingAlgorithm,\n isMultiple,\n removeEmptyOptGroups,\n reorder,\n sortOptgroups,\n} from './SuperSelect.utils'\n\nconst listContainerVerticalPadding = spacing.sm * 2\n\nfunction noop() {}\n\nfunction defaultGetOptionValue(option: SuperSelectOption) {\n return option?.value\n}\n\nfunction defaultGetOptionIsBatch(option: SuperSelectOption): boolean {\n return Array.isArray(option?.value)\n}\n\nfunction defaultGetOptionIsDisabled(option: SuperSelectOption): boolean {\n return option?.disabled ?? false\n}\n\nfunction defaultGetOptionGroup(option: SuperSelectOption): string {\n return option?.group ?? ''\n}\n\nfunction defaultSetOptionGroup(\n option: SuperSelectOption,\n group: string\n): SuperSelectOption {\n return {\n ...option,\n group,\n }\n}\n\nfunction defaultGetOptionLabel(option: SuperSelectOption): string {\n return option?.label ?? ''\n}\n\nfunction stringContains(str1: string, str2: string) {\n return str1.toLowerCase().includes(str2.toLowerCase())\n}\n\nfunction useTokenNavigation(\n context: FloatingContext<HTMLElement>,\n {\n enabled = true,\n value = [],\n activeIndex = null,\n onNavigate = noop,\n onChange = noop,\n }: TokenNavigationProps = {}\n): ElementProps {\n return {\n reference: {\n onKeyDown(e) {\n if (!enabled || !Array.isArray(value)) {\n return\n }\n\n if (e.key === 'ArrowLeft') {\n if (activeIndex !== null) {\n onNavigate(Math.max(0, activeIndex - 1))\n } else if (value.length > 0) {\n onNavigate(value.length - 1)\n }\n } else if (e.key === 'ArrowRight') {\n if (activeIndex !== null) {\n if (activeIndex === value.length - 1) {\n onNavigate(null)\n } else {\n onNavigate(activeIndex + 1)\n }\n }\n } else if (e.key === 'Backspace') {\n if (!e.repeat) {\n if (activeIndex !== null) {\n const nextVal = value.filter((_, i) => i !== activeIndex)\n\n onChange(nextVal)\n\n if (activeIndex >= nextVal.length) {\n onNavigate(null)\n }\n } else if (value.length > 0) {\n onChange(value.filter((_, i) => i !== value.length - 1))\n }\n }\n }\n },\n },\n }\n}\n\nfunction useKeyboardSelection(\n context: FloatingContext<HTMLElement>,\n { enabled = true, onSelect = () => {} }: KeyboardSelectionProps = {}\n): ElementProps {\n function onKeyDown(e: React.KeyboardEvent) {\n if (!enabled) {\n return\n }\n\n if (e.key === 'Enter') {\n onSelect()\n }\n }\n\n return {\n reference: {\n onKeyDown,\n },\n floating: {\n onKeyDown,\n },\n }\n}\n\nexport function useSuperSelect({\n block = false,\n components: customComponents,\n defaultValue,\n disabled = false,\n draggable = false,\n emptyMessage = 'No results',\n error,\n footer,\n getOptionGroup = defaultGetOptionGroup,\n getOptionIsBatch = defaultGetOptionIsBatch,\n getOptionIsDisabled = defaultGetOptionIsDisabled,\n getOptionLabel = defaultGetOptionLabel,\n getOptionValue = defaultGetOptionValue,\n onScrollBottom = noop,\n onOpenChange = noop,\n header,\n loading = false,\n multiple = false,\n onChange,\n onManualSort,\n options: sourceOptions = [],\n placeholder,\n preset = '',\n presetProps,\n search = true,\n selectionStyle = 'highlight',\n setOptionGroup = defaultSetOptionGroup,\n sort = true,\n tabIndex = 0,\n value: value_,\n overlayMatchesTriggerWidth = true,\n}: SuperSelectConfig) {\n React.useEffect(() => {\n if (!draggable) {\n return\n }\n\n const isUsingDefaultGetter = getOptionGroup === defaultGetOptionGroup\n const isUsingDefaultSetter = setOptionGroup === defaultSetOptionGroup\n\n if (\n (isUsingDefaultGetter && !isUsingDefaultSetter) ||\n (!isUsingDefaultGetter && isUsingDefaultSetter)\n ) {\n console.warn(\n `SuperSelect: Using potentially conflicting \"getOptionGroup\" and \"setOptionGroup\" implementations.\n Group reassignment after drag-and-drop operation might be broken.`\n )\n }\n }, [draggable, getOptionGroup, setOptionGroup])\n\n const i18n = useI18nContext()\n\n const initialValue = defaultValue ?? (multiple ? [] : null)\n const [val, setVal] = React.useState<SuperSelectValue>(initialValue)\n const value = value_ !== undefined ? value_ : val\n function setValue(v: SuperSelectValue) {\n if (!value_) {\n setVal(v)\n }\n\n if (onChange) {\n onChange(v)\n }\n }\n\n const navigationList = React.useRef<Array<HTMLElement | null>>([])\n const virtuoso = React.useRef<VirtuosoHandle>(null)\n const searchRef = React.useRef<HTMLInputElement>(null)\n\n const overlayId = useId() // TODO use React 18 useId\n const listId = useId() // TODO use React 18 useId\n\n const [open, setOpen] = React.useState(false)\n const [pointer, setPointer] = React.useState(false)\n const [width, setWidth] = React.useState(248)\n const [maxHeight, setMaxHeight] = React.useState(248)\n const [listHeight, setListHeight] = React.useState(0)\n const [searchHeight, setSearchHeight] = React.useState(0)\n const [footerHeight, setFooterHeight] = React.useState(0)\n const listContainerHeight = Math.min(\n maxHeight - searchHeight - footerHeight + listContainerVerticalPadding,\n listHeight + listContainerVerticalPadding\n )\n const [searchValue, setSearchValue_] = React.useState('')\n const setSearchValue = debounce(setSearchValue_, 250) // TODO use React 18 useDeferredValue\n\n const [activeMenuIndex, setActiveMenuIndex] = React.useState<number | null>(\n null\n )\n const [activeTokenIndex, setActiveTokenIndex] = React.useState<number | null>(\n null\n )\n\n const components = {\n ...defaultComponents,\n ...(customComponents || {}),\n }\n\n // TODO #memogetters: consider having getOption... getter functions memoized by consumers\n // Until then, exclude these callbacks from effect and memo dependencies\n const sortOptions = React.useMemo(\n () => getOptionsSortingAlgorithm({ getOptionIsBatch, getOptionLabel }),\n // skip `getOptionIsBatch` and `getOptionLabel`\n []\n )\n\n const formatBatchOption = React.useMemo(\n () =>\n getBatchOptionFormatter({\n value,\n multiple,\n getOptionIsBatch,\n getOptionValue,\n }),\n // skip `getOptionIsBatch` and `getOptionValue`, refer to TODO #memogetters\n [value, multiple]\n )\n\n // collect groups, sort them and populate them with options, and sort the options inside the groups\n const enforceOptionsSortingOrder = React.useCallback(\n function groupAndSort(opts: SuperSelectOption[]) {\n const { groups, groupedOptions } = collectGroupsInOrderOfOccurrence(\n opts,\n getOptionGroup\n )\n\n if (getIsAllOptionsUngrouped(groups)) {\n return opts.sort(sortOptions)\n }\n\n return Object.entries(groupedOptions)\n .sort(([groupA], [groupB]) => sortOptgroups(groupA, groupB))\n .flatMap(([groupName, groupOptions]) =>\n createOptgroup(groupName, groupOptions.sort(sortOptions))\n )\n },\n // skip `getOptionGroup`, refer to TODO #memogetters\n [sortOptions]\n )\n\n // collect groups and populate them with options\n const deriveOptionsSortingOrder = React.useCallback(\n (opts: SuperSelectOption[]) => {\n const { groups, groupedOptions } = collectGroupsInOrderOfOccurrence(\n opts,\n getOptionGroup\n )\n\n if (getIsAllOptionsUngrouped(groups)) {\n return opts\n }\n\n // display optgroups in the order of occurrence, as they are considered pre-sorted\n return groups.flatMap((group) => {\n const groupOptions = groupedOptions[group]\n\n return createOptgroup(group, groupOptions)\n })\n },\n // skip `getOptionGroup`, refer to TODO #memogetters\n []\n )\n\n const groupAndSortAlgorithm = React.useMemo(\n () => (sort ? enforceOptionsSortingOrder : deriveOptionsSortingOrder),\n [sort, enforceOptionsSortingOrder, deriveOptionsSortingOrder]\n )\n\n const options = React.useMemo(\n () => {\n const queried = searchValue\n ? sourceOptions.filter((opt) =>\n stringContains(getOptionLabel(opt), searchValue)\n )\n : [...sourceOptions] // make a copy of source options to prevent the mutation when sorting\n\n return groupAndSortAlgorithm(queried).map(formatBatchOption)\n },\n // skip `getOptionLabel`, refer to TODO #memogetters\n [groupAndSortAlgorithm, formatBatchOption, searchValue, sourceOptions]\n )\n\n const [draggableOptions, setDraggableOptions] = React.useState<\n SuperSelectOption[]\n >([])\n\n React.useEffect(\n () => {\n if (!draggable) {\n return\n }\n // make a copy of source options to prevent the mutation when sorting\n const opts = groupAndSortAlgorithm(\n sourceOptions.map((opt) => ({\n ...opt,\n [draggableOptionIdSymbol]: ulid(),\n }))\n )\n setDraggableOptions(opts)\n },\n // in draggable mode, sourceOptions must be memoized, othewise reorder will not work\n [draggable, sourceOptions, groupAndSortAlgorithm]\n )\n\n const queriedDraggableOptions = React.useMemo(\n () => {\n if (!draggable) {\n return []\n }\n\n const queried = searchValue\n ? removeEmptyOptGroups(\n draggableOptions.filter((opt) => {\n if (!getOptionIsOptgroup(opt)) {\n return stringContains(getOptionLabel(opt), searchValue)\n }\n return true\n })\n )\n : draggableOptions\n\n return queried.map(formatBatchOption)\n },\n // skip `getOptionLabel`, refer to TODO #memogetters\n [draggable, draggableOptions, searchValue, formatBatchOption]\n )\n\n const groupIndices = React.useMemo(() => {\n return options.reduce((acc, opt, i) => {\n if (getOptionIsOptgroup(opt)) {\n acc.push(i)\n }\n return acc\n }, [] as number[])\n }, [options])\n\n const selectedIndex = React.useMemo(() => {\n return options.findIndex(\n (option) => isSelectableOption(option) && getOptionValue(option) === value\n )\n }, [options, value])\n\n const selectedOption = React.useMemo(() => {\n const val = Array.isArray(value) ? value[0] : value\n return options.find((option) => getOptionValue(option) === val)\n }, [options, value])\n\n const selectedLabel = React.useMemo(() => {\n return selectedOption ? getOptionLabel(selectedOption) : ''\n }, [selectedOption])\n\n function isSelectableOption(o: SuperSelectOption) {\n return !getOptionIsOptgroup(o) && !getOptionIsDisabled(o)\n }\n\n function getFirstSelectableOptionIndex() {\n return options.findIndex(isSelectableOption)\n }\n\n function onSelect(option: SuperSelectOption) {\n if (getOptionIsDisabled(option)) {\n return\n }\n\n const optionValue = getOptionValue(option)\n\n if (isMultiple(multiple, value)) {\n if (Array.isArray(optionValue)) {\n setValue(uniq([...value, ...optionValue]))\n } else {\n setValue(\n value.includes(optionValue)\n ? value.filter(\n (val: SuperSelectValuePrimitive) => val !== optionValue\n )\n : [...value, optionValue]\n )\n }\n } else {\n setValue(optionValue)\n }\n }\n\n function onKeyboardSelect() {\n if (activeMenuIndex !== null) {\n const option = options[activeMenuIndex]\n\n if (option) {\n onSelect(option)\n }\n }\n }\n\n function getOptionIsSelected(option: SuperSelectOption) {\n return Array.isArray(value)\n ? value.includes(getOptionValue(option))\n : value === getOptionValue(option)\n }\n\n function isEmpty() {\n return Array.isArray(value) ? value.length === 0 : value === null\n }\n\n const boundWidthRef = React.useRef(open)\n\n React.useEffect(() => {\n boundWidthRef.current = open\n }, [open])\n\n const floating = useFloating<HTMLElement>({\n open,\n onOpenChange: (open) => {\n setOpen(open)\n onOpenChange(open)\n },\n whileElementsMounted: autoUpdate,\n strategy: 'fixed',\n middleware: [\n offset(({ rects }) => {\n return {\n mainAxis: 2,\n crossAxis: overlayMatchesTriggerWidth\n ? 0\n : (rects.floating.width - rects.reference.width) / 2,\n }\n }),\n flip(),\n size({\n apply({ availableHeight, elements }) {\n if (boundWidthRef.current) {\n boundWidthRef.current = false\n setWidth(\n overlayMatchesTriggerWidth\n ? elements.reference.getBoundingClientRect().width\n : extendedSelectMenuWidth\n )\n }\n setMaxHeight(availableHeight)\n },\n padding: 10,\n }),\n ],\n })\n\n const { value: zIndex } = useZIndexContext()\n\n const { getReferenceProps, getFloatingProps, getItemProps } = useInteractions(\n [\n useClick(floating.context, {\n enabled: !disabled,\n keyboardHandlers: false,\n }),\n useDismiss(floating.context, {\n enabled: !disabled,\n }),\n useListNavigation(floating.context, {\n activeIndex: activeMenuIndex,\n disabledIndices: groupIndices,\n enabled: !disabled,\n listRef: navigationList,\n loop: true,\n onNavigate: (i) => setActiveMenuIndex(() => i),\n selectedIndex,\n virtual: true,\n }),\n useTokenNavigation(floating.context, {\n activeIndex: activeTokenIndex,\n enabled: !disabled && multiple && searchValue === '',\n onChange: setValue,\n onNavigate: (i) => setActiveTokenIndex(() => i),\n value,\n }),\n useKeyboardSelection(floating.context, {\n enabled: !disabled,\n onSelect: onKeyboardSelect,\n }),\n {\n reference: {\n $block: block,\n $disabled: disabled,\n $error: error,\n $hasClearIcon: !disabled && !loading,\n $loading: loading,\n $multiple: multiple,\n $open: open,\n $placeholder: !selectedLabel,\n 'aria-controls': search ? overlayId : listId,\n 'aria-expanded': open,\n 'aria-haspopup': search ? 'dialog' : 'listbox',\n onKeyDown() {\n setPointer(false)\n },\n role: 'combobox',\n search,\n tabIndex: disabled ? -1 : tabIndex,\n } as any, // TODO fix type\n floating: {\n role: search ? 'dialog' : 'none',\n id: overlayId,\n onKeyDown() {\n setPointer(false)\n },\n onPointerMove() {\n setPointer(true)\n },\n style: {\n position: floating.strategy,\n left: floating.x || 0,\n top: floating.y || 0,\n width,\n maxHeight,\n zIndex,\n },\n },\n },\n ]\n )\n\n function getLabelProps() {\n return {\n $hoverable: false,\n }\n }\n\n function getMultiInputProps(): React.AriaAttributes &\n React.InputHTMLAttributes<HTMLInputElement> & {\n ref: React.Ref<HTMLInputElement>\n } {\n return {\n ref: searchRef,\n placeholder: isEmpty() ? placeholder : '',\n disabled,\n 'aria-controls': listId,\n onKeyDown(e) {\n if (e.key === 'Tab') {\n if (open) {\n e.preventDefault()\n e.stopPropagation()\n floating.refs.floating.current?.focus()\n }\n }\n },\n onChange(e) {\n setSearchValue(e.currentTarget.value)\n setActiveTokenIndex(null)\n },\n style: {\n opacity: activeTokenIndex === null ? 1 : 0,\n },\n }\n }\n\n function getMultiValueProps(index: number) {\n return {\n onClick(e: React.MouseEvent) {\n // prevent the menu from closing\n e.stopPropagation()\n\n if (isMultiple(multiple, value)) {\n setValue(value.filter((_, i) => i !== index))\n }\n },\n }\n }\n\n function getSearchContainerProps() {\n return {\n ref: (el: HTMLElement | null) => {\n setSearchHeight(el?.clientHeight ?? 0)\n },\n }\n }\n\n function getSearchProps() {\n return {\n 'aria-controls': listId,\n onChange(value: string) {\n setSearchValue(value)\n setActiveTokenIndex(null)\n },\n placeholder: i18n.t('core.select.search'),\n }\n }\n\n function getHeaderProps() {\n return {\n ref: (el: HTMLElement | null) => {},\n }\n }\n\n function getFooterProps() {\n return {\n ref: (el: HTMLElement | null) => {\n setFooterHeight(el?.clientHeight ?? 0)\n },\n onKeyDown: (e: React.KeyboardEvent) => {\n if (e.key !== 'Escape') {\n e.stopPropagation()\n }\n },\n }\n }\n\n function getEmptyMessageProps() {\n return {\n emptyMessage,\n }\n }\n\n function getClearProps() {\n return {\n 'aria-hidden': true,\n 'aria-label': i18n.t('core.select.clear'),\n onClick(e: React.MouseEvent) {\n // prevent the menu from closing\n e.stopPropagation()\n\n setActiveTokenIndex(null)\n setValue(multiple ? [] : null)\n setOpen(true)\n },\n }\n }\n\n function getMenuProps() {\n return {\n scrollable: false,\n style: {\n height: listContainerHeight,\n },\n }\n }\n\n function getVirtuosoProps(): VirtuosoProps<{}, {}> {\n const atBottomStateChange = (atBottom: boolean) => {\n if (atBottom) {\n onScrollBottom()\n }\n }\n\n return {\n role: 'listbox',\n id: overlayId,\n data: draggable ? queriedDraggableOptions : options,\n components: {\n Item: components?.Item as any, // TODO fix type\n },\n initialTopMostItemIndex: selectedIndex >= 0 ? selectedIndex : 0,\n style: {\n flex: '1 1 auto',\n },\n tabIndex: -1,\n totalListHeightChanged: setListHeight,\n atBottomStateChange,\n }\n }\n\n const onDragEnd = React.useCallback((result) => {\n if (!result.destination) {\n return\n }\n if (result.source.index === result.destination.index) {\n return\n }\n\n const startIndex = result.source.index\n const destinationIndex = result.destination.index\n\n setDraggableOptions((options) => {\n const { nextOptions, prevGroup, nextGroup } = reorder(\n options,\n startIndex,\n destinationIndex\n )\n\n const adjustedOptions =\n prevGroup !== nextGroup\n ? nextOptions.map((option, index) => {\n if (index === destinationIndex) {\n return setOptionGroup(option, nextGroup)\n }\n return option\n })\n : nextOptions\n\n if (typeof onManualSort === 'function') {\n setTimeout(() => {\n onManualSort(\n adjustedOptions.filter((option) => !getOptionIsOptgroup(option))\n )\n }, 0)\n }\n\n return adjustedOptions\n })\n }, [])\n\n // run effect when the `open` state changes\n //\n // if it was closed and is now open, reset the highlighted index to be\n // the first selectable option\n //\n // if it was open and is now closed, reset the search value and focused token index\n React.useEffect(() => {\n if (open) {\n setActiveMenuIndex(() =>\n selectedIndex >= 0 ? selectedIndex : getFirstSelectableOptionIndex()\n )\n } else {\n setSearchValue(() => '')\n setActiveTokenIndex(() => null)\n }\n }, [open])\n\n // run the effect when user enters a serach value\n //\n // if the select is currently open then reset highlighted item to be the first\n // selectable option\n React.useEffect(() => {\n if (open) {\n setActiveMenuIndex(() => getFirstSelectableOptionIndex())\n }\n }, [searchValue])\n\n // when we change the value then close the overlay, but only if we have\n // actually selected a value\n //\n // multiple mode forces the overlay to stay open\n React.useEffect(() => {\n if (!multiple && value !== null) {\n setOpen(() => false)\n }\n }, [value])\n\n // recreate the array to hold dom refs when our options change\n React.useEffect(() => {\n navigationList.current = [...Array(options.length).fill(null)]\n }, [options])\n\n // scroll virtuoso list activeMenuIndex into view when the index changes\n React.useLayoutEffect(() => {\n if (activeMenuIndex !== null) {\n if (!pointer) {\n virtuoso.current?.scrollIntoView({ index: activeMenuIndex })\n }\n }\n }, [activeMenuIndex, open])\n\n return {\n config: {\n block,\n disabled,\n draggable,\n emptyMessage,\n error,\n footer,\n header,\n placeholder,\n preset,\n presetProps,\n selectionStyle,\n tabIndex,\n loading,\n multiple,\n },\n components,\n state: {\n activeMenuIndex,\n activeTokenIndex,\n isEmpty,\n listContainerHeight,\n listId,\n maxHeight,\n onDragEnd,\n onSelect,\n open,\n options: draggable ? queriedDraggableOptions : options,\n overlayId,\n searchValue,\n selectedIndex,\n selectedLabel,\n selectedOption,\n setOpen,\n setPointer,\n setSearchValue: setSearchValue,\n sourceOptions,\n value,\n width,\n },\n props: {\n clear: getClearProps,\n emptyMessage: getEmptyMessageProps,\n footer: getFooterProps,\n header: getHeaderProps,\n item: getItemProps,\n label: getLabelProps,\n menu: getMenuProps,\n multiInput: getMultiInputProps,\n overlay: getFloatingProps,\n search: getSearchProps,\n searchContainer: getSearchContainerProps,\n tokenClear: getMultiValueProps,\n trigger: getReferenceProps,\n virtuoso: getVirtuosoProps,\n },\n option: {\n group: getOptionGroup,\n isBatch: getOptionIsBatch,\n isSelected: getOptionIsSelected,\n isDisabled: getOptionIsDisabled,\n isOptgroup: getOptionIsOptgroup,\n label: getOptionLabel,\n value: getOptionValue,\n },\n refs: {\n floating,\n navigationList,\n virtuoso,\n },\n }\n}\n\nexport const SuperSelectContext = React.createContext<SuperSelectApi | null>(\n null\n)\n\nexport function useSuperSelectContext() {\n const ctx = React.useContext(SuperSelectContext)\n\n if (!ctx) {\n throw new Error('Invalid SuperSelectContext')\n }\n\n return ctx as SuperSelectApi\n}\n"],"mappings":";;;;;;;;;;;;;;;;AACA,SACEA,UAAU,EACVC,IAAI,EACJC,MAAM,EACNC,IAAI,EACJC,QAAQ,EACRC,UAAU,EACVC,WAAW,EACXC,eAAe,EACfC,iBAAiB,QACZ,oBAAoB;AAC3B,SAASC,KAAK,QAAQ,mBAAmB;AACzC,OAAOC,QAAQ,MAAM,iBAAiB;AACtC,OAAOC,IAAI,MAAM,aAAa;AAC9B,OAAOC,KAAK,MAAM,OAAO;AAEzB,SAASC,IAAI,QAAQ,MAAM;AAC3B,SAASC,cAAc,QAAQ,gBAAgB;AAC/C,SAASC,gBAAgB,QAAQ,kBAAkB;AACnD,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,OAAO,KAAKC,iBAAiB,MAAM,0BAA0B;AAC7D,SAASC,uBAAuB,QAAQ,yBAAyB;AACjE,SAASC,uBAAuB,QAAQ,sBAAsB;AAU9D,SACEC,gCAAgC,EAChCC,cAAc,EACdC,uBAAuB,EACvBC,wBAAwB,EACxBC,mBAAmB,EACnBC,0BAA0B,EAC1BC,UAAU,EACVC,oBAAoB,EACpBC,OAAO,EACPC,aAAa,QACR,qBAAqB;AAE5B,IAAMC,4BAA4B,GAAGd,OAAO,CAACe,EAAE,GAAG,CAAC;AAEnD,SAASC,IAAIA,CAAA,EAAG,CAAC;AAEjB,SAASC,qBAAqBA,CAACC,MAAyB,EAAE;EACxD,OAAOA,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEC,KAAK;AACtB;AAEA,SAASC,uBAAuBA,CAACF,MAAyB,EAAW;EACnE,OAAOG,KAAK,CAACC,OAAO,CAACJ,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEC,KAAK,CAAC;AACrC;AAEA,SAASI,0BAA0BA,CAACL,MAAyB,EAAW;EAAA,IAAAM,gBAAA;EACtE,QAAAA,gBAAA,GAAON,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEO,QAAQ,cAAAD,gBAAA,cAAAA,gBAAA,GAAI,KAAK;AAClC;AAEA,SAASE,qBAAqBA,CAACR,MAAyB,EAAU;EAAA,IAAAS,aAAA;EAChE,QAAAA,aAAA,GAAOT,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEU,KAAK,cAAAD,aAAA,cAAAA,aAAA,GAAI,EAAE;AAC5B;AAEA,SAASE,qBAAqBA,CAC5BX,MAAyB,EACzBU,KAAa,EACM;EACnB,OAAAE,aAAA,CAAAA,aAAA,KACKZ,MAAM;IACTU,KAAK,EAALA;EAAK;AAET;AAEA,SAASG,qBAAqBA,CAACb,MAAyB,EAAU;EAAA,IAAAc,aAAA;EAChE,QAAAA,aAAA,GAAOd,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAEe,KAAK,cAAAD,aAAA,cAAAA,aAAA,GAAI,EAAE;AAC5B;AAEA,SAASE,cAAcA,CAACC,IAAY,EAAEC,IAAY,EAAE;EAClD,OAAOD,IAAI,CAACE,WAAW,CAAC,CAAC,CAACC,QAAQ,CAACF,IAAI,CAACC,WAAW,CAAC,CAAC,CAAC;AACxD;AAEA,SAASE,kBAAkBA,CACzBC,OAAqC,EAQvB;EAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MADY,CAAC,CAAC;IAAAG,YAAA,GAAAJ,IAAA,CAL1BK,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,IAAI,GAAAA,YAAA;IAAAE,UAAA,GAAAN,IAAA,CACdtB,KAAK;IAALA,KAAK,GAAA4B,UAAA,cAAG,EAAE,GAAAA,UAAA;IAAAC,gBAAA,GAAAP,IAAA,CACVQ,WAAW;IAAXA,WAAW,GAAAD,gBAAA,cAAG,IAAI,GAAAA,gBAAA;IAAAE,eAAA,GAAAT,IAAA,CAClBU,UAAU;IAAVA,UAAU,GAAAD,eAAA,cAAGlC,IAAI,GAAAkC,eAAA;IAAAE,aAAA,GAAAX,IAAA,CACjBY,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAGpC,IAAI,GAAAoC,aAAA;EAGjB,OAAO;IACLE,SAAS,EAAE;MACTC,SAAS,WAAAA,UAACC,CAAC,EAAE;QACX,IAAI,CAACV,OAAO,IAAI,CAACzB,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,EAAE;UACrC;QACF;QAEA,IAAIqC,CAAC,CAACC,GAAG,KAAK,WAAW,EAAE;UACzB,IAAIR,WAAW,KAAK,IAAI,EAAE;YACxBE,UAAU,CAACO,IAAI,CAACC,GAAG,CAAC,CAAC,EAAEV,WAAW,GAAG,CAAC,CAAC,CAAC;UAC1C,CAAC,MAAM,IAAI9B,KAAK,CAACwB,MAAM,GAAG,CAAC,EAAE;YAC3BQ,UAAU,CAAChC,KAAK,CAACwB,MAAM,GAAG,CAAC,CAAC;UAC9B;QACF,CAAC,MAAM,IAAIa,CAAC,CAACC,GAAG,KAAK,YAAY,EAAE;UACjC,IAAIR,WAAW,KAAK,IAAI,EAAE;YACxB,IAAIA,WAAW,KAAK9B,KAAK,CAACwB,MAAM,GAAG,CAAC,EAAE;cACpCQ,UAAU,CAAC,IAAI,CAAC;YAClB,CAAC,MAAM;cACLA,UAAU,CAACF,WAAW,GAAG,CAAC,CAAC;YAC7B;UACF;QACF,CAAC,MAAM,IAAIO,CAAC,CAACC,GAAG,KAAK,WAAW,EAAE;UAChC,IAAI,CAACD,CAAC,CAACI,MAAM,EAAE;YACb,IAAIX,WAAW,KAAK,IAAI,EAAE;cACxB,IAAMY,OAAO,GAAG1C,KAAK,CAAC2C,MAAM,CAAC,UAACC,CAAC,EAAEC,CAAC;gBAAA,OAAKA,CAAC,KAAKf,WAAW;cAAA,EAAC;cAEzDI,QAAQ,CAACQ,OAAO,CAAC;cAEjB,IAAIZ,WAAW,IAAIY,OAAO,CAAClB,MAAM,EAAE;gBACjCQ,UAAU,CAAC,IAAI,CAAC;cAClB;YACF,CAAC,MAAM,IAAIhC,KAAK,CAACwB,MAAM,GAAG,CAAC,EAAE;cAC3BU,QAAQ,CAAClC,KAAK,CAAC2C,MAAM,CAAC,UAACC,CAAC,EAAEC,CAAC;gBAAA,OAAKA,CAAC,KAAK7C,KAAK,CAACwB,MAAM,GAAG,CAAC;cAAA,EAAC,CAAC;YAC1D;UACF;QACF;MACF;IACF;EACF,CAAC;AACH;AAEA,SAASsB,oBAAoBA,CAC3BzB,OAAqC,EAEvB;EAAA,IAAA0B,KAAA,GAAAxB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MADoD,CAAC,CAAC;IAAAyB,aAAA,GAAAD,KAAA,CAAlEpB,OAAO;IAAPA,OAAO,GAAAqB,aAAA,cAAG,IAAI,GAAAA,aAAA;IAAAC,cAAA,GAAAF,KAAA,CAAEG,QAAQ;IAARA,QAAQ,GAAAD,cAAA,cAAG,YAAM,CAAC,CAAC,GAAAA,cAAA;EAErC,SAASb,SAASA,CAACC,CAAsB,EAAE;IACzC,IAAI,CAACV,OAAO,EAAE;MACZ;IACF;IAEA,IAAIU,CAAC,CAACC,GAAG,KAAK,OAAO,EAAE;MACrBY,QAAQ,CAAC,CAAC;IACZ;EACF;EAEA,OAAO;IACLf,SAAS,EAAE;MACTC,SAAS,EAATA;IACF,CAAC;IACDe,QAAQ,EAAE;MACRf,SAAS,EAATA;IACF;EACF,CAAC;AACH;AAEA,OAAO,SAASgB,cAAcA,CAAAC,KAAA,EAgCR;EAAA,IAAAC,WAAA,GAAAD,KAAA,CA/BpBE,KAAK;IAALA,KAAK,GAAAD,WAAA,cAAG,KAAK,GAAAA,WAAA;IACDE,gBAAgB,GAAAH,KAAA,CAA5BI,UAAU;IACVC,YAAY,GAAAL,KAAA,CAAZK,YAAY;IAAAC,cAAA,GAAAN,KAAA,CACZ/C,QAAQ;IAARA,QAAQ,GAAAqD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAAAC,eAAA,GAAAP,KAAA,CAChBQ,SAAS;IAATA,SAAS,GAAAD,eAAA,cAAG,KAAK,GAAAA,eAAA;IAAAE,kBAAA,GAAAT,KAAA,CACjBU,YAAY;IAAZA,YAAY,GAAAD,kBAAA,cAAG,YAAY,GAAAA,kBAAA;IAC3BE,KAAK,GAAAX,KAAA,CAALW,KAAK;IACLC,MAAM,GAAAZ,KAAA,CAANY,MAAM;IAAAC,oBAAA,GAAAb,KAAA,CACNc,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAG3D,qBAAqB,GAAA2D,oBAAA;IAAAE,qBAAA,GAAAf,KAAA,CACtCgB,gBAAgB;IAAhBA,gBAAgB,GAAAD,qBAAA,cAAGnE,uBAAuB,GAAAmE,qBAAA;IAAAE,qBAAA,GAAAjB,KAAA,CAC1CkB,mBAAmB;IAAnBA,mBAAmB,GAAAD,qBAAA,cAAGlE,0BAA0B,GAAAkE,qBAAA;IAAAE,oBAAA,GAAAnB,KAAA,CAChDoB,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAG5D,qBAAqB,GAAA4D,oBAAA;IAAAE,oBAAA,GAAArB,KAAA,CACtCsB,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAG5E,qBAAqB,GAAA4E,oBAAA;IAAAE,oBAAA,GAAAvB,KAAA,CACtCwB,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAG/E,IAAI,GAAA+E,oBAAA;IAAAE,kBAAA,GAAAzB,KAAA,CACrB0B,YAAY;IAAZA,aAAY,GAAAD,kBAAA,cAAGjF,IAAI,GAAAiF,kBAAA;IACnBE,MAAM,GAAA3B,KAAA,CAAN2B,MAAM;IAAAC,aAAA,GAAA5B,KAAA,CACN6B,OAAO;IAAPA,OAAO,GAAAD,aAAA,cAAG,KAAK,GAAAA,aAAA;IAAAE,cAAA,GAAA9B,KAAA,CACf+B,QAAQ;IAARA,QAAQ,GAAAD,cAAA,cAAG,KAAK,GAAAA,cAAA;IAChBjD,QAAQ,GAAAmB,KAAA,CAARnB,QAAQ;IACRmD,YAAY,GAAAhC,KAAA,CAAZgC,YAAY;IAAAC,aAAA,GAAAjC,KAAA,CACZkC,OAAO;IAAEC,aAAa,GAAAF,aAAA,cAAG,EAAE,GAAAA,aAAA;IAC3BG,WAAW,GAAApC,KAAA,CAAXoC,WAAW;IAAAC,YAAA,GAAArC,KAAA,CACXsC,MAAM;IAANA,MAAM,GAAAD,YAAA,cAAG,EAAE,GAAAA,YAAA;IACXE,WAAW,GAAAvC,KAAA,CAAXuC,WAAW;IAAAC,YAAA,GAAAxC,KAAA,CACXyC,MAAM;IAANA,MAAM,GAAAD,YAAA,cAAG,IAAI,GAAAA,YAAA;IAAAE,oBAAA,GAAA1C,KAAA,CACb2C,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAG,WAAW,GAAAA,oBAAA;IAAAE,oBAAA,GAAA5C,KAAA,CAC5B6C,cAAc;IAAdA,cAAc,GAAAD,oBAAA,cAAGvF,qBAAqB,GAAAuF,oBAAA;IAAAE,UAAA,GAAA9C,KAAA,CACtC+C,IAAI;IAAJA,IAAI,GAAAD,UAAA,cAAG,IAAI,GAAAA,UAAA;IAAAE,cAAA,GAAAhD,KAAA,CACXiD,QAAQ;IAARA,QAAQ,GAAAD,cAAA,cAAG,CAAC,GAAAA,cAAA;IACLE,MAAM,GAAAlD,KAAA,CAAbrD,KAAK;IAAAwG,qBAAA,GAAAnD,KAAA,CACLoD,0BAA0B;IAA1BA,0BAA0B,GAAAD,qBAAA,cAAG,IAAI,GAAAA,qBAAA;EAEjC/H,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpB,IAAI,CAAC7C,SAAS,EAAE;MACd;IACF;IAEA,IAAM8C,oBAAoB,GAAGxC,cAAc,KAAK5D,qBAAqB;IACrE,IAAMqG,oBAAoB,GAAGV,cAAc,KAAKxF,qBAAqB;IAErE,IACGiG,oBAAoB,IAAI,CAACC,oBAAoB,IAC7C,CAACD,oBAAoB,IAAIC,oBAAqB,EAC/C;MACAC,OAAO,CAACC,IAAI,mLAGZ,CAAC;IACH;EACF,CAAC,EAAE,CAACjD,SAAS,EAAEM,cAAc,EAAE+B,cAAc,CAAC,CAAC;EAE/C,IAAMa,IAAI,GAAGpI,cAAc,CAAC,CAAC;EAE7B,IAAMqI,YAAY,GAAGtD,YAAY,aAAZA,YAAY,cAAZA,YAAY,GAAK0B,QAAQ,GAAG,EAAE,GAAG,IAAK;EAC3D,IAAA6B,eAAA,GAAsBxI,KAAK,CAACyI,QAAQ,CAAmBF,YAAY,CAAC;IAAAG,gBAAA,GAAAC,cAAA,CAAAH,eAAA;IAA7DI,GAAG,GAAAF,gBAAA;IAAEG,MAAM,GAAAH,gBAAA;EAClB,IAAMnH,KAAK,GAAGuG,MAAM,KAAK9E,SAAS,GAAG8E,MAAM,GAAGc,GAAG;EACjD,SAASE,QAAQA,CAACC,CAAmB,EAAE;IACrC,IAAI,CAACjB,MAAM,EAAE;MACXe,MAAM,CAACE,CAAC,CAAC;IACX;IAEA,IAAItF,QAAQ,EAAE;MACZA,QAAQ,CAACsF,CAAC,CAAC;IACb;EACF;EAEA,IAAMC,cAAc,GAAGhJ,KAAK,CAACiJ,MAAM,CAA4B,EAAE,CAAC;EAClE,IAAMC,QAAQ,GAAGlJ,KAAK,CAACiJ,MAAM,CAAiB,IAAI,CAAC;EACnD,IAAME,SAAS,GAAGnJ,KAAK,CAACiJ,MAAM,CAAmB,IAAI,CAAC;EAEtD,IAAMG,SAAS,GAAGvJ,KAAK,CAAC,CAAC,EAAC;EAC1B,IAAMwJ,MAAM,GAAGxJ,KAAK,CAAC,CAAC,EAAC;;EAEvB,IAAAyJ,gBAAA,GAAwBtJ,KAAK,CAACyI,QAAQ,CAAC,KAAK,CAAC;IAAAc,gBAAA,GAAAZ,cAAA,CAAAW,gBAAA;IAAtCE,IAAI,GAAAD,gBAAA;IAAEE,OAAO,GAAAF,gBAAA;EACpB,IAAAG,gBAAA,GAA8B1J,KAAK,CAACyI,QAAQ,CAAC,KAAK,CAAC;IAAAkB,gBAAA,GAAAhB,cAAA,CAAAe,gBAAA;IAA5CE,OAAO,GAAAD,gBAAA;IAAEE,UAAU,GAAAF,gBAAA;EAC1B,IAAAG,gBAAA,GAA0B9J,KAAK,CAACyI,QAAQ,CAAC,GAAG,CAAC;IAAAsB,gBAAA,GAAApB,cAAA,CAAAmB,gBAAA;IAAtCE,KAAK,GAAAD,gBAAA;IAAEE,QAAQ,GAAAF,gBAAA;EACtB,IAAAG,gBAAA,GAAkClK,KAAK,CAACyI,QAAQ,CAAC,GAAG,CAAC;IAAA0B,iBAAA,GAAAxB,cAAA,CAAAuB,gBAAA;IAA9CE,SAAS,GAAAD,iBAAA;IAAEE,YAAY,GAAAF,iBAAA;EAC9B,IAAAG,iBAAA,GAAoCtK,KAAK,CAACyI,QAAQ,CAAC,CAAC,CAAC;IAAA8B,iBAAA,GAAA5B,cAAA,CAAA2B,iBAAA;IAA9CE,UAAU,GAAAD,iBAAA;IAAEE,aAAa,GAAAF,iBAAA;EAChC,IAAAG,iBAAA,GAAwC1K,KAAK,CAACyI,QAAQ,CAAC,CAAC,CAAC;IAAAkC,iBAAA,GAAAhC,cAAA,CAAA+B,iBAAA;IAAlDE,YAAY,GAAAD,iBAAA;IAAEE,eAAe,GAAAF,iBAAA;EACpC,IAAAG,iBAAA,GAAwC9K,KAAK,CAACyI,QAAQ,CAAC,CAAC,CAAC;IAAAsC,iBAAA,GAAApC,cAAA,CAAAmC,iBAAA;IAAlDE,YAAY,GAAAD,iBAAA;IAAEE,eAAe,GAAAF,iBAAA;EACpC,IAAMG,mBAAmB,GAAGpH,IAAI,CAACqH,GAAG,CAClCf,SAAS,GAAGQ,YAAY,GAAGI,YAAY,GAAG9J,4BAA4B,EACtEsJ,UAAU,GAAGtJ,4BACf,CAAC;EACD,IAAAkK,iBAAA,GAAuCpL,KAAK,CAACyI,QAAQ,CAAC,EAAE,CAAC;IAAA4C,iBAAA,GAAA1C,cAAA,CAAAyC,iBAAA;IAAlDE,WAAW,GAAAD,iBAAA;IAAEE,eAAe,GAAAF,iBAAA;EACnC,IAAMG,cAAc,GAAG1L,QAAQ,CAACyL,eAAe,EAAE,GAAG,CAAC,EAAC;;EAEtD,IAAAE,iBAAA,GAA8CzL,KAAK,CAACyI,QAAQ,CAC1D,IACF,CAAC;IAAAiD,iBAAA,GAAA/C,cAAA,CAAA8C,iBAAA;IAFME,eAAe,GAAAD,iBAAA;IAAEE,kBAAkB,GAAAF,iBAAA;EAG1C,IAAAG,iBAAA,GAAgD7L,KAAK,CAACyI,QAAQ,CAC5D,IACF,CAAC;IAAAqD,iBAAA,GAAAnD,cAAA,CAAAkD,iBAAA;IAFME,gBAAgB,GAAAD,iBAAA;IAAEE,mBAAmB,GAAAF,iBAAA;EAI5C,IAAM9G,UAAU,GAAA9C,aAAA,CAAAA,aAAA,KACX7B,iBAAiB,GAChB0E,gBAAgB,IAAI,CAAC,CAAC,CAC3B;;EAED;EACA;EACA,IAAMkH,WAAW,GAAGjM,KAAK,CAACkM,OAAO,CAC/B;IAAA,OAAMrL,0BAA0B,CAAC;MAAE+E,gBAAgB,EAAhBA,gBAAgB;MAAEI,cAAc,EAAdA;IAAe,CAAC,CAAC;EAAA;EACtE;EACA,EACF,CAAC;EAED,IAAMmG,iBAAiB,GAAGnM,KAAK,CAACkM,OAAO,CACrC;IAAA,OACExL,uBAAuB,CAAC;MACtBa,KAAK,EAALA,KAAK;MACLoF,QAAQ,EAARA,QAAQ;MACRf,gBAAgB,EAAhBA,gBAAgB;MAChBM,cAAc,EAAdA;IACF,CAAC,CAAC;EAAA;EACJ;EACA,CAAC3E,KAAK,EAAEoF,QAAQ,CAClB,CAAC;;EAED;EACA,IAAMyF,0BAA0B,GAAGpM,KAAK,CAACqM,WAAW,CAClD,SAASC,YAAYA,CAACC,IAAyB,EAAE;IAC/C,IAAAC,qBAAA,GAAmChM,gCAAgC,CACjE+L,IAAI,EACJ7G,cACF,CAAC;MAHO+G,MAAM,GAAAD,qBAAA,CAANC,MAAM;MAAEC,cAAc,GAAAF,qBAAA,CAAdE,cAAc;IAK9B,IAAI/L,wBAAwB,CAAC8L,MAAM,CAAC,EAAE;MACpC,OAAOF,IAAI,CAAC5E,IAAI,CAACsE,WAAW,CAAC;IAC/B;IAEA,OAAOU,MAAM,CAACC,OAAO,CAACF,cAAc,CAAC,CAClC/E,IAAI,CAAC,UAAAkF,KAAA,EAAAC,KAAA;MAAA,IAAAC,KAAA,GAAApE,cAAA,CAAAkE,KAAA;QAAEG,MAAM,GAAAD,KAAA;MAAA,IAAAE,KAAA,GAAAtE,cAAA,CAAAmE,KAAA;QAAII,MAAM,GAAAD,KAAA;MAAA,OAAMhM,aAAa,CAAC+L,MAAM,EAAEE,MAAM,CAAC;IAAA,EAAC,CAC3DC,OAAO,CAAC,UAAAC,KAAA;MAAA,IAAAC,KAAA,GAAA1E,cAAA,CAAAyE,KAAA;QAAEE,SAAS,GAAAD,KAAA;QAAEE,YAAY,GAAAF,KAAA;MAAA,OAChC5M,cAAc,CAAC6M,SAAS,EAAEC,YAAY,CAAC5F,IAAI,CAACsE,WAAW,CAAC,CAAC;IAAA,CAC3D,CAAC;EACL,CAAC;EACD;EACA,CAACA,WAAW,CACd,CAAC;;EAED;EACA,IAAMuB,yBAAyB,GAAGxN,KAAK,CAACqM,WAAW,CACjD,UAACE,IAAyB,EAAK;IAC7B,IAAAkB,sBAAA,GAAmCjN,gCAAgC,CACjE+L,IAAI,EACJ7G,cACF,CAAC;MAHO+G,MAAM,GAAAgB,sBAAA,CAANhB,MAAM;MAAEC,cAAc,GAAAe,sBAAA,CAAdf,cAAc;IAK9B,IAAI/L,wBAAwB,CAAC8L,MAAM,CAAC,EAAE;MACpC,OAAOF,IAAI;IACb;;IAEA;IACA,OAAOE,MAAM,CAACU,OAAO,CAAC,UAACnL,KAAK,EAAK;MAC/B,IAAMuL,YAAY,GAAGb,cAAc,CAAC1K,KAAK,CAAC;MAE1C,OAAOvB,cAAc,CAACuB,KAAK,EAAEuL,YAAY,CAAC;IAC5C,CAAC,CAAC;EACJ,CAAC;EACD;EACA,EACF,CAAC;EAED,IAAMG,qBAAqB,GAAG1N,KAAK,CAACkM,OAAO,CACzC;IAAA,OAAOvE,IAAI,GAAGyE,0BAA0B,GAAGoB,yBAAyB;EAAA,CAAC,EACrE,CAAC7F,IAAI,EAAEyE,0BAA0B,EAAEoB,yBAAyB,CAC9D,CAAC;EAED,IAAM1G,OAAO,GAAG9G,KAAK,CAACkM,OAAO,CAC3B,YAAM;IACJ,IAAMyB,OAAO,GAAGrC,WAAW,GACvBvE,aAAa,CAAC7C,MAAM,CAAC,UAAC0J,GAAG;MAAA,OACvBtL,cAAc,CAAC0D,cAAc,CAAC4H,GAAG,CAAC,EAAEtC,WAAW,CAAC;IAAA,CAClD,CAAC,GAAAuC,kBAAA,CACG9G,aAAa,CAAC,EAAC;;IAEvB,OAAO2G,qBAAqB,CAACC,OAAO,CAAC,CAACG,GAAG,CAAC3B,iBAAiB,CAAC;EAC9D,CAAC;EACD;EACA,CAACuB,qBAAqB,EAAEvB,iBAAiB,EAAEb,WAAW,EAAEvE,aAAa,CACvE,CAAC;EAED,IAAAgH,iBAAA,GAAgD/N,KAAK,CAACyI,QAAQ,CAE5D,EAAE,CAAC;IAAAuF,iBAAA,GAAArF,cAAA,CAAAoF,iBAAA;IAFEE,gBAAgB,GAAAD,iBAAA;IAAEE,mBAAmB,GAAAF,iBAAA;EAI5ChO,KAAK,CAACiI,SAAS,CACb,YAAM;IACJ,IAAI,CAAC7C,SAAS,EAAE;MACd;IACF;IACA;IACA,IAAMmH,IAAI,GAAGmB,qBAAqB,CAChC3G,aAAa,CAAC+G,GAAG,CAAC,UAACF,GAAG;MAAA,OAAA1L,aAAA,CAAAA,aAAA,KACjB0L,GAAG,OAAAO,eAAA,KACL7N,uBAAuB,EAAGL,IAAI,CAAC,CAAC;IAAA,CACjC,CACJ,CAAC;IACDiO,mBAAmB,CAAC3B,IAAI,CAAC;EAC3B,CAAC;EACD;EACA,CAACnH,SAAS,EAAE2B,aAAa,EAAE2G,qBAAqB,CAClD,CAAC;EAED,IAAMU,uBAAuB,GAAGpO,KAAK,CAACkM,OAAO,CAC3C,YAAM;IACJ,IAAI,CAAC9G,SAAS,EAAE;MACd,OAAO,EAAE;IACX;IAEA,IAAMuI,OAAO,GAAGrC,WAAW,GACvBvK,oBAAoB,CAClBkN,gBAAgB,CAAC/J,MAAM,CAAC,UAAC0J,GAAG,EAAK;MAC/B,IAAI,CAAChN,mBAAmB,CAACgN,GAAG,CAAC,EAAE;QAC7B,OAAOtL,cAAc,CAAC0D,cAAc,CAAC4H,GAAG,CAAC,EAAEtC,WAAW,CAAC;MACzD;MACA,OAAO,IAAI;IACb,CAAC,CACH,CAAC,GACD2C,gBAAgB;IAEpB,OAAON,OAAO,CAACG,GAAG,CAAC3B,iBAAiB,CAAC;EACvC,CAAC;EACD;EACA,CAAC/G,SAAS,EAAE6I,gBAAgB,EAAE3C,WAAW,EAAEa,iBAAiB,CAC9D,CAAC;EAED,IAAMkC,YAAY,GAAGrO,KAAK,CAACkM,OAAO,CAAC,YAAM;IACvC,OAAOpF,OAAO,CAACwH,MAAM,CAAC,UAACC,GAAG,EAAEX,GAAG,EAAExJ,CAAC,EAAK;MACrC,IAAIxD,mBAAmB,CAACgN,GAAG,CAAC,EAAE;QAC5BW,GAAG,CAACC,IAAI,CAACpK,CAAC,CAAC;MACb;MACA,OAAOmK,GAAG;IACZ,CAAC,EAAE,EAAc,CAAC;EACpB,CAAC,EAAE,CAACzH,OAAO,CAAC,CAAC;EAEb,IAAM2H,aAAa,GAAGzO,KAAK,CAACkM,OAAO,CAAC,YAAM;IACxC,OAAOpF,OAAO,CAAC4H,SAAS,CACtB,UAACpN,MAAM;MAAA,OAAKqN,kBAAkB,CAACrN,MAAM,CAAC,IAAI4E,cAAc,CAAC5E,MAAM,CAAC,KAAKC,KAAK;IAAA,CAC5E,CAAC;EACH,CAAC,EAAE,CAACuF,OAAO,EAAEvF,KAAK,CAAC,CAAC;EAEpB,IAAMqN,cAAc,GAAG5O,KAAK,CAACkM,OAAO,CAAC,YAAM;IACzC,IAAMtD,GAAG,GAAGnH,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,GAAGA,KAAK,CAAC,CAAC,CAAC,GAAGA,KAAK;IACnD,OAAOuF,OAAO,CAAC+H,IAAI,CAAC,UAACvN,MAAM;MAAA,OAAK4E,cAAc,CAAC5E,MAAM,CAAC,KAAKsH,GAAG;IAAA,EAAC;EACjE,CAAC,EAAE,CAAC9B,OAAO,EAAEvF,KAAK,CAAC,CAAC;EAEpB,IAAMuN,aAAa,GAAG9O,KAAK,CAACkM,OAAO,CAAC,YAAM;IACxC,OAAO0C,cAAc,GAAG5I,cAAc,CAAC4I,cAAc,CAAC,GAAG,EAAE;EAC7D,CAAC,EAAE,CAACA,cAAc,CAAC,CAAC;EAEpB,SAASD,kBAAkBA,CAACI,CAAoB,EAAE;IAChD,OAAO,CAACnO,mBAAmB,CAACmO,CAAC,CAAC,IAAI,CAACjJ,mBAAmB,CAACiJ,CAAC,CAAC;EAC3D;EAEA,SAASC,6BAA6BA,CAAA,EAAG;IACvC,OAAOlI,OAAO,CAAC4H,SAAS,CAACC,kBAAkB,CAAC;EAC9C;EAEA,SAASlK,QAAQA,CAACnD,MAAyB,EAAE;IAC3C,IAAIwE,mBAAmB,CAACxE,MAAM,CAAC,EAAE;MAC/B;IACF;IAEA,IAAM2N,WAAW,GAAG/I,cAAc,CAAC5E,MAAM,CAAC;IAE1C,IAAIR,UAAU,CAAC6F,QAAQ,EAAEpF,KAAK,CAAC,EAAE;MAC/B,IAAIE,KAAK,CAACC,OAAO,CAACuN,WAAW,CAAC,EAAE;QAC9BnG,QAAQ,CAAC/I,IAAI,IAAAmP,MAAA,CAAArB,kBAAA,CAAKtM,KAAK,GAAAsM,kBAAA,CAAKoB,WAAW,EAAC,CAAC,CAAC;MAC5C,CAAC,MAAM;QACLnG,QAAQ,CACNvH,KAAK,CAACmB,QAAQ,CAACuM,WAAW,CAAC,GACvB1N,KAAK,CAAC2C,MAAM,CACV,UAAC0E,GAA8B;UAAA,OAAKA,GAAG,KAAKqG,WAAW;QAAA,CACzD,CAAC,MAAAC,MAAA,CAAArB,kBAAA,CACGtM,KAAK,IAAE0N,WAAW,EAC5B,CAAC;MACH;IACF,CAAC,MAAM;MACLnG,QAAQ,CAACmG,WAAW,CAAC;IACvB;EACF;EAEA,SAASE,gBAAgBA,CAAA,EAAG;IAC1B,IAAIxD,eAAe,KAAK,IAAI,EAAE;MAC5B,IAAMrK,MAAM,GAAGwF,OAAO,CAAC6E,eAAe,CAAC;MAEvC,IAAIrK,MAAM,EAAE;QACVmD,QAAQ,CAACnD,MAAM,CAAC;MAClB;IACF;EACF;EAEA,SAAS8N,mBAAmBA,CAAC9N,MAAyB,EAAE;IACtD,OAAOG,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,GACvBA,KAAK,CAACmB,QAAQ,CAACwD,cAAc,CAAC5E,MAAM,CAAC,CAAC,GACtCC,KAAK,KAAK2E,cAAc,CAAC5E,MAAM,CAAC;EACtC;EAEA,SAAS+N,OAAOA,CAAA,EAAG;IACjB,OAAO5N,KAAK,CAACC,OAAO,CAACH,KAAK,CAAC,GAAGA,KAAK,CAACwB,MAAM,KAAK,CAAC,GAAGxB,KAAK,KAAK,IAAI;EACnE;EAEA,IAAM+N,aAAa,GAAGtP,KAAK,CAACiJ,MAAM,CAACO,IAAI,CAAC;EAExCxJ,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpBqH,aAAa,CAACC,OAAO,GAAG/F,IAAI;EAC9B,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,IAAM9E,QAAQ,GAAGhF,WAAW,CAAc;IACxC8J,IAAI,EAAJA,IAAI;IACJlD,YAAY,EAAE,SAAAA,aAACkD,IAAI,EAAK;MACtBC,OAAO,CAACD,IAAI,CAAC;MACblD,aAAY,CAACkD,IAAI,CAAC;IACpB,CAAC;IACDgG,oBAAoB,EAAEpQ,UAAU;IAChCqQ,QAAQ,EAAE,OAAO;IACjBC,UAAU,EAAE,CACVpQ,MAAM,CAAC,UAAAqQ,MAAA,EAAe;MAAA,IAAZC,KAAK,GAAAD,MAAA,CAALC,KAAK;MACb,OAAO;QACLC,QAAQ,EAAE,CAAC;QACXC,SAAS,EAAE9H,0BAA0B,GACjC,CAAC,GACD,CAAC4H,KAAK,CAAClL,QAAQ,CAACsF,KAAK,GAAG4F,KAAK,CAAClM,SAAS,CAACsG,KAAK,IAAI;MACvD,CAAC;IACH,CAAC,CAAC,EACF3K,IAAI,CAAC,CAAC,EACNE,IAAI,CAAC;MACHwQ,KAAK,WAAAA,MAAAC,MAAA,EAAgC;QAAA,IAA7BC,eAAe,GAAAD,MAAA,CAAfC,eAAe;UAAEC,QAAQ,GAAAF,MAAA,CAARE,QAAQ;QAC/B,IAAIZ,aAAa,CAACC,OAAO,EAAE;UACzBD,aAAa,CAACC,OAAO,GAAG,KAAK;UAC7BtF,QAAQ,CACNjC,0BAA0B,GACtBkI,QAAQ,CAACxM,SAAS,CAACyM,qBAAqB,CAAC,CAAC,CAACnG,KAAK,GAChDzJ,uBACN,CAAC;QACH;QACA8J,YAAY,CAAC4F,eAAe,CAAC;MAC/B,CAAC;MACDG,OAAO,EAAE;IACX,CAAC,CAAC;EAEN,CAAC,CAAC;EAEF,IAAAC,iBAAA,GAA0BlQ,gBAAgB,CAAC,CAAC;IAA7BmQ,MAAM,GAAAD,iBAAA,CAAb9O,KAAK;EAEb,IAAAgP,gBAAA,GAA8D5Q,eAAe,CAC3E,CACEH,QAAQ,CAACkF,QAAQ,CAAC9B,OAAO,EAAE;MACzBM,OAAO,EAAE,CAACrB,QAAQ;MAClB2O,gBAAgB,EAAE;IACpB,CAAC,CAAC,EACF/Q,UAAU,CAACiF,QAAQ,CAAC9B,OAAO,EAAE;MAC3BM,OAAO,EAAE,CAACrB;IACZ,CAAC,CAAC,EACFjC,iBAAiB,CAAC8E,QAAQ,CAAC9B,OAAO,EAAE;MAClCS,WAAW,EAAEsI,eAAe;MAC5B8E,eAAe,EAAEpC,YAAY;MAC7BnL,OAAO,EAAE,CAACrB,QAAQ;MAClB6O,OAAO,EAAE1H,cAAc;MACvB2H,IAAI,EAAE,IAAI;MACVpN,UAAU,EAAE,SAAAA,WAACa,CAAC;QAAA,OAAKwH,kBAAkB,CAAC;UAAA,OAAMxH,CAAC;QAAA,EAAC;MAAA;MAC9CqK,aAAa,EAAbA,aAAa;MACbmC,OAAO,EAAE;IACX,CAAC,CAAC,EACFjO,kBAAkB,CAAC+B,QAAQ,CAAC9B,OAAO,EAAE;MACnCS,WAAW,EAAE0I,gBAAgB;MAC7B7I,OAAO,EAAE,CAACrB,QAAQ,IAAI8E,QAAQ,IAAI2E,WAAW,KAAK,EAAE;MACpD7H,QAAQ,EAAEqF,QAAQ;MAClBvF,UAAU,EAAE,SAAAA,WAACa,CAAC;QAAA,OAAK4H,mBAAmB,CAAC;UAAA,OAAM5H,CAAC;QAAA,EAAC;MAAA;MAC/C7C,KAAK,EAALA;IACF,CAAC,CAAC,EACF8C,oBAAoB,CAACK,QAAQ,CAAC9B,OAAO,EAAE;MACrCM,OAAO,EAAE,CAACrB,QAAQ;MAClB4C,QAAQ,EAAE0K;IACZ,CAAC,CAAC,EACF;MACEzL,SAAS,EAAE;QACTmN,MAAM,EAAE/L,KAAK;QACbgM,SAAS,EAAEjP,QAAQ;QACnBkP,MAAM,EAAExL,KAAK;QACbyL,aAAa,EAAE,CAACnP,QAAQ,IAAI,CAAC4E,OAAO;QACpCwK,QAAQ,EAAExK,OAAO;QACjByK,SAAS,EAAEvK,QAAQ;QACnBwK,KAAK,EAAE3H,IAAI;QACX4H,YAAY,EAAE,CAACtC,aAAa;QAC5B,eAAe,EAAEzH,MAAM,GAAG+B,SAAS,GAAGC,MAAM;QAC5C,eAAe,EAAEG,IAAI;QACrB,eAAe,EAAEnC,MAAM,GAAG,QAAQ,GAAG,SAAS;QAC9C1D,SAAS,WAAAA,UAAA,EAAG;UACVkG,UAAU,CAAC,KAAK,CAAC;QACnB,CAAC;QACDwH,IAAI,EAAE,UAAU;QAChBhK,MAAM,EAANA,MAAM;QACNQ,QAAQ,EAAEhG,QAAQ,GAAG,CAAC,CAAC,GAAGgG;MAC5B,CAAQ;MAAE;MACVnD,QAAQ,EAAE;QACR2M,IAAI,EAAEhK,MAAM,GAAG,QAAQ,GAAG,MAAM;QAChCiK,EAAE,EAAElI,SAAS;QACbzF,SAAS,WAAAA,UAAA,EAAG;UACVkG,UAAU,CAAC,KAAK,CAAC;QACnB,CAAC;QACD0H,aAAa,WAAAA,cAAA,EAAG;UACd1H,UAAU,CAAC,IAAI,CAAC;QAClB,CAAC;QACD2H,KAAK,EAAE;UACLC,QAAQ,EAAE/M,QAAQ,CAAC+K,QAAQ;UAC3BiC,IAAI,EAAEhN,QAAQ,CAACiN,CAAC,IAAI,CAAC;UACrBC,GAAG,EAAElN,QAAQ,CAACmN,CAAC,IAAI,CAAC;UACpB7H,KAAK,EAALA,KAAK;UACLI,SAAS,EAATA,SAAS;UACTkG,MAAM,EAANA;QACF;MACF;IACF,CAAC,CAEL,CAAC;IAtEOwB,iBAAiB,GAAAvB,gBAAA,CAAjBuB,iBAAiB;IAAEC,gBAAgB,GAAAxB,gBAAA,CAAhBwB,gBAAgB;IAAEC,YAAY,GAAAzB,gBAAA,CAAZyB,YAAY;EAwEzD,SAASC,aAAaA,CAAA,EAAG;IACvB,OAAO;MACLC,UAAU,EAAE;IACd,CAAC;EACH;EAEA,SAASC,kBAAkBA,CAAA,EAGvB;IACF,OAAO;MACLC,GAAG,EAAEjJ,SAAS;MACdnC,WAAW,EAAEqI,OAAO,CAAC,CAAC,GAAGrI,WAAW,GAAG,EAAE;MACzCnF,QAAQ,EAARA,QAAQ;MACR,eAAe,EAAEwH,MAAM;MACvB1F,SAAS,WAAAA,UAACC,CAAC,EAAE;QACX,IAAIA,CAAC,CAACC,GAAG,KAAK,KAAK,EAAE;UACnB,IAAI2F,IAAI,EAAE;YAAA,IAAA6I,qBAAA;YACRzO,CAAC,CAAC0O,cAAc,CAAC,CAAC;YAClB1O,CAAC,CAAC2O,eAAe,CAAC,CAAC;YACnB,CAAAF,qBAAA,GAAA3N,QAAQ,CAAC8N,IAAI,CAAC9N,QAAQ,CAAC6K,OAAO,cAAA8C,qBAAA,uBAA9BA,qBAAA,CAAgCI,KAAK,CAAC,CAAC;UACzC;QACF;MACF,CAAC;MACDhP,QAAQ,WAAAA,SAACG,CAAC,EAAE;QACV4H,cAAc,CAAC5H,CAAC,CAAC8O,aAAa,CAACnR,KAAK,CAAC;QACrCyK,mBAAmB,CAAC,IAAI,CAAC;MAC3B,CAAC;MACDwF,KAAK,EAAE;QACLmB,OAAO,EAAE5G,gBAAgB,KAAK,IAAI,GAAG,CAAC,GAAG;MAC3C;IACF,CAAC;EACH;EAEA,SAAS6G,kBAAkBA,CAACC,KAAa,EAAE;IACzC,OAAO;MACLC,OAAO,WAAAA,QAAClP,CAAmB,EAAE;QAC3B;QACAA,CAAC,CAAC2O,eAAe,CAAC,CAAC;QAEnB,IAAIzR,UAAU,CAAC6F,QAAQ,EAAEpF,KAAK,CAAC,EAAE;UAC/BuH,QAAQ,CAACvH,KAAK,CAAC2C,MAAM,CAAC,UAACC,CAAC,EAAEC,CAAC;YAAA,OAAKA,CAAC,KAAKyO,KAAK;UAAA,EAAC,CAAC;QAC/C;MACF;IACF,CAAC;EACH;EAEA,SAASE,uBAAuBA,CAAA,EAAG;IACjC,OAAO;MACLX,GAAG,EAAE,SAAAA,IAACY,EAAsB,EAAK;QAAA,IAAAC,gBAAA;QAC/BpI,eAAe,EAAAoI,gBAAA,GAACD,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEE,YAAY,cAAAD,gBAAA,cAAAA,gBAAA,GAAI,CAAC,CAAC;MACxC;IACF,CAAC;EACH;EAEA,SAASE,cAAcA,CAAA,EAAG;IACxB,OAAO;MACL,eAAe,EAAE9J,MAAM;MACvB5F,QAAQ,WAAAA,SAAClC,KAAa,EAAE;QACtBiK,cAAc,CAACjK,KAAK,CAAC;QACrByK,mBAAmB,CAAC,IAAI,CAAC;MAC3B,CAAC;MACDhF,WAAW,EAAEsB,IAAI,CAAC8K,CAAC,CAAC,oBAAoB;IAC1C,CAAC;EACH;EAEA,SAASC,cAAcA,CAAA,EAAG;IACxB,OAAO;MACLjB,GAAG,EAAE,SAAAA,IAACY,EAAsB,EAAK,CAAC;IACpC,CAAC;EACH;EAEA,SAASM,cAAcA,CAAA,EAAG;IACxB,OAAO;MACLlB,GAAG,EAAE,SAAAA,IAACY,EAAsB,EAAK;QAAA,IAAAO,iBAAA;QAC/BtI,eAAe,EAAAsI,iBAAA,GAACP,EAAE,aAAFA,EAAE,uBAAFA,EAAE,CAAEE,YAAY,cAAAK,iBAAA,cAAAA,iBAAA,GAAI,CAAC,CAAC;MACxC,CAAC;MACD5P,SAAS,EAAE,SAAAA,UAACC,CAAsB,EAAK;QACrC,IAAIA,CAAC,CAACC,GAAG,KAAK,QAAQ,EAAE;UACtBD,CAAC,CAAC2O,eAAe,CAAC,CAAC;QACrB;MACF;IACF,CAAC;EACH;EAEA,SAASiB,oBAAoBA,CAAA,EAAG;IAC9B,OAAO;MACLlO,YAAY,EAAZA;IACF,CAAC;EACH;EAEA,SAASmO,aAAaA,CAAA,EAAG;IACvB,OAAO;MACL,aAAa,EAAE,IAAI;MACnB,YAAY,EAAEnL,IAAI,CAAC8K,CAAC,CAAC,mBAAmB,CAAC;MACzCN,OAAO,WAAAA,QAAClP,CAAmB,EAAE;QAC3B;QACAA,CAAC,CAAC2O,eAAe,CAAC,CAAC;QAEnBvG,mBAAmB,CAAC,IAAI,CAAC;QACzBlD,QAAQ,CAACnC,QAAQ,GAAG,EAAE,GAAG,IAAI,CAAC;QAC9B8C,OAAO,CAAC,IAAI,CAAC;MACf;IACF,CAAC;EACH;EAEA,SAASiK,YAAYA,CAAA,EAAG;IACtB,OAAO;MACLC,UAAU,EAAE,KAAK;MACjBnC,KAAK,EAAE;QACLoC,MAAM,EAAE1I;MACV;IACF,CAAC;EACH;EAEA,SAAS2I,gBAAgBA,CAAA,EAA0B;IACjD,IAAMC,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAIC,QAAiB,EAAK;MACjD,IAAIA,QAAQ,EAAE;QACZ3N,cAAc,CAAC,CAAC;MAClB;IACF,CAAC;IAED,OAAO;MACLiL,IAAI,EAAE,SAAS;MACfC,EAAE,EAAElI,SAAS;MACb4K,IAAI,EAAE5O,SAAS,GAAGgJ,uBAAuB,GAAGtH,OAAO;MACnD9B,UAAU,EAAE;QACViP,IAAI,EAAEjP,UAAU,aAAVA,UAAU,uBAAVA,UAAU,CAAEiP,IAAW,CAAE;MACjC,CAAC;;MACDC,uBAAuB,EAAEzF,aAAa,IAAI,CAAC,GAAGA,aAAa,GAAG,CAAC;MAC/D+C,KAAK,EAAE;QACL2C,IAAI,EAAE;MACR,CAAC;MACDtM,QAAQ,EAAE,CAAC,CAAC;MACZuM,sBAAsB,EAAE3J,aAAa;MACrCqJ,mBAAmB,EAAnBA;IACF,CAAC;EACH;EAEA,IAAMO,SAAS,GAAGrU,KAAK,CAACqM,WAAW,CAAC,UAACiI,MAAM,EAAK;IAC9C,IAAI,CAACA,MAAM,CAACC,WAAW,EAAE;MACvB;IACF;IACA,IAAID,MAAM,CAACE,MAAM,CAAC3B,KAAK,KAAKyB,MAAM,CAACC,WAAW,CAAC1B,KAAK,EAAE;MACpD;IACF;IAEA,IAAM4B,UAAU,GAAGH,MAAM,CAACE,MAAM,CAAC3B,KAAK;IACtC,IAAM6B,gBAAgB,GAAGJ,MAAM,CAACC,WAAW,CAAC1B,KAAK;IAEjD3E,mBAAmB,CAAC,UAACpH,OAAO,EAAK;MAC/B,IAAA6N,QAAA,GAA8C3T,OAAO,CACnD8F,OAAO,EACP2N,UAAU,EACVC,gBACF,CAAC;QAJOE,WAAW,GAAAD,QAAA,CAAXC,WAAW;QAAEC,SAAS,GAAAF,QAAA,CAATE,SAAS;QAAEC,SAAS,GAAAH,QAAA,CAATG,SAAS;MAMzC,IAAMC,eAAe,GACnBF,SAAS,KAAKC,SAAS,GACnBF,WAAW,CAAC9G,GAAG,CAAC,UAACxM,MAAM,EAAEuR,KAAK,EAAK;QACjC,IAAIA,KAAK,KAAK6B,gBAAgB,EAAE;UAC9B,OAAOjN,cAAc,CAACnG,MAAM,EAAEwT,SAAS,CAAC;QAC1C;QACA,OAAOxT,MAAM;MACf,CAAC,CAAC,GACFsT,WAAW;MAEjB,IAAI,OAAOhO,YAAY,KAAK,UAAU,EAAE;QACtCoO,UAAU,CAAC,YAAM;UACfpO,YAAY,CACVmO,eAAe,CAAC7Q,MAAM,CAAC,UAAC5C,MAAM;YAAA,OAAK,CAACV,mBAAmB,CAACU,MAAM,CAAC;UAAA,EACjE,CAAC;QACH,CAAC,EAAE,CAAC,CAAC;MACP;MAEA,OAAOyT,eAAe;IACxB,CAAC,CAAC;EACJ,CAAC,EAAE,EAAE,CAAC;;EAEN;EACA;EACA;EACA;EACA;EACA;EACA/U,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpB,IAAIuB,IAAI,EAAE;MACRoC,kBAAkB,CAAC;QAAA,OACjB6C,aAAa,IAAI,CAAC,GAAGA,aAAa,GAAGO,6BAA6B,CAAC,CAAC;MAAA,CACtE,CAAC;IACH,CAAC,MAAM;MACLxD,cAAc,CAAC;QAAA,OAAM,EAAE;MAAA,EAAC;MACxBQ,mBAAmB,CAAC;QAAA,OAAM,IAAI;MAAA,EAAC;IACjC;EACF,CAAC,EAAE,CAACxC,IAAI,CAAC,CAAC;;EAEV;EACA;EACA;EACA;EACAxJ,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpB,IAAIuB,IAAI,EAAE;MACRoC,kBAAkB,CAAC;QAAA,OAAMoD,6BAA6B,CAAC,CAAC;MAAA,EAAC;IAC3D;EACF,CAAC,EAAE,CAAC1D,WAAW,CAAC,CAAC;;EAEjB;EACA;EACA;EACA;EACAtL,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpB,IAAI,CAACtB,QAAQ,IAAIpF,KAAK,KAAK,IAAI,EAAE;MAC/BkI,OAAO,CAAC;QAAA,OAAM,KAAK;MAAA,EAAC;IACtB;EACF,CAAC,EAAE,CAAClI,KAAK,CAAC,CAAC;;EAEX;EACAvB,KAAK,CAACiI,SAAS,CAAC,YAAM;IACpBe,cAAc,CAACuG,OAAO,GAAA1B,kBAAA,CAAOpM,KAAK,CAACqF,OAAO,CAAC/D,MAAM,CAAC,CAACkS,IAAI,CAAC,IAAI,CAAC,CAAC;EAChE,CAAC,EAAE,CAACnO,OAAO,CAAC,CAAC;;EAEb;EACA9G,KAAK,CAACkV,eAAe,CAAC,YAAM;IAC1B,IAAIvJ,eAAe,KAAK,IAAI,EAAE;MAC5B,IAAI,CAAC/B,OAAO,EAAE;QAAA,IAAAuL,iBAAA;QACZ,CAAAA,iBAAA,GAAAjM,QAAQ,CAACqG,OAAO,cAAA4F,iBAAA,uBAAhBA,iBAAA,CAAkBC,cAAc,CAAC;UAAEvC,KAAK,EAAElH;QAAgB,CAAC,CAAC;MAC9D;IACF;EACF,CAAC,EAAE,CAACA,eAAe,EAAEnC,IAAI,CAAC,CAAC;EAE3B,OAAO;IACL6L,MAAM,EAAE;MACNvQ,KAAK,EAALA,KAAK;MACLjD,QAAQ,EAARA,QAAQ;MACRuD,SAAS,EAATA,SAAS;MACTE,YAAY,EAAZA,YAAY;MACZC,KAAK,EAALA,KAAK;MACLC,MAAM,EAANA,MAAM;MACNe,MAAM,EAANA,MAAM;MACNS,WAAW,EAAXA,WAAW;MACXE,MAAM,EAANA,MAAM;MACNC,WAAW,EAAXA,WAAW;MACXI,cAAc,EAAdA,cAAc;MACdM,QAAQ,EAARA,QAAQ;MACRpB,OAAO,EAAPA,OAAO;MACPE,QAAQ,EAARA;IACF,CAAC;IACD3B,UAAU,EAAVA,UAAU;IACVsQ,KAAK,EAAE;MACL3J,eAAe,EAAfA,eAAe;MACfI,gBAAgB,EAAhBA,gBAAgB;MAChBsD,OAAO,EAAPA,OAAO;MACPnE,mBAAmB,EAAnBA,mBAAmB;MACnB7B,MAAM,EAANA,MAAM;MACNe,SAAS,EAATA,SAAS;MACTiK,SAAS,EAATA,SAAS;MACT5P,QAAQ,EAARA,QAAQ;MACR+E,IAAI,EAAJA,IAAI;MACJ1C,OAAO,EAAE1B,SAAS,GAAGgJ,uBAAuB,GAAGtH,OAAO;MACtDsC,SAAS,EAATA,SAAS;MACTkC,WAAW,EAAXA,WAAW;MACXmD,aAAa,EAAbA,aAAa;MACbK,aAAa,EAAbA,aAAa;MACbF,cAAc,EAAdA,cAAc;MACdnF,OAAO,EAAPA,OAAO;MACPI,UAAU,EAAVA,UAAU;MACV2B,cAAc,EAAEA,cAAc;MAC9BzE,aAAa,EAAbA,aAAa;MACbxF,KAAK,EAALA,KAAK;MACLyI,KAAK,EAALA;IACF,CAAC;IACDuL,KAAK,EAAE;MACLC,KAAK,EAAE/B,aAAa;MACpBnO,YAAY,EAAEkO,oBAAoB;MAClChO,MAAM,EAAE8N,cAAc;MACtB/M,MAAM,EAAE8M,cAAc;MACtBoC,IAAI,EAAEzD,YAAY;MAClB3P,KAAK,EAAE4P,aAAa;MACpByD,IAAI,EAAEhC,YAAY;MAClBiC,UAAU,EAAExD,kBAAkB;MAC9ByD,OAAO,EAAE7D,gBAAgB;MACzB1K,MAAM,EAAE8L,cAAc;MACtB0C,eAAe,EAAE9C,uBAAuB;MACxC+C,UAAU,EAAElD,kBAAkB;MAC9BmD,OAAO,EAAEjE,iBAAiB;MAC1B5I,QAAQ,EAAE2K;IACZ,CAAC;IACDvS,MAAM,EAAE;MACNU,KAAK,EAAE0D,cAAc;MACrBsQ,OAAO,EAAEpQ,gBAAgB;MACzBqQ,UAAU,EAAE7G,mBAAmB;MAC/B8G,UAAU,EAAEpQ,mBAAmB;MAC/BqQ,UAAU,EAAEvV,mBAAmB;MAC/ByB,KAAK,EAAE2D,cAAc;MACrBzE,KAAK,EAAE2E;IACT,CAAC;IACDsM,IAAI,EAAE;MACJ9N,QAAQ,EAARA,QAAQ;MACRsE,cAAc,EAAdA,cAAc;MACdE,QAAQ,EAARA;IACF;EACF,CAAC;AACH;AAEA,OAAO,IAAMkN,kBAAkB,gBAAGpW,KAAK,CAACqW,aAAa,CACnD,IACF,CAAC;AAED,OAAO,SAASC,qBAAqBA,CAAA,EAAG;EACtC,IAAMC,GAAG,GAAGvW,KAAK,CAACwW,UAAU,CAACJ,kBAAkB,CAAC;EAEhD,IAAI,CAACG,GAAG,EAAE;IACR,MAAM,IAAIE,KAAK,CAAC,4BAA4B,CAAC;EAC/C;EAEA,OAAOF,GAAG;AACZ"}
@@ -8,19 +8,19 @@ var trackWidth = 36;
8
8
  var toggleSize = 16;
9
9
  export var StyledTrack = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledTrack",
11
- componentId: "core-11_29_0__sc-mwn4kg-0"
11
+ componentId: "core-11_31_0__sc-mwn4kg-0"
12
12
  })(["background-color:", ";border-radius:", "px;height:", "px;width:", "px;position:relative;transition:0.2s;"], colors.gray70, trackHeight, trackHeight, trackWidth);
13
13
  export var StyledToggle = /*#__PURE__*/styled.span.withConfig({
14
14
  displayName: "StyledToggle",
15
- componentId: "core-11_29_0__sc-mwn4kg-1"
15
+ componentId: "core-11_31_0__sc-mwn4kg-1"
16
16
  })(["background-color:", ";border-radius:50%;bottom:2px;height:", "px;left:2px;position:absolute;transition:all 0.2s;width:", "px;"], colors.white, toggleSize, toggleSize);
17
17
  export var StyledSwitchLabel = /*#__PURE__*/styled.span.withConfig({
18
18
  displayName: "StyledSwitchLabel",
19
- componentId: "core-11_29_0__sc-mwn4kg-2"
19
+ componentId: "core-11_31_0__sc-mwn4kg-2"
20
20
  })(["", " padding-left:", "px;user-select:none;"], getTypographyIntent('body'), spacing.md);
21
21
  export var StyledSwitchContainer = /*#__PURE__*/styled.label.withConfig({
22
22
  displayName: "StyledSwitchContainer",
23
- componentId: "core-11_29_0__sc-mwn4kg-3"
23
+ componentId: "core-11_31_0__sc-mwn4kg-3"
24
24
  })(["cursor:pointer;display:grid;grid-template-columns:", "px 1fr;position:relative;& + &{margin-top:", "px;}", " ", " ", ""], trackWidth, spacing.md, function (_ref) {
25
25
  var $checked = _ref.$checked;
26
26
  return $checked && css(["", "{background-color:", ";", "{transform:translateX(", "px);}}"], StyledTrack, colors.blue50, StyledToggle, spacing.lg);
@@ -47,26 +47,26 @@ var tableCellInputErrorBorder = "1px solid ".concat(colors.red50);
47
47
  var tableRowBorderBottom = /*#__PURE__*/css(["border-bottom:", ";&:last-child{border-bottom:0;}"], tableBorder);
48
48
  export var StyledTableHeaderCellSortableContainer = /*#__PURE__*/styled.div.withConfig({
49
49
  displayName: "StyledTableHeaderCellSortableContainer",
50
- componentId: "core-11_29_0__sc-9c7xd-0"
50
+ componentId: "core-11_31_0__sc-9c7xd-0"
51
51
  })([""]);
52
52
  export var StyledTableHeaderCellLabel = /*#__PURE__*/styled.div.withConfig({
53
53
  displayName: "StyledTableHeaderCellLabel",
54
- componentId: "core-11_29_0__sc-9c7xd-1"
54
+ componentId: "core-11_31_0__sc-9c7xd-1"
55
55
  })(["display:inline-block;flex:1 1 auto;position:relative;"]);
56
56
  export var StyledCheckbox = /*#__PURE__*/styled(Checkbox).withConfig({
57
57
  displayName: "StyledCheckbox",
58
- componentId: "core-11_29_0__sc-9c7xd-2"
58
+ componentId: "core-11_31_0__sc-9c7xd-2"
59
59
  })([""]);
60
60
  export var StyledTableBodyCell = /*#__PURE__*/styled.td.withConfig({
61
61
  displayName: "StyledTableBodyCell",
62
- componentId: "core-11_29_0__sc-9c7xd-3"
62
+ componentId: "core-11_31_0__sc-9c7xd-3"
63
63
  })(["position:relative;vertical-align:middle;", ""], function (_ref) {
64
64
  var $snugfit = _ref.$snugfit;
65
65
  return $snugfit && css(["white-space:nowrap;width:0.1%;"]);
66
66
  });
67
67
  export var StyledTableHeaderCell = /*#__PURE__*/styled.th.withConfig({
68
68
  displayName: "StyledTableHeaderCell",
69
- componentId: "core-11_29_0__sc-9c7xd-4"
69
+ componentId: "core-11_31_0__sc-9c7xd-4"
70
70
  })(["", " font-weight:", ";border-right:", ";color:", ";height:", "px;padding:", "px;position:relative;text-align:left;transition:background-color 0.2s ease-in-out;&:last-child{border-right:0;}", "{display:flex;align-items:center;}", "{", "{min-height:14px;}}", " ", " ", " ", " ", ""], getTypographyIntent('small'), tableHeaderFontWeight, tableHeaderBorderRight, tableHeaderFontColor, tableHeaderHeight, tableHeaderPadding, StyledTableHeaderCellSortableContainer, StyledTableHeaderCellSortableContainer, StyledTableHeaderCellLabel, function (_ref2) {
71
71
  var $sortable = _ref2.$sortable;
72
72
  return $sortable && css(["cursor:pointer;padding:", "px;", ",", "{color:", ";opacity:0;transition:all 0.15s ease-in-out;position:absolute;}::before,::after{font-size:16px;}&:hover{background-color:", ";", "{color:", ";}}"], spacing.lg, StyledTableHeaderCellSortIconAsc, StyledTableHeaderCellSortIconDesc, tableSortFontColor, tableHeaderBgColorHover, StyledTableHeaderCellSortIconAsc, tableSortFontColorHover);
@@ -85,27 +85,27 @@ export var StyledTableHeaderCell = /*#__PURE__*/styled.th.withConfig({
85
85
  });
86
86
  export var StyledTableHeaderCellIconWrapper = /*#__PURE__*/styled.div.withConfig({
87
87
  displayName: "StyledTableHeaderCellIconWrapper",
88
- componentId: "core-11_29_0__sc-9c7xd-5"
88
+ componentId: "core-11_31_0__sc-9c7xd-5"
89
89
  })(["height:20px;line-height:20px;padding:0 ", "px 0 ", "px;width:20px;"], spacing.lg, spacing.sm);
90
90
  export var StyledTableHeaderCellSortIconAsc = /*#__PURE__*/styled(CaretUp).withConfig({
91
91
  displayName: "StyledTableHeaderCellSortIconAsc",
92
- componentId: "core-11_29_0__sc-9c7xd-6"
92
+ componentId: "core-11_31_0__sc-9c7xd-6"
93
93
  })(["margin-top:-", "px;"], spacing.sm);
94
94
  export var StyledTableHeaderCellSortIconDesc = /*#__PURE__*/styled(CaretDown).withConfig({
95
95
  displayName: "StyledTableHeaderCellSortIconDesc",
96
- componentId: "core-11_29_0__sc-9c7xd-7"
96
+ componentId: "core-11_31_0__sc-9c7xd-7"
97
97
  })([""]);
98
98
  export var StyledHead = /*#__PURE__*/styled.thead.withConfig({
99
99
  displayName: "StyledHead",
100
- componentId: "core-11_29_0__sc-9c7xd-8"
100
+ componentId: "core-11_31_0__sc-9c7xd-8"
101
101
  })(["background-color:", ";transition:background-color 0.2s ease-in-out;", " &:hover{", "{", ",", "{&::after,&::before{opacity:1;}}}}"], tableHeaderBgColor, tableRowBorderBottom, StyledTableHeaderCell, StyledTableHeaderCellSortIconAsc, StyledTableHeaderCellSortIconDesc);
102
102
  export var StyledCaratWrapper = /*#__PURE__*/styled.div.withConfig({
103
103
  displayName: "StyledCaratWrapper",
104
- componentId: "core-11_29_0__sc-9c7xd-9"
104
+ componentId: "core-11_31_0__sc-9c7xd-9"
105
105
  })(["font-size:16px;color:", ";padding-right:", "px;transition:all 0.2s ease-in-out;& + ", "{margin:0 ", "px;}"], colors.gray70, spacing.xs, StyledCheckbox, spacing.xs);
106
106
  export var StyledCarat = /*#__PURE__*/styled(ChevronRight).withConfig({
107
107
  displayName: "StyledCarat",
108
- componentId: "core-11_29_0__sc-9c7xd-10"
108
+ componentId: "core-11_31_0__sc-9c7xd-10"
109
109
  })(["", ""], function (_ref7) {
110
110
  var $expanded = _ref7.$expanded;
111
111
  return $expanded && css(["transform:rotate(90deg);"]);
@@ -113,7 +113,7 @@ export var StyledCarat = /*#__PURE__*/styled(ChevronRight).withConfig({
113
113
  var cellInputCSS = /*#__PURE__*/css(["background-color:rgba(255,255,255,0);&&&{border:", ";border-radius:4px;width:100%;&::placeholder{color:", ";}&::-ms-clear{display:none;}&:hover{border-color:transparent;}&:focus{background-color:", ";border-style:solid;border-width:1px;border-color:", ";box-shadow:0 0 0 1px ", ";outline:none;}&:disabled{border:", ";color:", ";}}"], tableCellInputBorder, tableCellInputPlaceholderColor, colors.white, colors.blue40, colors.blue40, tableCellInputBorder, colors.gray70);
114
114
  export var StyledTableCellSelect = /*#__PURE__*/styled(Select).withConfig({
115
115
  displayName: "StyledTableCellSelect",
116
- componentId: "core-11_29_0__sc-9c7xd-11"
116
+ componentId: "core-11_31_0__sc-9c7xd-11"
117
117
  })(["", ";background-color:transparent;border-color:transparent;height:auto;&:hover{background-color:transparent;}&:active:hover{border-color:", ";}&:focus{background-color:", ";cursor:pointer;", " ", "{white-space:nowrap;}", "{opacity:1;pointer-events:all;}", " ", "}", "{white-space:normal;}", ",", "{opacity:0;pointer-events:none;}", " ", ""], cellInputCSS, colors.gray85, colors.white, getFocus(), StyledSelectButtonLabel, StyledSelectArrow, function (_ref8) {
118
118
  var $hasClearIcon = _ref8.$hasClearIcon;
119
119
  return $hasClearIcon && css(["", "{opacity:1;pointer-events:all;}"], StyledSelectClearIcon);
@@ -131,25 +131,25 @@ export var StyledTableCellSelect = /*#__PURE__*/styled(Select).withConfig({
131
131
  });
132
132
  export var StyledTableCellInput = /*#__PURE__*/styled(Input).withConfig({
133
133
  displayName: "StyledTableCellInput",
134
- componentId: "core-11_29_0__sc-9c7xd-12"
134
+ componentId: "core-11_31_0__sc-9c7xd-12"
135
135
  })(["", ""], cellInputCSS);
136
136
  export var StyledTableCellDateInput = /*#__PURE__*/styled(DateSelect).withConfig({
137
137
  displayName: "StyledTableCellDateInput",
138
- componentId: "core-11_29_0__sc-9c7xd-13"
138
+ componentId: "core-11_31_0__sc-9c7xd-13"
139
139
  })(["background-color:transparent;border-color:transparent;&:active:hover{border-color:", ";}&&&:focus-within{", ";background-color:", ";}", " ", "{opacity:0;}", "{&[data-qa-table-visible='false']{opacity:0;}}", "{&[data-placeholder='true']{opacity:0;}}&:focus-within{", "{opacity:1;}", "{&[data-qa-table-visible='false']{opacity:1;}}", "{&[data-placeholder='true']{opacity:1;}}}"], colors.gray45, getFocus(), colors.white, function (_ref12) {
140
140
  var error = _ref12.error;
141
141
  return error && css(["border-color:", ";"], colors.red50);
142
142
  }, StyledDateInputIconContainer, StyledDateInputDelimiter, StyledDateInputSegment, StyledDateInputIconContainer, StyledDateInputDelimiter, StyledDateInputSegment);
143
143
  export var StyledTableCellTextArea = /*#__PURE__*/styled(TextArea).withConfig({
144
144
  displayName: "StyledTableCellTextArea",
145
- componentId: "core-11_29_0__sc-9c7xd-14"
145
+ componentId: "core-11_31_0__sc-9c7xd-14"
146
146
  })(["", " &&{height:", "px;min-height:", "px;overflow:hidden;padding-top:", "px;resize:none;width:100%;", "}"], cellInputCSS, spacing.xxl, spacing.xxl, spacing.xs, function (_ref13) {
147
147
  var $resizable = _ref13.$resizable;
148
148
  return $resizable && css(["&:focus{min-height:64px;overflow:auto;resize:vertical;}"]);
149
149
  });
150
150
  export var StyledTableCellText = /*#__PURE__*/styled.div.withConfig({
151
151
  displayName: "StyledTableCellText",
152
- componentId: "core-11_29_0__sc-9c7xd-15"
152
+ componentId: "core-11_31_0__sc-9c7xd-15"
153
153
  })(["margin:", "px;display:flex;color:", ";", ""], spacing.lg, tableCellTextColor, function (_ref14) {
154
154
  var $percent = _ref14.$percent,
155
155
  $currency = _ref14.$currency;
@@ -157,15 +157,15 @@ export var StyledTableCellText = /*#__PURE__*/styled.div.withConfig({
157
157
  });
158
158
  export var StyledIconCell = /*#__PURE__*/styled.div.withConfig({
159
159
  displayName: "StyledIconCell",
160
- componentId: "core-11_29_0__sc-9c7xd-16"
160
+ componentId: "core-11_31_0__sc-9c7xd-16"
161
161
  })(["display:flex;color:", ";"], tableCellIconColor);
162
162
  export var StyledSelectCellWrapper = /*#__PURE__*/styled.div.withConfig({
163
163
  displayName: "StyledSelectCellWrapper",
164
- componentId: "core-11_29_0__sc-9c7xd-17"
164
+ componentId: "core-11_31_0__sc-9c7xd-17"
165
165
  })(["display:flex;flex-direction:column;"]);
166
166
  export var StyledTableInlineEditErrorBox = /*#__PURE__*/styled.div.withConfig({
167
167
  displayName: "StyledTableInlineEditErrorBox",
168
- componentId: "core-11_29_0__sc-9c7xd-18"
168
+ componentId: "core-11_31_0__sc-9c7xd-18"
169
169
  })(["", " color:", ";font-style:italic;background:", ";border-radius:0 2px 2px 2px;box-shadow:0 1px 2px rgba(0,0,0,0.2),0 1px 3px rgba(0,0,0,0.1);padding:6px ", "px;position:absolute;max-width:160px;z-index:1;", ""], getTypographyIntent('small'), colors.white, colors.red50, spacing.md, function (_ref15) {
170
170
  var $size = _ref15.$size;
171
171
  var sizes = {
@@ -183,7 +183,7 @@ export var StyledTableInlineEditErrorBox = /*#__PURE__*/styled.div.withConfig({
183
183
  });
184
184
  export var StyledTableInlineEditContainer = /*#__PURE__*/styled.div.withConfig({
185
185
  displayName: "StyledTableInlineEditContainer",
186
- componentId: "core-11_29_0__sc-9c7xd-19"
186
+ componentId: "core-11_31_0__sc-9c7xd-19"
187
187
  })(["background-color:", ";margin:", "px ", "px;position:relative;", " ", ""], tableBgColor, spacing.sm, spacing.xs, function (_ref16) {
188
188
  var $error = _ref16.$error;
189
189
  return $error && css(["position:static;background-color:", ";", ",", ",", ",", "{border:", ";border-radius:4px 4px 0 0;border-bottom:none;&:hover{border-bottom:none;}&:focus{background-color:", ";border:", ";border-bottom:none;}}"], tableCellInputErrorBgColor, StyledTableCellDateInput, StyledTableCellInput, StyledTableCellSelect, StyledTableCellTextArea, tableCellInputErrorBorder, tableCellInputFocusBgColor, tableCellInputFocusBorder);
@@ -207,26 +207,26 @@ export var StyledTableInlineEditContainer = /*#__PURE__*/styled.div.withConfig({
207
207
  });
208
208
  export var StyledTableBodyRow = /*#__PURE__*/styled.tr.withConfig({
209
209
  displayName: "StyledTableBodyRow",
210
- componentId: "core-11_29_0__sc-9c7xd-20"
210
+ componentId: "core-11_31_0__sc-9c7xd-20"
211
211
  })(["", " ", " &:focus-within{", "{background-color:", ";&.disabled{background-color:transparent;}}", ".error{background-color:", ";}}&:hover{", "{background-color:", ";cursor:pointer;&:hover{background-color:", ";}&.disabled{&,&:hover{background-color:transparent;cursor:default;}}}", ".error{background-color:", ";&:hover{background-color:", ";}", ",", ",", "{border:", ";border-bottom:none;&:hover{border-bottom:none;}&:focus{border:", ";border-bottom:none;}}}}"], tableRowBorderBottom, function (_ref18) {
212
212
  var $overdue = _ref18.$overdue;
213
213
  return $overdue && css(["", ",", ",", ",", ",", "{color:", ";}"], StyledTableCellText, StyledTableCellSelect, StyledTableCellInput, StyledTableCellDateInput, StyledTableCellTextArea, colors.red50);
214
214
  }, StyledTableInlineEditContainer, tableCellInputRowHoverBgColor, StyledTableInlineEditContainer, tableCellInputErrorBgColor, StyledTableInlineEditContainer, tableCellInputRowHoverBgColor, tableCellInputHoverBgColor, StyledTableInlineEditContainer, tableCellInputErrorBgColor, tableCellInputErrorBgColor, StyledTableCellInput, StyledTableCellSelect, StyledTableCellTextArea, tableCellInputErrorBorder, tableCellInputFocusBorder);
215
215
  export var StyledTableGroupRowContent = /*#__PURE__*/styled.div.withConfig({
216
216
  displayName: "StyledTableGroupRowContent",
217
- componentId: "core-11_29_0__sc-9c7xd-21"
217
+ componentId: "core-11_31_0__sc-9c7xd-21"
218
218
  })([""]);
219
219
  export var StyledTableGroupRowHeader = /*#__PURE__*/styled.div.withConfig({
220
220
  displayName: "StyledTableGroupRowHeader",
221
- componentId: "core-11_29_0__sc-9c7xd-22"
221
+ componentId: "core-11_31_0__sc-9c7xd-22"
222
222
  })([""]);
223
223
  export var StyledTableGroupRowTitle = /*#__PURE__*/styled.span.withConfig({
224
224
  displayName: "StyledTableGroupRowTitle",
225
- componentId: "core-11_29_0__sc-9c7xd-23"
225
+ componentId: "core-11_31_0__sc-9c7xd-23"
226
226
  })([""]);
227
227
  export var StyledTableGroupRow = /*#__PURE__*/styled.tr.withConfig({
228
228
  displayName: "StyledTableGroupRow",
229
- componentId: "core-11_29_0__sc-9c7xd-24"
229
+ componentId: "core-11_31_0__sc-9c7xd-24"
230
230
  })(["background-color:", ";", " ", "{margin-left:", "px;padding:", "px 0;display:flex;flex-direction:row;}", "{display:flex;align-items:center;}", "{font-weight:", ";padding-left:", "px;}", ""], tableGroupRowBgColor, tableRowBorderBottom, StyledTableGroupRowContent, spacing.lg, spacing.lg, StyledTableGroupRowHeader, StyledTableGroupRowTitle, tableHeaderFontWeight, spacing.lg, function (_ref19) {
231
231
  var $depth = _ref19.$depth;
232
232
  if (typeof $depth !== 'number') {
@@ -236,7 +236,7 @@ export var StyledTableGroupRow = /*#__PURE__*/styled.tr.withConfig({
236
236
  });
237
237
  export var StyledTableWrapper = /*#__PURE__*/styled(Card).withConfig({
238
238
  displayName: "StyledTableWrapper",
239
- componentId: "core-11_29_0__sc-9c7xd-25"
239
+ componentId: "core-11_31_0__sc-9c7xd-25"
240
240
  })(["border-radius:", "px;border:", ";", ",tbody{&:first-child{tr:first-child{", ",td{&:first-child{border-top-left-radius:", "px;}&:last-child{border-top-right-radius:", "px;}}}}&:last-child{tr:last-child{", ",td{&:first-child{border-bottom-left-radius:", "px;}&:last-child{border-bottom-right-radius:", "px;}}}}}", ""], tableBorderRadius, tableBorder, StyledHead, StyledTableHeaderCell, tableBorderRadius, tableBorderRadius, StyledTableHeaderCell, tableBorderRadius, tableBorderRadius, function (_ref20) {
241
241
  var $withShelf = _ref20.$withShelf;
242
242
  return $withShelf && css(["position:relative;height:100%;"]);
@@ -245,7 +245,7 @@ var BodyRow = StyledTableBodyRow;
245
245
  var GroupRow = StyledTableGroupRow;
246
246
  export var StyledTable = /*#__PURE__*/styled.table.withConfig({
247
247
  displayName: "StyledTable",
248
- componentId: "core-11_29_0__sc-9c7xd-26"
248
+ componentId: "core-11_31_0__sc-9c7xd-26"
249
249
  })(["background-color:", ";border-collapse:collapse;border-radius:", "px;", " width:100%;td:first-child ", "{padding-left:", "px;}", " ", " + ", "{margin-left:", "px;padding-left:0;}", " ", " ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " + ", " > td{padding-left:", "px;}", " + ", " + ", " + ", " + ", " > td{padding-left:", "px;}", " ~ ", "{", "{padding-left:0;margin:0 ", "px;}& > td:first-child{padding-left:", "px;}}", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}", " + ", " + ", " + ", " + ", " ~ ", "{& > td:first-child{padding-left:", "px;}}"], tableBgColor, tableBorderRadius, getTypographyIntent('body'), StyledCheckbox, spacing.lg, StyledTableGroupRow, StyledCaratWrapper, StyledCheckbox, spacing.xs, function (_ref21) {
250
250
  var $fixed = _ref21.$fixed;
251
251
  return $fixed && css(["table-layout:fixed;"]);
@@ -255,6 +255,6 @@ export var StyledTable = /*#__PURE__*/styled.table.withConfig({
255
255
  }, GroupRow, GroupRow, tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, 2 * tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, 3 * tableGroupHeaderRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, GroupRow, 4 * tableGroupHeaderRowIndentation, GroupRow, BodyRow, StyledCheckbox, spacing.xs, tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, BodyRow, 2 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, BodyRow, 3 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, BodyRow, 4 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation, GroupRow, GroupRow, GroupRow, GroupRow, GroupRow, BodyRow, 5 * tableGroupHeaderRowIndentation + tableGroupBodyRowIndentation);
256
256
  export var StyledLoadingContainer = /*#__PURE__*/styled.div.withConfig({
257
257
  displayName: "StyledLoadingContainer",
258
- componentId: "core-11_29_0__sc-9c7xd-27"
258
+ componentId: "core-11_31_0__sc-9c7xd-27"
259
259
  })(["cursor:default;align-items:center;background:", ";display:flex;height:100%;justify-content:center;opacity:0.9;position:absolute;width:100%;z-index:2;"], colors.gray96);
260
260
  //# sourceMappingURL=Table.styles.js.map
@@ -4,22 +4,22 @@ import { spacing } from '../_styles/spacing';
4
4
  var tableShelfShadow = '-4px 0px 5px 0px rgba(112, 112, 112, 0.1)';
5
5
  export var StyledShelf = /*#__PURE__*/styled.div.withConfig({
6
6
  displayName: "StyledShelf",
7
- componentId: "core-11_29_0__sc-a6498a-0"
7
+ componentId: "core-11_31_0__sc-a6498a-0"
8
8
  })(["position:absolute;right:0;top:0;bottom:0;box-shadow:", ";background-color:", ";"], tableShelfShadow, colors.white);
9
9
  export var StyledHead = /*#__PURE__*/styled.div.withConfig({
10
10
  displayName: "StyledHead",
11
- componentId: "core-11_29_0__sc-a6498a-1"
11
+ componentId: "core-11_31_0__sc-a6498a-1"
12
12
  })(["background-color:", ";transition:background-color 0.2s ease-in-out;"], colors.gray96);
13
13
  export var StyledBodyRow = /*#__PURE__*/styled.div.withConfig({
14
14
  displayName: "StyledBodyRow",
15
- componentId: "core-11_29_0__sc-a6498a-2"
15
+ componentId: "core-11_31_0__sc-a6498a-2"
16
16
  })(["border-top:1px solid ", ";transition:background-color 0.2s ease-in-out;"], colors.gray85);
17
17
  export var StyledHeadCell = /*#__PURE__*/styled.div.withConfig({
18
18
  displayName: "StyledHeadCell",
19
- componentId: "core-11_29_0__sc-a6498a-3"
19
+ componentId: "core-11_31_0__sc-a6498a-3"
20
20
  })(["text-align:left;padding:", "px;line-height:13px;"], spacing.lg);
21
21
  export var StyledBodyCell = /*#__PURE__*/styled.div.withConfig({
22
22
  displayName: "StyledBodyCell",
23
- componentId: "core-11_29_0__sc-a6498a-4"
23
+ componentId: "core-11_31_0__sc-a6498a-4"
24
24
  })(["padding:", "px;line-height:13px;"], spacing.lg);
25
25
  //# sourceMappingURL=TableShelf.styles.js.map