@consta/uikit 5.19.2 → 5.20.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 (919) hide show
  1. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.css +1 -1
  2. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js +1 -1
  3. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.js.map +1 -1
  4. package/__internal__/src/components/Popover/Popover.js.map +1 -1
  5. package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.js.map +1 -1
  6. package/__internal__/src/components/SelectCanary/SelectInput/SelectInput.css +1 -1
  7. package/__internal__/src/components/SelectCanary/SelectInput/SelectInput.js +1 -1
  8. package/__internal__/src/components/SelectCanary/SelectInput/SelectInput.js.map +1 -1
  9. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.css +1 -1
  10. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js +1 -1
  11. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.js.map +1 -1
  12. package/__internal__/src/components/SelectCanary/SelectMultipleValue/SelectMultipleValue.css +1 -0
  13. package/__internal__/src/components/SelectCanary/SelectMultipleValue/SelectMultipleValue.js +2 -0
  14. package/__internal__/src/components/SelectCanary/SelectMultipleValue/SelectMultipleValue.js.map +1 -0
  15. package/__internal__/src/components/SelectCanary/SelectMultipleValue/index.js +2 -0
  16. package/__internal__/src/components/SelectCanary/SelectMultipleValue/index.js.map +1 -0
  17. package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js +1 -1
  18. package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.js.map +1 -1
  19. package/__internal__/src/components/SelectCanary/useSelect/useSelect.js +1 -1
  20. package/__internal__/src/components/SelectCanary/useSelect/useSelect.js.map +1 -1
  21. package/__internal__/src/components/SelectComponents/useSelect/useSelect.js +1 -1
  22. package/__internal__/src/components/SelectComponents/useSelect/useSelect.js.map +1 -1
  23. package/__internal__/src/components/Tooltip/Tooltip.js +1 -1
  24. package/__internal__/src/components/Tooltip/Tooltip.js.map +1 -1
  25. package/__internal__/src/components/Tooltip/types.js.map +1 -1
  26. package/__internal__/src/utils/state/useSendToAtom/useSendToAtom.js +1 -1
  27. package/__internal__/src/utils/state/useSendToAtom/useSendToAtom.js.map +1 -1
  28. package/package.json +1 -1
  29. package/__internal__/src/components/Attachment/Attachment.d.ts +0 -5
  30. package/__internal__/src/components/Attachment/index.d.ts +0 -1
  31. package/__internal__/src/components/Attachment/types.d.ts +0 -41
  32. package/__internal__/src/components/AttachmentDeprecated/AttachmentDeprecated.d.ts +0 -5
  33. package/__internal__/src/components/AttachmentDeprecated/index.d.ts +0 -2
  34. package/__internal__/src/components/AttachmentDeprecated/types.d.ts +0 -20
  35. package/__internal__/src/components/AutoComplete/AutoComplete.d.ts +0 -3
  36. package/__internal__/src/components/AutoComplete/helpers.d.ts +0 -49
  37. package/__internal__/src/components/AutoComplete/index.d.ts +0 -1
  38. package/__internal__/src/components/AutoComplete/types.d.ts +0 -62
  39. package/__internal__/src/components/AutoComplete/useAutoComplete.d.ts +0 -51
  40. package/__internal__/src/components/AutoCompleteCanary/AutoComplete.d.ts +0 -4
  41. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/AutoCompleteTypeText.d.ts +0 -2
  42. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeText/index.d.ts +0 -1
  43. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/AutoCompleteTypeTextArray.d.ts +0 -2
  44. package/__internal__/src/components/AutoCompleteCanary/AutoCompleteTypeTextArray/index.d.ts +0 -1
  45. package/__internal__/src/components/AutoCompleteCanary/helpers.d.ts +0 -46
  46. package/__internal__/src/components/AutoCompleteCanary/index.d.ts +0 -2
  47. package/__internal__/src/components/AutoCompleteCanary/types.d.ts +0 -67
  48. package/__internal__/src/components/AutoCompleteCanary/useAutoComplete.d.ts +0 -49
  49. package/__internal__/src/components/AutoCompleteCanary/useRenderItemDefault.d.ts +0 -4
  50. package/__internal__/src/components/Avatar/Avatar.d.ts +0 -18
  51. package/__internal__/src/components/Avatar/helpers.d.ts +0 -4
  52. package/__internal__/src/components/Avatar/index.d.ts +0 -1
  53. package/__internal__/src/components/AvatarGroup/AvatarGroup.d.ts +0 -4
  54. package/__internal__/src/components/AvatarGroup/helpers.d.ts +0 -268
  55. package/__internal__/src/components/AvatarGroup/index.d.ts +0 -1
  56. package/__internal__/src/components/AvatarGroup/types.d.ts +0 -25
  57. package/__internal__/src/components/Badge/Badge.d.ts +0 -3
  58. package/__internal__/src/components/Badge/cn.d.ts +0 -1
  59. package/__internal__/src/components/Badge/guardStatus.d.ts +0 -2
  60. package/__internal__/src/components/Badge/index.d.ts +0 -3
  61. package/__internal__/src/components/Badge/maps.d.ts +0 -9
  62. package/__internal__/src/components/Badge/types.d.ts +0 -31
  63. package/__internal__/src/components/BadgeGroup/BadgeGroup.d.ts +0 -4
  64. package/__internal__/src/components/BadgeGroup/helper.d.ts +0 -33
  65. package/__internal__/src/components/BadgeGroup/index.d.ts +0 -1
  66. package/__internal__/src/components/BadgeGroup/types.d.ts +0 -51
  67. package/__internal__/src/components/BookmarkTabs/BookmarkTabs.d.ts +0 -4
  68. package/__internal__/src/components/BookmarkTabs/BookmarkTabsTab/BookmarkTabsTab.d.ts +0 -4
  69. package/__internal__/src/components/BookmarkTabs/BookmarkTabsTab/index.d.ts +0 -1
  70. package/__internal__/src/components/BookmarkTabs/helper.d.ts +0 -278
  71. package/__internal__/src/components/BookmarkTabs/index.d.ts +0 -3
  72. package/__internal__/src/components/BookmarkTabs/types.d.ts +0 -91
  73. package/__internal__/src/components/BookmarkTabs/useBookmarkTabs.d.ts +0 -23
  74. package/__internal__/src/components/Breadcrumbs/Breadcrumbs.d.ts +0 -5
  75. package/__internal__/src/components/Breadcrumbs/BreadcrumbsFitModeDropdown/BreadcrumbsFitModeDropdown.d.ts +0 -4
  76. package/__internal__/src/components/Breadcrumbs/BreadcrumbsFitModeScroll/BreadcrumbsFitModeScroll.d.ts +0 -4
  77. package/__internal__/src/components/Breadcrumbs/BreadcrumbsItem/BreadcrumbsItem.d.ts +0 -4
  78. package/__internal__/src/components/Breadcrumbs/BreadcrumbsMore/BreadcrumbsMore.d.ts +0 -14
  79. package/__internal__/src/components/Breadcrumbs/helpers.d.ts +0 -278
  80. package/__internal__/src/components/Breadcrumbs/index.d.ts +0 -1
  81. package/__internal__/src/components/Breadcrumbs/types.d.ts +0 -84
  82. package/__internal__/src/components/Breadcrumbs/useElements.d.ts +0 -13
  83. package/__internal__/src/components/Button/Button.d.ts +0 -37
  84. package/__internal__/src/components/Button/index.d.ts +0 -1
  85. package/__internal__/src/components/Card/Card.d.ts +0 -20
  86. package/__internal__/src/components/Card/index.d.ts +0 -1
  87. package/__internal__/src/components/Checkbox/Checkbox.d.ts +0 -42
  88. package/__internal__/src/components/Checkbox/index.d.ts +0 -1
  89. package/__internal__/src/components/CheckboxDeprecated/CheckboxDeprecated.d.ts +0 -42
  90. package/__internal__/src/components/CheckboxDeprecated/index.d.ts +0 -1
  91. package/__internal__/src/components/CheckboxGroup/CheckboxGroup.d.ts +0 -5
  92. package/__internal__/src/components/CheckboxGroup/helper.d.ts +0 -274
  93. package/__internal__/src/components/CheckboxGroup/index.d.ts +0 -1
  94. package/__internal__/src/components/CheckboxGroup/types.d.ts +0 -53
  95. package/__internal__/src/components/Chips/Chips.d.ts +0 -3
  96. package/__internal__/src/components/Chips/ChipsChoice/ChipsChoice.d.ts +0 -4
  97. package/__internal__/src/components/Chips/ChipsChoice/index.d.ts +0 -2
  98. package/__internal__/src/components/Chips/ChipsChoice/types.d.ts +0 -29
  99. package/__internal__/src/components/Chips/ChipsItem/ChipsItem.d.ts +0 -3
  100. package/__internal__/src/components/Chips/ChipsItem/index.d.ts +0 -1
  101. package/__internal__/src/components/Chips/helpers.d.ts +0 -42
  102. package/__internal__/src/components/Chips/index.d.ts +0 -4
  103. package/__internal__/src/components/Chips/types.d.ts +0 -72
  104. package/__internal__/src/components/ChoiceGroup/ChoiceGroup.d.ts +0 -5
  105. package/__internal__/src/components/ChoiceGroup/Item/ChoiceGroup-Item.d.ts +0 -13
  106. package/__internal__/src/components/ChoiceGroup/helper.d.ts +0 -278
  107. package/__internal__/src/components/ChoiceGroup/index.d.ts +0 -1
  108. package/__internal__/src/components/ChoiceGroup/types.d.ts +0 -68
  109. package/__internal__/src/components/Collapse/Collapse.d.ts +0 -7
  110. package/__internal__/src/components/Collapse/CollapseIcon/CollapseIcon.d.ts +0 -4
  111. package/__internal__/src/components/Collapse/index.d.ts +0 -1
  112. package/__internal__/src/components/Collapse/types.d.ts +0 -59
  113. package/__internal__/src/components/CollapseGroup/CollapseGroup.d.ts +0 -3
  114. package/__internal__/src/components/CollapseGroup/helpers.d.ts +0 -132
  115. package/__internal__/src/components/CollapseGroup/index.d.ts +0 -1
  116. package/__internal__/src/components/CollapseGroup/useChoice.d.ts +0 -5
  117. package/__internal__/src/components/Combobox/Combobox.d.ts +0 -4
  118. package/__internal__/src/components/Combobox/helpers.d.ts +0 -191
  119. package/__internal__/src/components/Combobox/index.d.ts +0 -2
  120. package/__internal__/src/components/ComboboxDeprecated/ComboboxDeprecated.d.ts +0 -5
  121. package/__internal__/src/components/ComboboxDeprecated/helpers.d.ts +0 -182
  122. package/__internal__/src/components/ComboboxDeprecated/index.d.ts +0 -1
  123. package/__internal__/src/components/ContextMenu/ContextMenu.d.ts +0 -4
  124. package/__internal__/src/components/ContextMenu/ContextMenuLevel/ContextMenuLevel.d.ts +0 -5
  125. package/__internal__/src/components/ContextMenu/ContextMenuLevel/index.d.ts +0 -1
  126. package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/ContextMenuLevelWrapper.d.ts +0 -4
  127. package/__internal__/src/components/ContextMenu/ContextMenuLevelWrapper/index.d.ts +0 -1
  128. package/__internal__/src/components/ContextMenu/ContextMenuLevels/ContextMenuLevels.d.ts +0 -2
  129. package/__internal__/src/components/ContextMenu/ContextMenuLevels/index.d.ts +0 -1
  130. package/__internal__/src/components/ContextMenu/ContextMenuLevels/useSize.d.ts +0 -2
  131. package/__internal__/src/components/ContextMenu/ContextMenuWrapper/ContextMenuWrapper.d.ts +0 -3
  132. package/__internal__/src/components/ContextMenu/ContextMenuWrapper/index.d.ts +0 -1
  133. package/__internal__/src/components/ContextMenu/helpers.d.ts +0 -97
  134. package/__internal__/src/components/ContextMenu/index.d.ts +0 -1
  135. package/__internal__/src/components/ContextMenu/types.d.ts +0 -193
  136. package/__internal__/src/components/ContextMenu/useMenuNavigation.d.ts +0 -22
  137. package/__internal__/src/components/DatePicker/DatePicker.d.ts +0 -5
  138. package/__internal__/src/components/DatePicker/DatePickerAdditionalControls/DatePickerAdditionalControls.d.ts +0 -12
  139. package/__internal__/src/components/DatePicker/DatePickerDropdown/DatePickerDropdown.d.ts +0 -34
  140. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDate/DatePickerFieldTypeDate.d.ts +0 -39
  141. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDate/helpers.d.ts +0 -54
  142. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateRange/DatePickerFieldTypeDateRange.d.ts +0 -30
  143. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateRange/helpers.d.ts +0 -35
  144. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTime/DatePickerFieldTypeDateTime.d.ts +0 -42
  145. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTime/helpers.d.ts +0 -61
  146. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTimeRange/DatePickerFieldTypeDateTimeRange.d.ts +0 -30
  147. package/__internal__/src/components/DatePicker/DatePickerFieldTypeDateTimeRange/helpers.d.ts +0 -34
  148. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonth/DatePickerFieldTypeMonth.d.ts +0 -39
  149. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonth/helpers.d.ts +0 -54
  150. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonthRange/DatePickerFieldTypeMonthRange.d.ts +0 -30
  151. package/__internal__/src/components/DatePicker/DatePickerFieldTypeMonthRange/helpers.d.ts +0 -34
  152. package/__internal__/src/components/DatePicker/DatePickerFieldTypeTime/DatePickerFieldTypeTime.d.ts +0 -42
  153. package/__internal__/src/components/DatePicker/DatePickerFieldTypeTime/helpers.d.ts +0 -61
  154. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/DatePickerFieldTypeYear.d.ts +0 -39
  155. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYear/helpers.d.ts +0 -54
  156. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYearRange/DatePickerFieldTypeYearRange.d.ts +0 -30
  157. package/__internal__/src/components/DatePicker/DatePickerFieldTypeYearRange/helpers.d.ts +0 -34
  158. package/__internal__/src/components/DatePicker/DatePickerMixRangeField/DatePickerMixRangeField.d.ts +0 -2
  159. package/__internal__/src/components/DatePicker/DatePickerTypeDate/DatePickerTypeDate.d.ts +0 -2
  160. package/__internal__/src/components/DatePicker/DatePickerTypeDateRange/DatePickerTypeDateRange.d.ts +0 -2
  161. package/__internal__/src/components/DatePicker/DatePickerTypeDateTime/DatePickerTypeDateTime.d.ts +0 -2
  162. package/__internal__/src/components/DatePicker/DatePickerTypeDateTimeRange/DatePickerTypeDateTimeRange.d.ts +0 -2
  163. package/__internal__/src/components/DatePicker/DatePickerTypeMonth/DatePickerTypeMonth.d.ts +0 -2
  164. package/__internal__/src/components/DatePicker/DatePickerTypeMonthRange/DatePickerTypeMonthRange.d.ts +0 -2
  165. package/__internal__/src/components/DatePicker/DatePickerTypeTime/DatePickerTypeTime.d.ts +0 -2
  166. package/__internal__/src/components/DatePicker/DatePickerTypeYear/DatePickerTypeYear.d.ts +0 -2
  167. package/__internal__/src/components/DatePicker/DatePickerTypeYearRange/DatePickerTypeYearRange.d.ts +0 -2
  168. package/__internal__/src/components/DatePicker/getChangeFnRange.d.ts +0 -11
  169. package/__internal__/src/components/DatePicker/helpers.d.ts +0 -31
  170. package/__internal__/src/components/DatePicker/index.d.ts +0 -1
  171. package/__internal__/src/components/DatePicker/timeForMap.d.ts +0 -2
  172. package/__internal__/src/components/DatePicker/types.d.ts +0 -110
  173. package/__internal__/src/components/DatePicker/useCalendarVisible.d.ts +0 -14
  174. package/__internal__/src/components/DatePicker/useCurrentVisibleDate.d.ts +0 -4
  175. package/__internal__/src/components/DateTime/DateTime.d.ts +0 -4
  176. package/__internal__/src/components/DateTime/DateTime100YearSlider/DateTime100YearSlider.d.ts +0 -14
  177. package/__internal__/src/components/DateTime/DateTime10YearSlider/DateTime10YearSlider.d.ts +0 -14
  178. package/__internal__/src/components/DateTime/DateTime10Years/DateTime10Years.d.ts +0 -13
  179. package/__internal__/src/components/DateTime/DateTimeCell/DateTimeCell.d.ts +0 -10
  180. package/__internal__/src/components/DateTime/DateTimeGrid/DateTimeGrid.d.ts +0 -16
  181. package/__internal__/src/components/DateTime/DateTimeItem/DateTimeItem.d.ts +0 -14
  182. package/__internal__/src/components/DateTime/DateTimeLabel/DateTimeLabel.d.ts +0 -11
  183. package/__internal__/src/components/DateTime/DateTimeMonth/DateTimeMonth.d.ts +0 -14
  184. package/__internal__/src/components/DateTime/DateTimeSlider/DateTimeSlider.d.ts +0 -24
  185. package/__internal__/src/components/DateTime/DateTimeTimeColumn/DateTimeTimeColumn.d.ts +0 -17
  186. package/__internal__/src/components/DateTime/DateTimeTimeColumn/useScrollToElement/useScrollToElement.d.ts +0 -3
  187. package/__internal__/src/components/DateTime/DateTimeToggler/DateTimeToggler.d.ts +0 -12
  188. package/__internal__/src/components/DateTime/DateTimeTypeDate/DateTimeTypeDate.d.ts +0 -2
  189. package/__internal__/src/components/DateTime/DateTimeTypeDateTime/DateTimeTypeDateTime.d.ts +0 -3
  190. package/__internal__/src/components/DateTime/DateTimeTypeDateTime/useOnChange.d.ts +0 -3
  191. package/__internal__/src/components/DateTime/DateTimeTypeMonth/DateTimeTypeMonth.d.ts +0 -2
  192. package/__internal__/src/components/DateTime/DateTimeTypeTime/DateTimeTypeTime.d.ts +0 -3
  193. package/__internal__/src/components/DateTime/DateTimeTypeTime/helpers.d.ts +0 -17
  194. package/__internal__/src/components/DateTime/DateTimeTypeYear/DateTimeTypeYear.d.ts +0 -2
  195. package/__internal__/src/components/DateTime/DateTimeYear/DateTimeYear.d.ts +0 -13
  196. package/__internal__/src/components/DateTime/DateTimeYearSlider/DateTimeYearSlider.d.ts +0 -14
  197. package/__internal__/src/components/DateTime/helpers/getDaysOfMonth.d.ts +0 -23
  198. package/__internal__/src/components/DateTime/helpers/getHandleSelectDate.d.ts +0 -11
  199. package/__internal__/src/components/DateTime/helpers/getMonthsOfYear.d.ts +0 -23
  200. package/__internal__/src/components/DateTime/helpers/getSliderValueRange.d.ts +0 -2
  201. package/__internal__/src/components/DateTime/helpers/getYearsOfDecade.d.ts +0 -23
  202. package/__internal__/src/components/DateTime/helpers/index.d.ts +0 -35
  203. package/__internal__/src/components/DateTime/helpers/isDateInRange.d.ts +0 -4
  204. package/__internal__/src/components/DateTime/helpers/isEqualDay.d.ts +0 -1
  205. package/__internal__/src/components/DateTime/helpers/isEqualMount.d.ts +0 -1
  206. package/__internal__/src/components/DateTime/helpers/isEqualYear.d.ts +0 -1
  207. package/__internal__/src/components/DateTime/helpers/types.d.ts +0 -55
  208. package/__internal__/src/components/DateTime/helpers/useCurrentVisibleDate.d.ts +0 -16
  209. package/__internal__/src/components/DateTime/index.d.ts +0 -1
  210. package/__internal__/src/components/DateTime/mixs/DateTimeMixLayout/DateTimeMixLayout.d.ts +0 -2
  211. package/__internal__/src/components/DateTime/mixs/index.d.ts +0 -1
  212. package/__internal__/src/components/DragNDropField/DragNDropField.d.ts +0 -14
  213. package/__internal__/src/components/DragNDropField/DragNDropFieldContent/DragNDropFieldContent.d.ts +0 -3
  214. package/__internal__/src/components/DragNDropField/DragNDropFieldContent/formatFileRequirements.d.ts +0 -3
  215. package/__internal__/src/components/DragNDropField/DragNDropFieldTooltip/DragNDropFieldTooltip.d.ts +0 -8
  216. package/__internal__/src/components/DragNDropField/formatAccept.d.ts +0 -3
  217. package/__internal__/src/components/DragNDropField/formatFileSize.d.ts +0 -2
  218. package/__internal__/src/components/DragNDropField/getErrorsList.d.ts +0 -3
  219. package/__internal__/src/components/DragNDropField/index.d.ts +0 -1
  220. package/__internal__/src/components/DragNDropField/locale.d.ts +0 -30
  221. package/__internal__/src/components/DragNDropField/types.d.ts +0 -30
  222. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldCanary.d.ts +0 -17
  223. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldContent/DragNDropFieldContent.d.ts +0 -4
  224. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldContent/formatFileRequirements.d.ts +0 -2
  225. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldContent/index.d.ts +0 -1
  226. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldInformer/DragNDropFieldInformer.d.ts +0 -4
  227. package/__internal__/src/components/DragNDropFieldCanary/DragNDropFieldInformer/index.d.ts +0 -1
  228. package/__internal__/src/components/DragNDropFieldCanary/formatFileSize.d.ts +0 -2
  229. package/__internal__/src/components/DragNDropFieldCanary/getErrorsList.d.ts +0 -3
  230. package/__internal__/src/components/DragNDropFieldCanary/index.d.ts +0 -3
  231. package/__internal__/src/components/DragNDropFieldCanary/locale.d.ts +0 -4
  232. package/__internal__/src/components/DragNDropFieldCanary/renderChildren.d.ts +0 -3
  233. package/__internal__/src/components/DragNDropFieldCanary/types.d.ts +0 -80
  234. package/__internal__/src/components/EventInterceptor/EventInterceptor.d.ts +0 -23
  235. package/__internal__/src/components/EventInterceptor/eventInterceptorMap.d.ts +0 -2
  236. package/__internal__/src/components/EventInterceptor/index.d.ts +0 -1
  237. package/__internal__/src/components/EventInterceptor/propsHandlers/useButtonEventHandler.d.ts +0 -5
  238. package/__internal__/src/components/EventInterceptor/propsHandlers/useCheckboxEventsHandler.d.ts +0 -6
  239. package/__internal__/src/components/EventInterceptor/propsHandlers/useSelectEventsHandler.d.ts +0 -4
  240. package/__internal__/src/components/EventInterceptor/propsHandlers/useSnackBarEventsHandler.d.ts +0 -3
  241. package/__internal__/src/components/EventInterceptor/propsHandlers/useTextFieldEventsHandler.d.ts +0 -40
  242. package/__internal__/src/components/EventInterceptor/types.d.ts +0 -1
  243. package/__internal__/src/components/EventInterceptor/usePropsHandler.d.ts +0 -3
  244. package/__internal__/src/components/FieldCaption/FieldCaption.d.ts +0 -6
  245. package/__internal__/src/components/FieldCaption/index.d.ts +0 -1
  246. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/FieldArrayValueInlineControl.d.ts +0 -2
  247. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/cnFieldArrayValueInlineControl.d.ts +0 -2
  248. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/index.d.ts +0 -2
  249. package/__internal__/src/components/FieldComponents/FieldArrayValueInlineControl/types.d.ts +0 -28
  250. package/__internal__/src/components/FieldComponents/FieldArrayValueItem/FieldArrayValueItem.d.ts +0 -13
  251. package/__internal__/src/components/FieldComponents/FieldArrayValueItem/index.d.ts +0 -1
  252. package/__internal__/src/components/FieldComponents/FieldButton/FieldButton.d.ts +0 -7
  253. package/__internal__/src/components/FieldComponents/FieldButton/cnFieldButton.d.ts +0 -2
  254. package/__internal__/src/components/FieldComponents/FieldButton/index.d.ts +0 -2
  255. package/__internal__/src/components/FieldComponents/FieldButtonStyleReset/cnFieldButtonStyleReset.d.ts +0 -2
  256. package/__internal__/src/components/FieldComponents/FieldButtonStyleReset/index.d.ts +0 -1
  257. package/__internal__/src/components/FieldComponents/FieldCaption/FieldCaption.d.ts +0 -6
  258. package/__internal__/src/components/FieldComponents/FieldCaption/index.d.ts +0 -1
  259. package/__internal__/src/components/FieldComponents/FieldClearButton/FieldClearButton.d.ts +0 -11
  260. package/__internal__/src/components/FieldComponents/FieldClearButton/index.d.ts +0 -1
  261. package/__internal__/src/components/FieldComponents/FieldComponents.d.ts +0 -15
  262. package/__internal__/src/components/FieldComponents/FieldControlLayout/FieldControlLayout.d.ts +0 -3
  263. package/__internal__/src/components/FieldComponents/FieldControlLayout/cnFieldControlLayout.d.ts +0 -2
  264. package/__internal__/src/components/FieldComponents/FieldControlLayout/helpers.d.ts +0 -10
  265. package/__internal__/src/components/FieldComponents/FieldControlLayout/index.d.ts +0 -3
  266. package/__internal__/src/components/FieldComponents/FieldControlLayout/maps.d.ts +0 -24
  267. package/__internal__/src/components/FieldComponents/FieldControlLayout/types.d.ts +0 -17
  268. package/__internal__/src/components/FieldComponents/FieldCounter/FieldCounter.d.ts +0 -11
  269. package/__internal__/src/components/FieldComponents/FieldCounter/cnFieldCounter.d.ts +0 -2
  270. package/__internal__/src/components/FieldComponents/FieldCounter/index.d.ts +0 -2
  271. package/__internal__/src/components/FieldComponents/FieldIcon/FieldIcon.d.ts +0 -4
  272. package/__internal__/src/components/FieldComponents/FieldIcon/index.d.ts +0 -1
  273. package/__internal__/src/components/FieldComponents/FieldInput/FieldInput.d.ts +0 -7
  274. package/__internal__/src/components/FieldComponents/FieldInput/cnFieldInput.d.ts +0 -2
  275. package/__internal__/src/components/FieldComponents/FieldInput/index.d.ts +0 -2
  276. package/__internal__/src/components/FieldComponents/FieldLabel/FieldLabel.d.ts +0 -11
  277. package/__internal__/src/components/FieldComponents/FieldLabel/cnFieldLabel.d.ts +0 -2
  278. package/__internal__/src/components/FieldComponents/FieldLabel/helpers.d.ts +0 -5
  279. package/__internal__/src/components/FieldComponents/FieldLabel/index.d.ts +0 -2
  280. package/__internal__/src/components/FieldComponents/FieldToggleVisiblePasswordButton/FieldToggleVisiblePasswordButton.d.ts +0 -13
  281. package/__internal__/src/components/FieldComponents/FieldToggleVisiblePasswordButton/index.d.ts +0 -1
  282. package/__internal__/src/components/FieldComponents/FieldWrapper/FieldWrapper.d.ts +0 -2
  283. package/__internal__/src/components/FieldComponents/FieldWrapper/cnFieldWrapper.d.ts +0 -2
  284. package/__internal__/src/components/FieldComponents/FieldWrapper/helpers.d.ts +0 -6
  285. package/__internal__/src/components/FieldComponents/FieldWrapper/index.d.ts +0 -1
  286. package/__internal__/src/components/FieldComponents/FieldWrapper/types.d.ts +0 -19
  287. package/__internal__/src/components/FieldComponents/index.d.ts +0 -1
  288. package/__internal__/src/components/FieldComponents/renderSide.d.ts +0 -4
  289. package/__internal__/src/components/FieldComponents/types.d.ts +0 -4
  290. package/__internal__/src/components/FieldGroup/FieldGroup.d.ts +0 -10
  291. package/__internal__/src/components/FieldGroup/getForm.d.ts +0 -2
  292. package/__internal__/src/components/FieldGroup/index.d.ts +0 -1
  293. package/__internal__/src/components/FieldGroup/types.d.ts +0 -17
  294. package/__internal__/src/components/FieldLabel/FieldLabel.d.ts +0 -10
  295. package/__internal__/src/components/FieldLabel/index.d.ts +0 -1
  296. package/__internal__/src/components/File/File.d.ts +0 -14
  297. package/__internal__/src/components/File/index.d.ts +0 -1
  298. package/__internal__/src/components/FileField/FileField.d.ts +0 -19
  299. package/__internal__/src/components/FileField/index.d.ts +0 -1
  300. package/__internal__/src/components/Grid/Grid.d.ts +0 -4
  301. package/__internal__/src/components/Grid/GridItem/GridItem.d.ts +0 -4
  302. package/__internal__/src/components/Grid/GridItem/index.d.ts +0 -1
  303. package/__internal__/src/components/Grid/helpers.d.ts +0 -5
  304. package/__internal__/src/components/Grid/index.d.ts +0 -3
  305. package/__internal__/src/components/Grid/types.d.ts +0 -34
  306. package/__internal__/src/components/GridDeprecated/GridDeprecated.d.ts +0 -33
  307. package/__internal__/src/components/GridDeprecated/GridItem/GridItem.d.ts +0 -22
  308. package/__internal__/src/components/GridDeprecated/index.d.ts +0 -1
  309. package/__internal__/src/components/GridDeprecated/useBreakpoints.d.ts +0 -37
  310. package/__internal__/src/components/Informer/Informer.d.ts +0 -25
  311. package/__internal__/src/components/Informer/index.d.ts +0 -1
  312. package/__internal__/src/components/Layout/Layout.d.ts +0 -23
  313. package/__internal__/src/components/Layout/index.d.ts +0 -1
  314. package/__internal__/src/components/Layout/useFixed.d.ts +0 -29
  315. package/__internal__/src/components/ListCanary/ListAddItem/ListAddItem.d.ts +0 -3
  316. package/__internal__/src/components/ListCanary/ListAddItem/index.d.ts +0 -1
  317. package/__internal__/src/components/ListCanary/ListBox/ListBox.d.ts +0 -3
  318. package/__internal__/src/components/ListCanary/ListBox/cnListBox.d.ts +0 -2
  319. package/__internal__/src/components/ListCanary/ListBox/index.d.ts +0 -3
  320. package/__internal__/src/components/ListCanary/ListBox/mapVerticalSpace.d.ts +0 -3
  321. package/__internal__/src/components/ListCanary/ListCanary.d.ts +0 -3
  322. package/__internal__/src/components/ListCanary/ListDivider/ListDivider.d.ts +0 -5
  323. package/__internal__/src/components/ListCanary/ListDivider/index.d.ts +0 -1
  324. package/__internal__/src/components/ListCanary/ListGroupLabel/ListGroupLabel.d.ts +0 -5
  325. package/__internal__/src/components/ListCanary/ListGroupLabel/index.d.ts +0 -1
  326. package/__internal__/src/components/ListCanary/ListItem/ListItem.d.ts +0 -4
  327. package/__internal__/src/components/ListCanary/ListItem/index.d.ts +0 -1
  328. package/__internal__/src/components/ListCanary/ListItemGrid/ListItemGrid.d.ts +0 -6
  329. package/__internal__/src/components/ListCanary/ListItemGrid/index.d.ts +0 -1
  330. package/__internal__/src/components/ListCanary/ListLoader/ListLoader.d.ts +0 -11
  331. package/__internal__/src/components/ListCanary/ListLoader/index.d.ts +0 -1
  332. package/__internal__/src/components/ListCanary/helper.d.ts +0 -56
  333. package/__internal__/src/components/ListCanary/index.d.ts +0 -11
  334. package/__internal__/src/components/ListCanary/maps.d.ts +0 -10
  335. package/__internal__/src/components/ListCanary/renderHeader.d.ts +0 -4
  336. package/__internal__/src/components/ListCanary/types.d.ts +0 -134
  337. package/__internal__/src/components/Loader/Loader.d.ts +0 -14
  338. package/__internal__/src/components/Loader/index.d.ts +0 -1
  339. package/__internal__/src/components/Loader/types.d.ts +0 -12
  340. package/__internal__/src/components/LoaderDeprecated/LoaderDeprecated.d.ts +0 -14
  341. package/__internal__/src/components/LoaderDeprecated/index.d.ts +0 -1
  342. package/__internal__/src/components/Modal/Modal.d.ts +0 -26
  343. package/__internal__/src/components/Modal/index.d.ts +0 -1
  344. package/__internal__/src/components/Pagination/Pagination.d.ts +0 -3
  345. package/__internal__/src/components/Pagination/PaginationArrow/PaginationArrow.d.ts +0 -11
  346. package/__internal__/src/components/Pagination/PaginationArrow/index.d.ts +0 -1
  347. package/__internal__/src/components/Pagination/PaginationItem/PaginationItem.d.ts +0 -4
  348. package/__internal__/src/components/Pagination/PaginationItem/index.d.ts +0 -1
  349. package/__internal__/src/components/Pagination/PaginationList/PaginationList.d.ts +0 -3
  350. package/__internal__/src/components/Pagination/PaginationList/index.d.ts +0 -1
  351. package/__internal__/src/components/Pagination/PaginationNumberInput/PaginationNumberInput.d.ts +0 -10
  352. package/__internal__/src/components/Pagination/PaginationNumberInput/index.d.ts +0 -1
  353. package/__internal__/src/components/Pagination/PaginationSizeCalculateHelper/PaginationSizeCalculateHelper.d.ts +0 -7
  354. package/__internal__/src/components/Pagination/PaginationSizeCalculateHelper/index.d.ts +0 -1
  355. package/__internal__/src/components/Pagination/helpers.d.ts +0 -16
  356. package/__internal__/src/components/Pagination/index.d.ts +0 -1
  357. package/__internal__/src/components/Pagination/types.d.ts +0 -128
  358. package/__internal__/src/components/Pagination/usePaginationItems.d.ts +0 -19
  359. package/__internal__/src/components/Pagination/usePaginationKeys.d.ts +0 -9
  360. package/__internal__/src/components/PaginationDeprecated/PaginationDeprecated.d.ts +0 -45
  361. package/__internal__/src/components/PaginationDeprecated/helpers.d.ts +0 -10
  362. package/__internal__/src/components/PaginationDeprecated/index.d.ts +0 -1
  363. package/__internal__/src/components/Picture/Picture.d.ts +0 -3
  364. package/__internal__/src/components/Picture/helper.d.ts +0 -10
  365. package/__internal__/src/components/Picture/index.d.ts +0 -1
  366. package/__internal__/src/components/Picture/types.d.ts +0 -14
  367. package/__internal__/src/components/Popover/Popover.d.ts +0 -44
  368. package/__internal__/src/components/Popover/helpers.d.ts +0 -32
  369. package/__internal__/src/components/Popover/index.d.ts +0 -2
  370. package/__internal__/src/components/Popover/usePopoverReposition.d.ts +0 -8
  371. package/__internal__/src/components/PortalWithTheme/PortalWithTheme.d.ts +0 -8
  372. package/__internal__/src/components/PortalWithTheme/PortalWithThemeContext/PortalWithThemeContext.d.ts +0 -19
  373. package/__internal__/src/components/PortalWithTheme/index.d.ts +0 -1
  374. package/__internal__/src/components/ProgressLine/ProgressLine.d.ts +0 -3
  375. package/__internal__/src/components/ProgressLine/helpers.d.ts +0 -274
  376. package/__internal__/src/components/ProgressLine/index.d.ts +0 -1
  377. package/__internal__/src/components/ProgressLine/types.d.ts +0 -16
  378. package/__internal__/src/components/ProgressSpin/ProgressSpin.d.ts +0 -18
  379. package/__internal__/src/components/ProgressSpin/index.d.ts +0 -1
  380. package/__internal__/src/components/ProgressStepBar/ProgressStepBar.d.ts +0 -4
  381. package/__internal__/src/components/ProgressStepBar/ProgressStepBarItem/ProgressStepBarItem.d.ts +0 -3
  382. package/__internal__/src/components/ProgressStepBar/ProgressStepBarLine/ProgressStepBarLine.d.ts +0 -10
  383. package/__internal__/src/components/ProgressStepBar/helpers.d.ts +0 -121
  384. package/__internal__/src/components/ProgressStepBar/index.d.ts +0 -1
  385. package/__internal__/src/components/Radio/Radio.d.ts +0 -41
  386. package/__internal__/src/components/Radio/index.d.ts +0 -1
  387. package/__internal__/src/components/RadioGroup/RadioGroup.d.ts +0 -5
  388. package/__internal__/src/components/RadioGroup/helper.d.ts +0 -272
  389. package/__internal__/src/components/RadioGroup/index.d.ts +0 -1
  390. package/__internal__/src/components/RadioGroup/types.d.ts +0 -44
  391. package/__internal__/src/components/Responses/Responses.d.ts +0 -24
  392. package/__internal__/src/components/Responses/createResponses.d.ts +0 -12
  393. package/__internal__/src/components/Responses/index.d.ts +0 -1
  394. package/__internal__/src/components/Responses403/Responses403.d.ts +0 -2
  395. package/__internal__/src/components/Responses403/index.d.ts +0 -2
  396. package/__internal__/src/components/Responses404/Responses404.d.ts +0 -2
  397. package/__internal__/src/components/Responses404/index.d.ts +0 -2
  398. package/__internal__/src/components/Responses500/Responses500.d.ts +0 -2
  399. package/__internal__/src/components/Responses500/index.d.ts +0 -2
  400. package/__internal__/src/components/Responses503/Responses503.d.ts +0 -2
  401. package/__internal__/src/components/Responses503/index.d.ts +0 -2
  402. package/__internal__/src/components/ResponsesConnectionError/ResponsesConnectionError.d.ts +0 -2
  403. package/__internal__/src/components/ResponsesConnectionError/index.d.ts +0 -2
  404. package/__internal__/src/components/ResponsesDeleted/ResponsesDeleted.d.ts +0 -2
  405. package/__internal__/src/components/ResponsesDeleted/index.d.ts +0 -2
  406. package/__internal__/src/components/ResponsesEmptyBox/ResponsesEmptyBox.d.ts +0 -2
  407. package/__internal__/src/components/ResponsesEmptyBox/index.d.ts +0 -2
  408. package/__internal__/src/components/ResponsesEmptyPockets/ResponsesEmptyPockets.d.ts +0 -2
  409. package/__internal__/src/components/ResponsesEmptyPockets/index.d.ts +0 -2
  410. package/__internal__/src/components/ResponsesExit/ResponsesExit.d.ts +0 -2
  411. package/__internal__/src/components/ResponsesExit/index.d.ts +0 -1
  412. package/__internal__/src/components/ResponsesNothingFound/ResponsesNothingFound.d.ts +0 -2
  413. package/__internal__/src/components/ResponsesNothingFound/index.d.ts +0 -2
  414. package/__internal__/src/components/ResponsesSuccess/ResponsesSuccess.d.ts +0 -2
  415. package/__internal__/src/components/ResponsesSuccess/index.d.ts +0 -2
  416. package/__internal__/src/components/Select/Select.d.ts +0 -4
  417. package/__internal__/src/components/Select/helpers.d.ts +0 -159
  418. package/__internal__/src/components/Select/index.d.ts +0 -1
  419. package/__internal__/src/components/SelectCanary/SelectCanary.d.ts +0 -2
  420. package/__internal__/src/components/SelectCanary/SelectControlLayout/SelectControlLayout.d.ts +0 -15
  421. package/__internal__/src/components/SelectCanary/SelectControlLayout/cnSelectControlLayout.d.ts +0 -2
  422. package/__internal__/src/components/SelectCanary/SelectControlLayout/index.d.ts +0 -2
  423. package/__internal__/src/components/SelectCanary/SelectCreateButton/SelectCreateButton.d.ts +0 -19
  424. package/__internal__/src/components/SelectCanary/SelectCreateButton/index.d.ts +0 -1
  425. package/__internal__/src/components/SelectCanary/SelectDropdown/SelectDropdown.d.ts +0 -54
  426. package/__internal__/src/components/SelectCanary/SelectDropdown/index.d.ts +0 -1
  427. package/__internal__/src/components/SelectCanary/SelectGroupLabel/SelectGroupLabel.d.ts +0 -10
  428. package/__internal__/src/components/SelectCanary/SelectGroupLabel/index.d.ts +0 -1
  429. package/__internal__/src/components/SelectCanary/SelectInput/SelectInput.d.ts +0 -7
  430. package/__internal__/src/components/SelectCanary/SelectInput/cnSelectInput.d.ts +0 -2
  431. package/__internal__/src/components/SelectCanary/SelectInput/index.d.ts +0 -2
  432. package/__internal__/src/components/SelectCanary/SelectItem/SelectItem.d.ts +0 -17
  433. package/__internal__/src/components/SelectCanary/SelectItem/index.d.ts +0 -1
  434. package/__internal__/src/components/SelectCanary/SelectItemAll/SelectItemAll.d.ts +0 -16
  435. package/__internal__/src/components/SelectCanary/SelectItemAll/index.d.ts +0 -1
  436. package/__internal__/src/components/SelectCanary/SelectLoader/SelectLoader.d.ts +0 -3
  437. package/__internal__/src/components/SelectCanary/SelectLoader/index.d.ts +0 -1
  438. package/__internal__/src/components/SelectCanary/SelectMultiple/SelectMultiple.d.ts +0 -3
  439. package/__internal__/src/components/SelectCanary/SelectMultiple/__test__/SelectMultiple.test.d.ts +0 -1
  440. package/__internal__/src/components/SelectCanary/SelectMultiple/index.d.ts +0 -1
  441. package/__internal__/src/components/SelectCanary/SelectPopover/SelectPopover.d.ts +0 -20
  442. package/__internal__/src/components/SelectCanary/SelectPopover/index.d.ts +0 -1
  443. package/__internal__/src/components/SelectCanary/SelectRenderItem/SelectRenderItem.d.ts +0 -24
  444. package/__internal__/src/components/SelectCanary/SelectRenderItem/index.d.ts +0 -1
  445. package/__internal__/src/components/SelectCanary/SelectSingle/SelectSingle.d.ts +0 -2
  446. package/__internal__/src/components/SelectCanary/SelectSingle/__test__/SelectSingle.test.d.ts +0 -1
  447. package/__internal__/src/components/SelectCanary/SelectSingle/index.d.ts +0 -1
  448. package/__internal__/src/components/SelectCanary/defaultProps.d.ts +0 -23
  449. package/__internal__/src/components/SelectCanary/helpers.d.ts +0 -81
  450. package/__internal__/src/components/SelectCanary/index.d.ts +0 -5
  451. package/__internal__/src/components/SelectCanary/sortValue.d.ts +0 -2
  452. package/__internal__/src/components/SelectCanary/types.d.ts +0 -117
  453. package/__internal__/src/components/SelectCanary/useSearch/index.d.ts +0 -1
  454. package/__internal__/src/components/SelectCanary/useSearch/useSearch.d.ts +0 -22
  455. package/__internal__/src/components/SelectCanary/useSelect/helpers.d.ts +0 -4
  456. package/__internal__/src/components/SelectCanary/useSelect/index.d.ts +0 -1
  457. package/__internal__/src/components/SelectCanary/useSelect/useSelect.d.ts +0 -57
  458. package/__internal__/src/components/SelectComponents/SelectContainer/SelectContainer.d.ts +0 -20
  459. package/__internal__/src/components/SelectComponents/SelectContainer/index.d.ts +0 -1
  460. package/__internal__/src/components/SelectComponents/SelectCreateButton/SelectCreateButton.d.ts +0 -15
  461. package/__internal__/src/components/SelectComponents/SelectCreateButton/index.d.ts +0 -1
  462. package/__internal__/src/components/SelectComponents/SelectDropdown/SelectDropdown.d.ts +0 -41
  463. package/__internal__/src/components/SelectComponents/SelectDropdown/index.d.ts +0 -1
  464. package/__internal__/src/components/SelectComponents/SelectGroupLabel/SelectGroupLabel.d.ts +0 -10
  465. package/__internal__/src/components/SelectComponents/SelectGroupLabel/index.d.ts +0 -1
  466. package/__internal__/src/components/SelectComponents/SelectItem/SelectItem.d.ts +0 -17
  467. package/__internal__/src/components/SelectComponents/SelectItem/index.d.ts +0 -1
  468. package/__internal__/src/components/SelectComponents/SelectItemAll/SelectItemAll.d.ts +0 -14
  469. package/__internal__/src/components/SelectComponents/SelectItemAll/index.d.ts +0 -1
  470. package/__internal__/src/components/SelectComponents/SelectLoader/SelectLoader.d.ts +0 -3
  471. package/__internal__/src/components/SelectComponents/SelectLoader/index.d.ts +0 -1
  472. package/__internal__/src/components/SelectComponents/SelectValueTag/SelectValueTag.d.ts +0 -12
  473. package/__internal__/src/components/SelectComponents/SelectValueTag/index.d.ts +0 -1
  474. package/__internal__/src/components/SelectComponents/cnSelect.d.ts +0 -3
  475. package/__internal__/src/components/SelectComponents/helpers.d.ts +0 -4
  476. package/__internal__/src/components/SelectComponents/types.d.ts +0 -34
  477. package/__internal__/src/components/SelectComponents/useSelect/helpers.d.ts +0 -14
  478. package/__internal__/src/components/SelectComponents/useSelect/index.d.ts +0 -1
  479. package/__internal__/src/components/SelectComponents/useSelect/useSelect.d.ts +0 -86
  480. package/__internal__/src/components/SelectComponentsDeprecated/SelectContainer/SelectContainer.d.ts +0 -20
  481. package/__internal__/src/components/SelectComponentsDeprecated/SelectCreateButton/SelectCreateButton.d.ts +0 -15
  482. package/__internal__/src/components/SelectComponentsDeprecated/SelectDropdown/SelectDropdown.d.ts +0 -38
  483. package/__internal__/src/components/SelectComponentsDeprecated/SelectGroupLabel/SelectGroupLabel.d.ts +0 -10
  484. package/__internal__/src/components/SelectComponentsDeprecated/SelectItem/SelectItem.d.ts +0 -17
  485. package/__internal__/src/components/SelectComponentsDeprecated/SelectItemAll/SelectSelectAll.d.ts +0 -13
  486. package/__internal__/src/components/SelectComponentsDeprecated/SelectLoader/SelectLoader.d.ts +0 -9
  487. package/__internal__/src/components/SelectComponentsDeprecated/SelectValueTag/SelectValueTag.d.ts +0 -12
  488. package/__internal__/src/components/SelectComponentsDeprecated/cnSelect.d.ts +0 -3
  489. package/__internal__/src/components/SelectComponentsDeprecated/helpers.d.ts +0 -4
  490. package/__internal__/src/components/SelectComponentsDeprecated/types.d.ts +0 -33
  491. package/__internal__/src/components/SelectDeprecated/SelectDeprecated.d.ts +0 -4
  492. package/__internal__/src/components/SelectDeprecated/helpers.d.ts +0 -154
  493. package/__internal__/src/components/SelectDeprecated/index.d.ts +0 -1
  494. package/__internal__/src/components/Sidebar/Sidebar.d.ts +0 -39
  495. package/__internal__/src/components/Sidebar/index.d.ts +0 -1
  496. package/__internal__/src/components/Skeleton/Skeleton.d.ts +0 -5
  497. package/__internal__/src/components/Skeleton/SkeletonBrick/SkeletonBrick.d.ts +0 -8
  498. package/__internal__/src/components/Skeleton/SkeletonCircle/SkeletonCircle.d.ts +0 -8
  499. package/__internal__/src/components/Skeleton/SkeletonText/SkeletonText.d.ts +0 -13
  500. package/__internal__/src/components/Skeleton/index.d.ts +0 -1
  501. package/__internal__/src/components/Slider/Slider.d.ts +0 -4
  502. package/__internal__/src/components/Slider/SliderInput/SliderInput.d.ts +0 -15
  503. package/__internal__/src/components/Slider/SliderLine/SliderLine.d.ts +0 -3
  504. package/__internal__/src/components/Slider/SliderPoint/SliderPoint.d.ts +0 -3
  505. package/__internal__/src/components/Slider/helper.d.ts +0 -93
  506. package/__internal__/src/components/Slider/index.d.ts +0 -1
  507. package/__internal__/src/components/Slider/useSlider/helper.d.ts +0 -42
  508. package/__internal__/src/components/Slider/useSlider/useSlider.d.ts +0 -3
  509. package/__internal__/src/components/Slider/useSliderStationing.d.ts +0 -15
  510. package/__internal__/src/components/SnackBar/SnackBar.d.ts +0 -5
  511. package/__internal__/src/components/SnackBar/SnackBarActionButton/SnackBarActionButton.d.ts +0 -4
  512. package/__internal__/src/components/SnackBar/SnackBarActionButton/index.d.ts +0 -1
  513. package/__internal__/src/components/SnackBar/SnackBarItem/SnackBarItem.d.ts +0 -6
  514. package/__internal__/src/components/SnackBar/SnackBarItem/index.d.ts +0 -1
  515. package/__internal__/src/components/SnackBar/SnackBarLine/SnackBarLine.d.ts +0 -4
  516. package/__internal__/src/components/SnackBar/SnackBarLine/index.d.ts +0 -1
  517. package/__internal__/src/components/SnackBar/SnackBarProgress/SnackBarProgress.d.ts +0 -4
  518. package/__internal__/src/components/SnackBar/SnackBarProgress/index.d.ts +0 -1
  519. package/__internal__/src/components/SnackBar/SnackBarTimer/SnackBarTimer.d.ts +0 -4
  520. package/__internal__/src/components/SnackBar/SnackBarTimer/index.d.ts +0 -1
  521. package/__internal__/src/components/SnackBar/helper.d.ts +0 -291
  522. package/__internal__/src/components/SnackBar/index.d.ts +0 -1
  523. package/__internal__/src/components/SnackBar/types.d.ts +0 -97
  524. package/__internal__/src/components/Spoiler/Spoiler.d.ts +0 -5
  525. package/__internal__/src/components/Spoiler/SpoilerButton/SpoilerButton.d.ts +0 -4
  526. package/__internal__/src/components/Spoiler/SpoilerButton/index.d.ts +0 -1
  527. package/__internal__/src/components/Spoiler/index.d.ts +0 -3
  528. package/__internal__/src/components/Spoiler/types.d.ts +0 -49
  529. package/__internal__/src/components/Steps/Steps.d.ts +0 -5
  530. package/__internal__/src/components/Steps/StepsStep/StepsStep.d.ts +0 -17
  531. package/__internal__/src/components/Steps/helper.d.ts +0 -268
  532. package/__internal__/src/components/Steps/index.d.ts +0 -1
  533. package/__internal__/src/components/Steps/types.d.ts +0 -33
  534. package/__internal__/src/components/StepsCanary/StepsCanary.d.ts +0 -5
  535. package/__internal__/src/components/StepsCanary/StepsItem/StepsItem.d.ts +0 -21
  536. package/__internal__/src/components/StepsCanary/StepsItem/index.d.ts +0 -1
  537. package/__internal__/src/components/StepsCanary/helper.d.ts +0 -272
  538. package/__internal__/src/components/StepsCanary/index.d.ts +0 -1
  539. package/__internal__/src/components/StepsCanary/types.d.ts +0 -39
  540. package/__internal__/src/components/Switch/Switch.d.ts +0 -24
  541. package/__internal__/src/components/Switch/index.d.ts +0 -2
  542. package/__internal__/src/components/Switch/types.d.ts +0 -34
  543. package/__internal__/src/components/SwitchGroup/SwitchGroup.d.ts +0 -5
  544. package/__internal__/src/components/SwitchGroup/helpers.d.ts +0 -270
  545. package/__internal__/src/components/SwitchGroup/index.d.ts +0 -1
  546. package/__internal__/src/components/SwitchGroup/types.d.ts +0 -32
  547. package/__internal__/src/components/Table/Cell/TableCell.d.ts +0 -37
  548. package/__internal__/src/components/Table/ChoiceGroupFilter/TableChoiceGroupFilter.d.ts +0 -13
  549. package/__internal__/src/components/Table/FilterContainer/TableFilterContainer.d.ts +0 -12
  550. package/__internal__/src/components/Table/FilterTooltip/TableFilterTooltip.d.ts +0 -18
  551. package/__internal__/src/components/Table/Header/TableHeader.d.ts +0 -29
  552. package/__internal__/src/components/Table/NumberFilter/TableNumberFilter.d.ts +0 -8
  553. package/__internal__/src/components/Table/Resizer/TableResizer.d.ts +0 -23
  554. package/__internal__/src/components/Table/RowsCollapse/TableRowsCollapse.d.ts +0 -12
  555. package/__internal__/src/components/Table/SelectedOptionsList/TableSelectedOptionsList.d.ts +0 -15
  556. package/__internal__/src/components/Table/Table.d.ts +0 -153
  557. package/__internal__/src/components/Table/TextFilter/TableTextFilter.d.ts +0 -15
  558. package/__internal__/src/components/Table/__mock__/data.mock.d.ts +0 -412
  559. package/__internal__/src/components/Table/filtering.d.ts +0 -59
  560. package/__internal__/src/components/Table/helpers.d.ts +0 -78
  561. package/__internal__/src/components/Table/index.d.ts +0 -1
  562. package/__internal__/src/components/Tabs/Tabs.d.ts +0 -5
  563. package/__internal__/src/components/Tabs/TabsFitModeDropdownWrapper/TabsFitModeDropdownWrapper.d.ts +0 -4
  564. package/__internal__/src/components/Tabs/TabsFitModeDropdownWrapper/useFittingItems.d.ts +0 -12
  565. package/__internal__/src/components/Tabs/TabsFitModeScrollWrapper/TabsFitModeScrollWrapper.d.ts +0 -4
  566. package/__internal__/src/components/Tabs/TabsFitModeScrollWrapper/__test__/helpers.test.d.ts +0 -1
  567. package/__internal__/src/components/Tabs/TabsLine/TabsLine.d.ts +0 -12
  568. package/__internal__/src/components/Tabs/TabsListWrapper/TabsListWrapper.d.ts +0 -2
  569. package/__internal__/src/components/Tabs/TabsListWrapper/index.d.ts +0 -1
  570. package/__internal__/src/components/Tabs/TabsMoreItems/TabsMoreItems.d.ts +0 -3
  571. package/__internal__/src/components/Tabs/TabsTab/TabsTab.d.ts +0 -4
  572. package/__internal__/src/components/Tabs/helpers.d.ts +0 -854
  573. package/__internal__/src/components/Tabs/index.d.ts +0 -2
  574. package/__internal__/src/components/Tabs/types.d.ts +0 -142
  575. package/__internal__/src/components/Tag/Tag.d.ts +0 -71
  576. package/__internal__/src/components/Tag/index.d.ts +0 -1
  577. package/__internal__/src/components/TagBase/TagBase.d.ts +0 -29
  578. package/__internal__/src/components/TagBase/index.d.ts +0 -1
  579. package/__internal__/src/components/Text/Text.d.ts +0 -48
  580. package/__internal__/src/components/Text/index.d.ts +0 -1
  581. package/__internal__/src/components/TextDeprecated/TextDeprecated.d.ts +0 -48
  582. package/__internal__/src/components/TextDeprecated/index.d.ts +0 -1
  583. package/__internal__/src/components/TextField/TextField.d.ts +0 -8
  584. package/__internal__/src/components/TextField/helpers.d.ts +0 -9
  585. package/__internal__/src/components/TextField/index.d.ts +0 -1
  586. package/__internal__/src/components/TextField/types.d.ts +0 -92
  587. package/__internal__/src/components/TextFieldCanary/TextFieldCanary.d.ts +0 -2
  588. package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/TextFieldTypeNumber.d.ts +0 -2
  589. package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/cnTextFieldTypeNumber.d.ts +0 -2
  590. package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/helpers.d.ts +0 -4
  591. package/__internal__/src/components/TextFieldCanary/TextFieldTypeNumber/index.d.ts +0 -1
  592. package/__internal__/src/components/TextFieldCanary/TextFieldTypePassword/TextFieldTypePassword.d.ts +0 -2
  593. package/__internal__/src/components/TextFieldCanary/TextFieldTypePassword/index.d.ts +0 -1
  594. package/__internal__/src/components/TextFieldCanary/TextFieldTypeText/TextFieldTypeText.d.ts +0 -2
  595. package/__internal__/src/components/TextFieldCanary/TextFieldTypeText/index.d.ts +0 -1
  596. package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/TextFieldTypeTextArea.d.ts +0 -4
  597. package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArea/index.d.ts +0 -1
  598. package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/TextFieldTypeTextArray.d.ts +0 -2
  599. package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/cnTextFieldTypeTextArray.d.ts +0 -2
  600. package/__internal__/src/components/TextFieldCanary/TextFieldTypeTextArray/index.d.ts +0 -1
  601. package/__internal__/src/components/TextFieldCanary/index.d.ts +0 -7
  602. package/__internal__/src/components/TextFieldCanary/types.d.ts +0 -91
  603. package/__internal__/src/components/TextFieldCanary/useTextField.d.ts +0 -27
  604. package/__internal__/src/components/Theme/Theme.d.ts +0 -33
  605. package/__internal__/src/components/Theme/index.d.ts +0 -1
  606. package/__internal__/src/components/Theme/presets/presetGpnDark.d.ts +0 -10
  607. package/__internal__/src/components/Theme/presets/presetGpnDefault.d.ts +0 -10
  608. package/__internal__/src/components/Theme/presets/presetGpnDisplay.d.ts +0 -11
  609. package/__internal__/src/components/ThemeToggler/ThemeToggler.d.ts +0 -4
  610. package/__internal__/src/components/ThemeToggler/helpers.d.ts +0 -274
  611. package/__internal__/src/components/ThemeToggler/index.d.ts +0 -1
  612. package/__internal__/src/components/ThemeToggler/types.d.ts +0 -45
  613. package/__internal__/src/components/Timer/Timer.d.ts +0 -15
  614. package/__internal__/src/components/Timer/index.d.ts +0 -1
  615. package/__internal__/src/components/Tooltip/Tooltip.d.ts +0 -4
  616. package/__internal__/src/components/Tooltip/index.d.ts +0 -2
  617. package/__internal__/src/components/Tooltip/types.d.ts +0 -23
  618. package/__internal__/src/components/TooltipDeprecated/TooltipDeprecated.d.ts +0 -24
  619. package/__internal__/src/components/TooltipDeprecated/index.d.ts +0 -1
  620. package/__internal__/src/components/User/User.d.ts +0 -36
  621. package/__internal__/src/components/User/index.d.ts +0 -1
  622. package/__internal__/src/components/UserSelect/UserSelect.d.ts +0 -5
  623. package/__internal__/src/components/UserSelect/UserSelectItem/UserSelectItem.d.ts +0 -14
  624. package/__internal__/src/components/UserSelect/UserSelectValue/UserSelectValue.d.ts +0 -15
  625. package/__internal__/src/components/UserSelect/helpers.d.ts +0 -193
  626. package/__internal__/src/components/UserSelect/index.d.ts +0 -1
  627. package/__internal__/src/components/UserSelectDeprecated/UserSelectDeprecated.d.ts +0 -5
  628. package/__internal__/src/components/UserSelectDeprecated/UserSelectItem/UserSelectItem.d.ts +0 -17
  629. package/__internal__/src/components/UserSelectDeprecated/UserSelectValue/UserSelectValue.d.ts +0 -15
  630. package/__internal__/src/components/UserSelectDeprecated/helpers.d.ts +0 -184
  631. package/__internal__/src/components/UserSelectDeprecated/index.d.ts +0 -1
  632. package/__internal__/src/docs/start/start.stand.d.ts +0 -2
  633. package/__internal__/src/fileIcons/FileIcon/FileIcon.d.ts +0 -13
  634. package/__internal__/src/fileIcons/FileIconAvi/FileIconAvi.d.ts +0 -1
  635. package/__internal__/src/fileIcons/FileIconAvi/FileIconAvi_size_m.d.ts +0 -3
  636. package/__internal__/src/fileIcons/FileIconAvi/FileIconAvi_size_s.d.ts +0 -3
  637. package/__internal__/src/fileIcons/FileIconBmp/FileIconBmp.d.ts +0 -1
  638. package/__internal__/src/fileIcons/FileIconBmp/FileIconBmp_size_m.d.ts +0 -3
  639. package/__internal__/src/fileIcons/FileIconBmp/FileIconBmp_size_s.d.ts +0 -3
  640. package/__internal__/src/fileIcons/FileIconCsv/FileIconCsv.d.ts +0 -1
  641. package/__internal__/src/fileIcons/FileIconCsv/FileIconCsv_size_m.d.ts +0 -3
  642. package/__internal__/src/fileIcons/FileIconCsv/FileIconCsv_size_s.d.ts +0 -3
  643. package/__internal__/src/fileIcons/FileIconDoc/FileIconDoc.d.ts +0 -1
  644. package/__internal__/src/fileIcons/FileIconDoc/FileIconDoc_size_m.d.ts +0 -3
  645. package/__internal__/src/fileIcons/FileIconDoc/FileIconDoc_size_s.d.ts +0 -3
  646. package/__internal__/src/fileIcons/FileIconExe/FileIconExe.d.ts +0 -1
  647. package/__internal__/src/fileIcons/FileIconExe/FileIconExe_size_m.d.ts +0 -3
  648. package/__internal__/src/fileIcons/FileIconExe/FileIconExe_size_s.d.ts +0 -3
  649. package/__internal__/src/fileIcons/FileIconGif/FileIconGif.d.ts +0 -1
  650. package/__internal__/src/fileIcons/FileIconGif/FileIconGif_size_m.d.ts +0 -3
  651. package/__internal__/src/fileIcons/FileIconGif/FileIconGif_size_s.d.ts +0 -3
  652. package/__internal__/src/fileIcons/FileIconJpg/FileIconJpg.d.ts +0 -1
  653. package/__internal__/src/fileIcons/FileIconJpg/FileIconJpg_size_m.d.ts +0 -3
  654. package/__internal__/src/fileIcons/FileIconJpg/FileIconJpg_size_s.d.ts +0 -3
  655. package/__internal__/src/fileIcons/FileIconJson/FileIconJson.d.ts +0 -1
  656. package/__internal__/src/fileIcons/FileIconJson/FileIconJson_size_m.d.ts +0 -3
  657. package/__internal__/src/fileIcons/FileIconJson/FileIconJson_size_s.d.ts +0 -3
  658. package/__internal__/src/fileIcons/FileIconLoading/FileIconLoading.d.ts +0 -1
  659. package/__internal__/src/fileIcons/FileIconLoading/FileIconLoading_size_m.d.ts +0 -3
  660. package/__internal__/src/fileIcons/FileIconLoading/FileIconLoading_size_s.d.ts +0 -3
  661. package/__internal__/src/fileIcons/FileIconMov/FileIconMov.d.ts +0 -1
  662. package/__internal__/src/fileIcons/FileIconMov/FileIconMov_size_m.d.ts +0 -3
  663. package/__internal__/src/fileIcons/FileIconMov/FileIconMov_size_s.d.ts +0 -3
  664. package/__internal__/src/fileIcons/FileIconMp3/FileIconMp3.d.ts +0 -1
  665. package/__internal__/src/fileIcons/FileIconMp3/FileIconMp3_size_m.d.ts +0 -3
  666. package/__internal__/src/fileIcons/FileIconMp3/FileIconMp3_size_s.d.ts +0 -3
  667. package/__internal__/src/fileIcons/FileIconMp4/FileIconMp4.d.ts +0 -1
  668. package/__internal__/src/fileIcons/FileIconMp4/FileIconMp4_size_m.d.ts +0 -3
  669. package/__internal__/src/fileIcons/FileIconMp4/FileIconMp4_size_s.d.ts +0 -3
  670. package/__internal__/src/fileIcons/FileIconMsg/FileIconMsg.d.ts +0 -1
  671. package/__internal__/src/fileIcons/FileIconMsg/FileIconMsg_size_m.d.ts +0 -3
  672. package/__internal__/src/fileIcons/FileIconMsg/FileIconMsg_size_s.d.ts +0 -3
  673. package/__internal__/src/fileIcons/FileIconPdf/FileIconPdf.d.ts +0 -1
  674. package/__internal__/src/fileIcons/FileIconPdf/FileIconPdf_size_m.d.ts +0 -3
  675. package/__internal__/src/fileIcons/FileIconPdf/FileIconPdf_size_s.d.ts +0 -3
  676. package/__internal__/src/fileIcons/FileIconPng/FileIconPng.d.ts +0 -1
  677. package/__internal__/src/fileIcons/FileIconPng/FileIconPng_size_m.d.ts +0 -3
  678. package/__internal__/src/fileIcons/FileIconPng/FileIconPng_size_s.d.ts +0 -3
  679. package/__internal__/src/fileIcons/FileIconPpt/FileIconPpt.d.ts +0 -1
  680. package/__internal__/src/fileIcons/FileIconPpt/FileIconPpt_size_m.d.ts +0 -3
  681. package/__internal__/src/fileIcons/FileIconPpt/FileIconPpt_size_s.d.ts +0 -3
  682. package/__internal__/src/fileIcons/FileIconRar/FileIconRar.d.ts +0 -1
  683. package/__internal__/src/fileIcons/FileIconRar/FileIconRar_size_m.d.ts +0 -3
  684. package/__internal__/src/fileIcons/FileIconRar/FileIconRar_size_s.d.ts +0 -3
  685. package/__internal__/src/fileIcons/FileIconRtf/FileIconRtf.d.ts +0 -1
  686. package/__internal__/src/fileIcons/FileIconRtf/FileIconRtf_size_m.d.ts +0 -3
  687. package/__internal__/src/fileIcons/FileIconRtf/FileIconRtf_size_s.d.ts +0 -3
  688. package/__internal__/src/fileIcons/FileIconSvg/FileIconSvg.d.ts +0 -1
  689. package/__internal__/src/fileIcons/FileIconSvg/FileIconSvg_size_m.d.ts +0 -3
  690. package/__internal__/src/fileIcons/FileIconSvg/FileIconSvg_size_s.d.ts +0 -3
  691. package/__internal__/src/fileIcons/FileIconTiff/FileIconTiff.d.ts +0 -1
  692. package/__internal__/src/fileIcons/FileIconTiff/FileIconTiff_size_m.d.ts +0 -3
  693. package/__internal__/src/fileIcons/FileIconTiff/FileIconTiff_size_s.d.ts +0 -3
  694. package/__internal__/src/fileIcons/FileIconTxt/FileIconTxt.d.ts +0 -1
  695. package/__internal__/src/fileIcons/FileIconTxt/FileIconTxt_size_m.d.ts +0 -3
  696. package/__internal__/src/fileIcons/FileIconTxt/FileIconTxt_size_s.d.ts +0 -3
  697. package/__internal__/src/fileIcons/FileIconUndefined/FileIconUndefined.d.ts +0 -1
  698. package/__internal__/src/fileIcons/FileIconUndefined/FileIconUndefined_size_m.d.ts +0 -3
  699. package/__internal__/src/fileIcons/FileIconUndefined/FileIconUndefined_size_s.d.ts +0 -3
  700. package/__internal__/src/fileIcons/FileIconVsd/FileIconVsd.d.ts +0 -1
  701. package/__internal__/src/fileIcons/FileIconVsd/FileIconVsd_size_m.d.ts +0 -3
  702. package/__internal__/src/fileIcons/FileIconVsd/FileIconVsd_size_s.d.ts +0 -3
  703. package/__internal__/src/fileIcons/FileIconWav/FileIconWav.d.ts +0 -1
  704. package/__internal__/src/fileIcons/FileIconWav/FileIconWav_size_m.d.ts +0 -3
  705. package/__internal__/src/fileIcons/FileIconWav/FileIconWav_size_s.d.ts +0 -3
  706. package/__internal__/src/fileIcons/FileIconXls/FileIconXls.d.ts +0 -1
  707. package/__internal__/src/fileIcons/FileIconXls/FileIconXls_size_m.d.ts +0 -3
  708. package/__internal__/src/fileIcons/FileIconXls/FileIconXls_size_s.d.ts +0 -3
  709. package/__internal__/src/fileIcons/FileIconZip/FileIconZip.d.ts +0 -1
  710. package/__internal__/src/fileIcons/FileIconZip/FileIconZip_size_m.d.ts +0 -3
  711. package/__internal__/src/fileIcons/FileIconZip/FileIconZip_size_s.d.ts +0 -3
  712. package/__internal__/src/fileIcons/createFileIcon/createFileIcon.d.ts +0 -10
  713. package/__internal__/src/hocs/withTooltip/index.d.ts +0 -1
  714. package/__internal__/src/hocs/withTooltip/withTooltip.d.ts +0 -28
  715. package/__internal__/src/hooks/useBreakpoints/addPrefix.d.ts +0 -1
  716. package/__internal__/src/hooks/useBreakpoints/getLastPoint.d.ts +0 -1
  717. package/__internal__/src/hooks/useBreakpoints/index.d.ts +0 -5
  718. package/__internal__/src/hooks/useBreakpoints/mapping.d.ts +0 -3
  719. package/__internal__/src/hooks/useBreakpoints/types.d.ts +0 -2
  720. package/__internal__/src/hooks/useBreakpoints/useBreakpoints.d.ts +0 -6
  721. package/__internal__/src/hooks/useBreakpoints/useComponentBreakpoints.d.ts +0 -6
  722. package/__internal__/src/hooks/useBreakpoints/useWindowBreakpoints.d.ts +0 -5
  723. package/__internal__/src/hooks/useBreakpointsDeprecated/addPrefix.d.ts +0 -1
  724. package/__internal__/src/hooks/useBreakpointsDeprecated/getLastPoint.d.ts +0 -1
  725. package/__internal__/src/hooks/useBreakpointsDeprecated/index.d.ts +0 -3
  726. package/__internal__/src/hooks/useBreakpointsDeprecated/mapping.d.ts +0 -3
  727. package/__internal__/src/hooks/useBreakpointsDeprecated/types.d.ts +0 -2
  728. package/__internal__/src/hooks/useBreakpointsDeprecated/useBreakpointsDeprecated.d.ts +0 -5
  729. package/__internal__/src/hooks/useBreakpointsDepricated/index.d.ts +0 -1
  730. package/__internal__/src/hooks/useBreakpointsDepricated/useBreakpointsDepricated.d.ts +0 -1
  731. package/__internal__/src/hooks/useChoiceGroup/index.d.ts +0 -1
  732. package/__internal__/src/hooks/useChoiceGroup/useChoiceGroup.d.ts +0 -29
  733. package/__internal__/src/hooks/useChoiceGroupIndexed/index.d.ts +0 -1
  734. package/__internal__/src/hooks/useChoiceGroupIndexed/useChoiceGroupIndexed.d.ts +0 -16
  735. package/__internal__/src/hooks/useClickOutside/index.d.ts +0 -1
  736. package/__internal__/src/hooks/useClickOutside/useClickOutside.d.ts +0 -9
  737. package/__internal__/src/hooks/useComponentBreakpointsDeprecated/index.d.ts +0 -2
  738. package/__internal__/src/hooks/useComponentBreakpointsDeprecated/useComponentBreakpointsDeprecated.d.ts +0 -2
  739. package/__internal__/src/hooks/useComponentBreakpointsDepricated/index.d.ts +0 -1
  740. package/__internal__/src/hooks/useComponentBreakpointsDepricated/useComponentBreakpointsDepricated.d.ts +0 -1
  741. package/__internal__/src/hooks/useComponentSize/getElementSize.d.ts +0 -4
  742. package/__internal__/src/hooks/useComponentSize/index.d.ts +0 -3
  743. package/__internal__/src/hooks/useComponentSize/types.d.ts +0 -4
  744. package/__internal__/src/hooks/useComponentSize/useComponentSize.d.ts +0 -2
  745. package/__internal__/src/hooks/useDebounce/index.d.ts +0 -1
  746. package/__internal__/src/hooks/useDebounce/useDebounce.d.ts +0 -1
  747. package/__internal__/src/hooks/useFlag/index.d.ts +0 -1
  748. package/__internal__/src/hooks/useFlag/useFlag.d.ts +0 -10
  749. package/__internal__/src/hooks/useForkRef/index.d.ts +0 -1
  750. package/__internal__/src/hooks/useForkRef/useForkRef.d.ts +0 -2
  751. package/__internal__/src/hooks/useGlobalKeys/index.d.ts +0 -1
  752. package/__internal__/src/hooks/useGlobalKeys/useGlobalKeys.d.ts +0 -6
  753. package/__internal__/src/hooks/useHideElementsInLine/helpers/getHiddenCount.d.ts +0 -1
  754. package/__internal__/src/hooks/useHideElementsInLine/index.d.ts +0 -2
  755. package/__internal__/src/hooks/useHideElementsInLine/useHideElementsInLine.d.ts +0 -7
  756. package/__internal__/src/hooks/useHideElementsInLineDeprecated/index.d.ts +0 -1
  757. package/__internal__/src/hooks/useHideElementsInLineDeprecated/useHideElementsInLineDeprecated.d.ts +0 -9
  758. package/__internal__/src/hooks/useHideElementsInLineDepricated/index.d.ts +0 -1
  759. package/__internal__/src/hooks/useHideElementsInLineDepricated/useHideElementsInLineDepricated.d.ts +0 -1
  760. package/__internal__/src/hooks/useKeys/index.d.ts +0 -1
  761. package/__internal__/src/hooks/useKeys/useKeys.d.ts +0 -10
  762. package/__internal__/src/hooks/useKeysDeprecated/index.d.ts +0 -1
  763. package/__internal__/src/hooks/useKeysDeprecated/useKeysDeprecated.d.ts +0 -17
  764. package/__internal__/src/hooks/useKeysDepricated/index.d.ts +0 -1
  765. package/__internal__/src/hooks/useKeysDepricated/useKeysDepricated.d.ts +0 -1
  766. package/__internal__/src/hooks/useKeysRef/index.d.ts +0 -1
  767. package/__internal__/src/hooks/useKeysRef/useKeysRef.d.ts +0 -14
  768. package/__internal__/src/hooks/useMouseLeave/index.d.ts +0 -1
  769. package/__internal__/src/hooks/useMouseLeave/useMouseLeave.d.ts +0 -9
  770. package/__internal__/src/hooks/useMutableRef/index.d.ts +0 -1
  771. package/__internal__/src/hooks/useMutableRef/useMutableRef.d.ts +0 -1
  772. package/__internal__/src/hooks/useOverflow/index.d.ts +0 -1
  773. package/__internal__/src/hooks/useOverflow/useOverflow.d.ts +0 -7
  774. package/__internal__/src/hooks/usePrevious/index.d.ts +0 -1
  775. package/__internal__/src/hooks/usePrevious/usePrevious.d.ts +0 -1
  776. package/__internal__/src/hooks/useRefs/index.d.ts +0 -1
  777. package/__internal__/src/hooks/useRefs/useRefs.d.ts +0 -3
  778. package/__internal__/src/hooks/useResizableContent/helpers.d.ts +0 -11
  779. package/__internal__/src/hooks/useResizableContent/index.d.ts +0 -1
  780. package/__internal__/src/hooks/useResizableContent/types.d.ts +0 -27
  781. package/__internal__/src/hooks/useResizableContent/useResizableContent.d.ts +0 -2
  782. package/__internal__/src/hooks/useResizeObserved/getElementHeight.d.ts +0 -1
  783. package/__internal__/src/hooks/useResizeObserved/getElementSize.d.ts +0 -5
  784. package/__internal__/src/hooks/useResizeObserved/getElementWidth.d.ts +0 -1
  785. package/__internal__/src/hooks/useResizeObserved/index.d.ts +0 -4
  786. package/__internal__/src/hooks/useResizeObserved/useResizeObserved.d.ts +0 -2
  787. package/__internal__/src/hooks/useScrollElements/index.d.ts +0 -1
  788. package/__internal__/src/hooks/useScrollElements/useScrollElements.d.ts +0 -7
  789. package/__internal__/src/hooks/useScrollPosition/index.d.ts +0 -1
  790. package/__internal__/src/hooks/useScrollPosition/useScrollPosition.d.ts +0 -5
  791. package/__internal__/src/hooks/useSelect/helpers.d.ts +0 -14
  792. package/__internal__/src/hooks/useSelect/index.d.ts +0 -1
  793. package/__internal__/src/hooks/useSelect/useSelect.d.ts +0 -80
  794. package/__internal__/src/hooks/useSortSteps/index.d.ts +0 -1
  795. package/__internal__/src/hooks/useSortSteps/useSortSteps.d.ts +0 -7
  796. package/__internal__/src/hooks/useStyleProps/getStyleProps.d.ts +0 -2
  797. package/__internal__/src/hooks/useStyleProps/helpers.d.ts +0 -2
  798. package/__internal__/src/hooks/useStyleProps/index.d.ts +0 -2
  799. package/__internal__/src/hooks/useStyleProps/types.d.ts +0 -1
  800. package/__internal__/src/hooks/useStyleProps/useStyleProps.d.ts +0 -2
  801. package/__internal__/src/hooks/useThemeVars/helpers.d.ts +0 -12
  802. package/__internal__/src/hooks/useThemeVars/index.d.ts +0 -2
  803. package/__internal__/src/hooks/useThemeVars/useThemeVars.d.ts +0 -47
  804. package/__internal__/src/hooks/useTimer/index.d.ts +0 -1
  805. package/__internal__/src/hooks/useTimer/useTimer.d.ts +0 -20
  806. package/__internal__/src/hooks/useVirtualScroll/helpers.d.ts +0 -21
  807. package/__internal__/src/hooks/useVirtualScroll/index.d.ts +0 -1
  808. package/__internal__/src/hooks/useVirtualScroll/useVirtualScroll.d.ts +0 -2
  809. package/__internal__/src/mixs/MixCard/MixCard.d.ts +0 -17
  810. package/__internal__/src/mixs/MixCard/index.d.ts +0 -1
  811. package/__internal__/src/mixs/MixFlex/MixFlex.d.ts +0 -24
  812. package/__internal__/src/mixs/MixFlex/index.d.ts +0 -1
  813. package/__internal__/src/mixs/MixFocus/MixFocus.d.ts +0 -2
  814. package/__internal__/src/mixs/MixFocus/index.d.ts +0 -1
  815. package/__internal__/src/mixs/MixHitSlop/MixHitSlop.d.ts +0 -6
  816. package/__internal__/src/mixs/MixHitSlop/index.d.ts +0 -1
  817. package/__internal__/src/mixs/MixPopoverAnimate/MixPopoverAnimate.d.ts +0 -12
  818. package/__internal__/src/mixs/MixPopoverAnimate/index.d.ts +0 -1
  819. package/__internal__/src/mixs/MixPopoverArrow/MixPopoverArrow.d.ts +0 -8
  820. package/__internal__/src/mixs/MixPopoverArrow/index.d.ts +0 -1
  821. package/__internal__/src/mixs/MixScrollBar/MixScrollBar.d.ts +0 -15
  822. package/__internal__/src/mixs/MixScrollBar/index.d.ts +0 -1
  823. package/__internal__/src/mixs/MixSpace/MixSpace.d.ts +0 -5
  824. package/__internal__/src/mixs/MixSpace/index.d.ts +0 -2
  825. package/__internal__/src/mixs/MixSpace/types.d.ts +0 -17
  826. package/__internal__/src/mixs/MixVisuallyHidden/MixVisuallyHidden.d.ts +0 -2
  827. package/__internal__/src/mixs/MixVisuallyHidden/index.d.ts +0 -1
  828. package/__internal__/src/responsesImages/ResponsesImage/ResponsesImage.d.ts +0 -6
  829. package/__internal__/src/responsesImages/ResponsesImage/index.d.ts +0 -1
  830. package/__internal__/src/responsesImages/ResponsesImage403/ResponsesImage403.d.ts +0 -1
  831. package/__internal__/src/responsesImages/ResponsesImage403/ResponsesImage403Svg.d.ts +0 -3
  832. package/__internal__/src/responsesImages/ResponsesImage403/index.d.ts +0 -1
  833. package/__internal__/src/responsesImages/ResponsesImage404/ResponsesImage404.d.ts +0 -1
  834. package/__internal__/src/responsesImages/ResponsesImage404/ResponsesImage404Svg.d.ts +0 -3
  835. package/__internal__/src/responsesImages/ResponsesImage404/index.d.ts +0 -1
  836. package/__internal__/src/responsesImages/ResponsesImage500/ResponsesImage500.d.ts +0 -1
  837. package/__internal__/src/responsesImages/ResponsesImage500/ResponsesImage500Svg.d.ts +0 -3
  838. package/__internal__/src/responsesImages/ResponsesImage500/index.d.ts +0 -1
  839. package/__internal__/src/responsesImages/ResponsesImage503/ResponsesImage503.d.ts +0 -1
  840. package/__internal__/src/responsesImages/ResponsesImage503/ResponsesImage503Svg.d.ts +0 -3
  841. package/__internal__/src/responsesImages/ResponsesImage503/index.d.ts +0 -1
  842. package/__internal__/src/responsesImages/ResponsesImageConnectionError/ResponsesImageConnectionError.d.ts +0 -1
  843. package/__internal__/src/responsesImages/ResponsesImageConnectionError/ResponsesImageConnectionErrorSvg.d.ts +0 -3
  844. package/__internal__/src/responsesImages/ResponsesImageConnectionError/index.d.ts +0 -1
  845. package/__internal__/src/responsesImages/ResponsesImageDeleted/ResponsesImageDeleted.d.ts +0 -1
  846. package/__internal__/src/responsesImages/ResponsesImageDeleted/ResponsesImageDeletedSvg.d.ts +0 -3
  847. package/__internal__/src/responsesImages/ResponsesImageDeleted/index.d.ts +0 -1
  848. package/__internal__/src/responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBox.d.ts +0 -1
  849. package/__internal__/src/responsesImages/ResponsesImageEmptyBox/ResponsesImageEmptyBoxSvg.d.ts +0 -3
  850. package/__internal__/src/responsesImages/ResponsesImageEmptyBox/index.d.ts +0 -1
  851. package/__internal__/src/responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPockets.d.ts +0 -1
  852. package/__internal__/src/responsesImages/ResponsesImageEmptyPockets/ResponsesImageEmptyPocketsSvg.d.ts +0 -3
  853. package/__internal__/src/responsesImages/ResponsesImageEmptyPockets/index.d.ts +0 -1
  854. package/__internal__/src/responsesImages/ResponsesImageExit/ResponsesImageExit.d.ts +0 -1
  855. package/__internal__/src/responsesImages/ResponsesImageExit/ResponsesImageExitSvg.d.ts +0 -3
  856. package/__internal__/src/responsesImages/ResponsesImageExit/index.d.ts +0 -1
  857. package/__internal__/src/responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFound.d.ts +0 -1
  858. package/__internal__/src/responsesImages/ResponsesImageNothingFound/ResponsesImageNothingFoundSvg.d.ts +0 -3
  859. package/__internal__/src/responsesImages/ResponsesImageNothingFound/index.d.ts +0 -1
  860. package/__internal__/src/responsesImages/ResponsesImageSuccess/ResponsesImageSuccess.d.ts +0 -1
  861. package/__internal__/src/responsesImages/ResponsesImageSuccess/ResponsesImageSuccessSvg.d.ts +0 -3
  862. package/__internal__/src/responsesImages/ResponsesImageSuccess/index.d.ts +0 -1
  863. package/__internal__/src/responsesImages/createResponsesImage/createResponsesImage.d.ts +0 -8
  864. package/__internal__/src/responsesImages/createResponsesImage/index.d.ts +0 -1
  865. package/__internal__/src/stand/standConfig.d.ts +0 -1
  866. package/__internal__/src/stand/standPageDecoration.d.ts +0 -2
  867. package/__internal__/src/uiKit/cn.d.ts +0 -1
  868. package/__internal__/src/uiKit/components/ColorPreview/ColorPreview.d.ts +0 -14
  869. package/__internal__/src/uiKit/components/DocsDecorator/DocsDecorator.d.ts +0 -6
  870. package/__internal__/src/uiKit/components/DocsExample/DocsExample.d.ts +0 -2
  871. package/__internal__/src/uiKit/components/DocsExample/index.d.ts +0 -1
  872. package/__internal__/src/uiKit/components/Image/Image.d.ts +0 -7
  873. package/__internal__/src/uiKit/components/ThemePreview/ThemePreview.d.ts +0 -5
  874. package/__internal__/src/uiKit/components/ThemePreview/helpers.d.ts +0 -193
  875. package/__internal__/src/utils/array.d.ts +0 -6
  876. package/__internal__/src/utils/bem.d.ts +0 -4
  877. package/__internal__/src/utils/cnForCssTransition.d.ts +0 -13
  878. package/__internal__/src/utils/date/endOfCentury.d.ts +0 -1
  879. package/__internal__/src/utils/date/getCentury.d.ts +0 -1
  880. package/__internal__/src/utils/date/index.d.ts +0 -13
  881. package/__internal__/src/utils/date/isDateRange.d.ts +0 -2
  882. package/__internal__/src/utils/date/isDisableDate.d.ts +0 -8
  883. package/__internal__/src/utils/date/isEqualDate.d.ts +0 -1
  884. package/__internal__/src/utils/date/isInMinMaxDate.d.ts +0 -1
  885. package/__internal__/src/utils/date/isOnlyOneDateInRange.d.ts +0 -2
  886. package/__internal__/src/utils/date/startOfCentury.d.ts +0 -1
  887. package/__internal__/src/utils/fabricIndex.d.ts +0 -1
  888. package/__internal__/src/utils/generateMask.d.ts +0 -1
  889. package/__internal__/src/utils/getByMap.d.ts +0 -1
  890. package/__internal__/src/utils/getByMap.test.d.ts +0 -1
  891. package/__internal__/src/utils/getGroups.d.ts +0 -36
  892. package/__internal__/src/utils/isRenderProp.d.ts +0 -1
  893. package/__internal__/src/utils/object/index.d.ts +0 -4
  894. package/__internal__/src/utils/object/isEmpty.d.ts +0 -1
  895. package/__internal__/src/utils/object/isEq.d.ts +0 -1
  896. package/__internal__/src/utils/object/objectWithDefault.d.ts +0 -4
  897. package/__internal__/src/utils/object/pick.d.ts +0 -4
  898. package/__internal__/src/utils/scrollIntoView.d.ts +0 -1
  899. package/__internal__/src/utils/setRef.d.ts +0 -4
  900. package/__internal__/src/utils/stand.d.ts +0 -1
  901. package/__internal__/src/utils/state/index.d.ts +0 -3
  902. package/__internal__/src/utils/state/useCreateAtom/index.d.ts +0 -1
  903. package/__internal__/src/utils/state/useCreateAtom/useCreateAtom.d.ts +0 -2
  904. package/__internal__/src/utils/state/usePickAtom/index.d.ts +0 -1
  905. package/__internal__/src/utils/state/usePickAtom/usePickAtom.d.ts +0 -10
  906. package/__internal__/src/utils/state/useRefAtom/index.d.ts +0 -1
  907. package/__internal__/src/utils/state/useRefAtom/useRefAtom.d.ts +0 -2
  908. package/__internal__/src/utils/state/useSendToAtom/index.d.ts +0 -1
  909. package/__internal__/src/utils/state/useSendToAtom/useSendToAtom.d.ts +0 -1
  910. package/__internal__/src/utils/state/withCtx/index.d.ts +0 -1
  911. package/__internal__/src/utils/state/withCtx/withCtx.d.ts +0 -1
  912. package/__internal__/src/utils/type-guards.d.ts +0 -4
  913. package/__internal__/src/utils/types/AsTags.d.ts +0 -3
  914. package/__internal__/src/utils/types/AutoComplete.d.ts +0 -1
  915. package/__internal__/src/utils/types/Date.d.ts +0 -1
  916. package/__internal__/src/utils/types/KeyCode.d.ts +0 -644
  917. package/__internal__/src/utils/types/PropsWithAsAttributes.d.ts +0 -9
  918. package/__internal__/src/utils/types/PropsWithHTMLAttributes.d.ts +0 -2
  919. package/__internal__/src/utils/types/PropsWithJsxAttributes.d.ts +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"SelectSingle.js","names":["useAction","React","forwardRef","SelectDropdown","SelectItem","useForkRef","cnCanary","cn","useSendToAtom","withCtx","withDefault","SelectControlLayout","SelectInput","useSelect","cnSelectSingle","SelectSingleRender","props","ref","propsWithDefault","propsAtom","form","status","size","disabled","value","renderValue","isLoading","dropdownRefProp","dropdownForm","renderItem","getGroupLabel","labelForCreate","labelForEmptyItems","virtualScroll","onScrollToBottom","style","className","placeholder","view","iconClear","input","inputValue","inputDefaultValue","inputRefProp","ariaLabel","getGroupKey","getItemDisabled","getItemGroupKey","getItemKey","getItemLabel","items","onChangeProp","dropdownClassName","onFocus","onBlur","onCreateProp","onInput","multiple","groups","onDropdownOpen","ignoreOutsideClicksRefs","clearButton","selectAll","selectAllLabel","otherProps","renderValueDefault","ctx","get","renderItemDefault","item","active","hovered","onClick","onMouseEnter","console","log","getOptionActions","openAtom","visibleItemsAtom","focusAtom","handleInputFocus","handleInputBlur","handleToggleDropdown","inputRef","handleInputClick","handleInputChange","clearValue","optionsRefs","controlRef","dropdownRef","clearButtonAtom","highlightedIndexAtom","getItemKeyAtom","valueAtom","onChangeAll","highlightIndex","onCreate","onChange","inputValueAtom","hasItemsAtom","groupsCounterAtom","dropdownZIndexAtom","SelectSingle"],"sources":["../../../../../../src/components/SelectCanary/SelectSingle/SelectSingle.tsx"],"sourcesContent":["import { useAction } from '@reatom/npm-react';\nimport React, { forwardRef } from 'react';\n\nimport { SelectDropdown } from '##/components/SelectCanary/SelectDropdown';\nimport { SelectItem } from '##/components/SelectCanary/SelectItem';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnCanary as cn } from '##/utils/bem';\nimport { useSendToAtom } from '##/utils/state';\nimport { withCtx } from '##/utils/state/withCtx';\n\nimport {\n RenderItemProps,\n SelectComponent,\n SelectGroupDefault,\n SelectItemDefault,\n SelectPropRenderValue,\n SelectProps,\n} from '..';\nimport { withDefault } from '../defaultProps';\nimport { SelectControlLayout } from '../SelectControlLayout';\nimport { SelectInput } from '../SelectInput';\nimport { useSelect } from '../useSelect';\n\nconst cnSelectSingle = cn('SelectSelectSingleMultiple');\n\nconst SelectSingleRender = <\n ITEM = SelectItemDefault,\n GROUP = SelectGroupDefault,\n>(\n props: SelectProps<ITEM, GROUP, false>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const propsWithDefault = withDefault(props);\n\n const propsAtom = useSendToAtom(propsWithDefault);\n\n const {\n form,\n status,\n size,\n disabled,\n value,\n renderValue,\n isLoading,\n 'dropdownRef': dropdownRefProp,\n dropdownForm,\n renderItem,\n getGroupLabel,\n labelForCreate,\n labelForEmptyItems,\n virtualScroll,\n onScrollToBottom,\n style,\n className,\n placeholder,\n view,\n iconClear,\n input,\n inputValue,\n inputDefaultValue,\n 'inputRef': inputRefProp,\n 'aria-label': ariaLabel,\n\n // исключаем из otherProps\n getGroupKey,\n getItemDisabled,\n getItemGroupKey,\n getItemKey,\n getItemLabel,\n items,\n 'onChange': onChangeProp,\n dropdownClassName,\n onFocus,\n onBlur,\n 'onCreate': onCreateProp,\n onInput,\n multiple,\n groups,\n onDropdownOpen,\n ignoreOutsideClicksRefs,\n clearButton,\n selectAll,\n selectAllLabel,\n ...otherProps\n } = propsWithDefault;\n\n const renderValueDefault: SelectPropRenderValue<ITEM, false> = useAction(\n (ctx, { value }: { value: ITEM }) => ctx.get(propsAtom).getItemLabel(value),\n [],\n );\n\n const renderItemDefault = useAction(\n (\n ctx,\n {\n item,\n active,\n hovered,\n onClick,\n onMouseEnter,\n ref,\n }: RenderItemProps<ITEM>,\n ) => {\n const { getItemLabel, size, dropdownForm, getItemDisabled } =\n ctx.get(propsAtom);\n\n console.log(getItemDisabled, size, getItemLabel);\n\n return (\n <SelectItem\n label={getItemLabel(item)}\n active={active}\n hovered={hovered}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disabled={getItemDisabled(item)}\n ref={ref}\n />\n );\n },\n [],\n );\n\n const {\n getOptionActions,\n openAtom,\n visibleItemsAtom,\n focusAtom,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n inputRef,\n handleInputClick,\n handleInputChange,\n clearValue,\n optionsRefs,\n controlRef,\n dropdownRef,\n clearButtonAtom,\n highlightedIndexAtom,\n getItemKeyAtom,\n valueAtom,\n onChangeAll,\n highlightIndex,\n onCreate,\n onChange,\n inputValueAtom,\n hasItemsAtom,\n groupsCounterAtom,\n dropdownZIndexAtom,\n } = useSelect<ITEM, GROUP, false>({\n propsAtom,\n });\n\n return (\n <>\n <SelectControlLayout\n {...otherProps}\n style={style}\n className={cnSelectSingle(null, [className])}\n form={form}\n status={status}\n size={size}\n disabled={disabled}\n separator\n onClear={clearValue}\n onDropdownButton={handleToggleDropdown}\n openAtom={openAtom}\n focusAtom={focusAtom}\n view={view}\n iconClear={iconClear}\n clearButtonAtom={clearButtonAtom}\n ref={useForkRef([ref, controlRef])}\n >\n <SelectInput\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n ref={useForkRef([inputRef, inputRefProp])}\n onClick={handleInputClick}\n onChange={input ? handleInputChange : undefined}\n value={input ? inputValue : undefined}\n defaultValue={input ? inputDefaultValue : undefined}\n readOnly={input ? undefined : true}\n disabled={disabled}\n placeholder={placeholder}\n aria-label={ariaLabel}\n >\n {value && (renderValue || renderValueDefault)({ value })}\n </SelectInput>\n </SelectControlLayout>\n <SelectDropdown\n valueAtom={valueAtom}\n getItemKeyAtom={getItemKeyAtom}\n openAtom={openAtom}\n size={size}\n controlRef={controlRef}\n getOptionActions={getOptionActions}\n dropdownRef={useForkRef([dropdownRef, dropdownRefProp])}\n form={dropdownForm}\n className={dropdownClassName}\n renderItem={renderItem || renderItemDefault}\n getGroupLabel={getGroupLabel}\n visibleItemsAtom={visibleItemsAtom}\n labelForCreate={labelForCreate}\n isLoading={isLoading}\n labelForEmptyItems={labelForEmptyItems}\n itemsRefs={optionsRefs}\n virtualScroll={virtualScroll}\n onScrollToBottom={onScrollToBottom}\n highlightedIndexAtom={highlightedIndexAtom}\n highlightIndex={highlightIndex}\n onChangeAll={onChangeAll}\n onCreate={onCreate}\n onChange={onChange}\n inputValueAtom={inputValueAtom}\n hasItemsAtom={hasItemsAtom}\n groupsCounterAtom={groupsCounterAtom}\n dropdownZIndexAtom={dropdownZIndexAtom}\n selectAllLabel={selectAllLabel}\n />\n </>\n );\n};\n\nexport const SelectSingle = withCtx(\n forwardRef(SelectSingleRender),\n) as SelectComponent;\n"],"mappings":"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"}
