@vkontakte/vkui 4.35.4 → 4.37.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 (1275) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +21771 -18514
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  6. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  7. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -1
  8. package/.cache/ts/src/components/Calendar/Calendar.d.ts +3 -2
  9. package/.cache/ts/src/components/CalendarDay/CalendarDay.d.ts +4 -2
  10. package/.cache/ts/src/components/CalendarDays/CalendarDays.d.ts +3 -1
  11. package/.cache/ts/src/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  12. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +1 -1
  13. package/.cache/ts/src/components/Chip/Chip.d.ts +12 -5
  14. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +5 -26
  15. package/.cache/ts/src/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  16. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +6 -4
  17. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
  18. package/.cache/ts/src/components/DateInput/DateInput.d.ts +4 -2
  19. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  20. package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  21. package/.cache/ts/src/components/FormField/FormField.d.ts +2 -1
  22. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  23. package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +1 -0
  24. package/.cache/ts/src/components/Group/Group.d.ts +5 -1
  25. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  26. package/.cache/ts/src/components/List/List.d.ts +2 -1
  27. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +13 -1
  28. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -2
  29. package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
  30. package/.cache/ts/src/components/Select/Select.d.ts +1 -1
  31. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  32. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +34 -1
  33. package/.cache/ts/src/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  34. package/.cache/ts/src/components/Tappable/Tappable.d.ts +2 -1
  35. package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -2
  36. package/.cache/ts/src/components/UsersStack/UsersStack.d.ts +7 -1
  37. package/.cache/ts/src/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  38. package/{dist/cssm/components/ChipsSelect → .cache/ts/src/hooks}/useChipsSelect.d.ts +4 -4
  39. package/.cache/ts/src/index.d.ts +5 -0
  40. package/.cache/ts/src/tokenized/index.d.ts +58 -0
  41. package/.eslintrc.json +2 -1
  42. package/README.md +3 -2
  43. package/dist/appearance/constants.js.map +1 -1
  44. package/dist/cjs/appearance/constants.js.map +1 -1
  45. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -4
  46. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  47. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  48. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +24 -0
  49. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  50. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +10 -8
  51. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  52. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -5
  53. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  54. package/dist/cjs/components/ActionSheet/types.js.map +1 -1
  55. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -39
  56. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  57. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  58. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +2 -3
  59. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  60. package/dist/cjs/components/Alert/Alert.js +11 -12
  61. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  62. package/dist/cjs/components/AppRoot/AppRoot.js +2 -5
  63. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  64. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  65. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  66. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  67. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  68. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  69. package/dist/cjs/components/Avatar/Avatar.js +4 -17
  70. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  71. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  72. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  73. package/dist/cjs/components/BaseGallery/BaseGallery.js +11 -10
  74. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  75. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  76. package/dist/cjs/components/BaseGallery/types.js.map +1 -1
  77. package/dist/cjs/components/Button/Button.js.map +1 -1
  78. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  79. package/dist/cjs/components/Calendar/Calendar.js +9 -3
  80. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  81. package/dist/cjs/components/CalendarDay/CalendarDay.js +14 -23
  82. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  83. package/dist/cjs/components/CalendarDays/CalendarDays.js +4 -3
  84. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  85. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +10 -4
  86. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  87. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  88. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  89. package/dist/cjs/components/Card/Card.js.map +1 -1
  90. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  91. package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
  92. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  93. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  94. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  95. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  96. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  97. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  98. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  99. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  100. package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
  101. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  102. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
  103. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  104. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +49 -28
  105. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  106. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  107. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  108. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  109. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  110. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  111. package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  112. package/dist/cjs/components/CustomSelect/CustomSelect.js +32 -31
  113. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  114. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  115. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  116. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  117. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  118. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  119. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
  120. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  121. package/dist/cjs/components/Div/Div.js.map +1 -1
  122. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  123. package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
  124. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  125. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  126. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  127. package/dist/cjs/components/File/File.js.map +1 -1
  128. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  129. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  130. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  131. package/dist/cjs/components/Footer/Footer.js.map +1 -1
  132. package/dist/cjs/components/FormField/FormField.js +4 -2
  133. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  134. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  135. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  136. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
  137. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  138. package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
  139. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  140. package/dist/cjs/components/Gallery/Gallery.js +2 -0
  141. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  142. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  143. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  144. package/dist/cjs/components/Group/Group.js +4 -2
  145. package/dist/cjs/components/Group/Group.js.map +1 -1
  146. package/dist/cjs/components/Header/Header.js +3 -11
  147. package/dist/cjs/components/Header/Header.js.map +1 -1
  148. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  149. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  150. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  151. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  152. package/dist/cjs/components/IconButton/IconButton.js +4 -3
  153. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  154. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  155. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  156. package/dist/cjs/components/Input/Input.js +4 -2
  157. package/dist/cjs/components/Input/Input.js.map +1 -1
  158. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  159. package/dist/cjs/components/InputLike/InputLikeDivider.js.map +1 -1
  160. package/dist/cjs/components/Link/Link.js.map +1 -1
  161. package/dist/cjs/components/List/List.js.map +1 -1
  162. package/dist/cjs/components/List/ListContext.js.map +1 -1
  163. package/dist/cjs/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  164. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  165. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  166. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  167. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
  168. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  169. package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
  170. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  171. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
  172. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  173. package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
  174. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  175. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  176. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  177. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
  178. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  179. package/dist/cjs/components/ModalRoot/constants.js.map +1 -1
  180. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  181. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  182. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  183. package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
  184. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  185. package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  186. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  187. package/dist/cjs/components/Panel/Panel.js +4 -10
  188. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  189. package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
  190. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  191. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
  192. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  193. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  194. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  195. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  196. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  197. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -2
  198. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  199. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
  200. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  201. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  202. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  203. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  204. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  205. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  206. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  207. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  208. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  209. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  210. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  211. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  212. package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -7
  213. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  214. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  215. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  216. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  217. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  218. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  219. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  220. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  221. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  222. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  223. package/dist/cjs/components/Root/Root.js.map +1 -1
  224. package/dist/cjs/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  225. package/dist/cjs/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  226. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  227. package/dist/cjs/components/Search/Search.js +7 -9
  228. package/dist/cjs/components/Search/Search.js.map +1 -1
  229. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  230. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  231. package/dist/cjs/components/Select/Select.js.map +1 -1
  232. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
  233. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  234. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  235. package/dist/cjs/components/SimpleCell/SimpleCell.js +30 -8
  236. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  237. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  238. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  239. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
  240. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  241. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
  242. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  243. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  244. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  245. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  246. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  247. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  248. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
  249. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  250. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +17 -16
  251. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  252. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  253. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  254. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  255. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  256. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  257. package/dist/cjs/components/Tappable/Tappable.js +8 -16
  258. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  259. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  260. package/dist/cjs/components/Textarea/Textarea.js +4 -2
  261. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  262. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  263. package/dist/cjs/components/Tooltip/TooltipContainer.js.map +1 -1
  264. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  265. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  266. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  267. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  268. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  269. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
  270. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  271. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  272. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  273. package/dist/cjs/components/UsersStack/UsersStack.js +75 -37
  274. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  275. package/dist/cjs/components/View/View.js +2 -7
  276. package/dist/cjs/components/View/View.js.map +1 -1
  277. package/dist/cjs/components/View/ViewInfinite.js +1 -10
  278. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  279. package/dist/cjs/components/View/utils.js.map +1 -1
  280. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -4
  281. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  282. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  283. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  284. package/dist/cjs/helpers/avatar.js.map +1 -1
  285. package/dist/cjs/helpers/getClassName.js.map +1 -1
  286. package/dist/cjs/helpers/getScheme.js.map +1 -1
  287. package/dist/cjs/helpers/math.js.map +1 -1
  288. package/dist/cjs/helpers/scheme.js.map +1 -1
  289. package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
  290. package/dist/cjs/hoc/withContext.js.map +1 -1
  291. package/dist/cjs/hoc/withInsets.js.map +1 -1
  292. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  293. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  294. package/dist/cjs/hooks/useAppearance.js.map +1 -1
  295. package/dist/cjs/hooks/useBooleanState.js.map +1 -1
  296. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -1
  297. package/dist/cjs/hooks/useBrowserInfo.js.map +1 -1
  298. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  299. package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
  300. package/dist/cjs/hooks/useChipsInput.js.map +1 -0
  301. package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  302. package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
  303. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  304. package/dist/cjs/hooks/useEffectDev.js.map +1 -1
  305. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  306. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  307. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  308. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  309. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  310. package/dist/cjs/hooks/useInsets.js.map +1 -1
  311. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  312. package/dist/cjs/hooks/useKeyboardInputTracker.js.map +1 -1
  313. package/dist/cjs/hooks/useObjectMemo.js.map +1 -1
  314. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  315. package/dist/cjs/hooks/usePagination.js.map +1 -1
  316. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  317. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  318. package/dist/cjs/hooks/usePrevious.js.map +1 -1
  319. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  320. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  321. package/dist/cjs/index.js +16 -0
  322. package/dist/cjs/index.js.map +1 -1
  323. package/dist/cjs/lib/SSR.js.map +1 -1
  324. package/dist/cjs/lib/accessibility.js.map +1 -1
  325. package/dist/cjs/lib/animate.js +2 -2
  326. package/dist/cjs/lib/animate.js.map +1 -1
  327. package/dist/cjs/lib/browser.js.map +1 -1
  328. package/dist/cjs/lib/calendar.js.map +1 -1
  329. package/dist/cjs/lib/callMultiple.js.map +1 -1
  330. package/dist/cjs/lib/classNames.js.map +1 -1
  331. package/dist/cjs/lib/classScopingMode.js.map +1 -1
  332. package/dist/cjs/lib/date.js.map +1 -1
  333. package/dist/cjs/lib/dom.js.map +1 -1
  334. package/dist/cjs/lib/fx.js.map +1 -1
  335. package/dist/cjs/lib/getNavId.js.map +1 -1
  336. package/dist/cjs/lib/is.js.map +1 -1
  337. package/dist/cjs/lib/isRefObject.js.map +1 -1
  338. package/dist/cjs/lib/jsxRuntime.d.js.map +1 -1
  339. package/dist/cjs/lib/jsxRuntime.js.map +1 -1
  340. package/dist/cjs/lib/offset.js.map +1 -1
  341. package/dist/cjs/lib/platform.js.map +1 -1
  342. package/dist/cjs/lib/polyfills.js.map +1 -1
  343. package/dist/cjs/lib/prefixClass.js.map +1 -1
  344. package/dist/cjs/lib/removeObjectKeys.js.map +1 -1
  345. package/dist/cjs/lib/select.js.map +1 -1
  346. package/dist/cjs/lib/styles.js.map +1 -1
  347. package/dist/cjs/lib/supportEvents.js.map +1 -1
  348. package/dist/cjs/lib/taptic.js.map +1 -1
  349. package/dist/cjs/lib/testing.js +2 -2
  350. package/dist/cjs/lib/testing.js.map +1 -1
  351. package/dist/cjs/lib/touch.js +2 -2
  352. package/dist/cjs/lib/touch.js.map +1 -1
  353. package/dist/cjs/lib/useIsomorphicLayoutEffect.js.map +1 -1
  354. package/dist/cjs/lib/utils.js.map +1 -1
  355. package/dist/cjs/lib/warnOnce.js.map +1 -1
  356. package/dist/cjs/tokenized/index.js +240 -0
  357. package/dist/cjs/tokenized/index.js.map +1 -1
  358. package/dist/cjs/types.js.map +1 -1
  359. package/dist/cjs/unstable/index.js.map +1 -1
  360. package/dist/components/ActionSheet/ActionSheet.js +4 -4
  361. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  362. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  363. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  364. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  365. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  366. package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
  367. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  368. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  369. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  370. package/dist/components/ActionSheet/types.js.map +1 -1
  371. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  372. package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
  373. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  374. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  375. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  376. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  377. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  378. package/dist/components/Alert/Alert.js +12 -12
  379. package/dist/components/Alert/Alert.js.map +1 -1
  380. package/dist/components/AppRoot/AppRoot.js +2 -5
  381. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  382. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  383. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  384. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  385. package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  386. package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  387. package/dist/components/Avatar/Avatar.js +4 -17
  388. package/dist/components/Avatar/Avatar.js.map +1 -1
  389. package/dist/components/Badge/Badge.js.map +1 -1
  390. package/dist/components/Banner/Banner.js.map +1 -1
  391. package/dist/components/BaseGallery/BaseGallery.js +11 -10
  392. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  393. package/dist/components/BaseGallery/helpers.js.map +1 -1
  394. package/dist/components/BaseGallery/types.js.map +1 -1
  395. package/dist/components/Button/Button.js.map +1 -1
  396. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  397. package/dist/components/Calendar/Calendar.d.ts +3 -2
  398. package/dist/components/Calendar/Calendar.js +9 -3
  399. package/dist/components/Calendar/Calendar.js.map +1 -1
  400. package/dist/components/CalendarDay/CalendarDay.d.ts +4 -2
  401. package/dist/components/CalendarDay/CalendarDay.js +11 -23
  402. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  403. package/dist/components/CalendarDays/CalendarDays.d.ts +3 -1
  404. package/dist/components/CalendarDays/CalendarDays.js +4 -3
  405. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  406. package/dist/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  407. package/dist/components/CalendarHeader/CalendarHeader.js +7 -4
  408. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  409. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  410. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  411. package/dist/components/Card/Card.js.map +1 -1
  412. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  413. package/dist/components/CardScroll/CardScroll.js +1 -3
  414. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  415. package/dist/components/Cell/Cell.js.map +1 -1
  416. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  417. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  418. package/dist/components/Cell/useDraggable.js.map +1 -1
  419. package/dist/components/CellButton/CellButton.js.map +1 -1
  420. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  421. package/dist/components/Chip/Chip.d.ts +12 -5
  422. package/dist/components/Chip/Chip.js.map +1 -1
  423. package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
  424. package/dist/components/ChipsInput/ChipsInput.js +14 -183
  425. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  426. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  427. package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
  428. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  429. package/dist/components/ChipsSelect/ChipsSelect.d.ts +6 -4
  430. package/dist/components/ChipsSelect/ChipsSelect.js +47 -27
  431. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  432. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  433. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  434. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  435. package/dist/components/Counter/Counter.js.map +1 -1
  436. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  437. package/dist/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  438. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  439. package/dist/components/CustomSelect/CustomSelect.js +32 -31
  440. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  441. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  442. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  443. package/dist/components/DateInput/DateInput.d.ts +4 -2
  444. package/dist/components/DateInput/DateInput.js +4 -2
  445. package/dist/components/DateInput/DateInput.js.map +1 -1
  446. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  447. package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  448. package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
  449. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  450. package/dist/components/Div/Div.js.map +1 -1
  451. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  452. package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  453. package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
  454. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  455. package/dist/components/Epic/Epic.js.map +1 -1
  456. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  457. package/dist/components/File/File.js.map +1 -1
  458. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  459. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  460. package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
  461. package/dist/components/Footer/Footer.js.map +1 -1
  462. package/dist/components/FormField/FormField.d.ts +2 -1
  463. package/dist/components/FormField/FormField.js +4 -2
  464. package/dist/components/FormField/FormField.js.map +1 -1
  465. package/dist/components/FormItem/FormItem.js.map +1 -1
  466. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  467. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  468. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  469. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  470. package/dist/components/FormStatus/FormStatus.d.ts +1 -0
  471. package/dist/components/FormStatus/FormStatus.js +4 -4
  472. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  473. package/dist/components/Gallery/Gallery.js +2 -0
  474. package/dist/components/Gallery/Gallery.js.map +1 -1
  475. package/dist/components/Gradient/Gradient.js.map +1 -1
  476. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  477. package/dist/components/Group/Group.d.ts +5 -1
  478. package/dist/components/Group/Group.js +4 -2
  479. package/dist/components/Group/Group.js.map +1 -1
  480. package/dist/components/Header/Header.js +3 -10
  481. package/dist/components/Header/Header.js.map +1 -1
  482. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  483. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  484. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  485. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  486. package/dist/components/IconButton/IconButton.js +4 -3
  487. package/dist/components/IconButton/IconButton.js.map +1 -1
  488. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  489. package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  490. package/dist/components/Input/Input.d.ts +1 -1
  491. package/dist/components/Input/Input.js +4 -2
  492. package/dist/components/Input/Input.js.map +1 -1
  493. package/dist/components/InputLike/InputLike.js.map +1 -1
  494. package/dist/components/InputLike/InputLikeDivider.js.map +1 -1
  495. package/dist/components/Link/Link.js.map +1 -1
  496. package/dist/components/List/List.d.ts +2 -1
  497. package/dist/components/List/List.js.map +1 -1
  498. package/dist/components/List/ListContext.js.map +1 -1
  499. package/dist/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  500. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  501. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  502. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  503. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
  504. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  505. package/dist/components/ModalPage/ModalPage.d.ts +13 -1
  506. package/dist/components/ModalPage/ModalPage.js +12 -10
  507. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  508. package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
  509. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  510. package/dist/components/ModalRoot/ModalRoot.js +4 -18
  511. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  512. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  513. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  514. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
  515. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  516. package/dist/components/ModalRoot/constants.js.map +1 -1
  517. package/dist/components/ModalRoot/types.js.map +1 -1
  518. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  519. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  520. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
  521. package/dist/components/NativeSelect/NativeSelect.js +4 -2
  522. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  523. package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  524. package/dist/components/Pagination/Pagination.js.map +1 -1
  525. package/dist/components/Panel/Panel.js +4 -8
  526. package/dist/components/Panel/Panel.js.map +1 -1
  527. package/dist/components/PanelHeader/PanelHeader.js +2 -11
  528. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  529. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  530. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  531. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  532. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  533. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  534. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  535. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  536. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  537. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  538. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  539. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  540. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  541. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  542. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  543. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  544. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  545. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  546. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  547. package/dist/components/Popper/Popper.js.map +1 -1
  548. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  549. package/dist/components/Progress/Progress.js.map +1 -1
  550. package/dist/components/PromoBanner/PromoBanner.js +2 -5
  551. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  552. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  553. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  554. package/dist/components/Radio/Radio.js.map +1 -1
  555. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  556. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  557. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  558. package/dist/components/Removable/Removable.js.map +1 -1
  559. package/dist/components/RichCell/RichCell.js.map +1 -1
  560. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  561. package/dist/components/Root/Root.js.map +1 -1
  562. package/dist/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  563. package/dist/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  564. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  565. package/dist/components/Search/Search.js +6 -8
  566. package/dist/components/Search/Search.js.map +1 -1
  567. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  568. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  569. package/dist/components/Select/Select.d.ts +1 -1
  570. package/dist/components/Select/Select.js.map +1 -1
  571. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  572. package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
  573. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  574. package/dist/components/Separator/Separator.js.map +1 -1
  575. package/dist/components/SimpleCell/SimpleCell.d.ts +34 -1
  576. package/dist/components/SimpleCell/SimpleCell.js +29 -8
  577. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  578. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  579. package/dist/components/Slider/Slider.js.map +1 -1
  580. package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
  581. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  582. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
  583. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  584. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  585. package/dist/components/Spacing/Spacing.js.map +1 -1
  586. package/dist/components/Spinner/Spinner.js.map +1 -1
  587. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  588. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  589. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
  590. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  591. package/dist/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  592. package/dist/components/SubnavigationButton/SubnavigationButton.js +16 -15
  593. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  594. package/dist/components/Switch/Switch.js.map +1 -1
  595. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  596. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  597. package/dist/components/Tabs/Tabs.js.map +1 -1
  598. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  599. package/dist/components/Tappable/Tappable.d.ts +2 -1
  600. package/dist/components/Tappable/Tappable.js +3 -10
  601. package/dist/components/Tappable/Tappable.js.map +1 -1
  602. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  603. package/dist/components/Textarea/Textarea.d.ts +3 -2
  604. package/dist/components/Textarea/Textarea.js +4 -2
  605. package/dist/components/Textarea/Textarea.js.map +1 -1
  606. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  607. package/dist/components/Tooltip/TooltipContainer.js.map +1 -1
  608. package/dist/components/Touch/Touch.js.map +1 -1
  609. package/dist/components/Touch/TouchContext.js.map +1 -1
  610. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  611. package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
  612. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  613. package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -1
  614. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  615. package/dist/components/Typography/Text/Text.js.map +1 -1
  616. package/dist/components/Typography/Title/Title.js.map +1 -1
  617. package/dist/components/UsersStack/UsersStack.d.ts +7 -1
  618. package/dist/components/UsersStack/UsersStack.js +73 -31
  619. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  620. package/dist/components/View/View.js +2 -7
  621. package/dist/components/View/View.js.map +1 -1
  622. package/dist/components/View/ViewInfinite.js +1 -10
  623. package/dist/components/View/ViewInfinite.js.map +1 -1
  624. package/dist/components/View/utils.js.map +1 -1
  625. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -3
  626. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  627. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  628. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  629. package/dist/components.css +124 -17
  630. package/dist/components.css.map +1 -1
  631. package/dist/cssm/appearance/constants.js.map +1 -1
  632. package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
  633. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
  634. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  635. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  636. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
  637. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
  638. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
  639. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
  640. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  641. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
  642. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  643. package/dist/cssm/components/ActionSheet/types.js.map +1 -1
  644. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
  645. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
  646. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
  647. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  648. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  649. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
  650. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
  651. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  652. package/dist/cssm/components/Alert/Alert.css +7 -1
  653. package/dist/cssm/components/Alert/Alert.js +12 -12
  654. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  655. package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
  656. package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
  657. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  658. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  659. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  660. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  661. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  662. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  663. package/dist/cssm/components/Avatar/Avatar.js +4 -17
  664. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  665. package/dist/cssm/components/Badge/Badge.js.map +1 -1
  666. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  667. package/dist/cssm/components/BaseGallery/BaseGallery.js +11 -10
  668. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  669. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  670. package/dist/cssm/components/BaseGallery/types.js.map +1 -1
  671. package/dist/cssm/components/Button/Button.js.map +1 -1
  672. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  673. package/dist/cssm/components/Calendar/Calendar.d.ts +3 -2
  674. package/dist/cssm/components/Calendar/Calendar.js +9 -3
  675. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  676. package/dist/cssm/components/CalendarDay/CalendarDay.d.ts +4 -2
  677. package/dist/cssm/components/CalendarDay/CalendarDay.js +11 -23
  678. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  679. package/dist/cssm/components/CalendarDays/CalendarDays.d.ts +3 -1
  680. package/dist/cssm/components/CalendarDays/CalendarDays.js +4 -3
  681. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  682. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  683. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +7 -4
  684. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  685. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  686. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  687. package/dist/cssm/components/Card/Card.js.map +1 -1
  688. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  689. package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
  690. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  691. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  692. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
  693. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  694. package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
  695. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  696. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  697. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  698. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  699. package/dist/cssm/components/Chip/Chip.css +1 -1
  700. package/dist/cssm/components/Chip/Chip.d.ts +12 -5
  701. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  702. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  703. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
  704. package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
  705. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  706. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
  707. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
  708. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
  709. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
  710. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  711. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +6 -4
  712. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +47 -27
  713. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  714. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  715. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  716. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  717. package/dist/cssm/components/Counter/Counter.css +3 -1
  718. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  719. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  720. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  721. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  722. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  723. package/dist/cssm/components/CustomSelect/CustomSelect.js +32 -31
  724. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  725. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  726. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  727. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  728. package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
  729. package/dist/cssm/components/DateInput/DateInput.js +4 -2
  730. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  731. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  732. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  733. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
  734. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
  735. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  736. package/dist/cssm/components/Div/Div.js.map +1 -1
  737. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  738. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
  739. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
  740. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  741. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  742. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  743. package/dist/cssm/components/File/File.js.map +1 -1
  744. package/dist/cssm/components/FixedLayout/FixedLayout.css +7 -1
  745. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  746. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  747. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  748. package/dist/cssm/components/Footer/Footer.js.map +1 -1
  749. package/dist/cssm/components/FormField/FormField.css +4 -4
  750. package/dist/cssm/components/FormField/FormField.d.ts +2 -1
  751. package/dist/cssm/components/FormField/FormField.js +4 -2
  752. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  753. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  754. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  755. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  756. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  757. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
  758. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
  759. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  760. package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
  761. package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
  762. package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
  763. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  764. package/dist/cssm/components/Gallery/Gallery.js +2 -0
  765. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  766. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  767. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  768. package/dist/cssm/components/Group/Group.css +1 -1
  769. package/dist/cssm/components/Group/Group.d.ts +5 -1
  770. package/dist/cssm/components/Group/Group.js +4 -2
  771. package/dist/cssm/components/Group/Group.js.map +1 -1
  772. package/dist/cssm/components/Header/Header.css +1 -1
  773. package/dist/cssm/components/Header/Header.js +3 -10
  774. package/dist/cssm/components/Header/Header.js.map +1 -1
  775. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  776. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  777. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  778. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  779. package/dist/cssm/components/IconButton/IconButton.js +4 -3
  780. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  781. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  782. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  783. package/dist/cssm/components/Input/Input.css +1 -1
  784. package/dist/cssm/components/Input/Input.d.ts +1 -1
  785. package/dist/cssm/components/Input/Input.js +4 -2
  786. package/dist/cssm/components/Input/Input.js.map +1 -1
  787. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  788. package/dist/cssm/components/InputLike/InputLikeDivider.js.map +1 -1
  789. package/dist/cssm/components/Link/Link.css +1 -1
  790. package/dist/cssm/components/Link/Link.js.map +1 -1
  791. package/dist/cssm/components/List/List.d.ts +2 -1
  792. package/dist/cssm/components/List/List.js +1 -1
  793. package/dist/cssm/components/List/List.js.map +1 -1
  794. package/dist/cssm/components/List/ListContext.js.map +1 -1
  795. package/dist/cssm/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  796. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  797. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  798. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  799. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
  800. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
  801. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  802. package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
  803. package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
  804. package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
  805. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  806. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  807. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  808. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  809. package/dist/cssm/components/ModalRoot/ModalRoot.css +4 -1
  810. package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
  811. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  812. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  813. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  814. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
  815. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  816. package/dist/cssm/components/ModalRoot/constants.js.map +1 -1
  817. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  818. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  819. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  820. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
  821. package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
  822. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  823. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  824. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  825. package/dist/cssm/components/Panel/Panel.css +19 -1
  826. package/dist/cssm/components/Panel/Panel.js +4 -8
  827. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  828. package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
  829. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
  830. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  831. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
  832. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  833. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  834. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
  835. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  836. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  837. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  838. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
  839. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
  840. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  841. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
  842. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
  843. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  844. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  845. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  846. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  847. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  848. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  849. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  850. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  851. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  852. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  853. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  854. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  855. package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
  856. package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -5
  857. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  858. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  859. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  860. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  861. package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
  862. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  863. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  864. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  865. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  866. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  867. package/dist/cssm/components/Root/Root.js.map +1 -1
  868. package/dist/cssm/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  869. package/dist/cssm/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  870. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  871. package/dist/cssm/components/Search/Search.css +27 -1
  872. package/dist/cssm/components/Search/Search.js +6 -8
  873. package/dist/cssm/components/Search/Search.js.map +1 -1
  874. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  875. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  876. package/dist/cssm/components/Select/Select.css +1 -1
  877. package/dist/cssm/components/Select/Select.d.ts +1 -1
  878. package/dist/cssm/components/Select/Select.js.map +1 -1
  879. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  880. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
  881. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  882. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  883. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  884. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +34 -1
  885. package/dist/cssm/components/SimpleCell/SimpleCell.js +29 -8
  886. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  887. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  888. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  889. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
  890. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  891. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
  892. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  893. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  894. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  895. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  896. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  897. package/dist/cssm/components/SplitLayout/SplitLayout.css +7 -1
  898. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  899. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
  900. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
  901. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  902. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +9 -1
  903. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  904. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +16 -15
  905. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  906. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  907. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  908. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  909. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  910. package/dist/cssm/components/TabsItem/TabsItem.css +5 -1
  911. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  912. package/dist/cssm/components/Tappable/Tappable.d.ts +2 -1
  913. package/dist/cssm/components/Tappable/Tappable.js +3 -10
  914. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  915. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  916. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  917. package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
  918. package/dist/cssm/components/Textarea/Textarea.js +4 -2
  919. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  920. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  921. package/dist/cssm/components/Tooltip/TooltipContainer.js.map +1 -1
  922. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  923. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  924. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  925. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  926. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  927. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
  928. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  929. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  930. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  931. package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
  932. package/dist/cssm/components/UsersStack/UsersStack.d.ts +7 -1
  933. package/dist/cssm/components/UsersStack/UsersStack.js +73 -31
  934. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  935. package/dist/cssm/components/View/View.js +2 -7
  936. package/dist/cssm/components/View/View.js.map +1 -1
  937. package/dist/cssm/components/View/ViewInfinite.js +1 -10
  938. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  939. package/dist/cssm/components/View/utils.js.map +1 -1
  940. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -3
  941. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  942. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  943. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  944. package/dist/cssm/helpers/avatar.js.map +1 -1
  945. package/dist/cssm/helpers/getClassName.js.map +1 -1
  946. package/dist/cssm/helpers/getScheme.js.map +1 -1
  947. package/dist/cssm/helpers/math.js.map +1 -1
  948. package/dist/cssm/helpers/scheme.js.map +1 -1
  949. package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
  950. package/dist/cssm/hoc/withContext.js.map +1 -1
  951. package/dist/cssm/hoc/withInsets.js.map +1 -1
  952. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  953. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  954. package/dist/cssm/hooks/useAppearance.js.map +1 -1
  955. package/dist/cssm/hooks/useBooleanState.js.map +1 -1
  956. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -1
  957. package/dist/cssm/hooks/useBrowserInfo.js.map +1 -1
  958. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  959. package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  960. package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
  961. package/dist/cssm/hooks/useChipsInput.js.map +1 -0
  962. package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
  963. package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
  964. package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
  965. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  966. package/dist/cssm/hooks/useEffectDev.js.map +1 -1
  967. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  968. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  969. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  970. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  971. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  972. package/dist/cssm/hooks/useInsets.js.map +1 -1
  973. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  974. package/dist/cssm/hooks/useKeyboardInputTracker.js.map +1 -1
  975. package/dist/cssm/hooks/useObjectMemo.js.map +1 -1
  976. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  977. package/dist/cssm/hooks/usePagination.js.map +1 -1
  978. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  979. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  980. package/dist/cssm/hooks/usePrevious.js.map +1 -1
  981. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  982. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  983. package/dist/cssm/index.d.ts +5 -0
  984. package/dist/cssm/index.js +2 -0
  985. package/dist/cssm/index.js.map +1 -1
  986. package/dist/cssm/lib/SSR.js.map +1 -1
  987. package/dist/cssm/lib/accessibility.js.map +1 -1
  988. package/dist/cssm/lib/animate.js +1 -1
  989. package/dist/cssm/lib/animate.js.map +1 -1
  990. package/dist/cssm/lib/browser.js.map +1 -1
  991. package/dist/cssm/lib/calendar.js.map +1 -1
  992. package/dist/cssm/lib/callMultiple.js.map +1 -1
  993. package/dist/cssm/lib/classNames.js.map +1 -1
  994. package/dist/cssm/lib/classScopingMode.js.map +1 -1
  995. package/dist/cssm/lib/date.js.map +1 -1
  996. package/dist/cssm/lib/dom.js.map +1 -1
  997. package/dist/cssm/lib/fx.js.map +1 -1
  998. package/dist/cssm/lib/getNavId.js.map +1 -1
  999. package/dist/cssm/lib/is.js.map +1 -1
  1000. package/dist/cssm/lib/isRefObject.js.map +1 -1
  1001. package/dist/cssm/lib/jsxRuntime.d.js.map +1 -1
  1002. package/dist/cssm/lib/jsxRuntime.js.map +1 -1
  1003. package/dist/cssm/lib/offset.js.map +1 -1
  1004. package/dist/cssm/lib/platform.js.map +1 -1
  1005. package/dist/cssm/lib/polyfills.js.map +1 -1
  1006. package/dist/cssm/lib/prefixClass.js.map +1 -1
  1007. package/dist/cssm/lib/removeObjectKeys.js.map +1 -1
  1008. package/dist/cssm/lib/select.js.map +1 -1
  1009. package/dist/cssm/lib/styles.js.map +1 -1
  1010. package/dist/cssm/lib/supportEvents.js.map +1 -1
  1011. package/dist/cssm/lib/taptic.js.map +1 -1
  1012. package/dist/cssm/lib/testing.js +1 -1
  1013. package/dist/cssm/lib/testing.js.map +1 -1
  1014. package/dist/cssm/lib/touch.js +1 -1
  1015. package/dist/cssm/lib/touch.js.map +1 -1
  1016. package/dist/cssm/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1017. package/dist/cssm/lib/utils.js.map +1 -1
  1018. package/dist/cssm/lib/warnOnce.js.map +1 -1
  1019. package/dist/cssm/styles/components.css +124 -17
  1020. package/dist/cssm/styles/themes.css +1 -1
  1021. package/dist/cssm/styles/unstable.css +1 -1
  1022. package/dist/cssm/styles/vkcom_dark.css +1 -1
  1023. package/dist/cssm/styles/vkcom_light.css +1 -1
  1024. package/dist/cssm/tokenized/index.d.ts +58 -0
  1025. package/dist/cssm/tokenized/index.js +30 -0
  1026. package/dist/cssm/tokenized/index.js.map +1 -1
  1027. package/dist/cssm/types.js.map +1 -1
  1028. package/dist/cssm/unstable/index.js.map +1 -1
  1029. package/dist/helpers/avatar.js.map +1 -1
  1030. package/dist/helpers/getClassName.js.map +1 -1
  1031. package/dist/helpers/getScheme.js.map +1 -1
  1032. package/dist/helpers/math.js.map +1 -1
  1033. package/dist/helpers/scheme.js.map +1 -1
  1034. package/dist/hoc/withAdaptivity.js.map +1 -1
  1035. package/dist/hoc/withContext.js.map +1 -1
  1036. package/dist/hoc/withInsets.js.map +1 -1
  1037. package/dist/hoc/withPlatform.js.map +1 -1
  1038. package/dist/hooks/useAdaptivity.js.map +1 -1
  1039. package/dist/hooks/useAppearance.js.map +1 -1
  1040. package/dist/hooks/useBooleanState.js.map +1 -1
  1041. package/dist/hooks/useBridgeAdaptivity.js.map +1 -1
  1042. package/dist/hooks/useBrowserInfo.js.map +1 -1
  1043. package/dist/hooks/useCalendar.js.map +1 -1
  1044. package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
  1045. package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
  1046. package/dist/hooks/useChipsInput.js.map +1 -0
  1047. package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
  1048. package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
  1049. package/dist/hooks/useChipsSelect.js.map +1 -0
  1050. package/dist/hooks/useDateInput.js.map +1 -1
  1051. package/dist/hooks/useEffectDev.js.map +1 -1
  1052. package/dist/hooks/useEnsuredControl.js.map +1 -1
  1053. package/dist/hooks/useEventListener.js.map +1 -1
  1054. package/dist/hooks/useExternRef.js.map +1 -1
  1055. package/dist/hooks/useFocusVisible.js.map +1 -1
  1056. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  1057. package/dist/hooks/useInsets.js.map +1 -1
  1058. package/dist/hooks/useKeyboard.js.map +1 -1
  1059. package/dist/hooks/useKeyboardInputTracker.js.map +1 -1
  1060. package/dist/hooks/useObjectMemo.js.map +1 -1
  1061. package/dist/hooks/useOrientationChange.js.map +1 -1
  1062. package/dist/hooks/usePagination.js.map +1 -1
  1063. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1064. package/dist/hooks/usePlatform.js.map +1 -1
  1065. package/dist/hooks/usePrevious.js.map +1 -1
  1066. package/dist/hooks/useTimeout.js.map +1 -1
  1067. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1068. package/dist/index.d.ts +5 -0
  1069. package/dist/index.js +2 -0
  1070. package/dist/index.js.map +1 -1
  1071. package/dist/lib/SSR.js.map +1 -1
  1072. package/dist/lib/accessibility.js.map +1 -1
  1073. package/dist/lib/animate.js +1 -1
  1074. package/dist/lib/animate.js.map +1 -1
  1075. package/dist/lib/browser.js.map +1 -1
  1076. package/dist/lib/calendar.js.map +1 -1
  1077. package/dist/lib/callMultiple.js.map +1 -1
  1078. package/dist/lib/classNames.js.map +1 -1
  1079. package/dist/lib/classScopingMode.js.map +1 -1
  1080. package/dist/lib/date.js.map +1 -1
  1081. package/dist/lib/dom.js.map +1 -1
  1082. package/dist/lib/fx.js.map +1 -1
  1083. package/dist/lib/getNavId.js.map +1 -1
  1084. package/dist/lib/is.js.map +1 -1
  1085. package/dist/lib/isRefObject.js.map +1 -1
  1086. package/dist/lib/jsxRuntime.d.js.map +1 -1
  1087. package/dist/lib/jsxRuntime.js.map +1 -1
  1088. package/dist/lib/offset.js.map +1 -1
  1089. package/dist/lib/platform.js.map +1 -1
  1090. package/dist/lib/polyfills.js.map +1 -1
  1091. package/dist/lib/prefixClass.js.map +1 -1
  1092. package/dist/lib/removeObjectKeys.js.map +1 -1
  1093. package/dist/lib/select.js.map +1 -1
  1094. package/dist/lib/styles.js.map +1 -1
  1095. package/dist/lib/supportEvents.js.map +1 -1
  1096. package/dist/lib/taptic.js.map +1 -1
  1097. package/dist/lib/testing.js +1 -1
  1098. package/dist/lib/testing.js.map +1 -1
  1099. package/dist/lib/touch.js +1 -1
  1100. package/dist/lib/touch.js.map +1 -1
  1101. package/dist/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1102. package/dist/lib/utils.js.map +1 -1
  1103. package/dist/lib/warnOnce.js.map +1 -1
  1104. package/dist/tokenized/index.d.ts +58 -0
  1105. package/dist/tokenized/index.js +30 -0
  1106. package/dist/tokenized/index.js.map +1 -1
  1107. package/dist/types.js.map +1 -1
  1108. package/dist/unstable/index.js.map +1 -1
  1109. package/dist/unstable.css +1 -1
  1110. package/dist/unstable.css.map +1 -1
  1111. package/dist/vkui.css +125 -18
  1112. package/dist/vkui.css.map +1 -1
  1113. package/package.json +24 -25
  1114. package/src/components/ActionSheet/ActionSheet.css +31 -59
  1115. package/src/components/ActionSheet/ActionSheet.tsx +4 -7
  1116. package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
  1117. package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
  1118. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
  1119. package/src/components/ActionSheet/Readme.md +6 -30
  1120. package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
  1121. package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
  1122. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
  1123. package/src/components/Alert/Alert.css +79 -79
  1124. package/src/components/Alert/Alert.tsx +14 -14
  1125. package/src/components/Alert/Readme.md +83 -104
  1126. package/src/components/AppRoot/AppRoot.css +2 -1
  1127. package/src/components/AppRoot/AppRoot.tsx +1 -4
  1128. package/src/components/Avatar/Avatar.tsx +15 -17
  1129. package/src/components/Avatar/Readme.md +11 -11
  1130. package/src/components/BaseGallery/BaseGallery.tsx +9 -5
  1131. package/src/components/Calendar/Calendar.tsx +10 -1
  1132. package/src/components/Calendar/Readme.md +3 -0
  1133. package/src/components/CalendarDay/CalendarDay.tsx +30 -22
  1134. package/src/components/CalendarDays/CalendarDays.tsx +7 -1
  1135. package/src/components/CalendarHeader/CalendarHeader.tsx +9 -1
  1136. package/src/components/CalendarRange/Readme.md +3 -0
  1137. package/src/components/CardScroll/CardScroll.tsx +1 -2
  1138. package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
  1139. package/src/components/Cell/CellDragger/CellDragger.css +1 -1
  1140. package/src/components/Chip/Chip.css +1 -0
  1141. package/src/components/Chip/Chip.tsx +14 -2
  1142. package/src/components/ChipsInput/ChipsInput.css +0 -71
  1143. package/src/components/ChipsInput/ChipsInput.tsx +20 -220
  1144. package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
  1145. package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
  1146. package/src/components/ChipsSelect/ChipsSelect.css +8 -0
  1147. package/src/components/ChipsSelect/ChipsSelect.tsx +53 -39
  1148. package/src/components/Counter/Counter.css +13 -0
  1149. package/src/components/CustomSelect/CustomSelect.css +1 -0
  1150. package/src/components/CustomSelect/CustomSelect.tsx +2 -3
  1151. package/src/components/CustomSelect/Readme.md +8 -2
  1152. package/src/components/DateInput/DateInput.css +1 -1
  1153. package/src/components/DateInput/DateInput.tsx +6 -3
  1154. package/src/components/DateInput/Readme.md +13 -0
  1155. package/src/components/DateRangeInput/DateRangeInput.css +1 -1
  1156. package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
  1157. package/src/components/DateRangeInput/Readme.md +13 -0
  1158. package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
  1159. package/src/components/Epic/Readme.md +10 -5
  1160. package/src/components/FixedLayout/FixedLayout.css +19 -3
  1161. package/src/components/FormField/FormField.css +58 -6
  1162. package/src/components/FormField/FormField.tsx +3 -0
  1163. package/src/components/FormItem/FormItem.css +5 -3
  1164. package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
  1165. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
  1166. package/src/components/FormLayoutGroup/Readme.md +58 -48
  1167. package/src/components/FormStatus/FormStatus.css +8 -5
  1168. package/src/components/FormStatus/FormStatus.tsx +4 -8
  1169. package/src/components/FormStatus/Readme.md +4 -0
  1170. package/src/components/Gallery/Gallery.tsx +1 -0
  1171. package/src/components/Gallery/Readme.md +64 -18
  1172. package/src/components/Gradient/Readme.md +1 -1
  1173. package/src/components/Group/Group.css +11 -2
  1174. package/src/components/Group/Group.tsx +7 -1
  1175. package/src/components/Group/Readme.md +2 -2
  1176. package/src/components/Header/Header.css +10 -11
  1177. package/src/components/Header/Header.tsx +9 -8
  1178. package/src/components/HorizontalCell/Readme.md +1 -1
  1179. package/src/components/IconButton/IconButton.tsx +2 -2
  1180. package/src/components/Input/Input.css +1 -1
  1181. package/src/components/Input/Input.tsx +2 -0
  1182. package/src/components/Link/Link.css +2 -1
  1183. package/src/components/List/List.tsx +3 -4
  1184. package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
  1185. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
  1186. package/src/components/ModalDismissButton/Readme.md +1 -1
  1187. package/src/components/ModalPage/ModalPage.css +69 -63
  1188. package/src/components/ModalPage/ModalPage.tsx +24 -11
  1189. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
  1190. package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
  1191. package/src/components/ModalRoot/ModalRoot.css +14 -2
  1192. package/src/components/ModalRoot/ModalRoot.tsx +24 -24
  1193. package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
  1194. package/src/components/ModalRoot/Readme.md +8 -3
  1195. package/src/components/NativeSelect/NativeSelect.tsx +5 -2
  1196. package/src/components/Panel/Panel.css +54 -24
  1197. package/src/components/Panel/Panel.tsx +7 -9
  1198. package/src/components/PanelHeader/PanelHeader.css +20 -8
  1199. package/src/components/PanelHeader/PanelHeader.tsx +11 -12
  1200. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
  1201. package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
  1202. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
  1203. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
  1204. package/src/components/PanelHeaderContent/PanelHeaderContent.css +14 -26
  1205. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +10 -3
  1206. package/src/components/PanelHeaderContent/Readme.md +5 -1
  1207. package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
  1208. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
  1209. package/src/components/PanelHeaderContext/Readme.md +85 -101
  1210. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
  1211. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
  1212. package/src/components/PromoBanner/PromoBanner.css +10 -22
  1213. package/src/components/PromoBanner/PromoBanner.tsx +2 -6
  1214. package/src/components/RichTooltip/Readme.md +2 -2
  1215. package/src/components/Search/Search.css +134 -48
  1216. package/src/components/Search/Search.tsx +13 -8
  1217. package/src/components/Select/Select.css +2 -2
  1218. package/src/components/SelectMimicry/Readme.md +3 -3
  1219. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
  1220. package/src/components/SimpleCell/Readme.md +3 -3
  1221. package/src/components/SimpleCell/SimpleCell.css +6 -1
  1222. package/src/components/SimpleCell/SimpleCell.tsx +71 -8
  1223. package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
  1224. package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
  1225. package/src/components/Snackbar/Readme.md +12 -3
  1226. package/src/components/SplitLayout/Readme.md +1 -1
  1227. package/src/components/SplitLayout/SplitLayout.css +8 -2
  1228. package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
  1229. package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
  1230. package/src/components/SubnavigationButton/Readme.md +133 -116
  1231. package/src/components/SubnavigationButton/SubnavigationButton.css +95 -49
  1232. package/src/components/SubnavigationButton/SubnavigationButton.tsx +22 -18
  1233. package/src/components/TabbarItem/Readme.md +6 -1
  1234. package/src/components/Tabs/Readme.md +10 -2
  1235. package/src/components/TabsItem/TabsItem.css +9 -3
  1236. package/src/components/Tappable/Tappable.tsx +22 -22
  1237. package/src/components/Textarea/Textarea.css +1 -1
  1238. package/src/components/Textarea/Textarea.tsx +5 -2
  1239. package/src/components/Tooltip/Readme.md +9 -9
  1240. package/src/components/Touch/Readme.md +4 -4
  1241. package/src/components/UsersStack/UsersStack.css +42 -0
  1242. package/src/components/UsersStack/UsersStack.tsx +80 -18
  1243. package/src/components/View/Readme.md +5 -5
  1244. package/src/components/View/View.tsx +2 -9
  1245. package/src/components/View/ViewInfinite.tsx +14 -14
  1246. package/src/components/VisuallyHiddenInput/VisuallyHiddenInput.tsx +1 -6
  1247. package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
  1248. package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
  1249. package/src/index.ts +5 -0
  1250. package/src/lib/animate.ts +1 -1
  1251. package/src/lib/testing.ts +1 -1
  1252. package/src/lib/touch.ts +1 -1
  1253. package/src/styles/components.css +1 -0
  1254. package/src/styles/vkcom_dark.css +8 -8
  1255. package/src/styles/vkcom_light.css +34 -34
  1256. package/src/testing/utils.tsx +1 -1
  1257. package/src/tokenized/index.ts +88 -0
  1258. package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
  1259. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
  1260. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
  1261. package/dist/cjs/components/UsersStack/masks.js +0 -29
  1262. package/dist/cjs/components/UsersStack/masks.js.map +0 -1
  1263. package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
  1264. package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
  1265. package/dist/components/UsersStack/masks.d.ts +0 -1
  1266. package/dist/components/UsersStack/masks.js +0 -20
  1267. package/dist/components/UsersStack/masks.js.map +0 -1
  1268. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
  1269. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
  1270. package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
  1271. package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
  1272. package/dist/cssm/components/UsersStack/masks.js +0 -20
  1273. package/dist/cssm/components/UsersStack/masks.js.map +0 -1
  1274. package/src/components/DropdownIcon/DropdownIcon.css +0 -3
  1275. package/src/components/UsersStack/masks.tsx +0 -69
