@vkontakte/vkui 4.24.0 → 4.25.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 (1469) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +1185 -653
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  6. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
  7. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
  8. package/.cache/ts/src/components/Alert/Alert.d.ts +4 -21
  9. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -1
  10. package/.cache/ts/src/components/AppRoot/AppRootContext.d.ts +1 -1
  11. package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +1 -1
  12. package/.cache/ts/src/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
  13. package/.cache/ts/src/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
  14. package/.cache/ts/src/components/Avatar/Avatar.d.ts +1 -1
  15. package/.cache/ts/src/components/Button/Button.d.ts +1 -1
  16. package/.cache/ts/src/components/CardGrid/CardGrid.d.ts +1 -1
  17. package/.cache/ts/src/components/CardScroll/CardScroll.d.ts +1 -1
  18. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +1 -1
  19. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +1 -4
  20. package/.cache/ts/src/components/ChipsInput/useChipsInput.d.ts +3 -3
  21. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +2 -5
  22. package/.cache/ts/src/components/ChipsSelect/useChipsSelect.d.ts +8 -8
  23. package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +1 -1
  24. package/.cache/ts/src/components/ConfigProvider/ConfigProvider.d.ts +3 -1
  25. package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
  26. package/.cache/ts/src/components/CustomScrollView/CustomScrollView.d.ts +1 -1
  27. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -65
  28. package/.cache/ts/src/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  29. package/.cache/ts/src/components/DatePicker/DatePicker.d.ts +1 -1
  30. package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +2 -43
  31. package/.cache/ts/src/components/Epic/Epic.d.ts +3 -3
  32. package/.cache/ts/src/components/Epic/ScrollSaver.d.ts +0 -1
  33. package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +1 -1
  34. package/.cache/ts/src/components/Gallery/Gallery.d.ts +1 -1
  35. package/.cache/ts/src/components/Group/Group.d.ts +1 -1
  36. package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  37. package/.cache/ts/src/components/HoverPopper/HoverPopper.d.ts +1 -1
  38. package/.cache/ts/src/components/IconButton/IconButton.d.ts +1 -1
  39. package/.cache/ts/src/components/Input/Input.d.ts +1 -1
  40. package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +3 -3
  41. package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  42. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +3 -3
  43. package/.cache/ts/src/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
  44. package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +1 -1
  45. package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
  46. package/.cache/ts/src/components/ModalRoot/ModalRootContext.d.ts +1 -1
  47. package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  48. package/.cache/ts/src/components/ModalRoot/types.d.ts +1 -1
  49. package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +9 -9
  50. package/.cache/ts/src/components/ModalRoot/withModalRootContext.d.ts +1 -1
  51. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -3
  52. package/.cache/ts/src/components/Panel/Panel.d.ts +3 -3
  53. package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +1 -1
  54. package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  55. package/.cache/ts/src/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  56. package/.cache/ts/src/components/Popper/Popper.d.ts +2 -2
  57. package/.cache/ts/src/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  58. package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
  59. package/.cache/ts/src/components/RangeSlider/UniversalSlider.d.ts +1 -1
  60. package/.cache/ts/src/components/RichCell/RichCell.d.ts +1 -1
  61. package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +2 -43
  62. package/.cache/ts/src/components/Search/Search.d.ts +1 -1
  63. package/.cache/ts/src/components/Select/Select.d.ts +3 -3
  64. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  65. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +1 -1
  66. package/.cache/ts/src/components/Slider/Slider.d.ts +1 -8
  67. package/.cache/ts/src/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  68. package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +3 -3
  69. package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -1
  70. package/.cache/ts/src/components/Tabs/Tabs.d.ts +2 -2
  71. package/.cache/ts/src/components/Tappable/Tappable.d.ts +1 -1
  72. package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +2 -37
  73. package/.cache/ts/src/components/Textarea/Textarea.d.ts +1 -1
  74. package/.cache/ts/src/components/Tooltip/TooltipContainer.d.ts +1 -1
  75. package/.cache/ts/src/components/UsersStack/masks.d.ts +1 -1
  76. package/.cache/ts/src/components/View/View.d.ts +9 -9
  77. package/.cache/ts/src/components/View/ViewInfinite.d.ts +11 -11
  78. package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +1 -1
  79. package/.cache/ts/src/helpers/getScheme.d.ts +8 -0
  80. package/.cache/ts/src/helpers/scheme.d.ts +34 -0
  81. package/.cache/ts/src/hoc/withAdaptivity.d.ts +3 -2
  82. package/.cache/ts/src/hoc/withContext.d.ts +1 -1
  83. package/.cache/ts/src/hoc/withInsets.d.ts +3 -1
  84. package/.cache/ts/src/hoc/withPlatform.d.ts +3 -1
  85. package/.cache/ts/src/hooks/useAdaptivity.d.ts +2 -2
  86. package/.cache/ts/src/hooks/useAppearance.d.ts +1 -1
  87. package/.cache/ts/src/hooks/useEnsuredControl.d.ts +1 -1
  88. package/.cache/ts/src/hooks/useEventListener.d.ts +3 -3
  89. package/.cache/ts/src/hooks/useExternRef.d.ts +1 -1
  90. package/.cache/ts/src/hooks/useFocusVisible.d.ts +1 -1
  91. package/.cache/ts/src/hooks/useGlobalEventListener.d.ts +2 -2
  92. package/.cache/ts/src/hooks/useInsets.d.ts +7 -1
  93. package/.cache/ts/src/hooks/usePatchChildrenRef.d.ts +1 -1
  94. package/.cache/ts/src/hooks/usePlatform.d.ts +1 -1
  95. package/.cache/ts/src/hooks/useWaitTransitionFinish.d.ts +1 -1
  96. package/.cache/ts/src/index.d.ts +3 -1
  97. package/.cache/ts/src/lib/SSR.d.ts +1 -1
  98. package/.cache/ts/src/lib/accessibility.d.ts +1 -1
  99. package/.cache/ts/src/lib/dom.d.ts +3 -3
  100. package/.cache/ts/src/lib/getNavId.d.ts +1 -1
  101. package/.cache/ts/src/lib/jsxRuntime.d.ts +7 -3
  102. package/.cache/ts/src/lib/offset.d.ts +5 -5
  103. package/.cache/ts/src/lib/prefixClass.d.ts +1 -1
  104. package/.cache/ts/src/lib/select.d.ts +2 -2
  105. package/.cache/ts/src/lib/styles.d.ts +1 -1
  106. package/.cache/ts/src/lib/supportEvents.d.ts +1 -1
  107. package/.cache/ts/src/lib/utils.d.ts +1 -1
  108. package/.cache/ts/src/testing/utils.d.ts +2 -2
  109. package/.cache/ts/src/tokenized/tokenized.d.ts +2 -0
  110. package/.eslintrc.json +11 -5
  111. package/dist/{5c1a8c271e68390145da2b270f47c843.woff → 5c1a8c271e68390145da.woff} +0 -0
  112. package/dist/{7082adfe0b49e2f8da5bf38d29e318ac.woff2 → 7082adfe0b49e2f8da5b.woff2} +0 -0
  113. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -2
  114. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  115. package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  116. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  117. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  118. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  119. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  120. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +3 -3
  121. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  122. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
  123. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js +4 -2
  124. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  125. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
  126. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +13 -6
  127. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  128. package/dist/cjs/components/Alert/Alert.d.ts +4 -21
  129. package/dist/cjs/components/Alert/Alert.js +32 -18
  130. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  131. package/dist/cjs/components/AppRoot/AppRoot.d.ts +1 -1
  132. package/dist/cjs/components/AppRoot/AppRoot.js +29 -16
  133. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  134. package/dist/cjs/components/AppRoot/AppRootContext.d.ts +1 -1
  135. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  136. package/dist/cjs/components/AppRoot/ScrollContext.d.ts +1 -1
  137. package/dist/cjs/components/AppRoot/ScrollContext.js +6 -4
  138. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  139. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
  140. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js +50 -0
  141. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  142. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
  143. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js +14 -0
  144. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  145. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
  146. package/dist/cjs/components/Avatar/Avatar.js +15 -16
  147. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  148. package/dist/cjs/components/Banner/Banner.js +3 -2
  149. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  150. package/dist/cjs/components/Button/Button.d.ts +1 -1
  151. package/dist/cjs/components/Button/Button.js +2 -2
  152. package/dist/cjs/components/Button/Button.js.map +1 -1
  153. package/dist/cjs/components/Card/Card.js +2 -1
  154. package/dist/cjs/components/Card/Card.js.map +1 -1
  155. package/dist/cjs/components/CardGrid/CardGrid.d.ts +1 -1
  156. package/dist/cjs/components/CardGrid/CardGrid.js +1 -1
  157. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  158. package/dist/cjs/components/CardScroll/CardScroll.d.ts +1 -1
  159. package/dist/cjs/components/CardScroll/CardScroll.js +9 -1
  160. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  161. package/dist/cjs/components/Cell/Cell.js +1 -1
  162. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  163. package/dist/cjs/components/Cell/useDraggable.js +58 -47
  164. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  165. package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
  166. package/dist/cjs/components/Checkbox/Checkbox.js +2 -1
  167. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  168. package/dist/cjs/components/Chip/Chip.js +2 -1
  169. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  170. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -4
  171. package/dist/cjs/components/ChipsInput/ChipsInput.js +73 -64
  172. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  173. package/dist/cjs/components/ChipsInput/useChipsInput.d.ts +3 -3
  174. package/dist/cjs/components/ChipsInput/useChipsInput.js +2 -2
  175. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +1 -1
  176. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +2 -5
  177. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +78 -67
  178. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  179. package/dist/cjs/components/ChipsSelect/useChipsSelect.d.ts +8 -8
  180. package/dist/cjs/components/ChipsSelect/useChipsSelect.js +6 -3
  181. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +1 -1
  182. package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
  183. package/dist/cjs/components/ClickPopper/ClickPopper.js +7 -3
  184. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
  185. package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +3 -1
  186. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +24 -45
  187. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  188. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
  189. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +1 -23
  190. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  191. package/dist/cjs/components/ContentCard/ContentCard.js +2 -1
  192. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  193. package/dist/cjs/components/Counter/Counter.js +1 -1
  194. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  195. package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts +1 -1
  196. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +24 -9
  197. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  198. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +1 -65
  199. package/dist/cjs/components/CustomSelect/CustomSelect.js +98 -72
  200. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  201. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  202. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  203. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +3 -2
  204. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  205. package/dist/cjs/components/DatePicker/DatePicker.d.ts +1 -1
  206. package/dist/cjs/components/DatePicker/DatePicker.js +40 -26
  207. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  208. package/dist/cjs/components/Div/Div.js +2 -1
  209. package/dist/cjs/components/Div/Div.js.map +1 -1
  210. package/dist/cjs/components/Dropdown/Dropdown.d.ts +2 -43
  211. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  212. package/dist/cjs/components/Epic/Epic.d.ts +3 -3
  213. package/dist/cjs/components/Epic/Epic.js +7 -4
  214. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  215. package/dist/cjs/components/Epic/ScrollSaver.d.ts +0 -1
  216. package/dist/cjs/components/Epic/ScrollSaver.js +3 -1
  217. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  218. package/dist/cjs/components/File/File.js +5 -2
  219. package/dist/cjs/components/File/File.js.map +1 -1
  220. package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -4
  221. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  222. package/dist/cjs/components/FocusTrap/FocusTrap.js +3 -3
  223. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  224. package/dist/cjs/components/FormItem/FormItem.js +3 -1
  225. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  226. package/dist/cjs/components/FormLayout/FormLayout.d.ts +1 -1
  227. package/dist/cjs/components/FormLayout/FormLayout.js +6 -7
  228. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  229. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  230. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  231. package/dist/cjs/components/Gallery/Gallery.d.ts +1 -1
  232. package/dist/cjs/components/Gallery/Gallery.js +129 -80
  233. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  234. package/dist/cjs/components/Gradient/Gradient.js +2 -1
  235. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  236. package/dist/cjs/components/Group/Group.d.ts +1 -1
  237. package/dist/cjs/components/Group/Group.js +1 -1
  238. package/dist/cjs/components/Group/Group.js.map +1 -1
  239. package/dist/cjs/components/Header/Header.js +4 -1
  240. package/dist/cjs/components/Header/Header.js.map +1 -1
  241. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  242. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +16 -8
  243. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  244. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  245. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  246. package/dist/cjs/components/HoverPopper/HoverPopper.d.ts +1 -1
  247. package/dist/cjs/components/HoverPopper/HoverPopper.js +6 -3
  248. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  249. package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
  250. package/dist/cjs/components/IconButton/IconButton.js +1 -1
  251. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  252. package/dist/cjs/components/InfoRow/InfoRow.js +2 -1
  253. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  254. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +1 -1
  255. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  256. package/dist/cjs/components/Input/Input.d.ts +1 -1
  257. package/dist/cjs/components/Input/Input.js +1 -1
  258. package/dist/cjs/components/Input/Input.js.map +1 -1
  259. package/dist/cjs/components/Link/Link.js +2 -1
  260. package/dist/cjs/components/Link/Link.js.map +1 -1
  261. package/dist/cjs/components/List/List.js +2 -1
  262. package/dist/cjs/components/List/List.js.map +1 -1
  263. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -1
  264. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  265. package/dist/cjs/components/ModalCard/ModalCard.d.ts +3 -3
  266. package/dist/cjs/components/ModalCard/ModalCard.js +1 -1
  267. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  268. package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  269. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  270. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +2 -1
  271. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  272. package/dist/cjs/components/ModalPage/ModalPage.d.ts +3 -3
  273. package/dist/cjs/components/ModalPage/ModalPage.js +2 -2
  274. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  275. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
  276. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +32 -32
  277. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  278. package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +1 -1
  279. package/dist/cjs/components/ModalRoot/ModalRoot.js +116 -47
  280. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  281. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
  282. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  283. package/dist/cjs/components/ModalRoot/ModalRootContext.d.ts +1 -1
  284. package/dist/cjs/components/ModalRoot/ModalRootContext.js +20 -15
  285. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  286. package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  287. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +35 -16
  288. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  289. package/dist/cjs/components/ModalRoot/constants.js +1 -1
  290. package/dist/cjs/components/ModalRoot/types.d.ts +1 -1
  291. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  292. package/dist/cjs/components/ModalRoot/useModalManager.d.ts +9 -9
  293. package/dist/cjs/components/ModalRoot/useModalManager.js +11 -9
  294. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  295. package/dist/cjs/components/ModalRoot/withModalRootContext.d.ts +1 -1
  296. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  297. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +3 -3
  298. package/dist/cjs/components/NativeSelect/NativeSelect.js +5 -2
  299. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  300. package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js +1 -1
  301. package/dist/cjs/components/Panel/Panel.d.ts +3 -3
  302. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  303. package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +1 -1
  304. package/dist/cjs/components/PanelHeader/PanelHeader.js +23 -23
  305. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  306. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  307. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
  308. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  309. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  310. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  311. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  312. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  313. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  314. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  315. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  316. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  317. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  318. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  319. package/dist/cjs/components/PanelSpinner/PanelSpinner.js +1 -1
  320. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  321. package/dist/cjs/components/Placeholder/Placeholder.js +2 -1
  322. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  323. package/dist/cjs/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  324. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
  325. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  326. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
  327. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  328. package/dist/cjs/components/Popper/Popper.d.ts +2 -2
  329. package/dist/cjs/components/Popper/Popper.js +11 -5
  330. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  331. package/dist/cjs/components/Progress/Progress.js +4 -5
  332. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  333. package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -1
  334. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  335. package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  336. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +11 -8
  337. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  338. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +12 -20
  339. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  340. package/dist/cjs/components/Radio/Radio.d.ts +1 -1
  341. package/dist/cjs/components/Radio/Radio.js +2 -1
  342. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  343. package/dist/cjs/components/RangeSlider/RangeSlider.js +18 -11
  344. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  345. package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
  346. package/dist/cjs/components/RangeSlider/UniversalSlider.js +18 -13
  347. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  348. package/dist/cjs/components/Removable/Removable.js +6 -3
  349. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  350. package/dist/cjs/components/RichCell/RichCell.d.ts +1 -1
  351. package/dist/cjs/components/RichCell/RichCell.js +2 -1
  352. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  353. package/dist/cjs/components/RichTooltip/RichTooltip.d.ts +2 -43
  354. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  355. package/dist/cjs/components/Root/Root.js +12 -12
  356. package/dist/cjs/components/Root/Root.js.map +1 -1
  357. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +2 -1
  358. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  359. package/dist/cjs/components/Search/Search.d.ts +1 -1
  360. package/dist/cjs/components/Search/Search.js +12 -9
  361. package/dist/cjs/components/Search/Search.js.map +1 -1
  362. package/dist/cjs/components/Select/Select.d.ts +3 -3
  363. package/dist/cjs/components/Select/Select.js +2 -1
  364. package/dist/cjs/components/Select/Select.js.map +1 -1
  365. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  366. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +3 -3
  367. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  368. package/dist/cjs/components/Separator/Separator.js +2 -1
  369. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  370. package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +1 -1
  371. package/dist/cjs/components/SimpleCell/SimpleCell.js +2 -1
  372. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  373. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  374. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  375. package/dist/cjs/components/Slider/Slider.d.ts +1 -8
  376. package/dist/cjs/components/Slider/Slider.js +20 -15
  377. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  378. package/dist/cjs/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  379. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +14 -7
  380. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  381. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -1
  382. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  383. package/dist/cjs/components/Snackbar/Snackbar.d.ts +3 -3
  384. package/dist/cjs/components/Snackbar/Snackbar.js +12 -4
  385. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  386. package/dist/cjs/components/Spinner/Spinner.js +1 -1
  387. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  388. package/dist/cjs/components/SplitCol/SplitCol.d.ts +1 -1
  389. package/dist/cjs/components/SplitCol/SplitCol.js +2 -2
  390. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  391. package/dist/cjs/components/Tabbar/Tabbar.js +2 -1
  392. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  393. package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -1
  394. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  395. package/dist/cjs/components/Tabs/Tabs.d.ts +2 -2
  396. package/dist/cjs/components/Tabs/Tabs.js +1 -1
  397. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  398. package/dist/cjs/components/TabsItem/TabsItem.js +2 -1
  399. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  400. package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
  401. package/dist/cjs/components/Tappable/Tappable.js +9 -6
  402. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  403. package/dist/cjs/components/TextTooltip/TextTooltip.d.ts +2 -37
  404. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  405. package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
  406. package/dist/cjs/components/Textarea/Textarea.js +4 -4
  407. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  408. package/dist/cjs/components/Tooltip/Tooltip.js +26 -10
  409. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  410. package/dist/cjs/components/Tooltip/TooltipContainer.d.ts +1 -1
  411. package/dist/cjs/components/Tooltip/TooltipContainer.js +1 -1
  412. package/dist/cjs/components/Touch/Touch.js +38 -21
  413. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  414. package/dist/cjs/components/Touch/TouchContext.js +2 -1
  415. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  416. package/dist/cjs/components/Typography/Caption/Caption.js +2 -1
  417. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  418. package/dist/cjs/components/Typography/Headline/Headline.js +2 -1
  419. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  420. package/dist/cjs/components/Typography/Subhead/Subhead.js +2 -1
  421. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  422. package/dist/cjs/components/Typography/Text/Text.js +2 -1
  423. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  424. package/dist/cjs/components/Typography/Title/Title.js +2 -1
  425. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  426. package/dist/cjs/components/UsersStack/UsersStack.js +5 -3
  427. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  428. package/dist/cjs/components/UsersStack/masks.d.ts +1 -1
  429. package/dist/cjs/components/UsersStack/masks.js +1 -1
  430. package/dist/cjs/components/UsersStack/masks.js.map +1 -1
  431. package/dist/cjs/components/View/View.d.ts +9 -9
  432. package/dist/cjs/components/View/View.js +71 -31
  433. package/dist/cjs/components/View/View.js.map +1 -1
  434. package/dist/cjs/components/View/ViewInfinite.d.ts +11 -11
  435. package/dist/cjs/components/View/ViewInfinite.js +73 -38
  436. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  437. package/dist/cjs/components/WriteBar/WriteBar.d.ts +1 -1
  438. package/dist/cjs/components/WriteBar/WriteBar.js +3 -4
  439. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  440. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +1 -1
  441. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  442. package/dist/cjs/helpers/getScheme.d.ts +8 -0
  443. package/dist/cjs/helpers/getScheme.js +37 -0
  444. package/dist/cjs/helpers/getScheme.js.map +1 -0
  445. package/dist/cjs/helpers/math.js +1 -1
  446. package/dist/cjs/helpers/scheme.d.ts +34 -0
  447. package/dist/cjs/helpers/scheme.js +75 -0
  448. package/dist/cjs/helpers/scheme.js.map +1 -0
  449. package/dist/cjs/hoc/withAdaptivity.d.ts +3 -2
  450. package/dist/cjs/hoc/withAdaptivity.js +4 -5
  451. package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
  452. package/dist/cjs/hoc/withContext.d.ts +1 -1
  453. package/dist/cjs/hoc/withContext.js +1 -2
  454. package/dist/cjs/hoc/withContext.js.map +1 -1
  455. package/dist/cjs/hoc/withInsets.d.ts +3 -1
  456. package/dist/cjs/hoc/withInsets.js +1 -2
  457. package/dist/cjs/hoc/withInsets.js.map +1 -1
  458. package/dist/cjs/hoc/withPlatform.d.ts +3 -1
  459. package/dist/cjs/hoc/withPlatform.js +1 -2
  460. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  461. package/dist/cjs/hooks/useAdaptivity.d.ts +2 -2
  462. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  463. package/dist/cjs/hooks/useAppearance.d.ts +1 -1
  464. package/dist/cjs/hooks/useEnsuredControl.d.ts +1 -1
  465. package/dist/cjs/hooks/useEnsuredControl.js +1 -1
  466. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  467. package/dist/cjs/hooks/useEventListener.d.ts +3 -3
  468. package/dist/cjs/hooks/useEventListener.js +2 -2
  469. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  470. package/dist/cjs/hooks/useExternRef.d.ts +1 -1
  471. package/dist/cjs/hooks/useExternRef.js +6 -3
  472. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  473. package/dist/cjs/hooks/useFocusVisible.d.ts +1 -1
  474. package/dist/cjs/hooks/useGlobalEventListener.d.ts +2 -2
  475. package/dist/cjs/hooks/useGlobalEventListener.js +6 -2
  476. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  477. package/dist/cjs/hooks/useInsets.d.ts +7 -1
  478. package/dist/cjs/hooks/useInsets.js.map +1 -1
  479. package/dist/cjs/hooks/useKeyboard.js +37 -29
  480. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  481. package/dist/cjs/hooks/usePatchChildrenRef.d.ts +1 -1
  482. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  483. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  484. package/dist/cjs/hooks/usePlatform.d.ts +1 -1
  485. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  486. package/dist/cjs/hooks/useTimeout.js +4 -2
  487. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  488. package/dist/cjs/hooks/useWaitTransitionFinish.d.ts +1 -1
  489. package/dist/cjs/hooks/useWaitTransitionFinish.js +5 -2
  490. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  491. package/dist/cjs/index.d.ts +3 -1
  492. package/dist/cjs/index.js +284 -274
  493. package/dist/cjs/index.js.map +1 -1
  494. package/dist/cjs/lib/SSR.d.ts +1 -1
  495. package/dist/cjs/lib/SSR.js +1 -1
  496. package/dist/cjs/lib/SSR.js.map +1 -1
  497. package/dist/cjs/lib/accessibility.d.ts +1 -1
  498. package/dist/cjs/lib/accessibility.js +4 -2
  499. package/dist/cjs/lib/accessibility.js.map +1 -1
  500. package/dist/cjs/lib/animate.js +1 -0
  501. package/dist/cjs/lib/animate.js.map +1 -1
  502. package/dist/cjs/lib/browser.js +1 -1
  503. package/dist/cjs/lib/dom.d.ts +3 -3
  504. package/dist/cjs/lib/dom.js +6 -4
  505. package/dist/cjs/lib/dom.js.map +1 -1
  506. package/dist/cjs/lib/getNavId.d.ts +1 -1
  507. package/dist/cjs/lib/is.js +3 -1
  508. package/dist/cjs/lib/is.js.map +1 -1
  509. package/dist/cjs/lib/isRefObject.js.map +1 -1
  510. package/dist/cjs/lib/jsxRuntime.d.ts +7 -3
  511. package/dist/cjs/lib/jsxRuntime.js +3 -5
  512. package/dist/cjs/lib/jsxRuntime.js.map +1 -1
  513. package/dist/cjs/lib/offset.d.ts +5 -5
  514. package/dist/cjs/lib/offset.js +5 -5
  515. package/dist/cjs/lib/offset.js.map +1 -1
  516. package/dist/cjs/lib/platform.js +1 -1
  517. package/dist/cjs/lib/polyfills.js.map +1 -1
  518. package/dist/cjs/lib/prefixClass.d.ts +1 -1
  519. package/dist/cjs/lib/prefixClass.js.map +1 -1
  520. package/dist/cjs/lib/select.d.ts +2 -2
  521. package/dist/cjs/lib/select.js +5 -3
  522. package/dist/cjs/lib/select.js.map +1 -1
  523. package/dist/cjs/lib/styles.d.ts +1 -1
  524. package/dist/cjs/lib/styles.js.map +1 -1
  525. package/dist/cjs/lib/supportEvents.d.ts +1 -1
  526. package/dist/cjs/lib/supportEvents.js.map +1 -1
  527. package/dist/cjs/lib/touch.js +2 -1
  528. package/dist/cjs/lib/touch.js.map +1 -1
  529. package/dist/cjs/lib/utils.d.ts +1 -1
  530. package/dist/cjs/lib/utils.js +6 -6
  531. package/dist/cjs/lib/utils.js.map +1 -1
  532. package/dist/cjs/tokenized/tokenized.d.ts +2 -0
  533. package/dist/cjs/tokenized/tokenized.js +16 -0
  534. package/dist/cjs/tokenized/tokenized.js.map +1 -0
  535. package/dist/cjs/unstable/index.js +8 -8
  536. package/dist/components/ActionSheet/ActionSheet.js +4 -2
  537. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  538. package/dist/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  539. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  540. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  541. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  542. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
  543. package/dist/components/ActionSheetItem/ActionSheetItem.js +4 -3
  544. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  545. package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
  546. package/dist/components/AdaptivityProvider/AdaptivityContext.js +3 -1
  547. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  548. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
  549. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +12 -4
  550. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  551. package/dist/components/Alert/Alert.d.ts +4 -21
  552. package/dist/components/Alert/Alert.js +32 -18
  553. package/dist/components/Alert/Alert.js.map +1 -1
  554. package/dist/components/AppRoot/AppRoot.d.ts +1 -1
  555. package/dist/components/AppRoot/AppRoot.js +28 -16
  556. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  557. package/dist/components/AppRoot/AppRootContext.d.ts +1 -1
  558. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  559. package/dist/components/AppRoot/ScrollContext.d.ts +1 -1
  560. package/dist/components/AppRoot/ScrollContext.js +5 -3
  561. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  562. package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
  563. package/dist/components/AppearanceProvider/AppearanceProvider.js +33 -0
  564. package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  565. package/dist/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
  566. package/dist/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
  567. package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  568. package/dist/components/Avatar/Avatar.d.ts +1 -1
  569. package/dist/components/Avatar/Avatar.js +12 -13
  570. package/dist/components/Avatar/Avatar.js.map +1 -1
  571. package/dist/components/Banner/Banner.js +3 -2
  572. package/dist/components/Banner/Banner.js.map +1 -1
  573. package/dist/components/Button/Button.d.ts +1 -1
  574. package/dist/components/Button/Button.js +3 -2
  575. package/dist/components/Button/Button.js.map +1 -1
  576. package/dist/components/Card/Card.js +2 -1
  577. package/dist/components/Card/Card.js.map +1 -1
  578. package/dist/components/CardGrid/CardGrid.d.ts +1 -1
  579. package/dist/components/CardGrid/CardGrid.js +2 -1
  580. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  581. package/dist/components/CardScroll/CardScroll.d.ts +1 -1
  582. package/dist/components/CardScroll/CardScroll.js +10 -1
  583. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  584. package/dist/components/Cell/Cell.js +1 -1
  585. package/dist/components/Cell/Cell.js.map +1 -1
  586. package/dist/components/Cell/useDraggable.js +58 -46
  587. package/dist/components/Cell/useDraggable.js.map +1 -1
  588. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  589. package/dist/components/Checkbox/Checkbox.js +2 -1
  590. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  591. package/dist/components/Chip/Chip.js +2 -1
  592. package/dist/components/Chip/Chip.js.map +1 -1
  593. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -4
  594. package/dist/components/ChipsInput/ChipsInput.js +71 -62
  595. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  596. package/dist/components/ChipsInput/useChipsInput.d.ts +3 -3
  597. package/dist/components/ChipsInput/useChipsInput.js +2 -2
  598. package/dist/components/ChipsInput/useChipsInput.js.map +1 -1
  599. package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -5
  600. package/dist/components/ChipsSelect/ChipsSelect.js +80 -67
  601. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  602. package/dist/components/ChipsSelect/useChipsSelect.d.ts +8 -8
  603. package/dist/components/ChipsSelect/useChipsSelect.js +6 -3
  604. package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
  605. package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
  606. package/dist/components/ClickPopper/ClickPopper.js +7 -3
  607. package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
  608. package/dist/components/ConfigProvider/ConfigProvider.d.ts +3 -1
  609. package/dist/components/ConfigProvider/ConfigProvider.js +23 -44
  610. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  611. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
  612. package/dist/components/ConfigProvider/ConfigProviderContext.js +0 -20
  613. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  614. package/dist/components/ContentCard/ContentCard.js +2 -1
  615. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  616. package/dist/components/Counter/Counter.js +2 -1
  617. package/dist/components/Counter/Counter.js.map +1 -1
  618. package/dist/components/CustomScrollView/CustomScrollView.d.ts +1 -1
  619. package/dist/components/CustomScrollView/CustomScrollView.js +24 -9
  620. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  621. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -65
  622. package/dist/components/CustomSelect/CustomSelect.js +98 -72
  623. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  624. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  625. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  626. package/dist/components/CustomSelectOption/CustomSelectOption.js +3 -2
  627. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  628. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  629. package/dist/components/DatePicker/DatePicker.js +41 -26
  630. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  631. package/dist/components/Div/Div.js +2 -1
  632. package/dist/components/Div/Div.js.map +1 -1
  633. package/dist/components/Dropdown/Dropdown.d.ts +2 -43
  634. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  635. package/dist/components/Epic/Epic.d.ts +3 -3
  636. package/dist/components/Epic/Epic.js +7 -4
  637. package/dist/components/Epic/Epic.js.map +1 -1
  638. package/dist/components/Epic/ScrollSaver.d.ts +0 -1
  639. package/dist/components/Epic/ScrollSaver.js +2 -1
  640. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  641. package/dist/components/File/File.js +5 -2
  642. package/dist/components/File/File.js.map +1 -1
  643. package/dist/components/FixedLayout/FixedLayout.js +5 -4
  644. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  645. package/dist/components/FocusTrap/FocusTrap.js +3 -3
  646. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  647. package/dist/components/FormItem/FormItem.js +3 -1
  648. package/dist/components/FormItem/FormItem.js.map +1 -1
  649. package/dist/components/FormLayout/FormLayout.d.ts +1 -1
  650. package/dist/components/FormLayout/FormLayout.js +6 -7
  651. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  652. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  653. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  654. package/dist/components/Gallery/Gallery.d.ts +1 -1
  655. package/dist/components/Gallery/Gallery.js +129 -80
  656. package/dist/components/Gallery/Gallery.js.map +1 -1
  657. package/dist/components/Gradient/Gradient.js +2 -1
  658. package/dist/components/Gradient/Gradient.js.map +1 -1
  659. package/dist/components/Group/Group.d.ts +1 -1
  660. package/dist/components/Group/Group.js +2 -1
  661. package/dist/components/Group/Group.js.map +1 -1
  662. package/dist/components/Header/Header.js +4 -1
  663. package/dist/components/Header/Header.js.map +1 -1
  664. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
  665. package/dist/components/HorizontalScroll/HorizontalScroll.js +16 -8
  666. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  667. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  668. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  669. package/dist/components/HoverPopper/HoverPopper.d.ts +1 -1
  670. package/dist/components/HoverPopper/HoverPopper.js +6 -3
  671. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  672. package/dist/components/IconButton/IconButton.d.ts +1 -1
  673. package/dist/components/IconButton/IconButton.js +2 -1
  674. package/dist/components/IconButton/IconButton.js.map +1 -1
  675. package/dist/components/InfoRow/InfoRow.js +2 -1
  676. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  677. package/dist/components/InitialsAvatar/InitialsAvatar.js +1 -1
  678. package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  679. package/dist/components/Input/Input.d.ts +1 -1
  680. package/dist/components/Input/Input.js +2 -1
  681. package/dist/components/Input/Input.js.map +1 -1
  682. package/dist/components/Link/Link.js +2 -1
  683. package/dist/components/Link/Link.js.map +1 -1
  684. package/dist/components/List/List.js +2 -1
  685. package/dist/components/List/List.js.map +1 -1
  686. package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -1
  687. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  688. package/dist/components/ModalCard/ModalCard.d.ts +3 -3
  689. package/dist/components/ModalCard/ModalCard.js +2 -1
  690. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  691. package/dist/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  692. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  693. package/dist/components/ModalDismissButton/ModalDismissButton.js +2 -1
  694. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  695. package/dist/components/ModalPage/ModalPage.d.ts +3 -3
  696. package/dist/components/ModalPage/ModalPage.js +3 -2
  697. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  698. package/dist/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
  699. package/dist/components/ModalPageHeader/ModalPageHeader.js +28 -29
  700. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  701. package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
  702. package/dist/components/ModalRoot/ModalRoot.js +116 -47
  703. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  704. package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
  705. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  706. package/dist/components/ModalRoot/ModalRootContext.d.ts +1 -1
  707. package/dist/components/ModalRoot/ModalRootContext.js +19 -14
  708. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  709. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  710. package/dist/components/ModalRoot/ModalRootDesktop.js +35 -16
  711. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  712. package/dist/components/ModalRoot/types.d.ts +1 -1
  713. package/dist/components/ModalRoot/types.js.map +1 -1
  714. package/dist/components/ModalRoot/useModalManager.d.ts +9 -9
  715. package/dist/components/ModalRoot/useModalManager.js +11 -11
  716. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  717. package/dist/components/ModalRoot/withModalRootContext.d.ts +1 -1
  718. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  719. package/dist/components/NativeSelect/NativeSelect.d.ts +3 -3
  720. package/dist/components/NativeSelect/NativeSelect.js +5 -2
  721. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  722. package/dist/components/Panel/Panel.d.ts +3 -3
  723. package/dist/components/Panel/Panel.js.map +1 -1
  724. package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
  725. package/dist/components/PanelHeader/PanelHeader.js +23 -22
  726. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  727. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  728. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
  729. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  730. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  731. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  732. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  733. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  734. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  735. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  736. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  737. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  738. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  739. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  740. package/dist/components/PanelSpinner/PanelSpinner.js +2 -1
  741. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  742. package/dist/components/Placeholder/Placeholder.js +2 -1
  743. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  744. package/dist/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  745. package/dist/components/PopoutRoot/PopoutRoot.js +1 -1
  746. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  747. package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
  748. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  749. package/dist/components/Popper/Popper.d.ts +2 -2
  750. package/dist/components/Popper/Popper.js +11 -5
  751. package/dist/components/Popper/Popper.js.map +1 -1
  752. package/dist/components/Progress/Progress.js +4 -5
  753. package/dist/components/Progress/Progress.js.map +1 -1
  754. package/dist/components/PromoBanner/PromoBanner.js +2 -1
  755. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  756. package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  757. package/dist/components/PullToRefresh/PullToRefresh.js +11 -8
  758. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  759. package/dist/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
  760. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  761. package/dist/components/Radio/Radio.d.ts +1 -1
  762. package/dist/components/Radio/Radio.js +2 -1
  763. package/dist/components/Radio/Radio.js.map +1 -1
  764. package/dist/components/RangeSlider/RangeSlider.js +18 -11
  765. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  766. package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
  767. package/dist/components/RangeSlider/UniversalSlider.js +18 -13
  768. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  769. package/dist/components/Removable/Removable.js +6 -3
  770. package/dist/components/Removable/Removable.js.map +1 -1
  771. package/dist/components/RichCell/RichCell.d.ts +1 -1
  772. package/dist/components/RichCell/RichCell.js +2 -1
  773. package/dist/components/RichCell/RichCell.js.map +1 -1
  774. package/dist/components/RichTooltip/RichTooltip.d.ts +2 -43
  775. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  776. package/dist/components/Root/Root.js +12 -12
  777. package/dist/components/Root/Root.js.map +1 -1
  778. package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -1
  779. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  780. package/dist/components/Search/Search.d.ts +1 -1
  781. package/dist/components/Search/Search.js +13 -9
  782. package/dist/components/Search/Search.js.map +1 -1
  783. package/dist/components/Select/Select.d.ts +3 -3
  784. package/dist/components/Select/Select.js +2 -1
  785. package/dist/components/Select/Select.js.map +1 -1
  786. package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  787. package/dist/components/SelectMimicry/SelectMimicry.js +4 -3
  788. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  789. package/dist/components/Separator/Separator.js +2 -1
  790. package/dist/components/Separator/Separator.js.map +1 -1
  791. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  792. package/dist/components/SimpleCell/SimpleCell.js +2 -1
  793. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  794. package/dist/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  795. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  796. package/dist/components/Slider/Slider.d.ts +1 -8
  797. package/dist/components/Slider/Slider.js +20 -15
  798. package/dist/components/Slider/Slider.js.map +1 -1
  799. package/dist/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  800. package/dist/components/SliderSwitch/SliderSwitch.js +14 -7
  801. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  802. package/dist/components/SliderSwitch/SliderSwitchButton.js +2 -1
  803. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  804. package/dist/components/Snackbar/Snackbar.d.ts +3 -3
  805. package/dist/components/Snackbar/Snackbar.js +12 -4
  806. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  807. package/dist/components/Spinner/Spinner.js +2 -1
  808. package/dist/components/Spinner/Spinner.js.map +1 -1
  809. package/dist/components/SplitCol/SplitCol.d.ts +1 -1
  810. package/dist/components/SplitCol/SplitCol.js +1 -1
  811. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  812. package/dist/components/Tabbar/Tabbar.js +2 -1
  813. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  814. package/dist/components/TabbarItem/TabbarItem.js +2 -1
  815. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  816. package/dist/components/Tabs/Tabs.d.ts +2 -2
  817. package/dist/components/Tabs/Tabs.js +2 -1
  818. package/dist/components/Tabs/Tabs.js.map +1 -1
  819. package/dist/components/TabsItem/TabsItem.js +2 -1
  820. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  821. package/dist/components/Tappable/Tappable.d.ts +1 -1
  822. package/dist/components/Tappable/Tappable.js +9 -6
  823. package/dist/components/Tappable/Tappable.js.map +1 -1
  824. package/dist/components/TextTooltip/TextTooltip.d.ts +2 -37
  825. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  826. package/dist/components/Textarea/Textarea.d.ts +1 -1
  827. package/dist/components/Textarea/Textarea.js +5 -4
  828. package/dist/components/Textarea/Textarea.js.map +1 -1
  829. package/dist/components/Tooltip/Tooltip.js +26 -10
  830. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  831. package/dist/components/Tooltip/TooltipContainer.d.ts +1 -1
  832. package/dist/components/Touch/Touch.js +38 -21
  833. package/dist/components/Touch/Touch.js.map +1 -1
  834. package/dist/components/Touch/TouchContext.js +2 -1
  835. package/dist/components/Touch/TouchContext.js.map +1 -1
  836. package/dist/components/Typography/Caption/Caption.js +2 -1
  837. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  838. package/dist/components/Typography/Headline/Headline.js +2 -1
  839. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  840. package/dist/components/Typography/Subhead/Subhead.js +2 -1
  841. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  842. package/dist/components/Typography/Text/Text.js +2 -1
  843. package/dist/components/Typography/Text/Text.js.map +1 -1
  844. package/dist/components/Typography/Title/Title.js +2 -1
  845. package/dist/components/Typography/Title/Title.js.map +1 -1
  846. package/dist/components/UsersStack/UsersStack.js +6 -3
  847. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  848. package/dist/components/UsersStack/masks.d.ts +1 -1
  849. package/dist/components/UsersStack/masks.js +1 -1
  850. package/dist/components/UsersStack/masks.js.map +1 -1
  851. package/dist/components/View/View.d.ts +9 -9
  852. package/dist/components/View/View.js +70 -30
  853. package/dist/components/View/View.js.map +1 -1
  854. package/dist/components/View/ViewInfinite.d.ts +11 -11
  855. package/dist/components/View/ViewInfinite.js +70 -36
  856. package/dist/components/View/ViewInfinite.js.map +1 -1
  857. package/dist/components/WriteBar/WriteBar.d.ts +1 -1
  858. package/dist/components/WriteBar/WriteBar.js +3 -4
  859. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  860. package/dist/components/WriteBarIcon/WriteBarIcon.js +1 -1
  861. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  862. package/dist/components.css +5 -5
  863. package/dist/components.css.map +1 -1
  864. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -2
  865. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  866. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  867. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  868. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  869. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +4 -3
  870. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  871. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js +3 -1
  872. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  873. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +12 -4
  874. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  875. package/dist/cssm/components/Alert/Alert.js +32 -18
  876. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  877. package/dist/cssm/components/AppRoot/AppRoot.js +28 -16
  878. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  879. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  880. package/dist/cssm/components/AppRoot/ScrollContext.js +5 -3
  881. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  882. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +33 -0
  883. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  884. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
  885. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  886. package/dist/cssm/components/Avatar/Avatar.js +12 -13
  887. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  888. package/dist/cssm/components/Banner/Banner.js +3 -2
  889. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  890. package/dist/cssm/components/Button/Button.js +3 -2
  891. package/dist/cssm/components/Button/Button.js.map +1 -1
  892. package/dist/cssm/components/Card/Card.js +2 -1
  893. package/dist/cssm/components/Card/Card.js.map +1 -1
  894. package/dist/cssm/components/CardGrid/CardGrid.js +2 -1
  895. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  896. package/dist/cssm/components/CardScroll/CardScroll.js +10 -1
  897. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  898. package/dist/cssm/components/Cell/Cell.js +1 -1
  899. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  900. package/dist/cssm/components/Cell/useDraggable.js +58 -46
  901. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  902. package/dist/cssm/components/Checkbox/Checkbox.js +2 -1
  903. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  904. package/dist/cssm/components/Chip/Chip.js +2 -1
  905. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  906. package/dist/cssm/components/ChipsInput/ChipsInput.js +71 -62
  907. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  908. package/dist/cssm/components/ChipsInput/useChipsInput.js +2 -2
  909. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +1 -1
  910. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +80 -67
  911. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  912. package/dist/cssm/components/ChipsSelect/useChipsSelect.js +6 -3
  913. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
  914. package/dist/cssm/components/ClickPopper/ClickPopper.js +7 -3
  915. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
  916. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +23 -44
  917. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  918. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +0 -20
  919. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  920. package/dist/cssm/components/ContentCard/ContentCard.js +2 -1
  921. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  922. package/dist/cssm/components/Counter/Counter.js +2 -1
  923. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  924. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +24 -9
  925. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  926. package/dist/cssm/components/CustomSelect/CustomSelect.js +98 -72
  927. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  928. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +1 -1
  929. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  930. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +3 -2
  931. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  932. package/dist/cssm/components/DatePicker/DatePicker.js +41 -26
  933. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  934. package/dist/cssm/components/Div/Div.js +2 -1
  935. package/dist/cssm/components/Div/Div.js.map +1 -1
  936. package/dist/cssm/components/Dropdown/Dropdown.js +1 -3
  937. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  938. package/dist/cssm/components/Epic/Epic.js +7 -4
  939. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  940. package/dist/cssm/components/Epic/ScrollSaver.js +2 -1
  941. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  942. package/dist/cssm/components/File/File.js +5 -2
  943. package/dist/cssm/components/File/File.js.map +1 -1
  944. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -4
  945. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  946. package/dist/cssm/components/FocusTrap/FocusTrap.js +3 -3
  947. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  948. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  949. package/dist/cssm/components/FormItem/FormItem.js +3 -1
  950. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  951. package/dist/cssm/components/FormLayout/FormLayout.js +6 -7
  952. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  953. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  954. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  955. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  956. package/dist/cssm/components/Gallery/Gallery.js +129 -80
  957. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  958. package/dist/cssm/components/Gradient/Gradient.js +2 -1
  959. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  960. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  961. package/dist/cssm/components/Group/Group.js +2 -1
  962. package/dist/cssm/components/Group/Group.js.map +1 -1
  963. package/dist/cssm/components/Header/Header.js +4 -1
  964. package/dist/cssm/components/Header/Header.js.map +1 -1
  965. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +16 -8
  966. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  967. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  968. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  969. package/dist/cssm/components/HoverPopper/HoverPopper.js +6 -3
  970. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  971. package/dist/cssm/components/IconButton/IconButton.js +2 -1
  972. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  973. package/dist/cssm/components/InfoRow/InfoRow.js +2 -1
  974. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  975. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +1 -1
  976. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  977. package/dist/cssm/components/Input/Input.js +2 -1
  978. package/dist/cssm/components/Input/Input.js.map +1 -1
  979. package/dist/cssm/components/Link/Link.js +2 -1
  980. package/dist/cssm/components/Link/Link.js.map +1 -1
  981. package/dist/cssm/components/List/List.js +2 -1
  982. package/dist/cssm/components/List/List.js.map +1 -1
  983. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
  984. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  985. package/dist/cssm/components/ModalCard/ModalCard.js +2 -1
  986. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  987. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  988. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +2 -1
  989. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  990. package/dist/cssm/components/ModalPage/ModalPage.js +3 -2
  991. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  992. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  993. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +28 -29
  994. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  995. package/dist/cssm/components/ModalRoot/ModalRoot.js +116 -47
  996. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  997. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  998. package/dist/cssm/components/ModalRoot/ModalRootContext.js +19 -14
  999. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  1000. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +35 -16
  1001. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  1002. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  1003. package/dist/cssm/components/ModalRoot/useModalManager.js +11 -11
  1004. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  1005. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  1006. package/dist/cssm/components/NativeSelect/NativeSelect.js +5 -2
  1007. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  1008. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  1009. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  1010. package/dist/cssm/components/PanelHeader/PanelHeader.js +23 -22
  1011. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  1012. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
  1013. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  1014. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  1015. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  1016. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  1017. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  1018. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  1019. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  1020. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  1021. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  1022. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  1023. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  1024. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  1025. package/dist/cssm/components/PanelSpinner/PanelSpinner.js +2 -1
  1026. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  1027. package/dist/cssm/components/Placeholder/Placeholder.js +2 -1
  1028. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  1029. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +1 -1
  1030. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  1031. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
  1032. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  1033. package/dist/cssm/components/Popper/Popper.js +11 -5
  1034. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  1035. package/dist/cssm/components/Progress/Progress.js +4 -5
  1036. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  1037. package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -1
  1038. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  1039. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +11 -8
  1040. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  1041. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
  1042. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  1043. package/dist/cssm/components/Radio/Radio.js +2 -1
  1044. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  1045. package/dist/cssm/components/RangeSlider/RangeSlider.js +18 -11
  1046. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  1047. package/dist/cssm/components/RangeSlider/UniversalSlider.js +18 -13
  1048. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  1049. package/dist/cssm/components/Removable/Removable.js +6 -3
  1050. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  1051. package/dist/cssm/components/RichCell/RichCell.js +2 -1
  1052. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  1053. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -3
  1054. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  1055. package/dist/cssm/components/Root/Root.js +12 -12
  1056. package/dist/cssm/components/Root/Root.js.map +1 -1
  1057. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -1
  1058. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  1059. package/dist/cssm/components/Search/Search.css +1 -1
  1060. package/dist/cssm/components/Search/Search.js +13 -9
  1061. package/dist/cssm/components/Search/Search.js.map +1 -1
  1062. package/dist/cssm/components/Select/Select.js +2 -1
  1063. package/dist/cssm/components/Select/Select.js.map +1 -1
  1064. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -3
  1065. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  1066. package/dist/cssm/components/Separator/Separator.js +2 -1
  1067. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  1068. package/dist/cssm/components/SimpleCell/SimpleCell.js +2 -1
  1069. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  1070. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  1071. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  1072. package/dist/cssm/components/Slider/Slider.js +20 -15
  1073. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  1074. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +14 -7
  1075. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  1076. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +2 -1
  1077. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  1078. package/dist/cssm/components/Snackbar/Snackbar.js +12 -4
  1079. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  1080. package/dist/cssm/components/Spinner/Spinner.js +2 -1
  1081. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  1082. package/dist/cssm/components/SplitCol/SplitCol.js +1 -1
  1083. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  1084. package/dist/cssm/components/Tabbar/Tabbar.css +1 -1
  1085. package/dist/cssm/components/Tabbar/Tabbar.js +2 -1
  1086. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  1087. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -1
  1088. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  1089. package/dist/cssm/components/Tabs/Tabs.js +2 -1
  1090. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  1091. package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
  1092. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  1093. package/dist/cssm/components/Tappable/Tappable.css +1 -1
  1094. package/dist/cssm/components/Tappable/Tappable.js +9 -6
  1095. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  1096. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -3
  1097. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  1098. package/dist/cssm/components/Textarea/Textarea.js +5 -4
  1099. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  1100. package/dist/cssm/components/Tooltip/Tooltip.js +26 -10
  1101. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  1102. package/dist/cssm/components/Touch/Touch.js +38 -21
  1103. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  1104. package/dist/cssm/components/Touch/TouchContext.js +2 -1
  1105. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  1106. package/dist/cssm/components/Typography/Caption/Caption.js +2 -1
  1107. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  1108. package/dist/cssm/components/Typography/Headline/Headline.js +2 -1
  1109. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  1110. package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -1
  1111. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  1112. package/dist/cssm/components/Typography/Text/Text.js +2 -1
  1113. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  1114. package/dist/cssm/components/Typography/Title/Title.js +2 -1
  1115. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1116. package/dist/cssm/components/UsersStack/UsersStack.js +6 -3
  1117. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1118. package/dist/cssm/components/UsersStack/masks.js +1 -1
  1119. package/dist/cssm/components/UsersStack/masks.js.map +1 -1
  1120. package/dist/cssm/components/View/View.js +70 -30
  1121. package/dist/cssm/components/View/View.js.map +1 -1
  1122. package/dist/cssm/components/View/ViewInfinite.js +70 -36
  1123. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1124. package/dist/cssm/components/WriteBar/WriteBar.js +3 -4
  1125. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  1126. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
  1127. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  1128. package/dist/cssm/fonts/fonts.css +1 -1
  1129. package/dist/cssm/helpers/getScheme.js +28 -0
  1130. package/dist/cssm/helpers/getScheme.js.map +1 -0
  1131. package/dist/cssm/helpers/scheme.js +61 -0
  1132. package/dist/cssm/helpers/scheme.js.map +1 -0
  1133. package/dist/cssm/hoc/withAdaptivity.js +3 -4
  1134. package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
  1135. package/dist/cssm/hoc/withContext.js +1 -2
  1136. package/dist/cssm/hoc/withContext.js.map +1 -1
  1137. package/dist/cssm/hoc/withInsets.js +1 -2
  1138. package/dist/cssm/hoc/withInsets.js.map +1 -1
  1139. package/dist/cssm/hoc/withPlatform.js +1 -2
  1140. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  1141. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  1142. package/dist/cssm/hooks/useEnsuredControl.js +1 -1
  1143. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  1144. package/dist/cssm/hooks/useEventListener.js +2 -2
  1145. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  1146. package/dist/cssm/hooks/useExternRef.js +6 -3
  1147. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  1148. package/dist/cssm/hooks/useGlobalEventListener.js +6 -2
  1149. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  1150. package/dist/cssm/hooks/useInsets.js.map +1 -1
  1151. package/dist/cssm/hooks/useKeyboard.js +36 -29
  1152. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  1153. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  1154. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1155. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  1156. package/dist/cssm/hooks/useTimeout.js +4 -2
  1157. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1158. package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -2
  1159. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1160. package/dist/cssm/index.js +3 -1
  1161. package/dist/cssm/index.js.map +1 -1
  1162. package/dist/cssm/lib/SSR.js +1 -1
  1163. package/dist/cssm/lib/SSR.js.map +1 -1
  1164. package/dist/cssm/lib/accessibility.js +3 -1
  1165. package/dist/cssm/lib/accessibility.js.map +1 -1
  1166. package/dist/cssm/lib/animate.js +1 -0
  1167. package/dist/cssm/lib/animate.js.map +1 -1
  1168. package/dist/cssm/lib/dom.js +2 -2
  1169. package/dist/cssm/lib/dom.js.map +1 -1
  1170. package/dist/cssm/lib/is.js +3 -1
  1171. package/dist/cssm/lib/is.js.map +1 -1
  1172. package/dist/cssm/lib/isRefObject.js.map +1 -1
  1173. package/dist/cssm/lib/jsxRuntime.js +3 -3
  1174. package/dist/cssm/lib/jsxRuntime.js.map +1 -1
  1175. package/dist/cssm/lib/offset.js +5 -5
  1176. package/dist/cssm/lib/offset.js.map +1 -1
  1177. package/dist/cssm/lib/polyfills.js.map +1 -1
  1178. package/dist/cssm/lib/prefixClass.js.map +1 -1
  1179. package/dist/cssm/lib/select.js +5 -3
  1180. package/dist/cssm/lib/select.js.map +1 -1
  1181. package/dist/cssm/lib/styles.js.map +1 -1
  1182. package/dist/cssm/lib/supportEvents.js.map +1 -1
  1183. package/dist/cssm/lib/utils.js +1 -1
  1184. package/dist/cssm/lib/utils.js.map +1 -1
  1185. package/dist/cssm/styles/bright_light.css +1 -1
  1186. package/dist/cssm/styles/components.css +5 -5
  1187. package/dist/cssm/styles/constants.css +3 -3
  1188. package/dist/cssm/styles/space_gray.css +1 -1
  1189. package/dist/cssm/styles/themes.css +4 -4
  1190. package/dist/cssm/styles/vkcom_dark.css +2 -2
  1191. package/dist/cssm/styles/vkcom_light.css +3 -3
  1192. package/dist/cssm/tokenized/tokenized.js +2 -0
  1193. package/dist/cssm/tokenized/tokenized.js.map +1 -0
  1194. package/dist/default_scheme.css +1 -1
  1195. package/dist/default_scheme.css.map +1 -1
  1196. package/dist/fonts.css +1 -1
  1197. package/dist/fonts.css.map +1 -1
  1198. package/dist/helpers/getScheme.d.ts +8 -0
  1199. package/dist/helpers/getScheme.js +28 -0
  1200. package/dist/helpers/getScheme.js.map +1 -0
  1201. package/dist/helpers/scheme.d.ts +34 -0
  1202. package/dist/helpers/scheme.js +61 -0
  1203. package/dist/helpers/scheme.js.map +1 -0
  1204. package/dist/hoc/withAdaptivity.d.ts +3 -2
  1205. package/dist/hoc/withAdaptivity.js +3 -4
  1206. package/dist/hoc/withAdaptivity.js.map +1 -1
  1207. package/dist/hoc/withContext.d.ts +1 -1
  1208. package/dist/hoc/withContext.js +1 -2
  1209. package/dist/hoc/withContext.js.map +1 -1
  1210. package/dist/hoc/withInsets.d.ts +3 -1
  1211. package/dist/hoc/withInsets.js +1 -2
  1212. package/dist/hoc/withInsets.js.map +1 -1
  1213. package/dist/hoc/withPlatform.d.ts +3 -1
  1214. package/dist/hoc/withPlatform.js +1 -2
  1215. package/dist/hoc/withPlatform.js.map +1 -1
  1216. package/dist/hooks/useAdaptivity.d.ts +2 -2
  1217. package/dist/hooks/useAdaptivity.js.map +1 -1
  1218. package/dist/hooks/useAppearance.d.ts +1 -1
  1219. package/dist/hooks/useEnsuredControl.d.ts +1 -1
  1220. package/dist/hooks/useEnsuredControl.js +1 -1
  1221. package/dist/hooks/useEnsuredControl.js.map +1 -1
  1222. package/dist/hooks/useEventListener.d.ts +3 -3
  1223. package/dist/hooks/useEventListener.js +2 -2
  1224. package/dist/hooks/useEventListener.js.map +1 -1
  1225. package/dist/hooks/useExternRef.d.ts +1 -1
  1226. package/dist/hooks/useExternRef.js +6 -3
  1227. package/dist/hooks/useExternRef.js.map +1 -1
  1228. package/dist/hooks/useFocusVisible.d.ts +1 -1
  1229. package/dist/hooks/useGlobalEventListener.d.ts +2 -2
  1230. package/dist/hooks/useGlobalEventListener.js +6 -2
  1231. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  1232. package/dist/hooks/useInsets.d.ts +7 -1
  1233. package/dist/hooks/useInsets.js.map +1 -1
  1234. package/dist/hooks/useKeyboard.js +36 -29
  1235. package/dist/hooks/useKeyboard.js.map +1 -1
  1236. package/dist/hooks/usePatchChildrenRef.d.ts +1 -1
  1237. package/dist/hooks/usePatchChildrenRef.js +1 -1
  1238. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1239. package/dist/hooks/usePlatform.d.ts +1 -1
  1240. package/dist/hooks/usePlatform.js.map +1 -1
  1241. package/dist/hooks/useTimeout.js +4 -2
  1242. package/dist/hooks/useTimeout.js.map +1 -1
  1243. package/dist/hooks/useWaitTransitionFinish.d.ts +1 -1
  1244. package/dist/hooks/useWaitTransitionFinish.js +5 -2
  1245. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1246. package/dist/index.d.ts +3 -1
  1247. package/dist/index.js +3 -1
  1248. package/dist/index.js.map +1 -1
  1249. package/dist/lib/SSR.d.ts +1 -1
  1250. package/dist/lib/SSR.js +1 -1
  1251. package/dist/lib/SSR.js.map +1 -1
  1252. package/dist/lib/accessibility.d.ts +1 -1
  1253. package/dist/lib/accessibility.js +3 -1
  1254. package/dist/lib/accessibility.js.map +1 -1
  1255. package/dist/lib/animate.js +1 -0
  1256. package/dist/lib/animate.js.map +1 -1
  1257. package/dist/lib/dom.d.ts +3 -3
  1258. package/dist/lib/dom.js +2 -2
  1259. package/dist/lib/dom.js.map +1 -1
  1260. package/dist/lib/getNavId.d.ts +1 -1
  1261. package/dist/lib/is.js +3 -1
  1262. package/dist/lib/is.js.map +1 -1
  1263. package/dist/lib/isRefObject.js.map +1 -1
  1264. package/dist/lib/jsxRuntime.d.ts +7 -3
  1265. package/dist/lib/jsxRuntime.js +3 -3
  1266. package/dist/lib/jsxRuntime.js.map +1 -1
  1267. package/dist/lib/offset.d.ts +5 -5
  1268. package/dist/lib/offset.js +5 -5
  1269. package/dist/lib/offset.js.map +1 -1
  1270. package/dist/lib/polyfills.js.map +1 -1
  1271. package/dist/lib/prefixClass.d.ts +1 -1
  1272. package/dist/lib/prefixClass.js.map +1 -1
  1273. package/dist/lib/select.d.ts +2 -2
  1274. package/dist/lib/select.js +5 -3
  1275. package/dist/lib/select.js.map +1 -1
  1276. package/dist/lib/styles.d.ts +1 -1
  1277. package/dist/lib/styles.js.map +1 -1
  1278. package/dist/lib/supportEvents.d.ts +1 -1
  1279. package/dist/lib/supportEvents.js.map +1 -1
  1280. package/dist/lib/utils.d.ts +1 -1
  1281. package/dist/lib/utils.js +1 -1
  1282. package/dist/lib/utils.js.map +1 -1
  1283. package/dist/tokenized/tokenized.d.ts +2 -0
  1284. package/dist/tokenized/tokenized.js +2 -0
  1285. package/dist/tokenized/tokenized.js.map +1 -0
  1286. package/dist/unstable.css.map +1 -1
  1287. package/dist/vkui.css +9 -9
  1288. package/dist/vkui.css.map +1 -1
  1289. package/package.json +37 -35
  1290. package/src/components/ActionSheet/ActionSheet.tsx +3 -3
  1291. package/src/components/ActionSheet/ActionSheetContext.ts +11 -7
  1292. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +5 -7
  1293. package/src/components/ActionSheetItem/ActionSheetItem.tsx +10 -4
  1294. package/src/components/AdaptivityProvider/AdaptivityContext.tsx +6 -4
  1295. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +19 -13
  1296. package/src/components/Alert/Alert.tsx +24 -17
  1297. package/src/components/AppRoot/AppRoot.tsx +26 -17
  1298. package/src/components/AppRoot/AppRootContext.ts +1 -1
  1299. package/src/components/AppRoot/ScrollContext.ts +9 -9
  1300. package/src/components/AppearanceProvider/AppearanceProvider.tsx +44 -0
  1301. package/src/components/AppearanceProvider/AppearanceProviderContext.tsx +12 -0
  1302. package/src/components/Avatar/Avatar.tsx +8 -14
  1303. package/src/components/Banner/Banner.tsx +2 -1
  1304. package/src/components/Button/Button.tsx +3 -2
  1305. package/src/components/Card/Card.tsx +1 -0
  1306. package/src/components/CardGrid/CardGrid.tsx +1 -0
  1307. package/src/components/CardScroll/CardScroll.tsx +12 -2
  1308. package/src/components/Cell/Cell.tsx +1 -1
  1309. package/src/components/Cell/useDraggable.tsx +53 -45
  1310. package/src/components/Checkbox/Checkbox.tsx +1 -0
  1311. package/src/components/Chip/Chip.tsx +1 -0
  1312. package/src/components/ChipsInput/ChipsInput.tsx +50 -45
  1313. package/src/components/ChipsInput/useChipsInput.ts +10 -9
  1314. package/src/components/ChipsSelect/ChipsSelect.tsx +78 -53
  1315. package/src/components/ChipsSelect/Readme.md +44 -57
  1316. package/src/components/ChipsSelect/useChipsSelect.ts +16 -10
  1317. package/src/components/ClickPopper/ClickPopper.tsx +11 -7
  1318. package/src/components/ConfigProvider/ConfigProvider.tsx +32 -56
  1319. package/src/components/ConfigProvider/ConfigProviderContext.tsx +1 -40
  1320. package/src/components/ContentCard/ContentCard.tsx +1 -0
  1321. package/src/components/Counter/Counter.tsx +1 -0
  1322. package/src/components/CustomScrollView/CustomScrollView.tsx +27 -20
  1323. package/src/components/CustomSelect/CustomSelect.tsx +70 -49
  1324. package/src/components/CustomSelect/Readme.md +1 -1
  1325. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -2
  1326. package/src/components/CustomSelectOption/CustomSelectOption.tsx +2 -1
  1327. package/src/components/DatePicker/DatePicker.tsx +14 -18
  1328. package/src/components/Div/Div.tsx +1 -0
  1329. package/src/components/Dropdown/Dropdown.tsx +4 -45
  1330. package/src/components/Epic/Epic.tsx +9 -9
  1331. package/src/components/Epic/ScrollSaver.tsx +1 -2
  1332. package/src/components/File/File.tsx +2 -1
  1333. package/src/components/FixedLayout/FixedLayout.tsx +4 -3
  1334. package/src/components/FocusTrap/FocusTrap.tsx +10 -8
  1335. package/src/components/FormItem/FormItem.tsx +5 -1
  1336. package/src/components/FormLayout/FormLayout.tsx +9 -9
  1337. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +6 -1
  1338. package/src/components/Gallery/Gallery.tsx +71 -63
  1339. package/src/components/Gradient/Gradient.tsx +1 -0
  1340. package/src/components/Group/Group.tsx +1 -0
  1341. package/src/components/Header/Header.tsx +3 -0
  1342. package/src/components/HorizontalScroll/HorizontalScroll.tsx +19 -6
  1343. package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +1 -0
  1344. package/src/components/HoverPopper/HoverPopper.tsx +6 -4
  1345. package/src/components/IconButton/IconButton.tsx +1 -0
  1346. package/src/components/InfoRow/InfoRow.tsx +1 -0
  1347. package/src/components/InitialsAvatar/InitialsAvatar.tsx +1 -1
  1348. package/src/components/Input/Input.tsx +1 -0
  1349. package/src/components/Link/Link.tsx +1 -0
  1350. package/src/components/List/List.tsx +1 -0
  1351. package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -1
  1352. package/src/components/ModalCard/ModalCard.tsx +3 -2
  1353. package/src/components/ModalCardBase/ModalCardBase.tsx +5 -3
  1354. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -0
  1355. package/src/components/ModalPage/ModalPage.tsx +4 -3
  1356. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -228
  1357. package/src/components/ModalPageHeader/ModalPageHeader.tsx +31 -41
  1358. package/src/components/ModalRoot/ModalRoot.tsx +93 -62
  1359. package/src/components/ModalRoot/ModalRootAdaptive.tsx +3 -5
  1360. package/src/components/ModalRoot/ModalRootContext.tsx +12 -8
  1361. package/src/components/ModalRoot/ModalRootDesktop.tsx +33 -19
  1362. package/src/components/ModalRoot/types.ts +1 -1
  1363. package/src/components/ModalRoot/useModalManager.tsx +31 -19
  1364. package/src/components/ModalRoot/withModalRootContext.tsx +5 -3
  1365. package/src/components/NativeSelect/NativeSelect.tsx +5 -7
  1366. package/src/components/Panel/Panel.tsx +5 -11
  1367. package/src/components/PanelHeader/PanelHeader.css +7 -3
  1368. package/src/components/PanelHeader/PanelHeader.tsx +11 -19
  1369. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -0
  1370. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +1 -0
  1371. package/src/components/PanelHeaderContent/PanelHeaderContent.css +16 -5
  1372. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +4 -0
  1373. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +3 -3
  1374. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +1 -0
  1375. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +1 -0
  1376. package/src/components/PanelSpinner/PanelSpinner.tsx +1 -0
  1377. package/src/components/Placeholder/Placeholder.tsx +1 -0
  1378. package/src/components/PopoutRoot/PopoutRoot.tsx +3 -3
  1379. package/src/components/PopoutWrapper/PopoutWrapper.tsx +3 -3
  1380. package/src/components/Popper/Popper.tsx +18 -14
  1381. package/src/components/Progress/Progress.tsx +2 -5
  1382. package/src/components/PromoBanner/PromoBanner.tsx +1 -0
  1383. package/src/components/PullToRefresh/PullToRefresh.tsx +14 -7
  1384. package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +7 -14
  1385. package/src/components/Radio/Radio.tsx +1 -0
  1386. package/src/components/RangeSlider/RangeSlider.tsx +20 -13
  1387. package/src/components/RangeSlider/UniversalSlider.tsx +16 -14
  1388. package/src/components/Removable/Removable.tsx +15 -8
  1389. package/src/components/RichCell/RichCell.tsx +1 -0
  1390. package/src/components/RichTooltip/RichTooltip.tsx +2 -44
  1391. package/src/components/Root/Root.tsx +21 -9
  1392. package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -0
  1393. package/src/components/Search/Search.tsx +8 -7
  1394. package/src/components/Select/Select.tsx +6 -2
  1395. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -2
  1396. package/src/components/Separator/Separator.tsx +1 -0
  1397. package/src/components/SimpleCell/SimpleCell.tsx +1 -0
  1398. package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +7 -5
  1399. package/src/components/Slider/Slider.tsx +23 -19
  1400. package/src/components/SliderSwitch/SliderSwitch.tsx +7 -4
  1401. package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -0
  1402. package/src/components/Snackbar/Readme.md +26 -0
  1403. package/src/components/Snackbar/Snackbar.tsx +10 -10
  1404. package/src/components/Spinner/Spinner.tsx +1 -0
  1405. package/src/components/SplitCol/SplitCol.tsx +2 -2
  1406. package/src/components/Tabbar/Tabbar.tsx +1 -0
  1407. package/src/components/TabbarItem/TabbarItem.tsx +1 -0
  1408. package/src/components/Tabs/Tabs.tsx +1 -0
  1409. package/src/components/TabsItem/TabsItem.tsx +1 -0
  1410. package/src/components/Tappable/Tappable.tsx +6 -5
  1411. package/src/components/TextTooltip/TextTooltip.tsx +3 -38
  1412. package/src/components/Textarea/Textarea.tsx +4 -3
  1413. package/src/components/Tooltip/Tooltip.tsx +20 -11
  1414. package/src/components/Touch/Touch.tsx +25 -12
  1415. package/src/components/Touch/TouchContext.ts +1 -0
  1416. package/src/components/Typography/Caption/Caption.tsx +1 -0
  1417. package/src/components/Typography/Headline/Headline.tsx +1 -0
  1418. package/src/components/Typography/Subhead/Subhead.tsx +1 -0
  1419. package/src/components/Typography/Text/Text.tsx +1 -0
  1420. package/src/components/Typography/Title/Title.tsx +1 -0
  1421. package/src/components/UsersStack/UsersStack.tsx +9 -1
  1422. package/src/components/UsersStack/masks.tsx +2 -2
  1423. package/src/components/View/View.tsx +83 -53
  1424. package/src/components/View/ViewInfinite.tsx +94 -66
  1425. package/src/components/WriteBar/WriteBar.tsx +5 -5
  1426. package/src/components/WriteBarIcon/WriteBarIcon.tsx +1 -1
  1427. package/src/helpers/getScheme.ts +27 -0
  1428. package/src/helpers/scheme.ts +86 -0
  1429. package/src/hoc/withAdaptivity.tsx +13 -6
  1430. package/src/hoc/withContext.tsx +4 -5
  1431. package/src/hoc/withInsets.tsx +7 -5
  1432. package/src/hoc/withPlatform.tsx +9 -5
  1433. package/src/hooks/useAdaptivity.ts +2 -1
  1434. package/src/hooks/useEnsuredControl.ts +2 -2
  1435. package/src/hooks/useEventListener.ts +32 -25
  1436. package/src/hooks/useExternRef.ts +10 -4
  1437. package/src/hooks/useGlobalEventListener.ts +19 -13
  1438. package/src/hooks/useInsets.ts +8 -1
  1439. package/src/hooks/useKeyboard.ts +33 -30
  1440. package/src/hooks/usePatchChildrenRef.ts +3 -3
  1441. package/src/hooks/usePlatform.ts +1 -1
  1442. package/src/hooks/useTimeout.ts +15 -11
  1443. package/src/hooks/useWaitTransitionFinish.ts +5 -3
  1444. package/src/index.ts +2 -2
  1445. package/src/lib/SSR.tsx +2 -2
  1446. package/src/lib/accessibility.ts +1 -1
  1447. package/src/lib/animate.ts +1 -0
  1448. package/src/lib/dom.tsx +3 -3
  1449. package/src/lib/isRefObject.ts +1 -1
  1450. package/src/lib/jsxRuntime.ts +5 -7
  1451. package/src/lib/offset.ts +10 -10
  1452. package/src/lib/polyfills.ts +2 -2
  1453. package/src/lib/prefixClass.ts +1 -1
  1454. package/src/lib/select.ts +4 -4
  1455. package/src/lib/styles.ts +1 -1
  1456. package/src/lib/supportEvents.ts +1 -1
  1457. package/src/lib/utils.ts +4 -2
  1458. package/src/styles/bright_light.css +2 -1
  1459. package/src/styles/space_gray.css +2 -1
  1460. package/src/styles/vkcom_dark.css +2 -1
  1461. package/src/styles/vkcom_light.css +2 -1
  1462. package/src/testing/utils.tsx +4 -5
  1463. package/src/tokenized/tokenized.ts +2 -0
  1464. package/tokenized/index.d.ts +1 -0
  1465. package/tokenized/package.json +4 -0
  1466. package/tsconfig.json +1 -3
  1467. package/types/global.d.ts +5 -0
  1468. package/webpack.config.js +10 -8
  1469. package/webpack.styles.config.js +5 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"names":["React","Touch","classNames","getClassName","ANDROID","VKCOM","rubber","withAdaptivity","ViewWidth","Text","Button","AppRootPortal","useWaitTransitionFinish","usePlatform","useTimeout","SnackbarComponent","props","children","layout","action","before","after","viewWidth","duration","onActionClick","onClose","restProps","platform","waitTransitionFinish","useState","closing","setClosing","touched","setTouched","shiftXPercentRef","useRef","shiftXCurrentRef","bodyElRef","innerElRef","animationFrameRef","isDesktop","SMALL_TABLET","transitionFinishDurationFallback","close","current","handleActionClick","e","closeTimeout","setBodyTransform","percent","cancelAnimationFrame","requestAnimationFrame","style","transform","onTouchStart","clear","onTouchMoveX","event","shiftX","originalEvent","preventDefault","offsetWidth","onTouchEnd","callback","shiftXCurrent","expectTranslateY","set","useEffect","resolvedLayout","displayName","defaultProps","Snackbar"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasPlatform } from \"../../types\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ANDROID, VKCOM } from \"../../lib/platform\";\nimport { rubber } from \"../../lib/touch\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n ViewWidth,\n} from \"../../hoc/withAdaptivity\";\nimport Text from \"../Typography/Text/Text\";\nimport Button from \"../Button/Button\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { useWaitTransitionFinish } from \"../../hooks/useWaitTransitionFinish\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport \"./Snackbar.css\";\n\nexport interface SnackbarProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n AdaptivityProps {\n /**\n * Название кнопки действия в уведомлении\n */\n action?: string | React.ComponentType;\n\n /**\n * Будет вызвано при клике на кнопку действия\n */\n onActionClick?: (e: React.MouseEvent) => void;\n\n /**\n * Цветная иконка 24x24 пикселя\n */\n before?: React.ReactNode;\n /**\n * Контент в правой части, может быть `<Avatar size={32} />`\n */\n after?: React.ReactNode;\n /**\n * Варианты расположения кнопки\n */\n layout?: \"vertical\" | \"horizontal\";\n /**\n * Время в миллисекундах, через которое плашка скроется\n */\n duration?: number;\n /**\n * Обработчик закрытия уведомления\n */\n onClose: () => void;\n}\n\nconst SnackbarComponent: React.FC<SnackbarProps> = (props: SnackbarProps) => {\n const {\n children,\n layout,\n action,\n before,\n after,\n viewWidth,\n duration,\n onActionClick,\n onClose,\n ...restProps\n } = props;\n\n const platform = usePlatform();\n\n const { waitTransitionFinish } = useWaitTransitionFinish();\n\n const [closing, setClosing] = React.useState(false);\n const [touched, setTouched] = React.useState(false);\n\n const shiftXPercentRef = React.useRef<number>(0);\n const shiftXCurrentRef = React.useRef<number>(0);\n\n const bodyElRef = React.useRef<HTMLDivElement | null>(null);\n const innerElRef = React.useRef<HTMLDivElement | null>(null);\n\n const animationFrameRef = React.useRef<ReturnType<\n typeof requestAnimationFrame\n > | null>(null);\n\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const transitionFinishDurationFallback =\n platform === ANDROID || platform === VKCOM ? 400 : 320;\n\n const close = () => {\n setClosing(true);\n waitTransitionFinish(\n innerElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n };\n\n const handleActionClick: React.MouseEventHandler<HTMLElement> = (e) => {\n close();\n\n if (action && typeof onActionClick === \"function\") {\n onActionClick(e);\n }\n };\n\n const closeTimeout = useTimeout(close, duration);\n\n const setBodyTransform = (percent: number) => {\n cancelAnimationFrame(animationFrameRef.current);\n animationFrameRef.current = requestAnimationFrame(() => {\n if (bodyElRef.current) {\n bodyElRef.current.style.transform = `translate3d(${percent}%, 0, 0)`;\n }\n });\n };\n\n const onTouchStart = closeTimeout.clear;\n\n const onTouchMoveX = (event: TouchEvent) => {\n const { shiftX, originalEvent } = event;\n originalEvent.preventDefault();\n\n if (!touched) {\n setTouched(true);\n }\n\n shiftXPercentRef.current = (shiftX / bodyElRef.current.offsetWidth) * 100;\n shiftXCurrentRef.current = rubber(\n shiftXPercentRef.current,\n 72,\n 1.2,\n platform === ANDROID || platform === VKCOM\n );\n\n setBodyTransform(shiftXCurrentRef.current);\n };\n\n const onTouchEnd = (e: TouchEvent) => {\n let callback: VoidFunction | undefined;\n\n if (touched) {\n let shiftXCurrent = shiftXCurrentRef.current;\n const expectTranslateY = (shiftXCurrent / e.duration) * 240 * 0.6;\n shiftXCurrent = shiftXCurrent + expectTranslateY;\n\n if (isDesktop && shiftXCurrent <= -50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(-120);\n } else if (!isDesktop && shiftXCurrent >= 50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(120);\n } else {\n callback = () => {\n closeTimeout.set();\n setBodyTransform(0);\n };\n }\n } else {\n closeTimeout.set();\n }\n\n setTouched(false);\n callback && requestAnimationFrame(callback);\n };\n\n React.useEffect(closeTimeout.set, []);\n\n const resolvedLayout = after || isDesktop ? \"vertical\" : layout;\n\n return (\n <AppRootPortal>\n <div\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"Snackbar\", platform),\n `Snackbar--l-${resolvedLayout}`,\n {\n \"Snackbar--closing\": closing,\n \"Snackbar--touched\": touched,\n \"Snackbar--desktop\": isDesktop,\n }\n )}\n >\n <Touch\n vkuiClass=\"Snackbar__in\"\n getRootRef={innerElRef}\n onStart={onTouchStart}\n onMoveX={onTouchMoveX}\n onEnd={onTouchEnd}\n >\n <div vkuiClass=\"Snackbar__body\" ref={bodyElRef}>\n {before && <div vkuiClass=\"Snackbar__before\">{before}</div>}\n\n <div vkuiClass=\"Snackbar__content\">\n <Text weight=\"regular\" vkuiClass=\"Snackbar__content-text\">\n {children}\n </Text>\n\n {action && (\n <Button\n align=\"left\"\n hasHover={false}\n mode=\"tertiary\"\n size=\"s\"\n vkuiClass=\"Snackbar__action\"\n onClick={handleActionClick}\n >\n {action}\n </Button>\n )}\n </div>\n\n {after && <div vkuiClass=\"Snackbar__after\">{after}</div>}\n </div>\n </Touch>\n </div>\n </AppRootPortal>\n );\n};\n\nSnackbarComponent.displayName = \"Snackbar\";\n\nSnackbarComponent.defaultProps = {\n duration: 4000,\n layout: \"horizontal\",\n};\n\nexport const Snackbar = withAdaptivity(SnackbarComponent, {\n viewWidth: true,\n});\n"],"file":"Snackbar.js"}