1
+ {"version":3,"file":"SelectSingle.js","names":["useAction","React","forwardRef","SelectDropdown","SelectItem","useForkRef","cnCanary","cn","useSendToAtom","withCtx","withDefault","SelectControlLayout","SelectInput","useSelect","cnSelectSingle","SelectSingleRender","props","ref","propsWithDefault","propsAtom","form","status","size","disabled","value","renderValue","isLoading","dropdownRefProp","dropdownForm","renderItem","getGroupLabel","labelForCreate","labelForEmptyItems","virtualScroll","onScrollToBottom","style","className","placeholder","view","iconClear","input","inputValue","inputDefaultValue","inputRefProp","ariaLabel","getGroupKey","getItemDisabled","getItemGroupKey","getItemKey","getItemLabel","items","onChangeProp","dropdownClassName","onFocus","onBlur","onCreateProp","onInput","multiple","groups","onDropdownOpen","ignoreOutsideClicksRefs","clearButton","selectAll","selectAllLabel","otherProps","renderValueDefault","ctx","get","renderItemDefault","item","active","hovered","onClick","onMouseEnter","getOptionActions","openAtom","visibleItemsAtom","focusAtom","handleInputFocus","handleInputBlur","handleToggleDropdown","inputRef","handleInputClick","handleInputChange","clearValue","optionsRefs","controlRef","dropdownRef","clearButtonAtom","highlightedIndexAtom","getItemKeyAtom","valueAtom","onChangeAll","highlightIndex","onCreate","onChange","inputValueAtom","hasItemsAtom","groupsCounterAtom","dropdownZIndexAtom","SelectSingle"],"sources":["../../../../../../src/components/SelectCanary/SelectSingle/SelectSingle.tsx"],"sourcesContent":["import { useAction } from '@reatom/npm-react';\nimport React, { forwardRef } from 'react';\n\nimport { SelectDropdown } from '##/components/SelectCanary/SelectDropdown';\nimport { SelectItem } from '##/components/SelectCanary/SelectItem';\nimport { useForkRef } from '##/hooks/useForkRef';\nimport { cnCanary as cn } from '##/utils/bem';\nimport { useSendToAtom } from '##/utils/state';\nimport { withCtx } from '##/utils/state/withCtx';\n\nimport {\n RenderItemProps,\n SelectComponent,\n SelectGroupDefault,\n SelectItemDefault,\n SelectPropRenderValue,\n SelectProps,\n} from '..';\nimport { withDefault } from '../defaultProps';\nimport { SelectControlLayout } from '../SelectControlLayout';\nimport { SelectInput } from '../SelectInput';\nimport { useSelect } from '../useSelect';\n\nconst cnSelectSingle = cn('SelectSelectSingleMultiple');\n\nconst SelectSingleRender = <\n ITEM = SelectItemDefault,\n GROUP = SelectGroupDefault,\n>(\n props: SelectProps<ITEM, GROUP, false>,\n ref: React.Ref<HTMLDivElement>,\n) => {\n const propsWithDefault = withDefault(props);\n\n const propsAtom = useSendToAtom(propsWithDefault);\n\n const {\n form,\n status,\n size,\n disabled,\n value,\n renderValue,\n isLoading,\n 'dropdownRef': dropdownRefProp,\n dropdownForm,\n renderItem,\n getGroupLabel,\n labelForCreate,\n labelForEmptyItems,\n virtualScroll,\n onScrollToBottom,\n style,\n className,\n placeholder,\n view,\n iconClear,\n input,\n inputValue,\n inputDefaultValue,\n 'inputRef': inputRefProp,\n 'aria-label': ariaLabel,\n\n // исключаем из otherProps\n getGroupKey,\n getItemDisabled,\n getItemGroupKey,\n getItemKey,\n getItemLabel,\n items,\n 'onChange': onChangeProp,\n dropdownClassName,\n onFocus,\n onBlur,\n 'onCreate': onCreateProp,\n onInput,\n multiple,\n groups,\n onDropdownOpen,\n ignoreOutsideClicksRefs,\n clearButton,\n selectAll,\n selectAllLabel,\n ...otherProps\n } = propsWithDefault;\n\n const renderValueDefault: SelectPropRenderValue<ITEM, false> = useAction(\n (ctx, { value }: { value: ITEM }) => ctx.get(propsAtom).getItemLabel(value),\n [],\n );\n\n const renderItemDefault = useAction(\n (\n ctx,\n {\n item,\n active,\n hovered,\n onClick,\n onMouseEnter,\n ref,\n }: RenderItemProps<ITEM>,\n ) => {\n const { getItemLabel, size, dropdownForm, getItemDisabled } =\n ctx.get(propsAtom);\n\n return (\n <SelectItem\n label={getItemLabel(item)}\n active={active}\n hovered={hovered}\n size={size}\n indent={dropdownForm === 'round' ? 'increased' : 'normal'}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n disabled={getItemDisabled(item)}\n ref={ref}\n />\n );\n },\n [],\n );\n\n const {\n getOptionActions,\n openAtom,\n visibleItemsAtom,\n focusAtom,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n inputRef,\n handleInputClick,\n handleInputChange,\n clearValue,\n optionsRefs,\n controlRef,\n dropdownRef,\n clearButtonAtom,\n highlightedIndexAtom,\n getItemKeyAtom,\n valueAtom,\n onChangeAll,\n highlightIndex,\n onCreate,\n onChange,\n inputValueAtom,\n hasItemsAtom,\n groupsCounterAtom,\n dropdownZIndexAtom,\n } = useSelect<ITEM, GROUP, false>({\n propsAtom,\n });\n\n return (\n <>\n <SelectControlLayout\n {...otherProps}\n style={style}\n className={cnSelectSingle(null, [className])}\n form={form}\n status={status}\n size={size}\n disabled={disabled}\n separator\n onClear={clearValue}\n onDropdownButton={handleToggleDropdown}\n openAtom={openAtom}\n focusAtom={focusAtom}\n view={view}\n iconClear={iconClear}\n clearButtonAtom={clearButtonAtom}\n ref={useForkRef([ref, controlRef])}\n >\n <SelectInput\n onFocus={handleInputFocus}\n onBlur={handleInputBlur}\n ref={useForkRef([inputRef, inputRefProp])}\n onClick={handleInputClick}\n onChange={input ? handleInputChange : undefined}\n value={input ? inputValue : undefined}\n defaultValue={input ? inputDefaultValue : undefined}\n readOnly={input ? undefined : true}\n disabled={disabled}\n placeholder={placeholder}\n aria-label={ariaLabel}\n >\n {value && (renderValue || renderValueDefault)({ value })}\n </SelectInput>\n </SelectControlLayout>\n <SelectDropdown\n valueAtom={valueAtom}\n getItemKeyAtom={getItemKeyAtom}\n openAtom={openAtom}\n size={size}\n controlRef={controlRef}\n getOptionActions={getOptionActions}\n dropdownRef={useForkRef([dropdownRef, dropdownRefProp])}\n form={dropdownForm}\n className={dropdownClassName}\n renderItem={renderItem || renderItemDefault}\n getGroupLabel={getGroupLabel}\n visibleItemsAtom={visibleItemsAtom}\n labelForCreate={labelForCreate}\n isLoading={isLoading}\n labelForEmptyItems={labelForEmptyItems}\n itemsRefs={optionsRefs}\n virtualScroll={virtualScroll}\n onScrollToBottom={onScrollToBottom}\n highlightedIndexAtom={highlightedIndexAtom}\n highlightIndex={highlightIndex}\n onChangeAll={onChangeAll}\n onCreate={onCreate}\n onChange={onChange}\n inputValueAtom={inputValueAtom}\n hasItemsAtom={hasItemsAtom}\n groupsCounterAtom={groupsCounterAtom}\n dropdownZIndexAtom={dropdownZIndexAtom}\n selectAllLabel={selectAllLabel}\n />\n </>\n );\n};\n\nexport const SelectSingle = withCtx(\n forwardRef(SelectSingleRender),\n) as SelectComponent;\n"],"mappings":"yqBAAA,OAASA,SAAT,KAA0B,mBAA1B,CACA,MAAOC,MAAP,EAAgBC,UAAhB,KAAkC,OAAlC,CAEA,OAASC,cAAT,yBACA,OAASC,UAAT,qBACA,OAASC,UAAT,iCACA,OAASC,QAAQ,GAAIC,GAArB,0BACA,OAASC,aAAT,4BACA,OAASC,OAAT,oCAUA,OAASC,WAAT,uBACA,OAASC,mBAAT,8BACA,OAASC,WAAT,sBACA,OAASC,SAAT,oB,GAEMC,eAAc,CAAGP,EAAE,CAAC,4BAAD,C,CAEnBQ,kBAAkB,CAAG,SAIzBC,CAJyB,CAKzBC,CALyB,CAMtB,IACGC,EAAgB,CAAGR,WAAW,CAACM,CAAD,CADjC,CAGGG,CAAS,CAAGX,aAAa,CAACU,CAAD,CAH5B,CAMDE,CANC,CAqDCF,CArDD,CAMDE,IANC,CAODC,CAPC,CAqDCH,CArDD,CAODG,MAPC,CAQDC,CARC,CAqDCJ,CArDD,CAQDI,IARC,CASDC,CATC,CAqDCL,CArDD,CASDK,QATC,CAUDC,CAVC,CAqDCN,CArDD,CAUDM,KAVC,CAWDC,CAXC,CAqDCP,CArDD,CAWDO,WAXC,CAYDC,CAZC,CAqDCR,CArDD,CAYDQ,SAZC,CAacC,CAbd,CAqDCT,CArDD,aAcDU,CAdC,CAqDCV,CArDD,CAcDU,YAdC,CAeDC,CAfC,CAqDCX,CArDD,CAeDW,UAfC,CAgBDC,CAhBC,CAqDCZ,CArDD,CAgBDY,aAhBC,CAiBDC,CAjBC,CAqDCb,CArDD,CAiBDa,cAjBC,CAkBDC,CAlBC,CAqDCd,CArDD,CAkBDc,kBAlBC,CAmBDC,CAnBC,CAqDCf,CArDD,CAmBDe,aAnBC,CAoBDC,CApBC,CAqDChB,CArDD,CAoBDgB,gBApBC,CAqBDC,CArBC,CAqDCjB,CArDD,CAqBDiB,KArBC,CAsBDC,CAtBC,CAqDClB,CArDD,CAsBDkB,SAtBC,CAuBDC,CAvBC,CAqDCnB,CArDD,CAuBDmB,WAvBC,CAwBDC,CAxBC,CAqDCpB,CArDD,CAwBDoB,IAxBC,CAyBDC,CAzBC,CAqDCrB,CArDD,CAyBDqB,SAzBC,CA0BDC,CA1BC,CAqDCtB,CArDD,CA0BDsB,KA1BC,CA2BDC,CA3BC,CAqDCvB,CArDD,CA2BDuB,UA3BC,CA4BDC,CA5BC,CAqDCxB,CArDD,CA4BDwB,iBA5BC,CA6BWC,CA7BX,CAqDCzB,CArDD,UA8Ba0B,CA9Bb,CAqDC1B,CArDD,CA8BD,YA9BC,EAiCD2B,CAjCC,CAqDC3B,CArDD,CAiCD2B,WAjCC,CAkCDC,CAlCC,CAqDC5B,CArDD,CAkCD4B,eAlCC,CAmCDC,CAnCC,CAqDC7B,CArDD,CAmCD6B,eAnCC,CAoCDC,CApCC,CAqDC9B,CArDD,CAoCD8B,UApCC,CAqCDC,CArCC,CAqDC/B,CArDD,CAqCD+B,YArCC,CAsCDC,CAtCC,CAqDChC,CArDD,CAsCDgC,KAtCC,CAuCWC,CAvCX,CAqDCjC,CArDD,UAwCDkC,CAxCC,CAqDClC,CArDD,CAwCDkC,iBAxCC,CAyCDC,CAzCC,CAqDCnC,CArDD,CAyCDmC,OAzCC,CA0CDC,CA1CC,CAqDCpC,CArDD,CA0CDoC,MA1CC,CA2CWC,CA3CX,CAqDCrC,CArDD,UA4CDsC,CA5CC,CAqDCtC,CArDD,CA4CDsC,OA5CC,CA6CDC,CA7CC,CAqDCvC,CArDD,CA6CDuC,QA7CC,CA8CDC,CA9CC,CAqDCxC,CArDD,CA8CDwC,MA9CC,CA+CDC,CA/CC,CAqDCzC,CArDD,CA+CDyC,cA/CC,CAgDDC,CAhDC,CAqDC1C,CArDD,CAgDD0C,uBAhDC,CAiDDC,CAjDC,CAqDC3C,CArDD,CAiDD2C,WAjDC,CAkDDC,CAlDC,CAqDC5C,CArDD,CAkDD4C,SAlDC,CAmDDC,CAnDC,CAqDC7C,CArDD,CAmDD6C,cAnDC,CAoDEC,CApDF,0BAqDC9C,CArDD,YAuDG+C,CAAsD,CAAGjE,SAAS,CACtE,SAACkE,CAAD,OAAQ1C,EAAR,GAAQA,KAAR,OAAqC0C,EAAG,CAACC,GAAJ,CAAQhD,CAAR,EAAmB8B,YAAnB,CAAgCzB,CAAhC,CAArC,CADsE,CAEtE,EAFsE,CAvDrE,CA4DG4C,CAAiB,CAAGpE,SAAS,CACjC,SACEkE,CADF,GAUK,IAPDG,EAOC,GAPDA,IAOC,CANDC,CAMC,GANDA,MAMC,CALDC,CAKC,GALDA,OAKC,CAJDC,CAIC,GAJDA,OAIC,CAHDC,CAGC,GAHDA,YAGC,CAFDxD,CAEC,GAFDA,GAEC,GAEDiD,CAAG,CAACC,GAAJ,CAAQhD,CAAR,CAFC,CACK8B,CADL,GACKA,YADL,CACmB3B,CADnB,GACmBA,IADnB,CACyBM,CADzB,GACyBA,YADzB,CACuCkB,CADvC,GACuCA,eADvC,CAIH,MACE,qBAAC,UAAD,EACE,KAAK,CAAEG,CAAY,CAACoB,CAAD,CADrB,CAEE,MAAM,CAAEC,CAFV,CAGE,OAAO,CAAEC,CAHX,CAIE,IAAI,CAAEjD,CAJR,CAKE,MAAM,CAAmB,OAAjB,GAAAM,CAAY,CAAe,WAAf,CAA6B,QALnD,CAME,OAAO,CAAE4C,CANX,CAOE,YAAY,CAAEC,CAPhB,CAQE,QAAQ,CAAE3B,CAAe,CAACuB,CAAD,CAR3B,CASE,GAAG,CAAEpD,CATP,EAYH,CA5BgC,CA6BjC,EA7BiC,CA5DhC,GAuHCJ,SAAS,CAAqB,CAChCM,SAAS,CAATA,CADgC,CAArB,CAvHV,CA6FDuD,CA7FC,GA6FDA,gBA7FC,CA8FDC,CA9FC,GA8FDA,QA9FC,CA+FDC,EA/FC,GA+FDA,gBA/FC,CAgGDC,EAhGC,GAgGDA,SAhGC,CAiGDC,EAjGC,GAiGDA,gBAjGC,CAkGDC,EAlGC,GAkGDA,eAlGC,CAmGDC,EAnGC,GAmGDA,oBAnGC,CAoGDC,EApGC,GAoGDA,QApGC,CAqGDC,EArGC,GAqGDA,gBArGC,CAsGDC,EAtGC,GAsGDA,iBAtGC,CAuGDC,EAvGC,GAuGDA,UAvGC,CAwGDC,EAxGC,GAwGDA,WAxGC,CAyGDC,EAzGC,GAyGDA,UAzGC,CA0GDC,EA1GC,GA0GDA,WA1GC,CA2GDC,EA3GC,GA2GDA,eA3GC,CA4GDC,EA5GC,GA4GDA,oBA5GC,CA6GDC,EA7GC,GA6GDA,cA7GC,CA8GDC,EA9GC,GA8GDA,SA9GC,CA+GDC,EA/GC,GA+GDA,WA/GC,CAgHDC,EAhHC,GAgHDA,cAhHC,CAiHDC,EAjHC,GAiHDA,QAjHC,CAkHDC,EAlHC,GAkHDA,QAlHC,CAmHDC,EAnHC,GAmHDA,cAnHC,CAoHDC,EApHC,GAoHDA,YApHC,CAqHDC,EArHC,GAqHDA,iBArHC,CAsHDC,EAtHC,GAsHDA,kBAtHC,CA2HH,MACE,yCACE,oBAAC,mBAAD,kBACMnC,CADN,EAEE,KAAK,CAAE7B,CAFT,CAGE,SAAS,CAAErB,cAAc,CAAC,IAAD,CAAO,CAACsB,CAAD,CAAP,CAH3B,CAIE,IAAI,CAAEhB,CAJR,CAKE,MAAM,CAAEC,CALV,CAME,IAAI,CAAEC,CANR,CAOE,QAAQ,CAAEC,CAPZ,CAQE,SAAS,GARX,CASE,OAAO,CAAE6D,EATX,CAUE,gBAAgB,CAAEJ,EAVpB,CAWE,QAAQ,CAAEL,CAXZ,CAYE,SAAS,CAAEE,EAZb,CAaE,IAAI,CAAEvC,CAbR,CAcE,SAAS,CAAEC,CAdb,CAeE,eAAe,CAAEiD,EAfnB,CAgBE,GAAG,CAAEnF,UAAU,CAAC,CAACY,CAAD,CAAMqE,EAAN,CAAD,CAhBjB,GAkBE,oBAAC,WAAD,EACE,OAAO,CAAER,EADX,CAEE,MAAM,CAAEC,EAFV,CAGE,GAAG,CAAE1E,UAAU,CAAC,CAAC4E,EAAD,CAAWtC,CAAX,CAAD,CAHjB,CAIE,OAAO,CAAEuC,EAJX,CAKE,QAAQ,CAAE1C,CAAK,CAAG2C,EAAH,OALjB,CAME,KAAK,CAAE3C,CAAK,CAAGC,CAAH,OANd,CAOE,YAAY,CAAED,CAAK,CAAGE,CAAH,OAPrB,CAQE,QAAQ,EAAEF,CAAF,QARV,CASE,QAAQ,CAAEjB,CATZ,CAUE,WAAW,CAAEc,CAVf,CAWE,aAAYO,CAXd,EAaGpB,CAAK,EAAI,CAACC,CAAW,EAAIwC,CAAhB,EAAoC,CAAEzC,KAAK,CAALA,CAAF,CAApC,CAbZ,CAlBF,CADF,CAmCE,oBAAC,cAAD,EACE,SAAS,CAAEmE,EADb,CAEE,cAAc,CAAED,EAFlB,CAGE,QAAQ,CAAEf,CAHZ,CAIE,IAAI,CAAErD,CAJR,CAKE,UAAU,CAAEgE,EALd,CAME,gBAAgB,CAAEZ,CANpB,CAOE,WAAW,CAAErE,UAAU,CAAC,CAACkF,EAAD,CAAc5D,CAAd,CAAD,CAPzB,CAQE,IAAI,CAAEC,CARR,CASE,SAAS,CAAEwB,CATb,CAUE,UAAU,CAAEvB,CAAU,EAAIuC,CAV5B,CAWE,aAAa,CAAEtC,CAXjB,CAYE,gBAAgB,CAAE8C,EAZpB,CAaE,cAAc,CAAE7C,CAblB,CAcE,SAAS,CAAEL,CAdb,CAeE,kBAAkB,CAAEM,CAftB,CAgBE,SAAS,CAAEqD,EAhBb,CAiBE,aAAa,CAAEpD,CAjBjB,CAkBE,gBAAgB,CAAEC,CAlBpB,CAmBE,oBAAoB,CAAEuD,EAnBxB,CAoBE,cAAc,CAAEI,EApBlB,CAqBE,WAAW,CAAED,EArBf,CAsBE,QAAQ,CAAEE,EAtBZ,CAuBE,QAAQ,CAAEC,EAvBZ,CAwBE,cAAc,CAAEC,EAxBlB,CAyBE,YAAY,CAAEC,EAzBhB,CA0BE,iBAAiB,CAAEC,EA1BrB,CA2BE,kBAAkB,CAAEC,EA3BtB,CA4BE,cAAc,CAAEpC,CA5BlB,EAnCF,CAmEH,C,CAED,MAAO,IAAMqC,aAAY,CAAG3F,OAAO,CACjCP,UAAU,CAACa,kBAAD,CADuB,CAA5B"}
@@ -1,2 +1,2 @@
1
- import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){throw a}),f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){h=!0,f=a}),f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useAction,useAtom,useUpdate}from"@reatom/npm-react";import{useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useKeysRef}from"../../../hooks/useKeysRef";import{useRefs}from"../../../hooks/useRefs";import{getGroups}from"../../../utils/getGroups";import{useCreateAtom}from"../../../utils/state/useCreateAtom";import{usePickAtom,usePropAtom}from"../../../utils/state/usePickAtom";import{scrollToIndex}from"./helpers";var isMultipleParams=function(a){return!!a.multiple};export var isOptionForCreate=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isNotOptionForCreate=function(a){return a&&!Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isOptionForSelectAll=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionSelectAll")};export function getCountedGroups(a,b){var c=_toConsumableArray(a);return b&&a.forEach(function(a,b){c[b].items=[{__optionSelectAll:!0,groupKey:a.key}].concat(_toConsumableArray(c[b].items))}),c}export var useSelect=function(a){var b=a.propsAtom,c=useRef(null),d=useRef(null),e=useRef(null),f=usePropAtom(b,"items"),g=usePropAtom(b,"selectAll"),h=usePropAtom(b,"value"),i=usePropAtom(b,"disabled"),j=usePropAtom(b,"inputValue"),k=usePropAtom(b,"dropdownOpen"),l=useCreateAtom(function(a){var c,d=null===(c=a.spy(b).style)||void 0===c?void 0:c.zIndex;return"number"==typeof d?d+1:void 0}),m=usePropAtom(b,"ignoreOutsideClicksRefs"),n=usePropAtom(b,"onCreate"),o=usePropAtom(b,"getItemKey"),p=useAtom(m),q=_slicedToArray(p,1),r=q[0],s=useCreateAtom(function(a){var b=a.spy(h);return b&&(Array.isArray(b)?b:[b])||[]}),t=useCreateAtom(!1),u=useCreateAtom(!1),v=useCreateAtom(0),w=useCreateAtom(""),x=useCreateAtom(function(a){var c=a.spy(b),d=c.clearButton,e=a.spy(w),f=a.spy(s);return!!(d&&(null!==f&&void 0!==f&&f.length||e))}),y=useAction(function(a){var d,e,f=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"";null===(d=(e=a.get(b)).onInput)||void 0===d?void 0:d.call(e,f),w(a,f),c.current&&(c.current.value=f)}),z=useCreateAtom(function(a){var b=a.spy(n);if(b){var c=a.spy(w);return{label:c,__optionForCreate:!0}}}),A=usePickAtom(b,["selectAll","groups","getItemGroupKey","getGroupKey","getItemDisabled","getItemKey","items"]),B=useCreateAtom(function(a){var b=a.spy(A),c=b.selectAll,d=b.groups,e=b.getItemGroupKey,f=b.getGroupKey,g=b.items,h=a.spy(z),i=getCountedGroups(getGroups(g,null!==d&&void 0!==d&&d.length?e:void 0,d,f,void 0),!!c);return h?[h].concat(_toConsumableArray(i)):i}),C=useCreateAtom(function(a){var b=a.spy(B),c=a.spy(g),d=a.spy(s),e=a.get(A),f=e.getItemDisabled,h={};return c&&function getSelectedCounter(){var a,c=_createForOfIteratorHelper(b);try{for(c.s();!(a=c.n()).done;){var j=a.value;if(!isOptionForCreate(j)){h[j.key]=[0,j.items.length-1];var e,g=_createForOfIteratorHelper(j.items);try{var i=function(){var a=e.value;isOptionForSelectAll(a)||f(a)||!d.some(function(b){return b===a})||(h[j.key][0]=(h[j.key][0]||0)+1)};for(g.s();!(e=g.n()).done;)i()}catch(a){g.e(a)}finally{g.f()}}}}catch(a){c.e(a)}finally{c.f()}}(),h}),D=useAtom(function(a){var b=a.spy(f),c=a.spy(z),d=a.spy(g),e=a.spy(B);return b.length+(c?1:0)+(d?e.length:0)}),E=_slicedToArray(D,3),F=E[0],G=E[1],H=E[2],I=useCreateAtom(function(a){var b=a.spy(f),c=a.spy(z);return!!c||!!b.length}),J=useRefs(F,void 0),K=useAction(function(a){var b=a.get(f),c=a.get(v),e=d.current;0<b.length&&e&&scrollToIndex(c,e,J)}),L=useAction(function(a,b){var c=a.get(H);v(a,function(a){var d=Math.min(Math.max(0,"function"==typeof b?b(a):b),c-1);return d})}),M=useAction(function(a,c,d){c.stopPropagation();var e=a.get(b);if(isMultipleParams(e)){var f=e.getItemDisabled,g=e.getItemKey,h=e.onChange,i=a.get(s).filter(function(a){return!!(null!==f&&void 0!==f&&f(a))||g(a)!==g(d)});h(null!==i&&void 0!==i&&i.length?i:null,{e:c})}}),N=useAction(function(a,c,d){var e=a.get(b),f=e.getItemDisabled,g=e.getItemKey,h=e.onChange,i=e.multiple,j=e.disabled;if(console.log("disabled",j),!(j||f&&f(d)))if(i){var k=a.get(s),l=k.some(function(a){return g(a)===g(d)})?k.filter(function(a){return g(a)!==g(d)}):[].concat(_toConsumableArray(k),[d]),m=null!==l&&void 0!==l&&l.length?l:null;h(m,{e:c})}else h(d,{e:c}),y(""),u(a,!1)}),O=useAction(function(a,c,d){var e=a.get(b),f=a.get(s),g=e.getItemDisabled,h=e.getItemKey,i=e.multiple,j=e.onChange;if(i){var k=g?d.filter(function(a){return!g(a)}):d,l=[],m=[];if(f.forEach(function(a){k.find(function(b){return h(a)===h(b)})?l.push(a):m.push(a)}),l.length===k.length)j(m,{e:c});else{var n=[].concat(m,_toConsumableArray(k));j(n,{e:c})}}}),P=useAction(function(a,c){var d=a.get(b),e=d.onCreate;null===e||void 0===e?void 0:e(a.get(w),{e:c}),u(a,!1),y("")}),Q=useAction(function(a,c){!a.get(i)&&a.get(b).input&&(null===y||void 0===y?void 0:y(c.target.value),u(a,!0))}),R=useAction(function(a){var b;a.get(i)||u(a,function(a){return!a}),null===(b=c.current)||void 0===b?void 0:b.focus()}),S=useAction(function(a,c){var d=a.get(b),e=d.getItemDisabled,f=d.multiple,g=d.onChange,h=d.disabled;if(console.log(""),!h){var i=a.get(s);if(f){var j=null===i||void 0===i?void 0:i.filter(function(a){return null===e||void 0===e?void 0:e(a)}),k=j&&0<j.length?j:null;g(k,{e:c})}else g(null,{e:c});y("")}}),T=useAction(function(a,b){return function(a){return M(a,b)}}),U=useAction(function(a,b){b.preventDefault(),a.get(i)||(u(a,!0),L(function(a){return a-1}),K())}),V=useAction(function(a,b){b.preventDefault(),a.get(i)||(u(a,!0),L(function(a){return a+1}),K())}),W=useAction(function(a,c){var d=a.get(b),e=d.items,f=a.get(v),g=a.get(w),h=a.get(B),i=a.get(u);if(i){(g||e[f])&&c.preventDefault();var j=function(a){var b,c=0,d=_createForOfIteratorHelper(h);try{for(d.s();!(b=d.n()).done;){var e=b.value;if(isOptionForCreate(e)){if(c===a)return[void 0,e];c++;continue}if(e.items.length+c>a)return[e,e.items[a-c]];c+=e.items.length}}catch(a){d.e(a)}finally{d.f()}return[void 0,void 0]},k=j(f),l=_slicedToArray(k,2),m=l[0],n=l[1];if(isOptionForCreate(n))return void P(c);if(isOptionForSelectAll(n)){var o;return void O(c,null!==(o=null===m||void 0===m?void 0:m.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==o?o:[])}n&&N(c,n)}else u(a,!0)}),X=useAction(function(a){return u(a,!1)}),Y=useAction(function(a,b){a.get(u)&&(b.preventDefault(),u(a,!1))}),Z=useAction(function(a,c){var d=a.get(w),e=a.get(b),f=e.multiple,g=e.clearButton,h=a.get(s);d||(f?M(c,h[h.length-1]):g&&(null===S||void 0===S?void 0:S(c)))}),$=useAtom({ArrowUp:U,ArrowDown:V,PageUp:U,PageDown:V,Home:U,End:V,Enter:W,Escape:X,Tab:Y,Backspace:Z}),_=_slicedToArray($,1),aa=_[0],ba=useAction(function(a,b){var c=b.index,d=b.item,e=a.get(B);if(isOptionForCreate(d))return{onClick:P,onMouseEnter:function onMouseEnter(){return L(c)}};if(isOptionForSelectAll(d)){var f=function(){var a,b=_createForOfIteratorHelper(e);try{for(b.s();!(a=b.n()).done;){var f=a.value;if(!isOptionForCreate(f)&&f.key===d.groupKey){var c;return null!==(c=null===f||void 0===f?void 0:f.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==c?c:[]}}}catch(a){b.e(a)}finally{b.f()}return[]};return{onClick:function onClick(a){return O(a,f())},onMouseEnter:function onMouseEnter(){return L(c)}}}return{onClick:function onClick(a){return N(a,d)},onMouseEnter:function onMouseEnter(){return L(c)}}}),ca=useAction(function(a,c){var d=a.get(b),e=d.disabled,f=d.onFocus,g=a.get(t);e||(!g&&t(a,!0),"function"==typeof f&&f(c))}),da=useAction(function(a,d){var e=a.get(b),f=e.onBlur;if(a.get(u)){var g;return void(null===(g=c.current)||void 0===g?void 0:g.focus())}a.get(t)&&t(a,!1),"function"==typeof f&&f(d)}),ea=useAction(function(a){var b=a.get(i);if(a.get(u))u(a,!1),t(a,!1);else if(!b){var d;u(a,!0),t(a,!0),null===(d=c.current)||void 0===d?void 0:d.focus()}});return useKeysRef({keys:aa,ref:c,isActive:useAction(function(a){return!a.get(i)})}),useClickOutside({isActive:useAction(function(a){return a.get(u)}),ignoreClicksInsideRefs:[d,e].concat(_toConsumableArray(r||[])),handler:useAction(function(a){return u(a,!1)})}),useUpdate(function(a,b){return b&&u(a,!1)},[i]),useUpdate(function(a){var c,d,e=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1];null===(c=(d=a.get(b)).onDropdownOpen)||void 0===c?void 0:c.call(d,e),L(0)},[u]),useUpdate(function(a){var b=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",c=a.get(w);b!==c&&y(b)},[j]),useUpdate(function(a){var b=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1];return u(a,b)},[k]),{openAtom:u,focusAtom:t,inputValueAtom:w,clearButtonAtom:x,onInput:y,getOptionActions:ba,handleInputBlur:da,handleToggleDropdown:ea,getHandleRemoveValue:T,inputRef:c,dropdownRef:d,controlRef:e,handleInputChange:Q,handleInputClick:R,handleInputFocus:ca,visibleItemsAtom:B,clearValue:S,optionsRefs:J,highlightedIndexAtom:v,valueAtom:s,getItemKeyAtom:o,onChangeAll:O,highlightIndex:L,onCreate:P,onChange:N,hasItemsAtom:I,groupsCounterAtom:C,dropdownZIndexAtom:l}};
1
+ import _slicedToArray from"@babel/runtime/helpers/slicedToArray";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){throw a}),f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){h=!0,f=a}),f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useAction,useAtom,useUpdate}from"@reatom/npm-react";import{useRef}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useDebounce}from"../../../hooks/useDebounce";import{useKeysRef}from"../../../hooks/useKeysRef";import{useRefs}from"../../../hooks/useRefs";import{getGroups}from"../../../utils/getGroups";import{useCreateAtom}from"../../../utils/state/useCreateAtom";import{usePickAtom,usePropAtom}from"../../../utils/state/usePickAtom";import{scrollToIndex}from"./helpers";var isMultipleParams=function(a){return!!a.multiple};export var isOptionForCreate=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isNotOptionForCreate=function(a){return a&&!Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isOptionForSelectAll=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionSelectAll")};export function getCountedGroups(a,b){var c=_toConsumableArray(a);return b&&a.forEach(function(a,b){c[b].items=[{__optionSelectAll:!0,groupKey:a.key}].concat(_toConsumableArray(c[b].items))}),c}export var useSelect=function(a){var b=a.propsAtom,c=useRef(null),d=useRef(null),e=useRef(null),f=usePropAtom(b,"items"),g=usePropAtom(b,"selectAll"),h=usePropAtom(b,"value"),i=usePropAtom(b,"disabled"),j=usePropAtom(b,"inputValue"),k=usePropAtom(b,"dropdownOpen"),l=useCreateAtom(function(a){var c,d=null===(c=a.spy(b).style)||void 0===c?void 0:c.zIndex;return"number"==typeof d?d+1:void 0}),m=usePropAtom(b,"ignoreOutsideClicksRefs"),n=usePropAtom(b,"onCreate"),o=usePropAtom(b,"getItemKey"),p=useAtom(m),q=_slicedToArray(p,1),r=q[0],s=useCreateAtom(function(a){var b=a.spy(h);return b&&(Array.isArray(b)?b:[b])||[]}),t=useCreateAtom(!1),u=useCreateAtom(!1),v=useCreateAtom(0),w=useCreateAtom(""),x=useCreateAtom(function(a){var c=a.spy(b),d=c.clearButton,e=a.spy(w),f=a.spy(s);return!!(d&&(null!==f&&void 0!==f&&f.length||e))}),y=useAction(function(a){var d,e,f=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"";null===(d=(e=a.get(b)).onInput)||void 0===d?void 0:d.call(e,f),w(a,f),c.current&&(c.current.value=f)}),z=useDebounce(useAction(function(){var a;null===(a=c.current)||void 0===a?void 0:a.focus()}),10),A=useCreateAtom(function(a){var b=a.spy(n);if(b){var c=a.spy(w);return{label:c,__optionForCreate:!0}}}),B=usePickAtom(b,["selectAll","groups","getItemGroupKey","getGroupKey","getItemDisabled","getItemKey","items"]),C=useCreateAtom(function(a){var b=a.spy(B),c=b.selectAll,d=b.groups,e=b.getItemGroupKey,f=b.getGroupKey,g=b.items,h=a.spy(A),i=getCountedGroups(getGroups(g,null!==d&&void 0!==d&&d.length?e:void 0,d,f,void 0),!!c);return h?[h].concat(_toConsumableArray(i)):i}),D=useCreateAtom(function(a){var b=a.spy(C),c=a.spy(g),d=a.spy(s),e=a.get(B),f=e.getItemDisabled,h={};return c&&function getSelectedCounter(){var a,c=_createForOfIteratorHelper(b);try{for(c.s();!(a=c.n()).done;){var j=a.value;if(!isOptionForCreate(j)){h[j.key]=[0,j.items.length-1];var e,g=_createForOfIteratorHelper(j.items);try{var i=function(){var a=e.value;isOptionForSelectAll(a)||f(a)||!d.some(function(b){return b===a})||(h[j.key][0]=(h[j.key][0]||0)+1)};for(g.s();!(e=g.n()).done;)i()}catch(a){g.e(a)}finally{g.f()}}}}catch(a){c.e(a)}finally{c.f()}}(),h}),E=useAtom(function(a){var b=a.spy(f),c=a.spy(A),d=a.spy(g),e=a.spy(C);return b.length+(c?1:0)+(d?e.length:0)}),F=_slicedToArray(E,3),G=F[0],H=F[1],I=F[2],J=useCreateAtom(function(a){var b=a.spy(f),c=a.spy(A);return!!c||!!b.length}),K=useRefs(G,void 0),L=useAction(function(a){var b=a.get(f),c=a.get(v),e=d.current;0<b.length&&e&&scrollToIndex(c,e,K)}),M=useAction(function(a,b){var c=a.get(I);v(a,function(a){var d=Math.min(Math.max(0,"function"==typeof b?b(a):b),c-1);return d})}),N=useAction(function(a,c,d){c.stopPropagation();var e=a.get(b);if(isMultipleParams(e)){var f=e.getItemDisabled,g=e.getItemKey,h=e.onChange,i=a.get(s).filter(function(a){return!!(null!==f&&void 0!==f&&f(a))||g(a)!==g(d)});h(null!==i&&void 0!==i&&i.length?i:null,{e:c})}}),O=useAction(function(a,c,d){var e=a.get(b),f=e.getItemDisabled,g=e.getItemKey,h=e.onChange,i=e.multiple,j=e.disabled;if(!(j||f&&f(d)))if(i){var k=a.get(s),l=k.some(function(a){return g(a)===g(d)})?k.filter(function(a){return g(a)!==g(d)}):[].concat(_toConsumableArray(k),[d]),m=null!==l&&void 0!==l&&l.length?l:null;h(m,{e:c})}else h(d,{e:c}),y(""),u(a,!1)}),P=useAction(function(a,c,d){var e=a.get(b),f=a.get(s),g=e.getItemDisabled,h=e.getItemKey,i=e.multiple,j=e.onChange;if(i){var k=g?d.filter(function(a){return!g(a)}):d,l=[],m=[];if(f.forEach(function(a){k.find(function(b){return h(a)===h(b)})?l.push(a):m.push(a)}),l.length===k.length)j(m,{e:c});else{var n=[].concat(m,_toConsumableArray(k));j(n,{e:c})}}}),Q=useAction(function(a,c){var d=a.get(b),e=d.onCreate;null===e||void 0===e?void 0:e(a.get(w),{e:c}),u(a,!1),y("")}),R=useAction(function(a,c){!a.get(i)&&a.get(b).input&&(null===y||void 0===y?void 0:y(c.target.value),u(a,!0))}),S=useAction(function(a){a.get(i)||u(a,function(a){return!a}),z()}),T=useAction(function(a,c){var d=a.get(b),e=d.getItemDisabled,f=d.multiple,g=d.onChange,h=d.disabled;if(!h){var i=a.get(s);if(f){var j=null===i||void 0===i?void 0:i.filter(function(a){return null===e||void 0===e?void 0:e(a)}),k=j&&0<j.length?j:null;g(k,{e:c})}else g(null,{e:c});y("")}}),U=useAction(function(a,b){return function(a){return N(a,b)}}),V=useAction(function(a,b){b.preventDefault(),b.stopPropagation(),a.get(i)||(u(a,!0),M(function(a){return a-1}),L())}),W=useAction(function(a,b){b.preventDefault(),b.stopPropagation(),a.get(i)||(u(a,!0),M(function(a){return a+1}),L())}),X=useAction(function(a,c){var d=a.get(b),e=d.items,f=a.get(v),g=a.get(w),h=a.get(C),i=a.get(u);if(i){(g||e[f])&&(c.preventDefault(),c.stopPropagation());var j=function(a){var b,c=0,d=_createForOfIteratorHelper(h);try{for(d.s();!(b=d.n()).done;){var e=b.value;if(isOptionForCreate(e)){if(c===a)return[void 0,e];c++;continue}if(e.items.length+c>a)return[e,e.items[a-c]];c+=e.items.length}}catch(a){d.e(a)}finally{d.f()}return[void 0,void 0]},k=j(f),l=_slicedToArray(k,2),m=l[0],n=l[1];if(isOptionForCreate(n))return void Q(c);if(isOptionForSelectAll(n)){var o;return void P(c,null!==(o=null===m||void 0===m?void 0:m.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==o?o:[])}n&&O(c,n)}else u(a,!0)}),Y=useAction(function(a,b){b.preventDefault(),b.stopPropagation(),u(a,!1)}),Z=useAction(function(a,b){a.get(u)&&(b.preventDefault(),b.stopPropagation(),u(a,!1))}),$=useAction(function(a,c){var d=a.get(w),e=a.get(b),f=e.multiple,g=e.clearButton,h=a.get(s);d||(f?N(c,h[h.length-1]):g&&(null===T||void 0===T?void 0:T(c)))}),_=useAtom({ArrowUp:V,ArrowDown:W,PageUp:V,PageDown:W,Home:V,End:W,Enter:X,Escape:Y,Tab:Z,Backspace:$}),aa=_slicedToArray(_,1),ba=aa[0],ca=useAction(function(a,b){var c=b.index,d=b.item,e=a.get(C);if(isOptionForCreate(d))return{onClick:Q,onMouseEnter:function onMouseEnter(){return M(c)}};if(isOptionForSelectAll(d)){var f=function(){var a,b=_createForOfIteratorHelper(e);try{for(b.s();!(a=b.n()).done;){var f=a.value;if(!isOptionForCreate(f)&&f.key===d.groupKey){var c;return null!==(c=null===f||void 0===f?void 0:f.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==c?c:[]}}}catch(a){b.e(a)}finally{b.f()}return[]};return{onClick:function onClick(a){return P(a,f())},onMouseEnter:function onMouseEnter(){return M(c)}}}return{onClick:function onClick(a){return O(a,d)},onMouseEnter:function onMouseEnter(){return M(c)}}}),da=useAction(function(a,c){var d=a.get(b),e=d.disabled,f=d.onFocus,g=a.get(t);e||(!g&&t(a,!0),"function"==typeof f&&f(c))}),ea=useAction(function(a,c){var d=a.get(b),e=d.onBlur;return a.get(u)?void z():void(a.get(t)&&t(a,!1),"function"==typeof e&&e(c))}),fa=useAction(function(a){var b=a.get(i);if(a.get(u))u(a,!1),t(a,!1);else if(!b){var d;u(a,!0),t(a,!0),null===(d=c.current)||void 0===d?void 0:d.focus()}});return useKeysRef({keys:ba,ref:c,isActive:useAction(function(a){return!a.get(i)})}),useClickOutside({isActive:!0,ignoreClicksInsideRefs:[d,e].concat(_toConsumableArray(r||[])),handler:useAction(function(a){u(a,!1),t(a,!1)})}),useUpdate(function(a,b){return b&&u(a,!1)},[i]),useUpdate(function(a){var c,d,e=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1];null===(c=(d=a.get(b)).onDropdownOpen)||void 0===c?void 0:c.call(d,e),M(0)},[u]),useUpdate(function(a){var b=1<arguments.length&&void 0!==arguments[1]?arguments[1]:"",c=a.get(w);b!==c&&y(b)},[j]),useUpdate(function(a){var b=!!(1<arguments.length&&void 0!==arguments[1])&&arguments[1];return u(a,b)},[k]),{openAtom:u,focusAtom:t,inputValueAtom:w,clearButtonAtom:x,onInput:y,getOptionActions:ca,handleInputBlur:ea,handleToggleDropdown:fa,getHandleRemoveValue:U,inputRef:c,dropdownRef:d,controlRef:e,handleInputChange:R,handleInputClick:S,handleInputFocus:da,visibleItemsAtom:C,clearValue:T,optionsRefs:K,highlightedIndexAtom:v,valueAtom:s,getItemKeyAtom:o,onChangeAll:P,highlightIndex:M,onCreate:Q,onChange:O,hasItemsAtom:J,groupsCounterAtom:D,dropdownZIndexAtom:l}};
2
2
  //# sourceMappingURL=useSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSelect.js","names":["useAction","useAtom","useUpdate","useRef","useClickOutside","useKeysRef","useRefs","getGroups","useCreateAtom","usePickAtom","usePropAtom","scrollToIndex","isMultipleParams","params","multiple","isOptionForCreate","Object","prototype","hasOwnProperty","call","isNotOptionForCreate","isOptionForSelectAll","getCountedGroups","groups","selectAll","copyGroups","forEach","group","index","items","__optionSelectAll","groupKey","key","useSelect","propsAtom","inputRef","dropdownRef","controlRef","itemsAtom","selectAllAtom","valuePropAtom","disabledAtom","inputValuePropAtom","dropdownOpenPropAtom","dropdownZIndexAtom","ctx","zIndex","spy","style","ignoreOutsideClicksRefsAtom","onCreateAtom","getItemKeyAtom","ignoreOutsideClicksRefs","valueAtom","value","Array","isArray","focusAtom","openAtom","highlightedIndexAtom","inputValueAtom","clearButtonAtom","clearButton","inputValue","length","onInput","get","current","optionForCreateAtom","onCreate","label","__optionForCreate","propsForVisibleItemsAtom","visibleItemsAtom","getItemGroupKey","getGroupKey","optionForCreate","resultGroups","groupsCounterAtom","visibleItems","getItemDisabled","groupCounter","getSelectedCounter","groupItems","some","item","maxHighlightIndex","_","maxHighlightIndexAtom","hasItemsAtom","optionsRefs","scrollToHighlightedIndex","highlightedIndex","dropdownElement","highlightIndex","indexForHighlight","state","newIndex","Math","min","max","removeValue","e","valueItem","stopPropagation","props","getItemKey","onChange","newValue","filter","disabled","console","log","val","onChangeAll","nonDisabledItems","currentGroupValues","withoutGroupValues","el","find","push","handleInputChange","input","target","handleInputClick","focus","clearValue","results","getHandleRemoveValue","ArrowUp","preventDefault","old","ArrowDown","Enter","open","getData","counter","Escape","Tab","Backspace","PageUp","PageDown","Home","End","keys","getOptionActions","onClick","onMouseEnter","getItems","handleInputFocus","onFocus","focused","handleInputBlur","onBlur","handleToggleDropdown","ref","isActive","ignoreClicksInsideRefs","handler","disable","onDropdownOpen","inputValueProp","dropdownOpenProp"],"sources":["../../../../../../src/components/SelectCanary/useSelect/useSelect.ts"],"sourcesContent":["import { AtomMut } from '@reatom/framework';\nimport { useAction, useAtom, useUpdate } from '@reatom/npm-react';\nimport React, { useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { KeyHandlers, useKeysRef } from '##/hooks/useKeysRef';\nimport { useRefs } from '##/hooks/useRefs';\nimport { getGroups, GetGroupsResult } from '##/utils/getGroups';\nimport { useCreateAtom } from '##/utils/state/useCreateAtom';\nimport { usePickAtom, usePropAtom } from '##/utils/state/usePickAtom';\n\nimport { PropsWithDefault } from '../../SelectCanary/defaultProps';\nimport { SelectGroupDefault, SelectItemDefault, SelectPropOnChange } from '..';\nimport { CountedGroup, Group, SelectAllItem } from '../types';\nimport { scrollToIndex } from './helpers';\n\ntype IndexForHighlight = number | ((oldIndex: number) => number);\n\nexport type OptionForCreate = {\n label: string;\n __optionForCreate: boolean;\n};\n\nexport type UseSelectProps<\n ITEM = SelectItemDefault,\n GROUP = SelectGroupDefault,\n MULTIPLE extends boolean = false,\n> = {\n propsAtom: AtomMut<PropsWithDefault<ITEM, GROUP, MULTIPLE>>;\n};\n\nexport type OptionProps<ITEM> = {\n index: number;\n item: ITEM | OptionForCreate | SelectAllItem;\n};\n\nexport type GetOptionPropsResult = {\n onClick: (e: React.MouseEvent) => void;\n onMouseEnter: (e: React.MouseEvent) => void;\n};\n\nconst isMultipleParams = <ITEM = SelectItemDefault, GROUP = SelectGroupDefault>(\n params: PropsWithDefault<ITEM, GROUP, boolean>,\n): params is PropsWithDefault<ITEM, GROUP, true> => {\n return !!params.multiple;\n};\n\nexport const isOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP> | ITEM,\n): params is OptionForCreate => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isNotOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP>,\n): params is Group<ITEM, GROUP> => {\n return (\n params && !Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isOptionForSelectAll = <ITEM>(\n params: SelectAllItem | ITEM,\n): params is SelectAllItem => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionSelectAll')\n );\n};\n\nexport function getCountedGroups<ITEM, GROUP>(\n groups: GetGroupsResult<ITEM, GROUP>,\n selectAll: boolean,\n): CountedGroup<ITEM, GROUP>[] {\n const copyGroups: CountedGroup<ITEM, GROUP>[] = [...groups];\n\n if (selectAll) {\n groups.forEach((group, index) => {\n copyGroups[index].items = [\n {\n __optionSelectAll: true,\n groupKey: group.key,\n },\n ...copyGroups[index].items,\n ];\n });\n }\n return copyGroups;\n}\n\nexport const useSelect = <\n ITEM = SelectItemDefault,\n GROUP = SelectItemDefault,\n MULTIPLE extends boolean = false,\n>({\n propsAtom,\n}: UseSelectProps<ITEM, GROUP, MULTIPLE>) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const controlRef = useRef<HTMLDivElement>(null);\n\n const itemsAtom = usePropAtom(propsAtom, 'items');\n const selectAllAtom = usePropAtom(propsAtom, 'selectAll');\n const valuePropAtom = usePropAtom(propsAtom, 'value');\n const disabledAtom = usePropAtom(propsAtom, 'disabled');\n const inputValuePropAtom = usePropAtom(propsAtom, 'inputValue');\n const dropdownOpenPropAtom = usePropAtom(propsAtom, 'dropdownOpen');\n const dropdownZIndexAtom = useCreateAtom((ctx) => {\n const zIndex = ctx.spy(propsAtom).style?.zIndex;\n return typeof zIndex === 'number' ? zIndex + 1 : undefined;\n });\n const ignoreOutsideClicksRefsAtom = usePropAtom(\n propsAtom,\n 'ignoreOutsideClicksRefs',\n );\n const onCreateAtom = usePropAtom(propsAtom, 'onCreate');\n const getItemKeyAtom = usePropAtom(propsAtom, 'getItemKey');\n const [ignoreOutsideClicksRefs] = useAtom(ignoreOutsideClicksRefsAtom);\n\n const valueAtom = useCreateAtom((ctx) => {\n const value = ctx.spy(valuePropAtom);\n return (value && (Array.isArray(value) ? value : [value])) || [];\n }) as unknown as AtomMut<ITEM[]>;\n const focusAtom = useCreateAtom(false);\n const openAtom = useCreateAtom(false);\n const highlightedIndexAtom = useCreateAtom(0);\n const inputValueAtom = useCreateAtom('');\n\n const clearButtonAtom = useCreateAtom((ctx) => {\n const { clearButton } = ctx.spy(propsAtom);\n const inputValue = ctx.spy(inputValueAtom);\n const value = ctx.spy(valueAtom);\n return !!(clearButton && (value?.length || inputValue));\n });\n\n const onInput = useAction((ctx, value: string | undefined = '') => {\n ctx.get(propsAtom).onInput?.(value);\n inputValueAtom(ctx, value);\n\n if (inputRef.current) {\n inputRef.current.value = value;\n }\n });\n\n const optionForCreateAtom = useCreateAtom<OptionForCreate | undefined>(\n (ctx) => {\n const onCreate = ctx.spy(onCreateAtom);\n if (!onCreate) {\n return undefined;\n }\n const inputValue = ctx.spy(inputValueAtom);\n const optionForCreate: OptionForCreate = {\n label: inputValue,\n __optionForCreate: true,\n };\n return optionForCreate;\n },\n );\n\n const propsForVisibleItemsAtom = usePickAtom(\n propsAtom as AtomMut<PropsWithDefault<ITEM, GROUP, boolean>>,\n [\n 'selectAll',\n 'groups',\n 'getItemGroupKey',\n 'getGroupKey',\n 'getItemDisabled',\n 'getItemKey',\n 'items',\n ],\n );\n\n const visibleItemsAtom = useCreateAtom((ctx) => {\n const { selectAll, groups, getItemGroupKey, getGroupKey, items } = ctx.spy(\n propsForVisibleItemsAtom,\n );\n\n const optionForCreate = ctx.spy(optionForCreateAtom);\n\n const resultGroups = getCountedGroups(\n getGroups(\n items,\n groups?.length ? getItemGroupKey : undefined,\n groups,\n getGroupKey,\n undefined,\n ),\n !!selectAll,\n );\n\n return optionForCreate ? [optionForCreate, ...resultGroups] : resultGroups;\n });\n\n const groupsCounterAtom = useCreateAtom((ctx) => {\n const visibleItems = ctx.spy(visibleItemsAtom);\n const selectAll = ctx.spy(selectAllAtom);\n const value = ctx.spy(valueAtom);\n const { getItemDisabled } = ctx.get(propsForVisibleItemsAtom);\n\n const groupCounter: Record<string, [number, number]> = {};\n\n const getSelectedCounter = () => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n continue;\n }\n groupCounter[group.key] = [0, group.items.length - 1];\n for (const groupItems of group.items) {\n if (\n !isOptionForSelectAll(groupItems) &&\n !getItemDisabled(groupItems) &&\n value.some((item) => item === groupItems)\n ) {\n groupCounter[group.key][0] = (groupCounter[group.key][0] || 0) + 1;\n }\n }\n }\n };\n\n if (selectAll) {\n getSelectedCounter();\n }\n\n return groupCounter;\n });\n\n // eslint-disable-next-line no-unused-vars\n const [maxHighlightIndex, _, maxHighlightIndexAtom] = useAtom((ctx) => {\n const items = ctx.spy(itemsAtom);\n const optionForCreate = ctx.spy(optionForCreateAtom);\n const selectAll = ctx.spy(selectAllAtom);\n const visibleItems = ctx.spy(visibleItemsAtom);\n\n return (\n items.length +\n // кнопка для создания\n (optionForCreate ? 1 : 0) +\n // кнопки выбрать все\n (selectAll ? visibleItems.length : 0)\n );\n });\n\n const hasItemsAtom = useCreateAtom((ctx) => {\n const items = ctx.spy(itemsAtom);\n const optionForCreate = ctx.spy(optionForCreateAtom);\n\n if (optionForCreate) {\n return true;\n }\n\n return !!items.length;\n });\n\n const optionsRefs = useRefs<HTMLDivElement>(maxHighlightIndex, undefined);\n\n const scrollToHighlightedIndex = useAction((ctx) => {\n const items = ctx.get(itemsAtom);\n const highlightedIndex = ctx.get(highlightedIndexAtom);\n const dropdownElement = dropdownRef.current;\n\n if (items.length > 0 && dropdownElement) {\n scrollToIndex(highlightedIndex, dropdownElement, optionsRefs);\n }\n });\n\n const highlightIndex = useAction(\n (ctx, indexForHighlight: IndexForHighlight) => {\n const maxHighlightIndex = ctx.get(maxHighlightIndexAtom);\n\n highlightedIndexAtom(ctx, (state) => {\n const newIndex = Math.min(\n Math.max(\n 0,\n typeof indexForHighlight === 'function'\n ? indexForHighlight(state)\n : indexForHighlight,\n ),\n maxHighlightIndex - 1,\n );\n\n return newIndex;\n });\n },\n );\n\n const removeValue = useAction(\n (ctx, e: React.SyntheticEvent, valueItem: ITEM) => {\n e.stopPropagation();\n const props = ctx.get(propsAtom);\n\n if (isMultipleParams(props)) {\n const { getItemDisabled, getItemKey, onChange } = props;\n\n const newValue = ctx.get(valueAtom).filter((item) => {\n return getItemDisabled?.(item)\n ? true\n : getItemKey(item) !== getItemKey(valueItem);\n });\n\n onChange(newValue?.length ? newValue : null, {\n e,\n });\n }\n },\n );\n\n const onChange = useAction((ctx, e: React.SyntheticEvent, item: ITEM) => {\n const { getItemDisabled, getItemKey, onChange, multiple, disabled } =\n ctx.get(propsAtom);\n\n console.log('disabled', disabled);\n\n if (disabled || (getItemDisabled && getItemDisabled(item))) {\n return;\n }\n\n if (multiple) {\n const value = ctx.get(valueAtom);\n const newValue = value.some(\n (value) => getItemKey(value) === getItemKey(item),\n )\n ? value.filter((value) => getItemKey(value) !== getItemKey(item))\n : [...value, item];\n const val = newValue?.length ? newValue : null;\n (onChange as SelectPropOnChange<ITEM, true>)(val, { e });\n } else {\n (onChange as SelectPropOnChange<ITEM, false>)(item, { e });\n onInput('');\n openAtom(ctx, false);\n }\n });\n\n const onChangeAll = useAction(\n (ctx, e: React.SyntheticEvent, items: ITEM[]) => {\n const props = ctx.get(propsAtom);\n const value = ctx.get(valueAtom);\n const { getItemDisabled, getItemKey, multiple, onChange } = props;\n\n if (multiple) {\n const nonDisabledItems = getItemDisabled\n ? items.filter((item) => !getItemDisabled(item))\n : items;\n\n const currentGroupValues: ITEM[] = [];\n const withoutGroupValues: ITEM[] = [];\n value.forEach((el) => {\n if (\n nonDisabledItems.find((item) => getItemKey(el) === getItemKey(item))\n ) {\n currentGroupValues.push(el);\n } else {\n withoutGroupValues.push(el);\n }\n });\n if (currentGroupValues.length === nonDisabledItems.length) {\n (onChange as SelectPropOnChange<ITEM, true>)(withoutGroupValues, {\n e,\n });\n } else {\n const val = [...withoutGroupValues, ...nonDisabledItems];\n (onChange as SelectPropOnChange<ITEM, true>)(val, {\n e,\n });\n }\n }\n },\n );\n\n const onCreate = useAction((ctx, e: React.SyntheticEvent) => {\n const { onCreate } = ctx.get(propsAtom);\n onCreate?.(ctx.get(inputValueAtom), { e });\n openAtom(ctx, false);\n onInput('');\n });\n\n // Handlers\n\n const handleInputChange = useAction(\n (ctx, e: React.ChangeEvent<HTMLInputElement>): void => {\n if (!ctx.get(disabledAtom) && ctx.get(propsAtom).input) {\n onInput?.(e.target.value);\n openAtom(ctx, true);\n }\n },\n );\n\n const handleInputClick = useAction((ctx) => {\n !ctx.get(disabledAtom) && openAtom(ctx, (value) => !value);\n\n inputRef.current?.focus();\n });\n\n const clearValue = useAction((ctx, e: React.SyntheticEvent) => {\n const { getItemDisabled, multiple, onChange, disabled } =\n ctx.get(propsAtom);\n\n console.log('');\n\n if (disabled) {\n return;\n }\n\n const value = ctx.get(valueAtom);\n if (multiple) {\n const results = value?.filter((item) => getItemDisabled?.(item));\n const val = results && results.length > 0 ? results : null;\n (onChange as SelectPropOnChange<ITEM, true>)(val, {\n e,\n });\n } else {\n onChange(null, { e });\n }\n onInput('');\n });\n\n const getHandleRemoveValue = useAction(\n (_, item: ITEM) => (e: React.SyntheticEvent) => removeValue(e, item),\n );\n\n // Prop Getters\n\n const ArrowUp = useAction((ctx, e: KeyboardEvent) => {\n e.preventDefault();\n if (!ctx.get(disabledAtom)) {\n openAtom(ctx, true);\n highlightIndex((old) => old - 1);\n scrollToHighlightedIndex();\n }\n });\n\n const ArrowDown = useAction((ctx, e: KeyboardEvent) => {\n e.preventDefault();\n\n if (!ctx.get(disabledAtom)) {\n openAtom(ctx, true);\n highlightIndex((old) => old + 1);\n scrollToHighlightedIndex();\n }\n });\n\n const Enter = useAction((ctx, e: React.SyntheticEvent) => {\n const { items } = ctx.get(propsAtom);\n const highlightedIndex = ctx.get(highlightedIndexAtom);\n const inputValue = ctx.get(inputValueAtom);\n const visibleItems = ctx.get(visibleItemsAtom);\n const open = ctx.get(openAtom);\n\n if (open) {\n if (inputValue || items[highlightedIndex]) {\n e.preventDefault();\n }\n\n const getData = (\n index: number,\n ): [\n CountedGroup<ITEM, GROUP> | undefined,\n SelectAllItem | OptionForCreate | ITEM | undefined,\n ] => {\n let counter = 0;\n\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n if (counter === index) {\n return [undefined, group];\n }\n counter++;\n continue;\n }\n if (group.items.length + counter > index) {\n return [group, group.items[index - counter]];\n }\n counter += group.items.length;\n }\n return [undefined, undefined];\n };\n\n const [group, item] = getData(highlightedIndex);\n\n if (isOptionForCreate(item)) {\n onCreate(e);\n return;\n }\n\n if (isOptionForSelectAll(item)) {\n onChangeAll(\n e,\n (group?.items.filter((el) => !isOptionForSelectAll(el)) as ITEM[]) ??\n [],\n );\n return;\n }\n\n if (item) {\n onChange(e, item);\n }\n } else {\n openAtom(ctx, true);\n }\n });\n\n const Escape = useAction((ctx) => openAtom(ctx, false));\n\n const Tab = useAction((ctx, e: KeyboardEvent) => {\n if (ctx.get(openAtom)) {\n e.preventDefault();\n openAtom(ctx, false);\n }\n });\n\n const Backspace = useAction((ctx, e: React.SyntheticEvent) => {\n const inputValue = ctx.get(inputValueAtom);\n const { multiple, clearButton } = ctx.get(propsAtom);\n const value = ctx.get(valueAtom);\n\n if (inputValue) {\n return;\n }\n\n if (multiple) {\n removeValue(e, value[value.length - 1]);\n } else {\n clearButton && clearValue?.(e);\n }\n });\n\n const [keys] = useAtom({\n ArrowUp,\n ArrowDown,\n PageUp: ArrowUp,\n PageDown: ArrowDown,\n Home: ArrowUp,\n End: ArrowDown,\n Enter,\n Escape,\n Tab,\n Backspace,\n });\n\n const getOptionActions = useAction(\n (ctx, { index, item }: OptionProps<ITEM>): GetOptionPropsResult => {\n const visibleItems = ctx.get(visibleItemsAtom);\n\n if (isOptionForCreate(item)) {\n return {\n onClick: onCreate,\n onMouseEnter: () => highlightIndex(index),\n };\n }\n if (isOptionForSelectAll(item)) {\n const getItems = (): ITEM[] => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n continue;\n }\n if (group.key === item.groupKey) {\n return (\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? []\n );\n }\n }\n return [];\n };\n return {\n onClick: (e: React.SyntheticEvent) => onChangeAll(e, getItems()),\n onMouseEnter: () => highlightIndex(index),\n };\n }\n\n return {\n onClick: (e: React.SyntheticEvent) => onChange(e, item),\n onMouseEnter: () => highlightIndex(index),\n };\n },\n );\n\n const handleInputFocus = useAction(\n (ctx, e: React.FocusEvent<HTMLInputElement>): void => {\n const { disabled, onFocus } = ctx.get(propsAtom);\n const focused = ctx.get(focusAtom);\n\n if (!disabled) {\n if (!focused) {\n focusAtom(ctx, true);\n }\n if (typeof onFocus === 'function') {\n onFocus(e);\n }\n }\n },\n );\n\n const handleInputBlur = useAction(\n (ctx, e: React.FocusEvent<HTMLInputElement>): void => {\n const { onBlur } = ctx.get(propsAtom);\n if (ctx.get(openAtom)) {\n inputRef.current?.focus();\n return;\n }\n\n if (ctx.get(focusAtom)) {\n focusAtom(ctx, false);\n }\n\n if (typeof onBlur === 'function') {\n onBlur(e);\n }\n },\n );\n\n const handleToggleDropdown = useAction((ctx) => {\n const disabled = ctx.get(disabledAtom);\n if (ctx.get(openAtom)) {\n openAtom(ctx, false);\n focusAtom(ctx, false);\n } else if (!disabled) {\n openAtom(ctx, true);\n focusAtom(ctx, true);\n inputRef.current?.focus();\n }\n });\n\n useKeysRef({\n keys: keys as unknown as KeyHandlers,\n ref: inputRef,\n isActive: useAction((ctx) => !ctx.get(disabledAtom)),\n });\n\n useClickOutside({\n isActive: useAction((ctx) => ctx.get(openAtom)),\n ignoreClicksInsideRefs: [\n dropdownRef,\n controlRef,\n ...(ignoreOutsideClicksRefs || []),\n ],\n handler: useAction((ctx) => openAtom(ctx, false)),\n });\n\n useUpdate((ctx, disable) => disable && openAtom(ctx, false), [disabledAtom]);\n\n useUpdate(\n (ctx, open = false) => {\n ctx.get(propsAtom).onDropdownOpen?.(open);\n highlightIndex(0);\n },\n [openAtom],\n );\n\n useUpdate(\n (ctx, inputValueProp = '') => {\n const inputValue = ctx.get(inputValueAtom);\n\n if (inputValueProp !== inputValue) {\n onInput(inputValueProp);\n }\n },\n [inputValuePropAtom],\n );\n\n useUpdate(\n (ctx, dropdownOpenProp = false) => openAtom(ctx, dropdownOpenProp),\n [dropdownOpenPropAtom],\n );\n\n return {\n openAtom,\n focusAtom,\n inputValueAtom,\n clearButtonAtom,\n onInput,\n getOptionActions,\n handleInputBlur,\n handleToggleDropdown,\n getHandleRemoveValue,\n inputRef,\n dropdownRef,\n controlRef,\n handleInputChange,\n handleInputClick,\n handleInputFocus,\n visibleItemsAtom,\n clearValue,\n optionsRefs,\n highlightedIndexAtom,\n valueAtom,\n getItemKeyAtom,\n onChangeAll,\n highlightIndex,\n onCreate,\n onChange,\n hasItemsAtom,\n groupsCounterAtom,\n dropdownZIndexAtom,\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"useSelect.js","names":["useAction","useAtom","useUpdate","useRef","useClickOutside","useDebounce","useKeysRef","useRefs","getGroups","useCreateAtom","usePickAtom","usePropAtom","scrollToIndex","isMultipleParams","params","multiple","isOptionForCreate","Object","prototype","hasOwnProperty","call","isNotOptionForCreate","isOptionForSelectAll","getCountedGroups","groups","selectAll","copyGroups","forEach","group","index","items","__optionSelectAll","groupKey","key","useSelect","propsAtom","inputRef","dropdownRef","controlRef","itemsAtom","selectAllAtom","valuePropAtom","disabledAtom","inputValuePropAtom","dropdownOpenPropAtom","dropdownZIndexAtom","ctx","zIndex","spy","style","ignoreOutsideClicksRefsAtom","onCreateAtom","getItemKeyAtom","ignoreOutsideClicksRefs","valueAtom","value","Array","isArray","focusAtom","openAtom","highlightedIndexAtom","inputValueAtom","clearButtonAtom","clearButton","inputValue","length","onInput","get","current","inputElementFocus","focus","optionForCreateAtom","onCreate","label","__optionForCreate","propsForVisibleItemsAtom","visibleItemsAtom","getItemGroupKey","getGroupKey","optionForCreate","resultGroups","groupsCounterAtom","visibleItems","getItemDisabled","groupCounter","getSelectedCounter","groupItems","some","item","maxHighlightIndex","_","maxHighlightIndexAtom","hasItemsAtom","optionsRefs","scrollToHighlightedIndex","highlightedIndex","dropdownElement","highlightIndex","indexForHighlight","state","newIndex","Math","min","max","removeValue","e","valueItem","stopPropagation","props","getItemKey","onChange","newValue","filter","disabled","val","onChangeAll","nonDisabledItems","currentGroupValues","withoutGroupValues","el","find","push","handleInputChange","input","target","handleInputClick","clearValue","results","getHandleRemoveValue","ArrowUp","preventDefault","old","ArrowDown","Enter","open","getData","counter","Escape","Tab","Backspace","PageUp","PageDown","Home","End","keys","getOptionActions","onClick","onMouseEnter","getItems","handleInputFocus","onFocus","focused","handleInputBlur","onBlur","handleToggleDropdown","ref","isActive","ignoreClicksInsideRefs","handler","disable","onDropdownOpen","inputValueProp","dropdownOpenProp"],"sources":["../../../../../../src/components/SelectCanary/useSelect/useSelect.ts"],"sourcesContent":["import { AtomMut } from '@reatom/framework';\nimport { useAction, useAtom, useUpdate } from '@reatom/npm-react';\nimport React, { useRef } from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useDebounce } from '##/hooks/useDebounce';\nimport { KeyHandlers, useKeysRef } from '##/hooks/useKeysRef';\nimport { useRefs } from '##/hooks/useRefs';\nimport { getGroups, GetGroupsResult } from '##/utils/getGroups';\nimport { useCreateAtom } from '##/utils/state/useCreateAtom';\nimport { usePickAtom, usePropAtom } from '##/utils/state/usePickAtom';\n\nimport { PropsWithDefault } from '../../SelectCanary/defaultProps';\nimport { SelectGroupDefault, SelectItemDefault, SelectPropOnChange } from '..';\nimport { CountedGroup, Group, SelectAllItem } from '../types';\nimport { scrollToIndex } from './helpers';\n\ntype IndexForHighlight = number | ((oldIndex: number) => number);\n\nexport type OptionForCreate = {\n label: string;\n __optionForCreate: boolean;\n};\n\nexport type UseSelectProps<\n ITEM = SelectItemDefault,\n GROUP = SelectGroupDefault,\n MULTIPLE extends boolean = false,\n> = {\n propsAtom: AtomMut<PropsWithDefault<ITEM, GROUP, MULTIPLE>>;\n};\n\nexport type OptionProps<ITEM> = {\n index: number;\n item: ITEM | OptionForCreate | SelectAllItem;\n};\n\nexport type GetOptionPropsResult = {\n onClick: (e: React.MouseEvent) => void;\n onMouseEnter: (e: React.MouseEvent) => void;\n};\n\nconst isMultipleParams = <ITEM = SelectItemDefault, GROUP = SelectGroupDefault>(\n params: PropsWithDefault<ITEM, GROUP, boolean>,\n): params is PropsWithDefault<ITEM, GROUP, true> => {\n return !!params.multiple;\n};\n\nexport const isOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP> | ITEM,\n): params is OptionForCreate => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isNotOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP>,\n): params is Group<ITEM, GROUP> => {\n return (\n params && !Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isOptionForSelectAll = <ITEM>(\n params: SelectAllItem | ITEM,\n): params is SelectAllItem => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionSelectAll')\n );\n};\n\nexport function getCountedGroups<ITEM, GROUP>(\n groups: GetGroupsResult<ITEM, GROUP>,\n selectAll: boolean,\n): CountedGroup<ITEM, GROUP>[] {\n const copyGroups: CountedGroup<ITEM, GROUP>[] = [...groups];\n\n if (selectAll) {\n groups.forEach((group, index) => {\n copyGroups[index].items = [\n {\n __optionSelectAll: true,\n groupKey: group.key,\n },\n ...copyGroups[index].items,\n ];\n });\n }\n return copyGroups;\n}\n\nexport const useSelect = <\n ITEM = SelectItemDefault,\n GROUP = SelectItemDefault,\n MULTIPLE extends boolean = false,\n>({\n propsAtom,\n}: UseSelectProps<ITEM, GROUP, MULTIPLE>) => {\n const inputRef = useRef<HTMLInputElement>(null);\n const dropdownRef = useRef<HTMLDivElement>(null);\n const controlRef = useRef<HTMLDivElement>(null);\n\n const itemsAtom = usePropAtom(propsAtom, 'items');\n const selectAllAtom = usePropAtom(propsAtom, 'selectAll');\n const valuePropAtom = usePropAtom(propsAtom, 'value');\n const disabledAtom = usePropAtom(propsAtom, 'disabled');\n const inputValuePropAtom = usePropAtom(propsAtom, 'inputValue');\n const dropdownOpenPropAtom = usePropAtom(propsAtom, 'dropdownOpen');\n const dropdownZIndexAtom = useCreateAtom((ctx) => {\n const zIndex = ctx.spy(propsAtom).style?.zIndex;\n return typeof zIndex === 'number' ? zIndex + 1 : undefined;\n });\n const ignoreOutsideClicksRefsAtom = usePropAtom(\n propsAtom,\n 'ignoreOutsideClicksRefs',\n );\n const onCreateAtom = usePropAtom(propsAtom, 'onCreate');\n const getItemKeyAtom = usePropAtom(propsAtom, 'getItemKey');\n const [ignoreOutsideClicksRefs] = useAtom(ignoreOutsideClicksRefsAtom);\n\n const valueAtom = useCreateAtom((ctx) => {\n const value = ctx.spy(valuePropAtom);\n return (value && (Array.isArray(value) ? value : [value])) || [];\n }) as unknown as AtomMut<ITEM[]>;\n const focusAtom = useCreateAtom(false);\n const openAtom = useCreateAtom(false);\n const highlightedIndexAtom = useCreateAtom(0);\n const inputValueAtom = useCreateAtom('');\n\n const clearButtonAtom = useCreateAtom((ctx) => {\n const { clearButton } = ctx.spy(propsAtom);\n const inputValue = ctx.spy(inputValueAtom);\n const value = ctx.spy(valueAtom);\n return !!(clearButton && (value?.length || inputValue));\n });\n\n const onInput = useAction((ctx, value: string | undefined = '') => {\n ctx.get(propsAtom).onInput?.(value);\n inputValueAtom(ctx, value);\n\n if (inputRef.current) {\n inputRef.current.value = value;\n }\n });\n\n const inputElementFocus = useDebounce(\n useAction(() => {\n inputRef.current?.focus();\n }),\n 10,\n );\n\n const optionForCreateAtom = useCreateAtom<OptionForCreate | undefined>(\n (ctx) => {\n const onCreate = ctx.spy(onCreateAtom);\n if (!onCreate) {\n return undefined;\n }\n const inputValue = ctx.spy(inputValueAtom);\n const optionForCreate: OptionForCreate = {\n label: inputValue,\n __optionForCreate: true,\n };\n return optionForCreate;\n },\n );\n\n const propsForVisibleItemsAtom = usePickAtom(\n propsAtom as AtomMut<PropsWithDefault<ITEM, GROUP, boolean>>,\n [\n 'selectAll',\n 'groups',\n 'getItemGroupKey',\n 'getGroupKey',\n 'getItemDisabled',\n 'getItemKey',\n 'items',\n ],\n );\n\n const visibleItemsAtom = useCreateAtom((ctx) => {\n const { selectAll, groups, getItemGroupKey, getGroupKey, items } = ctx.spy(\n propsForVisibleItemsAtom,\n );\n\n const optionForCreate = ctx.spy(optionForCreateAtom);\n\n const resultGroups = getCountedGroups(\n getGroups(\n items,\n groups?.length ? getItemGroupKey : undefined,\n groups,\n getGroupKey,\n undefined,\n ),\n !!selectAll,\n );\n\n return optionForCreate ? [optionForCreate, ...resultGroups] : resultGroups;\n });\n\n const groupsCounterAtom = useCreateAtom((ctx) => {\n const visibleItems = ctx.spy(visibleItemsAtom);\n const selectAll = ctx.spy(selectAllAtom);\n const value = ctx.spy(valueAtom);\n const { getItemDisabled } = ctx.get(propsForVisibleItemsAtom);\n\n const groupCounter: Record<string, [number, number]> = {};\n\n const getSelectedCounter = () => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n continue;\n }\n groupCounter[group.key] = [0, group.items.length - 1];\n for (const groupItems of group.items) {\n if (\n !isOptionForSelectAll(groupItems) &&\n !getItemDisabled(groupItems) &&\n value.some((item) => item === groupItems)\n ) {\n groupCounter[group.key][0] = (groupCounter[group.key][0] || 0) + 1;\n }\n }\n }\n };\n\n if (selectAll) {\n getSelectedCounter();\n }\n\n return groupCounter;\n });\n\n // eslint-disable-next-line no-unused-vars\n const [maxHighlightIndex, _, maxHighlightIndexAtom] = useAtom((ctx) => {\n const items = ctx.spy(itemsAtom);\n const optionForCreate = ctx.spy(optionForCreateAtom);\n const selectAll = ctx.spy(selectAllAtom);\n const visibleItems = ctx.spy(visibleItemsAtom);\n\n return (\n items.length +\n // кнопка для создания\n (optionForCreate ? 1 : 0) +\n // кнопки выбрать все\n (selectAll ? visibleItems.length : 0)\n );\n });\n\n const hasItemsAtom = useCreateAtom((ctx) => {\n const items = ctx.spy(itemsAtom);\n const optionForCreate = ctx.spy(optionForCreateAtom);\n\n if (optionForCreate) {\n return true;\n }\n\n return !!items.length;\n });\n\n const optionsRefs = useRefs<HTMLDivElement>(maxHighlightIndex, undefined);\n\n const scrollToHighlightedIndex = useAction((ctx) => {\n const items = ctx.get(itemsAtom);\n const highlightedIndex = ctx.get(highlightedIndexAtom);\n const dropdownElement = dropdownRef.current;\n\n if (items.length > 0 && dropdownElement) {\n scrollToIndex(highlightedIndex, dropdownElement, optionsRefs);\n }\n });\n\n const highlightIndex = useAction(\n (ctx, indexForHighlight: IndexForHighlight) => {\n const maxHighlightIndex = ctx.get(maxHighlightIndexAtom);\n\n highlightedIndexAtom(ctx, (state) => {\n const newIndex = Math.min(\n Math.max(\n 0,\n typeof indexForHighlight === 'function'\n ? indexForHighlight(state)\n : indexForHighlight,\n ),\n maxHighlightIndex - 1,\n );\n\n return newIndex;\n });\n },\n );\n\n const removeValue = useAction(\n (ctx, e: React.SyntheticEvent, valueItem: ITEM) => {\n e.stopPropagation();\n const props = ctx.get(propsAtom);\n\n if (isMultipleParams(props)) {\n const { getItemDisabled, getItemKey, onChange } = props;\n\n const newValue = ctx.get(valueAtom).filter((item) => {\n return getItemDisabled?.(item)\n ? true\n : getItemKey(item) !== getItemKey(valueItem);\n });\n\n onChange(newValue?.length ? newValue : null, {\n e,\n });\n }\n },\n );\n\n const onChange = useAction((ctx, e: React.SyntheticEvent, item: ITEM) => {\n const { getItemDisabled, getItemKey, onChange, multiple, disabled } =\n ctx.get(propsAtom);\n\n if (disabled || (getItemDisabled && getItemDisabled(item))) {\n return;\n }\n\n if (multiple) {\n const value = ctx.get(valueAtom);\n const newValue = value.some(\n (value) => getItemKey(value) === getItemKey(item),\n )\n ? value.filter((value) => getItemKey(value) !== getItemKey(item))\n : [...value, item];\n const val = newValue?.length ? newValue : null;\n (onChange as SelectPropOnChange<ITEM, true>)(val, { e });\n } else {\n (onChange as SelectPropOnChange<ITEM, false>)(item, { e });\n onInput('');\n openAtom(ctx, false);\n }\n });\n\n const onChangeAll = useAction(\n (ctx, e: React.SyntheticEvent, items: ITEM[]) => {\n const props = ctx.get(propsAtom);\n const value = ctx.get(valueAtom);\n const { getItemDisabled, getItemKey, multiple, onChange } = props;\n\n if (multiple) {\n const nonDisabledItems = getItemDisabled\n ? items.filter((item) => !getItemDisabled(item))\n : items;\n\n const currentGroupValues: ITEM[] = [];\n const withoutGroupValues: ITEM[] = [];\n value.forEach((el) => {\n if (\n nonDisabledItems.find((item) => getItemKey(el) === getItemKey(item))\n ) {\n currentGroupValues.push(el);\n } else {\n withoutGroupValues.push(el);\n }\n });\n if (currentGroupValues.length === nonDisabledItems.length) {\n (onChange as SelectPropOnChange<ITEM, true>)(withoutGroupValues, {\n e,\n });\n } else {\n const val = [...withoutGroupValues, ...nonDisabledItems];\n (onChange as SelectPropOnChange<ITEM, true>)(val, {\n e,\n });\n }\n }\n },\n );\n\n const onCreate = useAction((ctx, e: React.SyntheticEvent) => {\n const { onCreate } = ctx.get(propsAtom);\n onCreate?.(ctx.get(inputValueAtom), { e });\n openAtom(ctx, false);\n onInput('');\n });\n\n // Handlers\n\n const handleInputChange = useAction(\n (ctx, e: React.ChangeEvent<HTMLInputElement>): void => {\n if (!ctx.get(disabledAtom) && ctx.get(propsAtom).input) {\n onInput?.(e.target.value);\n openAtom(ctx, true);\n }\n },\n );\n\n const handleInputClick = useAction((ctx) => {\n !ctx.get(disabledAtom) && openAtom(ctx, (value) => !value);\n\n inputElementFocus();\n });\n\n const clearValue = useAction((ctx, e: React.SyntheticEvent) => {\n const { getItemDisabled, multiple, onChange, disabled } =\n ctx.get(propsAtom);\n\n if (disabled) {\n return;\n }\n\n const value = ctx.get(valueAtom);\n if (multiple) {\n const results = value?.filter((item) => getItemDisabled?.(item));\n const val = results && results.length > 0 ? results : null;\n (onChange as SelectPropOnChange<ITEM, true>)(val, {\n e,\n });\n } else {\n onChange(null, { e });\n }\n onInput('');\n });\n\n const getHandleRemoveValue = useAction(\n (_, item: ITEM) => (e: React.SyntheticEvent) => removeValue(e, item),\n );\n\n // Prop Getters\n\n const ArrowUp = useAction((ctx, e: KeyboardEvent) => {\n e.preventDefault();\n e.stopPropagation();\n if (!ctx.get(disabledAtom)) {\n openAtom(ctx, true);\n highlightIndex((old) => old - 1);\n scrollToHighlightedIndex();\n }\n });\n\n const ArrowDown = useAction((ctx, e: KeyboardEvent) => {\n e.preventDefault();\n e.stopPropagation();\n if (!ctx.get(disabledAtom)) {\n openAtom(ctx, true);\n highlightIndex((old) => old + 1);\n scrollToHighlightedIndex();\n }\n });\n\n const Enter = useAction((ctx, e: React.SyntheticEvent) => {\n const { items } = ctx.get(propsAtom);\n const highlightedIndex = ctx.get(highlightedIndexAtom);\n const inputValue = ctx.get(inputValueAtom);\n const visibleItems = ctx.get(visibleItemsAtom);\n const open = ctx.get(openAtom);\n\n if (open) {\n if (inputValue || items[highlightedIndex]) {\n e.preventDefault();\n e.stopPropagation();\n }\n\n const getData = (\n index: number,\n ): [\n CountedGroup<ITEM, GROUP> | undefined,\n SelectAllItem | OptionForCreate | ITEM | undefined,\n ] => {\n let counter = 0;\n\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n if (counter === index) {\n return [undefined, group];\n }\n counter++;\n continue;\n }\n if (group.items.length + counter > index) {\n return [group, group.items[index - counter]];\n }\n counter += group.items.length;\n }\n return [undefined, undefined];\n };\n\n const [group, item] = getData(highlightedIndex);\n\n if (isOptionForCreate(item)) {\n onCreate(e);\n return;\n }\n\n if (isOptionForSelectAll(item)) {\n onChangeAll(\n e,\n (group?.items.filter((el) => !isOptionForSelectAll(el)) as ITEM[]) ??\n [],\n );\n return;\n }\n\n if (item) {\n onChange(e, item);\n }\n } else {\n openAtom(ctx, true);\n }\n });\n\n const Escape = useAction((ctx, e: KeyboardEvent) => {\n e.preventDefault();\n e.stopPropagation();\n openAtom(ctx, false);\n });\n\n const Tab = useAction((ctx, e: KeyboardEvent) => {\n if (ctx.get(openAtom)) {\n e.preventDefault();\n e.stopPropagation();\n openAtom(ctx, false);\n }\n });\n\n const Backspace = useAction((ctx, e: React.SyntheticEvent) => {\n const inputValue = ctx.get(inputValueAtom);\n const { multiple, clearButton } = ctx.get(propsAtom);\n const value = ctx.get(valueAtom);\n\n if (inputValue) {\n return;\n }\n\n if (multiple) {\n removeValue(e, value[value.length - 1]);\n } else {\n clearButton && clearValue?.(e);\n }\n });\n\n const [keys] = useAtom({\n ArrowUp,\n ArrowDown,\n PageUp: ArrowUp,\n PageDown: ArrowDown,\n Home: ArrowUp,\n End: ArrowDown,\n Enter,\n Escape,\n Tab,\n Backspace,\n });\n\n const getOptionActions = useAction(\n (ctx, { index, item }: OptionProps<ITEM>): GetOptionPropsResult => {\n const visibleItems = ctx.get(visibleItemsAtom);\n\n if (isOptionForCreate(item)) {\n return {\n onClick: onCreate,\n onMouseEnter: () => highlightIndex(index),\n };\n }\n if (isOptionForSelectAll(item)) {\n const getItems = (): ITEM[] => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n continue;\n }\n if (group.key === item.groupKey) {\n return (\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? []\n );\n }\n }\n return [];\n };\n return {\n onClick: (e: React.SyntheticEvent) => onChangeAll(e, getItems()),\n onMouseEnter: () => highlightIndex(index),\n };\n }\n\n return {\n onClick: (e: React.SyntheticEvent) => onChange(e, item),\n onMouseEnter: () => highlightIndex(index),\n };\n },\n );\n\n const handleInputFocus = useAction(\n (ctx, e: React.FocusEvent<HTMLInputElement>): void => {\n const { disabled, onFocus } = ctx.get(propsAtom);\n const focused = ctx.get(focusAtom);\n\n if (!disabled) {\n if (!focused) {\n focusAtom(ctx, true);\n }\n if (typeof onFocus === 'function') {\n onFocus(e);\n }\n }\n },\n );\n\n const handleInputBlur = useAction(\n (ctx, e: React.FocusEvent<HTMLInputElement>): void => {\n const { onBlur } = ctx.get(propsAtom);\n if (ctx.get(openAtom)) {\n inputElementFocus();\n return;\n }\n\n if (ctx.get(focusAtom)) {\n focusAtom(ctx, false);\n }\n\n if (typeof onBlur === 'function') {\n onBlur(e);\n }\n },\n );\n\n const handleToggleDropdown = useAction((ctx) => {\n const disabled = ctx.get(disabledAtom);\n if (ctx.get(openAtom)) {\n openAtom(ctx, false);\n focusAtom(ctx, false);\n } else if (!disabled) {\n openAtom(ctx, true);\n focusAtom(ctx, true);\n inputRef.current?.focus();\n }\n });\n\n useKeysRef({\n keys: keys as unknown as KeyHandlers,\n ref: inputRef,\n isActive: useAction((ctx) => !ctx.get(disabledAtom)),\n });\n\n useClickOutside({\n isActive: true,\n ignoreClicksInsideRefs: [\n dropdownRef,\n controlRef,\n ...(ignoreOutsideClicksRefs || []),\n ],\n handler: useAction((ctx) => {\n openAtom(ctx, false);\n focusAtom(ctx, false);\n }),\n });\n\n useUpdate((ctx, disable) => disable && openAtom(ctx, false), [disabledAtom]);\n\n useUpdate(\n (ctx, open = false) => {\n ctx.get(propsAtom).onDropdownOpen?.(open);\n highlightIndex(0);\n },\n [openAtom],\n );\n\n useUpdate(\n (ctx, inputValueProp = '') => {\n const inputValue = ctx.get(inputValueAtom);\n\n if (inputValueProp !== inputValue) {\n onInput(inputValueProp);\n }\n },\n [inputValuePropAtom],\n );\n\n useUpdate(\n (ctx, dropdownOpenProp = false) => openAtom(ctx, dropdownOpenProp),\n [dropdownOpenPropAtom],\n );\n\n return {\n openAtom,\n focusAtom,\n inputValueAtom,\n clearButtonAtom,\n onInput,\n getOptionActions,\n handleInputBlur,\n handleToggleDropdown,\n getHandleRemoveValue,\n inputRef,\n dropdownRef,\n controlRef,\n handleInputChange,\n handleInputClick,\n handleInputFocus,\n visibleItemsAtom,\n clearValue,\n optionsRefs,\n highlightedIndexAtom,\n valueAtom,\n getItemKeyAtom,\n onChangeAll,\n highlightIndex,\n onCreate,\n onChange,\n hasItemsAtom,\n groupsCounterAtom,\n dropdownZIndexAtom,\n };\n};\n"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import _defineProperty from"@babel/runtime/helpers/defineProperty";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){throw a}),f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){h=!0,f=a}),f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useDebounce}from"../../../hooks/useDebounce";import{useKeys}from"../../../hooks/useKeysDeprecated";import{useMutableRef}from"../../../hooks/useMutableRef";import{usePrevious}from"../../../hooks/usePrevious";import{useRefs}from"../../../hooks/useRefs";import{getCountedGroups,getGroups}from"../../../utils/getGroups";import{scrollToIndex,useHoistedState}from"./helpers";var isMultipleParams=function(a){return a.multiple},isNotMultipleParams=function(a){return!a.multiple},actions={setOpen:"setOpen",setSearch:"setSearch",highlightIndex:"highlightIndex"},initialState={searchValue:"",resolvedSearchValue:"",isOpen:!1,highlightedIndex:0,scrollToHighlighted:!1};export var isOptionForCreate=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isNotOptionForCreate=function(a){return a&&!Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isOptionForSelectAll=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionSelectAll")};export function useSelect(a){var b=a.items,c=a.dropdownRef,d=a.controlRef,e=a.disabled,f=void 0!==e&&e,g=a.multiple,h=void 0!==g&&g,i=a.getItemLabel,j=a.getItemKey,k=a.searchFunction,l=a.getItemGroupKey,m=a.groups,n=a.selectAll,o=void 0!==n&&n,p=a.getGroupKey,q=a.sortGroups,r=a.getItemDisabled,s=a.onFocus,t=a.onBlur,u=a.searchValue,v=a.onDropdownOpen,w=a.onSearchValueChange,x=a.dropdownOpen,y=a.ignoreOutsideClicksRefs,z=useRef(null),A=useState(!1),B=_slicedToArray(A,2),C=B[0],D=B[1],E=useMemo(function(){return a.value&&(Array.isArray(a.value)?a.value:[a.value])||[]},[a.value]),F=useHoistedState(initialState),G=_slicedToArray(F,2),H=G[0],I=H.searchValue,J=H.isOpen,K=H.highlightedIndex,L=H.resolvedSearchValue,M=H.scrollToHighlighted,N=G[1],O=useMutableRef(w),P=function(a,b){return-1!==i(a).toLocaleLowerCase().indexOf(b.toLocaleLowerCase())},Q=useMemo(function(){if(L&&""!==L){var c=b.filter(function(a){return k?k(a,L):P(a,L)});return[c,a.onCreate&&!c.length?{label:I,__optionForCreate:!0}:void 0]}return[b,void 0]},[b,L,a.onCreate]),R=_slicedToArray(Q,2),S=R[0],T=R[1],U=useMemo(function(){var b=getCountedGroups(getGroups(S,null!==m&&void 0!==m&&m.length?l:void 0,m,p,q),isMultipleParams(a)?a.value:[],o,j,r);return T?[T].concat(_toConsumableArray(b)):b},[E,o,S,m,l,r,p,q,T]),V=S.length+(T?1:0)+(o?U.length:0),W=useRefs(V,[J]),X=useMemo(function(){var b=!1;return 0<I.length&&(b=0===U.filter(function(a){return isOptionForCreate(a)||0<a.items.length||a.group}).length&&!a.onCreate),b},[U]),Y=0!==b.length,Z=useMemo(function(){return!isNotMultipleParams(a)&&!!o&&b.filter(function(a){return E.find(function(b){return j(b)===j(a)})}).length===b.length},[o,h,E,b]),$=function(){var a=0;if(0<E.length){var b,c=_createForOfIteratorHelper(U);try{for(c.s();!(b=c.n()).done;){var f=b.value;if(isOptionForCreate(f)){a++;continue}var d,e=_createForOfIteratorHelper(f.items);try{for(e.s();!(d=e.n()).done;){var g=d.value;if(isOptionForSelectAll(g))return a;if(j(g)===j(E[0]))return a;a++}}catch(a){e.e(a)}finally{e.f()}}}catch(a){c.e(a)}finally{c.f()}}return 0},aa=useCallback(function(a){N(function(b){return _objectSpread(_objectSpread({},b),{},{isOpen:a})},actions.setOpen)},[N]),ba=useDebounce(function(a){N(function(b){return b.resolvedSearchValue===a?b:_objectSpread(_objectSpread({},b),{},{resolvedSearchValue:a})},actions.setSearch)},300),ca=useCallback(function(a){N(function(b){return b.searchValue===a?b:_objectSpread(_objectSpread({},b),{},{searchValue:a||""})},actions.setSearch),ba(a||"")},[N,ba]),da=usePrevious(J),ea=useCallback(function(a,b){N(function(c){var d=Math.min(Math.max(0,"function"==typeof a?a(c.highlightedIndex):a),V-1);return c.highlightedIndex===d?c:_objectSpread(_objectSpread({},c),{},{highlightedIndex:d,scrollToHighlighted:b})},actions.highlightIndex)},[S,N,T]);useLayoutEffect(function(){if(null!==E&&!da&&J){var a=$();0<S.length&&scrollToIndex(a,c,W,function(){return ea(0,!1)})}});var fa=function(b,c){if(b.stopPropagation(),isMultipleParams(a)){var d,e=null===(d=a.value)||void 0===d?void 0:d.filter(function(a){return j(a)!==j(c)}),f=null!==e&&void 0!==e&&e.length?e:null;a.onChange(f,{e:b})}},ga=function(b,c){if(!(r&&r(c))){if(isMultipleParams(a)){var d=E.some(function(a){return j(a)===j(c)})?E.filter(function(a){return j(a)!==j(c)}):[].concat(_toConsumableArray(E),[c]),e=null!==d&&void 0!==d&&d.length?d:null;a.onChange(e,{e:b})}isNotMultipleParams(a)&&(a.onChange(c,{e:b}),aa(!1),ca(""))}},ha=function(b){var c=b.e,d=b.items;if(isMultipleParams(a)){var e=r?d.filter(function(a){return!r(a)}):d,f=[],g=[];if(E.forEach(function(a){e.find(function(b){return j(a)===j(b)})?f.push(a):g.push(a)}),f.length===e.length)a.onChange(g,{e:c});else{var h=[].concat(g,_toConsumableArray(e));a.onChange(h,{e:c})}}},ia=function(b,c){a.onCreate&&a.onCreate(c,{e:b,label:c}),aa(!1),ca("")},ja=function(b){if(isMultipleParams(a)){var c=null===E||void 0===E?void 0:E.filter(function(a){return null===r||void 0===r?void 0:r(a)}),d=c&&0<c.length?c:null;a.onChange(d,{e:b})}isNotMultipleParams(a)&&a.onChange(null,{e:b}),ca("")},ka=function(a,b){b.preventDefault(),f||aa(!0),ea(function(a){return a-1},!0)},la=function(a,b){b.preventDefault(),f||aa(!0),ea(function(a){return a+1},!0)},ma=useKeys({ArrowUp:ka,ArrowDown:la,PageUp:ka,PageDown:la,Home:ka,End:la,Enter:function Enter(a,b){if(J){(I||S[K])&&b.preventDefault();var c=function(a){var b,c=0,d=_createForOfIteratorHelper(U);try{for(d.s();!(b=d.n()).done;){var e=b.value;if(isOptionForCreate(e))return c++,[void 0,e];if(e.items.length+c>a)return[e,e.items[a-c]];c+=e.items.length}}catch(a){d.e(a)}finally{d.f()}return[void 0,void 0]},d=c(K),e=_slicedToArray(d,2),f=e[0],g=e[1];if(isOptionForCreate(g))return void ia(b,g.label);if(isOptionForSelectAll(g)){var h;return void ha({e:b,items:null!==(h=null===f||void 0===f?void 0:f.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==h?h:[]})}g&&ga(b,g)}else aa(!0)},Escape:function Escape(){aa(!1)},Tab:function Tab(a,b){J&&(b.preventDefault(),aa(!1))},Backspace:function Backspace(a,b){I||(h?fa(b,E[E.length-1]):ja(b))}});useClickOutside({isActive:J,ignoreClicksInsideRefs:[c,d].concat(_toConsumableArray(y||[])),handler:function handler(){aa(!1)}}),useEffect(function(){f&&aa(!1)},[f]),useEffect(function(){var a=$();ea(a,!0)},[ea]),useEffect(function(){0<S.length&&M&&scrollToIndex(K,c,W,function(){return ea(0,!1)})},[K]);return useEffect(function(){ca(u)},[u]),useEffect(function(){var a;null===(a=c.current)||void 0===a?void 0:a.scrollTo({top:0})},[L]),useEffect(function(){null===v||void 0===v?void 0:v(J)},[J]),useEffect(function(){var a;null===(a=O.current)||void 0===a?void 0:a.call(O,I)},[I]),useEffect(function(){aa(x||!1)},[x]),{isOpen:J,isFocused:C,highlightedIndex:K,visibleItems:U,highlightIndex:ea,getOptionProps:function getOptionProps(a){var b=a.index,c=a.item,d=a.keyPrefix;if(isOptionForCreate(c))return{onClick:function onClick(a){ia(a,c.label)},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!1,hovered:b===K,key:"".concat(d,"__optionForCreate")};if(isOptionForSelectAll(c)){var f=function(){var a,b=_createForOfIteratorHelper(U);try{for(b.s();!(a=b.n()).done;){var e=a.value;if(isOptionForCreate(e))break;if(e.key===c.groupKey){var d;return null!==(d=null===e||void 0===e?void 0:e.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==d?d:[]}}}catch(a){b.e(a)}finally{b.f()}return[]};return{onClick:function onClick(a){ha({e:a,items:f()})},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!1,hovered:b===K,key:"".concat(d,"__optionForSelectAll")}}var e=j(c);return{onClick:function onClick(a){ga(a,c)},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!!E.find(function(a){return j(a)===e}),hovered:b===K,key:"".concat(d).concat(e)}},handleInputFocus:function handleInputFocus(a){f||(!C&&D(!0),"function"==typeof s&&s(a))},handleInputBlur:function handleInputBlur(a){if(J){var b;return void(null===(b=z.current)||void 0===b?void 0:b.focus())}C&&D(!1),"function"==typeof t&&t(a)},handleToggleDropdown:function handleToggleDropdown(){if(J)aa(!1),D(!1);else{var a;aa(!0),D(!0),null===(a=z.current)||void 0===a?void 0:a.focus()}},handleInputClick:function handleInputClick(){if(f||aa(!J),h){var a;null===(a=z.current)||void 0===a?void 0:a.focus()}},inputRef:z,getKeyProps:ma,handleInputChange:function handleInputChange(a){f||!h&&0<E.length||(ca(a.target.value),aa(!0))},searchValue:I,clearValue:ja,getHandleRemoveValue:function getHandleRemoveValue(a){return function(b){return fa(b,a)}},notFound:X,hasItems:Y,allItemsSelected:Z,optionsRefs:W}}
1
+ import _defineProperty from"@babel/runtime/helpers/defineProperty";import _toConsumableArray from"@babel/runtime/helpers/toConsumableArray";import _slicedToArray from"@babel/runtime/helpers/slicedToArray";function ownKeys(a,b){var c=Object.keys(a);if(Object.getOwnPropertySymbols){var d=Object.getOwnPropertySymbols(a);b&&(d=d.filter(function(b){return Object.getOwnPropertyDescriptor(a,b).enumerable})),c.push.apply(c,d)}return c}function _objectSpread(a){for(var b,c=1;c<arguments.length;c++)b=null==arguments[c]?{}:arguments[c],c%2?ownKeys(Object(b),!0).forEach(function(c){_defineProperty(a,c,b[c])}):Object.getOwnPropertyDescriptors?Object.defineProperties(a,Object.getOwnPropertyDescriptors(b)):ownKeys(Object(b)).forEach(function(c){Object.defineProperty(a,c,Object.getOwnPropertyDescriptor(b,c))});return a}function _createForOfIteratorHelper(a,b){var c="undefined"!=typeof Symbol&&a[Symbol.iterator]||a["@@iterator"];if(!c){if(Array.isArray(a)||(c=_unsupportedIterableToArray(a))||b&&a&&"number"==typeof a.length){c&&(a=c);var d=0,e=function(){};return{s:e,n:function n(){return d>=a.length?{done:!0}:{done:!1,value:a[d++]}},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){throw a}),f:e}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var f,g=!0,h=!1;return{s:function s(){c=c.call(a)},n:function n(){var a=c.next();return g=a.done,a},e:function(a){function b(){return a.apply(this,arguments)}return b.toString=function(){return a.toString()},b}(function(a){h=!0,f=a}),f:function f(){try{g||null==c["return"]||c["return"]()}finally{if(h)throw f}}}}function _unsupportedIterableToArray(a,b){if(a){if("string"==typeof a)return _arrayLikeToArray(a,b);var c=Object.prototype.toString.call(a).slice(8,-1);return"Object"===c&&a.constructor&&(c=a.constructor.name),"Map"===c||"Set"===c?Array.from(a):"Arguments"===c||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(c)?_arrayLikeToArray(a,b):void 0}}function _arrayLikeToArray(a,b){(null==b||b>a.length)&&(b=a.length);for(var c=0,d=Array(b);c<b;c++)d[c]=a[c];return d}import{useCallback,useEffect,useLayoutEffect,useMemo,useRef,useState}from"react";import{useClickOutside}from"../../../hooks/useClickOutside";import{useDebounce}from"../../../hooks/useDebounce";import{useKeys}from"../../../hooks/useKeysDeprecated";import{useMutableRef}from"../../../hooks/useMutableRef";import{usePrevious}from"../../../hooks/usePrevious";import{useRefs}from"../../../hooks/useRefs";import{getCountedGroups,getGroups}from"../../../utils/getGroups";import{scrollToIndex,useHoistedState}from"./helpers";var isMultipleParams=function(a){return a.multiple},isNotMultipleParams=function(a){return!a.multiple},actions={setOpen:"setOpen",setSearch:"setSearch",highlightIndex:"highlightIndex"},initialState={searchValue:"",resolvedSearchValue:"",isOpen:!1,highlightedIndex:0,scrollToHighlighted:!1};export var isOptionForCreate=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isNotOptionForCreate=function(a){return a&&!Object.prototype.hasOwnProperty.call(a,"__optionForCreate")};export var isOptionForSelectAll=function(a){return a&&Object.prototype.hasOwnProperty.call(a,"__optionSelectAll")};export function useSelect(a){var b=a.items,c=a.dropdownRef,d=a.controlRef,e=a.disabled,f=void 0!==e&&e,g=a.multiple,h=void 0!==g&&g,i=a.getItemLabel,j=a.getItemKey,k=a.searchFunction,l=a.getItemGroupKey,m=a.groups,n=a.selectAll,o=void 0!==n&&n,p=a.getGroupKey,q=a.sortGroups,r=a.getItemDisabled,s=a.onFocus,t=a.onBlur,u=a.searchValue,v=a.onDropdownOpen,w=a.onSearchValueChange,x=a.dropdownOpen,y=a.ignoreOutsideClicksRefs,z=useRef(null),A=useState(!1),B=_slicedToArray(A,2),C=B[0],D=B[1],E=useMemo(function(){return a.value&&(Array.isArray(a.value)?a.value:[a.value])||[]},[a.value]),F=useHoistedState(initialState),G=_slicedToArray(F,2),H=G[0],I=H.searchValue,J=H.isOpen,K=H.highlightedIndex,L=H.resolvedSearchValue,M=H.scrollToHighlighted,N=G[1],O=useMutableRef(w),P=function(a,b){return-1!==i(a).toLocaleLowerCase().indexOf(b.toLocaleLowerCase())},Q=useMemo(function(){if(L&&""!==L){var c=b.filter(function(a){return k?k(a,L):P(a,L)});return[c,a.onCreate&&!c.length?{label:I,__optionForCreate:!0}:void 0]}return[b,void 0]},[b,L,a.onCreate]),R=_slicedToArray(Q,2),S=R[0],T=R[1],U=useMemo(function(){var b=getCountedGroups(getGroups(S,null!==m&&void 0!==m&&m.length?l:void 0,m,p,q),isMultipleParams(a)?a.value:[],o,j,r);return T?[T].concat(_toConsumableArray(b)):b},[E,o,S,m,l,r,p,q,T]),V=S.length+(T?1:0)+(o?U.length:0),W=useRefs(V,[J]),X=useMemo(function(){var b=!1;return 0<I.length&&(b=0===U.filter(function(a){return isOptionForCreate(a)||0<a.items.length||a.group}).length&&!a.onCreate),b},[U]),Y=0!==b.length,Z=useMemo(function(){return!isNotMultipleParams(a)&&!!o&&b.filter(function(a){return E.find(function(b){return j(b)===j(a)})}).length===b.length},[o,h,E,b]),$=function(){var a=0;if(0<E.length){var b,c=_createForOfIteratorHelper(U);try{for(c.s();!(b=c.n()).done;){var f=b.value;if(isOptionForCreate(f)){a++;continue}var d,e=_createForOfIteratorHelper(f.items);try{for(e.s();!(d=e.n()).done;){var g=d.value;if(isOptionForSelectAll(g))return a;if(j(g)===j(E[0]))return a;a++}}catch(a){e.e(a)}finally{e.f()}}}catch(a){c.e(a)}finally{c.f()}}return 0},aa=useCallback(function(a){N(function(b){return _objectSpread(_objectSpread({},b),{},{isOpen:a})},actions.setOpen)},[N]),ba=useDebounce(function(a){N(function(b){return b.resolvedSearchValue===a?b:_objectSpread(_objectSpread({},b),{},{resolvedSearchValue:a})},actions.setSearch)},300),ca=useCallback(function(a){N(function(b){return b.searchValue===a?b:_objectSpread(_objectSpread({},b),{},{searchValue:a||""})},actions.setSearch),ba(a||"")},[N,ba]),da=usePrevious(J),ea=useCallback(function(a,b){N(function(c){var d=Math.min(Math.max(0,"function"==typeof a?a(c.highlightedIndex):a),V-1);return c.highlightedIndex===d?c:_objectSpread(_objectSpread({},c),{},{highlightedIndex:d,scrollToHighlighted:b})},actions.highlightIndex)},[S,N,T]);useLayoutEffect(function(){if(null!==E&&!da&&J){var a=$();0<S.length&&scrollToIndex(a,c,W,function(){return ea(0,!1)})}});var fa=function(b,c){if(b.stopPropagation(),isMultipleParams(a)){var d,e=null===(d=a.value)||void 0===d?void 0:d.filter(function(a){return j(a)!==j(c)}),f=null!==e&&void 0!==e&&e.length?e:null;a.onChange(f,{e:b})}},ga=function(b,c){if(!(r&&r(c))){if(isMultipleParams(a)){var d=E.some(function(a){return j(a)===j(c)})?E.filter(function(a){return j(a)!==j(c)}):[].concat(_toConsumableArray(E),[c]),e=null!==d&&void 0!==d&&d.length?d:null;a.onChange(e,{e:b})}isNotMultipleParams(a)&&(a.onChange(c,{e:b}),aa(!1),ca(""))}},ha=function(b){var c=b.e,d=b.items;if(isMultipleParams(a)){var e=r?d.filter(function(a){return!r(a)}):d,f=[],g=[];if(E.forEach(function(a){e.find(function(b){return j(a)===j(b)})?f.push(a):g.push(a)}),f.length===e.length)a.onChange(g,{e:c});else{var h=[].concat(g,_toConsumableArray(e));a.onChange(h,{e:c})}}},ia=function(b,c){a.onCreate&&a.onCreate(c,{e:b,label:c}),aa(!1),ca("")},ja=function(b){if(isMultipleParams(a)){var c=null===E||void 0===E?void 0:E.filter(function(a){return null===r||void 0===r?void 0:r(a)}),d=c&&0<c.length?c:null;a.onChange(d,{e:b})}isNotMultipleParams(a)&&a.onChange(null,{e:b}),ca("")},ka=function(a,b){b.preventDefault(),f||aa(!0),ea(function(a){return a-1},!0)},la=function(a,b){b.preventDefault(),f||aa(!0),ea(function(a){return a+1},!0)},ma=useKeys({ArrowUp:ka,ArrowDown:la,PageUp:ka,PageDown:la,Home:ka,End:la,Enter:function Enter(a,b){if(J){(I||S[K])&&b.preventDefault();var c=function(a){var b,c=0,d=_createForOfIteratorHelper(U);try{for(d.s();!(b=d.n()).done;){var e=b.value;if(isOptionForCreate(e))return c++,[void 0,e];if(e.items.length+c>a)return[e,e.items[a-c]];c+=e.items.length}}catch(a){d.e(a)}finally{d.f()}return[void 0,void 0]},d=c(K),e=_slicedToArray(d,2),f=e[0],g=e[1];if(isOptionForCreate(g))return void ia(b,g.label);if(isOptionForSelectAll(g)){var h;return void ha({e:b,items:null!==(h=null===f||void 0===f?void 0:f.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==h?h:[]})}g&&ga(b,g)}else aa(!0)},Escape:function Escape(){aa(!1)},Tab:function Tab(a,b){J&&(b.preventDefault(),aa(!1))},Backspace:function Backspace(a,b){I||(h?fa(b,E[E.length-1]):ja(b))}});useClickOutside({isActive:!0,ignoreClicksInsideRefs:[c,d].concat(_toConsumableArray(y||[])),handler:function handler(){D(!1),aa(!1)}}),useEffect(function(){f&&aa(!1)},[f]),useEffect(function(){var a=$();ea(a,!0)},[ea]),useEffect(function(){0<S.length&&M&&scrollToIndex(K,c,W,function(){return ea(0,!1)})},[K]);return useEffect(function(){ca(u)},[u]),useEffect(function(){var a;null===(a=c.current)||void 0===a?void 0:a.scrollTo({top:0})},[L]),useEffect(function(){null===v||void 0===v?void 0:v(J)},[J]),useEffect(function(){var a;null===(a=O.current)||void 0===a?void 0:a.call(O,I)},[I]),useEffect(function(){aa(x||!1)},[x]),{isOpen:J,isFocused:C,highlightedIndex:K,visibleItems:U,highlightIndex:ea,getOptionProps:function getOptionProps(a){var b=a.index,c=a.item,d=a.keyPrefix;if(isOptionForCreate(c))return{onClick:function onClick(a){ia(a,c.label)},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!1,hovered:b===K,key:"".concat(d,"__optionForCreate")};if(isOptionForSelectAll(c)){var f=function(){var a,b=_createForOfIteratorHelper(U);try{for(b.s();!(a=b.n()).done;){var e=a.value;if(isOptionForCreate(e))break;if(e.key===c.groupKey){var d;return null!==(d=null===e||void 0===e?void 0:e.items.filter(function(a){return!isOptionForSelectAll(a)}))&&void 0!==d?d:[]}}}catch(a){b.e(a)}finally{b.f()}return[]};return{onClick:function onClick(a){ha({e:a,items:f()})},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!1,hovered:b===K,key:"".concat(d,"__optionForSelectAll")}}var e=j(c);return{onClick:function onClick(a){ga(a,c)},onMouseEnter:function onMouseEnter(){ea(b,!1)},active:!!E.find(function(a){return j(a)===e}),hovered:b===K,key:"".concat(d).concat(e)}},handleInputFocus:function handleInputFocus(a){f||(!C&&D(!0),"function"==typeof s&&s(a))},handleInputBlur:function handleInputBlur(a){if(J){var b;return void(null===(b=z.current)||void 0===b?void 0:b.focus())}C&&D(!1),"function"==typeof t&&t(a)},handleToggleDropdown:function handleToggleDropdown(){if(J)aa(!1),D(!1);else{var a;aa(!0),D(!0),null===(a=z.current)||void 0===a?void 0:a.focus()}},handleInputClick:function handleInputClick(){if(f||aa(!J),h){var a;null===(a=z.current)||void 0===a?void 0:a.focus()}},inputRef:z,getKeyProps:ma,handleInputChange:function handleInputChange(a){f||!h&&0<E.length||(ca(a.target.value),aa(!0))},searchValue:I,clearValue:ja,getHandleRemoveValue:function getHandleRemoveValue(a){return function(b){return fa(b,a)}},notFound:X,hasItems:Y,allItemsSelected:Z,optionsRefs:W}}
2
2
  //# sourceMappingURL=useSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"useSelect.js","names":["useCallback","useEffect","useLayoutEffect","useMemo","useRef","useState","useClickOutside","useDebounce","useKeys","useMutableRef","usePrevious","useRefs","getCountedGroups","getGroups","scrollToIndex","useHoistedState","isMultipleParams","params","multiple","isNotMultipleParams","actions","setOpen","setSearch","highlightIndex","initialState","searchValue","resolvedSearchValue","isOpen","highlightedIndex","scrollToHighlighted","isOptionForCreate","Object","prototype","hasOwnProperty","call","isNotOptionForCreate","isOptionForSelectAll","useSelect","items","dropdownRef","controlRef","disabled","getItemLabel","getItemKey","searchFunction","getItemGroupKey","groups","selectAll","getGroupKey","sortGroups","getItemDisabled","onFocus","onBlur","searchValueProp","onDropdownOpen","onSearchValueChange","dropdownOpen","ignoreOutsideClicksRefs","inputRef","isFocused","setIsFocused","value","Array","isArray","setState","onSearchValueChangeRef","searchFunctionDefault","item","toLocaleLowerCase","indexOf","filteredOptions","filter","onCreate","length","label","__optionForCreate","optionForCreate","visibleItems","resultGroups","maxHighlightIndex","optionsRefs","notFound","flag","group","hasItems","allItemsSelected","el","find","getSelectedOptionIndex","index","newIsOpen","old","setResolvedSearch","prevIsOpen","indexForHighlight","newIndex","Math","min","max","currentHighlightIndex","removeValue","e","valueItem","stopPropagation","newValue","val","onChange","some","onChangeAll","parametrs","nonDisabledItems","currentGroupValues","withoutGroupValues","forEach","push","clearValue","results","ArrowUp","_","preventDefault","ArrowDown","getKeyProps","PageUp","PageDown","Home","End","Enter","getData","counter","Escape","Tab","Backspace","isActive","ignoreClicksInsideRefs","handler","current","scrollTo","top","getOptionProps","keyPrefix","onClick","onMouseEnter","active","hovered","key","getItems","groupKey","handleInputFocus","handleInputBlur","focus","handleToggleDropdown","handleInputClick","handleInputChange","target","getHandleRemoveValue"],"sources":["../../../../../../src/components/SelectComponents/useSelect/useSelect.ts"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useDebounce } from '##/hooks/useDebounce';\nimport { KeyHandler, useKeys } from '##/hooks/useKeysDeprecated';\nimport { useMutableRef } from '##/hooks/useMutableRef';\nimport { usePrevious } from '##/hooks/usePrevious';\nimport { useRefs } from '##/hooks/useRefs';\nimport {\n CountedGroup,\n getCountedGroups,\n getGroups,\n SelectAllItem,\n} from '##/utils/getGroups';\n\nimport { scrollToIndex, useHoistedState } from './helpers';\n\ntype IndexForHighlight = number | ((oldIndex: number) => number);\n\ntype Group<ITEM, GROUP> = {\n items: ITEM[];\n key: string | number;\n group?: GROUP;\n};\ntype GetItemGroupKey<ITEM> = (item: ITEM) => string | number | undefined;\ntype GetGroupKey<GROUP> = (item: GROUP) => string | number | undefined;\ntype SortGroups<ITEM, GROUP> = (\n a: Group<ITEM, GROUP>,\n b: Group<ITEM, GROUP>,\n) => number;\n\ntype OnChangeProp<ITEM, MULTIPLE extends boolean> = (\n value: (MULTIPLE extends true ? ITEM[] : ITEM) | null,\n props: {\n e: React.SyntheticEvent;\n },\n) => void;\n\ntype ValueProp<ITEM, MULTIPLE extends boolean> =\n | (MULTIPLE extends true ? ITEM[] : ITEM)\n | null\n | undefined;\n\nexport type OptionForCreate = {\n label: string;\n __optionForCreate: boolean;\n};\n\nexport type SelectProps<ITEM, GROUP, MULTIPLE extends boolean> = {\n getItemGroupKey?: GetItemGroupKey<ITEM> | undefined;\n getGroupKey?: GetGroupKey<GROUP>;\n sortGroups?: SortGroups<ITEM, GROUP>;\n groups?: GROUP[];\n items: ITEM[];\n dropdownRef: React.MutableRefObject<HTMLDivElement | null>;\n controlRef: React.MutableRefObject<HTMLDivElement | null>;\n disabled?: boolean;\n selectAll?: boolean;\n getItemLabel: (item: ITEM) => string;\n getItemKey: (item: ITEM) => string | number;\n getItemDisabled?: (item: ITEM) => boolean | undefined;\n searchFunction?: (item: ITEM, searchValue: string) => boolean;\n onCreate?: (\n label: string,\n props: { e: React.SyntheticEvent; label: string },\n ) => void;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n multiple: boolean;\n searchValue?: string;\n onChange: OnChangeProp<ITEM, MULTIPLE>;\n value: ValueProp<ITEM, MULTIPLE>;\n dropdownOpen?: boolean;\n onDropdownOpen?: (isOpen: boolean) => void;\n onSearchValueChange?: (value: string) => void;\n ignoreOutsideClicksRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;\n};\n\nexport type OptionProps<ITEM> = {\n index: number;\n item: ITEM | OptionForCreate | SelectAllItem;\n keyPrefix: string | number;\n};\n\nexport type GetOptionPropsResult = {\n onClick: (e: React.MouseEvent) => void;\n onMouseEnter: (e: React.MouseEvent) => void;\n active: boolean;\n hovered: boolean;\n key: string | number;\n};\n\nconst isMultipleParams = <ITEM, GROUP>(\n params: SelectProps<ITEM, GROUP, boolean>,\n): params is SelectProps<ITEM, GROUP, true> => {\n return params.multiple;\n};\n\nconst isNotMultipleParams = <ITEM, GROUP>(\n params: SelectProps<ITEM, GROUP, boolean>,\n): params is SelectProps<ITEM, GROUP, false> => {\n return !params.multiple;\n};\n\nconst actions = {\n setOpen: 'setOpen',\n setSearch: 'setSearch',\n highlightIndex: 'highlightIndex',\n};\n\nconst initialState = {\n searchValue: '',\n resolvedSearchValue: '',\n isOpen: false,\n highlightedIndex: 0,\n scrollToHighlighted: false,\n};\n\nexport const isOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP> | ITEM,\n): params is OptionForCreate => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isNotOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP>,\n): params is Group<ITEM, GROUP> => {\n return (\n params && !Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isOptionForSelectAll = <ITEM>(\n params: SelectAllItem | ITEM,\n): params is SelectAllItem => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionSelectAll')\n );\n};\n\nexport function useSelect<ITEM, GROUP, MULTIPLE extends boolean>(\n params: SelectProps<ITEM, GROUP, MULTIPLE>,\n) {\n const {\n items,\n dropdownRef,\n controlRef,\n disabled = false,\n multiple = false,\n getItemLabel,\n getItemKey,\n searchFunction,\n getItemGroupKey,\n groups,\n selectAll = false,\n getGroupKey,\n sortGroups,\n getItemDisabled,\n onFocus,\n onBlur,\n searchValue: searchValueProp,\n onDropdownOpen,\n onSearchValueChange,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n } = params;\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [isFocused, setIsFocused] = useState(false);\n\n const value = useMemo(\n () =>\n (params.value &&\n (Array.isArray(params.value) ? params.value : [params.value])) ||\n [],\n [params.value],\n );\n\n const [\n {\n searchValue,\n isOpen,\n highlightedIndex,\n resolvedSearchValue,\n scrollToHighlighted,\n },\n setState,\n ] = useHoistedState(initialState);\n\n const onSearchValueChangeRef = useMutableRef(onSearchValueChange);\n\n const searchFunctionDefault = (item: ITEM, searchValue: string) =>\n getItemLabel(item)\n .toLocaleLowerCase()\n .indexOf(searchValue.toLocaleLowerCase()) !== -1;\n\n const [filteredOptions, optionForCreate] = useMemo(() => {\n if (resolvedSearchValue && resolvedSearchValue !== '') {\n const filteredOptions = items.filter((item) =>\n searchFunction\n ? searchFunction(item, resolvedSearchValue)\n : searchFunctionDefault(item, resolvedSearchValue),\n );\n\n const optionForCreate: OptionForCreate = {\n label: searchValue,\n __optionForCreate: true,\n };\n\n return [\n filteredOptions,\n params.onCreate && !filteredOptions.length\n ? optionForCreate\n : undefined,\n ] as const;\n }\n return [items, undefined] as const;\n }, [items, resolvedSearchValue, params.onCreate]);\n\n const visibleItems = useMemo(() => {\n const resultGroups = getCountedGroups(\n getGroups(\n filteredOptions,\n groups?.length ? getItemGroupKey : undefined,\n groups,\n getGroupKey,\n sortGroups,\n ),\n isMultipleParams(params) ? params.value : [],\n selectAll,\n getItemKey,\n getItemDisabled,\n );\n\n return optionForCreate ? [optionForCreate, ...resultGroups] : resultGroups;\n }, [\n value,\n selectAll,\n filteredOptions,\n groups,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n sortGroups,\n optionForCreate,\n ]);\n\n const maxHighlightIndex =\n // количество опций\n filteredOptions.length +\n // кнопка для создания\n (optionForCreate ? 1 : 0) +\n // кнопки выбрать все\n (selectAll ? visibleItems.length : 0);\n\n const optionsRefs = useRefs<HTMLDivElement>(maxHighlightIndex, [isOpen]);\n\n const notFound = useMemo(() => {\n let flag = false;\n if (searchValue.length > 0) {\n flag =\n visibleItems.filter(\n (group) =>\n isOptionForCreate(group) || group.items.length > 0 || group.group,\n ).length === 0 && !params.onCreate;\n }\n return flag;\n }, [visibleItems]);\n\n const hasItems = items.length !== 0;\n\n const allItemsSelected = useMemo(() => {\n if (isNotMultipleParams(params)) {\n return false;\n }\n if (selectAll) {\n return (\n items.filter((el) =>\n value.find((item) => getItemKey(item) === getItemKey(el)),\n ).length === items.length\n );\n }\n\n return false;\n }, [selectAll, multiple, value, items]);\n\n const getSelectedOptionIndex = (): number => {\n let index = 0;\n if (value.length > 0) {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n index++;\n // eslint-disable-next-line no-continue\n continue;\n }\n for (const item of group.items) {\n if (isOptionForSelectAll(item)) {\n return index;\n }\n if (getItemKey(item) === getItemKey(value[0])) {\n return index;\n }\n index++;\n }\n }\n }\n\n return 0;\n };\n\n // Actions\n\n const setOpen = useCallback(\n (newIsOpen: boolean) => {\n setState(\n (old) => ({\n ...old,\n isOpen: newIsOpen,\n }),\n actions.setOpen,\n );\n },\n [setState],\n );\n\n const setResolvedSearch = useDebounce((value: string) => {\n setState((old) => {\n if (old.resolvedSearchValue === value) {\n return old;\n }\n return {\n ...old,\n resolvedSearchValue: value,\n };\n }, actions.setSearch);\n }, 300);\n\n const setSearch = useCallback(\n (value: string | undefined) => {\n setState((old) => {\n if (old.searchValue === value) {\n return old;\n }\n return {\n ...old,\n searchValue: value || '',\n };\n }, actions.setSearch);\n setResolvedSearch(value || '');\n },\n [setState, setResolvedSearch],\n );\n\n const prevIsOpen = usePrevious(isOpen);\n\n const highlightIndex = useCallback(\n (indexForHighlight: IndexForHighlight, scrollToHighlighted: boolean) => {\n setState((old) => {\n const newIndex = Math.min(\n Math.max(\n 0,\n typeof indexForHighlight === 'function'\n ? indexForHighlight(old.highlightedIndex)\n : indexForHighlight,\n ),\n maxHighlightIndex - 1,\n );\n\n if (old.highlightedIndex === newIndex) {\n return old;\n }\n\n return {\n ...old,\n highlightedIndex: newIndex,\n scrollToHighlighted,\n };\n }, actions.highlightIndex);\n },\n [filteredOptions, setState, optionForCreate],\n );\n\n useLayoutEffect(() => {\n if (value !== null && !prevIsOpen && isOpen) {\n const currentHighlightIndex = getSelectedOptionIndex();\n if (filteredOptions.length > 0) {\n scrollToIndex(currentHighlightIndex, dropdownRef, optionsRefs, () =>\n highlightIndex(0, false),\n );\n }\n }\n });\n\n const removeValue = (e: React.SyntheticEvent, valueItem: ITEM) => {\n e.stopPropagation();\n if (isMultipleParams(params)) {\n const newValue = params.value?.filter(\n (item) => getItemKey(item) !== getItemKey(valueItem),\n );\n const val = newValue?.length ? newValue : null;\n params.onChange(val, {\n e,\n });\n }\n };\n\n const onChange = (e: React.SyntheticEvent, item: ITEM) => {\n if (getItemDisabled && getItemDisabled(item)) {\n return;\n }\n if (isMultipleParams(params)) {\n const newValue = value.some(\n (value) => getItemKey(value) === getItemKey(item),\n )\n ? value.filter((value) => getItemKey(value) !== getItemKey(item))\n : [...value, item];\n const val = newValue?.length ? newValue : null;\n params.onChange(val, { e });\n }\n if (isNotMultipleParams(params)) {\n params.onChange(item, { e });\n setOpen(false);\n setSearch('');\n }\n };\n\n const onChangeAll = (parametrs: {\n e: React.SyntheticEvent;\n items: ITEM[];\n }) => {\n const { e, items } = parametrs;\n if (isMultipleParams(params)) {\n const nonDisabledItems = getItemDisabled\n ? items.filter((item) => !getItemDisabled(item))\n : items;\n\n const currentGroupValues: ITEM[] = [];\n const withoutGroupValues: ITEM[] = [];\n value.forEach((el) => {\n if (\n nonDisabledItems.find((item) => getItemKey(el) === getItemKey(item))\n ) {\n currentGroupValues.push(el);\n } else {\n withoutGroupValues.push(el);\n }\n });\n if (currentGroupValues.length === nonDisabledItems.length) {\n params.onChange(withoutGroupValues, { e });\n } else {\n const val = [...withoutGroupValues, ...nonDisabledItems];\n params.onChange(val, {\n e,\n });\n }\n }\n };\n\n const onCreate = (e: React.SyntheticEvent, label: string) => {\n params.onCreate && params.onCreate(label, { e, label });\n setOpen(false);\n setSearch('');\n };\n\n // Handlers\n\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>): void => {\n if (!disabled && !(!multiple && value.length > 0)) {\n setSearch(e.target.value);\n setOpen(true);\n }\n };\n\n const handleInputClick = (): void => {\n !disabled && setOpen(!isOpen);\n\n if (multiple) {\n inputRef.current?.focus();\n }\n };\n\n const clearValue = (e: React.SyntheticEvent) => {\n if (isMultipleParams(params)) {\n const results = value?.filter((item) => getItemDisabled?.(item));\n const val = results && results.length > 0 ? results : null;\n params.onChange(val, {\n e,\n });\n }\n if (isNotMultipleParams(params)) {\n params.onChange(null, { e });\n }\n setSearch('');\n };\n\n const getHandleRemoveValue = (item: ITEM) => (e: React.SyntheticEvent) =>\n removeValue(e, item);\n\n // Prop Getters\n\n const ArrowUp: KeyHandler = (_, e): void => {\n e.preventDefault();\n !disabled && setOpen(true);\n highlightIndex((old) => old - 1, true);\n };\n\n const ArrowDown: KeyHandler = (_, e): void => {\n e.preventDefault();\n !disabled && setOpen(true);\n highlightIndex((old) => old + 1, true);\n };\n\n const Enter: KeyHandler = (_, e): void => {\n if (isOpen) {\n if (searchValue || filteredOptions[highlightedIndex]) {\n e.preventDefault();\n }\n\n const getData = (\n index: number,\n ): [\n CountedGroup<ITEM, GROUP> | undefined,\n SelectAllItem | OptionForCreate | ITEM | undefined,\n ] => {\n let counter = 0;\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n counter++;\n return [undefined, group];\n }\n if (group.items.length + counter > index) {\n return [group, group.items[index - counter]];\n }\n counter += group.items.length;\n }\n return [undefined, undefined];\n };\n\n const [group, item] = getData(highlightedIndex);\n\n if (isOptionForCreate(item)) {\n onCreate(e, item.label);\n return;\n }\n\n if (isOptionForSelectAll(item)) {\n onChangeAll({\n e,\n items:\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? [],\n });\n return;\n }\n\n if (item) {\n onChange(e, item);\n }\n } else {\n setOpen(true);\n }\n };\n\n const Escape: KeyHandler = (): void => {\n setOpen(false);\n };\n\n const Tab: KeyHandler = (_, e): void => {\n if (isOpen) {\n e.preventDefault();\n setOpen(false);\n }\n };\n\n const Backspace: KeyHandler = (_, e): void => {\n if (searchValue) {\n return;\n }\n if (multiple) {\n removeValue(e, value[value.length - 1]);\n } else {\n clearValue(e);\n }\n };\n\n const getKeyProps = useKeys({\n ArrowUp,\n ArrowDown,\n PageUp: ArrowUp,\n PageDown: ArrowDown,\n Home: ArrowUp,\n End: ArrowDown,\n Enter,\n Escape,\n Tab,\n Backspace,\n });\n\n const getOptionProps = ({\n index,\n item,\n keyPrefix,\n }: OptionProps<ITEM>): GetOptionPropsResult => {\n if (isOptionForCreate(item)) {\n return {\n onClick: (e: React.SyntheticEvent) => {\n onCreate(e, item.label);\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: false,\n hovered: index === highlightedIndex,\n key: `${keyPrefix}__optionForCreate`,\n };\n }\n if (isOptionForSelectAll(item)) {\n const getItems = (): ITEM[] => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n break;\n }\n if (group.key === item.groupKey) {\n return (\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? []\n );\n }\n }\n return [];\n };\n return {\n onClick: (e: React.SyntheticEvent) => {\n onChangeAll({ e, items: getItems() });\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: false,\n hovered: index === highlightedIndex,\n key: `${keyPrefix}__optionForSelectAll`,\n };\n }\n const key = getItemKey(item);\n return {\n onClick: (e: React.SyntheticEvent) => {\n onChange(e, item);\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: Boolean(value.find((item) => getItemKey(item) === key)),\n hovered: index === highlightedIndex,\n key: `${keyPrefix}${key}`,\n };\n };\n\n useClickOutside({\n isActive: isOpen,\n ignoreClicksInsideRefs: [\n dropdownRef,\n controlRef,\n ...(ignoreOutsideClicksRefs || []),\n ],\n handler: () => {\n setOpen(false);\n },\n });\n\n useEffect(() => {\n if (disabled) {\n setOpen(false);\n }\n }, [disabled]);\n\n useEffect(() => {\n const currentHighlightIndex = getSelectedOptionIndex();\n highlightIndex(currentHighlightIndex, true);\n }, [highlightIndex]);\n\n useEffect(() => {\n if (filteredOptions.length > 0 && scrollToHighlighted) {\n scrollToIndex(highlightedIndex, dropdownRef, optionsRefs, () =>\n highlightIndex(0, false),\n );\n }\n }, [highlightedIndex]);\n\n const handleInputFocus = (e: React.FocusEvent<HTMLInputElement>): void => {\n if (!disabled) {\n if (!isFocused) {\n setIsFocused(true);\n }\n if (typeof onFocus === 'function') {\n onFocus(e);\n }\n }\n };\n\n const handleInputBlur = (e: React.FocusEvent<HTMLInputElement>): void => {\n if (isOpen) {\n inputRef.current?.focus();\n return;\n }\n\n if (isFocused) {\n setIsFocused(false);\n }\n\n if (typeof onBlur === 'function') {\n onBlur(e);\n }\n };\n\n const handleToggleDropdown = (): void => {\n if (isOpen) {\n setOpen(false);\n setIsFocused(false);\n } else {\n setOpen(true);\n setIsFocused(true);\n inputRef.current?.focus();\n }\n };\n\n useEffect(() => {\n setSearch(searchValueProp);\n }, [searchValueProp]);\n\n useEffect(() => {\n dropdownRef.current?.scrollTo({ top: 0 });\n }, [resolvedSearchValue]);\n\n useEffect(() => {\n onDropdownOpen?.(isOpen);\n }, [isOpen]);\n\n useEffect(() => {\n onSearchValueChangeRef.current?.(searchValue);\n }, [searchValue]);\n\n useEffect(() => {\n setOpen(dropdownOpen || false);\n }, [dropdownOpen]);\n\n return {\n isOpen,\n isFocused,\n highlightedIndex,\n visibleItems,\n highlightIndex,\n getOptionProps,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n handleInputClick,\n inputRef,\n getKeyProps,\n handleInputChange,\n searchValue,\n clearValue,\n getHandleRemoveValue,\n notFound,\n hasItems,\n allItemsSelected,\n optionsRefs,\n };\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"useSelect.js","names":["useCallback","useEffect","useLayoutEffect","useMemo","useRef","useState","useClickOutside","useDebounce","useKeys","useMutableRef","usePrevious","useRefs","getCountedGroups","getGroups","scrollToIndex","useHoistedState","isMultipleParams","params","multiple","isNotMultipleParams","actions","setOpen","setSearch","highlightIndex","initialState","searchValue","resolvedSearchValue","isOpen","highlightedIndex","scrollToHighlighted","isOptionForCreate","Object","prototype","hasOwnProperty","call","isNotOptionForCreate","isOptionForSelectAll","useSelect","items","dropdownRef","controlRef","disabled","getItemLabel","getItemKey","searchFunction","getItemGroupKey","groups","selectAll","getGroupKey","sortGroups","getItemDisabled","onFocus","onBlur","searchValueProp","onDropdownOpen","onSearchValueChange","dropdownOpen","ignoreOutsideClicksRefs","inputRef","isFocused","setIsFocused","value","Array","isArray","setState","onSearchValueChangeRef","searchFunctionDefault","item","toLocaleLowerCase","indexOf","filteredOptions","filter","onCreate","length","label","__optionForCreate","optionForCreate","visibleItems","resultGroups","maxHighlightIndex","optionsRefs","notFound","flag","group","hasItems","allItemsSelected","el","find","getSelectedOptionIndex","index","newIsOpen","old","setResolvedSearch","prevIsOpen","indexForHighlight","newIndex","Math","min","max","currentHighlightIndex","removeValue","e","valueItem","stopPropagation","newValue","val","onChange","some","onChangeAll","parametrs","nonDisabledItems","currentGroupValues","withoutGroupValues","forEach","push","clearValue","results","ArrowUp","_","preventDefault","ArrowDown","getKeyProps","PageUp","PageDown","Home","End","Enter","getData","counter","Escape","Tab","Backspace","isActive","ignoreClicksInsideRefs","handler","current","scrollTo","top","getOptionProps","keyPrefix","onClick","onMouseEnter","active","hovered","key","getItems","groupKey","handleInputFocus","handleInputBlur","focus","handleToggleDropdown","handleInputClick","handleInputChange","target","getHandleRemoveValue"],"sources":["../../../../../../src/components/SelectComponents/useSelect/useSelect.ts"],"sourcesContent":["import React, {\n useCallback,\n useEffect,\n useLayoutEffect,\n useMemo,\n useRef,\n useState,\n} from 'react';\n\nimport { useClickOutside } from '##/hooks/useClickOutside';\nimport { useDebounce } from '##/hooks/useDebounce';\nimport { KeyHandler, useKeys } from '##/hooks/useKeysDeprecated';\nimport { useMutableRef } from '##/hooks/useMutableRef';\nimport { usePrevious } from '##/hooks/usePrevious';\nimport { useRefs } from '##/hooks/useRefs';\nimport {\n CountedGroup,\n getCountedGroups,\n getGroups,\n SelectAllItem,\n} from '##/utils/getGroups';\n\nimport { scrollToIndex, useHoistedState } from './helpers';\n\ntype IndexForHighlight = number | ((oldIndex: number) => number);\n\ntype Group<ITEM, GROUP> = {\n items: ITEM[];\n key: string | number;\n group?: GROUP;\n};\ntype GetItemGroupKey<ITEM> = (item: ITEM) => string | number | undefined;\ntype GetGroupKey<GROUP> = (item: GROUP) => string | number | undefined;\ntype SortGroups<ITEM, GROUP> = (\n a: Group<ITEM, GROUP>,\n b: Group<ITEM, GROUP>,\n) => number;\n\ntype OnChangeProp<ITEM, MULTIPLE extends boolean> = (\n value: (MULTIPLE extends true ? ITEM[] : ITEM) | null,\n props: {\n e: React.SyntheticEvent;\n },\n) => void;\n\ntype ValueProp<ITEM, MULTIPLE extends boolean> =\n | (MULTIPLE extends true ? ITEM[] : ITEM)\n | null\n | undefined;\n\nexport type OptionForCreate = {\n label: string;\n __optionForCreate: boolean;\n};\n\nexport type SelectProps<ITEM, GROUP, MULTIPLE extends boolean> = {\n getItemGroupKey?: GetItemGroupKey<ITEM> | undefined;\n getGroupKey?: GetGroupKey<GROUP>;\n sortGroups?: SortGroups<ITEM, GROUP>;\n groups?: GROUP[];\n items: ITEM[];\n dropdownRef: React.MutableRefObject<HTMLDivElement | null>;\n controlRef: React.MutableRefObject<HTMLDivElement | null>;\n disabled?: boolean;\n selectAll?: boolean;\n getItemLabel: (item: ITEM) => string;\n getItemKey: (item: ITEM) => string | number;\n getItemDisabled?: (item: ITEM) => boolean | undefined;\n searchFunction?: (item: ITEM, searchValue: string) => boolean;\n onCreate?: (\n label: string,\n props: { e: React.SyntheticEvent; label: string },\n ) => void;\n onFocus?: React.FocusEventHandler<HTMLInputElement>;\n onBlur?: React.FocusEventHandler<HTMLInputElement>;\n multiple: boolean;\n searchValue?: string;\n onChange: OnChangeProp<ITEM, MULTIPLE>;\n value: ValueProp<ITEM, MULTIPLE>;\n dropdownOpen?: boolean;\n onDropdownOpen?: (isOpen: boolean) => void;\n onSearchValueChange?: (value: string) => void;\n ignoreOutsideClicksRefs?: ReadonlyArray<React.RefObject<HTMLElement>>;\n};\n\nexport type OptionProps<ITEM> = {\n index: number;\n item: ITEM | OptionForCreate | SelectAllItem;\n keyPrefix: string | number;\n};\n\nexport type GetOptionPropsResult = {\n onClick: (e: React.MouseEvent) => void;\n onMouseEnter: (e: React.MouseEvent) => void;\n active: boolean;\n hovered: boolean;\n key: string | number;\n};\n\nconst isMultipleParams = <ITEM, GROUP>(\n params: SelectProps<ITEM, GROUP, boolean>,\n): params is SelectProps<ITEM, GROUP, true> => {\n return params.multiple;\n};\n\nconst isNotMultipleParams = <ITEM, GROUP>(\n params: SelectProps<ITEM, GROUP, boolean>,\n): params is SelectProps<ITEM, GROUP, false> => {\n return !params.multiple;\n};\n\nconst actions = {\n setOpen: 'setOpen',\n setSearch: 'setSearch',\n highlightIndex: 'highlightIndex',\n};\n\nconst initialState = {\n searchValue: '',\n resolvedSearchValue: '',\n isOpen: false,\n highlightedIndex: 0,\n scrollToHighlighted: false,\n};\n\nexport const isOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP> | ITEM,\n): params is OptionForCreate => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isNotOptionForCreate = <ITEM, GROUP>(\n params: OptionForCreate | Group<ITEM, GROUP>,\n): params is Group<ITEM, GROUP> => {\n return (\n params && !Object.prototype.hasOwnProperty.call(params, '__optionForCreate')\n );\n};\n\nexport const isOptionForSelectAll = <ITEM>(\n params: SelectAllItem | ITEM,\n): params is SelectAllItem => {\n return (\n params && Object.prototype.hasOwnProperty.call(params, '__optionSelectAll')\n );\n};\n\nexport function useSelect<ITEM, GROUP, MULTIPLE extends boolean>(\n params: SelectProps<ITEM, GROUP, MULTIPLE>,\n) {\n const {\n items,\n dropdownRef,\n controlRef,\n disabled = false,\n multiple = false,\n getItemLabel,\n getItemKey,\n searchFunction,\n getItemGroupKey,\n groups,\n selectAll = false,\n getGroupKey,\n sortGroups,\n getItemDisabled,\n onFocus,\n onBlur,\n searchValue: searchValueProp,\n onDropdownOpen,\n onSearchValueChange,\n dropdownOpen,\n ignoreOutsideClicksRefs,\n } = params;\n\n const inputRef = useRef<HTMLInputElement>(null);\n\n const [isFocused, setIsFocused] = useState(false);\n\n const value = useMemo(\n () =>\n (params.value &&\n (Array.isArray(params.value) ? params.value : [params.value])) ||\n [],\n [params.value],\n );\n\n const [\n {\n searchValue,\n isOpen,\n highlightedIndex,\n resolvedSearchValue,\n scrollToHighlighted,\n },\n setState,\n ] = useHoistedState(initialState);\n\n const onSearchValueChangeRef = useMutableRef(onSearchValueChange);\n\n const searchFunctionDefault = (item: ITEM, searchValue: string) =>\n getItemLabel(item)\n .toLocaleLowerCase()\n .indexOf(searchValue.toLocaleLowerCase()) !== -1;\n\n const [filteredOptions, optionForCreate] = useMemo(() => {\n if (resolvedSearchValue && resolvedSearchValue !== '') {\n const filteredOptions = items.filter((item) =>\n searchFunction\n ? searchFunction(item, resolvedSearchValue)\n : searchFunctionDefault(item, resolvedSearchValue),\n );\n\n const optionForCreate: OptionForCreate = {\n label: searchValue,\n __optionForCreate: true,\n };\n\n return [\n filteredOptions,\n params.onCreate && !filteredOptions.length\n ? optionForCreate\n : undefined,\n ] as const;\n }\n return [items, undefined] as const;\n }, [items, resolvedSearchValue, params.onCreate]);\n\n const visibleItems = useMemo(() => {\n const resultGroups = getCountedGroups(\n getGroups(\n filteredOptions,\n groups?.length ? getItemGroupKey : undefined,\n groups,\n getGroupKey,\n sortGroups,\n ),\n isMultipleParams(params) ? params.value : [],\n selectAll,\n getItemKey,\n getItemDisabled,\n );\n\n return optionForCreate ? [optionForCreate, ...resultGroups] : resultGroups;\n }, [\n value,\n selectAll,\n filteredOptions,\n groups,\n getItemGroupKey,\n getItemDisabled,\n getGroupKey,\n sortGroups,\n optionForCreate,\n ]);\n\n const maxHighlightIndex =\n // количество опций\n filteredOptions.length +\n // кнопка для создания\n (optionForCreate ? 1 : 0) +\n // кнопки выбрать все\n (selectAll ? visibleItems.length : 0);\n\n const optionsRefs = useRefs<HTMLDivElement>(maxHighlightIndex, [isOpen]);\n\n const notFound = useMemo(() => {\n let flag = false;\n if (searchValue.length > 0) {\n flag =\n visibleItems.filter(\n (group) =>\n isOptionForCreate(group) || group.items.length > 0 || group.group,\n ).length === 0 && !params.onCreate;\n }\n return flag;\n }, [visibleItems]);\n\n const hasItems = items.length !== 0;\n\n const allItemsSelected = useMemo(() => {\n if (isNotMultipleParams(params)) {\n return false;\n }\n if (selectAll) {\n return (\n items.filter((el) =>\n value.find((item) => getItemKey(item) === getItemKey(el)),\n ).length === items.length\n );\n }\n\n return false;\n }, [selectAll, multiple, value, items]);\n\n const getSelectedOptionIndex = (): number => {\n let index = 0;\n if (value.length > 0) {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n index++;\n // eslint-disable-next-line no-continue\n continue;\n }\n for (const item of group.items) {\n if (isOptionForSelectAll(item)) {\n return index;\n }\n if (getItemKey(item) === getItemKey(value[0])) {\n return index;\n }\n index++;\n }\n }\n }\n\n return 0;\n };\n\n // Actions\n\n const setOpen = useCallback(\n (newIsOpen: boolean) => {\n setState(\n (old) => ({\n ...old,\n isOpen: newIsOpen,\n }),\n actions.setOpen,\n );\n },\n [setState],\n );\n\n const setResolvedSearch = useDebounce((value: string) => {\n setState((old) => {\n if (old.resolvedSearchValue === value) {\n return old;\n }\n return {\n ...old,\n resolvedSearchValue: value,\n };\n }, actions.setSearch);\n }, 300);\n\n const setSearch = useCallback(\n (value: string | undefined) => {\n setState((old) => {\n if (old.searchValue === value) {\n return old;\n }\n return {\n ...old,\n searchValue: value || '',\n };\n }, actions.setSearch);\n setResolvedSearch(value || '');\n },\n [setState, setResolvedSearch],\n );\n\n const prevIsOpen = usePrevious(isOpen);\n\n const highlightIndex = useCallback(\n (indexForHighlight: IndexForHighlight, scrollToHighlighted: boolean) => {\n setState((old) => {\n const newIndex = Math.min(\n Math.max(\n 0,\n typeof indexForHighlight === 'function'\n ? indexForHighlight(old.highlightedIndex)\n : indexForHighlight,\n ),\n maxHighlightIndex - 1,\n );\n\n if (old.highlightedIndex === newIndex) {\n return old;\n }\n\n return {\n ...old,\n highlightedIndex: newIndex,\n scrollToHighlighted,\n };\n }, actions.highlightIndex);\n },\n [filteredOptions, setState, optionForCreate],\n );\n\n useLayoutEffect(() => {\n if (value !== null && !prevIsOpen && isOpen) {\n const currentHighlightIndex = getSelectedOptionIndex();\n if (filteredOptions.length > 0) {\n scrollToIndex(currentHighlightIndex, dropdownRef, optionsRefs, () =>\n highlightIndex(0, false),\n );\n }\n }\n });\n\n const removeValue = (e: React.SyntheticEvent, valueItem: ITEM) => {\n e.stopPropagation();\n if (isMultipleParams(params)) {\n const newValue = params.value?.filter(\n (item) => getItemKey(item) !== getItemKey(valueItem),\n );\n const val = newValue?.length ? newValue : null;\n params.onChange(val, {\n e,\n });\n }\n };\n\n const onChange = (e: React.SyntheticEvent, item: ITEM) => {\n if (getItemDisabled && getItemDisabled(item)) {\n return;\n }\n if (isMultipleParams(params)) {\n const newValue = value.some(\n (value) => getItemKey(value) === getItemKey(item),\n )\n ? value.filter((value) => getItemKey(value) !== getItemKey(item))\n : [...value, item];\n const val = newValue?.length ? newValue : null;\n params.onChange(val, { e });\n }\n if (isNotMultipleParams(params)) {\n params.onChange(item, { e });\n setOpen(false);\n setSearch('');\n }\n };\n\n const onChangeAll = (parametrs: {\n e: React.SyntheticEvent;\n items: ITEM[];\n }) => {\n const { e, items } = parametrs;\n if (isMultipleParams(params)) {\n const nonDisabledItems = getItemDisabled\n ? items.filter((item) => !getItemDisabled(item))\n : items;\n\n const currentGroupValues: ITEM[] = [];\n const withoutGroupValues: ITEM[] = [];\n value.forEach((el) => {\n if (\n nonDisabledItems.find((item) => getItemKey(el) === getItemKey(item))\n ) {\n currentGroupValues.push(el);\n } else {\n withoutGroupValues.push(el);\n }\n });\n if (currentGroupValues.length === nonDisabledItems.length) {\n params.onChange(withoutGroupValues, { e });\n } else {\n const val = [...withoutGroupValues, ...nonDisabledItems];\n params.onChange(val, {\n e,\n });\n }\n }\n };\n\n const onCreate = (e: React.SyntheticEvent, label: string) => {\n params.onCreate && params.onCreate(label, { e, label });\n setOpen(false);\n setSearch('');\n };\n\n // Handlers\n\n const handleInputChange = (e: React.ChangeEvent<HTMLInputElement>): void => {\n if (!disabled && !(!multiple && value.length > 0)) {\n setSearch(e.target.value);\n setOpen(true);\n }\n };\n\n const handleInputClick = (): void => {\n !disabled && setOpen(!isOpen);\n\n if (multiple) {\n inputRef.current?.focus();\n }\n };\n\n const clearValue = (e: React.SyntheticEvent) => {\n if (isMultipleParams(params)) {\n const results = value?.filter((item) => getItemDisabled?.(item));\n const val = results && results.length > 0 ? results : null;\n params.onChange(val, {\n e,\n });\n }\n if (isNotMultipleParams(params)) {\n params.onChange(null, { e });\n }\n setSearch('');\n };\n\n const getHandleRemoveValue = (item: ITEM) => (e: React.SyntheticEvent) =>\n removeValue(e, item);\n\n // Prop Getters\n\n const ArrowUp: KeyHandler = (_, e): void => {\n e.preventDefault();\n !disabled && setOpen(true);\n highlightIndex((old) => old - 1, true);\n };\n\n const ArrowDown: KeyHandler = (_, e): void => {\n e.preventDefault();\n !disabled && setOpen(true);\n highlightIndex((old) => old + 1, true);\n };\n\n const Enter: KeyHandler = (_, e): void => {\n if (isOpen) {\n if (searchValue || filteredOptions[highlightedIndex]) {\n e.preventDefault();\n }\n\n const getData = (\n index: number,\n ): [\n CountedGroup<ITEM, GROUP> | undefined,\n SelectAllItem | OptionForCreate | ITEM | undefined,\n ] => {\n let counter = 0;\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n counter++;\n return [undefined, group];\n }\n if (group.items.length + counter > index) {\n return [group, group.items[index - counter]];\n }\n counter += group.items.length;\n }\n return [undefined, undefined];\n };\n\n const [group, item] = getData(highlightedIndex);\n\n if (isOptionForCreate(item)) {\n onCreate(e, item.label);\n return;\n }\n\n if (isOptionForSelectAll(item)) {\n onChangeAll({\n e,\n items:\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? [],\n });\n return;\n }\n\n if (item) {\n onChange(e, item);\n }\n } else {\n setOpen(true);\n }\n };\n\n const Escape: KeyHandler = (): void => {\n setOpen(false);\n };\n\n const Tab: KeyHandler = (_, e): void => {\n if (isOpen) {\n e.preventDefault();\n setOpen(false);\n }\n };\n\n const Backspace: KeyHandler = (_, e): void => {\n if (searchValue) {\n return;\n }\n if (multiple) {\n removeValue(e, value[value.length - 1]);\n } else {\n clearValue(e);\n }\n };\n\n const getKeyProps = useKeys({\n ArrowUp,\n ArrowDown,\n PageUp: ArrowUp,\n PageDown: ArrowDown,\n Home: ArrowUp,\n End: ArrowDown,\n Enter,\n Escape,\n Tab,\n Backspace,\n });\n\n const getOptionProps = ({\n index,\n item,\n keyPrefix,\n }: OptionProps<ITEM>): GetOptionPropsResult => {\n if (isOptionForCreate(item)) {\n return {\n onClick: (e: React.SyntheticEvent) => {\n onCreate(e, item.label);\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: false,\n hovered: index === highlightedIndex,\n key: `${keyPrefix}__optionForCreate`,\n };\n }\n if (isOptionForSelectAll(item)) {\n const getItems = (): ITEM[] => {\n for (const group of visibleItems) {\n if (isOptionForCreate(group)) {\n break;\n }\n if (group.key === item.groupKey) {\n return (\n (group?.items.filter(\n (el) => !isOptionForSelectAll(el),\n ) as ITEM[]) ?? []\n );\n }\n }\n return [];\n };\n return {\n onClick: (e: React.SyntheticEvent) => {\n onChangeAll({ e, items: getItems() });\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: false,\n hovered: index === highlightedIndex,\n key: `${keyPrefix}__optionForSelectAll`,\n };\n }\n const key = getItemKey(item);\n return {\n onClick: (e: React.SyntheticEvent) => {\n onChange(e, item);\n },\n onMouseEnter: () => {\n highlightIndex(index, false);\n },\n active: Boolean(value.find((item) => getItemKey(item) === key)),\n hovered: index === highlightedIndex,\n key: `${keyPrefix}${key}`,\n };\n };\n\n useClickOutside({\n isActive: true,\n ignoreClicksInsideRefs: [\n dropdownRef,\n controlRef,\n ...(ignoreOutsideClicksRefs || []),\n ],\n handler: () => {\n setIsFocused(false);\n setOpen(false);\n },\n });\n\n useEffect(() => {\n if (disabled) {\n setOpen(false);\n }\n }, [disabled]);\n\n useEffect(() => {\n const currentHighlightIndex = getSelectedOptionIndex();\n highlightIndex(currentHighlightIndex, true);\n }, [highlightIndex]);\n\n useEffect(() => {\n if (filteredOptions.length > 0 && scrollToHighlighted) {\n scrollToIndex(highlightedIndex, dropdownRef, optionsRefs, () =>\n highlightIndex(0, false),\n );\n }\n }, [highlightedIndex]);\n\n const handleInputFocus = (e: React.FocusEvent<HTMLInputElement>): void => {\n if (!disabled) {\n if (!isFocused) {\n setIsFocused(true);\n }\n if (typeof onFocus === 'function') {\n onFocus(e);\n }\n }\n };\n\n const handleInputBlur = (e: React.FocusEvent<HTMLInputElement>): void => {\n if (isOpen) {\n inputRef.current?.focus();\n return;\n }\n\n if (isFocused) {\n setIsFocused(false);\n }\n\n if (typeof onBlur === 'function') {\n onBlur(e);\n }\n };\n\n const handleToggleDropdown = (): void => {\n if (isOpen) {\n setOpen(false);\n setIsFocused(false);\n } else {\n setOpen(true);\n setIsFocused(true);\n inputRef.current?.focus();\n }\n };\n\n useEffect(() => {\n setSearch(searchValueProp);\n }, [searchValueProp]);\n\n useEffect(() => {\n dropdownRef.current?.scrollTo({ top: 0 });\n }, [resolvedSearchValue]);\n\n useEffect(() => {\n onDropdownOpen?.(isOpen);\n }, [isOpen]);\n\n useEffect(() => {\n onSearchValueChangeRef.current?.(searchValue);\n }, [searchValue]);\n\n useEffect(() => {\n setOpen(dropdownOpen || false);\n }, [dropdownOpen]);\n\n return {\n isOpen,\n isFocused,\n highlightedIndex,\n visibleItems,\n highlightIndex,\n getOptionProps,\n handleInputFocus,\n handleInputBlur,\n handleToggleDropdown,\n handleInputClick,\n inputRef,\n getKeyProps,\n handleInputChange,\n searchValue,\n clearValue,\n getHandleRemoveValue,\n notFound,\n hasItems,\n allItemsSelected,\n optionsRefs,\n };\n}\n"],"mappings":"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"}