@@ -27,13 +27,11 @@ var _DropdownIcon = require("../DropdownIcon/DropdownIcon");
27
27
 
28
28
  var _classNames = require("../../lib/classNames");
29
29
 
30
- var _ChipsInput = require("../ChipsInput/ChipsInput");
30
+ var _ChipsInputBase = require("../ChipsInputBase/ChipsInputBase");
31
31
 
32
32
  var _CustomSelectOption = require("../CustomSelectOption/CustomSelectOption");
33
33
 
34
- var _useChipsSelect2 = require("./useChipsSelect");
35
-
36
- var _withAdaptivity = require("../../hoc/withAdaptivity");
34
+ var _useChipsSelect2 = require("../../hooks/useChipsSelect");
37
35
 
38
36
  var _utils = require("../../lib/utils");
39
37
 
@@ -51,11 +49,15 @@ var _select = require("../../lib/select");
51
49
 
52
50
  var _CustomSelectDropdown = require("../CustomSelectDropdown/CustomSelectDropdown");
53
51
 
52
+ var _FormField = require("../FormField/FormField");
53
+
54
+ var _IconButton = require("../IconButton/IconButton");
55
+
54
56
  var _excluded = ["option"],
55
- _excluded2 = ["style", "onFocus", "onKeyDown", "className", "fetching", "renderOption", "emptyText", "getRef", "getRootRef", "disabled", "placeholder", "tabIndex", "getOptionValue", "getOptionLabel", "showSelected", "getNewOptionData", "renderChip", "popupDirection", "creatable", "filterFn", "inputValue", "creatableText", "sizeY", "closeAfterSelect", "onChangeStart", "after", "options"];
57
+ _excluded2 = ["style", "onFocus", "onKeyDown", "className", "fetching", "renderOption", "emptyText", "getRef", "getRootRef", "disabled", "placeholder", "tabIndex", "getOptionValue", "getOptionLabel", "showSelected", "getNewOptionData", "renderChip", "popupDirection", "creatable", "filterFn", "inputValue", "creatableText", "closeAfterSelect", "onChangeStart", "before", "options", "fixDropdownWidth", "forceDropdownPortal"];
56
58
  var FOCUS_ACTION_NEXT = "next";