1
+ {"version":3,"sources":["../../../../src/components/Snackbar/Snackbar.tsx"],"names":["React","Touch","classNames","getClassName","ANDROID","VKCOM","rubber","withAdaptivity","ViewWidth","Text","Button","AppRootPortal","useWaitTransitionFinish","usePlatform","useTimeout","SnackbarComponent","props","children","layout","action","before","after","viewWidth","duration","onActionClick","onClose","restProps","platform","waitTransitionFinish","useState","closing","setClosing","touched","setTouched","shiftXPercentRef","useRef","shiftXCurrentRef","bodyElRef","innerElRef","animationFrameRef","isDesktop","SMALL_TABLET","transitionFinishDurationFallback","close","current","handleActionClick","e","closeTimeout","setBodyTransform","percent","cancelAnimationFrame","requestAnimationFrame","style","transform","onTouchStart","clear","onTouchMoveX","event","shiftX","originalEvent","preventDefault","offsetWidth","onTouchEnd","callback","shiftXCurrent","expectTranslateY","set","useEffect","resolvedLayout","displayName","defaultProps","Snackbar"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasPlatform } from \"../../types\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ANDROID, VKCOM } from \"../../lib/platform\";\nimport { rubber } from \"../../lib/touch\";\nimport { withAdaptivity, ViewWidth } from \"../../hoc/withAdaptivity\";\nimport Text from \"../Typography/Text/Text\";\nimport Button from \"../Button/Button\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { useWaitTransitionFinish } from \"../../hooks/useWaitTransitionFinish\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { AdaptivityContextInterface } from \"../AdaptivityProvider/AdaptivityContext\";\nimport \"./Snackbar.css\";\n\nexport interface SnackbarProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n AdaptivityContextInterface {\n /**\n * Название кнопки действия в уведомлении\n */\n action?: string | React.ComponentType;\n\n /**\n * Будет вызвано при клике на кнопку действия\n */\n onActionClick?: (e: React.MouseEvent) => void;\n\n /**\n * Цветная иконка 24x24 пикселя\n */\n before?: React.ReactNode;\n /**\n * Контент в правой части, может быть `<Avatar size={32} />`\n */\n after?: React.ReactNode;\n /**\n * Варианты расположения кнопки\n */\n layout?: \"vertical\" | \"horizontal\";\n /**\n * Время в миллисекундах, через которое плашка скроется\n */\n duration?: number;\n /**\n * Обработчик закрытия уведомления\n */\n onClose: () => void;\n}\n\nconst SnackbarComponent: React.FC<SnackbarProps> = (props: SnackbarProps) => {\n const {\n children,\n layout,\n action,\n before,\n after,\n viewWidth,\n duration = 0,\n onActionClick,\n onClose,\n ...restProps\n } = props;\n\n const platform = usePlatform();\n\n const { waitTransitionFinish } = useWaitTransitionFinish();\n\n const [closing, setClosing] = React.useState(false);\n const [touched, setTouched] = React.useState(false);\n\n const shiftXPercentRef = React.useRef<number>(0);\n const shiftXCurrentRef = React.useRef<number>(0);\n\n const bodyElRef = React.useRef<HTMLDivElement | null>(null);\n const innerElRef = React.useRef<HTMLDivElement | null>(null);\n\n const animationFrameRef = React.useRef<ReturnType<\n typeof requestAnimationFrame\n > | null>(null);\n\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const transitionFinishDurationFallback =\n platform === ANDROID || platform === VKCOM ? 400 : 320;\n\n const close = () => {\n setClosing(true);\n waitTransitionFinish(\n innerElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n };\n\n const handleActionClick: React.MouseEventHandler<HTMLElement> = (e) => {\n close();\n\n if (action && typeof onActionClick === \"function\") {\n onActionClick(e);\n }\n };\n\n const closeTimeout = useTimeout(close, duration);\n\n const setBodyTransform = (percent: number) => {\n if (animationFrameRef.current !== null) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n animationFrameRef.current = requestAnimationFrame(() => {\n if (bodyElRef.current) {\n bodyElRef.current.style.transform = `translate3d(${percent}%, 0, 0)`;\n }\n });\n };\n\n const onTouchStart = closeTimeout.clear;\n\n const onTouchMoveX = (event: TouchEvent) => {\n const { shiftX, originalEvent } = event;\n originalEvent.preventDefault();\n\n if (!touched) {\n setTouched(true);\n }\n\n shiftXPercentRef.current =\n (shiftX / (bodyElRef.current?.offsetWidth ?? 0)) * 100;\n shiftXCurrentRef.current = rubber(\n shiftXPercentRef.current,\n 72,\n 1.2,\n platform === ANDROID || platform === VKCOM\n );\n\n setBodyTransform(shiftXCurrentRef.current);\n };\n\n const onTouchEnd = (e: TouchEvent) => {\n let callback: VoidFunction | undefined;\n\n if (touched) {\n let shiftXCurrent = shiftXCurrentRef.current;\n const expectTranslateY = (shiftXCurrent / e.duration) * 240 * 0.6;\n shiftXCurrent = shiftXCurrent + expectTranslateY;\n\n if (isDesktop && shiftXCurrent <= -50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(-120);\n } else if (!isDesktop && shiftXCurrent >= 50) {\n closeTimeout.clear();\n waitTransitionFinish(\n bodyElRef.current,\n () => {\n onClose();\n },\n transitionFinishDurationFallback\n );\n setBodyTransform(120);\n } else {\n callback = () => {\n closeTimeout.set();\n setBodyTransform(0);\n };\n }\n } else {\n closeTimeout.set();\n }\n\n setTouched(false);\n callback && requestAnimationFrame(callback);\n };\n\n React.useEffect(() => closeTimeout.set(), [closeTimeout]);\n\n const resolvedLayout = after || isDesktop ? \"vertical\" : layout;\n\n return (\n <AppRootPortal>\n <div\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"Snackbar\", platform),\n `Snackbar--l-${resolvedLayout}`,\n {\n \"Snackbar--closing\": closing,\n \"Snackbar--touched\": touched,\n \"Snackbar--desktop\": isDesktop,\n }\n )}\n >\n <Touch\n vkuiClass=\"Snackbar__in\"\n getRootRef={innerElRef}\n onStart={onTouchStart}\n onMoveX={onTouchMoveX}\n onEnd={onTouchEnd}\n >\n <div vkuiClass=\"Snackbar__body\" ref={bodyElRef}>\n {before && <div vkuiClass=\"Snackbar__before\">{before}</div>}\n\n <div vkuiClass=\"Snackbar__content\">\n <Text weight=\"regular\" vkuiClass=\"Snackbar__content-text\">\n {children}\n </Text>\n\n {action && (\n <Button\n align=\"left\"\n hasHover={false}\n mode=\"tertiary\"\n size=\"s\"\n vkuiClass=\"Snackbar__action\"\n onClick={handleActionClick}\n >\n {action}\n </Button>\n )}\n </div>\n\n {after && <div vkuiClass=\"Snackbar__after\">{after}</div>}\n </div>\n </Touch>\n </div>\n </AppRootPortal>\n );\n};\n\nSnackbarComponent.displayName = \"Snackbar\";\n\nSnackbarComponent.defaultProps = {\n duration: 4000,\n layout: \"horizontal\",\n};\n\nexport const Snackbar = withAdaptivity(SnackbarComponent, {\n viewWidth: true,\n});\n"],"file":"Snackbar.js"}
@@ -40,6 +40,7 @@ var Spinner = function Spinner(_ref) {
40
40
  Spinner.defaultProps = {
41
41
  size: "regular",
42
42
  "aria-label": "Загружается..."
43
- };
43
+ }; // eslint-disable-next-line import/no-default-export
44
+
44
45
  export default /*#__PURE__*/React.memo(Spinner);
