@homecode/ui 5.1.9 → 5.1.10

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 (522) hide show
  1. package/dist/esm/index.js +109 -2
  2. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js +28 -2
  3. package/dist/esm/src/components/AssistiveText/AssistiveText.js +10 -2
  4. package/dist/esm/src/components/AssistiveText/AssistiveText.styl.js +7 -2
  5. package/dist/esm/src/components/Autocomplete/Autocomplete.js +429 -2
  6. package/dist/esm/src/components/Autocomplete/Autocomplete.styl.js +7 -2
  7. package/dist/esm/src/components/Button/Button.helpers.js +12 -2
  8. package/dist/esm/src/components/Button/Button.js +38 -2
  9. package/dist/esm/src/components/Button/Button.styl.js +7 -2
  10. package/dist/esm/src/components/ButtonGroup/ButtonGroup.js +10 -2
  11. package/dist/esm/src/components/ButtonGroup/ButtonGroup.styl.js +7 -2
  12. package/dist/esm/src/components/Calendar/Calendar.helpers.js +65 -2
  13. package/dist/esm/src/components/Calendar/Calendar.js +136 -2
  14. package/dist/esm/src/components/Calendar/Calendar.styl.js +7 -2
  15. package/dist/esm/src/components/Card/Card.js +55 -2
  16. package/dist/esm/src/components/Card/Card.styl.js +7 -2
  17. package/dist/esm/src/components/Checkbox/Checkbox.js +19 -2
  18. package/dist/esm/src/components/Checkbox/Checkbox.styl.js +7 -2
  19. package/dist/esm/src/components/Chip/Chip.js +16 -2
  20. package/dist/esm/src/components/Chip/Chip.styl.js +7 -2
  21. package/dist/esm/src/components/Container/Container.js +13 -2
  22. package/dist/esm/src/components/Container/Container.styl.js +7 -2
  23. package/dist/esm/src/components/DatePicker/DatePicker.helpers.js +33 -2
  24. package/dist/esm/src/components/DatePicker/DatePicker.js +47 -2
  25. package/dist/esm/src/components/DatePicker/DatePicker.styl.js +7 -2
  26. package/dist/esm/src/components/DatePickerInput/DatePickerInput.js +44 -2
  27. package/dist/esm/src/components/DatePickerInput/DatePickerInput.styl.js +7 -2
  28. package/dist/esm/src/components/DateTime/DateTime.js +17 -2
  29. package/dist/esm/src/components/Dialogue/Dialogue.js +107 -2
  30. package/dist/esm/src/components/Dialogue/Dialogue.styl.js +7 -2
  31. package/dist/esm/src/components/Draggable/Draggable.js +147 -2
  32. package/dist/esm/src/components/Draggable/Draggable.styl.js +7 -2
  33. package/dist/esm/src/components/DropZone/DropZone.js +112 -2
  34. package/dist/esm/src/components/DropZone/DropZone.styl.js +7 -2
  35. package/dist/esm/src/components/Expand/Expand.js +24 -2
  36. package/dist/esm/src/components/Expand/Expand.styl.js +7 -2
  37. package/dist/esm/src/components/Flex/Flex.js +24 -2
  38. package/dist/esm/src/components/Flex/Flex.styl.js +7 -2
  39. package/dist/esm/src/components/Form/Form.helpers.js +42 -2
  40. package/dist/esm/src/components/Form/Form.js +272 -2
  41. package/dist/esm/src/components/Form/Form.styl.js +7 -2
  42. package/dist/esm/src/components/Form/Form.types.js +0 -1
  43. package/dist/esm/src/components/Form/SubmitButtons/SubmitButtons.js +8 -2
  44. package/dist/esm/src/components/Form/SubmitButtons/SubmitButtons.styl.js +7 -2
  45. package/dist/esm/src/components/Form/Validator.js +24 -6
  46. package/dist/esm/src/components/Gallery/Dots/Dots.js +9 -2
  47. package/dist/esm/src/components/Gallery/Dots/Dots.styl.js +7 -2
  48. package/dist/esm/src/components/Gallery/Gallery.js +222 -2
  49. package/dist/esm/src/components/Gallery/Gallery.styl.js +7 -2
  50. package/dist/esm/src/components/Heading/Heading.js +37 -2
  51. package/dist/esm/src/components/Heading/Heading.styl.js +7 -2
  52. package/dist/esm/src/components/Icon/Icon.js +21 -2
  53. package/dist/esm/src/components/Icon/Icon.styl.js +7 -2
  54. package/dist/esm/src/components/Icon/icons/apple.svg.js +16 -2
  55. package/dist/esm/src/components/Icon/icons/arrowDown.svg.js +17 -2
  56. package/dist/esm/src/components/Icon/icons/arrowLeft.svg.js +17 -2
  57. package/dist/esm/src/components/Icon/icons/arrowRight.svg.js +17 -2
  58. package/dist/esm/src/components/Icon/icons/arrowUp.svg.js +17 -2
  59. package/dist/esm/src/components/Icon/icons/attach.svg.js +19 -2
  60. package/dist/esm/src/components/Icon/icons/avatar.svg.js +15 -2
  61. package/dist/esm/src/components/Icon/icons/bookmark.svg.js +17 -2
  62. package/dist/esm/src/components/Icon/icons/bookmarkAdd.svg.js +17 -2
  63. package/dist/esm/src/components/Icon/icons/brain.svg.js +22 -2
  64. package/dist/esm/src/components/Icon/icons/brokenImage.svg.js +15 -2
  65. package/dist/esm/src/components/Icon/icons/call.svg.js +17 -2
  66. package/dist/esm/src/components/Icon/icons/camera.svg.js +17 -2
  67. package/dist/esm/src/components/Icon/icons/chat.svg.js +17 -2
  68. package/dist/esm/src/components/Icon/icons/check.svg.js +19 -2
  69. package/dist/esm/src/components/Icon/icons/checkers.svg.js +18 -2
  70. package/dist/esm/src/components/Icon/icons/chevronDown.svg.js +20 -2
  71. package/dist/esm/src/components/Icon/icons/chevronLeft.svg.js +20 -2
  72. package/dist/esm/src/components/Icon/icons/chevronRight.svg.js +20 -2
  73. package/dist/esm/src/components/Icon/icons/chevronUp.svg.js +20 -2
  74. package/dist/esm/src/components/Icon/icons/clearAll.svg.js +17 -2
  75. package/dist/esm/src/components/Icon/icons/close.svg.js +15 -2
  76. package/dist/esm/src/components/Icon/icons/colors.svg.js +60 -2
  77. package/dist/esm/src/components/Icon/icons/compass.svg.js +56 -2
  78. package/dist/esm/src/components/Icon/icons/copy.svg.js +15 -2
  79. package/dist/esm/src/components/Icon/icons/cubes.svg.js +17 -2
  80. package/dist/esm/src/components/Icon/icons/delete.svg.js +15 -2
  81. package/dist/esm/src/components/Icon/icons/discord.svg.js +17 -2
  82. package/dist/esm/src/components/Icon/icons/draft.svg.js +15 -2
  83. package/dist/esm/src/components/Icon/icons/dragHandlerHorizontal.svg.js +15 -2
  84. package/dist/esm/src/components/Icon/icons/dragHandlerVertical.svg.js +15 -2
  85. package/dist/esm/src/components/Icon/icons/edit.svg.js +15 -2
  86. package/dist/esm/src/components/Icon/icons/email.svg.js +15 -2
  87. package/dist/esm/src/components/Icon/icons/externalLink.svg.js +15 -2
  88. package/dist/esm/src/components/Icon/icons/eye.svg.js +15 -2
  89. package/dist/esm/src/components/Icon/icons/flyover.svg.js +17 -2
  90. package/dist/esm/src/components/Icon/icons/folder.svg.js +17 -2
  91. package/dist/esm/src/components/Icon/icons/folderOpen.svg.js +17 -2
  92. package/dist/esm/src/components/Icon/icons/forward.svg.js +17 -2
  93. package/dist/esm/src/components/Icon/icons/fullscreen.svg.js +15 -2
  94. package/dist/esm/src/components/Icon/icons/fullscreenExit.svg.js +15 -2
  95. package/dist/esm/src/components/Icon/icons/function.svg.js +15 -2
  96. package/dist/esm/src/components/Icon/icons/gear.svg.js +21 -2
  97. package/dist/esm/src/components/Icon/icons/geolocation.svg.js +17 -2
  98. package/dist/esm/src/components/Icon/icons/github.svg.js +18 -2
  99. package/dist/esm/src/components/Icon/icons/globe.svg.js +17 -2
  100. package/dist/esm/src/components/Icon/icons/google.svg.js +42 -2
  101. package/dist/esm/src/components/Icon/icons/group.svg.js +15 -2
  102. package/dist/esm/src/components/Icon/icons/history.svg.js +17 -2
  103. package/dist/esm/src/components/Icon/icons/home.svg.js +19 -2
  104. package/dist/esm/src/components/Icon/icons/image.svg.js +17 -2
  105. package/dist/esm/src/components/Icon/icons/index.js +95 -2
  106. package/dist/esm/src/components/Icon/icons/instagram.svg.js +15 -2
  107. package/dist/esm/src/components/Icon/icons/layers.svg.js +17 -2
  108. package/dist/esm/src/components/Icon/icons/link.svg.js +15 -2
  109. package/dist/esm/src/components/Icon/icons/linkedin.svg.js +20 -2
  110. package/dist/esm/src/components/Icon/icons/loader.svg.js +45 -2
  111. package/dist/esm/src/components/Icon/icons/lock.svg.js +19 -2
  112. package/dist/esm/src/components/Icon/icons/lockOpen.svg.js +19 -2
  113. package/dist/esm/src/components/Icon/icons/map.svg.js +17 -2
  114. package/dist/esm/src/components/Icon/icons/menu.svg.js +18 -2
  115. package/dist/esm/src/components/Icon/icons/mic.svg.js +15 -2
  116. package/dist/esm/src/components/Icon/icons/micMuted.svg.js +27 -2
  117. package/dist/esm/src/components/Icon/icons/minus.svg.js +15 -2
  118. package/dist/esm/src/components/Icon/icons/moreHorizontal.svg.js +15 -2
  119. package/dist/esm/src/components/Icon/icons/moreVertical.svg.js +15 -2
  120. package/dist/esm/src/components/Icon/icons/output.svg.js +15 -2
  121. package/dist/esm/src/components/Icon/icons/pause.svg.js +15 -2
  122. package/dist/esm/src/components/Icon/icons/play.svg.js +20 -2
  123. package/dist/esm/src/components/Icon/icons/plus.svg.js +15 -2
  124. package/dist/esm/src/components/Icon/icons/redo.svg.js +15 -2
  125. package/dist/esm/src/components/Icon/icons/requiredStar.svg.js +15 -2
  126. package/dist/esm/src/components/Icon/icons/rewind.svg.js +17 -2
  127. package/dist/esm/src/components/Icon/icons/rocket.svg.js +22 -2
  128. package/dist/esm/src/components/Icon/icons/route.svg.js +17 -2
  129. package/dist/esm/src/components/Icon/icons/routeFrom.svg.js +31 -2
  130. package/dist/esm/src/components/Icon/icons/routeTo.svg.js +31 -2
  131. package/dist/esm/src/components/Icon/icons/save.svg.js +17 -2
  132. package/dist/esm/src/components/Icon/icons/search.svg.js +17 -2
  133. package/dist/esm/src/components/Icon/icons/send.svg.js +16 -2
  134. package/dist/esm/src/components/Icon/icons/settings.svg.js +52 -2
  135. package/dist/esm/src/components/Icon/icons/shoppingBag.svg.js +17 -2
  136. package/dist/esm/src/components/Icon/icons/smile.svg.js +30 -2
  137. package/dist/esm/src/components/Icon/icons/soundWave.svg.js +66 -2
  138. package/dist/esm/src/components/Icon/icons/sparks.svg.js +21 -2
  139. package/dist/esm/src/components/Icon/icons/star.svg.js +18 -2
  140. package/dist/esm/src/components/Icon/icons/stop.svg.js +22 -2
  141. package/dist/esm/src/components/Icon/icons/stopInCircle.svg.js +17 -2
  142. package/dist/esm/src/components/Icon/icons/syncArrows.svg.js +22 -2
  143. package/dist/esm/src/components/Icon/icons/table.svg.js +15 -2
  144. package/dist/esm/src/components/Icon/icons/telegram.svg.js +19 -2
  145. package/dist/esm/src/components/Icon/icons/tool.svg.js +17 -2
  146. package/dist/esm/src/components/Icon/icons/trafficLight.svg.js +49 -2
  147. package/dist/esm/src/components/Icon/icons/undo.svg.js +15 -2
  148. package/dist/esm/src/components/Icon/icons/usage.svg.js +25 -2
  149. package/dist/esm/src/components/Icon/icons/youtube.svg.js +20 -2
  150. package/dist/esm/src/components/Input/Input.js +281 -2
  151. package/dist/esm/src/components/Input/Input.styl.js +7 -2
  152. package/dist/esm/src/components/InputFile/InputFile.js +314 -2
  153. package/dist/esm/src/components/InputFile/InputFile.styl.js +7 -2
  154. package/dist/esm/src/components/InputFile/InputFile.types.js +0 -1
  155. package/dist/esm/src/components/InputFile/Item/Item.js +18 -2
  156. package/dist/esm/src/components/InputFile/Item/Item.styl.js +7 -2
  157. package/dist/esm/src/components/Label/Label.constants.json.js +8 -2
  158. package/dist/esm/src/components/Label/Label.helpers.js +35 -2
  159. package/dist/esm/src/components/Label/Label.js +58 -2
  160. package/dist/esm/src/components/Label/Label.styl.js +7 -2
  161. package/dist/esm/src/components/LangSelector/LangSelector.js +10 -2
  162. package/dist/esm/src/components/Lazy/Lazy.js +74 -2
  163. package/dist/esm/src/components/LightBox/LightBox.js +28 -2
  164. package/dist/esm/src/components/LightBox/LightBox.styl.js +7 -2
  165. package/dist/esm/src/components/Menu/Menu.js +27 -2
  166. package/dist/esm/src/components/Menu/Menu.styl.js +7 -2
  167. package/dist/esm/src/components/Notifications/Notifications.constants.json.js +6 -2
  168. package/dist/esm/src/components/Notifications/Notifications.js +67 -2
  169. package/dist/esm/src/components/Notifications/Notifications.styl.js +7 -2
  170. package/dist/esm/src/components/Notifications/store.js +72 -2
  171. package/dist/esm/src/components/Paranja/Paranja.js +14 -2
  172. package/dist/esm/src/components/Paranja/Paranja.styl.js +7 -2
  173. package/dist/esm/src/components/Popup/Popup.helpers.js +130 -2
  174. package/dist/esm/src/components/Popup/Popup.js +484 -2
  175. package/dist/esm/src/components/Popup/Popup.styl.js +7 -2
  176. package/dist/esm/src/components/PopupMenu/PopupMenu.js +15 -2
  177. package/dist/esm/src/components/PopupMenu/PopupMenu.styl.js +7 -2
  178. package/dist/esm/src/components/Portal/Portal.js +33 -2
  179. package/dist/esm/src/components/Progress/Progress.helpers.js +5 -2
  180. package/dist/esm/src/components/Progress/Progress.js +12 -2
  181. package/dist/esm/src/components/Progress/Progress.styl.js +7 -2
  182. package/dist/esm/src/components/ProgressCircular/ProgressCircular.js +23 -2
  183. package/dist/esm/src/components/ProgressCircular/ProgressCircular.styl.js +7 -2
  184. package/dist/esm/src/components/RadioButton/RadioButton.js +33 -2
  185. package/dist/esm/src/components/RadioButton/RadioButton.styl.js +7 -2
  186. package/dist/esm/src/components/RadioGroup/RadioGroup.js +31 -2
  187. package/dist/esm/src/components/RadioGroup/RadioGroup.styl.js +7 -2
  188. package/dist/esm/src/components/RadioGroup/RadioGroupContext.js +8 -2
  189. package/dist/esm/src/components/RequiredStar/RequiredStar.js +12 -2
  190. package/dist/esm/src/components/RequiredStar/RequiredStar.styl.js +7 -2
  191. package/dist/esm/src/components/Router/Link/Link.js +62 -2
  192. package/dist/esm/src/components/Router/Link/Link.styl.js +7 -2
  193. package/dist/esm/src/components/Router/Redirect.js +12 -2
  194. package/dist/esm/src/components/Router/Route.js +6 -2
  195. package/dist/esm/src/components/Router/Router.helpers.js +33 -2
  196. package/dist/esm/src/components/Router/Router.js +72 -2
  197. package/dist/esm/src/components/Router/context.js +5 -2
  198. package/dist/esm/src/components/Router/store.js +75 -2
  199. package/dist/esm/src/components/Scroll/Scroll.js +308 -2
  200. package/dist/esm/src/components/Scroll/Scroll.styl.js +7 -2
  201. package/dist/esm/src/components/Select/Select.helpers.js +37 -2
  202. package/dist/esm/src/components/Select/Select.js +601 -2
  203. package/dist/esm/src/components/Select/Select.styl.js +7 -2
  204. package/dist/esm/src/components/Select/Select2.js +334 -2
  205. package/dist/esm/src/components/Shimmer/Shimmer.js +7 -2
  206. package/dist/esm/src/components/Shimmer/Shimmer.styl.js +7 -2
  207. package/dist/esm/src/components/Spinner/Spinner.js +11 -2
  208. package/dist/esm/src/components/Spinner/Spinner.styl.js +7 -2
  209. package/dist/esm/src/components/Spinner/spinner.svg.js +24 -2
  210. package/dist/esm/src/components/Table/Table.js +24 -2
  211. package/dist/esm/src/components/Table/Table.styl.js +7 -2
  212. package/dist/esm/src/components/Tabs/Tabs.js +48 -2
  213. package/dist/esm/src/components/Tabs/Tabs.styl.js +7 -2
  214. package/dist/esm/src/components/Text/Text.js +44 -2
  215. package/dist/esm/src/components/Text/Text.styl.js +7 -2
  216. package/dist/esm/src/components/TextShimmer/TextShimmer.js +29 -0
  217. package/dist/esm/src/components/TextShimmer/TextShimmer.styl.js +7 -0
  218. package/dist/esm/src/components/Theme/Theme.defaults.js +53 -2
  219. package/dist/esm/src/components/Theme/Theme.helpers.js +67 -2
  220. package/dist/esm/src/components/Theme/Theme.js +15 -2
  221. package/dist/esm/src/components/Theme/ThemeProvider.js +50 -2
  222. package/dist/esm/src/components/Toggle/Toggle.js +18 -2
  223. package/dist/esm/src/components/Toggle/Toggle.styl.js +7 -2
  224. package/dist/esm/src/components/Tooltip/Tooltip.js +86 -2
  225. package/dist/esm/src/components/Tooltip/Tooltip.styl.js +7 -2
  226. package/dist/esm/src/components/VH/VH.js +33 -2
  227. package/dist/esm/src/components/Virtualized/List/List.js +136 -2
  228. package/dist/esm/src/components/Virtualized/List/List.styl.js +7 -2
  229. package/dist/esm/src/components/Virtualized/List/ListScroll.js +22 -2
  230. package/dist/esm/src/components/Virtualized/List/ListScroll.styl.js +7 -2
  231. package/dist/esm/src/components/Virtualized/Virtualized.helpers.js +14 -2
  232. package/dist/esm/src/components/Virtualized/Virtualized.js +218 -2
  233. package/dist/esm/src/components/Virtualized/Virtualized.styl.js +7 -2
  234. package/dist/esm/src/components/Virtualized/Virtualized.types.js +0 -1
  235. package/dist/esm/src/hooks/useDebounce.js +11 -2
  236. package/dist/esm/src/hooks/useEvent.js +27 -2
  237. package/dist/esm/src/hooks/useIsMounted.js +11 -2
  238. package/dist/esm/src/hooks/useListKeyboardControl.js +50 -2
  239. package/dist/esm/src/hooks/useResizeObserver.js +15 -2
  240. package/dist/esm/src/hooks/useThrottle.js +31 -2
  241. package/dist/esm/src/hooks/useToggleState.js +35 -2
  242. package/dist/esm/src/services/i18n.js +112 -2
  243. package/dist/esm/src/tools/array.js +60 -2
  244. package/dist/esm/src/tools/config.js +9 -2
  245. package/dist/esm/src/tools/date.js +11 -2
  246. package/dist/esm/src/tools/debounce.js +11 -2
  247. package/dist/esm/src/tools/dom.js +57 -2
  248. package/dist/esm/src/tools/env.js +3 -2
  249. package/dist/esm/src/tools/file.js +11 -2
  250. package/dist/esm/src/tools/localStorage.js +31 -2
  251. package/dist/esm/src/tools/number.js +27 -2
  252. package/dist/esm/src/tools/object.js +5 -2
  253. package/dist/esm/src/tools/queryParams.js +40 -2
  254. package/dist/esm/src/tools/rangeMap.js +3 -2
  255. package/dist/esm/src/tools/resizeObserver.js +68 -2
  256. package/dist/esm/src/tools/scroll.js +41 -2
  257. package/dist/esm/src/tools/string.js +7 -2
  258. package/dist/esm/src/tools/throttle.js +30 -2
  259. package/dist/esm/src/tools/uid.js +7 -2
  260. package/dist/esm/types/src/components/Notifications/Notifications.types.d.ts +4 -2
  261. package/dist/esm/types/src/components/TextShimmer/TextShimmer.d.ts +5 -0
  262. package/dist/esm/types/src/components/TextShimmer/TextShimmer.types.d.ts +9 -0
  263. package/dist/esm/types/src/components/TextShimmer/index.d.ts +2 -0
  264. package/dist/esm/types/src/components/index.d.ts +1 -0
  265. package/package.json +1 -1
  266. package/dist/esm/index.js.map +0 -1
  267. package/dist/esm/node_modules/style-inject/dist/style-inject.es.js.map +0 -1
  268. package/dist/esm/src/components/AssistiveText/AssistiveText.js.map +0 -1
  269. package/dist/esm/src/components/AssistiveText/AssistiveText.styl.js.map +0 -1
  270. package/dist/esm/src/components/Autocomplete/Autocomplete.js.map +0 -1
  271. package/dist/esm/src/components/Autocomplete/Autocomplete.styl.js.map +0 -1
  272. package/dist/esm/src/components/Button/Button.helpers.js.map +0 -1
  273. package/dist/esm/src/components/Button/Button.js.map +0 -1
  274. package/dist/esm/src/components/Button/Button.styl.js.map +0 -1
  275. package/dist/esm/src/components/ButtonGroup/ButtonGroup.js.map +0 -1
  276. package/dist/esm/src/components/ButtonGroup/ButtonGroup.styl.js.map +0 -1
  277. package/dist/esm/src/components/Calendar/Calendar.helpers.js.map +0 -1
  278. package/dist/esm/src/components/Calendar/Calendar.js.map +0 -1
  279. package/dist/esm/src/components/Calendar/Calendar.styl.js.map +0 -1
  280. package/dist/esm/src/components/Card/Card.js.map +0 -1
  281. package/dist/esm/src/components/Card/Card.styl.js.map +0 -1
  282. package/dist/esm/src/components/Checkbox/Checkbox.js.map +0 -1
  283. package/dist/esm/src/components/Checkbox/Checkbox.styl.js.map +0 -1
  284. package/dist/esm/src/components/Chip/Chip.js.map +0 -1
  285. package/dist/esm/src/components/Chip/Chip.styl.js.map +0 -1
  286. package/dist/esm/src/components/Container/Container.js.map +0 -1
  287. package/dist/esm/src/components/Container/Container.styl.js.map +0 -1
  288. package/dist/esm/src/components/DatePicker/DatePicker.helpers.js.map +0 -1
  289. package/dist/esm/src/components/DatePicker/DatePicker.js.map +0 -1
  290. package/dist/esm/src/components/DatePicker/DatePicker.styl.js.map +0 -1
  291. package/dist/esm/src/components/DatePickerInput/DatePickerInput.js.map +0 -1
  292. package/dist/esm/src/components/DatePickerInput/DatePickerInput.styl.js.map +0 -1
  293. package/dist/esm/src/components/DateTime/DateTime.js.map +0 -1
  294. package/dist/esm/src/components/Dialogue/Dialogue.js.map +0 -1
  295. package/dist/esm/src/components/Dialogue/Dialogue.styl.js.map +0 -1
  296. package/dist/esm/src/components/Draggable/Draggable.js.map +0 -1
  297. package/dist/esm/src/components/Draggable/Draggable.styl.js.map +0 -1
  298. package/dist/esm/src/components/DropZone/DropZone.js.map +0 -1
  299. package/dist/esm/src/components/DropZone/DropZone.styl.js.map +0 -1
  300. package/dist/esm/src/components/Expand/Expand.js.map +0 -1
  301. package/dist/esm/src/components/Expand/Expand.styl.js.map +0 -1
  302. package/dist/esm/src/components/Flex/Flex.js.map +0 -1
  303. package/dist/esm/src/components/Flex/Flex.styl.js.map +0 -1
  304. package/dist/esm/src/components/Form/Form.helpers.js.map +0 -1
  305. package/dist/esm/src/components/Form/Form.js.map +0 -1
  306. package/dist/esm/src/components/Form/Form.styl.js.map +0 -1
  307. package/dist/esm/src/components/Form/Form.types.js.map +0 -1
  308. package/dist/esm/src/components/Form/SubmitButtons/SubmitButtons.js.map +0 -1
  309. package/dist/esm/src/components/Form/SubmitButtons/SubmitButtons.styl.js.map +0 -1
  310. package/dist/esm/src/components/Form/Validator.js.map +0 -1
  311. package/dist/esm/src/components/Gallery/Dots/Dots.js.map +0 -1
  312. package/dist/esm/src/components/Gallery/Dots/Dots.styl.js.map +0 -1
  313. package/dist/esm/src/components/Gallery/Gallery.js.map +0 -1
  314. package/dist/esm/src/components/Gallery/Gallery.styl.js.map +0 -1
  315. package/dist/esm/src/components/Heading/Heading.js.map +0 -1
  316. package/dist/esm/src/components/Heading/Heading.styl.js.map +0 -1
  317. package/dist/esm/src/components/Icon/Icon.js.map +0 -1
  318. package/dist/esm/src/components/Icon/Icon.styl.js.map +0 -1
  319. package/dist/esm/src/components/Icon/icons/apple.svg.js.map +0 -1
  320. package/dist/esm/src/components/Icon/icons/arrowDown.svg.js.map +0 -1
  321. package/dist/esm/src/components/Icon/icons/arrowLeft.svg.js.map +0 -1
  322. package/dist/esm/src/components/Icon/icons/arrowRight.svg.js.map +0 -1
  323. package/dist/esm/src/components/Icon/icons/arrowUp.svg.js.map +0 -1
  324. package/dist/esm/src/components/Icon/icons/attach.svg.js.map +0 -1
  325. package/dist/esm/src/components/Icon/icons/avatar.svg.js.map +0 -1
  326. package/dist/esm/src/components/Icon/icons/bookmark.svg.js.map +0 -1
  327. package/dist/esm/src/components/Icon/icons/bookmarkAdd.svg.js.map +0 -1
  328. package/dist/esm/src/components/Icon/icons/brain.svg.js.map +0 -1
  329. package/dist/esm/src/components/Icon/icons/brokenImage.svg.js.map +0 -1
  330. package/dist/esm/src/components/Icon/icons/call.svg.js.map +0 -1
  331. package/dist/esm/src/components/Icon/icons/camera.svg.js.map +0 -1
  332. package/dist/esm/src/components/Icon/icons/chat.svg.js.map +0 -1
  333. package/dist/esm/src/components/Icon/icons/check.svg.js.map +0 -1
  334. package/dist/esm/src/components/Icon/icons/checkers.svg.js.map +0 -1
  335. package/dist/esm/src/components/Icon/icons/chevronDown.svg.js.map +0 -1
  336. package/dist/esm/src/components/Icon/icons/chevronLeft.svg.js.map +0 -1
  337. package/dist/esm/src/components/Icon/icons/chevronRight.svg.js.map +0 -1
  338. package/dist/esm/src/components/Icon/icons/chevronUp.svg.js.map +0 -1
  339. package/dist/esm/src/components/Icon/icons/clearAll.svg.js.map +0 -1
  340. package/dist/esm/src/components/Icon/icons/close.svg.js.map +0 -1
  341. package/dist/esm/src/components/Icon/icons/colors.svg.js.map +0 -1
  342. package/dist/esm/src/components/Icon/icons/compass.svg.js.map +0 -1
  343. package/dist/esm/src/components/Icon/icons/copy.svg.js.map +0 -1
  344. package/dist/esm/src/components/Icon/icons/cubes.svg.js.map +0 -1
  345. package/dist/esm/src/components/Icon/icons/delete.svg.js.map +0 -1
  346. package/dist/esm/src/components/Icon/icons/discord.svg.js.map +0 -1
  347. package/dist/esm/src/components/Icon/icons/draft.svg.js.map +0 -1
  348. package/dist/esm/src/components/Icon/icons/dragHandlerHorizontal.svg.js.map +0 -1
  349. package/dist/esm/src/components/Icon/icons/dragHandlerVertical.svg.js.map +0 -1
  350. package/dist/esm/src/components/Icon/icons/edit.svg.js.map +0 -1
  351. package/dist/esm/src/components/Icon/icons/email.svg.js.map +0 -1
  352. package/dist/esm/src/components/Icon/icons/externalLink.svg.js.map +0 -1
  353. package/dist/esm/src/components/Icon/icons/eye.svg.js.map +0 -1
  354. package/dist/esm/src/components/Icon/icons/flyover.svg.js.map +0 -1
  355. package/dist/esm/src/components/Icon/icons/folder.svg.js.map +0 -1
  356. package/dist/esm/src/components/Icon/icons/folderOpen.svg.js.map +0 -1
  357. package/dist/esm/src/components/Icon/icons/forward.svg.js.map +0 -1
  358. package/dist/esm/src/components/Icon/icons/fullscreen.svg.js.map +0 -1
  359. package/dist/esm/src/components/Icon/icons/fullscreenExit.svg.js.map +0 -1
  360. package/dist/esm/src/components/Icon/icons/function.svg.js.map +0 -1
  361. package/dist/esm/src/components/Icon/icons/gear.svg.js.map +0 -1
  362. package/dist/esm/src/components/Icon/icons/geolocation.svg.js.map +0 -1
  363. package/dist/esm/src/components/Icon/icons/github.svg.js.map +0 -1
  364. package/dist/esm/src/components/Icon/icons/globe.svg.js.map +0 -1
  365. package/dist/esm/src/components/Icon/icons/google.svg.js.map +0 -1
  366. package/dist/esm/src/components/Icon/icons/group.svg.js.map +0 -1
  367. package/dist/esm/src/components/Icon/icons/history.svg.js.map +0 -1
  368. package/dist/esm/src/components/Icon/icons/home.svg.js.map +0 -1
  369. package/dist/esm/src/components/Icon/icons/image.svg.js.map +0 -1
  370. package/dist/esm/src/components/Icon/icons/index.js.map +0 -1
  371. package/dist/esm/src/components/Icon/icons/instagram.svg.js.map +0 -1
  372. package/dist/esm/src/components/Icon/icons/layers.svg.js.map +0 -1
  373. package/dist/esm/src/components/Icon/icons/link.svg.js.map +0 -1
  374. package/dist/esm/src/components/Icon/icons/linkedin.svg.js.map +0 -1
  375. package/dist/esm/src/components/Icon/icons/loader.svg.js.map +0 -1
  376. package/dist/esm/src/components/Icon/icons/lock.svg.js.map +0 -1
  377. package/dist/esm/src/components/Icon/icons/lockOpen.svg.js.map +0 -1
  378. package/dist/esm/src/components/Icon/icons/map.svg.js.map +0 -1
  379. package/dist/esm/src/components/Icon/icons/menu.svg.js.map +0 -1
  380. package/dist/esm/src/components/Icon/icons/mic.svg.js.map +0 -1
  381. package/dist/esm/src/components/Icon/icons/micMuted.svg.js.map +0 -1
  382. package/dist/esm/src/components/Icon/icons/minus.svg.js.map +0 -1
  383. package/dist/esm/src/components/Icon/icons/moreHorizontal.svg.js.map +0 -1
  384. package/dist/esm/src/components/Icon/icons/moreVertical.svg.js.map +0 -1
  385. package/dist/esm/src/components/Icon/icons/output.svg.js.map +0 -1
  386. package/dist/esm/src/components/Icon/icons/pause.svg.js.map +0 -1
  387. package/dist/esm/src/components/Icon/icons/play.svg.js.map +0 -1
  388. package/dist/esm/src/components/Icon/icons/plus.svg.js.map +0 -1
  389. package/dist/esm/src/components/Icon/icons/redo.svg.js.map +0 -1
  390. package/dist/esm/src/components/Icon/icons/requiredStar.svg.js.map +0 -1
  391. package/dist/esm/src/components/Icon/icons/rewind.svg.js.map +0 -1
  392. package/dist/esm/src/components/Icon/icons/rocket.svg.js.map +0 -1
  393. package/dist/esm/src/components/Icon/icons/route.svg.js.map +0 -1
  394. package/dist/esm/src/components/Icon/icons/routeFrom.svg.js.map +0 -1
  395. package/dist/esm/src/components/Icon/icons/routeTo.svg.js.map +0 -1
  396. package/dist/esm/src/components/Icon/icons/save.svg.js.map +0 -1
  397. package/dist/esm/src/components/Icon/icons/search.svg.js.map +0 -1
  398. package/dist/esm/src/components/Icon/icons/send.svg.js.map +0 -1
  399. package/dist/esm/src/components/Icon/icons/settings.svg.js.map +0 -1
  400. package/dist/esm/src/components/Icon/icons/shoppingBag.svg.js.map +0 -1
  401. package/dist/esm/src/components/Icon/icons/smile.svg.js.map +0 -1
  402. package/dist/esm/src/components/Icon/icons/soundWave.svg.js.map +0 -1
  403. package/dist/esm/src/components/Icon/icons/sparks.svg.js.map +0 -1
  404. package/dist/esm/src/components/Icon/icons/star.svg.js.map +0 -1
  405. package/dist/esm/src/components/Icon/icons/stop.svg.js.map +0 -1
  406. package/dist/esm/src/components/Icon/icons/stopInCircle.svg.js.map +0 -1
  407. package/dist/esm/src/components/Icon/icons/syncArrows.svg.js.map +0 -1
  408. package/dist/esm/src/components/Icon/icons/table.svg.js.map +0 -1
  409. package/dist/esm/src/components/Icon/icons/telegram.svg.js.map +0 -1
  410. package/dist/esm/src/components/Icon/icons/tool.svg.js.map +0 -1
  411. package/dist/esm/src/components/Icon/icons/trafficLight.svg.js.map +0 -1
  412. package/dist/esm/src/components/Icon/icons/undo.svg.js.map +0 -1
  413. package/dist/esm/src/components/Icon/icons/usage.svg.js.map +0 -1
  414. package/dist/esm/src/components/Icon/icons/youtube.svg.js.map +0 -1
  415. package/dist/esm/src/components/Input/Input.js.map +0 -1
  416. package/dist/esm/src/components/Input/Input.styl.js.map +0 -1
  417. package/dist/esm/src/components/InputFile/InputFile.js.map +0 -1
  418. package/dist/esm/src/components/InputFile/InputFile.styl.js.map +0 -1
  419. package/dist/esm/src/components/InputFile/InputFile.types.js.map +0 -1
  420. package/dist/esm/src/components/InputFile/Item/Item.js.map +0 -1
  421. package/dist/esm/src/components/InputFile/Item/Item.styl.js.map +0 -1
  422. package/dist/esm/src/components/Label/Label.constants.json.js.map +0 -1
  423. package/dist/esm/src/components/Label/Label.helpers.js.map +0 -1
  424. package/dist/esm/src/components/Label/Label.js.map +0 -1
  425. package/dist/esm/src/components/Label/Label.styl.js.map +0 -1
  426. package/dist/esm/src/components/LangSelector/LangSelector.js.map +0 -1
  427. package/dist/esm/src/components/Lazy/Lazy.js.map +0 -1
  428. package/dist/esm/src/components/LightBox/LightBox.js.map +0 -1
  429. package/dist/esm/src/components/LightBox/LightBox.styl.js.map +0 -1
  430. package/dist/esm/src/components/Menu/Menu.js.map +0 -1
  431. package/dist/esm/src/components/Menu/Menu.styl.js.map +0 -1
  432. package/dist/esm/src/components/Notifications/Notifications.constants.json.js.map +0 -1
  433. package/dist/esm/src/components/Notifications/Notifications.js.map +0 -1
  434. package/dist/esm/src/components/Notifications/Notifications.styl.js.map +0 -1
  435. package/dist/esm/src/components/Notifications/store.js.map +0 -1
  436. package/dist/esm/src/components/Paranja/Paranja.js.map +0 -1
  437. package/dist/esm/src/components/Paranja/Paranja.styl.js.map +0 -1
  438. package/dist/esm/src/components/Popup/Popup.helpers.js.map +0 -1
  439. package/dist/esm/src/components/Popup/Popup.js.map +0 -1
  440. package/dist/esm/src/components/Popup/Popup.styl.js.map +0 -1
  441. package/dist/esm/src/components/PopupMenu/PopupMenu.js.map +0 -1
  442. package/dist/esm/src/components/PopupMenu/PopupMenu.styl.js.map +0 -1
  443. package/dist/esm/src/components/Portal/Portal.js.map +0 -1
  444. package/dist/esm/src/components/Progress/Progress.helpers.js.map +0 -1
  445. package/dist/esm/src/components/Progress/Progress.js.map +0 -1
  446. package/dist/esm/src/components/Progress/Progress.styl.js.map +0 -1
  447. package/dist/esm/src/components/ProgressCircular/ProgressCircular.js.map +0 -1
  448. package/dist/esm/src/components/ProgressCircular/ProgressCircular.styl.js.map +0 -1
  449. package/dist/esm/src/components/RadioButton/RadioButton.js.map +0 -1
  450. package/dist/esm/src/components/RadioButton/RadioButton.styl.js.map +0 -1
  451. package/dist/esm/src/components/RadioGroup/RadioGroup.js.map +0 -1
  452. package/dist/esm/src/components/RadioGroup/RadioGroup.styl.js.map +0 -1
  453. package/dist/esm/src/components/RadioGroup/RadioGroupContext.js.map +0 -1
  454. package/dist/esm/src/components/RequiredStar/RequiredStar.js.map +0 -1
  455. package/dist/esm/src/components/RequiredStar/RequiredStar.styl.js.map +0 -1
  456. package/dist/esm/src/components/Router/Link/Link.js.map +0 -1
  457. package/dist/esm/src/components/Router/Link/Link.styl.js.map +0 -1
  458. package/dist/esm/src/components/Router/Redirect.js.map +0 -1
  459. package/dist/esm/src/components/Router/Route.js.map +0 -1
  460. package/dist/esm/src/components/Router/Router.helpers.js.map +0 -1
  461. package/dist/esm/src/components/Router/Router.js.map +0 -1
  462. package/dist/esm/src/components/Router/context.js.map +0 -1
  463. package/dist/esm/src/components/Router/store.js.map +0 -1
  464. package/dist/esm/src/components/Scroll/Scroll.js.map +0 -1
  465. package/dist/esm/src/components/Scroll/Scroll.styl.js.map +0 -1
  466. package/dist/esm/src/components/Select/Select.helpers.js.map +0 -1
  467. package/dist/esm/src/components/Select/Select.js.map +0 -1
  468. package/dist/esm/src/components/Select/Select.styl.js.map +0 -1
  469. package/dist/esm/src/components/Select/Select2.js.map +0 -1
  470. package/dist/esm/src/components/Shimmer/Shimmer.js.map +0 -1
  471. package/dist/esm/src/components/Shimmer/Shimmer.styl.js.map +0 -1
  472. package/dist/esm/src/components/Spinner/Spinner.js.map +0 -1
  473. package/dist/esm/src/components/Spinner/Spinner.styl.js.map +0 -1
  474. package/dist/esm/src/components/Spinner/spinner.svg.js.map +0 -1
  475. package/dist/esm/src/components/Table/Table.js.map +0 -1
  476. package/dist/esm/src/components/Table/Table.styl.js.map +0 -1
  477. package/dist/esm/src/components/Tabs/Tabs.js.map +0 -1
  478. package/dist/esm/src/components/Tabs/Tabs.styl.js.map +0 -1
  479. package/dist/esm/src/components/Text/Text.js.map +0 -1
  480. package/dist/esm/src/components/Text/Text.styl.js.map +0 -1
  481. package/dist/esm/src/components/Theme/Theme.defaults.js.map +0 -1
  482. package/dist/esm/src/components/Theme/Theme.helpers.js.map +0 -1
  483. package/dist/esm/src/components/Theme/Theme.js.map +0 -1
  484. package/dist/esm/src/components/Theme/ThemeProvider.js.map +0 -1
  485. package/dist/esm/src/components/Toggle/Toggle.js.map +0 -1
  486. package/dist/esm/src/components/Toggle/Toggle.styl.js.map +0 -1
  487. package/dist/esm/src/components/Tooltip/Tooltip.js.map +0 -1
  488. package/dist/esm/src/components/Tooltip/Tooltip.styl.js.map +0 -1
  489. package/dist/esm/src/components/VH/VH.js.map +0 -1
  490. package/dist/esm/src/components/Virtualized/List/List.js.map +0 -1
  491. package/dist/esm/src/components/Virtualized/List/List.styl.js.map +0 -1
  492. package/dist/esm/src/components/Virtualized/List/ListScroll.js.map +0 -1
  493. package/dist/esm/src/components/Virtualized/List/ListScroll.styl.js.map +0 -1
  494. package/dist/esm/src/components/Virtualized/Virtualized.helpers.js.map +0 -1
  495. package/dist/esm/src/components/Virtualized/Virtualized.js.map +0 -1
  496. package/dist/esm/src/components/Virtualized/Virtualized.styl.js.map +0 -1
  497. package/dist/esm/src/components/Virtualized/Virtualized.types.js.map +0 -1
  498. package/dist/esm/src/hooks/useDebounce.js.map +0 -1
  499. package/dist/esm/src/hooks/useEvent.js.map +0 -1
  500. package/dist/esm/src/hooks/useIsMounted.js.map +0 -1
  501. package/dist/esm/src/hooks/useListKeyboardControl.js.map +0 -1
  502. package/dist/esm/src/hooks/useResizeObserver.js.map +0 -1
  503. package/dist/esm/src/hooks/useThrottle.js.map +0 -1
  504. package/dist/esm/src/hooks/useToggleState.js.map +0 -1
  505. package/dist/esm/src/services/i18n.js.map +0 -1
  506. package/dist/esm/src/tools/array.js.map +0 -1
  507. package/dist/esm/src/tools/config.js.map +0 -1
  508. package/dist/esm/src/tools/date.js.map +0 -1
  509. package/dist/esm/src/tools/debounce.js.map +0 -1
  510. package/dist/esm/src/tools/dom.js.map +0 -1
  511. package/dist/esm/src/tools/env.js.map +0 -1
  512. package/dist/esm/src/tools/file.js.map +0 -1
  513. package/dist/esm/src/tools/localStorage.js.map +0 -1
  514. package/dist/esm/src/tools/number.js.map +0 -1
  515. package/dist/esm/src/tools/object.js.map +0 -1
  516. package/dist/esm/src/tools/queryParams.js.map +0 -1
  517. package/dist/esm/src/tools/rangeMap.js.map +0 -1
  518. package/dist/esm/src/tools/resizeObserver.js.map +0 -1
  519. package/dist/esm/src/tools/scroll.js.map +0 -1
  520. package/dist/esm/src/tools/string.js.map +0 -1
  521. package/dist/esm/src/tools/throttle.js.map +0 -1
  522. package/dist/esm/src/tools/uid.js.map +0 -1