57
59
  var FOCUS_ACTION_PREV = "prev";
58
- var chipsSelectDefaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _ChipsInput.chipsInputDefaultProps), {}, {
60
+ var chipsSelectDefaultProps = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, _ChipsInputBase.chipsInputDefaultProps), {}, {
59
61
  emptyText: "Ничего не найдено",
60
62
  creatableText: "Создать значение",
61
63
  onChangeStart: _utils.noop,
@@ -71,8 +73,11 @@ var chipsSelectDefaultProps = (0, _objectSpread2.default)((0, _objectSpread2.def
71
73
  return (0, _jsxRuntime.createScopedElement)(_CustomSelectOption.CustomSelectOption, restProps);
72
74
  }
73
75
  });
76
+ /**
77
+ * @see https://vkcom.github.io/VKUI/#/ChipsSelect
78
+ */
74
79
 
75
- var ChipsSelectComponent = function ChipsSelectComponent(props) {
80
+ var ChipsSelect = function ChipsSelect(props) {
76
81
  var propsWithDefault = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, chipsSelectDefaultProps), props);
77
82
  var style = propsWithDefault.style,
78
83
  onFocus = propsWithDefault.onFocus,
@@ -96,11 +101,12 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
96
101
  filterFn = propsWithDefault.filterFn,
97
102
  inputValue = propsWithDefault.inputValue,
98
103
  creatableText = propsWithDefault.creatableText,
99
- sizeY = propsWithDefault.sizeY,
100
104
  closeAfterSelect = propsWithDefault.closeAfterSelect,
101
105
  onChangeStart = propsWithDefault.onChangeStart,
102
- after = propsWithDefault.after,
106
+ before = propsWithDefault.before,
103
107
  options = propsWithDefault.options,
108
+ fixDropdownWidth = propsWithDefault.fixDropdownWidth,
109
+ forceDropdownPortal = propsWithDefault.forceDropdownPortal,
104
110
  restProps = (0, _objectWithoutProperties2.default)(propsWithDefault, _excluded2);
105
111
 
106
112
  var _useDOM = (0, _dom.useDOM)(),
@@ -139,9 +145,9 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
139
145
  };
140
146
 