45
46
  //# sourceMappingURL=Spinner.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Spinner/Spinner.tsx"],"names":["React","getClassName","Icon24Spinner","Icon32Spinner","Icon44Spinner","Icon16Spinner","usePlatform","Spinner","size","restProps","platform","SpinnerIcon","defaultProps","memo"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SACEC,aADF,EAEEC,aAFF,EAGEC,aAHF,EAIEC,aAJF,QAKO,kBALP;AAMA,SAASC,WAAT;AACA;;AAMA,IAAMC,OAA+B,GAAG,SAAlCA,OAAkC,OAGpB;AAAA,MAFlBC,IAEkB,QAFlBA,IAEkB;AAAA,MADfC,SACe;;AAClB,MAAMC,QAAQ,GAAGJ,WAAW,EAA5B;AAEA,MAAIK,WAAW,GAAGT,aAAlB;;AAEA,MAAIM,IAAI,KAAK,OAAb,EAAsB;AACpBG,IAAAA,WAAW,GAAGP,aAAd;AACD;;AAED,MAAII,IAAI,KAAK,QAAb,EAAuB;AACrBG,IAAAA,WAAW,GAAGR,aAAd;AACD;;AAED,MAAIK,IAAI,KAAK,OAAb,EAAsB;AACpBG,IAAAA,WAAW,GAAGN,aAAd;AACD;;AAED,SACE;AACE,IAAA,IAAI,EAAC;AADP,KAEMI,SAFN;AAGE,IAAA,SAAS,EAAER,YAAY,CAAC,SAAD,EAAYS,QAAZ;AAHzB,MAKE,oBAAC,WAAD;AAAa,mBAAY,MAAzB;AAAgC,IAAA,SAAS,EAAC;AAA1C,IALF,CADF;AASD,CA7BD;;AA+BAH,OAAO,CAACK,YAAR,GAAuB;AACrBJ,EAAAA,IAAI,EAAE,SADe;AAErB,gBAAc;AAFO,CAAvB;AAKA,4BAAeR,KAAK,CAACa,IAAN,CAAWN,OAAX,CAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport {\n Icon24Spinner,\n Icon32Spinner,\n Icon44Spinner,\n Icon16Spinner,\n} from \"@vkontakte/icons\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Spinner.css\";\n\nexport interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement> {\n size?: \"small\" | \"regular\" | \"large\" | \"medium\";\n}\n\nconst Spinner: React.FC<SpinnerProps> = ({\n size,\n ...restProps\n}: SpinnerProps) => {\n const platform = usePlatform();\n\n let SpinnerIcon = Icon24Spinner;\n\n if (size === \"large\") {\n SpinnerIcon = Icon44Spinner;\n }\n\n if (size === \"medium\") {\n SpinnerIcon = Icon32Spinner;\n }\n\n if (size === \"small\") {\n SpinnerIcon = Icon16Spinner;\n }\n\n return (\n <span\n role=\"status\"\n {...restProps}\n vkuiClass={getClassName(\"Spinner\", platform)}\n >\n <SpinnerIcon aria-hidden=\"true\" vkuiClass=\"Spinner__self\" />\n </span>\n );\n};\n\nSpinner.defaultProps = {\n size: \"regular\",\n \"aria-label\": \"Загружается...\",\n};\n\nexport default React.memo(Spinner);\n"],"file":"Spinner.js"}