@@ -1,2 +1,601 @@
1
- import{jsx,jsxs,Fragment}from"react/jsx-runtime";import*as Select_helpers from"./Select.helpers.js";import{mapById,buildOptionsTree,isMultiple,renderLabel}from"./Select.helpers.js";import{Component,createRef}from"react";import{INTERACTION_MODE,getInteractionMode}from"../../tools/dom.js";import{AssistiveText}from"../AssistiveText/AssistiveText.js";import{Button}from"../Button/Button.js";import{Icon}from"../Icon/Icon.js";import{Input}from"../Input/Input.js";import{Label}from"../Label/Label.js";import{Popup}from"../Popup/Popup.js";import{RequiredStar}from"../RequiredStar/RequiredStar.js";import S from"./Select.styl.js";import{Scroll}from"../Scroll/Scroll.js";import cn from"classnames";import compare from"compareq";import{createStore}from"justorm/react";import omit from"lodash.omit";import pick from"lodash.pick";import throttle from"../../tools/throttle.js";const SelectHelpers=Select_helpers;class Select extends Component{store;inputRef=createRef();triggerInputRef=createRef();contentRef=createRef();scrollInnerElem;onScrollInnerRef=e=>this.scrollInnerElem=e;focusedElem;selectedElem;items=[];maxIndex=-1;isFirstSelectedMeet=!1;isTree=!1;focusedItemId="";preventClose=!1;searchValLower="";optionsTree=[];ids={items:{},childIds:{}};static defaultProps={size:"m",additionalOptions:[]};constructor(e){super(e),this.onOptionsChange(),this.store=createStore(this,{searchVal:"",isOpen:!1,isFocused:!1,focusedItemIndex:0,selected:this.getDefaultSelected(),expanded:this.getDefaultExpanded(e.value),labelClipPath:"",optionsUpdated:0})}componentDidUpdate(e){var{options:t,value:s,searchValue:r}=this.props;compare(s,e.value)||(this.store.selected=this.getDefaultSelected()),compare(r,e.searchValue)||this.setSearchVal(r),compare(t,e.options)||this.onOptionsChange()}componentWillUnmount(){this.unDocumetnKeyDown(),this.unDocumentClick()}onOptionsChange(){var e=this.props["options"];this.ids=mapById(e),this.optionsTree=buildOptionsTree(e,this.ids),this.items=this.getItems(),this.maxIndex=this.items.length,this.store&&(this.store.optionsUpdated+=1,this.store.focusedItemIndex>this.maxIndex)&&0<=this.maxIndex&&(this.store.focusedItemIndex=this.maxIndex,this.focusedItemId=this.items[this.maxIndex]?.id)}coerceType(e){return"number"==typeof this.getItem(e)?.id?parseFloat(e):e}getDefaultExpanded(e){var t=this.props["expandSelected"],s=this.ids["items"];if(!t)return{};if(!e)return{};for(var r={},i=[...this.isMultiple()?e:[e]];i.length;){var o=s[i.shift()];o.parentId&&(r[o.parentId]=!0,i.push(o.parentId))}return r}getDefaultSelected(){var e=this.props["value"];return e?this.isMultiple()?e.reduce((e,t)=>{var s=this.getParentId(t);return s?e[s]?e[s].push(t):e[s]=[t]:e[t]=!this.ids.childIds[t]||[],e},{}):{[e]:!0}:{}}isClickedInside=e=>e.closest("."+S.root)||e.closest("."+S.options);onFocusedElemRef=e=>{var t,s,r;(this.focusedElem=e)&&this.contentRef.current&&({top:e,bottom:t}=e.getBoundingClientRect(),s=this.contentRef.current.getBoundingClientRect(),r=this.scrollInnerElem,e<s.top?r.scrollTop-=s.top-e:t>s.bottom&&(r.scrollTop+=t-s.bottom))};onSelectedElemRef=e=>{this.selectedElem=e};onDocumentClick=e=>{this.isClickedInside(e.target)||(this.store.isOpen=!1)};onDocumentKeyDown=e=>{var t=this.store.focusedItemIndex;switch(e.key){case"ArrowDown":t<this.maxIndex&&this.setItemFocus(t+1);break;case"ArrowUp":0<t&&this.setItemFocus(t-1)}};onDocumentKeyUp=e=>{var t=this.store.focusedItemIndex;if(-1!==t)switch(e.key){case"Enter":case"Space":this.store.isOpen&&(e.preventDefault(),e.stopPropagation(),this.onItemToggle(this.items[t].id))}};unDocumetnKeyDown=()=>document.removeEventListener("keyup",this.onDocumentKeyUp,!0);unDocumentClick=()=>document.removeEventListener("click",this.onDocumentClick);onFocus=e=>{var t=this.props["onFocus"];this.store.isFocused=!0,t?.(e)};onBlur=e=>{var t=this.props["onBlur"];this.store.isFocused=!1,t?.(e)};onSearchChange=(e,t)=>{this.setSearchVal(t),this.props.onSearchChange?.(t)};onExpandClick(e,t){var s=this.store["expanded"];e.preventDefault(),e.stopPropagation(),this.store.expanded[t]=!s[t]}onItemToggle(e){this.onChange(this.getNewSelected(e)),this.isMultiple()||(this.store.isOpen=!1)}onChange(e){var t=this.props["onChange"];this.store.selected=e,t(this.getValue())}onLabelClipPathChange=e=>this.store.labelClipPath=e;onPopupOpen=()=>{this.store.isOpen=!0,this.isMultiple()&&document.addEventListener("click",this.onDocumentClick),document.addEventListener("keydown",this.onDocumentKeyDown),document.addEventListener("keyup",this.onDocumentKeyUp,!0)};onPopupClose=()=>{this.setItemFocus(-1),this.store.isOpen=!1,this.unDocumentClick(),this.unDocumetnKeyDown()};onOptionHover=throttle(t=>{var e;getInteractionMode()===INTERACTION_MODE.POINTER&&(e=this.items.findIndex(e=>e.id===t),this.setItemFocus(e))},100,{trailing:!0});setItemFocus=e=>{this.focusedItemId=this.items[e]?.id,this.store.focusedItemIndex=e};setSearchVal(e){e=String(e);this.searchValLower=e.toLowerCase(),this.store.searchVal=e}getItems=()=>[...this.props.additionalOptions,...this.optionsTree];getItem=e=>this.ids.items[e];getParentId=e=>this.getItem(e)?.parentId;getChildIds=e=>this.ids.childIds[e];isMultiple=()=>isMultiple(this.props.value);isErrorVisible=()=>!this.store.isOpen&&Boolean(this.props.error);isSelected(e){var t=this.store["selected"],s=this.getParentId(e);return void 0!==s?-1<t[s]?.indexOf(e):(s=t[e],Array.isArray(s)?(t=this.getChildIds(e).length,s.length!==t?"indeterminate":0<s.length):s)}addSelected(e,t){var s,r,i;return this.isMultiple()?(s=this.getParentId(e),i=0<(r=this.getChildIds(e))?.length,void 0!==s||i?(this.addSelectedToParent(e,t),r?.forEach(e=>this.addSelected(e,t)),t):{...t,[e]:!0}):{[e]:!0}}addSelectedToParent(e,t){var s,r=this.getParentId(e);void 0===r||(t[r]||(t[r]=[]),-1<(s=t[r]).indexOf(e))||(s.push(e),this.addSelectedToParent(r,t))}removeSelected(e,t){return this.isMultiple()?(this.removeSelectedChilds(e,t),this.removeSelectedFromParent(e,t),t):{}}removeSelectedChilds(e,t){Array.isArray(t[e])&&t[e].forEach(e=>this.removeSelectedChilds(e,t)),delete t[e]}removeSelectedFromParent(e,t){var s=this.getParentId(e),r=t[s];void 0!==s&&r&&(-1<(e=r.indexOf(e))&&r.splice(e,1),0===r.length)&&(delete t[s],this.removeSelectedFromParent(s,t))}selectAll=()=>{let t={};this.optionsTree.forEach(({id:e})=>t=this.addSelected(e,t)),this.onChange(t)};setSelected(e){let t={};e.forEach(e=>t=this.addSelected(e,t)),this.onChange(t)}dropSelected=()=>{this.setSelected([])};getNewSelected(e){var t=this.props["required"],s=JSON.parse(JSON.stringify(this.store.selected));return this.isSelected(e)?!t||this.isMultiple()&&1!==Object.keys(s).length?this.removeSelected(e,s):s:this.addSelected(e,s)}getValue(){var e=this.store["selected"],e=Object.entries(e);return this.isMultiple()?e.reduce((e,[t,s])=>Array.isArray(s)?[...e,...s]:[...e,this.coerceType(t)],[]):(e=e[0])?this.coerceType(e[0]):null}getInputVal(){var e=this.props["value"],{isFocused:t,selected:s,isOpen:r}=this.store,i=this.props.searchValue??this.store.searchVal;if(t){if(r)return i??"";if(e)return e}t=Object.entries(s).reduce((t,e)=>{var s=this.coerceType(e[0]),e=e[1];return-1===t.indexOf(s)&&t.push(s),Array.isArray(e)&&e.forEach(e=>{-1===t.indexOf(e)&&t.push(e)}),t},[]);return 0<t.length?t.map(e=>this.getItem(e)?.label).join(", "):i}getLabel(e){var{label:e,render:t}=Object(this.getItem(e));return t?t(e):e}getFieldLabel(e){var{showSelectedCount:t,disableLabel:s,value:r}=this.props;return s?null:(s=r?.length,this.isMultiple()&&s&&t?e+` (${s})`:e)}getSelectedLabel(){var e=this.props["value"];return this.isMultiple()?e?e.reduce((e,t)=>{t=this.getLabel(t);return t?[...e,t]:e},[]).join(", "):"":this.getLabel(e)}filterOption({label:e}){return e.toLowerCase().includes(this.searchValLower)}getTriggerProps(){var e=this.props["triggerProps"];return{...pick(this.props,["name","label","size","variant","autocomplete"]),...e}}renderAdditionalLabel(){var e=this.props["additionalLabel"];return e?jsx("div",{className:S.additionalLabel,children:e}):null}renderTriggerInput(){var{inputProps:e,label:t}=this.props,s=this.getInputVal(),e={...this.getTriggerProps(),addonRight:this.renderTriggerArrow(),...e,error:this.isErrorVisible(),value:s,onChange:this.onSearchChange,ref:this.triggerInputRef,label:this.getFieldLabel(t)};return jsx(Input,{...e})}renderTriggerButton(){var e=this.props["size"],t=this.store["labelClipPath"];const{label:s,className:r,...i}=this.getTriggerProps();var o=omit(i,["name","inputProps"]),n=[this.getSelectedLabel(),this.renderAdditionalLabel()].filter(Boolean),l=0<n.length,a=l?n:s,n=l?n:null,h=this.renderTriggerArrow(),d=this.isErrorVisible(),c=cn(S.triggerButton,d&&S.isError,h&&S.hasTriggerArrow,r);return jsxs("div",{children:[jsxs(Button,{className:c,variant:"default",...o,style:{clipPath:t},title:n?.join?.(", "),children:[jsx("div",{className:cn(S.triggerButtonLabel,l&&S.hasSelected),children:a}),h]}),jsx(Label,{size:e,isOnTop:l,isError:d,onClipPathChange:this.onLabelClipPathChange,children:this.getFieldLabel(s)})]})}renderTriggerArrow(){var{size:e,inputProps:t,disableTriggerArrow:s}=this.props,{isOpen:r,searchVal:i}=this.store;return s||t?.hasClear&&i?null:jsx(Icon,{type:"chevronDown",className:cn(S.triggerArrow,r&&S.isOpen),size:e})}renderTrigger(){var{trigger:e,isSearchable:t,required:s,hideRequiredStar:r,size:i}=this.props;return e||(e=t?this.renderTriggerInput():this.renderTriggerButton(),jsxs("div",{className:S.trigger,children:[e,s&&!r&&jsx(RequiredStar,{size:i})]}))}renderFoldButton(t){var e=this.props["size"];return jsx(Button,{variant:"clear",size:e,className:S.expandButton,onPointerUpCapture:e=>this.onExpandClick(e,t),children:jsx(Icon,{type:"chevronRight",size:e,className:S.expandIcon})})}renderOption=(e,t=0)=>{var s=this.props["optionClassName"],r=this.store["expanded"];const{id:i,children:o,isGroup:n}=e;var l=this.isSelected(i),a=i===this.focusedItemId,r=r[i],h=!0===l,l="indeterminate"===l;const d=[];s={className:cn(S.option,n&&S.isGroup,a&&S.isFocused,h&&S.isSelected,l&&S.isIndeterminate,r&&S.isExpanded,S["level-"+t],s),key:i,onPointerUp:()=>this.onItemToggle(i),onPointerEnter:()=>this.onOptionHover(i)};return(a||h)&&(s.ref=this.onFocusedElemRef),(l||h&&!this.isFirstSelectedMeet)&&(this.isFirstSelectedMeet=!0),o&&(this.isTree=!0,r)&&o.forEach(e=>d.push(...this.renderOption(e,t+1))),(this.filterOption(e)||0<d.length)&&d.unshift(jsxs("div",{...s,children:[o?.length&&this.renderFoldButton(e.id),renderLabel(e)]})),d};renderOptions(){var{additionalOptions:e=[]}=this.props,e=e.concat(this.optionsTree);const t=[];return this.isFirstSelectedMeet=!1,e.forEach(e=>{t.push(...this.renderOption(e))}),t}renderPresets(){var{presets:e=[],clearButton:t,selectAllButton:s}=this.props,e=e.map(({label:e,ids:t})=>({children:e,onClick:()=>this.setSelected(t),key:e}));return s&&e.push({children:"Select all",onClick:this.selectAll,key:"select-all-button"}),t&&e.push({children:"Clear",onClick:this.dropSelected,key:"clear-button"}),0===e.length?null:jsx("div",{className:S.presetPanel,children:e.map(e=>jsx(Button,{className:S.presetButton,variant:"clear",...e}))},"preset-panel")}renderOptionsList(){var e=this.props["size"],t=(this.isTree=!1,this.renderOptions()),e=cn(S.options,S["size-"+e],this.isTree&&S.isTree);return jsxs("div",{ref:this.contentRef,children:[this.renderPresets(),jsx(Scroll,{y:!0,offset:{y:{before:10,after:10}},className:e,onInnerRef:this.onScrollInnerRef,children:t},"items-scroll")]})}render(){var{className:e,popupProps:t,size:s,error:r,blur:i,disabled:o}=this.props,{isOpen:n,isFocused:l}=this.store,e=cn(S.root,e,S["size-"+s]);return jsxs(Fragment,{children:[jsx(Popup,{className:e,direction:"bottom",size:s,focusControl:!0,hoverControl:l,blur:i,isOpen:n,disabled:o,...t,onOpen:this.onPopupOpen,onAfterClose:this.onPopupClose,trigger:this.renderTrigger(),triggerProps:{onFocus:this.onFocus,onBlur:this.onBlur},content:this.renderOptionsList()}),this.isErrorVisible()&&jsx(AssistiveText,{variant:"danger",size:s,children:r})]})}}export{Select,SelectHelpers};
2
- //# sourceMappingURL=Select.js.map
1
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
+ import * as Select_helpers from './Select.helpers.js';
3
+ import { mapById, buildOptionsTree, isMultiple, renderLabel } from './Select.helpers.js';
4
+ import { Component, createRef } from 'react';
5
+ import { INTERACTION_MODE, getInteractionMode } from '../../tools/dom.js';
6
+ import { AssistiveText } from '../AssistiveText/AssistiveText.js';
7
+ import { Button } from '../Button/Button.js';
8
+ import { Icon } from '../Icon/Icon.js';
9
+ import { Input } from '../Input/Input.js';
10
+ import { Label } from '../Label/Label.js';
11
+ import { Popup } from '../Popup/Popup.js';
12
+ import { RequiredStar } from '../RequiredStar/RequiredStar.js';
13
+ import S from './Select.styl.js';
14
+ import { Scroll } from '../Scroll/Scroll.js';
15
+ import cn from 'classnames';
16
+ import compare from 'compareq';
17
+ import { createStore } from 'justorm/react';
18
+ import omit from 'lodash.omit';
19
+ import pick from 'lodash.pick';
20
+ import throttle from '../../tools/throttle.js';
21
+
22
+ const SelectHelpers = Select_helpers;
23
+ class Select extends Component {
24
+ store;
25
+ inputRef = createRef();
26
+ triggerInputRef = createRef();
27
+ contentRef = createRef();
28
+ scrollInnerElem;
29
+ onScrollInnerRef = elem => (this.scrollInnerElem = elem);
30
+ focusedElem;
31
+ selectedElem;
32
+ items = [];
33
+ maxIndex = -1;
34
+ isFirstSelectedMeet = false;
35
+ isTree = false;
36
+ focusedItemId = '';
37
+ preventClose = false;
38
+ searchValLower = '';
39
+ optionsTree = [];
40
+ ids = {
41
+ items: {},
42
+ childIds: {},
43
+ };
44
+ static defaultProps = {
45
+ size: 'm',
46
+ additionalOptions: [],
47
+ };
48
+ constructor(props) {
49
+ super(props);
50
+ this.onOptionsChange();
51
+ this.store = createStore(this, {
52
+ searchVal: '',
53
+ isOpen: false,
54
+ isFocused: false,
55
+ focusedItemIndex: 0,
56
+ selected: this.getDefaultSelected(),
57
+ expanded: this.getDefaultExpanded(props.value),
58
+ labelClipPath: '',
59
+ optionsUpdated: 0,
60
+ });
61
+ }
62
+ componentDidUpdate(prevProps) {
63
+ const { options, value, searchValue } = this.props;
64
+ if (!compare(value, prevProps.value)) {
65
+ this.store.selected = this.getDefaultSelected();
66
+ }
67
+ if (!compare(searchValue, prevProps.searchValue)) {
68
+ this.setSearchVal(searchValue);
69
+ }
70
+ if (!compare(options, prevProps.options)) {
71
+ this.onOptionsChange();
72
+ }
73
+ }
74
+ componentWillUnmount() {
75
+ this.unDocumetnKeyDown();
76
+ this.unDocumentClick();
77
+ }
78
+ onOptionsChange() {
79
+ const { options } = this.props;
80
+ this.ids = mapById(options);
81
+ this.optionsTree = buildOptionsTree(options, this.ids);
82
+ this.items = this.getItems();
83
+ this.maxIndex = this.items.length;
84
+ if (!this.store)
85
+ return;
86
+ this.store.optionsUpdated += 1;
87
+ if (this.store.focusedItemIndex > this.maxIndex && this.maxIndex >= 0) {
88
+ this.store.focusedItemIndex = this.maxIndex;
89
+ this.focusedItemId = this.items[this.maxIndex]?.id;
90
+ }
91
+ }
92
+ coerceType(id) {
93
+ const isNumber = typeof this.getItem(id)?.id === 'number';
94
+ if (isNumber)
95
+ return parseFloat(id);
96
+ return id;
97
+ }
98
+ getDefaultExpanded(value) {
99
+ const { expandSelected } = this.props;
100
+ const { items } = this.ids;
101
+ if (!expandSelected)
102
+ return {};
103
+ if (!value)
104
+ return {};
105
+ const result = {};
106
+ const stack = [...(this.isMultiple() ? value : [value])];
107
+ // go through all selected items and mark their parents as expanded
108
+ while (stack.length) {
109
+ const pointerId = stack.shift();
110
+ const item = items[pointerId];
111
+ if (item.parentId) {
112
+ result[item.parentId] = true;
113
+ stack.push(item.parentId);
114
+ }
115
+ }
116
+ return result;
117
+ }
118
+ getDefaultSelected() {
119
+ const { value } = this.props;
120
+ if (!value)
121
+ return {};
122
+ if (this.isMultiple()) {
123
+ // @ts-ignore
124
+ return value.reduce((acc, id) => {
125
+ const parentId = this.getParentId(id);
126
+ if (parentId) {
127
+ if (!acc[parentId]) {
128
+ acc[parentId] = [id];
129
+ }
130
+ else {
131
+ acc[parentId].push(id);
132
+ }
133
+ }
134
+ else {
135
+ acc[id] = this.ids.childIds[id] ? [] : true;
136
+ }
137
+ return acc;
138
+ }, {});
139
+ }
140
+ // @ts-ignore
141
+ return { [value]: true };
142
+ }
143
+ isClickedInside = elem => elem.closest(`.${S.root}`) || elem.closest(`.${S.options}`);
144
+ onFocusedElemRef = elem => {
145
+ this.focusedElem = elem;
146
+ if (elem) {
147
+ const content = this.contentRef.current;
148
+ if (!content)
149
+ return;
150
+ const { top, bottom } = elem.getBoundingClientRect();
151
+ const rect = this.contentRef.current.getBoundingClientRect();
152
+ const list = this.scrollInnerElem;
153
+ if (top < rect.top) {
154
+ list.scrollTop -= rect.top - top;
155
+ }
156
+ else if (bottom > rect.bottom) {
157
+ list.scrollTop += bottom - rect.bottom;
158
+ }
159
+ }
160
+ };
161
+ onSelectedElemRef = elem => {
162
+ this.selectedElem = elem;
163
+ };
164
+ onDocumentClick = e => {
165
+ if (!this.isClickedInside(e.target)) {
166
+ this.store.isOpen = false;
167
+ }
168
+ };
169
+ onDocumentKeyDown = e => {
170
+ const currIndex = this.store.focusedItemIndex;
171
+ switch (e.key) {
172
+ case 'ArrowDown':
173
+ if (currIndex < this.maxIndex)
174
+ this.setItemFocus(currIndex + 1);
175
+ break;
176
+ case 'ArrowUp':
177
+ if (currIndex > 0)
178
+ this.setItemFocus(currIndex - 1);
179
+ break;
180
+ }
181
+ };
182
+ onDocumentKeyUp = e => {
183
+ const currIndex = this.store.focusedItemIndex;
184
+ if (currIndex === -1)
185
+ return;
186
+ switch (e.key) {
187
+ case 'Enter':
188
+ case 'Space':
189
+ if (this.store.isOpen) {
190
+ e.preventDefault();
191
+ e.stopPropagation();
192
+ this.onItemToggle(this.items[currIndex].id);
193
+ }
194
+ }
195
+ };
196
+ unDocumetnKeyDown = () => document.removeEventListener('keyup', this.onDocumentKeyUp, true);
197
+ unDocumentClick = () => document.removeEventListener('click', this.onDocumentClick);
198
+ onFocus = e => {
199
+ const { onFocus } = this.props;
200
+ this.store.isFocused = true;
201
+ onFocus?.(e);
202
+ };
203
+ onBlur = e => {
204
+ const { onBlur } = this.props;
205
+ this.store.isFocused = false;
206
+ onBlur?.(e);
207
+ };
208
+ onSearchChange = (e, value) => {
209
+ this.setSearchVal(value);
210
+ this.props.onSearchChange?.(value);
211
+ };
212
+ onExpandClick(e, id) {
213
+ const { expanded } = this.store;
214
+ e.preventDefault();
215
+ e.stopPropagation();
216
+ this.store.expanded[id] = !expanded[id];
217
+ }
218
+ onItemToggle(id) {
219
+ this.onChange(this.getNewSelected(id));
220
+ if (!this.isMultiple())
221
+ this.store.isOpen = false;
222
+ }
223
+ onChange(selected) {
224
+ const { onChange } = this.props;
225
+ this.store.selected = selected;
226
+ onChange(this.getValue());
227
+ }
228
+ onLabelClipPathChange = clipPath => (this.store.labelClipPath = clipPath);
229
+ onPopupOpen = () => {
230
+ this.store.isOpen = true;
231
+ if (this.isMultiple()) {
232
+ document.addEventListener('click', this.onDocumentClick);
233
+ }
234
+ document.addEventListener('keydown', this.onDocumentKeyDown);
235
+ document.addEventListener('keyup', this.onDocumentKeyUp, true);
236
+ };
237
+ onPopupClose = () => {
238
+ this.setItemFocus(-1);
239
+ this.store.isOpen = false;
240
+ this.unDocumentClick();
241
+ this.unDocumetnKeyDown();
242
+ };
243
+ onOptionHover = throttle(id => {
244
+ const mode = getInteractionMode();
245
+ if (mode !== INTERACTION_MODE.POINTER)
246
+ return;
247
+ const index = this.items.findIndex(item => item.id === id);
248
+ this.setItemFocus(index);
249
+ }, 100, { trailing: true });
250
+ setItemFocus = index => {
251
+ this.focusedItemId = this.items[index]?.id;
252
+ this.store.focusedItemIndex = index;
253
+ };
254
+ setSearchVal(searchVal) {
255
+ const searchString = String(searchVal);
256
+ this.searchValLower = searchString.toLowerCase();
257
+ this.store.searchVal = searchString;
258
+ }
259
+ getItems = () => [...this.props.additionalOptions, ...this.optionsTree];
260
+ getItem = id => this.ids.items[id];
261
+ getParentId = id => this.getItem(id)?.parentId;
262
+ getChildIds = id => this.ids.childIds[id];
263
+ isMultiple = () => isMultiple(this.props.value);
264
+ isErrorVisible = () => !this.store.isOpen && Boolean(this.props.error);
265
+ isSelected(id) {
266
+ const { selected } = this.store;
267
+ const parentId = this.getParentId(id);
268
+ const hasParent = parentId !== undefined;
269
+ if (hasParent) {
270
+ // @ts-ignore
271
+ return selected[parentId]?.indexOf(id) > -1;
272
+ }
273
+ const selectedVal = selected[id];
274
+ if (Array.isArray(selectedVal)) {
275
+ const childCount = this.getChildIds(id).length;
276
+ if (selectedVal.length !== childCount)
277
+ return 'indeterminate';
278
+ return selectedVal.length > 0;
279
+ }
280
+ return selectedVal;
281
+ }
282
+ addSelected(id, selected) {
283
+ if (!this.isMultiple())
284
+ return { [id]: true };
285
+ const parentId = this.getParentId(id);
286
+ const childIds = this.getChildIds(id);
287
+ const hasParent = parentId !== undefined;
288
+ const hasChilds = childIds?.length > 0;
289
+ if (!hasParent && !hasChilds) {
290
+ // top level without childs
291
+ return { ...selected, [id]: true };
292
+ }
293
+ this.addSelectedToParent(id, selected);
294
+ childIds?.forEach(childId => this.addSelected(childId, selected));
295
+ return selected;
296
+ }
297
+ addSelectedToParent(id, selected) {
298
+ const parentId = this.getParentId(id);
299
+ if (parentId === undefined)
300
+ return;
301
+ if (!selected[parentId])
302
+ selected[parentId] = [];
303
+ const arr = selected[parentId];
304
+ const index = arr.indexOf(id);
305
+ if (index > -1)
306
+ return;
307
+ arr.push(id);
308
+ this.addSelectedToParent(parentId, selected);
309
+ }
310
+ removeSelected(id, selected) {
311
+ if (!this.isMultiple())
312
+ return {};
313
+ this.removeSelectedChilds(id, selected);
314
+ this.removeSelectedFromParent(id, selected);
315
+ return selected;
316
+ }
317
+ removeSelectedChilds(id, selected) {
318
+ if (Array.isArray(selected[id])) {
319
+ selected[id].forEach(childId => this.removeSelectedChilds(childId, selected));
320
+ }
321
+ delete selected[id];
322
+ }
323
+ removeSelectedFromParent(id, selected) {
324
+ const parentId = this.getParentId(id);
325
+ const parentSelected = selected[parentId];
326
+ if (parentId === undefined || !parentSelected)
327
+ return;
328
+ const index = parentSelected.indexOf(id);
329
+ if (index > -1)
330
+ parentSelected.splice(index, 1);
331
+ if (parentSelected.length === 0) {
332
+ delete selected[parentId];
333
+ this.removeSelectedFromParent(parentId, selected);
334
+ }
335
+ }
336
+ selectAll = () => {
337
+ let selected = {};
338
+ this.optionsTree.forEach(({ id }) => (selected = this.addSelected(id, selected)));
339
+ this.onChange(selected);
340
+ };
341
+ setSelected(ids) {
342
+ let selected = {};
343
+ ids.forEach(id => (selected = this.addSelected(id, selected)));
344
+ this.onChange(selected);
345
+ }
346
+ dropSelected = () => {
347
+ this.setSelected([]);
348
+ };
349
+ getNewSelected(id) {
350
+ const { required } = this.props;
351
+ const selected = JSON.parse(JSON.stringify(this.store.selected));
352
+ if (this.isSelected(id)) {
353
+ if (required &&
354
+ (!this.isMultiple() || Object.keys(selected).length === 1)) {
355
+ return selected;
356
+ }
357
+ return this.removeSelected(id, selected);
358
+ }
359
+ return this.addSelected(id, selected);
360
+ }
361
+ getValue() {
362
+ const { selected } = this.store;
363
+ const entries = Object.entries(selected);
364
+ if (this.isMultiple()) {
365
+ // @ts-ignore
366
+ return entries.reduce((acc, [id, val]) => {
367
+ if (Array.isArray(val))
368
+ return [...acc, ...val];
369
+ return [...acc, this.coerceType(id)];
370
+ }, []);
371
+ }
372
+ const entry = entries[0];
373
+ if (entry)
374
+ return this.coerceType(entry[0]);
375
+ return null;
376
+ }
377
+ getInputVal() {
378
+ const { value } = this.props;
379
+ const { isFocused, selected, isOpen } = this.store;
380
+ const searchValue = this.props.searchValue ?? this.store.searchVal;
381
+ if (isFocused) {
382
+ if (isOpen)
383
+ return searchValue ?? '';
384
+ if (value)
385
+ return value;
386
+ }
387
+ const selectedPlain = Object.entries(selected).reduce((acc, entry) => {
388
+ const parentId = this.coerceType(entry[0]);
389
+ const val = entry[1];
390
+ if (acc.indexOf(parentId) === -1)
391
+ acc.push(parentId);
392
+ if (Array.isArray(val)) {
393
+ val.forEach(id => {
394
+ if (acc.indexOf(id) === -1)
395
+ acc.push(id);
396
+ });
397
+ }
398
+ return acc;
399
+ }, []);
400
+ if (selectedPlain.length > 0) {
401
+ return selectedPlain.map(id => this.getItem(id)?.label).join(', ');
402
+ }
403
+ return searchValue;
404
+ }
405
+ getLabel(id) {
406
+ const { label, render } = Object(this.getItem(id));
407
+ if (render)
408
+ return render(label);
409
+ return label;
410
+ }
411
+ getFieldLabel(label) {
412
+ const { showSelectedCount, disableLabel: disableLable, value } = this.props;
413
+ if (disableLable)
414
+ return null;
415
+ // @ts-ignore
416
+ const length = value?.length;
417
+ if (this.isMultiple() && length && showSelectedCount)
418
+ return `${label} (${length})`;
419
+ return label;
420
+ }
421
+ getSelectedLabel() {
422
+ const { value } = this.props;
423
+ if (!this.isMultiple())
424
+ return this.getLabel(value);
425
+ if (!value)
426
+ return '';
427
+ return (value
428
+ // @ts-ignore
429
+ .reduce((acc, id) => {
430
+ const label = this.getLabel(id);
431
+ return label ? [...acc, label] : acc;
432
+ }, [])
433
+ .join(', '));
434
+ }
435
+ filterOption({ label }) {
436
+ return label.toLowerCase().includes(this.searchValLower);
437
+ }
438
+ getTriggerProps() {
439
+ const { triggerProps } = this.props;
440
+ const props = {
441
+ ...pick(this.props, [
442
+ 'name',
443
+ 'label',
444
+ 'size',
445
+ 'variant',
446
+ // 'inputProps',
447
+ // 'required',
448
+ 'autocomplete',
449
+ // 'hideRequiredStar',
450
+ ]),
451
+ ...triggerProps,
452
+ };
453
+ return props;
454
+ }
455
+ renderAdditionalLabel() {
456
+ const { additionalLabel } = this.props;
457
+ if (!additionalLabel)
458
+ return null;
459
+ return jsx("div", { className: S.additionalLabel, children: additionalLabel });
460
+ }
461
+ renderTriggerInput() {
462
+ const { inputProps, label } = this.props;
463
+ const value = this.getInputVal();
464
+ const props = {
465
+ ...this.getTriggerProps(),
466
+ // addonLeft: this.renderSelectedItems(),
467
+ addonRight: this.renderTriggerArrow(),
468
+ ...inputProps,
469
+ error: this.isErrorVisible(),
470
+ value,
471
+ onChange: this.onSearchChange,
472
+ ref: this.triggerInputRef,
473
+ label: this.getFieldLabel(label),
474
+ };
475
+ return jsx(Input, { ...props });
476
+ }
477
+ renderTriggerButton() {
478
+ const { size } = this.props;
479
+ const { labelClipPath } = this.store;
480
+ const { label, className, ...rest } = this.getTriggerProps();
481
+ const props = omit(rest, ['name', 'inputProps']);
482
+ const selectedLabel = [
483
+ this.getSelectedLabel(),
484
+ this.renderAdditionalLabel(),
485
+ ].filter(Boolean);
486
+ const hasSelected = selectedLabel.length > 0;
487
+ const displayLabel = hasSelected ? selectedLabel : label;
488
+ const title = hasSelected ? selectedLabel : null;
489
+ const triggerArrow = this.renderTriggerArrow();
490
+ const isError = this.isErrorVisible();
491
+ const classes = cn(S.triggerButton, isError && S.isError, triggerArrow && S.hasTriggerArrow, className);
492
+ return (jsxs("div", { children: [jsxs(Button, { className: classes, variant: "default", ...props, style: { clipPath: labelClipPath }, title: title?.join?.(', '), children: [jsx("div", { className: cn(S.triggerButtonLabel, hasSelected && S.hasSelected), children: displayLabel }), triggerArrow] }), jsx(Label, { size: size, isOnTop: hasSelected, isError: isError, onClipPathChange: this.onLabelClipPathChange, children: this.getFieldLabel(label) })] }));
493
+ }
494
+ renderTriggerArrow() {
495
+ const { size, inputProps, disableTriggerArrow } = this.props;
496
+ const { isOpen, searchVal } = this.store;
497
+ if (disableTriggerArrow || (inputProps?.hasClear && searchVal))
498
+ return null;
499
+ return (jsx(Icon, { type: "chevronDown", className: cn(S.triggerArrow, isOpen && S.isOpen), size: size }));
500
+ }
501
+ renderTrigger() {
502
+ const { trigger, isSearchable, required, hideRequiredStar, size } = this.props;
503
+ if (trigger)
504
+ return trigger;
505
+ const triggerElem = isSearchable
506
+ ? this.renderTriggerInput()
507
+ : this.renderTriggerButton();
508
+ return (jsxs("div", { className: S.trigger, children: [triggerElem, required && !hideRequiredStar && jsx(RequiredStar, { size: size })] }));
509
+ }
510
+ renderFoldButton(id) {
511
+ const { size } = this.props;
512
+ return (jsx(Button, { variant: "clear", size: size, className: S.expandButton, onPointerUpCapture: e => this.onExpandClick(e, id), children: jsx(Icon, { type: "chevronRight", size: size, className: S.expandIcon }) }));
513
+ }
514
+ renderOption = (item, level = 0) => {
515
+ const { optionClassName } = this.props;
516
+ const { expanded } = this.store;
517
+ const { id, children, isGroup } = item;
518
+ const selectedState = this.isSelected(id);
519
+ const isFocused = id === this.focusedItemId;
520
+ const isExpanded = expanded[id];
521
+ const isSelected = selectedState === true;
522
+ const isIndeterminate = selectedState === 'indeterminate';
523
+ const items = [];
524
+ const className = cn(S.option, isGroup && S.isGroup, isFocused && S.isFocused, isSelected && S.isSelected, isIndeterminate && S.isIndeterminate, isExpanded && S.isExpanded, S[`level-${level}`], optionClassName);
525
+ const props = {
526
+ className,
527
+ key: id,
528
+ onPointerUp: () => this.onItemToggle(id),
529
+ onPointerEnter: () => this.onOptionHover(id),
530
+ };
531
+ // @ts-ignore
532
+ if (isFocused || isSelected)
533
+ props.ref = this.onFocusedElemRef;
534
+ if (isIndeterminate || (isSelected && !this.isFirstSelectedMeet)) {
535
+ this.isFirstSelectedMeet = true;
536
+ }
537
+ if (children) {
538
+ this.isTree = true;
539
+ if (isExpanded) {
540
+ children.forEach(child => items.push(...this.renderOption(child, level + 1)));
541
+ }
542
+ }
543
+ if (this.filterOption(item) || items.length > 0) {
544
+ items.unshift(jsxs("div", { ...props, children: [children?.length && this.renderFoldButton(item.id), renderLabel(item)] }));
545
+ }
546
+ return items;
547
+ };
548
+ renderOptions() {
549
+ const { additionalOptions = [] } = this.props;
550
+ const items = additionalOptions.concat(this.optionsTree);
551
+ const itemsList = [];
552
+ this.isFirstSelectedMeet = false;
553
+ items.forEach(item => {
554
+ itemsList.push(...this.renderOption(item));
555
+ });
556
+ return itemsList;
557
+ }
558
+ renderPresets() {
559
+ const { presets = [], clearButton, selectAllButton } = this.props;
560
+ const items = presets.map(({ label, ids }) => ({
561
+ children: label,
562
+ onClick: () => this.setSelected(ids),
563
+ key: label,
564
+ }));
565
+ if (selectAllButton) {
566
+ items.push({
567
+ children: 'Select all',
568
+ onClick: this.selectAll,
569
+ key: 'select-all-button',
570
+ });
571
+ }
572
+ if (clearButton) {
573
+ items.push({
574
+ children: 'Clear',
575
+ onClick: this.dropSelected,
576
+ key: 'clear-button',
577
+ });
578
+ }
579
+ if (items.length === 0)
580
+ return null;
581
+ return (jsx("div", { className: S.presetPanel, children: items.map(props => (jsx(Button, { className: S.presetButton, variant: "clear", ...props }))) }, "preset-panel"));
582
+ }
583
+ renderOptionsList() {
584
+ const { size } = this.props;
585
+ this.isTree = false;
586
+ const optionsList = this.renderOptions();
587
+ const classes = cn(S.options, S[`size-${size}`], this.isTree && S.isTree);
588
+ return (jsxs("div", { ref: this.contentRef, children: [this.renderPresets(), jsx(Scroll, { y: true, offset: { y: { before: 10, after: 10 } }, className: classes, onInnerRef: this.onScrollInnerRef, children: optionsList }, "items-scroll")] }));
589
+ }
590
+ render() {
591
+ const { className, popupProps, size, error, blur, disabled } = this.props;
592
+ const { isOpen, isFocused } = this.store;
593
+ const classes = cn(S.root, className, S[`size-${size}`]);
594
+ return (jsxs(Fragment, { children: [jsx(Popup, { className: classes, direction: "bottom", size: size, focusControl: true, hoverControl: isFocused, blur: blur, isOpen: isOpen, disabled: disabled, ...popupProps, onOpen: this.onPopupOpen, onAfterClose: this.onPopupClose, trigger: this.renderTrigger(), triggerProps: {
595
+ onFocus: this.onFocus,
596
+ onBlur: this.onBlur,
597
+ }, content: this.renderOptionsList() }), this.isErrorVisible() && (jsx(AssistiveText, { variant: "danger", size: size, children: error }))] }));
598
+ }
599
+ }
600
+
601
+ export { Select, SelectHelpers };
@@ -1,2 +1,7 @@
1
- import styleInject from"../../../node_modules/style-inject/dist/style-inject.es.js";var css_248z='.Select_root__mjOjv{max-height:200px;max-width:100%;position:relative}.Select_root__mjOjv.Select_disabled__AlOQi{opacity:.4;pointer-events:none}.Select_additionalLabel__K0--Z{flex-grow:1;overflow:hidden;text-align:left;text-overflow:ellipsis}.Select_trigger__OH48f{position:relative;z-index:1}.Select_triggerArrow__1LEop{flex-shrink:0;margin-left:.3em;margin-right:.7em;transition:transform .2s ease-out}.Select_triggerArrow__1LEop.Select_isOpen__WlMUH{transform:rotateX(-180deg)}.Select_disabled__AlOQi .Select_triggerArrow__1LEop{color:var(--text3-color)}.Select_triggerButton__lErtt{justify-content:space-between;text-align:left;width:100%}.Select_triggerButton__lErtt.Select_hasTriggerArrow__vPLad{padding-right:0}.Select_triggerButton__lErtt.Select_hasTriggerArrow__vPLad>span{max-width:calc(100% - 22px)}.Select_triggerButton__lErtt.Select_isError__WJJLq{box-shadow:inset 0 0 0 2px var(--danger-color)}.Select_triggerButton__lErtt .Select_triggerButtonLabel__XXLzh{line-height:1.2em;opacity:0;overflow:hidden;text-overflow:ellipsis}.Select_triggerButton__lErtt .Select_triggerButtonLabel__XXLzh.Select_hasSelected__zQhBV{opacity:1}.Select_presetPanel__Yu94r{box-shadow:inset 0 -1px 0 var(--decent-color-alpha-100);display:flex;padding:5px}.Select_presetButton__BAl0q{flex-grow:1;justify-content:center}.Select_presetButton__BAl0q+.Select_presetButton__BAl0q{margin-left:8px}.Select_options__3C0-v{max-height:200px;overflow-y:auto}.keyboard .Select_options__3C0-v{pointer-events:none}.Select_option__iJkfJ{align-items:center;cursor:pointer;display:flex;overflow:hidden;padding-bottom:0!important;padding-top:0!important;position:relative;text-align:left;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;width:100%}.Select_isTree__SiTaD .Select_option__iJkfJ{min-height:36px}.Select_size-xs__2lZQY .Select_option__iJkfJ{font-size:14px;height:22px;padding:0 8px}.Select_size-s__qBK9t .Select_option__iJkfJ{font-size:16px;height:26px;padding:0 12px}.Select_size-m__jp7n- .Select_option__iJkfJ{font-size:18px;height:34px;padding:0 16px}.Select_size-l__b4EEy .Select_option__iJkfJ{font-size:22px;height:42px;padding:0 20px}.Select_size-xl__0OerX .Select_option__iJkfJ{font-size:26px;height:50px;padding:0 24px}.Select_option__iJkfJ:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.Select_option__iJkfJ:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.Select_isTree__SiTaD .Select_option__iJkfJ{padding-left:30px}.Select_option__iJkfJ.Select_isGroup__aP1lY{color:var(--accent-color);font-weight:500;pointer-events:none}.Select_isExpanded__rG8R1>.Select_option__iJkfJ{display:flex}.Select_option__iJkfJ>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Select_option__iJkfJ:before{content:"";display:inline-block}.Select_option__iJkfJ.Select_level-0__vu03A:before{content:none}.Select_option__iJkfJ.Select_level-1__ozH2U:before{min-width:24px;width:24px}.Select_option__iJkfJ.Select_level-2__XDqeh:before{min-width:48px;width:48px}.Select_option__iJkfJ.Select_level-3__Bc9XS:before{min-width:72px;width:72px}.Select_option__iJkfJ.Select_level-4__KfQcQ:before{min-width:96px;width:96px}.Select_option__iJkfJ.Select_level-5__DGSDM:before{min-width:120px;width:120px}.Select_option__iJkfJ.Select_level-6__p688A:before{min-width:144px;width:144px}.Select_option__iJkfJ.Select_isIndeterminate__dy-xV,.Select_option__iJkfJ.Select_isSelected__n3ZeN{background-color:var(--active-color-alpha-500)}.keyboard .Select_option__iJkfJ.Select_isFocused__oZSgY,.pointer .Select_option__iJkfJ:hover{box-shadow:inset 100vw 0 0 0 var(--accent-color-alpha-200)}.Select_expandButton__UTwlR{background-color:transparent!important;display:flex;height:100%;justify-content:flex-end;overflow:visible;padding:0;position:relative;width:30px}.Select_expandButton__UTwlR:before{content:"";display:block;height:calc(100% + 20px);position:absolute;right:0;top:-10;width:100px}.Select_size-xs__2lZQY .Select_expandButton__UTwlR{margin-left:-34px}.Select_size-s__qBK9t .Select_expandButton__UTwlR{margin-left:-37px}.Select_size-m__jp7n- .Select_expandButton__UTwlR{margin-left:-40px}.Select_size-l__b4EEy .Select_expandButton__UTwlR{margin-left:-46px}.Select_size-xl__0OerX .Select_expandButton__UTwlR{margin-left:-52px}.Select_expandIcon__gWAIB{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .1s ease-out}.Select_isExpanded__rG8R1 .Select_expandIcon__gWAIB{transform:rotate(90deg) translateZ(0)}.Select_expandButton__UTwlR:hover .Select_expandIcon__gWAIB{color:var(--primary-color)}.Select_chip__FRK2y{margin-left:-.4em}.Select_chipsContainer__JruCi{overflow-y:auto;padding:4px 0}.Select_size-xs__2lZQY .Select_chipsContainer__JruCi{max-height:90px}.Select_size-s__qBK9t .Select_chipsContainer__JruCi{max-height:108px}.Select_size-m__jp7n- .Select_chipsContainer__JruCi{max-height:180px}.Select_size-l__b4EEy .Select_chipsContainer__JruCi{max-height:220px}.Select_size-xl__0OerX .Select_chipsContainer__JruCi{max-height:260px}.Select_chipContainerInner__cYHSk{display:flex;flex-wrap:wrap;gap:4px}.Select_chip__FRK2y{margin:0}@keyframes Select_fadeIn__QpAwZ{0%{opacity:0}10%{opacity:0}to{opacity:1}}',S={root:"Select_root__mjOjv",disabled:"Select_disabled__AlOQi",additionalLabel:"Select_additionalLabel__K0--Z",trigger:"Select_trigger__OH48f",triggerArrow:"Select_triggerArrow__1LEop",isOpen:"Select_isOpen__WlMUH",triggerButton:"Select_triggerButton__lErtt",hasTriggerArrow:"Select_hasTriggerArrow__vPLad",isError:"Select_isError__WJJLq",triggerButtonLabel:"Select_triggerButtonLabel__XXLzh",hasSelected:"Select_hasSelected__zQhBV",presetPanel:"Select_presetPanel__Yu94r",presetButton:"Select_presetButton__BAl0q",options:"Select_options__3C0-v",option:"Select_option__iJkfJ",isTree:"Select_isTree__SiTaD","size-xs":"Select_size-xs__2lZQY","size-s":"Select_size-s__qBK9t","size-m":"Select_size-m__jp7n-","size-l":"Select_size-l__b4EEy","size-xl":"Select_size-xl__0OerX",isGroup:"Select_isGroup__aP1lY",isExpanded:"Select_isExpanded__rG8R1","level-0":"Select_level-0__vu03A","level-1":"Select_level-1__ozH2U","level-2":"Select_level-2__XDqeh","level-3":"Select_level-3__Bc9XS","level-4":"Select_level-4__KfQcQ","level-5":"Select_level-5__DGSDM","level-6":"Select_level-6__p688A",isSelected:"Select_isSelected__n3ZeN",isIndeterminate:"Select_isIndeterminate__dy-xV",isFocused:"Select_isFocused__oZSgY",expandButton:"Select_expandButton__UTwlR",expandIcon:"Select_expandIcon__gWAIB",chip:"Select_chip__FRK2y",chipsContainer:"Select_chipsContainer__JruCi",chipContainerInner:"Select_chipContainerInner__cYHSk",fadeIn:"Select_fadeIn__QpAwZ"};styleInject(css_248z);export{S as default};
2
- //# sourceMappingURL=Select.styl.js.map
1
+ import styleInject from '../../../node_modules/style-inject/dist/style-inject.es.js';
2
+
3
+ var css_248z = ".Select_root__mjOjv{max-height:200px;max-width:100%;position:relative}.Select_root__mjOjv.Select_disabled__AlOQi{opacity:.4;pointer-events:none}.Select_additionalLabel__K0--Z{flex-grow:1;overflow:hidden;text-align:left;text-overflow:ellipsis}.Select_trigger__OH48f{position:relative;z-index:1}.Select_triggerArrow__1LEop{flex-shrink:0;margin-left:.3em;margin-right:.7em;transition:transform .2s ease-out}.Select_triggerArrow__1LEop.Select_isOpen__WlMUH{transform:rotateX(-180deg)}.Select_disabled__AlOQi .Select_triggerArrow__1LEop{color:var(--text3-color)}.Select_triggerButton__lErtt{justify-content:space-between;text-align:left;width:100%}.Select_triggerButton__lErtt.Select_hasTriggerArrow__vPLad{padding-right:0}.Select_triggerButton__lErtt.Select_hasTriggerArrow__vPLad>span{max-width:calc(100% - 22px)}.Select_triggerButton__lErtt.Select_isError__WJJLq{box-shadow:inset 0 0 0 2px var(--danger-color)}.Select_triggerButton__lErtt .Select_triggerButtonLabel__XXLzh{line-height:1.2em;opacity:0;overflow:hidden;text-overflow:ellipsis}.Select_triggerButton__lErtt .Select_triggerButtonLabel__XXLzh.Select_hasSelected__zQhBV{opacity:1}.Select_presetPanel__Yu94r{box-shadow:inset 0 -1px 0 var(--decent-color-alpha-100);display:flex;padding:5px}.Select_presetButton__BAl0q{flex-grow:1;justify-content:center}.Select_presetButton__BAl0q+.Select_presetButton__BAl0q{margin-left:8px}.Select_options__3C0-v{max-height:200px;overflow-y:auto}.keyboard .Select_options__3C0-v{pointer-events:none}.Select_option__iJkfJ{align-items:center;cursor:pointer;display:flex;overflow:hidden;padding-bottom:0!important;padding-top:0!important;position:relative;text-align:left;text-overflow:ellipsis;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap;width:100%}.Select_isTree__SiTaD .Select_option__iJkfJ{min-height:36px}.Select_size-xs__2lZQY .Select_option__iJkfJ{font-size:14px;height:22px;padding:0 8px}.Select_size-s__qBK9t .Select_option__iJkfJ{font-size:16px;height:26px;padding:0 12px}.Select_size-m__jp7n- .Select_option__iJkfJ{font-size:18px;height:34px;padding:0 16px}.Select_size-l__b4EEy .Select_option__iJkfJ{font-size:22px;height:42px;padding:0 20px}.Select_size-xl__0OerX .Select_option__iJkfJ{font-size:26px;height:50px;padding:0 24px}.Select_option__iJkfJ:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.Select_option__iJkfJ:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.Select_isTree__SiTaD .Select_option__iJkfJ{padding-left:30px}.Select_option__iJkfJ.Select_isGroup__aP1lY{color:var(--accent-color);font-weight:500;pointer-events:none}.Select_isExpanded__rG8R1>.Select_option__iJkfJ{display:flex}.Select_option__iJkfJ>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.Select_option__iJkfJ:before{content:\"\";display:inline-block}.Select_option__iJkfJ.Select_level-0__vu03A:before{content:none}.Select_option__iJkfJ.Select_level-1__ozH2U:before{min-width:24px;width:24px}.Select_option__iJkfJ.Select_level-2__XDqeh:before{min-width:48px;width:48px}.Select_option__iJkfJ.Select_level-3__Bc9XS:before{min-width:72px;width:72px}.Select_option__iJkfJ.Select_level-4__KfQcQ:before{min-width:96px;width:96px}.Select_option__iJkfJ.Select_level-5__DGSDM:before{min-width:120px;width:120px}.Select_option__iJkfJ.Select_level-6__p688A:before{min-width:144px;width:144px}.Select_option__iJkfJ.Select_isIndeterminate__dy-xV,.Select_option__iJkfJ.Select_isSelected__n3ZeN{background-color:var(--active-color-alpha-500)}.keyboard .Select_option__iJkfJ.Select_isFocused__oZSgY,.pointer .Select_option__iJkfJ:hover{box-shadow:inset 100vw 0 0 0 var(--accent-color-alpha-200)}.Select_expandButton__UTwlR{background-color:transparent!important;display:flex;height:100%;justify-content:flex-end;overflow:visible;padding:0;position:relative;width:30px}.Select_expandButton__UTwlR:before{content:\"\";display:block;height:calc(100% + 20px);position:absolute;right:0;top:-10;width:100px}.Select_size-xs__2lZQY .Select_expandButton__UTwlR{margin-left:-34px}.Select_size-s__qBK9t .Select_expandButton__UTwlR{margin-left:-37px}.Select_size-m__jp7n- .Select_expandButton__UTwlR{margin-left:-40px}.Select_size-l__b4EEy .Select_expandButton__UTwlR{margin-left:-46px}.Select_size-xl__0OerX .Select_expandButton__UTwlR{margin-left:-52px}.Select_expandIcon__gWAIB{-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .1s ease-out}.Select_isExpanded__rG8R1 .Select_expandIcon__gWAIB{transform:rotate(90deg) translateZ(0)}.Select_expandButton__UTwlR:hover .Select_expandIcon__gWAIB{color:var(--primary-color)}.Select_chip__FRK2y{margin-left:-.4em}.Select_chipsContainer__JruCi{overflow-y:auto;padding:4px 0}.Select_size-xs__2lZQY .Select_chipsContainer__JruCi{max-height:90px}.Select_size-s__qBK9t .Select_chipsContainer__JruCi{max-height:108px}.Select_size-m__jp7n- .Select_chipsContainer__JruCi{max-height:180px}.Select_size-l__b4EEy .Select_chipsContainer__JruCi{max-height:220px}.Select_size-xl__0OerX .Select_chipsContainer__JruCi{max-height:260px}.Select_chipContainerInner__cYHSk{display:flex;flex-wrap:wrap;gap:4px}.Select_chip__FRK2y{margin:0}@keyframes Select_fadeIn__QpAwZ{0%{opacity:0}10%{opacity:0}to{opacity:1}}";
4
+ var S = {"root":"Select_root__mjOjv","disabled":"Select_disabled__AlOQi","additionalLabel":"Select_additionalLabel__K0--Z","trigger":"Select_trigger__OH48f","triggerArrow":"Select_triggerArrow__1LEop","isOpen":"Select_isOpen__WlMUH","triggerButton":"Select_triggerButton__lErtt","hasTriggerArrow":"Select_hasTriggerArrow__vPLad","isError":"Select_isError__WJJLq","triggerButtonLabel":"Select_triggerButtonLabel__XXLzh","hasSelected":"Select_hasSelected__zQhBV","presetPanel":"Select_presetPanel__Yu94r","presetButton":"Select_presetButton__BAl0q","options":"Select_options__3C0-v","option":"Select_option__iJkfJ","isTree":"Select_isTree__SiTaD","size-xs":"Select_size-xs__2lZQY","size-s":"Select_size-s__qBK9t","size-m":"Select_size-m__jp7n-","size-l":"Select_size-l__b4EEy","size-xl":"Select_size-xl__0OerX","isGroup":"Select_isGroup__aP1lY","isExpanded":"Select_isExpanded__rG8R1","level-0":"Select_level-0__vu03A","level-1":"Select_level-1__ozH2U","level-2":"Select_level-2__XDqeh","level-3":"Select_level-3__Bc9XS","level-4":"Select_level-4__KfQcQ","level-5":"Select_level-5__DGSDM","level-6":"Select_level-6__p688A","isSelected":"Select_isSelected__n3ZeN","isIndeterminate":"Select_isIndeterminate__dy-xV","isFocused":"Select_isFocused__oZSgY","expandButton":"Select_expandButton__UTwlR","expandIcon":"Select_expandIcon__gWAIB","chip":"Select_chip__FRK2y","chipsContainer":"Select_chipsContainer__JruCi","chipContainerInner":"Select_chipContainerInner__cYHSk","fadeIn":"Select_fadeIn__QpAwZ"};
5
+ styleInject(css_248z);
6
+
7
+ export { S as default };