141
147
  var handleClickOutside = function handleClickOutside(e) {
142
- var rootNode = rootRef.current;
148
+ var _rootRef$current;
143
149
 
144
- if (rootNode && e.target !== rootNode && !rootNode.contains(e.target)) {
150
+ if (e.target !== rootRef.current && !((_rootRef$current = rootRef.current) !== null && _rootRef$current !== void 0 && _rootRef$current.contains(e.target))) {
145
151
  setOpened(false);
146
152
  }
147
153
  };
@@ -297,12 +303,35 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
297
303
  var observableRefs = React.useMemo(function () {
298
304
  return [scrollBoxRef, rootRef];
299
305
  }, [rootRef, scrollBoxRef]);
300
- return (0, _jsxRuntime.createScopedElement)("div", {
301
- vkuiClass: (0, _classNames.classNames)("ChipsSelect", "ChipsSelect--sizeY-".concat(sizeY)),
302
- ref: rootRef,
306
+
307
+ var toggleOpened = function toggleOpened() {
308
+ setOpened(function (prevOpened) {
309
+ return !prevOpened;
310
+ });
311
+ };
312
+
313
+ return (0, _jsxRuntime.createScopedElement)(_FormField.FormField, {
314
+ vkuiClass: (0, _classNames.classNames)("ChipsSelect", opened && "Select--open", opened && (isPopperDirectionTop ? "Select--pop-up" : "Select--pop-down")),
315
+ getRootRef: rootRef,
303
316
  style: style,
304
- className: className
305
- }, (0, _jsxRuntime.createScopedElement)(_ChipsInput.ChipsInput, (0, _extends2.default)({}, restProps, {
317
+ className: className,
318
+ disabled: disabled,
319
+ role: "application",
320
+ "aria-disabled": disabled,
321
+ "aria-readonly": restProps.readOnly,
322
+ after: (0, _jsxRuntime.createScopedElement)(_IconButton.IconButton, {
323
+ vkuiClass: "ChipsSelect__dropdown",
324
+ activeMode: "",
325
+ hoverMode: "" // TODO: add label customization
326
+ ,
327
+ "aria-label": opened ? "Скрыть" : "Развернуть",
328
+ onClick: toggleOpened
329
+ }, (0, _jsxRuntime.createScopedElement)(_DropdownIcon.DropdownIcon, {
330
+ vkuiClass: "ChipsSelect__icon",
331
+ opened: opened
332
+ })),
333
+ before: before
334
+ }, (0, _jsxRuntime.createScopedElement)(_ChipsInputBase.ChipsInputBase, (0, _extends2.default)({}, restProps, {
306
335
  tabIndex: tabIndex,
307
336
  value: selectedOptions,
308
337
  inputValue: fieldValue,
@@ -313,11 +342,9 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
313
342
  onFocus: handleFocus,
314
343
  onKeyDown: handleKeyDown,
315
344
  placeholder: placeholder,
316
- vkuiClass: (0, _classNames.classNames)(opened && "Select--open", opened && (isPopperDirectionTop ? "Select--pop-up" : "Select--pop-down")),
317
345
  getRef: getRef,
318
346
  disabled: disabled,
319
- onInputChange: handleInputChange,
320
- after: (0, _jsxRuntime.createScopedElement)(_DropdownIcon.DropdownIcon, null)
347
+ onInputChange: handleInputChange
321
348
  })), opened && (0, _jsxRuntime.createScopedElement)(_CustomSelectDropdown.CustomSelectDropdown, {
322
349
  targetRef: rootRef,
323
350
  placement: popupDirection,
@@ -326,7 +353,9 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
326
353
  onPlacementChange: onPlacementChange,
327
354
  onMouseLeave: onDropdownMouseLeave,
328
355
  fetching: fetching,
329
- vkuiClass: "ChipsSelect__options"
356
+ vkuiClass: "ChipsSelect__options",
357
+ sameWidth: fixDropdownWidth,
358
+ forcePortal: forceDropdownPortal
330
359
  }, showCreatable && (0, _jsxRuntime.createScopedElement)(_CustomSelectOption.CustomSelectOption, {
331
360
  hovered: focusedOptionIndex === 0,
332
361
  onMouseDown: addOptionFromInput,
@@ -372,14 +401,6 @@ var ChipsSelectComponent = function ChipsSelectComponent(props) {
372
401
  }));
373
402
  })));
374
403
  };
375
- /**
376
- * @see https://vkcom.github.io/VKUI/#/ChipsSelect
377
- */
378
404
 
379
-
380
- var ChipsSelect = (0, _withAdaptivity.withAdaptivity)(ChipsSelectComponent, {
381
- sizeY: true
382
- });
383
405
  exports.ChipsSelect = ChipsSelect;
384
- ChipsSelect.displayName = "ChipsSelect";
385
406
  //# sourceMappingURL=ChipsSelect.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ChipsSelect/ChipsSelect.tsx"],"names":["FOCUS_ACTION_NEXT","FOCUS_ACTION_PREV","chipsSelectDefaultProps","chipsInputDefaultProps","emptyText","creatableText","onChangeStart","noop","creatable","fetching","showSelected","closeAfterSelect","options","filterFn","defaultFilterFn","renderOption","option","restProps","ChipsSelectComponent","props","propsWithDefault","style","onFocus","onKeyDown","className","getRef","getRootRef","disabled","placeholder","tabIndex","getOptionValue","getOptionLabel","getNewOptionData","renderChip","popupDirection","inputValue","sizeY","after","document","React","useState","undefined","popperPlacement","setPopperPlacement","scrollBoxRef","useRef","rootRef","fieldValue","selectedOptions","opened","setOpened","addOptionFromInput","filteredOptions","addOption","handleInputChange","clearInput","focusedOption","setFocusedOption","focusedOptionIndex","setFocusedOptionIndex","showCreatable","Boolean","length","handleFocus","e","handleClickOutside","rootNode","current","target","contains","chipsSelectOptions","scrollToElement","index","center","dropdown","item","dropdownHeight","offsetHeight","scrollTop","itemTop","offsetTop","itemHeight","focusOptionByIndex","oldIndex","focusOption","nextIndex","type","handleKeyDown","key","defaultPrevented","preventDefault","includes","useEffect","findIndex","value","renderChipWrapper","renderChipProps","onRemoveWrapper","stopPropagation","onRemove","isPopperDirectionTop","onPlacementChange","useCallback","placement","onDropdownMouseLeave","observableRefs","useMemo","map","label","hovered","selected","find","selectedOption","children","onMouseDown","onMouseEnter","ChipsSelect","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AAQA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;;;AAsDA,IAAMA,iBAAkC,GAAG,MAA3C;AACA,IAAMC,iBAAkC,GAAG,MAA3C;AAEA,IAAMC,uBAA8C,+DAC/CC,kCAD+C;AAElDC,EAAAA,SAAS,EAAE,mBAFuC;AAGlDC,EAAAA,aAAa,EAAE,kBAHmC;AAIlDC,EAAAA,aAAa,EAAEC,WAJmC;AAKlDC,EAAAA,SAAS,EAAE,KALuC;AAMlDC,EAAAA,QAAQ,EAAE,KANwC;AAOlDC,EAAAA,YAAY,EAAE,IAPoC;AAQlDC,EAAAA,gBAAgB,EAAE,IARgC;AASlDC,EAAAA,OAAO,EAAE,EATyC;AAUlDC,EAAAA,QAAQ,EAAEC,uBAVwC;AAWlDC,EAAAA,YAXkD,8BAWX;AAAA,QAAxBC,MAAwB,QAAxBA,MAAwB;AAAA,QAAbC,SAAa;AACrC,WAAO,qCAAC,sCAAD,EAAwBA,SAAxB,CAAP;AACD;AAbiD,EAApD;;AAgBA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAuB,CAC3BC,KAD2B,EAExB;AACH,MAAMC,gBAAgB,+DAAQlB,uBAAR,GAAoCiB,KAApC,CAAtB;AACA,MACEE,KADF,GA6BID,gBA7BJ,CACEC,KADF;AAAA,MAEEC,OAFF,GA6BIF,gBA7BJ,CAEEE,OAFF;AAAA,MAGEC,SAHF,GA6BIH,gBA7BJ,CAGEG,SAHF;AAAA,MAIEC,SAJF,GA6BIJ,gBA7BJ,CAIEI,SAJF;AAAA,MAKEf,QALF,GA6BIW,gBA7BJ,CAKEX,QALF;AAAA,MAMEM,YANF,GA6BIK,gBA7BJ,CAMEL,YANF;AAAA,MAOEX,SAPF,GA6BIgB,gBA7BJ,CAOEhB,SAPF;AAAA,MAQEqB,MARF,GA6BIL,gBA7BJ,CAQEK,MARF;AAAA,MASEC,UATF,GA6BIN,gBA7BJ,CASEM,UATF;AAAA,MAUEC,QAVF,GA6BIP,gBA7BJ,CAUEO,QAVF;AAAA,MAWEC,WAXF,GA6BIR,gBA7BJ,CAWEQ,WAXF;AAAA,MAYEC,QAZF,GA6BIT,gBA7BJ,CAYES,QAZF;AAAA,MAaEC,cAbF,GA6BIV,gBA7BJ,CAaEU,cAbF;AAAA,MAcEC,cAdF,GA6BIX,gBA7BJ,CAcEW,cAdF;AAAA,MAeErB,YAfF,GA6BIU,gBA7BJ,CAeEV,YAfF;AAAA,MAgBEsB,gBAhBF,GA6BIZ,gBA7BJ,CAgBEY,gBAhBF;AAAA,MAiBEC,UAjBF,GA6BIb,gBA7BJ,CAiBEa,UAjBF;AAAA,MAkBEC,cAlBF,GA6BId,gBA7BJ,CAkBEc,cAlBF;AAAA,MAmBE1B,SAnBF,GA6BIY,gBA7BJ,CAmBEZ,SAnBF;AAAA,MAoBEK,QApBF,GA6BIO,gBA7BJ,CAoBEP,QApBF;AAAA,MAqBEsB,UArBF,GA6BIf,gBA7BJ,CAqBEe,UArBF;AAAA,MAsBE9B,aAtBF,GA6BIe,gBA7BJ,CAsBEf,aAtBF;AAAA,MAuBE+B,KAvBF,GA6BIhB,gBA7BJ,CAuBEgB,KAvBF;AAAA,MAwBEzB,gBAxBF,GA6BIS,gBA7BJ,CAwBET,gBAxBF;AAAA,MAyBEL,aAzBF,GA6BIc,gBA7BJ,CAyBEd,aAzBF;AAAA,MA0BE+B,KA1BF,GA6BIjB,gBA7BJ,CA0BEiB,KA1BF;AAAA,MA2BEzB,OA3BF,GA6BIQ,gBA7BJ,CA2BER,OA3BF;AAAA,MA4BKK,SA5BL,0CA6BIG,gBA7BJ;;AA+BA,gBAAqB,kBAArB;AAAA,MAAQkB,QAAR,WAAQA,QAAR;;AAEA,wBAA8CC,KAAK,CAACC,QAAN,CAE5CC,SAF4C,CAA9C;AAAA;AAAA,MAAOC,eAAP;AAAA,MAAwBC,kBAAxB;;AAIA,MAAMC,YAAY,GAAGL,KAAK,CAACM,MAAN,CAA6B,IAA7B,CAArB;AACA,MAAMC,OAAO,GAAG,gCAAarB,MAAb,CAAhB;;AACA,wBAcI,qCAAeL,gBAAf,CAdJ;AAAA,MACE2B,UADF,mBACEA,UADF;AAAA,8CAEEC,eAFF;AAAA,MAEEA,eAFF,sCAEoB,EAFpB;AAAA,MAGEC,MAHF,mBAGEA,MAHF;AAAA,MAIEC,SAJF,mBAIEA,SAJF;AAAA,MAKEC,kBALF,mBAKEA,kBALF;AAAA,MAMEC,eANF,mBAMEA,eANF;AAAA,MAOEC,SAPF,mBAOEA,SAPF;AAAA,MAQEC,iBARF,mBAQEA,iBARF;AAAA,MASEC,UATF,mBASEA,UATF;AAAA,MAUEC,aAVF,mBAUEA,aAVF;AAAA,MAWEC,gBAXF,mBAWEA,gBAXF;AAAA,MAYEC,kBAZF,mBAYEA,kBAZF;AAAA,MAaEC,qBAbF,mBAaEA,qBAbF;;AAgBA,MAAMC,aAAa,GAAGC,OAAO,CAC3BrD,SAAS,IAAIH,aAAb,IAA8B,CAAC+C,eAAe,CAACU,MAA/C,IAAyDf,UAD9B,CAA7B;;AAIA,MAAMgB,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAA2C;AAC7Dd,IAAAA,SAAS,CAAC,IAAD,CAAT;AACAS,IAAAA,qBAAqB,CAAC,CAAD,CAArB;AACArC,IAAAA,OAAO,CAAE0C,CAAF,CAAP;AACD,GAJD;;AAMA,MAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACD,CAAD,EAAmB;AAC5C,QAAiBE,QAAjB,GAA8BpB,OAA9B,CAAQqB,OAAR;;AACA,QACED,QAAQ,IACRF,CAAC,CAACI,MAAF,KAAaF,QADb,IAEA,CAACA,QAAQ,CAACG,QAAT,CAAkBL,CAAC,CAACI,MAApB,CAHH,EAIE;AACAlB,MAAAA,SAAS,CAAC,KAAD,CAAT;AACD;AACF,GATD;;AAWA,MAAMoB,kBAAkB,GAAG/B,KAAK,CAACM,MAAN,CAA4B,EAA5B,EAAgCsB,OAA3D;;AAEA,MAAMI,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD,EAAmC;AAAA,QAAnBC,MAAmB,uEAAV,KAAU;AACzD,QAAMC,QAAQ,GAAG9B,YAAY,CAACuB,OAA9B;AACA,QAAMQ,IAAI,GAAGL,kBAAkB,CAACE,KAAD,CAA/B;;AAEA,QAAI,CAACG,IAAD,IAAS,CAACD,QAAd,EAAwB;AACtB;AACD;;AAED,QAAME,cAAc,GAAGF,QAAQ,CAACG,YAAhC;AACA,QAAMC,SAAS,GAAGJ,QAAQ,CAACI,SAA3B;AACA,QAAMC,OAAO,GAAGJ,IAAI,CAACK,SAArB;AACA,QAAMC,UAAU,GAAGN,IAAI,CAACE,YAAxB;;AAEA,QAAIJ,MAAJ,EAAY;AACVC,MAAAA,QAAQ,CAACI,SAAT,GAAqBC,OAAO,GAAGH,cAAc,GAAG,CAA3B,GAA+BK,UAAU,GAAG,CAAjE;AACD,KAFD,MAEO,IAAIF,OAAO,GAAGE,UAAV,GAAuBL,cAAc,GAAGE,SAA5C,EAAuD;AAC5DJ,MAAAA,QAAQ,CAACI,SAAT,GAAqBC,OAAO,GAAGH,cAAV,GAA2BK,UAAhD;AACD,KAFM,MAEA,IAAIF,OAAO,GAAGD,SAAd,EAAyB;AAC9BJ,MAAAA,QAAQ,CAACI,SAAT,GAAqBC,OAArB;AACD;AACF,GApBD;;AAsBA,MAAMG,kBAAkB,GAAG,SAArBA,kBAAqB,CAACV,KAAD,EAAgBW,QAAhB,EAAqC;AAC9D,QAAQrB,MAAR,GAAmBV,eAAnB,CAAQU,MAAR;;AAEA,QAAIU,KAAK,GAAG,CAAZ,EAAe;AACbA,MAAAA,KAAK,GAAGV,MAAM,GAAG,CAAjB;AACD,KAFD,MAEO,IAAIU,KAAK,IAAIV,MAAb,EAAqB;AAC1BU,MAAAA,KAAK,GAAG,CAAR;AACD;;AAED,QAAIA,KAAK,KAAKW,QAAd,EAAwB;AACtB;AACD;;AAEDZ,IAAAA,eAAe,CAACC,KAAD,CAAf;AACAb,IAAAA,qBAAqB,CAACa,KAAD,CAArB;AACD,GAfD;;AAiBA,MAAMY,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAA2BC,IAA3B,EAAqD;AACvE,QAAId,KAAK,GAAG,OAAOa,SAAP,KAAqB,QAArB,GAAgC,CAAC,CAAjC,GAAqCA,SAAjD;;AAEA,QAAIC,IAAI,KAAKtF,iBAAb,EAAgC;AAC9BwE,MAAAA,KAAK,GAAGA,KAAK,GAAG,CAAhB;AACD,KAFD,MAEO,IAAIc,IAAI,KAAKrF,iBAAb,EAAgC;AACrCuE,MAAAA,KAAK,GAAGA,KAAK,GAAG,CAAhB;AACD;;AAED,QAAId,kBAAkB,IAAI,IAA1B,EAAgC;AAC9BwB,MAAAA,kBAAkB,CAACV,KAAD,EAAQd,kBAAR,CAAlB;AACD;AACF,GAZD;;AAcA,MAAM6B,aAAa,GAAG,SAAhBA,aAAgB,CAACvB,CAAD,EAA8C;AAClEzC,IAAAA,SAAS,CAAEyC,CAAF,CAAT;;AAEA,QAAIA,CAAC,CAACwB,GAAF,KAAU,SAAV,IAAuB,CAACxB,CAAC,CAACyB,gBAA9B,EAAgD;AAC9CzB,MAAAA,CAAC,CAAC0B,cAAF;;AAEA,UAAI,CAACzC,MAAL,EAAa;AACXC,QAAAA,SAAS,CAAC,IAAD,CAAT;AACAS,QAAAA,qBAAqB,CAAC,CAAD,CAArB;AACD,OAHD,MAGO;AACLyB,QAAAA,WAAW,CAAC1B,kBAAD,EAAqBzD,iBAArB,CAAX;AACD;AACF;;AAED,QAAI+D,CAAC,CAACwB,GAAF,KAAU,WAAV,IAAyB,CAACxB,CAAC,CAACyB,gBAAhC,EAAkD;AAChDzB,MAAAA,CAAC,CAAC0B,cAAF;;AAEA,UAAI,CAACzC,MAAL,EAAa;AACXC,QAAAA,SAAS,CAAC,IAAD,CAAT;AACAS,QAAAA,qBAAqB,CAAC,CAAD,CAArB;AACD,OAHD,MAGO;AACLyB,QAAAA,WAAW,CAAC1B,kBAAD,EAAqB1D,iBAArB,CAAX;AACD;AACF;;AAED,QACEgE,CAAC,CAACwB,GAAF,KAAU,OAAV,IACA,CAACxB,CAAC,CAACyB,gBADH,IAEAxC,MAFA,IAGAS,kBAAkB,IAAI,IAJxB,EAKE;AACA,UAAM1C,OAAM,GAAGoC,eAAe,CAACM,kBAAD,CAA9B;;AAEA,UAAI1C,OAAJ,EAAY;AACVV,QAAAA,aAAa,CAAE0D,CAAF,EAAKhD,OAAL,CAAb;;AAEA,YAAI,CAACgD,CAAC,CAACyB,gBAAP,EAAyB;AACvBpC,UAAAA,SAAS,CAACrC,OAAD,CAAT;AACA2C,UAAAA,qBAAqB,CAAC,IAAD,CAArB;AACAJ,UAAAA,UAAU;AACV5C,UAAAA,gBAAgB,IAAIuC,SAAS,CAAC,KAAD,CAA7B;AACAc,UAAAA,CAAC,CAAC0B,cAAF;AACD;AACF,OAVD,MAUO,IAAI,CAAClF,SAAL,EAAgB;AACrBwD,QAAAA,CAAC,CAAC0B,cAAF;AACD;AACF;;AAED,QAAI,CAAC,QAAD,EAAW,KAAX,EAAkBC,QAAlB,CAA2B3B,CAAC,CAACwB,GAA7B,KAAqC,CAACxB,CAAC,CAACyB,gBAAxC,IAA4DxC,MAAhE,EAAwE;AACtEC,MAAAA,SAAS,CAAC,KAAD,CAAT;AACD;AACF,GAnDD;;AAqDAX,EAAAA,KAAK,CAACqD,SAAN,CAAgB,YAAM;AACpB,QAAIlC,kBAAkB,IAAI,IAAtB,IAA8BN,eAAe,CAACM,kBAAD,CAAjD,EAAuE;AACrED,MAAAA,gBAAgB,CAACL,eAAe,CAACM,kBAAD,CAAhB,CAAhB;AACD,KAFD,MAEO,IAAIA,kBAAkB,KAAK,IAAvB,IAA+BA,kBAAkB,KAAK,CAA1D,EAA6D;AAClED,MAAAA,gBAAgB,CAAC,IAAD,CAAhB;AACD;AACF,GAND,EAMG,CAACC,kBAAD,EAAqBN,eAArB,EAAsCK,gBAAtC,CANH;AAQAlB,EAAAA,KAAK,CAACqD,SAAN,CAAgB,YAAM;AACpB,QAAMpB,KAAK,GAAGhB,aAAa,GACvBJ,eAAe,CAACyC,SAAhB,CAA0B;AAAA,UAAGC,KAAH,SAAGA,KAAH;AAAA,aAAeA,KAAK,KAAKtC,aAAa,CAACsC,KAAvC;AAAA,KAA1B,CADuB,GAEvB,CAAC,CAFL;;AAIA,QACEtB,KAAK,KAAK,CAAC,CAAX,IACA,CAAC,CAACpB,eAAe,CAACU,MADlB,IAEA,CAACF,aAFD,IAGAjD,gBAJF,EAKE;AACA8C,MAAAA,gBAAgB,CAACL,eAAe,CAAC,CAAD,CAAhB,CAAhB;AACD;AACF,GAbD,EAaG,CACDA,eADC,EAEDI,aAFC,EAGDI,aAHC,EAIDjD,gBAJC,EAKD8C,gBALC,CAbH;AAqBA,sDAAuBnB,QAAvB,EAAiC,OAAjC,EAA0C2B,kBAA1C;;AAEA,MAAM8B,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBC,eADwB,EAErB;AACH,QAAIA,eAAe,KAAKvD,SAAxB,EAAmC;AACjC,aAAO,IAAP;AACD;;AACD,QAAMwD,eAAe,GAAG,SAAlBA,eAAkB,CACtBjC,CADsB,EAEtB8B,KAFsB,EAGnB;AAAA;;AACH9B,MAAAA,CAAC,SAAD,IAAAA,CAAC,WAAD,YAAAA,CAAC,CAAE0B,cAAH;AACA1B,MAAAA,CAAC,SAAD,IAAAA,CAAC,WAAD,YAAAA,CAAC,CAAEkC,eAAH;AAEA,+BAAAF,eAAe,CAACG,QAAhB,qFAAAH,eAAe,EAAYhC,CAAZ,EAAe8B,KAAf,CAAf;AACD,KARD;;AAUA,WAAO7D,UAAU,6DACZ+D,eADY;AAEfG,MAAAA,QAAQ,EAAEF;AAFK,OAAjB;AAID,GApBD;;AAsBA,MAAMG,oBAAoB,GAAG1D,eAAH,aAAGA,eAAH,uBAAGA,eAAe,CAAEiD,QAAjB,CAA0B,KAA1B,CAA7B;AAEA,MAAMU,iBAAiB,GAAG9D,KAAK,CAAC+D,WAAN,CACxB,UAACC,SAAD,EAA2B;AACzB5D,IAAAA,kBAAkB,CAAC4D,SAAD,CAAlB;AACD,GAHuB,EAIxB,CAAC5D,kBAAD,CAJwB,CAA1B;AAOA,MAAM6D,oBAAoB,GAAGjE,KAAK,CAAC+D,WAAN,CAAkB,YAAM;AACnD3C,IAAAA,qBAAqB,CAAC,IAAD,CAArB;AACD,GAF4B,EAE1B,CAACA,qBAAD,CAF0B,CAA7B;AAIA,MAAM8C,cAAc,GAAGlE,KAAK,CAACmE,OAAN,CACrB;AAAA,WAAM,CAAC9D,YAAD,EAAeE,OAAf,CAAN;AAAA,GADqB,EAErB,CAACA,OAAD,EAAUF,YAAV,CAFqB,CAAvB;AAKA,SACE;AACE,IAAA,SAAS,EAAE,4BAAW,aAAX,+BAAgDR,KAAhD,EADb;AAEE,IAAA,GAAG,EAAEU,OAFP;AAGE,IAAA,KAAK,EAAEzB,KAHT;AAIE,IAAA,SAAS,EAAEG;AAJb,KAME,qCAAC,sBAAD,6BACMP,SADN;AAEE,IAAA,QAAQ,EAAEY,QAFZ;AAGE,IAAA,KAAK,EAAEmB,eAHT;AAIE,IAAA,UAAU,EAAED,UAJd;AAKE,IAAA,gBAAgB,EAAEf,gBALpB;AAME,IAAA,cAAc,EAAED,cANlB;AAOE,IAAA,cAAc,EAAED,cAPlB;AAQE,IAAA,UAAU,EAAEiE,iBARd;AASE,IAAA,OAAO,EAAEhC,WATX;AAUE,IAAA,SAAS,EAAEwB,aAVb;AAWE,IAAA,WAAW,EAAE3D,WAXf;AAYE,IAAA,SAAS,EAAE,4BACTqB,MAAM,IAAI,cADD,EAETA,MAAM,KACHmD,oBAAoB,GAAG,gBAAH,GAAsB,kBADvC,CAFG,CAZb;AAiBE,IAAA,MAAM,EAAE3E,MAjBV;AAkBE,IAAA,QAAQ,EAAEE,QAlBZ;AAmBE,IAAA,aAAa,EAAE2B,iBAnBjB;AAoBE,IAAA,KAAK,EAAE,qCAAC,0BAAD;AApBT,KANF,EA4BGL,MAAM,IACL,qCAAC,0CAAD;AACE,IAAA,SAAS,EAAEH,OADb;AAEE,IAAA,SAAS,EAAEZ,cAFb;AAGE,IAAA,YAAY,EAAEU,YAHhB;AAIE,IAAA,cAAc,EAAE6D,cAJlB;AAKE,IAAA,iBAAiB,EAAEJ,iBALrB;AAME,IAAA,YAAY,EAAEG,oBANhB;AAOE,IAAA,QAAQ,EAAE/F,QAPZ;AAQE,IAAA,SAAS,EAAC;AARZ,KAUGmD,aAAa,IACZ,qCAAC,sCAAD;AACE,IAAA,OAAO,EAAEF,kBAAkB,KAAK,CADlC;AAEE,IAAA,WAAW,EAAEP,kBAFf;AAGE,IAAA,YAAY,EAAE;AAAA,aAAMQ,qBAAqB,CAAC,CAAD,CAA3B;AAAA;AAHhB,KAKGtD,aALH,CAXJ,EAmBG,EAAC+C,eAAD,aAACA,eAAD,eAACA,eAAe,CAAEU,MAAlB,KAA4B,CAACF,aAA7B,IAA8CxD,SAA9C,GACC,qCAAC,gBAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAyCA,SAAzC,CADD,GAGCgD,eAAe,CAACuD,GAAhB,CAAoB,UAAC3F,MAAD,EAAiBwD,KAAjB,EAAmC;AACrD,QAAMoC,KAAK,GAAG7E,cAAc,CAAEf,MAAF,CAA5B;AACA,QAAM6F,OAAO,GACXrD,aAAa,IACb1B,cAAc,CAAEd,MAAF,CAAd,KAA4Bc,cAAc,CAAE0B,aAAF,CAF5C;AAGA,QAAMsD,QAAQ,GAAG9D,eAAe,CAAC+D,IAAhB,CACf,UAACC,cAAD,EAA4B;AAC1B,aACElF,cAAc,CAAEkF,cAAF,CAAd,KAAoClF,cAAc,CAAEd,MAAF,CADpD;AAGD,KALc,CAAjB;AAOA,QAAM8E,KAAK,GAAGhE,cAAc,CAAEd,MAAF,CAA5B;AAEA,WACE,qCAAC,KAAD,CAAO,QAAP;AAAgB,MAAA,GAAG,kCAAY8E,KAAZ,eAAqBA,KAArB;AAAnB,OACG/E,YAAY,CAAE;AACbS,MAAAA,SAAS,EAAE,8BAAY,qBAAZ,CADE;AAEbR,MAAAA,MAAM,EAANA,MAFa;AAGb6F,MAAAA,OAAO,EAAEhD,OAAO,CAACgD,OAAD,CAHH;AAIbI,MAAAA,QAAQ,EAAEL,KAJG;AAKbE,MAAAA,QAAQ,EAAE,CAAC,CAACA,QALC;AAMbpF,MAAAA,UAAU,EAAE,oBAACsC,CAAD,EAAO;AACjB,YAAIA,CAAJ,EAAO;AACL,iBAAQM,kBAAkB,CAACE,KAAD,CAAlB,GAA4BR,CAApC;AACD;;AACD,eAAOvB,SAAP;AACD,OAXY;AAYbyE,MAAAA,WAAW,EAAE,qBAAClD,CAAD,EAAyC;AACpD1D,QAAAA,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAG0D,CAAH,EAAMhD,MAAN,CAAb;;AAEA,YAAI,CAACgD,CAAC,CAACyB,gBAAP,EAAyB;AACvB9E,UAAAA,gBAAgB,IAAIuC,SAAS,CAAC,KAAD,CAA7B;AACAG,UAAAA,SAAS,CAACrC,MAAD,CAAT;AACAuC,UAAAA,UAAU;AACX;AACF,OApBY;AAqBb4D,MAAAA,YAAY,EAAE;AAAA,eAAMxD,qBAAqB,CAACa,KAAD,CAA3B;AAAA;AArBD,KAAF,CADf,CADF;AA2BD,GAzCD,CAtBJ,CA7BJ,CADF;AAmGD,CAtWD;AAwWA;AACA;AACA;;;AACO,IAAM4C,WAAW,GAAG,oCAAelG,oBAAf,EAAqC;AAC9DkB,EAAAA,KAAK,EAAE;AADuD,CAArC,CAApB;;AAIPgF,WAAW,CAACC,WAAZ,GAA0B,aAA1B","sourcesContent":["import * as React from \"react\";\nimport { DropdownIcon } from \"../DropdownIcon/DropdownIcon\";\nimport { classNames } from \"../../lib/classNames\";\nimport {\n ChipsInput,\n ChipsInputOption,\n ChipsInputProps,\n ChipsInputValue,\n RenderChip,\n chipsInputDefaultProps,\n} from \"../ChipsInput/ChipsInput\";\nimport {\n CustomSelectOption,\n CustomSelectOptionProps,\n} from \"../CustomSelectOption/CustomSelectOption\";\nimport { useChipsSelect } from \"./useChipsSelect\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { noop } from \"../../lib/utils\";\nimport { useDOM } from \"../../lib/dom\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { defaultFilterFn } from \"../../lib/select\";\nimport { Placement } from \"../Popper/Popper\";\nimport { CustomSelectDropdown } from \"../CustomSelectDropdown/CustomSelectDropdown\";\nimport \"./ChipsSelect.css\";\n\nexport interface ChipsSelectProps<Option extends ChipsInputOption>\n extends ChipsInputProps<Option>,\n AdaptivityProps {\n popupDirection?: \"top\" | \"bottom\";\n options?: Option[];\n filterFn?:\n | false\n | ((\n value?: string,\n option?: Option,\n getOptionLabel?: Pick<\n ChipsInputProps<Option>,\n \"getOptionLabel\"\n >[\"getOptionLabel\"]\n ) => boolean);\n /**\n * Возможность создавать чипы которых нет в списке (по enter или с помощью пункта в меню, см creatableText)\n */\n creatable?: boolean;\n /**\n * Отрисовка лоадера вместо списка опций в выпадающем списке\n */\n fetching?: boolean;\n renderOption?: (props: CustomSelectOptionProps) => React.ReactNode;\n /**\n * Показывать или скрывать уже выбранные опции\n */\n showSelected?: boolean;\n /**\n * Текст для пункта создающего чипы при клике, так же отвечает за то будет ли показан этот пункт (показывается после того как в списке не отсанется опций)\n */\n creatableText?: string;\n /**\n * Текст который показывается если список опций пуст\n */\n emptyText?: string;\n /**\n * Событие срабатывающее перед onChange\n */\n onChangeStart?: (\n e: React.MouseEvent | React.KeyboardEvent,\n option: Option\n ) => void;\n /**\n * Закрытие выпадающего списка после выбора элемента\n */\n closeAfterSelect?: boolean;\n}\n\ntype FocusActionType = \"next\" | \"prev\";\n\nconst FOCUS_ACTION_NEXT: FocusActionType = \"next\";\nconst FOCUS_ACTION_PREV: FocusActionType = \"prev\";\n\nconst chipsSelectDefaultProps: ChipsSelectProps<any> = {\n ...chipsInputDefaultProps,\n emptyText: \"Ничего не найдено\",\n creatableText: \"Создать значение\",\n onChangeStart: noop,\n creatable: false,\n fetching: false,\n showSelected: true,\n closeAfterSelect: true,\n options: [],\n filterFn: defaultFilterFn,\n renderOption({ option, ...restProps }) {\n return <CustomSelectOption {...restProps} />;\n },\n};\n\nconst ChipsSelectComponent = <Option extends ChipsInputOption>(\n props: ChipsSelectProps<Option>\n) => {\n const propsWithDefault = { ...chipsSelectDefaultProps, ...props };\n const {\n style,\n onFocus,\n onKeyDown,\n className,\n fetching,\n renderOption,\n emptyText,\n getRef,\n getRootRef,\n disabled,\n placeholder,\n tabIndex,\n getOptionValue,\n getOptionLabel,\n showSelected,\n getNewOptionData,\n renderChip,\n popupDirection,\n creatable,\n filterFn,\n inputValue,\n creatableText,\n sizeY,\n closeAfterSelect,\n onChangeStart,\n after,\n options,\n ...restProps\n } = propsWithDefault;\n\n const { document } = useDOM();\n\n const [popperPlacement, setPopperPlacement] = React.useState<\n Placement | undefined\n >(undefined);\n\n const scrollBoxRef = React.useRef<HTMLDivElement>(null);\n const rootRef = useExternRef(getRef);\n const {\n fieldValue,\n selectedOptions = [],\n opened,\n setOpened,\n addOptionFromInput,\n filteredOptions,\n addOption,\n handleInputChange,\n clearInput,\n focusedOption,\n setFocusedOption,\n focusedOptionIndex,\n setFocusedOptionIndex,\n } = useChipsSelect(propsWithDefault);\n\n const showCreatable = Boolean(\n creatable && creatableText && !filteredOptions.length && fieldValue\n );\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setOpened(true);\n setFocusedOptionIndex(0);\n onFocus!(e);\n };\n\n const handleClickOutside = (e: MouseEvent) => {\n const { current: rootNode } = rootRef;\n if (\n rootNode &&\n e.target !== rootNode &&\n !rootNode.contains(e.target as Node)\n ) {\n setOpened(false);\n }\n };\n\n const chipsSelectOptions = React.useRef<HTMLElement[]>([]).current;\n\n const scrollToElement = (index: number, center = false) => {\n const dropdown = scrollBoxRef.current;\n const item = chipsSelectOptions[index];\n\n if (!item || !dropdown) {\n return;\n }\n\n const dropdownHeight = dropdown.offsetHeight;\n const scrollTop = dropdown.scrollTop;\n const itemTop = item.offsetTop;\n const itemHeight = item.offsetHeight;\n\n if (center) {\n dropdown.scrollTop = itemTop - dropdownHeight / 2 + itemHeight / 2;\n } else if (itemTop + itemHeight > dropdownHeight + scrollTop) {\n dropdown.scrollTop = itemTop - dropdownHeight + itemHeight;\n } else if (itemTop < scrollTop) {\n dropdown.scrollTop = itemTop;\n }\n };\n\n const focusOptionByIndex = (index: number, oldIndex: number) => {\n const { length } = filteredOptions;\n\n if (index < 0) {\n index = length - 1;\n } else if (index >= length) {\n index = 0;\n }\n\n if (index === oldIndex) {\n return;\n }\n\n scrollToElement(index);\n setFocusedOptionIndex(index);\n };\n\n const focusOption = (nextIndex: number | null, type: FocusActionType) => {\n let index = typeof nextIndex !== \"number\" ? -1 : nextIndex;\n\n if (type === FOCUS_ACTION_NEXT) {\n index = index + 1;\n } else if (type === FOCUS_ACTION_PREV) {\n index = index - 1;\n }\n\n if (focusedOptionIndex != null) {\n focusOptionByIndex(index, focusedOptionIndex);\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown!(e);\n\n if (e.key === \"ArrowUp\" && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_PREV);\n }\n }\n\n if (e.key === \"ArrowDown\" && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_NEXT);\n }\n }\n\n if (\n e.key === \"Enter\" &&\n !e.defaultPrevented &&\n opened &&\n focusedOptionIndex != null\n ) {\n const option = filteredOptions[focusedOptionIndex];\n\n if (option) {\n onChangeStart!(e, option);\n\n if (!e.defaultPrevented) {\n addOption(option);\n setFocusedOptionIndex(null);\n clearInput();\n closeAfterSelect && setOpened(false);\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n }\n\n if ([\"Escape\", \"Tab\"].includes(e.key) && !e.defaultPrevented && opened) {\n setOpened(false);\n }\n };\n\n React.useEffect(() => {\n if (focusedOptionIndex != null && filteredOptions[focusedOptionIndex]) {\n setFocusedOption(filteredOptions[focusedOptionIndex]);\n } else if (focusedOptionIndex === null || focusedOptionIndex === 0) {\n setFocusedOption(null);\n }\n }, [focusedOptionIndex, filteredOptions, setFocusedOption]);\n\n React.useEffect(() => {\n const index = focusedOption\n ? filteredOptions.findIndex(({ value }) => value === focusedOption.value)\n : -1;\n\n if (\n index === -1 &&\n !!filteredOptions.length &&\n !showCreatable &&\n closeAfterSelect\n ) {\n setFocusedOption(filteredOptions[0]);\n }\n }, [\n filteredOptions,\n focusedOption,\n showCreatable,\n closeAfterSelect,\n setFocusedOption,\n ]);\n\n useGlobalEventListener(document, \"click\", handleClickOutside);\n\n const renderChipWrapper = (\n renderChipProps: RenderChip<Option> | undefined\n ) => {\n if (renderChipProps === undefined) {\n return null;\n }\n const onRemoveWrapper = (\n e: React.MouseEvent | undefined,\n value: ChipsInputValue | undefined\n ) => {\n e?.preventDefault();\n e?.stopPropagation();\n\n renderChipProps.onRemove?.(e, value);\n };\n\n return renderChip!({\n ...renderChipProps,\n onRemove: onRemoveWrapper,\n });\n };\n\n const isPopperDirectionTop = popperPlacement?.includes(\"top\");\n\n const onPlacementChange = React.useCallback(\n (placement?: Placement) => {\n setPopperPlacement(placement);\n },\n [setPopperPlacement]\n );\n\n const onDropdownMouseLeave = React.useCallback(() => {\n setFocusedOptionIndex(null);\n }, [setFocusedOptionIndex]);\n\n const observableRefs = React.useMemo(\n () => [scrollBoxRef, rootRef],\n [rootRef, scrollBoxRef]\n );\n\n return (\n <div\n vkuiClass={classNames(\"ChipsSelect\", `ChipsSelect--sizeY-${sizeY}`)}\n ref={rootRef}\n style={style}\n className={className}\n >\n <ChipsInput\n {...restProps}\n tabIndex={tabIndex}\n value={selectedOptions}\n inputValue={fieldValue}\n getNewOptionData={getNewOptionData}\n getOptionLabel={getOptionLabel}\n getOptionValue={getOptionValue}\n renderChip={renderChipWrapper}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n vkuiClass={classNames(\n opened && \"Select--open\",\n opened &&\n (isPopperDirectionTop ? \"Select--pop-up\" : \"Select--pop-down\")\n )}\n getRef={getRef}\n disabled={disabled}\n onInputChange={handleInputChange}\n after={<DropdownIcon />}\n />\n {opened && (\n <CustomSelectDropdown\n targetRef={rootRef}\n placement={popupDirection}\n scrollBoxRef={scrollBoxRef}\n observableRefs={observableRefs}\n onPlacementChange={onPlacementChange}\n onMouseLeave={onDropdownMouseLeave}\n fetching={fetching}\n vkuiClass=\"ChipsSelect__options\"\n >\n {showCreatable && (\n <CustomSelectOption\n hovered={focusedOptionIndex === 0}\n onMouseDown={addOptionFromInput}\n onMouseEnter={() => setFocusedOptionIndex(0)}\n >\n {creatableText}\n </CustomSelectOption>\n )}\n {!filteredOptions?.length && !showCreatable && emptyText ? (\n <Caption vkuiClass=\"ChipsSelect__empty\">{emptyText}</Caption>\n ) : (\n filteredOptions.map((option: Option, index: number) => {\n const label = getOptionLabel!(option);\n const hovered =\n focusedOption &&\n getOptionValue!(option) === getOptionValue!(focusedOption);\n const selected = selectedOptions.find(\n (selectedOption: Option) => {\n return (\n getOptionValue!(selectedOption) === getOptionValue!(option)\n );\n }\n );\n const value = getOptionValue!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderOption!({\n className: prefixClass(\"ChipsSelect__option\"),\n option,\n hovered: Boolean(hovered),\n children: label,\n selected: !!selected,\n getRootRef: (e) => {\n if (e) {\n return (chipsSelectOptions[index] = e);\n }\n return undefined;\n },\n onMouseDown: (e: React.MouseEvent<HTMLDivElement>) => {\n onChangeStart?.(e, option);\n\n if (!e.defaultPrevented) {\n closeAfterSelect && setOpened(false);\n addOption(option);\n clearInput();\n }\n },\n onMouseEnter: () => setFocusedOptionIndex(index),\n })}\n </React.Fragment>\n );\n })\n )}\n </CustomSelectDropdown>\n )}\n </div>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ChipsSelect\n */\nexport const ChipsSelect = withAdaptivity(ChipsSelectComponent, {\n sizeY: true,\n});\n\nChipsSelect.displayName = \"ChipsSelect\";\n"],"file":"ChipsSelect.js"}
1
+ {"version":3,"file":"ChipsSelect.js","names":["FOCUS_ACTION_NEXT","FOCUS_ACTION_PREV","chipsSelectDefaultProps","chipsInputDefaultProps","emptyText","creatableText","onChangeStart","noop","creatable","fetching","showSelected","closeAfterSelect","options","filterFn","defaultFilterFn","renderOption","option","restProps","ChipsSelect","props","propsWithDefault","style","onFocus","onKeyDown","className","getRef","getRootRef","disabled","placeholder","tabIndex","getOptionValue","getOptionLabel","getNewOptionData","renderChip","popupDirection","inputValue","before","fixDropdownWidth","forceDropdownPortal","useDOM","document","React","useState","undefined","popperPlacement","setPopperPlacement","scrollBoxRef","useRef","rootRef","useExternRef","useChipsSelect","fieldValue","selectedOptions","opened","setOpened","addOptionFromInput","filteredOptions","addOption","handleInputChange","clearInput","focusedOption","setFocusedOption","focusedOptionIndex","setFocusedOptionIndex","showCreatable","Boolean","length","handleFocus","e","handleClickOutside","target","current","contains","chipsSelectOptions","scrollToElement","index","center","dropdown","item","dropdownHeight","offsetHeight","scrollTop","itemTop","offsetTop","itemHeight","focusOptionByIndex","oldIndex","focusOption","nextIndex","type","handleKeyDown","key","defaultPrevented","preventDefault","includes","useEffect","findIndex","value","useGlobalEventListener","renderChipWrapper","renderChipProps","onRemoveWrapper","stopPropagation","onRemove","isPopperDirectionTop","onPlacementChange","useCallback","placement","onDropdownMouseLeave","observableRefs","useMemo","toggleOpened","prevOpened","classNames","readOnly","map","label","hovered","selected","find","selectedOption","prefixClass","children","onMouseDown","onMouseEnter"],"sources":["../../../../src/components/ChipsSelect/ChipsSelect.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { DropdownIcon } from \"../DropdownIcon/DropdownIcon\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ChipOption, ChipValue, RenderChip } from \"../Chip/Chip\";\nimport { ChipsInputProps } from \"../ChipsInput/ChipsInput\";\nimport {\n ChipsInputBase,\n chipsInputDefaultProps,\n} from \"../ChipsInputBase/ChipsInputBase\";\nimport {\n CustomSelectOption,\n CustomSelectOptionProps,\n} from \"../CustomSelectOption/CustomSelectOption\";\nimport { useChipsSelect } from \"../../hooks/useChipsSelect\";\nimport { noop } from \"../../lib/utils\";\nimport { useDOM } from \"../../lib/dom\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { defaultFilterFn } from \"../../lib/select\";\nimport { Placement } from \"../Popper/Popper\";\nimport { CustomSelectDropdown } from \"../CustomSelectDropdown/CustomSelectDropdown\";\nimport { FormField } from \"../FormField/FormField\";\nimport { IconButton } from \"../IconButton/IconButton\";\nimport \"./ChipsSelect.css\";\n\nexport interface ChipsSelectProps<Option extends ChipOption>\n extends Omit<ChipsInputProps<Option>, \"after\"> {\n popupDirection?: \"top\" | \"bottom\";\n options?: Option[];\n filterFn?:\n | false\n | ((\n value?: string,\n option?: Option,\n getOptionLabel?: Pick<\n ChipsInputProps<Option>,\n \"getOptionLabel\"\n >[\"getOptionLabel\"]\n ) => boolean);\n /**\n * Возможность создавать чипы которых нет в списке (по enter или с помощью пункта в меню, см creatableText)\n */\n creatable?: boolean;\n /**\n * Отрисовка лоадера вместо списка опций в выпадающем списке\n */\n fetching?: boolean;\n renderOption?: (props: CustomSelectOptionProps) => React.ReactNode;\n /**\n * Показывать или скрывать уже выбранные опции\n */\n showSelected?: boolean;\n /**\n * Текст для пункта создающего чипы при клике, так же отвечает за то будет ли показан этот пункт (показывается после того как в списке не отсанется опций)\n */\n creatableText?: string;\n /**\n * Текст который показывается если список опций пуст\n */\n emptyText?: string;\n /**\n * Событие срабатывающее перед onChange\n */\n onChangeStart?: (\n e: React.MouseEvent | React.KeyboardEvent,\n option: Option\n ) => void;\n /**\n * Закрытие выпадающего списка после выбора элемента\n */\n closeAfterSelect?: boolean;\n fixDropdownWidth?: boolean;\n forceDropdownPortal?: boolean;\n}\n\ntype FocusActionType = \"next\" | \"prev\";\n\nconst FOCUS_ACTION_NEXT: FocusActionType = \"next\";\nconst FOCUS_ACTION_PREV: FocusActionType = \"prev\";\n\nconst chipsSelectDefaultProps: ChipsSelectProps<any> = {\n ...chipsInputDefaultProps,\n emptyText: \"Ничего не найдено\",\n creatableText: \"Создать значение\",\n onChangeStart: noop,\n creatable: false,\n fetching: false,\n showSelected: true,\n closeAfterSelect: true,\n options: [],\n filterFn: defaultFilterFn,\n renderOption({ option, ...restProps }) {\n return <CustomSelectOption {...restProps} />;\n },\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ChipsSelect\n */\nexport const ChipsSelect = <Option extends ChipOption>(\n props: ChipsSelectProps<Option>\n) => {\n const propsWithDefault = { ...chipsSelectDefaultProps, ...props };\n const {\n style,\n onFocus,\n onKeyDown,\n className,\n fetching,\n renderOption,\n emptyText,\n getRef,\n getRootRef,\n disabled,\n placeholder,\n tabIndex,\n getOptionValue,\n getOptionLabel,\n showSelected,\n getNewOptionData,\n renderChip,\n popupDirection,\n creatable,\n filterFn,\n inputValue,\n creatableText,\n closeAfterSelect,\n onChangeStart,\n before,\n options,\n fixDropdownWidth,\n forceDropdownPortal,\n ...restProps\n } = propsWithDefault;\n\n const { document } = useDOM();\n\n const [popperPlacement, setPopperPlacement] = React.useState<\n Placement | undefined\n >(undefined);\n\n const scrollBoxRef = React.useRef<HTMLDivElement>(null);\n const rootRef = useExternRef(getRef);\n const {\n fieldValue,\n selectedOptions = [],\n opened,\n setOpened,\n addOptionFromInput,\n filteredOptions,\n addOption,\n handleInputChange,\n clearInput,\n focusedOption,\n setFocusedOption,\n focusedOptionIndex,\n setFocusedOptionIndex,\n } = useChipsSelect(propsWithDefault);\n\n const showCreatable = Boolean(\n creatable && creatableText && !filteredOptions.length && fieldValue\n );\n\n const handleFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setOpened(true);\n setFocusedOptionIndex(0);\n onFocus!(e);\n };\n\n const handleClickOutside = (e: MouseEvent) => {\n if (\n e.target !== rootRef.current &&\n !rootRef.current?.contains(e.target as Node)\n ) {\n setOpened(false);\n }\n };\n\n const chipsSelectOptions = React.useRef<HTMLElement[]>([]).current;\n\n const scrollToElement = (index: number, center = false) => {\n const dropdown = scrollBoxRef.current;\n const item = chipsSelectOptions[index];\n\n if (!item || !dropdown) {\n return;\n }\n\n const dropdownHeight = dropdown.offsetHeight;\n const scrollTop = dropdown.scrollTop;\n const itemTop = item.offsetTop;\n const itemHeight = item.offsetHeight;\n\n if (center) {\n dropdown.scrollTop = itemTop - dropdownHeight / 2 + itemHeight / 2;\n } else if (itemTop + itemHeight > dropdownHeight + scrollTop) {\n dropdown.scrollTop = itemTop - dropdownHeight + itemHeight;\n } else if (itemTop < scrollTop) {\n dropdown.scrollTop = itemTop;\n }\n };\n\n const focusOptionByIndex = (index: number, oldIndex: number) => {\n const { length } = filteredOptions;\n\n if (index < 0) {\n index = length - 1;\n } else if (index >= length) {\n index = 0;\n }\n\n if (index === oldIndex) {\n return;\n }\n\n scrollToElement(index);\n setFocusedOptionIndex(index);\n };\n\n const focusOption = (nextIndex: number | null, type: FocusActionType) => {\n let index = typeof nextIndex !== \"number\" ? -1 : nextIndex;\n\n if (type === FOCUS_ACTION_NEXT) {\n index = index + 1;\n } else if (type === FOCUS_ACTION_PREV) {\n index = index - 1;\n }\n\n if (focusedOptionIndex != null) {\n focusOptionByIndex(index, focusedOptionIndex);\n }\n };\n\n const handleKeyDown = (e: React.KeyboardEvent<HTMLInputElement>) => {\n onKeyDown!(e);\n\n if (e.key === \"ArrowUp\" && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_PREV);\n }\n }\n\n if (e.key === \"ArrowDown\" && !e.defaultPrevented) {\n e.preventDefault();\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n } else {\n focusOption(focusedOptionIndex, FOCUS_ACTION_NEXT);\n }\n }\n\n if (\n e.key === \"Enter\" &&\n !e.defaultPrevented &&\n opened &&\n focusedOptionIndex != null\n ) {\n const option = filteredOptions[focusedOptionIndex];\n\n if (option) {\n onChangeStart!(e, option);\n\n if (!e.defaultPrevented) {\n addOption(option);\n setFocusedOptionIndex(null);\n clearInput();\n closeAfterSelect && setOpened(false);\n e.preventDefault();\n }\n } else if (!creatable) {\n e.preventDefault();\n }\n }\n\n if ([\"Escape\", \"Tab\"].includes(e.key) && !e.defaultPrevented && opened) {\n setOpened(false);\n }\n };\n\n React.useEffect(() => {\n if (focusedOptionIndex != null && filteredOptions[focusedOptionIndex]) {\n setFocusedOption(filteredOptions[focusedOptionIndex]);\n } else if (focusedOptionIndex === null || focusedOptionIndex === 0) {\n setFocusedOption(null);\n }\n }, [focusedOptionIndex, filteredOptions, setFocusedOption]);\n\n React.useEffect(() => {\n const index = focusedOption\n ? filteredOptions.findIndex(({ value }) => value === focusedOption.value)\n : -1;\n\n if (\n index === -1 &&\n !!filteredOptions.length &&\n !showCreatable &&\n closeAfterSelect\n ) {\n setFocusedOption(filteredOptions[0]);\n }\n }, [\n filteredOptions,\n focusedOption,\n showCreatable,\n closeAfterSelect,\n setFocusedOption,\n ]);\n\n useGlobalEventListener(document, \"click\", handleClickOutside);\n\n const renderChipWrapper = (\n renderChipProps: RenderChip<Option> | undefined\n ) => {\n if (renderChipProps === undefined) {\n return null;\n }\n const onRemoveWrapper = (\n e: React.MouseEvent | undefined,\n value: ChipValue | undefined\n ) => {\n e?.preventDefault();\n e?.stopPropagation();\n\n renderChipProps.onRemove?.(e, value);\n };\n\n return renderChip!({\n ...renderChipProps,\n onRemove: onRemoveWrapper,\n });\n };\n\n const isPopperDirectionTop = popperPlacement?.includes(\"top\");\n\n const onPlacementChange = React.useCallback(\n (placement?: Placement) => {\n setPopperPlacement(placement);\n },\n [setPopperPlacement]\n );\n\n const onDropdownMouseLeave = React.useCallback(() => {\n setFocusedOptionIndex(null);\n }, [setFocusedOptionIndex]);\n\n const observableRefs = React.useMemo(\n () => [scrollBoxRef, rootRef],\n [rootRef, scrollBoxRef]\n );\n\n const toggleOpened = () => {\n setOpened((prevOpened) => !prevOpened);\n };\n\n return (\n <FormField\n vkuiClass={classNames(\n \"ChipsSelect\",\n opened && \"Select--open\",\n opened && (isPopperDirectionTop ? \"Select--pop-up\" : \"Select--pop-down\")\n )}\n getRootRef={rootRef}\n style={style}\n className={className}\n disabled={disabled}\n role=\"application\"\n aria-disabled={disabled}\n aria-readonly={restProps.readOnly}\n after={\n <IconButton\n vkuiClass=\"ChipsSelect__dropdown\"\n activeMode=\"\"\n hoverMode=\"\"\n // TODO: add label customization\n aria-label={opened ? \"Скрыть\" : \"Развернуть\"}\n onClick={toggleOpened}\n >\n <DropdownIcon vkuiClass=\"ChipsSelect__icon\" opened={opened} />\n </IconButton>\n }\n before={before}\n >\n <ChipsInputBase\n {...restProps}\n tabIndex={tabIndex}\n value={selectedOptions}\n inputValue={fieldValue}\n getNewOptionData={getNewOptionData}\n getOptionLabel={getOptionLabel}\n getOptionValue={getOptionValue}\n renderChip={renderChipWrapper}\n onFocus={handleFocus}\n onKeyDown={handleKeyDown}\n placeholder={placeholder}\n getRef={getRef}\n disabled={disabled}\n onInputChange={handleInputChange}\n />\n {opened && (\n <CustomSelectDropdown\n targetRef={rootRef}\n placement={popupDirection}\n scrollBoxRef={scrollBoxRef}\n observableRefs={observableRefs}\n onPlacementChange={onPlacementChange}\n onMouseLeave={onDropdownMouseLeave}\n fetching={fetching}\n vkuiClass=\"ChipsSelect__options\"\n sameWidth={fixDropdownWidth}\n forcePortal={forceDropdownPortal}\n >\n {showCreatable && (\n <CustomSelectOption\n hovered={focusedOptionIndex === 0}\n onMouseDown={addOptionFromInput}\n onMouseEnter={() => setFocusedOptionIndex(0)}\n >\n {creatableText}\n </CustomSelectOption>\n )}\n {!filteredOptions?.length && !showCreatable && emptyText ? (\n <Caption vkuiClass=\"ChipsSelect__empty\">{emptyText}</Caption>\n ) : (\n filteredOptions.map((option: Option, index: number) => {\n const label = getOptionLabel!(option);\n const hovered =\n focusedOption &&\n getOptionValue!(option) === getOptionValue!(focusedOption);\n const selected = selectedOptions.find(\n (selectedOption: Option) => {\n return (\n getOptionValue!(selectedOption) === getOptionValue!(option)\n );\n }\n );\n const value = getOptionValue!(option);\n\n return (\n <React.Fragment key={`${typeof value}-${value}`}>\n {renderOption!({\n className: prefixClass(\"ChipsSelect__option\"),\n option,\n hovered: Boolean(hovered),\n children: label,\n selected: !!selected,\n getRootRef: (e) => {\n if (e) {\n return (chipsSelectOptions[index] = e);\n }\n return undefined;\n },\n onMouseDown: (e: React.MouseEvent<HTMLDivElement>) => {\n onChangeStart?.(e, option);\n\n if (!e.defaultPrevented) {\n closeAfterSelect && setOpened(false);\n addOption(option);\n clearInput();\n }\n },\n onMouseEnter: () => setFocusedOptionIndex(index),\n })}\n </React.Fragment>\n );\n })\n )}\n </CustomSelectDropdown>\n )}\n </FormField>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AAGA;;AAIA;;AAIA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAEA;;AACA;;AACA;;;;AAuDA,IAAMA,iBAAkC,GAAG,MAA3C;AACA,IAAMC,iBAAkC,GAAG,MAA3C;AAEA,IAAMC,uBAA8C,+DAC/CC,sCAD+C;EAElDC,SAAS,EAAE,mBAFuC;EAGlDC,aAAa,EAAE,kBAHmC;EAIlDC,aAAa,EAAEC,WAJmC;EAKlDC,SAAS,EAAE,KALuC;EAMlDC,QAAQ,EAAE,KANwC;EAOlDC,YAAY,EAAE,IAPoC;EAQlDC,gBAAgB,EAAE,IARgC;EASlDC,OAAO,EAAE,EATyC;EAUlDC,QAAQ,EAAEC,uBAVwC;EAWlDC,YAXkD,8BAWX;IAAA,IAAxBC,MAAwB,QAAxBA,MAAwB;IAAA,IAAbC,SAAa;IACrC,OAAO,qCAAC,sCAAD,EAAwBA,SAAxB,CAAP;EACD;AAbiD,EAApD;AAgBA;AACA;AACA;;AACO,IAAMC,WAAW,GAAG,SAAdA,WAAc,CACzBC,KADyB,EAEtB;EACH,IAAMC,gBAAgB,+DAAQlB,uBAAR,GAAoCiB,KAApC,CAAtB;EACA,IACEE,KADF,GA8BID,gBA9BJ,CACEC,KADF;EAAA,IAEEC,OAFF,GA8BIF,gBA9BJ,CAEEE,OAFF;EAAA,IAGEC,SAHF,GA8BIH,gBA9BJ,CAGEG,SAHF;EAAA,IAIEC,SAJF,GA8BIJ,gBA9BJ,CAIEI,SAJF;EAAA,IAKEf,QALF,GA8BIW,gBA9BJ,CAKEX,QALF;EAAA,IAMEM,YANF,GA8BIK,gBA9BJ,CAMEL,YANF;EAAA,IAOEX,SAPF,GA8BIgB,gBA9BJ,CAOEhB,SAPF;EAAA,IAQEqB,MARF,GA8BIL,gBA9BJ,CAQEK,MARF;EAAA,IASEC,UATF,GA8BIN,gBA9BJ,CASEM,UATF;EAAA,IAUEC,QAVF,GA8BIP,gBA9BJ,CAUEO,QAVF;EAAA,IAWEC,WAXF,GA8BIR,gBA9BJ,CAWEQ,WAXF;EAAA,IAYEC,QAZF,GA8BIT,gBA9BJ,CAYES,QAZF;EAAA,IAaEC,cAbF,GA8BIV,gBA9BJ,CAaEU,cAbF;EAAA,IAcEC,cAdF,GA8BIX,gBA9BJ,CAcEW,cAdF;EAAA,IAeErB,YAfF,GA8BIU,gBA9BJ,CAeEV,YAfF;EAAA,IAgBEsB,gBAhBF,GA8BIZ,gBA9BJ,CAgBEY,gBAhBF;EAAA,IAiBEC,UAjBF,GA8BIb,gBA9BJ,CAiBEa,UAjBF;EAAA,IAkBEC,cAlBF,GA8BId,gBA9BJ,CAkBEc,cAlBF;EAAA,IAmBE1B,SAnBF,GA8BIY,gBA9BJ,CAmBEZ,SAnBF;EAAA,IAoBEK,QApBF,GA8BIO,gBA9BJ,CAoBEP,QApBF;EAAA,IAqBEsB,UArBF,GA8BIf,gBA9BJ,CAqBEe,UArBF;EAAA,IAsBE9B,aAtBF,GA8BIe,gBA9BJ,CAsBEf,aAtBF;EAAA,IAuBEM,gBAvBF,GA8BIS,gBA9BJ,CAuBET,gBAvBF;EAAA,IAwBEL,aAxBF,GA8BIc,gBA9BJ,CAwBEd,aAxBF;EAAA,IAyBE8B,MAzBF,GA8BIhB,gBA9BJ,CAyBEgB,MAzBF;EAAA,IA0BExB,OA1BF,GA8BIQ,gBA9BJ,CA0BER,OA1BF;EAAA,IA2BEyB,gBA3BF,GA8BIjB,gBA9BJ,CA2BEiB,gBA3BF;EAAA,IA4BEC,mBA5BF,GA8BIlB,gBA9BJ,CA4BEkB,mBA5BF;EAAA,IA6BKrB,SA7BL,0CA8BIG,gBA9BJ;;EAgCA,cAAqB,IAAAmB,WAAA,GAArB;EAAA,IAAQC,QAAR,WAAQA,QAAR;;EAEA,sBAA8CC,KAAK,CAACC,QAAN,CAE5CC,SAF4C,CAA9C;EAAA;EAAA,IAAOC,eAAP;EAAA,IAAwBC,kBAAxB;;EAIA,IAAMC,YAAY,GAAGL,KAAK,CAACM,MAAN,CAA6B,IAA7B,CAArB;EACA,IAAMC,OAAO,GAAG,IAAAC,0BAAA,EAAaxB,MAAb,CAAhB;;EACA,sBAcI,IAAAyB,+BAAA,EAAe9B,gBAAf,CAdJ;EAAA,IACE+B,UADF,mBACEA,UADF;EAAA,4CAEEC,eAFF;EAAA,IAEEA,eAFF,sCAEoB,EAFpB;EAAA,IAGEC,MAHF,mBAGEA,MAHF;EAAA,IAIEC,SAJF,mBAIEA,SAJF;EAAA,IAKEC,kBALF,mBAKEA,kBALF;EAAA,IAMEC,eANF,mBAMEA,eANF;EAAA,IAOEC,SAPF,mBAOEA,SAPF;EAAA,IAQEC,iBARF,mBAQEA,iBARF;EAAA,IASEC,UATF,mBASEA,UATF;EAAA,IAUEC,aAVF,mBAUEA,aAVF;EAAA,IAWEC,gBAXF,mBAWEA,gBAXF;EAAA,IAYEC,kBAZF,mBAYEA,kBAZF;EAAA,IAaEC,qBAbF,mBAaEA,qBAbF;;EAgBA,IAAMC,aAAa,GAAGC,OAAO,CAC3BzD,SAAS,IAAIH,aAAb,IAA8B,CAACmD,eAAe,CAACU,MAA/C,IAAyDf,UAD9B,CAA7B;;EAIA,IAAMgB,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAA2C;IAC7Dd,SAAS,CAAC,IAAD,CAAT;IACAS,qBAAqB,CAAC,CAAD,CAArB;IACAzC,OAAO,CAAE8C,CAAF,CAAP;EACD,CAJD;;EAMA,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB,CAACD,CAAD,EAAmB;IAAA;;IAC5C,IACEA,CAAC,CAACE,MAAF,KAAatB,OAAO,CAACuB,OAArB,IACA,sBAACvB,OAAO,CAACuB,OAAT,6CAAC,iBAAiBC,QAAjB,CAA0BJ,CAAC,CAACE,MAA5B,CAAD,CAFF,EAGE;MACAhB,SAAS,CAAC,KAAD,CAAT;IACD;EACF,CAPD;;EASA,IAAMmB,kBAAkB,GAAGhC,KAAK,CAACM,MAAN,CAA4B,EAA5B,EAAgCwB,OAA3D;;EAEA,IAAMG,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD,EAAmC;IAAA,IAAnBC,MAAmB,uEAAV,KAAU;IACzD,IAAMC,QAAQ,GAAG/B,YAAY,CAACyB,OAA9B;IACA,IAAMO,IAAI,GAAGL,kBAAkB,CAACE,KAAD,CAA/B;;IAEA,IAAI,CAACG,IAAD,IAAS,CAACD,QAAd,EAAwB;MACtB;IACD;;IAED,IAAME,cAAc,GAAGF,QAAQ,CAACG,YAAhC;IACA,IAAMC,SAAS,GAAGJ,QAAQ,CAACI,SAA3B;IACA,IAAMC,OAAO,GAAGJ,IAAI,CAACK,SAArB;IACA,IAAMC,UAAU,GAAGN,IAAI,CAACE,YAAxB;;IAEA,IAAIJ,MAAJ,EAAY;MACVC,QAAQ,CAACI,SAAT,GAAqBC,OAAO,GAAGH,cAAc,GAAG,CAA3B,GAA+BK,UAAU,GAAG,CAAjE;IACD,CAFD,MAEO,IAAIF,OAAO,GAAGE,UAAV,GAAuBL,cAAc,GAAGE,SAA5C,EAAuD;MAC5DJ,QAAQ,CAACI,SAAT,GAAqBC,OAAO,GAAGH,cAAV,GAA2BK,UAAhD;IACD,CAFM,MAEA,IAAIF,OAAO,GAAGD,SAAd,EAAyB;MAC9BJ,QAAQ,CAACI,SAAT,GAAqBC,OAArB;IACD;EACF,CApBD;;EAsBA,IAAMG,kBAAkB,GAAG,SAArBA,kBAAqB,CAACV,KAAD,EAAgBW,QAAhB,EAAqC;IAC9D,IAAQpB,MAAR,GAAmBV,eAAnB,CAAQU,MAAR;;IAEA,IAAIS,KAAK,GAAG,CAAZ,EAAe;MACbA,KAAK,GAAGT,MAAM,GAAG,CAAjB;IACD,CAFD,MAEO,IAAIS,KAAK,IAAIT,MAAb,EAAqB;MAC1BS,KAAK,GAAG,CAAR;IACD;;IAED,IAAIA,KAAK,KAAKW,QAAd,EAAwB;MACtB;IACD;;IAEDZ,eAAe,CAACC,KAAD,CAAf;IACAZ,qBAAqB,CAACY,KAAD,CAArB;EACD,CAfD;;EAiBA,IAAMY,WAAW,GAAG,SAAdA,WAAc,CAACC,SAAD,EAA2BC,IAA3B,EAAqD;IACvE,IAAId,KAAK,GAAG,OAAOa,SAAP,KAAqB,QAArB,GAAgC,CAAC,CAAjC,GAAqCA,SAAjD;;IAEA,IAAIC,IAAI,KAAKzF,iBAAb,EAAgC;MAC9B2E,KAAK,GAAGA,KAAK,GAAG,CAAhB;IACD,CAFD,MAEO,IAAIc,IAAI,KAAKxF,iBAAb,EAAgC;MACrC0E,KAAK,GAAGA,KAAK,GAAG,CAAhB;IACD;;IAED,IAAIb,kBAAkB,IAAI,IAA1B,EAAgC;MAC9BuB,kBAAkB,CAACV,KAAD,EAAQb,kBAAR,CAAlB;IACD;EACF,CAZD;;EAcA,IAAM4B,aAAa,GAAG,SAAhBA,aAAgB,CAACtB,CAAD,EAA8C;IAClE7C,SAAS,CAAE6C,CAAF,CAAT;;IAEA,IAAIA,CAAC,CAACuB,GAAF,KAAU,SAAV,IAAuB,CAACvB,CAAC,CAACwB,gBAA9B,EAAgD;MAC9CxB,CAAC,CAACyB,cAAF;;MAEA,IAAI,CAACxC,MAAL,EAAa;QACXC,SAAS,CAAC,IAAD,CAAT;QACAS,qBAAqB,CAAC,CAAD,CAArB;MACD,CAHD,MAGO;QACLwB,WAAW,CAACzB,kBAAD,EAAqB7D,iBAArB,CAAX;MACD;IACF;;IAED,IAAImE,CAAC,CAACuB,GAAF,KAAU,WAAV,IAAyB,CAACvB,CAAC,CAACwB,gBAAhC,EAAkD;MAChDxB,CAAC,CAACyB,cAAF;;MAEA,IAAI,CAACxC,MAAL,EAAa;QACXC,SAAS,CAAC,IAAD,CAAT;QACAS,qBAAqB,CAAC,CAAD,CAArB;MACD,CAHD,MAGO;QACLwB,WAAW,CAACzB,kBAAD,EAAqB9D,iBAArB,CAAX;MACD;IACF;;IAED,IACEoE,CAAC,CAACuB,GAAF,KAAU,OAAV,IACA,CAACvB,CAAC,CAACwB,gBADH,IAEAvC,MAFA,IAGAS,kBAAkB,IAAI,IAJxB,EAKE;MACA,IAAM9C,OAAM,GAAGwC,eAAe,CAACM,kBAAD,CAA9B;;MAEA,IAAI9C,OAAJ,EAAY;QACVV,aAAa,CAAE8D,CAAF,EAAKpD,OAAL,CAAb;;QAEA,IAAI,CAACoD,CAAC,CAACwB,gBAAP,EAAyB;UACvBnC,SAAS,CAACzC,OAAD,CAAT;UACA+C,qBAAqB,CAAC,IAAD,CAArB;UACAJ,UAAU;UACVhD,gBAAgB,IAAI2C,SAAS,CAAC,KAAD,CAA7B;UACAc,CAAC,CAACyB,cAAF;QACD;MACF,CAVD,MAUO,IAAI,CAACrF,SAAL,EAAgB;QACrB4D,CAAC,CAACyB,cAAF;MACD;IACF;;IAED,IAAI,CAAC,QAAD,EAAW,KAAX,EAAkBC,QAAlB,CAA2B1B,CAAC,CAACuB,GAA7B,KAAqC,CAACvB,CAAC,CAACwB,gBAAxC,IAA4DvC,MAAhE,EAAwE;MACtEC,SAAS,CAAC,KAAD,CAAT;IACD;EACF,CAnDD;;EAqDAb,KAAK,CAACsD,SAAN,CAAgB,YAAM;IACpB,IAAIjC,kBAAkB,IAAI,IAAtB,IAA8BN,eAAe,CAACM,kBAAD,CAAjD,EAAuE;MACrED,gBAAgB,CAACL,eAAe,CAACM,kBAAD,CAAhB,CAAhB;IACD,CAFD,MAEO,IAAIA,kBAAkB,KAAK,IAAvB,IAA+BA,kBAAkB,KAAK,CAA1D,EAA6D;MAClED,gBAAgB,CAAC,IAAD,CAAhB;IACD;EACF,CAND,EAMG,CAACC,kBAAD,EAAqBN,eAArB,EAAsCK,gBAAtC,CANH;EAQApB,KAAK,CAACsD,SAAN,CAAgB,YAAM;IACpB,IAAMpB,KAAK,GAAGf,aAAa,GACvBJ,eAAe,CAACwC,SAAhB,CAA0B;MAAA,IAAGC,KAAH,SAAGA,KAAH;MAAA,OAAeA,KAAK,KAAKrC,aAAa,CAACqC,KAAvC;IAAA,CAA1B,CADuB,GAEvB,CAAC,CAFL;;IAIA,IACEtB,KAAK,KAAK,CAAC,CAAX,IACA,CAAC,CAACnB,eAAe,CAACU,MADlB,IAEA,CAACF,aAFD,IAGArD,gBAJF,EAKE;MACAkD,gBAAgB,CAACL,eAAe,CAAC,CAAD,CAAhB,CAAhB;IACD;EACF,CAbD,EAaG,CACDA,eADC,EAEDI,aAFC,EAGDI,aAHC,EAIDrD,gBAJC,EAKDkD,gBALC,CAbH;EAqBA,IAAAqC,8CAAA,EAAuB1D,QAAvB,EAAiC,OAAjC,EAA0C6B,kBAA1C;;EAEA,IAAM8B,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBC,eADwB,EAErB;IACH,IAAIA,eAAe,KAAKzD,SAAxB,EAAmC;MACjC,OAAO,IAAP;IACD;;IACD,IAAM0D,eAAe,GAAG,SAAlBA,eAAkB,CACtBjC,CADsB,EAEtB6B,KAFsB,EAGnB;MAAA;;MACH7B,CAAC,SAAD,IAAAA,CAAC,WAAD,YAAAA,CAAC,CAAEyB,cAAH;MACAzB,CAAC,SAAD,IAAAA,CAAC,WAAD,YAAAA,CAAC,CAAEkC,eAAH;MAEA,yBAAAF,eAAe,CAACG,QAAhB,qFAAAH,eAAe,EAAYhC,CAAZ,EAAe6B,KAAf,CAAf;IACD,CARD;;IAUA,OAAOhE,UAAU,6DACZmE,eADY;MAEfG,QAAQ,EAAEF;IAFK,GAAjB;EAID,CApBD;;EAsBA,IAAMG,oBAAoB,GAAG5D,eAAH,aAAGA,eAAH,uBAAGA,eAAe,CAAEkD,QAAjB,CAA0B,KAA1B,CAA7B;EAEA,IAAMW,iBAAiB,GAAGhE,KAAK,CAACiE,WAAN,CACxB,UAACC,SAAD,EAA2B;IACzB9D,kBAAkB,CAAC8D,SAAD,CAAlB;EACD,CAHuB,EAIxB,CAAC9D,kBAAD,CAJwB,CAA1B;EAOA,IAAM+D,oBAAoB,GAAGnE,KAAK,CAACiE,WAAN,CAAkB,YAAM;IACnD3C,qBAAqB,CAAC,IAAD,CAArB;EACD,CAF4B,EAE1B,CAACA,qBAAD,CAF0B,CAA7B;EAIA,IAAM8C,cAAc,GAAGpE,KAAK,CAACqE,OAAN,CACrB;IAAA,OAAM,CAAChE,YAAD,EAAeE,OAAf,CAAN;EAAA,CADqB,EAErB,CAACA,OAAD,EAAUF,YAAV,CAFqB,CAAvB;;EAKA,IAAMiE,YAAY,GAAG,SAAfA,YAAe,GAAM;IACzBzD,SAAS,CAAC,UAAC0D,UAAD;MAAA,OAAgB,CAACA,UAAjB;IAAA,CAAD,CAAT;EACD,CAFD;;EAIA,OACE,qCAAC,oBAAD;IACE,SAAS,EAAE,IAAAC,sBAAA,EACT,aADS,EAET5D,MAAM,IAAI,cAFD,EAGTA,MAAM,KAAKmD,oBAAoB,GAAG,gBAAH,GAAsB,kBAA/C,CAHG,CADb;IAME,UAAU,EAAExD,OANd;IAOE,KAAK,EAAE3B,KAPT;IAQE,SAAS,EAAEG,SARb;IASE,QAAQ,EAAEG,QATZ;IAUE,IAAI,EAAC,aAVP;IAWE,iBAAeA,QAXjB;IAYE,iBAAeV,SAAS,CAACiG,QAZ3B;IAaE,KAAK,EACH,qCAAC,sBAAD;MACE,SAAS,EAAC,uBADZ;MAEE,UAAU,EAAC,EAFb;MAGE,SAAS,EAAC,EAHZ,CAIE;MAJF;MAKE,cAAY7D,MAAM,GAAG,QAAH,GAAc,YALlC;MAME,OAAO,EAAE0D;IANX,GAQE,qCAAC,0BAAD;MAAc,SAAS,EAAC,mBAAxB;MAA4C,MAAM,EAAE1D;IAApD,EARF,CAdJ;IAyBE,MAAM,EAAEjB;EAzBV,GA2BE,qCAAC,8BAAD,6BACMnB,SADN;IAEE,QAAQ,EAAEY,QAFZ;IAGE,KAAK,EAAEuB,eAHT;IAIE,UAAU,EAAED,UAJd;IAKE,gBAAgB,EAAEnB,gBALpB;IAME,cAAc,EAAED,cANlB;IAOE,cAAc,EAAED,cAPlB;IAQE,UAAU,EAAEqE,iBARd;IASE,OAAO,EAAEhC,WATX;IAUE,SAAS,EAAEuB,aAVb;IAWE,WAAW,EAAE9D,WAXf;IAYE,MAAM,EAAEH,MAZV;IAaE,QAAQ,EAAEE,QAbZ;IAcE,aAAa,EAAE+B;EAdjB,GA3BF,EA2CGL,MAAM,IACL,qCAAC,0CAAD;IACE,SAAS,EAAEL,OADb;IAEE,SAAS,EAAEd,cAFb;IAGE,YAAY,EAAEY,YAHhB;IAIE,cAAc,EAAE+D,cAJlB;IAKE,iBAAiB,EAAEJ,iBALrB;IAME,YAAY,EAAEG,oBANhB;IAOE,QAAQ,EAAEnG,QAPZ;IAQE,SAAS,EAAC,sBARZ;IASE,SAAS,EAAE4B,gBATb;IAUE,WAAW,EAAEC;EAVf,GAYG0B,aAAa,IACZ,qCAAC,sCAAD;IACE,OAAO,EAAEF,kBAAkB,KAAK,CADlC;IAEE,WAAW,EAAEP,kBAFf;IAGE,YAAY,EAAE;MAAA,OAAMQ,qBAAqB,CAAC,CAAD,CAA3B;IAAA;EAHhB,GAKG1D,aALH,CAbJ,EAqBG,EAACmD,eAAD,aAACA,eAAD,eAACA,eAAe,CAAEU,MAAlB,KAA4B,CAACF,aAA7B,IAA8C5D,SAA9C,GACC,qCAAC,gBAAD;IAAS,SAAS,EAAC;EAAnB,GAAyCA,SAAzC,CADD,GAGCoD,eAAe,CAAC2D,GAAhB,CAAoB,UAACnG,MAAD,EAAiB2D,KAAjB,EAAmC;IACrD,IAAMyC,KAAK,GAAGrF,cAAc,CAAEf,MAAF,CAA5B;IACA,IAAMqG,OAAO,GACXzD,aAAa,IACb9B,cAAc,CAAEd,MAAF,CAAd,KAA4Bc,cAAc,CAAE8B,aAAF,CAF5C;IAGA,IAAM0D,QAAQ,GAAGlE,eAAe,CAACmE,IAAhB,CACf,UAACC,cAAD,EAA4B;MAC1B,OACE1F,cAAc,CAAE0F,cAAF,CAAd,KAAoC1F,cAAc,CAAEd,MAAF,CADpD;IAGD,CALc,CAAjB;IAOA,IAAMiF,KAAK,GAAGnE,cAAc,CAAEd,MAAF,CAA5B;IAEA,OACE,qCAAC,KAAD,CAAO,QAAP;MAAgB,GAAG,kCAAYiF,KAAZ,eAAqBA,KAArB;IAAnB,GACGlF,YAAY,CAAE;MACbS,SAAS,EAAE,IAAAiG,wBAAA,EAAY,qBAAZ,CADE;MAEbzG,MAAM,EAANA,MAFa;MAGbqG,OAAO,EAAEpD,OAAO,CAACoD,OAAD,CAHH;MAIbK,QAAQ,EAAEN,KAJG;MAKbE,QAAQ,EAAE,CAAC,CAACA,QALC;MAMb5F,UAAU,EAAE,oBAAC0C,CAAD,EAAO;QACjB,IAAIA,CAAJ,EAAO;UACL,OAAQK,kBAAkB,CAACE,KAAD,CAAlB,GAA4BP,CAApC;QACD;;QACD,OAAOzB,SAAP;MACD,CAXY;MAYbgF,WAAW,EAAE,qBAACvD,CAAD,EAAyC;QACpD9D,aAAa,SAAb,IAAAA,aAAa,WAAb,YAAAA,aAAa,CAAG8D,CAAH,EAAMpD,MAAN,CAAb;;QAEA,IAAI,CAACoD,CAAC,CAACwB,gBAAP,EAAyB;UACvBjF,gBAAgB,IAAI2C,SAAS,CAAC,KAAD,CAA7B;UACAG,SAAS,CAACzC,MAAD,CAAT;UACA2C,UAAU;QACX;MACF,CApBY;MAqBbiE,YAAY,EAAE;QAAA,OAAM7D,qBAAqB,CAACY,KAAD,CAA3B;MAAA;IArBD,CAAF,CADf,CADF;EA2BD,CAzCD,CAxBJ,CA5CJ,CADF;AAoHD,CA1XM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ConfigProvider/ConfigProvider.tsx"],"names":["warn","useSchemeDetector","node","_scheme","inherit","getScheme","React","useCallback","canUseDOM","undefined","getAttribute","useState","resolvedScheme","setScheme","useEffect","noop","observer","MutationObserver","observe","attributes","attributeFilter","disconnect","deriveAppearance","scheme","Scheme","SPACE_GRAY","VKCOM_DARK","ConfigProvider","props","parentLocale","useContext","LocaleProviderContext","parentConfig","ConfigProviderContext","children","webviewType","isWebView","transitionMotionEnabled","platform","hasNewTokens","appearance","locale","normalizedScheme","document","target","body","process","env","NODE_ENV","hasAttribute","setAttribute","removeAttribute","realScheme","derivedAppearance","VKUITokensClassName","classList","add","remove","configContext"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport { canUseDOM, useDOM } from \"../../lib/dom\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"./ConfigProviderContext\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useObjectMemo } from \"../../hooks/useObjectMemo\";\nimport { noop } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport {\n normalizeScheme,\n AppearanceScheme,\n Scheme,\n} from \"../../helpers/scheme\";\nimport {\n AppearanceProvider,\n generateVKUITokensClassName,\n} from \"../AppearanceProvider/AppearanceProvider\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\n\nexport interface ConfigProviderProps\n extends Partial<ConfigProviderContextInterface> {\n /**\n * @deprecated будет удалено в 5.0.0, устанавливать тему следует через appearance\n * Цветовая схема приложения\n */\n scheme?: AppearanceScheme;\n /**\n Локаль ([список](https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry))\n */\n locale?: string;\n children?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"ConfigProvider\");\n\nfunction useSchemeDetector(\n node: HTMLElement | undefined | null,\n _scheme: Scheme | \"inherit\"\n) {\n const inherit = _scheme === \"inherit\";\n const getScheme = React.useCallback(() => {\n if (!inherit || !canUseDOM || !node) {\n return undefined;\n }\n return node.getAttribute(\"scheme\") as Scheme;\n }, [inherit, node]);\n const [resolvedScheme, setScheme] = React.useState(getScheme());\n\n React.useEffect(() => {\n if (!inherit || !node) {\n return noop;\n }\n setScheme(getScheme());\n const observer = new MutationObserver(() => setScheme(getScheme()));\n observer.observe(node, { attributes: true, attributeFilter: [\"scheme\"] });\n return () => observer.disconnect();\n }, [getScheme, inherit, node]);\n\n return _scheme === \"inherit\" ? resolvedScheme : _scheme;\n}\n\nconst deriveAppearance = (scheme: Scheme | undefined): AppearanceType =>\n scheme === Scheme.SPACE_GRAY || scheme === Scheme.VKCOM_DARK\n ? \"dark\"\n : \"light\";\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ConfigProvider\n */\nexport const ConfigProvider = (props: ConfigProviderProps) => {\n const parentLocale = React.useContext(LocaleProviderContext);\n const parentConfig = React.useContext(ConfigProviderContext);\n\n const {\n children,\n webviewType = parentConfig.webviewType,\n isWebView = parentConfig.isWebView,\n transitionMotionEnabled = parentConfig.transitionMotionEnabled,\n platform = parentConfig.platform,\n hasNewTokens = parentConfig.hasNewTokens,\n appearance = parentConfig.appearance,\n scheme,\n locale = parentLocale ?? \"ru\",\n } = props;\n\n const normalizedScheme = normalizeScheme({\n scheme,\n platform,\n appearance,\n });\n const { document } = useDOM();\n const target = document?.body;\n\n useIsomorphicLayoutEffect(() => {\n if (normalizedScheme === \"inherit\") {\n return noop;\n }\n if (\n process.env.NODE_ENV === \"development\" &&\n target?.hasAttribute(\"scheme\") &&\n parentConfig.appearance === undefined // appearance не была вычислена в родительском конфиге, @deprecated будет удалено в 5.0.0\n ) {\n warn(\n '<body scheme> был установлен перед монтированием VKUI - вы не забыли scheme=\"inherit\"?'\n );\n }\n target?.setAttribute(\"scheme\", normalizedScheme);\n return () => target?.removeAttribute(\"scheme\");\n }, [normalizedScheme]);\n\n const realScheme = useSchemeDetector(target, normalizedScheme);\n const derivedAppearance = deriveAppearance(realScheme);\n\n useIsomorphicLayoutEffect(() => {\n const VKUITokensClassName = generateVKUITokensClassName(\n platform,\n derivedAppearance\n );\n\n // eslint-disable-next-line no-restricted-properties\n target?.classList.add(VKUITokensClassName);\n\n return () => {\n // eslint-disable-next-line no-restricted-properties\n target?.classList.remove(VKUITokensClassName);\n };\n }, [platform, derivedAppearance]);\n\n const configContext = useObjectMemo({\n webviewType,\n isWebView,\n transitionMotionEnabled,\n hasNewTokens,\n platform,\n scheme,\n appearance: appearance || derivedAppearance,\n });\n\n return (\n <ConfigProviderContext.Provider value={configContext}>\n <LocaleProviderContext.Provider value={locale}>\n <AppearanceProvider appearance={configContext.appearance}>\n {children}\n </AppearanceProvider>\n </LocaleProviderContext.Provider>\n </ConfigProviderContext.Provider>\n );\n};\n"],"file":"ConfigProvider.js"}
1
+ {"version":3,"file":"ConfigProvider.js","names":["warn","warnOnce","useSchemeDetector","node","_scheme","inherit","getScheme","React","useCallback","canUseDOM","undefined","getAttribute","useState","resolvedScheme","setScheme","useEffect","noop","observer","MutationObserver","observe","attributes","attributeFilter","disconnect","deriveAppearance","scheme","Scheme","SPACE_GRAY","VKCOM_DARK","ConfigProvider","props","parentLocale","useContext","LocaleProviderContext","parentConfig","ConfigProviderContext","children","webviewType","isWebView","transitionMotionEnabled","platform","hasNewTokens","appearance","locale","normalizedScheme","normalizeScheme","useDOM","document","target","body","useIsomorphicLayoutEffect","process","env","NODE_ENV","hasAttribute","setAttribute","removeAttribute","realScheme","derivedAppearance","VKUITokensClassName","generateVKUITokensClassName","classList","add","remove","configContext","useObjectMemo"],"sources":["../../../../src/components/ConfigProvider/ConfigProvider.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport { canUseDOM, useDOM } from \"../../lib/dom\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"./ConfigProviderContext\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useObjectMemo } from \"../../hooks/useObjectMemo\";\nimport { noop } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport {\n normalizeScheme,\n AppearanceScheme,\n Scheme,\n} from \"../../helpers/scheme\";\nimport {\n AppearanceProvider,\n generateVKUITokensClassName,\n} from \"../AppearanceProvider/AppearanceProvider\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\n\nexport interface ConfigProviderProps\n extends Partial<ConfigProviderContextInterface> {\n /**\n * @deprecated будет удалено в 5.0.0, устанавливать тему следует через appearance\n * Цветовая схема приложения\n */\n scheme?: AppearanceScheme;\n /**\n Локаль ([список](https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry))\n */\n locale?: string;\n children?: React.ReactNode;\n}\n\nconst warn = warnOnce(\"ConfigProvider\");\n\nfunction useSchemeDetector(\n node: HTMLElement | undefined | null,\n _scheme: Scheme | \"inherit\"\n) {\n const inherit = _scheme === \"inherit\";\n const getScheme = React.useCallback(() => {\n if (!inherit || !canUseDOM || !node) {\n return undefined;\n }\n return node.getAttribute(\"scheme\") as Scheme;\n }, [inherit, node]);\n const [resolvedScheme, setScheme] = React.useState(getScheme());\n\n React.useEffect(() => {\n if (!inherit || !node) {\n return noop;\n }\n setScheme(getScheme());\n const observer = new MutationObserver(() => setScheme(getScheme()));\n observer.observe(node, { attributes: true, attributeFilter: [\"scheme\"] });\n return () => observer.disconnect();\n }, [getScheme, inherit, node]);\n\n return _scheme === \"inherit\" ? resolvedScheme : _scheme;\n}\n\nconst deriveAppearance = (scheme: Scheme | undefined): AppearanceType =>\n scheme === Scheme.SPACE_GRAY || scheme === Scheme.VKCOM_DARK\n ? \"dark\"\n : \"light\";\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ConfigProvider\n */\nexport const ConfigProvider = (props: ConfigProviderProps) => {\n const parentLocale = React.useContext(LocaleProviderContext);\n const parentConfig = React.useContext(ConfigProviderContext);\n\n const {\n children,\n webviewType = parentConfig.webviewType,\n isWebView = parentConfig.isWebView,\n transitionMotionEnabled = parentConfig.transitionMotionEnabled,\n platform = parentConfig.platform,\n hasNewTokens = parentConfig.hasNewTokens,\n appearance = parentConfig.appearance,\n scheme,\n locale = parentLocale ?? \"ru\",\n } = props;\n\n const normalizedScheme = normalizeScheme({\n scheme,\n platform,\n appearance,\n });\n const { document } = useDOM();\n const target = document?.body;\n\n useIsomorphicLayoutEffect(() => {\n if (normalizedScheme === \"inherit\") {\n return noop;\n }\n if (\n process.env.NODE_ENV === \"development\" &&\n target?.hasAttribute(\"scheme\") &&\n parentConfig.appearance === undefined // appearance не была вычислена в родительском конфиге, @deprecated будет удалено в 5.0.0\n ) {\n warn(\n '<body scheme> был установлен перед монтированием VKUI - вы не забыли scheme=\"inherit\"?'\n );\n }\n target?.setAttribute(\"scheme\", normalizedScheme);\n return () => target?.removeAttribute(\"scheme\");\n }, [normalizedScheme]);\n\n const realScheme = useSchemeDetector(target, normalizedScheme);\n const derivedAppearance = deriveAppearance(realScheme);\n\n useIsomorphicLayoutEffect(() => {\n const VKUITokensClassName = generateVKUITokensClassName(\n platform,\n derivedAppearance\n );\n\n // eslint-disable-next-line no-restricted-properties\n target?.classList.add(VKUITokensClassName);\n\n return () => {\n // eslint-disable-next-line no-restricted-properties\n target?.classList.remove(VKUITokensClassName);\n };\n }, [platform, derivedAppearance]);\n\n const configContext = useObjectMemo({\n webviewType,\n isWebView,\n transitionMotionEnabled,\n hasNewTokens,\n platform,\n scheme,\n appearance: appearance || derivedAppearance,\n });\n\n return (\n <ConfigProviderContext.Provider value={configContext}>\n <LocaleProviderContext.Provider value={locale}>\n <AppearanceProvider appearance={configContext.appearance}>\n {children}\n </AppearanceProvider>\n </LocaleProviderContext.Provider>\n </ConfigProviderContext.Provider>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ConfigProvider/ConfigProviderContext.tsx"],"names":["WebviewType","ConfigProviderContext","React","createContext","webviewType","VKAPPS","isWebView","vkBridge","transitionMotionEnabled","platform","hasNewTokens","useConfigProvider","useContext"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;IAEYA,W;;;WAAAA,W;AAAAA,EAAAA,W;AAAAA,EAAAA,W;GAAAA,W,2BAAAA,W;;AAkCL,IAAMC,qBAAqB,gBAChCC,KAAK,CAACC,aAAN,CAAoD;AAClDC,EAAAA,WAAW,EAAEJ,WAAW,CAACK,MADyB;AAElDC,EAAAA,SAAS,EAAEC,kBAASD,SAAT,EAFuC;AAGlDE,EAAAA,uBAAuB,EAAE,IAHyB;AAIlDC,EAAAA,QAAQ,EAAE,yBAJwC;AAKlDC,EAAAA,YAAY,EAAE,KALoC,CAMlD;AACA;;AAPkD,CAApD,CADK;;;AAWA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB;AAAA,SAAMT,KAAK,CAACU,UAAN,CAAiBX,qBAAjB,CAAN;AAAA,CAA1B","sourcesContent":["import * as React from \"react\";\nimport vkBridge, { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport { PlatformType, platform } from \"../../lib/platform\";\n\nexport enum WebviewType {\n VKAPPS = \"vkapps\",\n INTERNAL = \"internal\",\n}\n\nexport interface ConfigProviderContextInterface {\n /**\n * Подсказывает приложению, обёрнутому в `ConfigProvider`, где открыто приложение: внутри webview или в мобильном браузере\n */\n isWebView: boolean;\n /**\n * Тип вебвью.<br>\n * В случае `WebviewType.VKAPPS` интерфейс будет адаптирован для отображения в вебвью Mini Apps (системные контролы в правой части шапки)\n */\n webviewType: WebviewType.INTERNAL | WebviewType.VKAPPS;\n /**\n * Тип приложения\n */\n app?: string;\n /**\n * Тип цветовой схемы – `light` или `dark`\n */\n appearance?: AppearanceType;\n /**\n * Включена ли анимация переходов между экранами в `Root` и `View`\n */\n transitionMotionEnabled: boolean;\n /**\n * Платформа\n */\n platform: PlatformType;\n hasNewTokens: boolean;\n}\n\nexport const ConfigProviderContext =\n React.createContext<ConfigProviderContextInterface>({\n webviewType: WebviewType.VKAPPS,\n isWebView: vkBridge.isWebView(),\n transitionMotionEnabled: true,\n platform: platform(),\n hasNewTokens: false,\n // appearance is auto-detected by default\n // appearance: Appearance.LIGHT,\n });\n\nexport const useConfigProvider = () => React.useContext(ConfigProviderContext);\n"],"file":"ConfigProviderContext.js"}
1
+ {"version":3,"file":"ConfigProviderContext.js","names":["WebviewType","ConfigProviderContext","React","createContext","webviewType","VKAPPS","isWebView","vkBridge","transitionMotionEnabled","platform","hasNewTokens","useConfigProvider","useContext"],"sources":["../../../../src/components/ConfigProvider/ConfigProviderContext.tsx"],"sourcesContent":["import * as React from \"react\";\nimport vkBridge, { AppearanceType } from \"@vkontakte/vk-bridge\";\nimport { PlatformType, platform } from \"../../lib/platform\";\n\nexport enum WebviewType {\n VKAPPS = \"vkapps\",\n INTERNAL = \"internal\",\n}\n\nexport interface ConfigProviderContextInterface {\n /**\n * Подсказывает приложению, обёрнутому в `ConfigProvider`, где открыто приложение: внутри webview или в мобильном браузере\n */\n isWebView: boolean;\n /**\n * Тип вебвью.<br>\n * В случае `WebviewType.VKAPPS` интерфейс будет адаптирован для отображения в вебвью Mini Apps (системные контролы в правой части шапки)\n */\n webviewType: WebviewType.INTERNAL | WebviewType.VKAPPS;\n /**\n * Тип приложения\n */\n app?: string;\n /**\n * Тип цветовой схемы – `light` или `dark`\n */\n appearance?: AppearanceType;\n /**\n * Включена ли анимация переходов между экранами в `Root` и `View`\n */\n transitionMotionEnabled: boolean;\n /**\n * Платформа\n */\n platform: PlatformType;\n hasNewTokens: boolean;\n}\n\nexport const ConfigProviderContext =\n React.createContext<ConfigProviderContextInterface>({\n webviewType: WebviewType.VKAPPS,\n isWebView: vkBridge.isWebView(),\n transitionMotionEnabled: true,\n platform: platform(),\n hasNewTokens: false,\n // appearance is auto-detected by default\n // appearance: Appearance.LIGHT,\n });\n\nexport const useConfigProvider = () => React.useContext(ConfigProviderContext);\n"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;IAEYA,W;;;WAAAA,W;EAAAA,W;EAAAA,W;GAAAA,W,2BAAAA,W;;AAkCL,IAAMC,qBAAqB,gBAChCC,KAAK,CAACC,aAAN,CAAoD;EAClDC,WAAW,EAAEJ,WAAW,CAACK,MADyB;EAElDC,SAAS,EAAEC,iBAAA,CAASD,SAAT,EAFuC;EAGlDE,uBAAuB,EAAE,IAHyB;EAIlDC,QAAQ,EAAE,IAAAA,kBAAA,GAJwC;EAKlDC,YAAY,EAAE,KALoC,CAMlD;EACA;;AAPkD,CAApD,CADK;;;AAWA,IAAMC,iBAAiB,GAAG,SAApBA,iBAAoB;EAAA,OAAMT,KAAK,CAACU,UAAN,CAAiBX,qBAAjB,CAAN;AAAA,CAA1B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ContentCard/ContentCard.tsx"],"names":["warn","ContentCard","subtitle","header","text","caption","className","mode","style","getRootRef","getRef","maxHeight","image","src","srcSet","alt","width","height","crossOrigin","decoding","loading","referrerPolicy","sizes","useMap","restProps","source","process","env","NODE_ENV","disabled","onClick","href"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Card, CardProps } from \"../Card/Card\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { TappableProps, Tappable } from \"../Tappable/Tappable\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./ContentCard.css\";\n\nexport interface ContentCardProps\n extends HasRootRef<HTMLDivElement>,\n Omit<TappableProps, \"getRootRef\" | \"crossOrigin\">,\n Omit<\n React.ImgHTMLAttributes<HTMLImageElement>,\n keyof React.HTMLAttributes<HTMLImageElement>\n >,\n HasRef<HTMLImageElement> {\n /**\n Текст над заголовком\n */\n subtitle?: React.ReactNode;\n /**\n Заголовок\n */\n header?: React.ReactNode;\n /**\n Текст\n */\n text?: React.ReactNode;\n /**\n Нижний текст\n */\n caption?: React.ReactNode;\n /**\n @deprecated будет удалено в 5.0.0. Используйте src\n */\n image?: string;\n /**\n Максимальная высота изображения\n */\n maxHeight?: number;\n mode?: CardProps[\"mode\"];\n}\n\nconst warn = warnOnce(\"ContentCard\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ContentCard\n */\nexport const ContentCard = ({\n subtitle,\n header,\n text,\n caption,\n // card props\n className,\n mode = \"shadow\",\n style,\n getRootRef,\n // img props\n getRef,\n maxHeight,\n image,\n src,\n srcSet,\n alt,\n width,\n height,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n useMap,\n ...restProps\n}: ContentCardProps) => {\n const source = image || src;\n\n if (image && process.env.NODE_ENV === \"development\") {\n warn(\"Свойство image устарело и будет удалено в 5.0.0. Используйте src\");\n }\n\n return (\n <Card\n mode={mode}\n getRootRef={getRootRef}\n vkuiClass={classNames(\n \"ContentCard\",\n restProps.disabled && \"ContentCard--disabled\"\n )}\n style={style}\n className={className}\n >\n <Tappable\n {...restProps}\n disabled={restProps.disabled || (!restProps.onClick && !restProps.href)}\n hasHover={false}\n hasActive={false}\n vkuiClass=\"ContentCard__tappable\"\n >\n {(source || srcSet) && (\n <img\n ref={getRef}\n vkuiClass=\"ContentCard__img\"\n src={source}\n srcSet={srcSet}\n alt={alt}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n sizes={sizes}\n useMap={useMap}\n height={height}\n style={{ maxHeight }}\n width=\"100%\"\n />\n )}\n <div vkuiClass=\"ContentCard__body\">\n {hasReactNode(subtitle) && (\n <Caption\n vkuiClass=\"ContentCard__text ContentCard__subtitle\"\n weight=\"1\"\n level=\"3\"\n caps\n >\n {subtitle}\n </Caption>\n )}\n {hasReactNode(header) && (\n <Headline vkuiClass=\"ContentCard__text\" weight=\"2\" level=\"1\">\n {header}\n </Headline>\n )}\n {hasReactNode(text) && (\n <Text vkuiClass=\"ContentCard__text\">{text}</Text>\n )}\n {hasReactNode(caption) && (\n <Caption vkuiClass=\"ContentCard__text ContentCard__caption\">\n {caption}\n </Caption>\n )}\n </div>\n </Tappable>\n </Card>\n );\n};\n"],"file":"ContentCard.js"}
1
+ {"version":3,"file":"ContentCard.js","names":["warn","warnOnce","ContentCard","subtitle","header","text","caption","className","mode","style","getRootRef","getRef","maxHeight","image","src","srcSet","alt","width","height","crossOrigin","decoding","loading","referrerPolicy","sizes","useMap","restProps","source","process","env","NODE_ENV","classNames","disabled","onClick","href","hasReactNode"],"sources":["../../../../src/components/ContentCard/ContentCard.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { Card, CardProps } from \"../Card/Card\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { TappableProps, Tappable } from \"../Tappable/Tappable\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./ContentCard.css\";\n\nexport interface ContentCardProps\n extends HasRootRef<HTMLDivElement>,\n Omit<TappableProps, \"getRootRef\" | \"crossOrigin\">,\n Omit<\n React.ImgHTMLAttributes<HTMLImageElement>,\n keyof React.HTMLAttributes<HTMLImageElement>\n >,\n HasRef<HTMLImageElement> {\n /**\n Текст над заголовком\n */\n subtitle?: React.ReactNode;\n /**\n Заголовок\n */\n header?: React.ReactNode;\n /**\n Текст\n */\n text?: React.ReactNode;\n /**\n Нижний текст\n */\n caption?: React.ReactNode;\n /**\n @deprecated будет удалено в 5.0.0. Используйте src\n */\n image?: string;\n /**\n Максимальная высота изображения\n */\n maxHeight?: number;\n mode?: CardProps[\"mode\"];\n}\n\nconst warn = warnOnce(\"ContentCard\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ContentCard\n */\nexport const ContentCard = ({\n subtitle,\n header,\n text,\n caption,\n // card props\n className,\n mode = \"shadow\",\n style,\n getRootRef,\n // img props\n getRef,\n maxHeight,\n image,\n src,\n srcSet,\n alt,\n width,\n height,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n useMap,\n ...restProps\n}: ContentCardProps) => {\n const source = image || src;\n\n if (image && process.env.NODE_ENV === \"development\") {\n warn(\"Свойство image устарело и будет удалено в 5.0.0. Используйте src\");\n }\n\n return (\n <Card\n mode={mode}\n getRootRef={getRootRef}\n vkuiClass={classNames(\n \"ContentCard\",\n restProps.disabled && \"ContentCard--disabled\"\n )}\n style={style}\n className={className}\n >\n <Tappable\n {...restProps}\n disabled={restProps.disabled || (!restProps.onClick && !restProps.href)}\n hasHover={false}\n hasActive={false}\n vkuiClass=\"ContentCard__tappable\"\n >\n {(source || srcSet) && (\n <img\n ref={getRef}\n vkuiClass=\"ContentCard__img\"\n src={source}\n srcSet={srcSet}\n alt={alt}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n sizes={sizes}\n useMap={useMap}\n height={height}\n style={{ maxHeight }}\n width=\"100%\"\n />\n )}\n <div vkuiClass=\"ContentCard__body\">\n {hasReactNode(subtitle) && (\n <Caption\n vkuiClass=\"ContentCard__text ContentCard__subtitle\"\n weight=\"1\"\n level=\"3\"\n caps\n >\n {subtitle}\n </Caption>\n )}\n {hasReactNode(header) && (\n <Headline vkuiClass=\"ContentCard__text\" weight=\"2\" level=\"1\">\n {header}\n </Headline>\n )}\n {hasReactNode(text) && (\n <Text vkuiClass=\"ContentCard__text\">{text}</Text>\n )}\n {hasReactNode(caption) && (\n <Caption vkuiClass=\"ContentCard__text ContentCard__caption\">\n {caption}\n </Caption>\n )}\n </div>\n </Tappable>\n </Card>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Counter/Counter.tsx"],"names":["Counter","mode","size","children","restProps","React","Children","count","CounterTypography","Caption","Headline"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAWA;AACA;AACA;AACO,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAKH;AAAA,uBAJlBC,IAIkB;AAAA,MAJlBA,IAIkB,0BAJX,WAIW;AAAA,uBAHlBC,IAGkB;AAAA,MAHlBA,IAGkB,0BAHX,GAGW;AAAA,MAFlBC,QAEkB,QAFlBA,QAEkB;AAAA,MADfC,SACe;;AAClB,MAAIC,KAAK,CAACC,QAAN,CAAeC,KAAf,CAAqBJ,QAArB,MAAmC,CAAvC,EAA0C;AACxC,WAAO,IAAP;AACD;;AAED,MAAMK,iBAAiB,GAAGN,IAAI,KAAK,GAAT,GAAeO,gBAAf,GAAyBC,kBAAnD;AAEA,SACE,wEACMN,SADN;AAEE,IAAA,SAAS,EAAE,4BACT,SADS,qBAEGH,IAFH,wBAGKC,IAHL;AAFb,MAQG,yBAAaC,QAAb,KACC,qCAAC,iBAAD;AAAmB,IAAA,SAAS,EAAC,MAA7B;AAAoC,IAAA,SAAS,EAAC,aAA9C;AAA4D,IAAA,KAAK,EAAC;AAAlE,KACGA,QADH,CATJ,CADF;AAgBD,CA5BM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport \"./Counter.css\";\n\nexport interface CounterProps extends React.HTMLAttributes<HTMLSpanElement> {\n /**\n * Тип счетчика. При использовании компонента в качестве значения свойства `after` у `Button` эти значения игнорируются\n */\n mode?: \"secondary\" | \"primary\" | \"prominent\" | \"contrast\";\n size?: \"s\" | \"m\";\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Counter\n */\nexport const Counter = ({\n mode = \"secondary\",\n size = \"m\",\n children,\n ...restProps\n}: CounterProps) => {\n if (React.Children.count(children) === 0) {\n return null;\n }\n\n const CounterTypography = size === \"s\" ? Caption : Headline;\n\n return (\n <span\n {...restProps}\n vkuiClass={classNames(\n \"Counter\",\n `Counter--${mode}`,\n `Counter--s-${size}`\n )}\n >\n {hasReactNode(children) && (\n <CounterTypography Component=\"span\" vkuiClass=\"Counter__in\" level=\"2\">\n {children}\n </CounterTypography>\n )}\n </span>\n );\n};\n"],"file":"Counter.js"}
1
+ {"version":3,"file":"Counter.js","names":["Counter","mode","size","children","restProps","React","Children","count","CounterTypography","Caption","Headline","classNames","hasReactNode"],"sources":["../../../../src/components/Counter/Counter.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport \"./Counter.css\";\n\nexport interface CounterProps extends React.HTMLAttributes<HTMLSpanElement> {\n /**\n * Тип счетчика. При использовании компонента в качестве значения свойства `after` у `Button` эти значения игнорируются\n */\n mode?: \"secondary\" | \"primary\" | \"prominent\" | \"contrast\";\n size?: \"s\" | \"m\";\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Counter\n */\nexport const Counter = ({\n mode = \"secondary\",\n size = \"m\",\n children,\n ...restProps\n}: CounterProps) => {\n if (React.Children.count(children) === 0) {\n return null;\n }\n\n const CounterTypography = size === \"s\" ? Caption : Headline;\n\n return (\n <span\n {...restProps}\n vkuiClass={classNames(\n \"Counter\",\n `Counter--${mode}`,\n `Counter--s-${size}`\n )}\n >\n {hasReactNode(children) && (\n <CounterTypography Component=\"span\" vkuiClass=\"Counter__in\" level=\"2\">\n {children}\n </CounterTypography>\n )}\n </span>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;;;AAWA;AACA;AACA;AACO,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAKH;EAAA,qBAJlBC,IAIkB;EAAA,IAJlBA,IAIkB,0BAJX,WAIW;EAAA,qBAHlBC,IAGkB;EAAA,IAHlBA,IAGkB,0BAHX,GAGW;EAAA,IAFlBC,QAEkB,QAFlBA,QAEkB;EAAA,IADfC,SACe;;EAClB,IAAIC,KAAK,CAACC,QAAN,CAAeC,KAAf,CAAqBJ,QAArB,MAAmC,CAAvC,EAA0C;IACxC,OAAO,IAAP;EACD;;EAED,IAAMK,iBAAiB,GAAGN,IAAI,KAAK,GAAT,GAAeO,gBAAf,GAAyBC,kBAAnD;EAEA,OACE,wEACMN,SADN;IAEE,SAAS,EAAE,IAAAO,sBAAA,EACT,SADS,qBAEGV,IAFH,wBAGKC,IAHL;EAFb,IAQG,IAAAU,mBAAA,EAAaT,QAAb,KACC,qCAAC,iBAAD;IAAmB,SAAS,EAAC,MAA7B;IAAoC,SAAS,EAAC,aAA9C;IAA4D,KAAK,EAAC;EAAlE,GACGA,QADH,CATJ,CADF;AAgBD,CA5BM"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CustomScrollView/CustomScrollView.tsx"],"names":["CustomScrollView","className","children","externalBoxRef","boxRef","windowResize","autoHideScrollbar","autoHideScrollbarDelay","document","window","ratio","React","useRef","NaN","lastTrackerTop","clientHeight","trackerHeight","scrollHeight","transformProp","startY","trackerTop","barY","trackerY","setTrackerPosition","scrollTop","current","style","setTrackerPositionFromScroll","progress","resize","localClientHeight","localScrollHeight","localRatio","localTrackerHeight","Math","max","display","height","resizeHandler","add","prop","undefined","setScrollPositionFromTracker","onMove","e","preventDefault","diff","clientY","position","min","trackerVisible","onTargetScroll","onTrackerDragStart","onTrackerDragStop","onTrackerMouseEnter","onTrackerMouseLeave","onUp","unsubscribe","scroll","listeners","subscribe","el","forEach","l","remove","onDragStart"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { DOMProps, useDOM } from \"../../lib/dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport {\n TrackerOptionsProps,\n useTrackerVisibility,\n} from \"./useTrackerVisibility\";\nimport \"./CustomScrollView.css\";\n\nexport interface CustomScrollViewProps extends DOMProps, TrackerOptionsProps {\n windowResize?: boolean;\n boxRef?: React.Ref<HTMLDivElement>;\n className?: HTMLDivElement[\"className\"];\n children: React.ReactNode;\n}\n\nexport const CustomScrollView = ({\n className,\n children,\n boxRef: externalBoxRef,\n windowResize,\n autoHideScrollbar = false,\n autoHideScrollbarDelay,\n}: CustomScrollViewProps) => {\n const { document, window } = useDOM();\n\n const ratio = React.useRef(NaN);\n const lastTrackerTop = React.useRef(0);\n const clientHeight = React.useRef(0);\n const trackerHeight = React.useRef(0);\n const scrollHeight = React.useRef(0);\n const transformProp = React.useRef(\"\");\n const startY = React.useRef(0);\n const trackerTop = React.useRef(0);\n\n const boxRef = useExternRef(externalBoxRef);\n\n const barY = React.useRef<HTMLDivElement>(null);\n const trackerY = React.useRef<HTMLDivElement>(null);\n\n const setTrackerPosition = (scrollTop: number) => {\n lastTrackerTop.current = scrollTop;\n if (trackerY.current !== null) {\n (trackerY.current.style as any)[\n transformProp.current\n ] = `translate(0, ${scrollTop}px)`;\n }\n };\n\n const setTrackerPositionFromScroll = (scrollTop: number) => {\n const progress = scrollTop / (scrollHeight.current - clientHeight.current);\n setTrackerPosition(\n (clientHeight.current - trackerHeight.current) * progress\n );\n };\n\n const resize = () => {\n if (!boxRef.current || !barY.current || !trackerY.current) {\n return;\n }\n const localClientHeight = boxRef.current.clientHeight;\n const localScrollHeight = boxRef.current.scrollHeight;\n const localRatio = localClientHeight / localScrollHeight;\n const localTrackerHeight = Math.max(localClientHeight * localRatio, 40);\n\n ratio.current = localRatio;\n clientHeight.current = localClientHeight;\n scrollHeight.current = localScrollHeight;\n trackerHeight.current = localTrackerHeight;\n\n if (localRatio >= 1) {\n barY.current.style.display = \"none\";\n } else {\n barY.current.style.display = \"\";\n trackerY.current.style.height = `${localTrackerHeight}px`;\n setTrackerPositionFromScroll(boxRef.current.scrollTop);\n }\n };\n\n const resizeHandler = useEventListener(\"resize\", resize);\n\n useIsomorphicLayoutEffect(() => {\n if (windowResize && window) {\n resizeHandler.add(window);\n }\n }, [windowResize, window]);\n\n useIsomorphicLayoutEffect(() => {\n let style = trackerY.current?.style;\n let prop = \"\";\n if (style !== undefined) {\n if (\"transform\" in style) {\n prop = \"transform\";\n } else if (\"webkitTransform\" in style) {\n prop = \"webkitTransform\";\n }\n }\n transformProp.current = prop;\n }, []);\n\n useIsomorphicLayoutEffect(resize);\n\n const setScrollPositionFromTracker = (trackerTop: number) => {\n const progress =\n trackerTop / (clientHeight.current - trackerHeight.current);\n if (boxRef.current !== null) {\n boxRef.current.scrollTop =\n (scrollHeight.current - clientHeight.current) * progress;\n }\n };\n\n const onMove = (e: MouseEvent) => {\n e.preventDefault();\n const diff = e.clientY - startY.current;\n const position = Math.min(\n Math.max(trackerTop.current + diff, 0),\n clientHeight.current - trackerHeight.current\n );\n\n setScrollPositionFromTracker(position);\n };\n\n const {\n trackerVisible,\n onTargetScroll,\n onTrackerDragStart,\n onTrackerDragStop,\n onTrackerMouseEnter,\n onTrackerMouseLeave,\n } = useTrackerVisibility(autoHideScrollbar, autoHideScrollbarDelay);\n\n const onUp = (e: MouseEvent) => {\n e.preventDefault();\n\n if (autoHideScrollbar) {\n onTrackerDragStop();\n }\n\n unsubscribe();\n };\n\n const scroll = () => {\n if (ratio.current >= 1 || !boxRef.current) {\n return;\n }\n\n if (autoHideScrollbar) {\n onTargetScroll();\n }\n\n setTrackerPositionFromScroll(boxRef.current.scrollTop);\n };\n\n const listeners = [\n useEventListener(\"mousemove\", onMove),\n useEventListener(\"mouseup\", onUp),\n ];\n\n function subscribe(el: Document | undefined) {\n if (el) {\n listeners.forEach((l) => l.add(el));\n }\n }\n\n function unsubscribe() {\n listeners.forEach((l) => l.remove());\n }\n\n const onDragStart = (e: React.MouseEvent) => {\n e.preventDefault();\n startY.current = e.clientY;\n trackerTop.current = lastTrackerTop.current;\n\n if (autoHideScrollbar) {\n onTrackerDragStart();\n }\n\n subscribe(document);\n };\n\n return (\n <div vkuiClass=\"CustomScrollView\" className={className}>\n <div vkuiClass=\"CustomScrollView__barY\" ref={barY}>\n <div\n vkuiClass={classNames(\n \"CustomScrollView__trackerY\",\n !trackerVisible && `CustomScrollView__trackerY--hidden`\n )}\n onMouseEnter={autoHideScrollbar ? onTrackerMouseEnter : undefined}\n onMouseLeave={autoHideScrollbar ? onTrackerMouseLeave : undefined}\n ref={trackerY}\n onMouseDown={onDragStart}\n />\n </div>\n\n <div\n vkuiClass=\"CustomScrollView__box\"\n tabIndex={-1}\n ref={boxRef}\n onScroll={scroll}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"file":"CustomScrollView.js"}
1
+ {"version":3,"file":"CustomScrollView.js","names":["CustomScrollView","className","children","externalBoxRef","boxRef","windowResize","autoHideScrollbar","autoHideScrollbarDelay","useDOM","document","window","ratio","React","useRef","NaN","lastTrackerTop","clientHeight","trackerHeight","scrollHeight","transformProp","startY","trackerTop","useExternRef","barY","trackerY","setTrackerPosition","scrollTop","current","style","setTrackerPositionFromScroll","progress","resize","localClientHeight","localScrollHeight","localRatio","localTrackerHeight","Math","max","display","height","resizeHandler","useEventListener","useIsomorphicLayoutEffect","add","prop","undefined","setScrollPositionFromTracker","onMove","e","preventDefault","diff","clientY","position","min","useTrackerVisibility","trackerVisible","onTargetScroll","onTrackerDragStart","onTrackerDragStop","onTrackerMouseEnter","onTrackerMouseLeave","onUp","unsubscribe","scroll","listeners","subscribe","el","forEach","l","remove","onDragStart","classNames"],"sources":["../../../../src/components/CustomScrollView/CustomScrollView.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { DOMProps, useDOM } from \"../../lib/dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEventListener } from \"../../hooks/useEventListener\";\nimport {\n TrackerOptionsProps,\n useTrackerVisibility,\n} from \"./useTrackerVisibility\";\nimport \"./CustomScrollView.css\";\n\nexport interface CustomScrollViewProps extends DOMProps, TrackerOptionsProps {\n windowResize?: boolean;\n boxRef?: React.Ref<HTMLDivElement>;\n className?: HTMLDivElement[\"className\"];\n children: React.ReactNode;\n}\n\nexport const CustomScrollView = ({\n className,\n children,\n boxRef: externalBoxRef,\n windowResize,\n autoHideScrollbar = false,\n autoHideScrollbarDelay,\n}: CustomScrollViewProps) => {\n const { document, window } = useDOM();\n\n const ratio = React.useRef(NaN);\n const lastTrackerTop = React.useRef(0);\n const clientHeight = React.useRef(0);\n const trackerHeight = React.useRef(0);\n const scrollHeight = React.useRef(0);\n const transformProp = React.useRef(\"\");\n const startY = React.useRef(0);\n const trackerTop = React.useRef(0);\n\n const boxRef = useExternRef(externalBoxRef);\n\n const barY = React.useRef<HTMLDivElement>(null);\n const trackerY = React.useRef<HTMLDivElement>(null);\n\n const setTrackerPosition = (scrollTop: number) => {\n lastTrackerTop.current = scrollTop;\n if (trackerY.current !== null) {\n (trackerY.current.style as any)[\n transformProp.current\n ] = `translate(0, ${scrollTop}px)`;\n }\n };\n\n const setTrackerPositionFromScroll = (scrollTop: number) => {\n const progress = scrollTop / (scrollHeight.current - clientHeight.current);\n setTrackerPosition(\n (clientHeight.current - trackerHeight.current) * progress\n );\n };\n\n const resize = () => {\n if (!boxRef.current || !barY.current || !trackerY.current) {\n return;\n }\n const localClientHeight = boxRef.current.clientHeight;\n const localScrollHeight = boxRef.current.scrollHeight;\n const localRatio = localClientHeight / localScrollHeight;\n const localTrackerHeight = Math.max(localClientHeight * localRatio, 40);\n\n ratio.current = localRatio;\n clientHeight.current = localClientHeight;\n scrollHeight.current = localScrollHeight;\n trackerHeight.current = localTrackerHeight;\n\n if (localRatio >= 1) {\n barY.current.style.display = \"none\";\n } else {\n barY.current.style.display = \"\";\n trackerY.current.style.height = `${localTrackerHeight}px`;\n setTrackerPositionFromScroll(boxRef.current.scrollTop);\n }\n };\n\n const resizeHandler = useEventListener(\"resize\", resize);\n\n useIsomorphicLayoutEffect(() => {\n if (windowResize && window) {\n resizeHandler.add(window);\n }\n }, [windowResize, window]);\n\n useIsomorphicLayoutEffect(() => {\n let style = trackerY.current?.style;\n let prop = \"\";\n if (style !== undefined) {\n if (\"transform\" in style) {\n prop = \"transform\";\n } else if (\"webkitTransform\" in style) {\n prop = \"webkitTransform\";\n }\n }\n transformProp.current = prop;\n }, []);\n\n useIsomorphicLayoutEffect(resize);\n\n const setScrollPositionFromTracker = (trackerTop: number) => {\n const progress =\n trackerTop / (clientHeight.current - trackerHeight.current);\n if (boxRef.current !== null) {\n boxRef.current.scrollTop =\n (scrollHeight.current - clientHeight.current) * progress;\n }\n };\n\n const onMove = (e: MouseEvent) => {\n e.preventDefault();\n const diff = e.clientY - startY.current;\n const position = Math.min(\n Math.max(trackerTop.current + diff, 0),\n clientHeight.current - trackerHeight.current\n );\n\n setScrollPositionFromTracker(position);\n };\n\n const {\n trackerVisible,\n onTargetScroll,\n onTrackerDragStart,\n onTrackerDragStop,\n onTrackerMouseEnter,\n onTrackerMouseLeave,\n } = useTrackerVisibility(autoHideScrollbar, autoHideScrollbarDelay);\n\n const onUp = (e: MouseEvent) => {\n e.preventDefault();\n\n if (autoHideScrollbar) {\n onTrackerDragStop();\n }\n\n unsubscribe();\n };\n\n const scroll = () => {\n if (ratio.current >= 1 || !boxRef.current) {\n return;\n }\n\n if (autoHideScrollbar) {\n onTargetScroll();\n }\n\n setTrackerPositionFromScroll(boxRef.current.scrollTop);\n };\n\n const listeners = [\n useEventListener(\"mousemove\", onMove),\n useEventListener(\"mouseup\", onUp),\n ];\n\n function subscribe(el: Document | undefined) {\n if (el) {\n listeners.forEach((l) => l.add(el));\n }\n }\n\n function unsubscribe() {\n listeners.forEach((l) => l.remove());\n }\n\n const onDragStart = (e: React.MouseEvent) => {\n e.preventDefault();\n startY.current = e.clientY;\n trackerTop.current = lastTrackerTop.current;\n\n if (autoHideScrollbar) {\n onTrackerDragStart();\n }\n\n subscribe(document);\n };\n\n return (\n <div vkuiClass=\"CustomScrollView\" className={className}>\n <div vkuiClass=\"CustomScrollView__barY\" ref={barY}>\n <div\n vkuiClass={classNames(\n \"CustomScrollView__trackerY\",\n !trackerVisible && `CustomScrollView__trackerY--hidden`\n )}\n onMouseEnter={autoHideScrollbar ? onTrackerMouseEnter : undefined}\n onMouseLeave={autoHideScrollbar ? onTrackerMouseLeave : undefined}\n ref={trackerY}\n onMouseDown={onDragStart}\n />\n </div>\n\n <div\n vkuiClass=\"CustomScrollView__box\"\n tabIndex={-1}\n ref={boxRef}\n onScroll={scroll}\n >\n {children}\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CustomScrollView/useTrackerVisibility.ts"],"names":["useTrackerVisibility","autoHideScrollbar","autoHideScrollbarDelay","React","useState","trackerVisible","setTrackerVisible","isMouseOver","useRef","isTrackerDragging","setVisibilityTimeout","set","clearVisibilityTimeout","clear","onTrackerDragStart","useCallback","current","onTrackerDragStop","queueTrackerVisibility","onTrackerMouseEnter","onTrackerMouseLeave","onTargetScroll"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,GAGP;AAAA,MAF3BC,iBAE2B,uEAFP,KAEO;AAAA,MAD3BC,sBAC2B,uEADF,GACE;;AAC3B,wBAA4CC,KAAK,CAACC,QAAN,CAC1C,CAACH,iBADyC,CAA5C;AAAA;AAAA,MAAOI,cAAP;AAAA,MAAuBC,iBAAvB;;AAGA,MAAMC,WAAW,GAAGJ,KAAK,CAACK,MAAN,CAAa,KAAb,CAApB;AACA,MAAMC,iBAAiB,GAAGN,KAAK,CAACK,MAAN,CAAa,KAAb,CAA1B;;AAEA,oBACE,6BAAW;AAAA,WAAMF,iBAAiB,CAAC,KAAD,CAAvB;AAAA,GAAX,EAA2CJ,sBAA3C,CADF;AAAA,MAAaQ,oBAAb,eAAQC,GAAR;AAAA,MAA0CC,sBAA1C,eAAmCC,KAAnC;;AAGA,MAAMC,kBAAkB,GAAGX,KAAK,CAACY,WAAN,CAAkB,YAAM;AACjDH,IAAAA,sBAAsB;AACtBN,IAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACAG,IAAAA,iBAAiB,CAACO,OAAlB,GAA4B,IAA5B;AACD,GAJ0B,EAIxB,CAACJ,sBAAD,CAJwB,CAA3B;AAMA,MAAMK,iBAAiB,GAAGd,KAAK,CAACY,WAAN,CAAkB,YAAM;AAChDN,IAAAA,iBAAiB,CAACO,OAAlB,GAA4B,KAA5B;;AACA,QAAI,CAACT,WAAW,CAACS,OAAjB,EAA0B;AACxBN,MAAAA,oBAAoB;AACrB;AACF,GALyB,EAKvB,CAACA,oBAAD,EAAuBH,WAAvB,CALuB,CAA1B;AAOA;AACF;AACA;AACA;;AACE,MAAMW,sBAAsB,GAAGf,KAAK,CAACY,WAAN,CAAkB,YAAM;AACrD,QAAIN,iBAAiB,CAACO,OAAtB,EAA+B;AAC7B;AACD;;AACDV,IAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACAI,IAAAA,oBAAoB;AACrB,GAN8B,EAM5B,CAACA,oBAAD,CAN4B,CAA/B;AAQA,MAAMS,mBAAmB,GAAGhB,KAAK,CAACY,WAAN,CAAkB,YAAM;AAClDH,IAAAA,sBAAsB;AACtBL,IAAAA,WAAW,CAACS,OAAZ,GAAsB,IAAtB;AACAV,IAAAA,iBAAiB,CAAC,IAAD,CAAjB;AACD,GAJ2B,EAIzB,CAACM,sBAAD,CAJyB,CAA5B;AAMA,MAAMQ,mBAAmB,GAAGjB,KAAK,CAACY,WAAN,CAAkB,YAAM;AAClDG,IAAAA,sBAAsB;AACtBX,IAAAA,WAAW,CAACS,OAAZ,GAAsB,KAAtB;AACD,GAH2B,EAGzB,CAACE,sBAAD,CAHyB,CAA5B;AAKA,MAAMG,cAAc,GAAGlB,KAAK,CAACY,WAAN,CAAkB,YAAM;AAC7CG,IAAAA,sBAAsB;AACvB,GAFsB,EAEpB,CAACA,sBAAD,CAFoB,CAAvB;AAIA,SAAO;AACLb,IAAAA,cAAc,EAAdA,cADK;AAELS,IAAAA,kBAAkB,EAAlBA,kBAFK;AAGLG,IAAAA,iBAAiB,EAAjBA,iBAHK;AAILE,IAAAA,mBAAmB,EAAnBA,mBAJK;AAKLC,IAAAA,mBAAmB,EAAnBA,mBALK;AAMLC,IAAAA,cAAc,EAAdA;AANK,GAAP;AAQD,CA7DM","sourcesContent":["import * as React from \"react\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\n\n/**\n * Хук, который позволяет управлять видимостью ползунка скроллбара.\n * @param autoHideScrollbar - скрывать ли ползунок скроллбара\n * @param autoHideScrollbarDelay - через какое кол-во миллисекунд ползунок скроллбара скрывается\n * @returns Объект, содержащий параметры, которые позволяют управлять видимостью ползунка\n */\nexport const useTrackerVisibility = (\n autoHideScrollbar = false,\n autoHideScrollbarDelay = 500\n): TrackerVisibilityProps => {\n const [trackerVisible, setTrackerVisible] = React.useState(\n !autoHideScrollbar\n );\n const isMouseOver = React.useRef(false);\n const isTrackerDragging = React.useRef(false);\n\n const { set: setVisibilityTimeout, clear: clearVisibilityTimeout } =\n useTimeout(() => setTrackerVisible(false), autoHideScrollbarDelay);\n\n const onTrackerDragStart = React.useCallback(() => {\n clearVisibilityTimeout();\n setTrackerVisible(true);\n isTrackerDragging.current = true;\n }, [clearVisibilityTimeout]);\n\n const onTrackerDragStop = React.useCallback(() => {\n isTrackerDragging.current = false;\n if (!isMouseOver.current) {\n setVisibilityTimeout();\n }\n }, [setVisibilityTimeout, isMouseOver]);\n\n /**\n * Позволяет \"запланировать\" скрытие ползунка через delay миллисекунд. Если тайм-аут не успевает сработать, то каждый\n * последующий вызов функции откладывает скрытие ползунка на delay миллисекунд\n */\n const queueTrackerVisibility = React.useCallback(() => {\n if (isTrackerDragging.current) {\n return;\n }\n setTrackerVisible(true);\n setVisibilityTimeout();\n }, [setVisibilityTimeout]);\n\n const onTrackerMouseEnter = React.useCallback(() => {\n clearVisibilityTimeout();\n isMouseOver.current = true;\n setTrackerVisible(true);\n }, [clearVisibilityTimeout]);\n\n const onTrackerMouseLeave = React.useCallback(() => {\n queueTrackerVisibility();\n isMouseOver.current = false;\n }, [queueTrackerVisibility]);\n\n const onTargetScroll = React.useCallback(() => {\n queueTrackerVisibility();\n }, [queueTrackerVisibility]);\n\n return {\n trackerVisible,\n onTrackerDragStart,\n onTrackerDragStop,\n onTrackerMouseEnter,\n onTrackerMouseLeave,\n onTargetScroll,\n };\n};\n\nexport interface TrackerOptionsProps {\n /**\n * Скрывать ли ползунок скроллбара\n */\n autoHideScrollbar?: boolean;\n /**\n * Через какое кол-во миллисекунд ползунок скроллбара скрывается\n */\n autoHideScrollbarDelay?: number;\n}\n\nexport interface TrackerVisibilityProps {\n /**\n * Отвечает за видимость ползунка\n */\n trackerVisible: boolean;\n /**\n * Функция для обработки события у блока со скроллом\n */\n onTargetScroll(this: void): void;\n /**\n * Функция для обработки начала drag event ползунка\n */\n onTrackerDragStart(this: void): void;\n /**\n * Функция для обработки окончания drag event ползунка\n */\n onTrackerDragStop(this: void): void;\n /**\n * Функция для обработки mouseLeave event ползунка\n */\n onTrackerMouseEnter(this: void): void;\n /**\n * Функция для обработки mouseEnter event ползунка\n */\n onTrackerMouseLeave(this: void): void;\n}\n"],"file":"useTrackerVisibility.js"}
1
+ {"version":3,"file":"useTrackerVisibility.js","names":["useTrackerVisibility","autoHideScrollbar","autoHideScrollbarDelay","React","useState","trackerVisible","setTrackerVisible","isMouseOver","useRef","isTrackerDragging","useTimeout","setVisibilityTimeout","set","clearVisibilityTimeout","clear","onTrackerDragStart","useCallback","current","onTrackerDragStop","queueTrackerVisibility","onTrackerMouseEnter","onTrackerMouseLeave","onTargetScroll"],"sources":["../../../../src/components/CustomScrollView/useTrackerVisibility.ts"],"sourcesContent":["import * as React from \"react\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\n\n/**\n * Хук, который позволяет управлять видимостью ползунка скроллбара.\n * @param autoHideScrollbar - скрывать ли ползунок скроллбара\n * @param autoHideScrollbarDelay - через какое кол-во миллисекунд ползунок скроллбара скрывается\n * @returns Объект, содержащий параметры, которые позволяют управлять видимостью ползунка\n */\nexport const useTrackerVisibility = (\n autoHideScrollbar = false,\n autoHideScrollbarDelay = 500\n): TrackerVisibilityProps => {\n const [trackerVisible, setTrackerVisible] = React.useState(\n !autoHideScrollbar\n );\n const isMouseOver = React.useRef(false);\n const isTrackerDragging = React.useRef(false);\n\n const { set: setVisibilityTimeout, clear: clearVisibilityTimeout } =\n useTimeout(() => setTrackerVisible(false), autoHideScrollbarDelay);\n\n const onTrackerDragStart = React.useCallback(() => {\n clearVisibilityTimeout();\n setTrackerVisible(true);\n isTrackerDragging.current = true;\n }, [clearVisibilityTimeout]);\n\n const onTrackerDragStop = React.useCallback(() => {\n isTrackerDragging.current = false;\n if (!isMouseOver.current) {\n setVisibilityTimeout();\n }\n }, [setVisibilityTimeout, isMouseOver]);\n\n /**\n * Позволяет \"запланировать\" скрытие ползунка через delay миллисекунд. Если тайм-аут не успевает сработать, то каждый\n * последующий вызов функции откладывает скрытие ползунка на delay миллисекунд\n */\n const queueTrackerVisibility = React.useCallback(() => {\n if (isTrackerDragging.current) {\n return;\n }\n setTrackerVisible(true);\n setVisibilityTimeout();\n }, [setVisibilityTimeout]);\n\n const onTrackerMouseEnter = React.useCallback(() => {\n clearVisibilityTimeout();\n isMouseOver.current = true;\n setTrackerVisible(true);\n }, [clearVisibilityTimeout]);\n\n const onTrackerMouseLeave = React.useCallback(() => {\n queueTrackerVisibility();\n isMouseOver.current = false;\n }, [queueTrackerVisibility]);\n\n const onTargetScroll = React.useCallback(() => {\n queueTrackerVisibility();\n }, [queueTrackerVisibility]);\n\n return {\n trackerVisible,\n onTrackerDragStart,\n onTrackerDragStop,\n onTrackerMouseEnter,\n onTrackerMouseLeave,\n onTargetScroll,\n };\n};\n\nexport interface TrackerOptionsProps {\n /**\n * Скрывать ли ползунок скроллбара\n */\n autoHideScrollbar?: boolean;\n /**\n * Через какое кол-во миллисекунд ползунок скроллбара скрывается\n */\n autoHideScrollbarDelay?: number;\n}\n\nexport interface TrackerVisibilityProps {\n /**\n * Отвечает за видимость ползунка\n */\n trackerVisible: boolean;\n /**\n * Функция для обработки события у блока со скроллом\n */\n onTargetScroll(this: void): void;\n /**\n * Функция для обработки начала drag event ползунка\n */\n onTrackerDragStart(this: void): void;\n /**\n * Функция для обработки окончания drag event ползунка\n */\n onTrackerDragStop(this: void): void;\n /**\n * Функция для обработки mouseLeave event ползунка\n */\n onTrackerMouseEnter(this: void): void;\n /**\n * Функция для обработки mouseEnter event ползунка\n */\n onTrackerMouseLeave(this: void): void;\n}\n"],"mappings":";;;;;;;;;;;;;AAAA;;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACO,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAuB,GAGP;EAAA,IAF3BC,iBAE2B,uEAFP,KAEO;EAAA,IAD3BC,sBAC2B,uEADF,GACE;;EAC3B,sBAA4CC,KAAK,CAACC,QAAN,CAC1C,CAACH,iBADyC,CAA5C;EAAA;EAAA,IAAOI,cAAP;EAAA,IAAuBC,iBAAvB;;EAGA,IAAMC,WAAW,GAAGJ,KAAK,CAACK,MAAN,CAAa,KAAb,CAApB;EACA,IAAMC,iBAAiB,GAAGN,KAAK,CAACK,MAAN,CAAa,KAAb,CAA1B;;EAEA,kBACE,IAAAE,uBAAA,EAAW;IAAA,OAAMJ,iBAAiB,CAAC,KAAD,CAAvB;EAAA,CAAX,EAA2CJ,sBAA3C,CADF;EAAA,IAAaS,oBAAb,eAAQC,GAAR;EAAA,IAA0CC,sBAA1C,eAAmCC,KAAnC;;EAGA,IAAMC,kBAAkB,GAAGZ,KAAK,CAACa,WAAN,CAAkB,YAAM;IACjDH,sBAAsB;IACtBP,iBAAiB,CAAC,IAAD,CAAjB;IACAG,iBAAiB,CAACQ,OAAlB,GAA4B,IAA5B;EACD,CAJ0B,EAIxB,CAACJ,sBAAD,CAJwB,CAA3B;EAMA,IAAMK,iBAAiB,GAAGf,KAAK,CAACa,WAAN,CAAkB,YAAM;IAChDP,iBAAiB,CAACQ,OAAlB,GAA4B,KAA5B;;IACA,IAAI,CAACV,WAAW,CAACU,OAAjB,EAA0B;MACxBN,oBAAoB;IACrB;EACF,CALyB,EAKvB,CAACA,oBAAD,EAAuBJ,WAAvB,CALuB,CAA1B;EAOA;AACF;AACA;AACA;;EACE,IAAMY,sBAAsB,GAAGhB,KAAK,CAACa,WAAN,CAAkB,YAAM;IACrD,IAAIP,iBAAiB,CAACQ,OAAtB,EAA+B;MAC7B;IACD;;IACDX,iBAAiB,CAAC,IAAD,CAAjB;IACAK,oBAAoB;EACrB,CAN8B,EAM5B,CAACA,oBAAD,CAN4B,CAA/B;EAQA,IAAMS,mBAAmB,GAAGjB,KAAK,CAACa,WAAN,CAAkB,YAAM;IAClDH,sBAAsB;IACtBN,WAAW,CAACU,OAAZ,GAAsB,IAAtB;IACAX,iBAAiB,CAAC,IAAD,CAAjB;EACD,CAJ2B,EAIzB,CAACO,sBAAD,CAJyB,CAA5B;EAMA,IAAMQ,mBAAmB,GAAGlB,KAAK,CAACa,WAAN,CAAkB,YAAM;IAClDG,sBAAsB;IACtBZ,WAAW,CAACU,OAAZ,GAAsB,KAAtB;EACD,CAH2B,EAGzB,CAACE,sBAAD,CAHyB,CAA5B;EAKA,IAAMG,cAAc,GAAGnB,KAAK,CAACa,WAAN,CAAkB,YAAM;IAC7CG,sBAAsB;EACvB,CAFsB,EAEpB,CAACA,sBAAD,CAFoB,CAAvB;EAIA,OAAO;IACLd,cAAc,EAAdA,cADK;IAELU,kBAAkB,EAAlBA,kBAFK;IAGLG,iBAAiB,EAAjBA,iBAHK;IAILE,mBAAmB,EAAnBA,mBAJK;IAKLC,mBAAmB,EAAnBA,mBALK;IAMLC,cAAc,EAAdA;EANK,CAAP;AAQD,CA7DM"}