1
+ {"version":3,"sources":["../../../../src/components/Spinner/Spinner.tsx"],"names":["React","getClassName","Icon24Spinner","Icon32Spinner","Icon44Spinner","Icon16Spinner","usePlatform","Spinner","size","restProps","platform","SpinnerIcon","defaultProps","memo"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SACEC,aADF,EAEEC,aAFF,EAGEC,aAHF,EAIEC,aAJF,QAKO,kBALP;AAMA,SAASC,WAAT;AACA;;AAMA,IAAMC,OAA+B,GAAG,SAAlCA,OAAkC,OAGpB;AAAA,MAFlBC,IAEkB,QAFlBA,IAEkB;AAAA,MADfC,SACe;;AAClB,MAAMC,QAAQ,GAAGJ,WAAW,EAA5B;AAEA,MAAIK,WAAW,GAAGT,aAAlB;;AAEA,MAAIM,IAAI,KAAK,OAAb,EAAsB;AACpBG,IAAAA,WAAW,GAAGP,aAAd;AACD;;AAED,MAAII,IAAI,KAAK,QAAb,EAAuB;AACrBG,IAAAA,WAAW,GAAGR,aAAd;AACD;;AAED,MAAIK,IAAI,KAAK,OAAb,EAAsB;AACpBG,IAAAA,WAAW,GAAGN,aAAd;AACD;;AAED,SACE;AACE,IAAA,IAAI,EAAC;AADP,KAEMI,SAFN;AAGE,IAAA,SAAS,EAAER,YAAY,CAAC,SAAD,EAAYS,QAAZ;AAHzB,MAKE,oBAAC,WAAD;AAAa,mBAAY,MAAzB;AAAgC,IAAA,SAAS,EAAC;AAA1C,IALF,CADF;AASD,CA7BD;;AA+BAH,OAAO,CAACK,YAAR,GAAuB;AACrBJ,EAAAA,IAAI,EAAE,SADe;AAErB,gBAAc;AAFO,CAAvB,C,CAKA;;AACA,4BAAeR,KAAK,CAACa,IAAN,CAAWN,OAAX,CAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport {\n Icon24Spinner,\n Icon32Spinner,\n Icon44Spinner,\n Icon16Spinner,\n} from \"@vkontakte/icons\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Spinner.css\";\n\nexport interface SpinnerProps extends React.HTMLAttributes<HTMLSpanElement> {\n size?: \"small\" | \"regular\" | \"large\" | \"medium\";\n}\n\nconst Spinner: React.FC<SpinnerProps> = ({\n size,\n ...restProps\n}: SpinnerProps) => {\n const platform = usePlatform();\n\n let SpinnerIcon = Icon24Spinner;\n\n if (size === \"large\") {\n SpinnerIcon = Icon44Spinner;\n }\n\n if (size === \"medium\") {\n SpinnerIcon = Icon32Spinner;\n }\n\n if (size === \"small\") {\n SpinnerIcon = Icon16Spinner;\n }\n\n return (\n <span\n role=\"status\"\n {...restProps}\n vkuiClass={getClassName(\"Spinner\", platform)}\n >\n <SpinnerIcon aria-hidden=\"true\" vkuiClass=\"Spinner__self\" />\n </span>\n );\n};\n\nSpinner.defaultProps = {\n size: \"regular\",\n \"aria-label\": \"Загружается...\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default React.memo(Spinner);\n"],"file":"Spinner.js"}
@@ -22,7 +22,7 @@ export var SplitCol = function SplitCol(props) {
22
22
  style = props.style,
23
23
  restProps = _objectWithoutProperties(props, _excluded);
24
24
 
25
- var baseRef = React.useRef();
25
+ var baseRef = React.useRef(null);
26
26
  var contextValue = React.useMemo(function () {
27
27
  return {
28
28
  colRef: baseRef,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/SplitCol/SplitCol.tsx"],"names":["React","classNames","SplitColContext","createContext","colRef","animate","SplitCol","props","children","width","maxWidth","minWidth","spaced","fixed","style","restProps","baseRef","useRef","contextValue","useMemo"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA;AAOA,OAAO,IAAMC,eAAe,gBAAGF,KAAK,CAACG,aAAN,CAA0C;AACvEC,EAAAA,MAAM,EAAE,IAD+D;AAEvEC,EAAAA,OAAO,EAAE;AAF8D,CAA1C,CAAxB;AAoBP,OAAO,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,CAACC,KAAD,EAA0B;AACzE,MACEC,QADF,GAUID,KAVJ,CACEC,QADF;AAAA,MAEEC,KAFF,GAUIF,KAVJ,CAEEE,KAFF;AAAA,MAGEC,QAHF,GAUIH,KAVJ,CAGEG,QAHF;AAAA,MAIEC,QAJF,GAUIJ,KAVJ,CAIEI,QAJF;AAAA,MAKEC,MALF,GAUIL,KAVJ,CAKEK,MALF;AAAA,uBAUIL,KAVJ,CAMEF,OANF;AAAA,MAMEA,OANF,+BAMY,KANZ;AAAA,MAOEQ,KAPF,GAUIN,KAVJ,CAOEM,KAPF;AAAA,MAQEC,KARF,GAUIP,KAVJ,CAQEO,KARF;AAAA,MASKC,SATL,4BAUIR,KAVJ;;AAWA,MAAMS,OAAO,GAAGhB,KAAK,CAACiB,MAAN,EAAhB;AAEA,MAAMC,YAAY,GAAGlB,KAAK,CAACmB,OAAN,CAAc,YAAM;AACvC,WAAO;AACLf,MAAAA,MAAM,EAAEY,OADH;AAELX,MAAAA,OAAO,EAAPA;AAFK,KAAP;AAID,GALoB,EAKlB,CAACW,OAAD,EAAUX,OAAV,CALkB,CAArB;AAOA,SACE,wCACMU,SADN;AAEE,IAAA,KAAK,kCACAD,KADA;AAEHL,MAAAA,KAAK,EAAEA,KAFJ;AAGHC,MAAAA,QAAQ,EAAEA,QAHP;AAIHC,MAAAA,QAAQ,EAAEA;AAJP,MAFP;AAQE,IAAA,GAAG,EAAEK,OARP;AASE,IAAA,SAAS,EAAEf,UAAU,CAAC,UAAD,EAAa;AAChC,0BAAoBW,MADY;AAEhC,yBAAmBC;AAFa,KAAb;AATvB,MAcE,oBAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEK;AAAjC,KACGL,KAAK,GACJ;AAAK,IAAA,SAAS,EAAC;AAAf,KAAuCL,QAAvC,CADI,GAGJA,QAJJ,CAdF,CADF;AAwBD,CA7CM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./SplitCol.css\";\n\nexport interface SplitColContextProps {\n colRef: React.RefObject<HTMLDivElement>;\n animate: boolean;\n}\n\nexport const SplitColContext = React.createContext<SplitColContextProps>({\n colRef: null,\n animate: true,\n});\n\nexport interface SplitColProps extends React.HTMLAttributes<HTMLDivElement> {\n width?: number | string;\n maxWidth?: number | string;\n minWidth?: number | string;\n /**\n * Если false, то переходы между Panel происходят без анимации\n */\n animate?: boolean;\n /**\n * Если true, то добавляются боковые отступы фиксированной величины\n */\n spaced?: boolean;\n fixed?: boolean;\n}\n\nexport const SplitCol: React.FC<SplitColProps> = (props: SplitColProps) => {\n const {\n children,\n width,\n maxWidth,\n minWidth,\n spaced,\n animate = false,\n fixed,\n style,\n ...restProps\n } = props;\n const baseRef = React.useRef<HTMLDivElement>();\n\n const contextValue = React.useMemo(() => {\n return {\n colRef: baseRef,\n animate,\n };\n }, [baseRef, animate]);\n\n return (\n <div\n {...restProps}\n style={{\n ...style,\n width: width,\n maxWidth: maxWidth,\n minWidth: minWidth,\n }}\n ref={baseRef}\n vkuiClass={classNames(\"SplitCol\", {\n \"SplitCol--spaced\": spaced,\n \"SplitCol--fixed\": fixed,\n })}\n >\n <SplitColContext.Provider value={contextValue}>\n {fixed ? (\n <div vkuiClass=\"SplitCol__fixedInner\">{children}</div>\n ) : (\n children\n )}\n </SplitColContext.Provider>\n </div>\n );\n};\n"],"file":"SplitCol.js"}
1
+ {"version":3,"sources":["../../../../src/components/SplitCol/SplitCol.tsx"],"names":["React","classNames","SplitColContext","createContext","colRef","animate","SplitCol","props","children","width","maxWidth","minWidth","spaced","fixed","style","restProps","baseRef","useRef","contextValue","useMemo"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA;AAOA,OAAO,IAAMC,eAAe,gBAAGF,KAAK,CAACG,aAAN,CAA0C;AACvEC,EAAAA,MAAM,EAAE,IAD+D;AAEvEC,EAAAA,OAAO,EAAE;AAF8D,CAA1C,CAAxB;AAoBP,OAAO,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,CAACC,KAAD,EAA0B;AACzE,MACEC,QADF,GAUID,KAVJ,CACEC,QADF;AAAA,MAEEC,KAFF,GAUIF,KAVJ,CAEEE,KAFF;AAAA,MAGEC,QAHF,GAUIH,KAVJ,CAGEG,QAHF;AAAA,MAIEC,QAJF,GAUIJ,KAVJ,CAIEI,QAJF;AAAA,MAKEC,MALF,GAUIL,KAVJ,CAKEK,MALF;AAAA,uBAUIL,KAVJ,CAMEF,OANF;AAAA,MAMEA,OANF,+BAMY,KANZ;AAAA,MAOEQ,KAPF,GAUIN,KAVJ,CAOEM,KAPF;AAAA,MAQEC,KARF,GAUIP,KAVJ,CAQEO,KARF;AAAA,MASKC,SATL,4BAUIR,KAVJ;;AAWA,MAAMS,OAAO,GAAGhB,KAAK,CAACiB,MAAN,CAA6B,IAA7B,CAAhB;AAEA,MAAMC,YAAY,GAAGlB,KAAK,CAACmB,OAAN,CAAc,YAAM;AACvC,WAAO;AACLf,MAAAA,MAAM,EAAEY,OADH;AAELX,MAAAA,OAAO,EAAPA;AAFK,KAAP;AAID,GALoB,EAKlB,CAACW,OAAD,EAAUX,OAAV,CALkB,CAArB;AAOA,SACE,wCACMU,SADN;AAEE,IAAA,KAAK,kCACAD,KADA;AAEHL,MAAAA,KAAK,EAAEA,KAFJ;AAGHC,MAAAA,QAAQ,EAAEA,QAHP;AAIHC,MAAAA,QAAQ,EAAEA;AAJP,MAFP;AAQE,IAAA,GAAG,EAAEK,OARP;AASE,IAAA,SAAS,EAAEf,UAAU,CAAC,UAAD,EAAa;AAChC,0BAAoBW,MADY;AAEhC,yBAAmBC;AAFa,KAAb;AATvB,MAcE,oBAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEK;AAAjC,KACGL,KAAK,GACJ;AAAK,IAAA,SAAS,EAAC;AAAf,KAAuCL,QAAvC,CADI,GAGJA,QAJJ,CAdF,CADF;AAwBD,CA7CM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./SplitCol.css\";\n\nexport interface SplitColContextProps {\n colRef: React.RefObject<HTMLDivElement> | null;\n animate: boolean;\n}\n\nexport const SplitColContext = React.createContext<SplitColContextProps>({\n colRef: null,\n animate: true,\n});\n\nexport interface SplitColProps extends React.HTMLAttributes<HTMLDivElement> {\n width?: number | string;\n maxWidth?: number | string;\n minWidth?: number | string;\n /**\n * Если false, то переходы между Panel происходят без анимации\n */\n animate?: boolean;\n /**\n * Если true, то добавляются боковые отступы фиксированной величины\n */\n spaced?: boolean;\n fixed?: boolean;\n}\n\nexport const SplitCol: React.FC<SplitColProps> = (props: SplitColProps) => {\n const {\n children,\n width,\n maxWidth,\n minWidth,\n spaced,\n animate = false,\n fixed,\n style,\n ...restProps\n } = props;\n const baseRef = React.useRef<HTMLDivElement>(null);\n\n const contextValue = React.useMemo(() => {\n return {\n colRef: baseRef,\n animate,\n };\n }, [baseRef, animate]);\n\n return (\n <div\n {...restProps}\n style={{\n ...style,\n width: width,\n maxWidth: maxWidth,\n minWidth: minWidth,\n }}\n ref={baseRef}\n vkuiClass={classNames(\"SplitCol\", {\n \"SplitCol--spaced\": spaced,\n \"SplitCol--fixed\": fixed,\n })}\n >\n <SplitColContext.Provider value={contextValue}>\n {fixed ? (\n <div vkuiClass=\"SplitCol__fixedInner\">{children}</div>\n ) : (\n children\n )}\n </SplitColContext.Provider>\n </div>\n );\n};\n"],"file":"SplitCol.js"}
@@ -1 +1 @@
1
- .vkuiTabbar{position:fixed;z-index:2;bottom:0;left:0;width:100%;height:48px;height:var(--tabbar_height);padding-bottom:0;padding-bottom:var(--safe-area-inset-bottom);box-sizing:content-box;background:#fff;background:var(--header_alternate_background)}.vkuiTabbar__in{display:flex;justify-content:center;overflow:hidden}.vkuiTabbar--ios.vkuiTabbar--shadow::before{position:absolute;bottom:100%;left:0;width:100%;height:1px;background:#d7d8d9;background:var(--separator_common);-webkit-transform-origin:center bottom;transform-origin:center bottom;content:""}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.vkuiTabbar--ios::before{-webkit-transform:scaleY(.5);transform:scaleY(.5)}}@media (-webkit-min-device-pixel-ratio:3),(min-resolution:3dppx){.vkuiTabbar--ios::before{-webkit-transform:scaleY(.33);transform:scaleY(.33)}}.vkuiTabbar--android.vkuiTabbar--shadow,.vkuiTabbar--vkcom.vkuiTabbar--shadow{box-shadow:0 -2px 4px 0 rgba(0,0,0,.06),0 0 2px 0 rgba(0,0,0,.08)}
1
+ .vkuiTabbar{position:fixed;z-index:2;bottom:0;left:0;width:100%;height:48px;height:var(--tabbar_height);padding-bottom:0;padding-bottom:var(--safe-area-inset-bottom);box-sizing:content-box;background:#fff;background:var(--header_alternate_background)}.vkuiTabbar__in{display:flex;justify-content:center;overflow:hidden}.vkuiTabbar--ios.vkuiTabbar--shadow::before{position:absolute;bottom:100%;left:0;width:100%;height:1px;background:#d7d8d9;background:var(--separator_common);-webkit-transform-origin:center bottom;transform-origin:center bottom;content:""}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.vkuiTabbar--ios::before{-webkit-transform:scaleY(.5);transform:scaleY(.5)}}@media (-webkit-min-device-pixel-ratio:3),(min-resolution:3dppx){.vkuiTabbar--ios::before{-webkit-transform:scaleY(.33);transform:scaleY(.33)}}.vkuiTabbar--android.vkuiTabbar--shadow,.vkuiTabbar--vkcom.vkuiTabbar--shadow{box-shadow:0-2px 4px 0 rgba(0,0,0,.06),0 0 2px 0 rgba(0,0,0,.08)}
@@ -38,6 +38,7 @@ var Tabbar = function Tabbar(props) {
38
38
 
39
39
  Tabbar.defaultProps = {
40
40
  shadow: true
41
- };
41
+ }; // eslint-disable-next-line import/no-default-export
42
+
42
43
  export default Tabbar;
43
44
  //# sourceMappingURL=Tabbar.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tabbar/Tabbar.tsx"],"names":["React","getClassName","classNames","usePlatform","Tabbar","props","children","shadow","itemsLayout","restProps","platform","getItemsLayout","Children","count","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA;;AAUA,IAAMC,MAA4C,GAAG,SAA/CA,MAA+C,CAACC,KAAD,EAAwB;AAC3E,MAAQC,QAAR,GAAwDD,KAAxD,CAAQC,QAAR;AAAA,MAAkBC,MAAlB,GAAwDF,KAAxD,CAAkBE,MAAlB;AAAA,MAA0BC,WAA1B,GAAwDH,KAAxD,CAA0BG,WAA1B;AAAA,MAA0CC,SAA1C,4BAAwDJ,KAAxD;;AACA,MAAMK,QAAQ,GAAGP,WAAW,EAA5B;;AAEA,MAAMQ,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,YAAQH,WAAR;AACE,WAAK,YAAL;AACA,WAAK,UAAL;AACE,eAAOA,WAAP;;AACF;AACE,eAAOR,KAAK,CAACY,QAAN,CAAeC,KAAf,CAAqBP,QAArB,IAAiC,CAAjC,GAAqC,UAArC,GAAkD,YAAzD;AALJ;AAOD,GARD;;AAUA,SACE;AACE,IAAA,SAAS,EAAEJ,UAAU,CACnBD,YAAY,CAAC,QAAD,EAAWS,QAAX,CADO,sBAENC,cAAc,EAFR,GAGnB;AACE,wBAAkBJ;AADpB,KAHmB;AADvB,KAQME,SARN,GAUE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA6BH,QAA7B,CAVF,CADF;AAcD,CA5BD;;AA8BAF,MAAM,CAACU,YAAP,GAAsB;AACpBP,EAAAA,MAAM,EAAE;AADY,CAAtB;AAIA,eAAeH,MAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Tabbar.css\";\n\nexport interface TabbarProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Флаг для показа/скрытия верхней тени (Android) или границы (iOS)\n */\n shadow?: boolean;\n itemsLayout?: \"vertical\" | \"horizontal\" | \"auto\";\n}\n\nconst Tabbar: React.FunctionComponent<TabbarProps> = (props: TabbarProps) => {\n const { children, shadow, itemsLayout, ...restProps } = props;\n const platform = usePlatform();\n\n const getItemsLayout = () => {\n switch (itemsLayout) {\n case \"horizontal\":\n case \"vertical\":\n return itemsLayout;\n default:\n return React.Children.count(children) > 2 ? \"vertical\" : \"horizontal\";\n }\n };\n\n return (\n <div\n vkuiClass={classNames(\n getClassName(\"Tabbar\", platform),\n `Tabbar--l-${getItemsLayout()}`,\n {\n \"Tabbar--shadow\": shadow,\n }\n )}\n {...restProps}\n >\n <div vkuiClass=\"Tabbar__in\">{children}</div>\n </div>\n );\n};\n\nTabbar.defaultProps = {\n shadow: true,\n};\n\nexport default Tabbar;\n"],"file":"Tabbar.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tabbar/Tabbar.tsx"],"names":["React","getClassName","classNames","usePlatform","Tabbar","props","children","shadow","itemsLayout","restProps","platform","getItemsLayout","Children","count","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA;;AAUA,IAAMC,MAA4C,GAAG,SAA/CA,MAA+C,CAACC,KAAD,EAAwB;AAC3E,MAAQC,QAAR,GAAwDD,KAAxD,CAAQC,QAAR;AAAA,MAAkBC,MAAlB,GAAwDF,KAAxD,CAAkBE,MAAlB;AAAA,MAA0BC,WAA1B,GAAwDH,KAAxD,CAA0BG,WAA1B;AAAA,MAA0CC,SAA1C,4BAAwDJ,KAAxD;;AACA,MAAMK,QAAQ,GAAGP,WAAW,EAA5B;;AAEA,MAAMQ,cAAc,GAAG,SAAjBA,cAAiB,GAAM;AAC3B,YAAQH,WAAR;AACE,WAAK,YAAL;AACA,WAAK,UAAL;AACE,eAAOA,WAAP;;AACF;AACE,eAAOR,KAAK,CAACY,QAAN,CAAeC,KAAf,CAAqBP,QAArB,IAAiC,CAAjC,GAAqC,UAArC,GAAkD,YAAzD;AALJ;AAOD,GARD;;AAUA,SACE;AACE,IAAA,SAAS,EAAEJ,UAAU,CACnBD,YAAY,CAAC,QAAD,EAAWS,QAAX,CADO,sBAENC,cAAc,EAFR,GAGnB;AACE,wBAAkBJ;AADpB,KAHmB;AADvB,KAQME,SARN,GAUE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA6BH,QAA7B,CAVF,CADF;AAcD,CA5BD;;AA8BAF,MAAM,CAACU,YAAP,GAAsB;AACpBP,EAAAA,MAAM,EAAE;AADY,CAAtB,C,CAIA;;AACA,eAAeH,MAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Tabbar.css\";\n\nexport interface TabbarProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Флаг для показа/скрытия верхней тени (Android) или границы (iOS)\n */\n shadow?: boolean;\n itemsLayout?: \"vertical\" | \"horizontal\" | \"auto\";\n}\n\nconst Tabbar: React.FunctionComponent<TabbarProps> = (props: TabbarProps) => {\n const { children, shadow, itemsLayout, ...restProps } = props;\n const platform = usePlatform();\n\n const getItemsLayout = () => {\n switch (itemsLayout) {\n case \"horizontal\":\n case \"vertical\":\n return itemsLayout;\n default:\n return React.Children.count(children) > 2 ? \"vertical\" : \"horizontal\";\n }\n };\n\n return (\n <div\n vkuiClass={classNames(\n getClassName(\"Tabbar\", platform),\n `Tabbar--l-${getItemsLayout()}`,\n {\n \"Tabbar--shadow\": shadow,\n }\n )}\n {...restProps}\n >\n <div vkuiClass=\"Tabbar__in\">{children}</div>\n </div>\n );\n};\n\nTabbar.defaultProps = {\n shadow: true,\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Tabbar;\n"],"file":"Tabbar.js"}
@@ -52,7 +52,8 @@ var TabbarItem = function TabbarItem(_ref) {
52
52
  }, label))), text && createScopedElement("div", {
53
53
  vkuiClass: "TabbarItem__text"
54
54
  }, text)));
55
- };
55
+ }; // eslint-disable-next-line import/no-default-export
56
+
56
57
 
57
58
  export default TabbarItem;
58
59
  //# sourceMappingURL=TabbarItem.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TabbarItem/TabbarItem.tsx"],"names":["getClassName","Counter","classNames","usePlatform","hasReactNode","Tappable","Platform","TabbarItem","children","selected","label","indicator","text","href","Component","disabled","restProps","platform","IOS"],"mappings":";;;;AACA,SAASA,YAAT;AACA,OAAOC,OAAP;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,QAAT;AAEA;;AAqBA,IAAMC,UAAoD,GAAG,SAAvDA,UAAuD,OAUtC;AAAA,MATrBC,QASqB,QATrBA,QASqB;AAAA,MARrBC,QAQqB,QARrBA,QAQqB;AAAA,MAPrBC,KAOqB,QAPrBA,KAOqB;AAAA,MANrBC,SAMqB,QANrBA,SAMqB;AAAA,MALrBC,IAKqB,QALrBA,IAKqB;AAAA,MAJrBC,IAIqB,QAJrBA,IAIqB;AAAA,4BAHrBC,SAGqB;AAAA,MAHrBA,SAGqB,+BAHTD,IAAI,GAAG,GAAH,GAAS,QAGJ;AAAA,MAFrBE,QAEqB,QAFrBA,QAEqB;AAAA,MADlBC,SACkB;;AACrB,MAAMC,QAAQ,GAAGd,WAAW,EAA5B,CADqB,CAGrB;;AACA,SACE,oBAAC,SAAD,eACMa,SADN;AAEE,IAAA,QAAQ,EAAED,QAFZ;AAGE,IAAA,IAAI,EAAEF,IAHR;AAIE,IAAA,SAAS,EAAEX,UAAU,CAACF,YAAY,CAAC,YAAD,EAAeiB,QAAf,CAAb,EAAuC;AAC1D,8BAAwBR,QADkC;AAE1D,0BAAoB,CAAC,CAACG;AAFoC,KAAvC;AAJvB,MASE,oBAAC,QAAD;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,KAFZ;AAGE,IAAA,QAAQ,EAAEG,QAHZ;AAIE,IAAA,UAAU,EACRE,QAAQ,KAAKX,QAAQ,CAACY,GAAtB,GACI,8BADJ,GAEI,YAPR;AASE,IAAA,iBAAiB,EAAED,QAAQ,KAAKX,QAAQ,CAACY,GAAtB,GAA4B,CAA5B,GAAgC,GATrD;AAUE,IAAA,QAAQ,EAAE,KAVZ;AAWE,IAAA,SAAS,EAAC;AAXZ,IATF,EAsBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGV,QADH,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGJ,YAAY,CAACO,SAAD,CAAZ,IAA2BA,SAD9B,EAEG,CAACA,SAAD,IAAcD,KAAd,IACC,oBAAC,OAAD;AAAS,IAAA,IAAI,EAAC,GAAd;AAAkB,IAAA,IAAI,EAAC;AAAvB,KACGA,KADH,CAHJ,CAFF,CADF,EAYGE,IAAI,IAAI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAmCA,IAAnC,CAZX,CAtBF,CADF;AAuCD,CArDD;;AAuDA,eAAeL,UAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Counter from \"../Counter/Counter\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { Platform } from \"../../lib/platform\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport \"./TabbarItem.css\";\n\nexport interface TabbarItemProps\n extends Omit<React.AllHTMLAttributes<HTMLElement>, \"label\">, // TODO убрать Omit после удаления свойства label\n HasRootRef<HTMLElement>,\n HasComponent {\n selected?: boolean;\n /**\n * Тест рядом с иконкой\n */\n text?: React.ReactNode;\n /**\n * Индикатор над иконкой. Принимает `<Badge mode=\"prominent\" />` или `<Counter size=\"s\" mode=\"prominent\" />`\n */\n indicator?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте `indicator`\n */\n label?: React.ReactNode;\n}\n\nconst TabbarItem: React.FunctionComponent<TabbarItemProps> = ({\n children,\n selected,\n label,\n indicator,\n text,\n href,\n Component = href ? \"a\" : \"button\",\n disabled,\n ...restProps\n}: TabbarItemProps) => {\n const platform = usePlatform();\n\n // @ts-ignore ругается на то, что у AllHTMLAttributes type это строка, а button не любую строку считает валидным значением\n return (\n <Component\n {...restProps}\n disabled={disabled}\n href={href}\n vkuiClass={classNames(getClassName(\"TabbarItem\", platform), {\n \"TabbarItem--selected\": selected,\n \"TabbarItem--text\": !!text,\n })}\n >\n <Tappable\n role=\"presentation\"\n Component=\"div\"\n disabled={disabled}\n activeMode={\n platform === Platform.IOS\n ? \"TabbarItem__tappable--active\"\n : \"background\"\n }\n activeEffectDelay={platform === Platform.IOS ? 0 : 300}\n hasHover={false}\n vkuiClass=\"TabbarItem__tappable\"\n />\n <div vkuiClass=\"TabbarItem__in\">\n <div vkuiClass=\"TabbarItem__icon\">\n {children}\n <div vkuiClass=\"TabbarItem__label\">\n {hasReactNode(indicator) && indicator}\n {!indicator && label && (\n <Counter size=\"s\" mode=\"prominent\">\n {label}\n </Counter>\n )}\n </div>\n </div>\n {text && <div vkuiClass=\"TabbarItem__text\">{text}</div>}\n </div>\n </Component>\n );\n};\n\nexport default TabbarItem;\n"],"file":"TabbarItem.js"}
1
+ {"version":3,"sources":["../../../../src/components/TabbarItem/TabbarItem.tsx"],"names":["getClassName","Counter","classNames","usePlatform","hasReactNode","Tappable","Platform","TabbarItem","children","selected","label","indicator","text","href","Component","disabled","restProps","platform","IOS"],"mappings":";;;;AACA,SAASA,YAAT;AACA,OAAOC,OAAP;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,QAAT;AAEA;;AAqBA,IAAMC,UAAoD,GAAG,SAAvDA,UAAuD,OAUtC;AAAA,MATrBC,QASqB,QATrBA,QASqB;AAAA,MARrBC,QAQqB,QARrBA,QAQqB;AAAA,MAPrBC,KAOqB,QAPrBA,KAOqB;AAAA,MANrBC,SAMqB,QANrBA,SAMqB;AAAA,MALrBC,IAKqB,QALrBA,IAKqB;AAAA,MAJrBC,IAIqB,QAJrBA,IAIqB;AAAA,4BAHrBC,SAGqB;AAAA,MAHrBA,SAGqB,+BAHTD,IAAI,GAAG,GAAH,GAAS,QAGJ;AAAA,MAFrBE,QAEqB,QAFrBA,QAEqB;AAAA,MADlBC,SACkB;;AACrB,MAAMC,QAAQ,GAAGd,WAAW,EAA5B,CADqB,CAGrB;;AACA,SACE,oBAAC,SAAD,eACMa,SADN;AAEE,IAAA,QAAQ,EAAED,QAFZ;AAGE,IAAA,IAAI,EAAEF,IAHR;AAIE,IAAA,SAAS,EAAEX,UAAU,CAACF,YAAY,CAAC,YAAD,EAAeiB,QAAf,CAAb,EAAuC;AAC1D,8BAAwBR,QADkC;AAE1D,0BAAoB,CAAC,CAACG;AAFoC,KAAvC;AAJvB,MASE,oBAAC,QAAD;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,KAFZ;AAGE,IAAA,QAAQ,EAAEG,QAHZ;AAIE,IAAA,UAAU,EACRE,QAAQ,KAAKX,QAAQ,CAACY,GAAtB,GACI,8BADJ,GAEI,YAPR;AASE,IAAA,iBAAiB,EAAED,QAAQ,KAAKX,QAAQ,CAACY,GAAtB,GAA4B,CAA5B,GAAgC,GATrD;AAUE,IAAA,QAAQ,EAAE,KAVZ;AAWE,IAAA,SAAS,EAAC;AAXZ,IATF,EAsBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGV,QADH,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGJ,YAAY,CAACO,SAAD,CAAZ,IAA2BA,SAD9B,EAEG,CAACA,SAAD,IAAcD,KAAd,IACC,oBAAC,OAAD;AAAS,IAAA,IAAI,EAAC,GAAd;AAAkB,IAAA,IAAI,EAAC;AAAvB,KACGA,KADH,CAHJ,CAFF,CADF,EAYGE,IAAI,IAAI;AAAK,IAAA,SAAS,EAAC;AAAf,KAAmCA,IAAnC,CAZX,CAtBF,CADF;AAuCD,CArDD,C,CAuDA;;;AACA,eAAeL,UAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Counter from \"../Counter/Counter\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { Platform } from \"../../lib/platform\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport \"./TabbarItem.css\";\n\nexport interface TabbarItemProps\n extends Omit<React.AllHTMLAttributes<HTMLElement>, \"label\">, // TODO убрать Omit после удаления свойства label\n HasRootRef<HTMLElement>,\n HasComponent {\n selected?: boolean;\n /**\n * Тест рядом с иконкой\n */\n text?: React.ReactNode;\n /**\n * Индикатор над иконкой. Принимает `<Badge mode=\"prominent\" />` или `<Counter size=\"s\" mode=\"prominent\" />`\n */\n indicator?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте `indicator`\n */\n label?: React.ReactNode;\n}\n\nconst TabbarItem: React.FunctionComponent<TabbarItemProps> = ({\n children,\n selected,\n label,\n indicator,\n text,\n href,\n Component = href ? \"a\" : \"button\",\n disabled,\n ...restProps\n}: TabbarItemProps) => {\n const platform = usePlatform();\n\n // @ts-ignore ругается на то, что у AllHTMLAttributes type это строка, а button не любую строку считает валидным значением\n return (\n <Component\n {...restProps}\n disabled={disabled}\n href={href}\n vkuiClass={classNames(getClassName(\"TabbarItem\", platform), {\n \"TabbarItem--selected\": selected,\n \"TabbarItem--text\": !!text,\n })}\n >\n <Tappable\n role=\"presentation\"\n Component=\"div\"\n disabled={disabled}\n activeMode={\n platform === Platform.IOS\n ? \"TabbarItem__tappable--active\"\n : \"background\"\n }\n activeEffectDelay={platform === Platform.IOS ? 0 : 300}\n hasHover={false}\n vkuiClass=\"TabbarItem__tappable\"\n />\n <div vkuiClass=\"TabbarItem__in\">\n <div vkuiClass=\"TabbarItem__icon\">\n {children}\n <div vkuiClass=\"TabbarItem__label\">\n {hasReactNode(indicator) && indicator}\n {!indicator && label && (\n <Counter size=\"s\" mode=\"prominent\">\n {label}\n </Counter>\n )}\n </div>\n </div>\n {text && <div vkuiClass=\"TabbarItem__text\">{text}</div>}\n </div>\n </Component>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default TabbarItem;\n"],"file":"TabbarItem.js"}
@@ -36,7 +36,8 @@ var Tabs = function Tabs(_ref) {
36
36
 
37
37
  Tabs.defaultProps = {
38
38
  mode: "default"
39
- };
39
+ }; // eslint-disable-next-line import/no-default-export
40
+
40
41
  export default withAdaptivity(Tabs, {
41
42
  sizeX: true
42
43
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tabs/Tabs.tsx"],"names":["React","getClassName","classNames","usePlatform","IOS","withAdaptivity","TabsModeContext","createContext","Tabs","children","mode","getRootRef","sizeX","restProps","platform","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AAEA,SAASC,WAAT;AACA,SAASC,GAAT;AACA,SAASC,cAAT;AACA;AASA,OAAO,IAAMC,eAAe,gBAC1BN,KAAK,CAACO,aAAN,CAAuC,SAAvC,CADK;;AAGP,IAAMC,IAAwC,GAAG,SAA3CA,IAA2C,OAMhC;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,MAJfC,IAIe,QAJfA,IAIe;AAAA,MAHfC,UAGe,QAHfA,UAGe;AAAA,MAFfC,KAEe,QAFfA,KAEe;AAAA,MADZC,SACY;;AACf,MAAMC,QAAQ,GAAGX,WAAW,EAA5B;;AAEA,MAAIW,QAAQ,KAAKV,GAAb,IAAoBM,IAAI,KAAK,WAAjC,EAA8C;AAC5CA,IAAAA,IAAI,GAAG,SAAP;AACD;;AAED,SACE,wCACMG,SADN;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,SAAS,EAAET,UAAU,CACnBD,YAAY,CAAC,MAAD,EAASa,QAAT,CADO,kBAEVJ,IAFU,yBAGJE,KAHI;AAHvB,MASE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEF;AAAjC,KACGD,QADH,CADF,CATF,CADF;AAiBD,CA9BD;;AAgCAD,IAAI,CAACO,YAAL,GAAoB;AAClBL,EAAAA,IAAI,EAAE;AADY,CAApB;AAIA,eAAeL,cAAc,CAACG,IAAD,EAAO;AAAEI,EAAAA,KAAK,EAAE;AAAT,CAAP,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS } from \"../../lib/platform\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport \"./Tabs.css\";\n\nexport interface TabsProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n AdaptivityProps {\n mode?: \"default\" | \"buttons\" | \"segmented\";\n}\n\nexport const TabsModeContext =\n React.createContext<TabsProps[\"mode\"]>(\"default\");\n\nconst Tabs: React.FunctionComponent<TabsProps> = ({\n children,\n mode,\n getRootRef,\n sizeX,\n ...restProps\n}: TabsProps) => {\n const platform = usePlatform();\n\n if (platform !== IOS && mode === \"segmented\") {\n mode = \"default\";\n }\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n getClassName(\"Tabs\", platform),\n `Tabs--${mode}`,\n `Tabs--sizeX-${sizeX}`\n )}\n >\n <div vkuiClass=\"Tabs__in\">\n <TabsModeContext.Provider value={mode}>\n {children}\n </TabsModeContext.Provider>\n </div>\n </div>\n );\n};\n\nTabs.defaultProps = {\n mode: \"default\",\n};\n\nexport default withAdaptivity(Tabs, { sizeX: true });\n"],"file":"Tabs.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tabs/Tabs.tsx"],"names":["React","getClassName","classNames","usePlatform","IOS","withAdaptivity","TabsModeContext","createContext","Tabs","children","mode","getRootRef","sizeX","restProps","platform","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AAEA,SAASC,WAAT;AACA,SAASC,GAAT;AACA,SAASC,cAAT;AACA;AASA,OAAO,IAAMC,eAAe,gBAC1BN,KAAK,CAACO,aAAN,CAAuC,SAAvC,CADK;;AAGP,IAAMC,IAAwC,GAAG,SAA3CA,IAA2C,OAMhC;AAAA,MALfC,QAKe,QALfA,QAKe;AAAA,MAJfC,IAIe,QAJfA,IAIe;AAAA,MAHfC,UAGe,QAHfA,UAGe;AAAA,MAFfC,KAEe,QAFfA,KAEe;AAAA,MADZC,SACY;;AACf,MAAMC,QAAQ,GAAGX,WAAW,EAA5B;;AAEA,MAAIW,QAAQ,KAAKV,GAAb,IAAoBM,IAAI,KAAK,WAAjC,EAA8C;AAC5CA,IAAAA,IAAI,GAAG,SAAP;AACD;;AAED,SACE,wCACMG,SADN;AAEE,IAAA,GAAG,EAAEF,UAFP;AAGE,IAAA,SAAS,EAAET,UAAU,CACnBD,YAAY,CAAC,MAAD,EAASa,QAAT,CADO,kBAEVJ,IAFU,yBAGJE,KAHI;AAHvB,MASE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,eAAD,CAAiB,QAAjB;AAA0B,IAAA,KAAK,EAAEF;AAAjC,KACGD,QADH,CADF,CATF,CADF;AAiBD,CA9BD;;AAgCAD,IAAI,CAACO,YAAL,GAAoB;AAClBL,EAAAA,IAAI,EAAE;AADY,CAApB,C,CAIA;;AACA,eAAeL,cAAc,CAACG,IAAD,EAAO;AAAEI,EAAAA,KAAK,EAAE;AAAT,CAAP,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { IOS } from \"../../lib/platform\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport \"./Tabs.css\";\n\nexport interface TabsProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n AdaptivityProps {\n mode?: \"default\" | \"buttons\" | \"segmented\";\n}\n\nexport const TabsModeContext =\n React.createContext<TabsProps[\"mode\"]>(\"default\");\n\nconst Tabs: React.FunctionComponent<TabsProps> = ({\n children,\n mode,\n getRootRef,\n sizeX,\n ...restProps\n}: TabsProps) => {\n const platform = usePlatform();\n\n if (platform !== IOS && mode === \"segmented\") {\n mode = \"default\";\n }\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\n getClassName(\"Tabs\", platform),\n `Tabs--${mode}`,\n `Tabs--sizeX-${sizeX}`\n )}\n >\n <div vkuiClass=\"Tabs__in\">\n <TabsModeContext.Provider value={mode}>\n {children}\n </TabsModeContext.Provider>\n </div>\n </div>\n );\n};\n\nTabs.defaultProps = {\n mode: \"default\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Tabs, { sizeX: true });\n"],"file":"Tabs.js"}
@@ -47,6 +47,7 @@ var TabsItem = function TabsItem(_ref) {
47
47
 
48
48
  TabsItem.defaultProps = {
49
49
  selected: false
50
- };
50
+ }; // eslint-disable-next-line import/no-default-export
51
+
51
52
  export default TabsItem;
52
53
  //# sourceMappingURL=TabsItem.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TabsItem/TabsItem.tsx"],"names":["React","getClassName","Tappable","classNames","VKCOM","usePlatform","hasReactNode","TabsModeContext","Headline","Subhead","Text","TabsItem","children","selected","after","restProps","platform","mode","useContext","TypographyComponent","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,UAAT;AACA,SAASC,KAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAAoBC,eAApB;AACA,OAAOC,QAAP;AACA,OAAOC,OAAP;AACA,OAAOC,IAAP;AACA;;AAOA,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,OAKrB;AAAA,MAJnBC,QAImB,QAJnBA,QAImB;AAAA,MAHnBC,QAGmB,QAHnBA,QAGmB;AAAA,MAFnBC,KAEmB,QAFnBA,KAEmB;AAAA,MADhBC,SACgB;;AACnB,MAAMC,QAAQ,GAAGX,WAAW,EAA5B;AACA,MAAMY,IAAuB,GAAGjB,KAAK,CAACkB,UAAN,CAAiBX,eAAjB,CAAhC;AAEA,MAAIY,mBAAmB,GACrBF,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,WAA/B,GAA6CR,OAA7C,GAAuDD,QADzD;;AAGA,MAAIQ,QAAQ,KAAKZ,KAAjB,EAAwB;AACtBe,IAAAA,mBAAmB,GAAGT,IAAtB;AACD;;AAED,SACE,oBAAC,QAAD,eACMK,SADN;AAEE,IAAA,SAAS,EAAEZ,UAAU,CAACF,YAAY,CAAC,UAAD,EAAae,QAAb,CAAb,EAAqC;AACxD,4BAAsBH;AADkC,KAArC,CAFvB;AAKE,IAAA,SAAS,EAAEI,IAAI,KAAK,WALtB;AAME,IAAA,UAAU,EAAC,kBANb;AAOE,IAAA,gBAAgB,EAAEA,IAAI,KAAK,WAAT,GAAuB,SAAvB,GAAmC;AAPvD,MASE,oBAAC,mBAAD;AACE,IAAA,SAAS,EAAC,MADZ;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,MAAM,EAAC;AAHT,KAKGL,QALH,CATF,EAgBGN,YAAY,CAACQ,KAAD,CAAZ,IAAuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CAhB1B,CADF;AAoBD,CApCD;;AAsCAH,QAAQ,CAACS,YAAT,GAAwB;AACtBP,EAAAA,QAAQ,EAAE;AADY,CAAxB;AAIA,eAAeF,QAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { VKCOM } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { TabsProps, TabsModeContext } from \"../Tabs/Tabs\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport Text from \"../Typography/Text/Text\";\nimport \"./TabsItem.css\";\n\nexport interface TabsItemProps extends React.HTMLAttributes<HTMLElement> {\n after?: React.ReactNode;\n selected?: boolean;\n}\n\nconst TabsItem: React.FC<TabsItemProps> = ({\n children,\n selected,\n after,\n ...restProps\n}: TabsItemProps) => {\n const platform = usePlatform();\n const mode: TabsProps[\"mode\"] = React.useContext(TabsModeContext);\n\n let TypographyComponent =\n mode === \"buttons\" || mode === \"segmented\" ? Subhead : Headline;\n\n if (platform === VKCOM) {\n TypographyComponent = Text;\n }\n\n return (\n <Tappable\n {...restProps}\n vkuiClass={classNames(getClassName(\"TabsItem\", platform), {\n \"TabsItem--selected\": selected,\n })}\n hasActive={mode === \"segmented\"}\n activeMode=\"TabsItem--active\"\n focusVisibleMode={mode === \"segmented\" ? \"outside\" : \"inside\"}\n >\n <TypographyComponent\n Component=\"span\"\n vkuiClass=\"TabsItem__in\"\n weight=\"medium\"\n >\n {children}\n </TypographyComponent>\n {hasReactNode(after) && <div vkuiClass=\"TabsItem__after\">{after}</div>}\n </Tappable>\n );\n};\n\nTabsItem.defaultProps = {\n selected: false,\n};\n\nexport default TabsItem;\n"],"file":"TabsItem.js"}
1
+ {"version":3,"sources":["../../../../src/components/TabsItem/TabsItem.tsx"],"names":["React","getClassName","Tappable","classNames","VKCOM","usePlatform","hasReactNode","TabsModeContext","Headline","Subhead","Text","TabsItem","children","selected","after","restProps","platform","mode","useContext","TypographyComponent","defaultProps"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,UAAT;AACA,SAASC,KAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAAoBC,eAApB;AACA,OAAOC,QAAP;AACA,OAAOC,OAAP;AACA,OAAOC,IAAP;AACA;;AAOA,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,OAKrB;AAAA,MAJnBC,QAImB,QAJnBA,QAImB;AAAA,MAHnBC,QAGmB,QAHnBA,QAGmB;AAAA,MAFnBC,KAEmB,QAFnBA,KAEmB;AAAA,MADhBC,SACgB;;AACnB,MAAMC,QAAQ,GAAGX,WAAW,EAA5B;AACA,MAAMY,IAAuB,GAAGjB,KAAK,CAACkB,UAAN,CAAiBX,eAAjB,CAAhC;AAEA,MAAIY,mBAAmB,GACrBF,IAAI,KAAK,SAAT,IAAsBA,IAAI,KAAK,WAA/B,GAA6CR,OAA7C,GAAuDD,QADzD;;AAGA,MAAIQ,QAAQ,KAAKZ,KAAjB,EAAwB;AACtBe,IAAAA,mBAAmB,GAAGT,IAAtB;AACD;;AAED,SACE,oBAAC,QAAD,eACMK,SADN;AAEE,IAAA,SAAS,EAAEZ,UAAU,CAACF,YAAY,CAAC,UAAD,EAAae,QAAb,CAAb,EAAqC;AACxD,4BAAsBH;AADkC,KAArC,CAFvB;AAKE,IAAA,SAAS,EAAEI,IAAI,KAAK,WALtB;AAME,IAAA,UAAU,EAAC,kBANb;AAOE,IAAA,gBAAgB,EAAEA,IAAI,KAAK,WAAT,GAAuB,SAAvB,GAAmC;AAPvD,MASE,oBAAC,mBAAD;AACE,IAAA,SAAS,EAAC,MADZ;AAEE,IAAA,SAAS,EAAC,cAFZ;AAGE,IAAA,MAAM,EAAC;AAHT,KAKGL,QALH,CATF,EAgBGN,YAAY,CAACQ,KAAD,CAAZ,IAAuB;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CAhB1B,CADF;AAoBD,CApCD;;AAsCAH,QAAQ,CAACS,YAAT,GAAwB;AACtBP,EAAAA,QAAQ,EAAE;AADY,CAAxB,C,CAIA;;AACA,eAAeF,QAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { classNames } from \"../../lib/classNames\";\nimport { VKCOM } from \"../../lib/platform\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { TabsProps, TabsModeContext } from \"../Tabs/Tabs\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport Text from \"../Typography/Text/Text\";\nimport \"./TabsItem.css\";\n\nexport interface TabsItemProps extends React.HTMLAttributes<HTMLElement> {\n after?: React.ReactNode;\n selected?: boolean;\n}\n\nconst TabsItem: React.FC<TabsItemProps> = ({\n children,\n selected,\n after,\n ...restProps\n}: TabsItemProps) => {\n const platform = usePlatform();\n const mode: TabsProps[\"mode\"] = React.useContext(TabsModeContext);\n\n let TypographyComponent =\n mode === \"buttons\" || mode === \"segmented\" ? Subhead : Headline;\n\n if (platform === VKCOM) {\n TypographyComponent = Text;\n }\n\n return (\n <Tappable\n {...restProps}\n vkuiClass={classNames(getClassName(\"TabsItem\", platform), {\n \"TabsItem--selected\": selected,\n })}\n hasActive={mode === \"segmented\"}\n activeMode=\"TabsItem--active\"\n focusVisibleMode={mode === \"segmented\" ? \"outside\" : \"inside\"}\n >\n <TypographyComponent\n Component=\"span\"\n vkuiClass=\"TabsItem__in\"\n weight=\"medium\"\n >\n {children}\n </TypographyComponent>\n {hasReactNode(after) && <div vkuiClass=\"TabsItem__after\">{after}</div>}\n </Tappable>\n );\n};\n\nTabsItem.defaultProps = {\n selected: false,\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default TabsItem;\n"],"file":"TabsItem.js"}
@@ -1 +1 @@
1
- .vkuiTappable{position:relative;cursor:pointer}.vkuiTappable[disabled],.vkuiTappable[aria-disabled=true]{cursor:default}.vkuiTappable--focus-visible{outline:0}.vkuiTappable--active-background.vkuiTappable--active-background.vkuiTappable--active-background{background:rgba(0,0,0,.08);background:var(--background_highlighted)}.vkuiTappable--active-opacity.vkuiTappable--active-opacity.vkuiTappable--active-opacity{opacity:.7}.vkuiTappable__hoverShadow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit}.vkuiTappable--hover-background>.vkuiTappable__hoverShadow{background:rgba(0,0,0,.04);background:var(--background_hover)}.vkuiTappable--hover-opacity{opacity:.8}.vkuiTappable--mouse{transition:opacity .15s ease-out}.vkuiTappable--mouse .vkuiTappable__hoverShadow{transition:background-color .15s ease-out}.vkuiTappable--ios{position:relative;border-radius:10px;transition:background-color .15s ease-out}.vkuiTappable--ios.vkuiTappable--active-background{transition:none}.vkuiTappable--android{position:relative;transition:background-color .15s ease-out;border-radius:8px}.vkuiTappable--android .vkuiTappable__waves{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit;will-change:transform}.vkuiTappable--android .vkuiTappable__wave{position:absolute;top:0;left:0;width:24px;height:24px;margin:-12px 0 0 -12px;opacity:0;content:"";border-radius:50%;background:rgba(127,127,127,.1);-webkit-animation:vkui-animation-wave .3s cubic-bezier(.4,0,.2,1);animation:vkui-animation-wave .3s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-animation-wave .3s var(--android-easing);animation:vkui-animation-wave .3s var(--android-easing)}.vkuiTappable--vkcom{transition:background-color .15s ease-out;border-radius:8px}.vkuiTappable--sizeX-compact{border-radius:0}@-webkit-keyframes vkui-animation-wave{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}30%{opacity:1}to{-webkit-transform:scale(8);transform:scale(8);opacity:0}}@keyframes vkui-animation-wave{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}30%{opacity:1}to{-webkit-transform:scale(8);transform:scale(8);opacity:0}}
1
+ .vkuiTappable{position:relative;cursor:pointer}.vkuiTappable[disabled],.vkuiTappable[aria-disabled=true]{cursor:default}.vkuiTappable--focus-visible{outline:0}.vkuiTappable--active-background.vkuiTappable--active-background.vkuiTappable--active-background{background:rgba(0,0,0,.08);background:var(--background_highlighted)}.vkuiTappable--active-opacity.vkuiTappable--active-opacity.vkuiTappable--active-opacity{opacity:.7}.vkuiTappable__hoverShadow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit}.vkuiTappable--hover-background>.vkuiTappable__hoverShadow{background:rgba(0,0,0,.04);background:var(--background_hover)}.vkuiTappable--hover-opacity{opacity:.8}.vkuiTappable--mouse{transition:opacity .15s ease-out}.vkuiTappable--mouse .vkuiTappable__hoverShadow{transition:background-color .15s ease-out}.vkuiTappable--ios{position:relative;border-radius:10px;transition:background-color .15s ease-out}.vkuiTappable--ios.vkuiTappable--active-background{transition:none}.vkuiTappable--android{position:relative;transition:background-color .15s ease-out;border-radius:8px}.vkuiTappable--android .vkuiTappable__waves{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden;border-radius:inherit;will-change:transform}.vkuiTappable--android .vkuiTappable__wave{position:absolute;top:0;left:0;width:24px;height:24px;margin:-12px 0 0-12px;opacity:0;content:"";border-radius:50%;background:rgba(127,127,127,.1);-webkit-animation:vkui-animation-wave .3s cubic-bezier(.4,0,.2,1);animation:vkui-animation-wave .3s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-animation-wave .3s var(--android-easing);animation:vkui-animation-wave .3s var(--android-easing)}.vkuiTappable--vkcom{transition:background-color .15s ease-out;border-radius:8px}.vkuiTappable--sizeX-compact{border-radius:0}@-webkit-keyframes vkui-animation-wave{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}30%{opacity:1}to{-webkit-transform:scale(8);transform:scale(8);opacity:0}}@keyframes vkui-animation-wave{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}30%{opacity:1}to{-webkit-transform:scale(8);transform:scale(8);opacity:0}}
@@ -209,8 +209,10 @@ var Tappable = function Tappable(_ref) {
209
209
 
210
210
  function onKeyDown(e) {
211
211
  if (isCustomElement && shouldTriggerClickOnEnterOrSpace(e)) {
212
+ var _containerRef$current;
213
+
212
214
  e.preventDefault();
213
- containerRef.current.click();
215
+ (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.click();
214
216
  }
215
217
  }
216
218
 
@@ -228,8 +230,8 @@ var Tappable = function Tappable(_ref) {
228
230
  top = _getOffsetRect.top,
229
231
  left = _getOffsetRect.left;
230
232
 
231
- var x = coordX(originalEvent) - left;
232
- var y = coordY(originalEvent) - top;
233
+ var x = coordX(originalEvent) - (left !== null && left !== void 0 ? left : 0);
234
+ var y = coordY(originalEvent) - (top !== null && top !== void 0 ? top : 0);
233
235
  setClicks([].concat(_toConsumableArray(clicks), [{
234
236
  x: x,
235
237
  y: y,
@@ -288,7 +290,7 @@ var Tappable = function Tappable(_ref) {
288
290
  type: Component === "button" ? "button" : undefined,
289
291
  tabIndex: isCustomElement && !props.disabled ? 0 : undefined,
290
292
  role: isCustomElement ? role : undefined,
291
- "aria-disabled": isCustomElement ? props.disabled : null,
293
+ "aria-disabled": isCustomElement ? props.disabled : undefined,
292
294
  stopPropagation: stopPropagation && !insideTouchRoot && !props.disabled
293
295
  }, props, {
294
296
  slideThreshold: 20,
@@ -318,7 +320,8 @@ var Tappable = function Tappable(_ref) {
318
320
  }), !props.disabled && isPresetFocusVisibleMode && createScopedElement(FocusVisible, {
319
321
  mode: focusVisibleMode
320
322
  }));
321
- };
323
+ }; // eslint-disable-next-line import/no-default-export
324
+
322
325
 
323
326
  export default withAdaptivity(Tappable, {
324
327
  sizeX: true,
@@ -333,7 +336,7 @@ function Wave(_ref5) {
333
336
  var timeout = useTimeout(onClear, 225);
334
337
  React.useEffect(function () {
335
338
  return timeout.set();
336
- }, []);
339
+ }, [timeout]);
337
340
  return createScopedElement("span", {
338
341
  vkuiClass: "Tappable__wave",
339
342
  style: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Tappable/Tappable.tsx"],"names":["React","mitt","noop","Touch","TouchRootContext","classNames","getClassName","ANDROID","getOffsetRect","coordX","coordY","withAdaptivity","shouldTriggerClickOnEnterOrSpace","useIsomorphicLayoutEffect","FocusVisible","useTimeout","useExternRef","usePlatform","useFocusVisible","callMultiple","ACTIVE_DELAY","ACTIVE_EFFECT_DELAY","activeBus","TapState","none","pending","active","exiting","TappableContext","createContext","onHoverChange","useActivity","hasActive","stopDelay","id","useMemo","Math","round","random","toString","useState","activity","setActivity","_stop","start","delayStart","activeTimeout","stopTimeout","set","clear","emit","onActiveChange","activeId","on","off","stop","delay","Tappable","children","Component","onClick","_onKeyDown","onKeyDown","activeEffectDelay","stopPropagation","getRootRef","sizeX","hasMouse","deviceHasHover","hasHover","_hasHover","hoverMode","_hasActive","activeMode","focusVisibleMode","props","href","useContext","insideTouchRoot","platform","focusVisible","onBlur","onFocus","clicks","setClicks","childHover","setChildHover","_hovered","setHovered","hovered","disabled","isCustomElement","contentEditable","isPresetHoverMode","includes","isPresetActiveMode","isPresetFocusVisibleMode","containerRef","childContext","useRef","current","e","preventDefault","click","onStart","originalEvent","touches","length","top","left","x","y","Date","now","onMove","isSlide","onEnd","duration","activeDuraion","classes","handlers","role","undefined","map","wave","filter","c","Wave","onClear","timeout","useEffect"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport mitt from \"mitt\";\nimport { noop } from \"@vkontakte/vkjs\";\nimport { Touch, TouchEvent, TouchProps } from \"../Touch/Touch\";\nimport TouchRootContext from \"../Touch/TouchContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ANDROID } from \"../../lib/platform\";\nimport { getOffsetRect } from \"../../lib/offset\";\nimport { coordX, coordY } from \"../../lib/touch\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { shouldTriggerClickOnEnterOrSpace } from \"../../lib/accessibility\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { FocusVisible, FocusVisibleMode } from \"../FocusVisible/FocusVisible\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useFocusVisible } from \"../../hooks/useFocusVisible\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./Tappable.css\";\n\nexport interface TappableProps\n extends Omit<\n React.AllHTMLAttributes<HTMLElement>,\n | \"onTouchStart\"\n | \"onTouchMove\"\n | \"onTouchEnd\"\n | \"onTouchCancel\"\n | \"onMouseDown\"\n | \"onMouseMove\"\n | \"onMouseUp\"\n | \"onMouseLeave\"\n >,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n HasComponent,\n Pick<TouchProps, \"onStart\" | \"onEnd\" | \"onMove\"> {\n /**\n * Длительность показа active-состояния\n */\n activeEffectDelay?: number;\n stopPropagation?: boolean;\n /**\n * Указывает, должен ли компонент реагировать на hover-состояние\n */\n hasHover?: boolean;\n /**\n * Указывает, должен ли компонент реагировать на active-состояние\n */\n hasActive?: boolean;\n /**\n * Стиль подсветки active-состояния. Если передать произвольную строку, она добавится как css-класс во время active\n */\n activeMode?: \"opacity\" | \"background\" | string;\n /**\n * Стиль подсветки hover-состояния. Если передать произвольную строку, она добавится как css-класс во время hover\n */\n hoverMode?: \"opacity\" | \"background\" | string;\n /**\n * Стиль аутлайна focus visible. Если передать произвольную строку, она добавится как css-класс во время focus-visible\n */\n focusVisibleMode?: FocusVisibleMode | string;\n}\n\ninterface Wave {\n x: number;\n y: number;\n id: string;\n}\n\nexport interface RootComponentProps extends TouchProps {\n ref?: React.Ref<HTMLElement>;\n}\n\nexport const ACTIVE_DELAY = 70;\nexport const ACTIVE_EFFECT_DELAY = 600;\n\nconst activeBus = mitt<{ active: string }>();\nconst TapState = { none: 0, pending: 1, active: 2, exiting: 3 } as const;\n\ntype TappableContextInterface = { onHoverChange: (s: boolean) => void };\nconst TappableContext = React.createContext<TappableContextInterface>({\n onHoverChange: noop,\n});\n\nfunction useActivity(hasActive: boolean, stopDelay: number) {\n const id = React.useMemo(\n () => Math.round(Math.random() * 1e8).toString(16),\n []\n );\n\n const [activity, setActivity] = React.useState<\n typeof TapState[keyof typeof TapState]\n >(TapState.none);\n const _stop = () => setActivity(TapState.none);\n const start = () => hasActive && setActivity(TapState.active);\n const delayStart = () => {\n hasActive && setActivity(TapState.pending);\n };\n\n const activeTimeout = useTimeout(start, ACTIVE_DELAY);\n const stopTimeout = useTimeout(_stop, stopDelay);\n\n useIsomorphicLayoutEffect(() => {\n if (activity === TapState.pending) {\n activeTimeout.set();\n return activeTimeout.clear;\n }\n if (activity === TapState.exiting) {\n return stopTimeout.clear;\n }\n if (activity === TapState.active) {\n activeBus.emit(\"active\", id);\n }\n return noop;\n }, [activity]);\n\n useIsomorphicLayoutEffect(() => {\n if (activity === TapState.none) {\n return noop;\n }\n const onActiveChange = (activeId: string) => {\n activeId !== id && _stop();\n };\n activeBus.on(\"active\", onActiveChange);\n return () => activeBus.off(\"active\", onActiveChange);\n }, [activity === TapState.none]);\n\n useIsomorphicLayoutEffect(() => {\n !hasActive && _stop();\n }, [hasActive]);\n\n const stop = (delay?: number) => {\n if (delay) {\n setActivity(TapState.exiting);\n return stopTimeout.set(delay);\n }\n _stop();\n };\n\n return [activity, { delayStart, start, stop }] as const;\n}\n\nconst Tappable: React.FC<TappableProps> = ({\n children,\n Component,\n onClick,\n onKeyDown: _onKeyDown,\n activeEffectDelay = ACTIVE_EFFECT_DELAY,\n stopPropagation = false,\n getRootRef,\n sizeX,\n hasMouse,\n deviceHasHover,\n hasHover: _hasHover = true,\n hoverMode = \"background\",\n hasActive: _hasActive = true,\n activeMode = \"background\",\n focusVisibleMode = \"inside\",\n ...props\n}: TappableProps) => {\n Component = Component || ((props.href ? \"a\" : \"div\") as React.ElementType);\n\n const { onHoverChange } = React.useContext(TappableContext);\n const insideTouchRoot = React.useContext(TouchRootContext);\n const platform = usePlatform();\n const { focusVisible, onBlur, onFocus } = useFocusVisible();\n\n const [clicks, setClicks] = React.useState<Wave[]>([]);\n const [childHover, setChildHover] = React.useState(false);\n const [_hovered, setHovered] = React.useState(false);\n\n const hovered = _hovered && !props.disabled;\n const hasActive = _hasActive && !childHover && !props.disabled;\n const hasHover = deviceHasHover && _hasHover && !childHover;\n const isCustomElement =\n Component !== \"a\" && Component !== \"button\" && !props.contentEditable;\n const isPresetHoverMode = [\"opacity\", \"background\"].includes(hoverMode);\n const isPresetActiveMode = [\"opacity\", \"background\"].includes(activeMode);\n const isPresetFocusVisibleMode = [\"inside\", \"outside\"].includes(\n focusVisibleMode\n );\n\n const [activity, { start, stop, delayStart }] = useActivity(\n hasActive,\n activeEffectDelay\n );\n const active = activity === TapState.active || activity === TapState.exiting;\n\n const containerRef = useExternRef(getRootRef);\n\n // hover propagation\n const childContext = React.useRef({ onHoverChange: setChildHover }).current;\n useIsomorphicLayoutEffect(() => {\n if (!hovered) {\n return noop;\n }\n onHoverChange(true);\n return () => onHoverChange(false);\n }, [hovered]);\n\n /*\n * [a11y]\n * Обрабатывает событие onkeydown\n * для кастомных доступных элементов:\n * - role=\"link\" (активация по Enter)\n * - role=\"button\" (активация по Space и Enter)\n */\n function onKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (isCustomElement && shouldTriggerClickOnEnterOrSpace(e)) {\n e.preventDefault();\n containerRef.current.click();\n }\n }\n\n function onStart({ originalEvent }: TouchEvent) {\n if (hasActive) {\n if (originalEvent.touches && originalEvent.touches.length > 1) {\n // r сожалению я так и не понял, что это делает и можно ли упихнуть его в Touch\n return stop();\n }\n\n if (platform === ANDROID) {\n const { top, left } = getOffsetRect(containerRef.current);\n const x = coordX(originalEvent) - left;\n const y = coordY(originalEvent) - top;\n setClicks([...clicks, { x, y, id: Date.now().toString() }]);\n }\n\n delayStart();\n }\n }\n\n function onMove({ isSlide }: TouchEvent) {\n if (isSlide) {\n stop();\n }\n }\n\n function onEnd({ duration }: TouchEvent) {\n if (activity === TapState.none) {\n return;\n }\n if (activity === TapState.pending) {\n // активировать при коротком тапе\n start();\n }\n\n // отключить без задержки при длинном тапе\n const activeDuraion = duration - ACTIVE_DELAY;\n stop(activeDuraion >= 100 ? 0 : activeEffectDelay - activeDuraion);\n }\n\n const classes = classNames(\n getClassName(\"Tappable\", platform),\n `Tappable--sizeX-${sizeX}`,\n hasHover && hovered && !isPresetHoverMode && hoverMode,\n hasActive && active && !isPresetActiveMode && activeMode,\n focusVisible && !isPresetFocusVisibleMode && focusVisibleMode,\n {\n \"Tappable--active\": hasActive && active,\n \"Tappable--mouse\": hasMouse,\n [`Tappable--hover-${hoverMode}`]:\n hasHover && hovered && isPresetHoverMode,\n [`Tappable--active-${activeMode}`]:\n hasActive && active && isPresetActiveMode,\n \"Tappable--focus-visible\": focusVisible,\n }\n );\n\n const handlers: RootComponentProps = {\n onStart: callMultiple(onStart, props.onStart),\n onMove: callMultiple(onMove, props.onMove),\n onEnd: callMultiple(onEnd, props.onEnd),\n onClick,\n onKeyDown: callMultiple(onKeyDown, _onKeyDown),\n };\n const role = props.href ? \"link\" : \"button\";\n\n return (\n <Touch\n onEnter={() => setHovered(true)}\n onLeave={() => setHovered(false)}\n type={Component === \"button\" ? \"button\" : undefined}\n tabIndex={isCustomElement && !props.disabled ? 0 : undefined}\n role={isCustomElement ? role : undefined}\n aria-disabled={isCustomElement ? props.disabled : null}\n stopPropagation={stopPropagation && !insideTouchRoot && !props.disabled}\n {...props}\n slideThreshold={20}\n usePointerHover\n vkuiClass={classes}\n Component={Component}\n getRootRef={containerRef}\n onBlur={callMultiple(onBlur, props.onBlur)}\n onFocus={callMultiple(onFocus, props.onFocus)}\n {...(props.disabled ? {} : handlers)}\n >\n <TappableContext.Provider value={childContext}>\n {children}\n </TappableContext.Provider>\n {platform === ANDROID &&\n !hasMouse &&\n hasActive &&\n activeMode === \"background\" && (\n <span aria-hidden=\"true\" vkuiClass=\"Tappable__waves\">\n {clicks.map((wave) => (\n <Wave\n {...wave}\n key={wave.id}\n onClear={() =>\n setClicks(clicks.filter((c) => c.id !== wave.id))\n }\n />\n ))}\n </span>\n )}\n {hasHover && hoverMode === \"background\" && (\n <span aria-hidden=\"true\" vkuiClass=\"Tappable__hoverShadow\" />\n )}\n {!props.disabled && isPresetFocusVisibleMode && (\n <FocusVisible mode={focusVisibleMode as FocusVisibleMode} />\n )}\n </Touch>\n );\n};\n\nexport default withAdaptivity(Tappable, {\n sizeX: true,\n hasMouse: true,\n deviceHasHover: true,\n});\n\nfunction Wave({ x, y, onClear }: Wave & { onClear: VoidFunction }) {\n const timeout = useTimeout(onClear, 225);\n React.useEffect(() => timeout.set(), []);\n return <span vkuiClass=\"Tappable__wave\" style={{ top: y, left: x }} />;\n}\n"],"file":"Tappable.js"}
1
+ {"version":3,"sources":["../../../../src/components/Tappable/Tappable.tsx"],"names":["React","mitt","noop","Touch","TouchRootContext","classNames","getClassName","ANDROID","getOffsetRect","coordX","coordY","withAdaptivity","shouldTriggerClickOnEnterOrSpace","useIsomorphicLayoutEffect","FocusVisible","useTimeout","useExternRef","usePlatform","useFocusVisible","callMultiple","ACTIVE_DELAY","ACTIVE_EFFECT_DELAY","activeBus","TapState","none","pending","active","exiting","TappableContext","createContext","onHoverChange","useActivity","hasActive","stopDelay","id","useMemo","Math","round","random","toString","useState","activity","setActivity","_stop","start","delayStart","activeTimeout","stopTimeout","set","clear","emit","onActiveChange","activeId","on","off","stop","delay","Tappable","children","Component","onClick","_onKeyDown","onKeyDown","activeEffectDelay","stopPropagation","getRootRef","sizeX","hasMouse","deviceHasHover","hasHover","_hasHover","hoverMode","_hasActive","activeMode","focusVisibleMode","props","href","useContext","insideTouchRoot","platform","focusVisible","onBlur","onFocus","clicks","setClicks","childHover","setChildHover","_hovered","setHovered","hovered","disabled","isCustomElement","contentEditable","isPresetHoverMode","includes","isPresetActiveMode","isPresetFocusVisibleMode","containerRef","childContext","useRef","current","e","preventDefault","click","onStart","originalEvent","touches","length","top","left","x","y","Date","now","onMove","isSlide","onEnd","duration","activeDuraion","classes","handlers","role","undefined","map","wave","filter","c","Wave","onClear","timeout","useEffect"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport mitt from \"mitt\";\nimport { noop } from \"@vkontakte/vkjs\";\nimport { Touch, TouchEvent, TouchProps } from \"../Touch/Touch\";\nimport TouchRootContext from \"../Touch/TouchContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ANDROID } from \"../../lib/platform\";\nimport { getOffsetRect } from \"../../lib/offset\";\nimport { coordX, coordY } from \"../../lib/touch\";\nimport { HasComponent, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { shouldTriggerClickOnEnterOrSpace } from \"../../lib/accessibility\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { FocusVisible, FocusVisibleMode } from \"../FocusVisible/FocusVisible\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useFocusVisible } from \"../../hooks/useFocusVisible\";\nimport { callMultiple } from \"../../lib/callMultiple\";\nimport \"./Tappable.css\";\n\nexport interface TappableProps\n extends Omit<\n React.AllHTMLAttributes<HTMLElement>,\n | \"onTouchStart\"\n | \"onTouchMove\"\n | \"onTouchEnd\"\n | \"onTouchCancel\"\n | \"onMouseDown\"\n | \"onMouseMove\"\n | \"onMouseUp\"\n | \"onMouseLeave\"\n >,\n HasRootRef<HTMLElement>,\n AdaptivityProps,\n HasComponent,\n Pick<TouchProps, \"onStart\" | \"onEnd\" | \"onMove\"> {\n /**\n * Длительность показа active-состояния\n */\n activeEffectDelay?: number;\n stopPropagation?: boolean;\n /**\n * Указывает, должен ли компонент реагировать на hover-состояние\n */\n hasHover?: boolean;\n /**\n * Указывает, должен ли компонент реагировать на active-состояние\n */\n hasActive?: boolean;\n /**\n * Стиль подсветки active-состояния. Если передать произвольную строку, она добавится как css-класс во время active\n */\n activeMode?: \"opacity\" | \"background\" | string;\n /**\n * Стиль подсветки hover-состояния. Если передать произвольную строку, она добавится как css-класс во время hover\n */\n hoverMode?: \"opacity\" | \"background\" | string;\n /**\n * Стиль аутлайна focus visible. Если передать произвольную строку, она добавится как css-класс во время focus-visible\n */\n focusVisibleMode?: FocusVisibleMode | string;\n}\n\ninterface Wave {\n x: number;\n y: number;\n id: string;\n}\n\nexport interface RootComponentProps extends TouchProps {\n ref?: React.Ref<HTMLElement>;\n}\n\nexport const ACTIVE_DELAY = 70;\nexport const ACTIVE_EFFECT_DELAY = 600;\n\nconst activeBus = mitt<{ active: string }>();\nconst TapState = { none: 0, pending: 1, active: 2, exiting: 3 } as const;\n\ntype TappableContextInterface = { onHoverChange: (s: boolean) => void };\nconst TappableContext = React.createContext<TappableContextInterface>({\n onHoverChange: noop,\n});\n\nfunction useActivity(hasActive: boolean, stopDelay: number) {\n const id = React.useMemo(\n () => Math.round(Math.random() * 1e8).toString(16),\n []\n );\n\n const [activity, setActivity] = React.useState<\n typeof TapState[keyof typeof TapState]\n >(TapState.none);\n const _stop = () => setActivity(TapState.none);\n const start = () => hasActive && setActivity(TapState.active);\n const delayStart = () => {\n hasActive && setActivity(TapState.pending);\n };\n\n const activeTimeout = useTimeout(start, ACTIVE_DELAY);\n const stopTimeout = useTimeout(_stop, stopDelay);\n\n useIsomorphicLayoutEffect(() => {\n if (activity === TapState.pending) {\n activeTimeout.set();\n return activeTimeout.clear;\n }\n if (activity === TapState.exiting) {\n return stopTimeout.clear;\n }\n if (activity === TapState.active) {\n activeBus.emit(\"active\", id);\n }\n return noop;\n }, [activity]);\n\n useIsomorphicLayoutEffect(() => {\n if (activity === TapState.none) {\n return noop;\n }\n const onActiveChange = (activeId: string) => {\n activeId !== id && _stop();\n };\n activeBus.on(\"active\", onActiveChange);\n return () => activeBus.off(\"active\", onActiveChange);\n }, [activity === TapState.none]);\n\n useIsomorphicLayoutEffect(() => {\n !hasActive && _stop();\n }, [hasActive]);\n\n const stop = (delay?: number) => {\n if (delay) {\n setActivity(TapState.exiting);\n return stopTimeout.set(delay);\n }\n _stop();\n };\n\n return [activity, { delayStart, start, stop }] as const;\n}\n\nconst Tappable: React.FC<TappableProps> = ({\n children,\n Component,\n onClick,\n onKeyDown: _onKeyDown,\n activeEffectDelay = ACTIVE_EFFECT_DELAY,\n stopPropagation = false,\n getRootRef,\n sizeX,\n hasMouse,\n deviceHasHover,\n hasHover: _hasHover = true,\n hoverMode = \"background\",\n hasActive: _hasActive = true,\n activeMode = \"background\",\n focusVisibleMode = \"inside\",\n ...props\n}: TappableProps) => {\n Component = Component || ((props.href ? \"a\" : \"div\") as React.ElementType);\n\n const { onHoverChange } = React.useContext(TappableContext);\n const insideTouchRoot = React.useContext(TouchRootContext);\n const platform = usePlatform();\n const { focusVisible, onBlur, onFocus } = useFocusVisible();\n\n const [clicks, setClicks] = React.useState<Wave[]>([]);\n const [childHover, setChildHover] = React.useState(false);\n const [_hovered, setHovered] = React.useState(false);\n\n const hovered = _hovered && !props.disabled;\n const hasActive = _hasActive && !childHover && !props.disabled;\n const hasHover = deviceHasHover && _hasHover && !childHover;\n const isCustomElement =\n Component !== \"a\" && Component !== \"button\" && !props.contentEditable;\n const isPresetHoverMode = [\"opacity\", \"background\"].includes(hoverMode);\n const isPresetActiveMode = [\"opacity\", \"background\"].includes(activeMode);\n const isPresetFocusVisibleMode = [\"inside\", \"outside\"].includes(\n focusVisibleMode\n );\n\n const [activity, { start, stop, delayStart }] = useActivity(\n hasActive,\n activeEffectDelay\n );\n const active = activity === TapState.active || activity === TapState.exiting;\n\n const containerRef = useExternRef(getRootRef);\n\n // hover propagation\n const childContext = React.useRef({ onHoverChange: setChildHover }).current;\n useIsomorphicLayoutEffect(() => {\n if (!hovered) {\n return noop;\n }\n onHoverChange(true);\n return () => onHoverChange(false);\n }, [hovered]);\n\n /*\n * [a11y]\n * Обрабатывает событие onkeydown\n * для кастомных доступных элементов:\n * - role=\"link\" (активация по Enter)\n * - role=\"button\" (активация по Space и Enter)\n */\n function onKeyDown(e: React.KeyboardEvent<HTMLElement>) {\n if (isCustomElement && shouldTriggerClickOnEnterOrSpace(e)) {\n e.preventDefault();\n containerRef.current?.click();\n }\n }\n\n function onStart({ originalEvent }: TouchEvent) {\n if (hasActive) {\n if (originalEvent.touches && originalEvent.touches.length > 1) {\n // r сожалению я так и не понял, что это делает и можно ли упихнуть его в Touch\n return stop();\n }\n\n if (platform === ANDROID) {\n const { top, left } = getOffsetRect(containerRef.current);\n const x = coordX(originalEvent) - (left ?? 0);\n const y = coordY(originalEvent) - (top ?? 0);\n setClicks([...clicks, { x, y, id: Date.now().toString() }]);\n }\n\n delayStart();\n }\n }\n\n function onMove({ isSlide }: TouchEvent) {\n if (isSlide) {\n stop();\n }\n }\n\n function onEnd({ duration }: TouchEvent) {\n if (activity === TapState.none) {\n return;\n }\n if (activity === TapState.pending) {\n // активировать при коротком тапе\n start();\n }\n\n // отключить без задержки при длинном тапе\n const activeDuraion = duration - ACTIVE_DELAY;\n stop(activeDuraion >= 100 ? 0 : activeEffectDelay - activeDuraion);\n }\n\n const classes = classNames(\n getClassName(\"Tappable\", platform),\n `Tappable--sizeX-${sizeX}`,\n hasHover && hovered && !isPresetHoverMode && hoverMode,\n hasActive && active && !isPresetActiveMode && activeMode,\n focusVisible && !isPresetFocusVisibleMode && focusVisibleMode,\n {\n \"Tappable--active\": hasActive && active,\n \"Tappable--mouse\": hasMouse,\n [`Tappable--hover-${hoverMode}`]:\n hasHover && hovered && isPresetHoverMode,\n [`Tappable--active-${activeMode}`]:\n hasActive && active && isPresetActiveMode,\n \"Tappable--focus-visible\": focusVisible,\n }\n );\n\n const handlers: RootComponentProps = {\n onStart: callMultiple(onStart, props.onStart),\n onMove: callMultiple(onMove, props.onMove),\n onEnd: callMultiple(onEnd, props.onEnd),\n onClick,\n onKeyDown: callMultiple(onKeyDown, _onKeyDown),\n };\n const role = props.href ? \"link\" : \"button\";\n\n return (\n <Touch\n onEnter={() => setHovered(true)}\n onLeave={() => setHovered(false)}\n type={Component === \"button\" ? \"button\" : undefined}\n tabIndex={isCustomElement && !props.disabled ? 0 : undefined}\n role={isCustomElement ? role : undefined}\n aria-disabled={isCustomElement ? props.disabled : undefined}\n stopPropagation={stopPropagation && !insideTouchRoot && !props.disabled}\n {...props}\n slideThreshold={20}\n usePointerHover\n vkuiClass={classes}\n Component={Component}\n getRootRef={containerRef}\n onBlur={callMultiple(onBlur, props.onBlur)}\n onFocus={callMultiple(onFocus, props.onFocus)}\n {...(props.disabled ? {} : handlers)}\n >\n <TappableContext.Provider value={childContext}>\n {children}\n </TappableContext.Provider>\n {platform === ANDROID &&\n !hasMouse &&\n hasActive &&\n activeMode === \"background\" && (\n <span aria-hidden=\"true\" vkuiClass=\"Tappable__waves\">\n {clicks.map((wave) => (\n <Wave\n {...wave}\n key={wave.id}\n onClear={() =>\n setClicks(clicks.filter((c) => c.id !== wave.id))\n }\n />\n ))}\n </span>\n )}\n {hasHover && hoverMode === \"background\" && (\n <span aria-hidden=\"true\" vkuiClass=\"Tappable__hoverShadow\" />\n )}\n {!props.disabled && isPresetFocusVisibleMode && (\n <FocusVisible mode={focusVisibleMode as FocusVisibleMode} />\n )}\n </Touch>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Tappable, {\n sizeX: true,\n hasMouse: true,\n deviceHasHover: true,\n});\n\nfunction Wave({ x, y, onClear }: Wave & { onClear: VoidFunction }) {\n const timeout = useTimeout(onClear, 225);\n React.useEffect(() => timeout.set(), [timeout]);\n return <span vkuiClass=\"Tappable__wave\" style={{ top: y, left: x }} />;\n}\n"],"file":"Tappable.js"}
@@ -9,9 +9,7 @@ import { usePlatform } from "../../hooks/usePlatform";
9
9
  import { hasReactNode } from "../../lib/utils";
10
10
  import Subhead from "../Typography/Subhead/Subhead";
11
11
  import { prefixClass } from "../../lib/prefixClass";
12
- import "./TextTooltip.css"; // Приходится избегать экстендов от HoverPopperProps и PopperProps, потому что react-docgen не умеет в Omit.
13
- // Ждём либо фикса react-docgen (что вряд ли), либо переезда на react-docgen-typescript, где такой проблемы нет.
14
-
12
+ import "./TextTooltip.css";
15
13
  export var TextTooltip = function TextTooltip(_ref) {
16
14
  var children = _ref.children,
17
15
  text = _ref.text,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/TextTooltip/TextTooltip.tsx"],"names":["React","HoverPopper","getClassName","usePlatform","hasReactNode","Subhead","prefixClass","TextTooltip","children","text","header","popperProps","platform"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AAEA,OAAOC,OAAP;AACA,SAASC,WAAT;AACA,2B,CAEA;AACA;;AA6CA,OAAO,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAK/B;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,IAGsB,QAHtBA,IAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,WACmB;;AACtB,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;AAEA,SACE,oBAAC,WAAD;AACE,IAAA,SAAS,EAAED,YAAY,CAAC,aAAD,EAAgBU,QAAhB,CADzB;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,cAAc,EAAEN,WAAW,CAAC,oBAAD,CAH7B;AAIE,IAAA,OAAO,EACL,oBAAC,KAAD,CAAO,QAAP,QACGF,YAAY,CAACM,MAAD,CAAZ,IACC,oBAAC,OAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,MAAM,EAAC,QAFT;AAGE,MAAA,SAAS,EAAC;AAHZ,OAKGA,MALH,CAFJ,EAUGN,YAAY,CAACK,IAAD,CAAZ,IACC,oBAAC,OAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,MAAM,EAAC,SAFT;AAGE,MAAA,SAAS,EAAC;AAHZ,OAKGA,IALH,CAXJ;AALJ,KA0BME,WA1BN,GA4BGH,QA5BH,CADF;AAgCD,CAxCM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper } from \"../HoverPopper/HoverPopper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Placement } from \"../Popper/Popper\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./TextTooltip.css\";\n\n// Приходится избегать экстендов от HoverPopperProps и PopperProps, потому что react-docgen не умеет в Omit.\n// Ждём либо фикса react-docgen (что вряд ли), либо переезда на react-docgen-typescript, где такой проблемы нет.\nexport interface TextTooltipProps {\n /**\n * Если передан, то тултип будет показыван/скрыт в зависимости от значения свойства\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости тултипа\n */\n onShownChange?: (shown: boolean) => void;\n /**\n * Количество миллисекунд, после которых произойдет показ дропдауна\n */\n showDelay?: number;\n /**\n * Количество миллисекунд, после которых произойдет скрытие дропдауна\n */\n hideDelay?: number;\n /**\n * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента\n */\n children?: React.ReactElement;\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: Placement;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n onPlacementChange?: (data: { placement?: Placement }) => void;\n /**\n * Текст тултипа\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа\n */\n header?: React.ReactNode;\n}\n\nexport const TextTooltip: React.FC<TextTooltipProps> = ({\n children,\n text,\n header,\n ...popperProps\n}: TextTooltipProps) => {\n const platform = usePlatform();\n\n return (\n <HoverPopper\n vkuiClass={getClassName(\"TextTooltip\", platform)}\n arrow\n arrowClassName={prefixClass(\"TextTooltip__arrow\")}\n content={\n <React.Fragment>\n {hasReactNode(header) && (\n <Subhead\n Component=\"span\"\n weight=\"medium\"\n vkuiClass=\"TextTooltip__header\"\n >\n {header}\n </Subhead>\n )}\n {hasReactNode(text) && (\n <Subhead\n Component=\"span\"\n weight=\"regular\"\n vkuiClass=\"TextTooltip__text\"\n >\n {text}\n </Subhead>\n )}\n </React.Fragment>\n }\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"TextTooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/TextTooltip/TextTooltip.tsx"],"names":["React","HoverPopper","getClassName","usePlatform","hasReactNode","Subhead","prefixClass","TextTooltip","children","text","header","popperProps","platform"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,OAAOC,OAAP;AACA,SAASC,WAAT;AACA;AAcA,OAAO,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAK/B;AAAA,MAJtBC,QAIsB,QAJtBA,QAIsB;AAAA,MAHtBC,IAGsB,QAHtBA,IAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,WACmB;;AACtB,MAAMC,QAAQ,GAAGT,WAAW,EAA5B;AAEA,SACE,oBAAC,WAAD;AACE,IAAA,SAAS,EAAED,YAAY,CAAC,aAAD,EAAgBU,QAAhB,CADzB;AAEE,IAAA,KAAK,MAFP;AAGE,IAAA,cAAc,EAAEN,WAAW,CAAC,oBAAD,CAH7B;AAIE,IAAA,OAAO,EACL,oBAAC,KAAD,CAAO,QAAP,QACGF,YAAY,CAACM,MAAD,CAAZ,IACC,oBAAC,OAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,MAAM,EAAC,QAFT;AAGE,MAAA,SAAS,EAAC;AAHZ,OAKGA,MALH,CAFJ,EAUGN,YAAY,CAACK,IAAD,CAAZ,IACC,oBAAC,OAAD;AACE,MAAA,SAAS,EAAC,MADZ;AAEE,MAAA,MAAM,EAAC,SAFT;AAGE,MAAA,SAAS,EAAC;AAHZ,OAKGA,IALH,CAXJ;AALJ,KA0BME,WA1BN,GA4BGH,QA5BH,CADF;AAgCD,CAxCM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./TextTooltip.css\";\n\nexport interface TextTooltipProps\n extends Omit<HoverPopperProps, \"arrow\" | \"arrowClassName\" | \"content\"> {\n /**\n * Текст тултипа\n */\n text?: React.ReactNode;\n /**\n * Заголовок тултипа\n */\n header?: React.ReactNode;\n}\n\nexport const TextTooltip: React.FC<TextTooltipProps> = ({\n children,\n text,\n header,\n ...popperProps\n}: TextTooltipProps) => {\n const platform = usePlatform();\n\n return (\n <HoverPopper\n vkuiClass={getClassName(\"TextTooltip\", platform)}\n arrow\n arrowClassName={prefixClass(\"TextTooltip__arrow\")}\n content={\n <React.Fragment>\n {hasReactNode(header) && (\n <Subhead\n Component=\"span\"\n weight=\"medium\"\n vkuiClass=\"TextTooltip__header\"\n >\n {header}\n </Subhead>\n )}\n {hasReactNode(text) && (\n <Subhead\n Component=\"span\"\n weight=\"regular\"\n vkuiClass=\"TextTooltip__text\"\n >\n {text}\n </Subhead>\n )}\n </React.Fragment>\n }\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"TextTooltip.js"}
@@ -41,8 +41,8 @@ var Textarea = /*#__PURE__*/React.memo(function (_ref) {
41
41
  React.useEffect(function () {
42
42
  var el = elementRef.current;
43
43
 
44
- if (grow && el.offsetParent) {
45
- el.style.height = null;
44
+ if (grow && el !== null && el !== void 0 && el.offsetParent) {
45
+ el.style.height = "";
46
46
  el.style.height = "".concat(el.scrollHeight, "px");
47
47
 
48
48
  if (el.scrollHeight !== currentScrollHeight.current && onResize) {
@@ -50,7 +50,7 @@ var Textarea = /*#__PURE__*/React.memo(function (_ref) {
50
50
  currentScrollHeight.current = el.scrollHeight;
51
51
  }
52
52
  }
53
- }, [grow, value, sizeY]);
53
+ }, [grow, value, sizeY, elementRef, onResize]);
54
54
  return createScopedElement(FormField, {
55
55
  vkuiClass: classNames(getClassName("Textarea", platform), "Textarea--sizeY-".concat(sizeY)),
56
56
  className: className,
@@ -64,7 +64,8 @@ var Textarea = /*#__PURE__*/React.memo(function (_ref) {
64
64
  onChange: onChange,
65
65
  ref: elementRef
66
66
  })));
67
- });
67
+ }); // eslint-disable-next-line import/no-default-export
68
+
68
69
  export default withAdaptivity(Textarea, {
69
70
  sizeY: true
70
71
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["React","classNames","FormField","withAdaptivity","getClassName","useEnsuredControl","useExternRef","usePlatform","Textarea","memo","defaultValue","grow","style","onResize","className","getRootRef","getRef","sizeY","rows","restProps","value","onChange","currentScrollHeight","useRef","elementRef","platform","useEffect","el","current","offsetParent","height","scrollHeight","disabled"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,SAAT;AAEA,SAASC,cAAT;AACA,SAASC,YAAT;AACA,SAASC,iBAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA;AAYA,IAAMC,QAAiC,gBAAGR,KAAK,CAACS,IAAN,CACxC,gBAWqB;AAAA,+BAVnBC,YAUmB;AAAA,MAVnBA,YAUmB,kCAVJ,EAUI;AAAA,uBATnBC,IASmB;AAAA,MATnBA,IASmB,0BATZ,IASY;AAAA,MARnBC,KAQmB,QARnBA,KAQmB;AAAA,MAPnBC,QAOmB,QAPnBA,QAOmB;AAAA,MANnBC,SAMmB,QANnBA,SAMmB;AAAA,MALnBC,UAKmB,QALnBA,UAKmB;AAAA,MAJnBC,MAImB,QAJnBA,MAImB;AAAA,MAHnBC,KAGmB,QAHnBA,KAGmB;AAAA,uBAFnBC,IAEmB;AAAA,MAFnBA,IAEmB,0BAFZ,CAEY;AAAA,MADhBC,SACgB;;AACnB,2BAA0Bd,iBAAiB,CAACc,SAAD,EAAY;AAAET,IAAAA,YAAY,EAAZA;AAAF,GAAZ,CAA3C;AAAA;AAAA,MAAOU,KAAP;AAAA,MAAcC,QAAd;;AACA,MAAMC,mBAAmB,GAAGtB,KAAK,CAACuB,MAAN,EAA5B;AACA,MAAMC,UAAU,GAAGlB,YAAY,CAACU,MAAD,CAA/B;AACA,MAAMS,QAAQ,GAAGlB,WAAW,EAA5B,CAJmB,CAMnB;;AACAP,EAAAA,KAAK,CAAC0B,SAAN,CAAgB,YAAM;AACpB,QAAMC,EAAE,GAAGH,UAAU,CAACI,OAAtB;;AAEA,QAAIjB,IAAI,IAAIgB,EAAE,CAACE,YAAf,EAA6B;AAC3BF,MAAAA,EAAE,CAACf,KAAH,CAASkB,MAAT,GAAkB,IAAlB;AACAH,MAAAA,EAAE,CAACf,KAAH,CAASkB,MAAT,aAAqBH,EAAE,CAACI,YAAxB;;AAEA,UAAIJ,EAAE,CAACI,YAAH,KAAoBT,mBAAmB,CAACM,OAAxC,IAAmDf,QAAvD,EAAiE;AAC/DA,QAAAA,QAAQ,CAACc,EAAD,CAAR;AACAL,QAAAA,mBAAmB,CAACM,OAApB,GAA8BD,EAAE,CAACI,YAAjC;AACD;AACF;AACF,GAZD,EAYG,CAACpB,IAAD,EAAOS,KAAP,EAAcH,KAAd,CAZH;AAcA,SACE,oBAAC,SAAD;AACE,IAAA,SAAS,EAAEhB,UAAU,CACnBG,YAAY,CAAC,UAAD,EAAaqB,QAAb,CADO,4BAEAR,KAFA,EADvB;AAKE,IAAA,SAAS,EAAEH,SALb;AAME,IAAA,KAAK,EAAEF,KANT;AAOE,IAAA,UAAU,EAAEG,UAPd;AAQE,IAAA,QAAQ,EAAEI,SAAS,CAACa;AARtB,KAUE,6CACMb,SADN;AAEE,IAAA,IAAI,EAAED,IAFR;AAGE,IAAA,SAAS,EAAC,cAHZ;AAIE,IAAA,KAAK,EAAEE,KAJT;AAKE,IAAA,QAAQ,EAAEC,QALZ;AAME,IAAA,GAAG,EAAEG;AANP,KAVF,CADF;AAqBD,CAtDuC,CAA1C;AAyDA,eAAerB,cAAc,CAACK,QAAD,EAAW;AAAES,EAAAA,KAAK,EAAE;AAAT,CAAX,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Textarea.css\";\n\nexport interface TextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HasRef<HTMLTextAreaElement>,\n HasRootRef<HTMLElement>,\n AdaptivityProps {\n grow?: boolean;\n onResize?(el: HTMLTextAreaElement): void;\n defaultValue?: string;\n}\n\nconst Textarea: React.FC<TextareaProps> = React.memo(\n ({\n defaultValue = \"\",\n grow = true,\n style,\n onResize,\n className,\n getRootRef,\n getRef,\n sizeY,\n rows = 2,\n ...restProps\n }: TextareaProps) => {\n const [value, onChange] = useEnsuredControl(restProps, { defaultValue });\n const currentScrollHeight = React.useRef<number>();\n const elementRef = useExternRef(getRef);\n const platform = usePlatform();\n\n // autosize input\n React.useEffect(() => {\n const el = elementRef.current;\n\n if (grow && el.offsetParent) {\n el.style.height = null;\n el.style.height = `${el.scrollHeight}px`;\n\n if (el.scrollHeight !== currentScrollHeight.current && onResize) {\n onResize(el);\n currentScrollHeight.current = el.scrollHeight;\n }\n }\n }, [grow, value, sizeY]);\n\n return (\n <FormField\n vkuiClass={classNames(\n getClassName(\"Textarea\", platform),\n `Textarea--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <textarea\n {...restProps}\n rows={rows}\n vkuiClass=\"Textarea__el\"\n value={value}\n onChange={onChange}\n ref={elementRef}\n />\n </FormField>\n );\n }\n);\n\nexport default withAdaptivity(Textarea, { sizeY: true });\n"],"file":"Textarea.js"}
1
+ {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["React","classNames","FormField","withAdaptivity","getClassName","useEnsuredControl","useExternRef","usePlatform","Textarea","memo","defaultValue","grow","style","onResize","className","getRootRef","getRef","sizeY","rows","restProps","value","onChange","currentScrollHeight","useRef","elementRef","platform","useEffect","el","current","offsetParent","height","scrollHeight","disabled"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,SAAT;AAEA,SAASC,cAAT;AACA,SAASC,YAAT;AACA,SAASC,iBAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA;AAYA,IAAMC,QAAiC,gBAAGR,KAAK,CAACS,IAAN,CACxC,gBAWqB;AAAA,+BAVnBC,YAUmB;AAAA,MAVnBA,YAUmB,kCAVJ,EAUI;AAAA,uBATnBC,IASmB;AAAA,MATnBA,IASmB,0BATZ,IASY;AAAA,MARnBC,KAQmB,QARnBA,KAQmB;AAAA,MAPnBC,QAOmB,QAPnBA,QAOmB;AAAA,MANnBC,SAMmB,QANnBA,SAMmB;AAAA,MALnBC,UAKmB,QALnBA,UAKmB;AAAA,MAJnBC,MAImB,QAJnBA,MAImB;AAAA,MAHnBC,KAGmB,QAHnBA,KAGmB;AAAA,uBAFnBC,IAEmB;AAAA,MAFnBA,IAEmB,0BAFZ,CAEY;AAAA,MADhBC,SACgB;;AACnB,2BAA0Bd,iBAAiB,CAACc,SAAD,EAAY;AAAET,IAAAA,YAAY,EAAZA;AAAF,GAAZ,CAA3C;AAAA;AAAA,MAAOU,KAAP;AAAA,MAAcC,QAAd;;AACA,MAAMC,mBAAmB,GAAGtB,KAAK,CAACuB,MAAN,EAA5B;AACA,MAAMC,UAAU,GAAGlB,YAAY,CAACU,MAAD,CAA/B;AACA,MAAMS,QAAQ,GAAGlB,WAAW,EAA5B,CAJmB,CAMnB;;AACAP,EAAAA,KAAK,CAAC0B,SAAN,CAAgB,YAAM;AACpB,QAAMC,EAAE,GAAGH,UAAU,CAACI,OAAtB;;AAEA,QAAIjB,IAAI,IAAIgB,EAAJ,aAAIA,EAAJ,eAAIA,EAAE,CAAEE,YAAhB,EAA8B;AAC5BF,MAAAA,EAAE,CAACf,KAAH,CAASkB,MAAT,GAAkB,EAAlB;AACAH,MAAAA,EAAE,CAACf,KAAH,CAASkB,MAAT,aAAqBH,EAAE,CAACI,YAAxB;;AAEA,UAAIJ,EAAE,CAACI,YAAH,KAAoBT,mBAAmB,CAACM,OAAxC,IAAmDf,QAAvD,EAAiE;AAC/DA,QAAAA,QAAQ,CAACc,EAAD,CAAR;AACAL,QAAAA,mBAAmB,CAACM,OAApB,GAA8BD,EAAE,CAACI,YAAjC;AACD;AACF;AACF,GAZD,EAYG,CAACpB,IAAD,EAAOS,KAAP,EAAcH,KAAd,EAAqBO,UAArB,EAAiCX,QAAjC,CAZH;AAcA,SACE,oBAAC,SAAD;AACE,IAAA,SAAS,EAAEZ,UAAU,CACnBG,YAAY,CAAC,UAAD,EAAaqB,QAAb,CADO,4BAEAR,KAFA,EADvB;AAKE,IAAA,SAAS,EAAEH,SALb;AAME,IAAA,KAAK,EAAEF,KANT;AAOE,IAAA,UAAU,EAAEG,UAPd;AAQE,IAAA,QAAQ,EAAEI,SAAS,CAACa;AARtB,KAUE,6CACMb,SADN;AAEE,IAAA,IAAI,EAAED,IAFR;AAGE,IAAA,SAAS,EAAC,cAHZ;AAIE,IAAA,KAAK,EAAEE,KAJT;AAKE,IAAA,QAAQ,EAAEC,QALZ;AAME,IAAA,GAAG,EAAEG;AANP,KAVF,CADF;AAqBD,CAtDuC,CAA1C,C,CAyDA;;AACA,eAAerB,cAAc,CAACK,QAAD,EAAW;AAAES,EAAAA,KAAK,EAAE;AAAT,CAAX,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { FormField } from \"../FormField/FormField\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { withAdaptivity, AdaptivityProps } from \"../../hoc/withAdaptivity\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Textarea.css\";\n\nexport interface TextareaProps\n extends React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HasRef<HTMLTextAreaElement>,\n HasRootRef<HTMLElement>,\n AdaptivityProps {\n grow?: boolean;\n onResize?(el: HTMLTextAreaElement): void;\n defaultValue?: string;\n}\n\nconst Textarea: React.FC<TextareaProps> = React.memo(\n ({\n defaultValue = \"\",\n grow = true,\n style,\n onResize,\n className,\n getRootRef,\n getRef,\n sizeY,\n rows = 2,\n ...restProps\n }: TextareaProps) => {\n const [value, onChange] = useEnsuredControl(restProps, { defaultValue });\n const currentScrollHeight = React.useRef<number>();\n const elementRef = useExternRef(getRef);\n const platform = usePlatform();\n\n // autosize input\n React.useEffect(() => {\n const el = elementRef.current;\n\n if (grow && el?.offsetParent) {\n el.style.height = \"\";\n el.style.height = `${el.scrollHeight}px`;\n\n if (el.scrollHeight !== currentScrollHeight.current && onResize) {\n onResize(el);\n currentScrollHeight.current = el.scrollHeight;\n }\n }\n }, [grow, value, sizeY, elementRef, onResize]);\n\n return (\n <FormField\n vkuiClass={classNames(\n getClassName(\"Textarea\", platform),\n `Textarea--sizeY-${sizeY}`\n )}\n className={className}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <textarea\n {...restProps}\n rows={rows}\n vkuiClass=\"Textarea__el\"\n value={value}\n onChange={onChange}\n ref={elementRef}\n />\n </FormField>\n );\n }\n);\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Textarea, { sizeY: true });\n"],"file":"Textarea.js"}