@vkontakte/vkui 4.24.0 → 4.26.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 (1490) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +1054 -490
  4. package/.cache/ts/src/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  5. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +2 -2
  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 +5 -21
  9. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -2
  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 +9 -2
  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 +2 -29
  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 +2 -2
  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 +2 -2
  41. package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  42. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +2 -2
  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 +2 -2
  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/NativeSelect/NativeSelect.d.ts +2 -2
  51. package/.cache/ts/src/components/Panel/Panel.d.ts +2 -2
  52. package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +1 -1
  53. package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  54. package/.cache/ts/src/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  55. package/.cache/ts/src/components/Popper/Popper.d.ts +2 -2
  56. package/.cache/ts/src/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  57. package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
  58. package/.cache/ts/src/components/RangeSlider/UniversalSlider.d.ts +1 -1
  59. package/.cache/ts/src/components/RichCell/RichCell.d.ts +1 -1
  60. package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +2 -43
  61. package/.cache/ts/src/components/Search/Search.d.ts +1 -1
  62. package/.cache/ts/src/components/Select/Select.d.ts +2 -2
  63. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  64. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +1 -1
  65. package/.cache/ts/src/components/Slider/Slider.d.ts +1 -8
  66. package/.cache/ts/src/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  67. package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +2 -2
  68. package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -1
  69. package/.cache/ts/src/components/Tabs/Tabs.d.ts +2 -2
  70. package/.cache/ts/src/components/Tappable/Tappable.d.ts +1 -1
  71. package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +2 -37
  72. package/.cache/ts/src/components/Textarea/Textarea.d.ts +1 -1
  73. package/.cache/ts/src/components/Tooltip/TooltipContainer.d.ts +1 -1
  74. package/.cache/ts/src/components/UsersStack/masks.d.ts +1 -1
  75. package/.cache/ts/src/components/View/View.d.ts +9 -9
  76. package/.cache/ts/src/components/View/ViewInfinite.d.ts +11 -11
  77. package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +1 -1
  78. package/.cache/ts/src/helpers/getScheme.d.ts +8 -0
  79. package/.cache/ts/src/helpers/scheme.d.ts +34 -0
  80. package/.cache/ts/src/hoc/withAdaptivity.d.ts +3 -2
  81. package/.cache/ts/src/hoc/withContext.d.ts +1 -1
  82. package/.cache/ts/src/hoc/withInsets.d.ts +3 -1
  83. package/.cache/ts/src/hoc/withPlatform.d.ts +3 -1
  84. package/.cache/ts/src/hooks/useAdaptivity.d.ts +2 -2
  85. package/.cache/ts/src/hooks/useAppearance.d.ts +1 -1
  86. package/.cache/ts/src/hooks/useEnsuredControl.d.ts +1 -1
  87. package/.cache/ts/src/hooks/useEventListener.d.ts +3 -3
  88. package/.cache/ts/src/hooks/useExternRef.d.ts +1 -1
  89. package/.cache/ts/src/hooks/useFocusVisible.d.ts +1 -1
  90. package/.cache/ts/src/hooks/useGlobalEventListener.d.ts +2 -2
  91. package/.cache/ts/src/hooks/useInsets.d.ts +7 -1
  92. package/.cache/ts/src/hooks/usePatchChildrenRef.d.ts +1 -1
  93. package/.cache/ts/src/hooks/usePlatform.d.ts +1 -1
  94. package/.cache/ts/src/hooks/useWaitTransitionFinish.d.ts +1 -1
  95. package/.cache/ts/src/index.d.ts +6 -4
  96. package/.cache/ts/src/lib/SSR.d.ts +1 -1
  97. package/.cache/ts/src/lib/accessibility.d.ts +1 -1
  98. package/.cache/ts/src/lib/dom.d.ts +3 -3
  99. package/.cache/ts/src/lib/getNavId.d.ts +1 -1
  100. package/.cache/ts/src/lib/jsxRuntime.d.ts +7 -3
  101. package/.cache/ts/src/lib/offset.d.ts +5 -5
  102. package/.cache/ts/src/lib/platform.d.ts +1 -1
  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/index.d.ts +2 -0
  110. package/.eslintrc.json +11 -5
  111. package/VKUI_TOKENS_MIGRATION_GUIDE.md +76 -0
  112. package/dist/{5c1a8c271e68390145da2b270f47c843.woff → 5c1a8c271e68390145da.woff} +0 -0
  113. package/dist/{7082adfe0b49e2f8da5bf38d29e318ac.woff2 → 7082adfe0b49e2f8da5b.woff2} +0 -0
  114. package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -2
  115. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  116. package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  117. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  118. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  119. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  120. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +2 -2
  121. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +7 -11
  122. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  123. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
  124. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js +4 -2
  125. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  126. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
  127. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +10 -5
  128. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  129. package/dist/cjs/components/Alert/Alert.d.ts +5 -21
  130. package/dist/cjs/components/Alert/Alert.js +33 -22
  131. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  132. package/dist/cjs/components/AppRoot/AppRoot.d.ts +1 -2
  133. package/dist/cjs/components/AppRoot/AppRoot.js +28 -18
  134. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  135. package/dist/cjs/components/AppRoot/AppRootContext.d.ts +1 -1
  136. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  137. package/dist/cjs/components/AppRoot/ScrollContext.d.ts +1 -1
  138. package/dist/cjs/components/AppRoot/ScrollContext.js +6 -4
  139. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  140. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
  141. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js +50 -0
  142. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  143. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
  144. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js +14 -0
  145. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  146. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
  147. package/dist/cjs/components/Avatar/Avatar.js +15 -16
  148. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  149. package/dist/cjs/components/Banner/Banner.js +3 -2
  150. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  151. package/dist/cjs/components/Button/Button.d.ts +1 -1
  152. package/dist/cjs/components/Button/Button.js +3 -5
  153. package/dist/cjs/components/Button/Button.js.map +1 -1
  154. package/dist/cjs/components/Card/Card.js +2 -1
  155. package/dist/cjs/components/Card/Card.js.map +1 -1
  156. package/dist/cjs/components/CardGrid/CardGrid.d.ts +1 -1
  157. package/dist/cjs/components/CardGrid/CardGrid.js +1 -1
  158. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  159. package/dist/cjs/components/CardScroll/CardScroll.d.ts +9 -2
  160. package/dist/cjs/components/CardScroll/CardScroll.js +19 -5
  161. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  162. package/dist/cjs/components/Cell/Cell.js +1 -1
  163. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  164. package/dist/cjs/components/Cell/useDraggable.js +58 -47
  165. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  166. package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
  167. package/dist/cjs/components/Checkbox/Checkbox.js +2 -1
  168. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  169. package/dist/cjs/components/Chip/Chip.js +2 -1
  170. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  171. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -4
  172. package/dist/cjs/components/ChipsInput/ChipsInput.js +73 -64
  173. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  174. package/dist/cjs/components/ChipsInput/useChipsInput.d.ts +3 -3
  175. package/dist/cjs/components/ChipsInput/useChipsInput.js +2 -2
  176. package/dist/cjs/components/ChipsInput/useChipsInput.js.map +1 -1
  177. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +2 -5
  178. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +78 -67
  179. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  180. package/dist/cjs/components/ChipsSelect/useChipsSelect.d.ts +8 -8
  181. package/dist/cjs/components/ChipsSelect/useChipsSelect.js +6 -3
  182. package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +1 -1
  183. package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
  184. package/dist/cjs/components/ClickPopper/ClickPopper.js +7 -3
  185. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
  186. package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +3 -1
  187. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +55 -42
  188. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  189. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.d.ts +2 -29
  190. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +1 -23
  191. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  192. package/dist/cjs/components/ContentCard/ContentCard.js +10 -1
  193. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  194. package/dist/cjs/components/Counter/Counter.js +1 -1
  195. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  196. package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts +1 -1
  197. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +24 -9
  198. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  199. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +1 -65
  200. package/dist/cjs/components/CustomSelect/CustomSelect.js +98 -72
  201. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  202. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  203. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  204. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +4 -3
  205. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  206. package/dist/cjs/components/DatePicker/DatePicker.d.ts +1 -1
  207. package/dist/cjs/components/DatePicker/DatePicker.js +40 -26
  208. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  209. package/dist/cjs/components/Div/Div.js +2 -1
  210. package/dist/cjs/components/Div/Div.js.map +1 -1
  211. package/dist/cjs/components/Dropdown/Dropdown.d.ts +2 -43
  212. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  213. package/dist/cjs/components/Epic/Epic.d.ts +3 -3
  214. package/dist/cjs/components/Epic/Epic.js +7 -4
  215. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  216. package/dist/cjs/components/Epic/ScrollSaver.d.ts +0 -1
  217. package/dist/cjs/components/Epic/ScrollSaver.js +3 -1
  218. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  219. package/dist/cjs/components/File/File.js +5 -2
  220. package/dist/cjs/components/File/File.js.map +1 -1
  221. package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -4
  222. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  223. package/dist/cjs/components/FocusTrap/FocusTrap.js +3 -3
  224. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  225. package/dist/cjs/components/FormItem/FormItem.js +3 -1
  226. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  227. package/dist/cjs/components/FormLayout/FormLayout.d.ts +1 -1
  228. package/dist/cjs/components/FormLayout/FormLayout.js +6 -7
  229. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  230. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  231. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  232. package/dist/cjs/components/Gallery/Gallery.d.ts +1 -1
  233. package/dist/cjs/components/Gallery/Gallery.js +129 -80
  234. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  235. package/dist/cjs/components/Gradient/Gradient.js +2 -1
  236. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  237. package/dist/cjs/components/Group/Group.d.ts +1 -1
  238. package/dist/cjs/components/Group/Group.js +1 -1
  239. package/dist/cjs/components/Group/Group.js.map +1 -1
  240. package/dist/cjs/components/Header/Header.js +4 -1
  241. package/dist/cjs/components/Header/Header.js.map +1 -1
  242. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +2 -2
  243. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +21 -9
  244. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  245. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  246. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  247. package/dist/cjs/components/HoverPopper/HoverPopper.d.ts +1 -1
  248. package/dist/cjs/components/HoverPopper/HoverPopper.js +6 -3
  249. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  250. package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
  251. package/dist/cjs/components/IconButton/IconButton.js +9 -1
  252. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  253. package/dist/cjs/components/InfoRow/InfoRow.js +2 -1
  254. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  255. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +1 -1
  256. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  257. package/dist/cjs/components/Input/Input.d.ts +1 -1
  258. package/dist/cjs/components/Input/Input.js +1 -1
  259. package/dist/cjs/components/Input/Input.js.map +1 -1
  260. package/dist/cjs/components/Link/Link.js +2 -1
  261. package/dist/cjs/components/Link/Link.js.map +1 -1
  262. package/dist/cjs/components/List/List.js +2 -1
  263. package/dist/cjs/components/List/List.js.map +1 -1
  264. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -1
  265. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  266. package/dist/cjs/components/ModalCard/ModalCard.d.ts +2 -2
  267. package/dist/cjs/components/ModalCard/ModalCard.js +1 -1
  268. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  269. package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  270. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  271. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +2 -1
  272. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  273. package/dist/cjs/components/ModalPage/ModalPage.d.ts +2 -2
  274. package/dist/cjs/components/ModalPage/ModalPage.js +2 -2
  275. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  276. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
  277. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +32 -32
  278. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  279. package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +1 -1
  280. package/dist/cjs/components/ModalRoot/ModalRoot.js +116 -47
  281. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  282. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +2 -2
  283. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  284. package/dist/cjs/components/ModalRoot/ModalRootContext.d.ts +1 -1
  285. package/dist/cjs/components/ModalRoot/ModalRootContext.js +20 -15
  286. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  287. package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  288. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +35 -16
  289. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  290. package/dist/cjs/components/ModalRoot/constants.js +1 -1
  291. package/dist/cjs/components/ModalRoot/types.d.ts +1 -1
  292. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  293. package/dist/cjs/components/ModalRoot/useModalManager.d.ts +9 -9
  294. package/dist/cjs/components/ModalRoot/useModalManager.js +11 -9
  295. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  296. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  297. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +2 -2
  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 +2 -2
  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/PanelHeaderButton/PanelHeaderButton.js +14 -5
  310. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  311. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  312. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  313. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  314. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  315. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  316. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  317. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  318. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  319. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  320. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  321. package/dist/cjs/components/PanelSpinner/PanelSpinner.js +1 -1
  322. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  323. package/dist/cjs/components/Placeholder/Placeholder.js +2 -1
  324. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  325. package/dist/cjs/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  326. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
  327. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  328. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
  329. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  330. package/dist/cjs/components/Popper/Popper.d.ts +2 -2
  331. package/dist/cjs/components/Popper/Popper.js +11 -5
  332. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  333. package/dist/cjs/components/Progress/Progress.js +4 -5
  334. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  335. package/dist/cjs/components/PromoBanner/PromoBanner.js +9 -1
  336. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  337. package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  338. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +11 -8
  339. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  340. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +12 -20
  341. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  342. package/dist/cjs/components/Radio/Radio.d.ts +1 -1
  343. package/dist/cjs/components/Radio/Radio.js +2 -1
  344. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  345. package/dist/cjs/components/RangeSlider/RangeSlider.js +18 -11
  346. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  347. package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
  348. package/dist/cjs/components/RangeSlider/UniversalSlider.js +18 -13
  349. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  350. package/dist/cjs/components/Removable/Removable.js +6 -3
  351. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  352. package/dist/cjs/components/RichCell/RichCell.d.ts +1 -1
  353. package/dist/cjs/components/RichCell/RichCell.js +2 -1
  354. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  355. package/dist/cjs/components/RichTooltip/RichTooltip.d.ts +2 -43
  356. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  357. package/dist/cjs/components/Root/Root.js +17 -12
  358. package/dist/cjs/components/Root/Root.js.map +1 -1
  359. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +2 -1
  360. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  361. package/dist/cjs/components/Search/Search.d.ts +1 -1
  362. package/dist/cjs/components/Search/Search.js +12 -9
  363. package/dist/cjs/components/Search/Search.js.map +1 -1
  364. package/dist/cjs/components/Select/Select.d.ts +2 -2
  365. package/dist/cjs/components/Select/Select.js +2 -1
  366. package/dist/cjs/components/Select/Select.js.map +1 -1
  367. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  368. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +3 -3
  369. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  370. package/dist/cjs/components/Separator/Separator.js +2 -1
  371. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  372. package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +1 -1
  373. package/dist/cjs/components/SimpleCell/SimpleCell.js +2 -1
  374. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  375. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  376. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  377. package/dist/cjs/components/Slider/Slider.d.ts +1 -8
  378. package/dist/cjs/components/Slider/Slider.js +20 -15
  379. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  380. package/dist/cjs/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  381. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +14 -7
  382. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  383. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -1
  384. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  385. package/dist/cjs/components/Snackbar/Snackbar.d.ts +2 -2
  386. package/dist/cjs/components/Snackbar/Snackbar.js +12 -4
  387. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  388. package/dist/cjs/components/Spinner/Spinner.js +1 -1
  389. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  390. package/dist/cjs/components/SplitCol/SplitCol.d.ts +1 -1
  391. package/dist/cjs/components/SplitCol/SplitCol.js +2 -2
  392. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  393. package/dist/cjs/components/Tabbar/Tabbar.js +2 -1
  394. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  395. package/dist/cjs/components/TabbarItem/TabbarItem.js +10 -2
  396. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  397. package/dist/cjs/components/Tabs/Tabs.d.ts +2 -2
  398. package/dist/cjs/components/Tabs/Tabs.js +1 -1
  399. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  400. package/dist/cjs/components/TabsItem/TabsItem.js +2 -1
  401. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  402. package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
  403. package/dist/cjs/components/Tappable/Tappable.js +9 -6
  404. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  405. package/dist/cjs/components/TextTooltip/TextTooltip.d.ts +2 -37
  406. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  407. package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
  408. package/dist/cjs/components/Textarea/Textarea.js +4 -4
  409. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  410. package/dist/cjs/components/Tooltip/Tooltip.js +26 -10
  411. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  412. package/dist/cjs/components/Tooltip/TooltipContainer.d.ts +1 -1
  413. package/dist/cjs/components/Tooltip/TooltipContainer.js +1 -1
  414. package/dist/cjs/components/Touch/Touch.js +38 -21
  415. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  416. package/dist/cjs/components/Touch/TouchContext.js +2 -1
  417. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  418. package/dist/cjs/components/Typography/Caption/Caption.js +2 -1
  419. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  420. package/dist/cjs/components/Typography/Headline/Headline.js +2 -1
  421. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  422. package/dist/cjs/components/Typography/Subhead/Subhead.js +2 -1
  423. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  424. package/dist/cjs/components/Typography/Text/Text.js +2 -1
  425. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  426. package/dist/cjs/components/Typography/Title/Title.js +2 -1
  427. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  428. package/dist/cjs/components/UsersStack/UsersStack.js +5 -3
  429. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  430. package/dist/cjs/components/UsersStack/masks.d.ts +1 -1
  431. package/dist/cjs/components/UsersStack/masks.js +1 -1
  432. package/dist/cjs/components/UsersStack/masks.js.map +1 -1
  433. package/dist/cjs/components/View/View.d.ts +9 -9
  434. package/dist/cjs/components/View/View.js +100 -49
  435. package/dist/cjs/components/View/View.js.map +1 -1
  436. package/dist/cjs/components/View/ViewInfinite.d.ts +11 -11
  437. package/dist/cjs/components/View/ViewInfinite.js +73 -38
  438. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  439. package/dist/cjs/components/WriteBar/WriteBar.d.ts +1 -1
  440. package/dist/cjs/components/WriteBar/WriteBar.js +3 -4
  441. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  442. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +1 -1
  443. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  444. package/dist/cjs/helpers/getScheme.d.ts +8 -0
  445. package/dist/cjs/helpers/getScheme.js +37 -0
  446. package/dist/cjs/helpers/getScheme.js.map +1 -0
  447. package/dist/cjs/helpers/math.js +1 -1
  448. package/dist/cjs/helpers/scheme.d.ts +34 -0
  449. package/dist/cjs/helpers/scheme.js +75 -0
  450. package/dist/cjs/helpers/scheme.js.map +1 -0
  451. package/dist/cjs/hoc/withAdaptivity.d.ts +3 -2
  452. package/dist/cjs/hoc/withAdaptivity.js +4 -5
  453. package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
  454. package/dist/cjs/hoc/withContext.d.ts +1 -1
  455. package/dist/cjs/hoc/withContext.js +1 -2
  456. package/dist/cjs/hoc/withContext.js.map +1 -1
  457. package/dist/cjs/hoc/withInsets.d.ts +3 -1
  458. package/dist/cjs/hoc/withInsets.js +1 -2
  459. package/dist/cjs/hoc/withInsets.js.map +1 -1
  460. package/dist/cjs/hoc/withPlatform.d.ts +3 -1
  461. package/dist/cjs/hoc/withPlatform.js +1 -2
  462. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  463. package/dist/cjs/hooks/useAdaptivity.d.ts +2 -2
  464. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  465. package/dist/cjs/hooks/useAppearance.d.ts +1 -1
  466. package/dist/cjs/hooks/useEnsuredControl.d.ts +1 -1
  467. package/dist/cjs/hooks/useEnsuredControl.js +1 -1
  468. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  469. package/dist/cjs/hooks/useEventListener.d.ts +3 -3
  470. package/dist/cjs/hooks/useEventListener.js +2 -2
  471. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  472. package/dist/cjs/hooks/useExternRef.d.ts +1 -1
  473. package/dist/cjs/hooks/useExternRef.js +6 -3
  474. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  475. package/dist/cjs/hooks/useFocusVisible.d.ts +1 -1
  476. package/dist/cjs/hooks/useGlobalEventListener.d.ts +2 -2
  477. package/dist/cjs/hooks/useGlobalEventListener.js +6 -2
  478. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  479. package/dist/cjs/hooks/useInsets.d.ts +7 -1
  480. package/dist/cjs/hooks/useInsets.js.map +1 -1
  481. package/dist/cjs/hooks/useKeyboard.js +37 -29
  482. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  483. package/dist/cjs/hooks/usePatchChildrenRef.d.ts +1 -1
  484. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  485. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  486. package/dist/cjs/hooks/usePlatform.d.ts +1 -1
  487. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  488. package/dist/cjs/hooks/useTimeout.js +4 -2
  489. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  490. package/dist/cjs/hooks/useWaitTransitionFinish.d.ts +1 -1
  491. package/dist/cjs/hooks/useWaitTransitionFinish.js +5 -2
  492. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  493. package/dist/cjs/index.d.ts +6 -4
  494. package/dist/cjs/index.js +287 -277
  495. package/dist/cjs/index.js.map +1 -1
  496. package/dist/cjs/lib/SSR.d.ts +1 -1
  497. package/dist/cjs/lib/SSR.js +1 -1
  498. package/dist/cjs/lib/SSR.js.map +1 -1
  499. package/dist/cjs/lib/accessibility.d.ts +1 -1
  500. package/dist/cjs/lib/accessibility.js +4 -2
  501. package/dist/cjs/lib/accessibility.js.map +1 -1
  502. package/dist/cjs/lib/animate.js +1 -0
  503. package/dist/cjs/lib/animate.js.map +1 -1
  504. package/dist/cjs/lib/browser.js +1 -1
  505. package/dist/cjs/lib/dom.d.ts +3 -3
  506. package/dist/cjs/lib/dom.js +6 -4
  507. package/dist/cjs/lib/dom.js.map +1 -1
  508. package/dist/cjs/lib/getNavId.d.ts +1 -1
  509. package/dist/cjs/lib/is.js +3 -1
  510. package/dist/cjs/lib/is.js.map +1 -1
  511. package/dist/cjs/lib/isRefObject.js.map +1 -1
  512. package/dist/cjs/lib/jsxRuntime.d.ts +7 -3
  513. package/dist/cjs/lib/jsxRuntime.js +3 -5
  514. package/dist/cjs/lib/jsxRuntime.js.map +1 -1
  515. package/dist/cjs/lib/offset.d.ts +5 -5
  516. package/dist/cjs/lib/offset.js +5 -5
  517. package/dist/cjs/lib/offset.js.map +1 -1
  518. package/dist/cjs/lib/platform.d.ts +1 -1
  519. package/dist/cjs/lib/platform.js +1 -1
  520. package/dist/cjs/lib/platform.js.map +1 -1
  521. package/dist/cjs/lib/polyfills.js.map +1 -1
  522. package/dist/cjs/lib/prefixClass.d.ts +1 -1
  523. package/dist/cjs/lib/prefixClass.js.map +1 -1
  524. package/dist/cjs/lib/select.d.ts +2 -2
  525. package/dist/cjs/lib/select.js +5 -3
  526. package/dist/cjs/lib/select.js.map +1 -1
  527. package/dist/cjs/lib/styles.d.ts +1 -1
  528. package/dist/cjs/lib/styles.js.map +1 -1
  529. package/dist/cjs/lib/supportEvents.d.ts +1 -1
  530. package/dist/cjs/lib/supportEvents.js.map +1 -1
  531. package/dist/cjs/lib/touch.js +2 -1
  532. package/dist/cjs/lib/touch.js.map +1 -1
  533. package/dist/cjs/lib/utils.d.ts +1 -1
  534. package/dist/cjs/lib/utils.js +6 -6
  535. package/dist/cjs/lib/utils.js.map +1 -1
  536. package/dist/cjs/tokenized/index.d.ts +2 -0
  537. package/dist/cjs/tokenized/index.js +16 -0
  538. package/dist/cjs/tokenized/index.js.map +1 -0
  539. package/dist/cjs/unstable/index.js +8 -8
  540. package/dist/components/ActionSheet/ActionSheet.js +4 -2
  541. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  542. package/dist/components/ActionSheet/ActionSheetContext.d.ts +6 -5
  543. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  544. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  545. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  546. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +2 -2
  547. package/dist/components/ActionSheetItem/ActionSheetItem.js +6 -7
  548. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  549. package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
  550. package/dist/components/AdaptivityProvider/AdaptivityContext.js +3 -1
  551. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  552. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
  553. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +10 -3
  554. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  555. package/dist/components/Alert/Alert.d.ts +5 -21
  556. package/dist/components/Alert/Alert.js +32 -18
  557. package/dist/components/Alert/Alert.js.map +1 -1
  558. package/dist/components/AppRoot/AppRoot.d.ts +1 -2
  559. package/dist/components/AppRoot/AppRoot.js +26 -16
  560. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  561. package/dist/components/AppRoot/AppRootContext.d.ts +1 -1
  562. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  563. package/dist/components/AppRoot/ScrollContext.d.ts +1 -1
  564. package/dist/components/AppRoot/ScrollContext.js +5 -3
  565. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  566. package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
  567. package/dist/components/AppearanceProvider/AppearanceProvider.js +33 -0
  568. package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  569. package/dist/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
  570. package/dist/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
  571. package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  572. package/dist/components/Avatar/Avatar.d.ts +1 -1
  573. package/dist/components/Avatar/Avatar.js +12 -13
  574. package/dist/components/Avatar/Avatar.js.map +1 -1
  575. package/dist/components/Banner/Banner.js +3 -2
  576. package/dist/components/Banner/Banner.js.map +1 -1
  577. package/dist/components/Button/Button.d.ts +1 -1
  578. package/dist/components/Button/Button.js +4 -4
  579. package/dist/components/Button/Button.js.map +1 -1
  580. package/dist/components/Card/Card.js +2 -1
  581. package/dist/components/Card/Card.js.map +1 -1
  582. package/dist/components/CardGrid/CardGrid.d.ts +1 -1
  583. package/dist/components/CardGrid/CardGrid.js +2 -1
  584. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  585. package/dist/components/CardScroll/CardScroll.d.ts +9 -2
  586. package/dist/components/CardScroll/CardScroll.js +18 -4
  587. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  588. package/dist/components/Cell/Cell.js +1 -1
  589. package/dist/components/Cell/Cell.js.map +1 -1
  590. package/dist/components/Cell/useDraggable.js +58 -46
  591. package/dist/components/Cell/useDraggable.js.map +1 -1
  592. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  593. package/dist/components/Checkbox/Checkbox.js +2 -1
  594. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  595. package/dist/components/Chip/Chip.js +2 -1
  596. package/dist/components/Chip/Chip.js.map +1 -1
  597. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -4
  598. package/dist/components/ChipsInput/ChipsInput.js +71 -62
  599. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  600. package/dist/components/ChipsInput/useChipsInput.d.ts +3 -3
  601. package/dist/components/ChipsInput/useChipsInput.js +2 -2
  602. package/dist/components/ChipsInput/useChipsInput.js.map +1 -1
  603. package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -5
  604. package/dist/components/ChipsSelect/ChipsSelect.js +80 -67
  605. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  606. package/dist/components/ChipsSelect/useChipsSelect.d.ts +8 -8
  607. package/dist/components/ChipsSelect/useChipsSelect.js +6 -3
  608. package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
  609. package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
  610. package/dist/components/ClickPopper/ClickPopper.js +7 -3
  611. package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
  612. package/dist/components/ConfigProvider/ConfigProvider.d.ts +3 -1
  613. package/dist/components/ConfigProvider/ConfigProvider.js +53 -41
  614. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  615. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +2 -29
  616. package/dist/components/ConfigProvider/ConfigProviderContext.js +0 -20
  617. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  618. package/dist/components/ContentCard/ContentCard.js +9 -1
  619. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  620. package/dist/components/Counter/Counter.js +2 -1
  621. package/dist/components/Counter/Counter.js.map +1 -1
  622. package/dist/components/CustomScrollView/CustomScrollView.d.ts +1 -1
  623. package/dist/components/CustomScrollView/CustomScrollView.js +24 -9
  624. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  625. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -65
  626. package/dist/components/CustomSelect/CustomSelect.js +98 -72
  627. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  628. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  629. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  630. package/dist/components/CustomSelectOption/CustomSelectOption.js +4 -3
  631. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  632. package/dist/components/DatePicker/DatePicker.d.ts +1 -1
  633. package/dist/components/DatePicker/DatePicker.js +41 -26
  634. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  635. package/dist/components/Div/Div.js +2 -1
  636. package/dist/components/Div/Div.js.map +1 -1
  637. package/dist/components/Dropdown/Dropdown.d.ts +2 -43
  638. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  639. package/dist/components/Epic/Epic.d.ts +3 -3
  640. package/dist/components/Epic/Epic.js +7 -4
  641. package/dist/components/Epic/Epic.js.map +1 -1
  642. package/dist/components/Epic/ScrollSaver.d.ts +0 -1
  643. package/dist/components/Epic/ScrollSaver.js +2 -1
  644. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  645. package/dist/components/File/File.js +5 -2
  646. package/dist/components/File/File.js.map +1 -1
  647. package/dist/components/FixedLayout/FixedLayout.js +5 -4
  648. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  649. package/dist/components/FocusTrap/FocusTrap.js +3 -3
  650. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  651. package/dist/components/FormItem/FormItem.js +3 -1
  652. package/dist/components/FormItem/FormItem.js.map +1 -1
  653. package/dist/components/FormLayout/FormLayout.d.ts +1 -1
  654. package/dist/components/FormLayout/FormLayout.js +6 -7
  655. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  656. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  657. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  658. package/dist/components/Gallery/Gallery.d.ts +1 -1
  659. package/dist/components/Gallery/Gallery.js +129 -80
  660. package/dist/components/Gallery/Gallery.js.map +1 -1
  661. package/dist/components/Gradient/Gradient.js +2 -1
  662. package/dist/components/Gradient/Gradient.js.map +1 -1
  663. package/dist/components/Group/Group.d.ts +1 -1
  664. package/dist/components/Group/Group.js +2 -1
  665. package/dist/components/Group/Group.js.map +1 -1
  666. package/dist/components/Header/Header.js +4 -1
  667. package/dist/components/Header/Header.js.map +1 -1
  668. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +2 -2
  669. package/dist/components/HorizontalScroll/HorizontalScroll.js +19 -9
  670. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  671. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  672. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  673. package/dist/components/HoverPopper/HoverPopper.d.ts +1 -1
  674. package/dist/components/HoverPopper/HoverPopper.js +6 -3
  675. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  676. package/dist/components/IconButton/IconButton.d.ts +1 -1
  677. package/dist/components/IconButton/IconButton.js +9 -1
  678. package/dist/components/IconButton/IconButton.js.map +1 -1
  679. package/dist/components/InfoRow/InfoRow.js +2 -1
  680. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  681. package/dist/components/InitialsAvatar/InitialsAvatar.js +1 -1
  682. package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  683. package/dist/components/Input/Input.d.ts +1 -1
  684. package/dist/components/Input/Input.js +2 -1
  685. package/dist/components/Input/Input.js.map +1 -1
  686. package/dist/components/Link/Link.js +2 -1
  687. package/dist/components/Link/Link.js.map +1 -1
  688. package/dist/components/List/List.js +2 -1
  689. package/dist/components/List/List.js.map +1 -1
  690. package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -1
  691. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  692. package/dist/components/ModalCard/ModalCard.d.ts +2 -2
  693. package/dist/components/ModalCard/ModalCard.js +2 -1
  694. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  695. package/dist/components/ModalCardBase/ModalCardBase.d.ts +2 -1
  696. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  697. package/dist/components/ModalDismissButton/ModalDismissButton.js +2 -1
  698. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  699. package/dist/components/ModalPage/ModalPage.d.ts +2 -2
  700. package/dist/components/ModalPage/ModalPage.js +3 -2
  701. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  702. package/dist/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
  703. package/dist/components/ModalPageHeader/ModalPageHeader.js +28 -29
  704. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  705. package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
  706. package/dist/components/ModalRoot/ModalRoot.js +116 -47
  707. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  708. package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +2 -2
  709. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  710. package/dist/components/ModalRoot/ModalRootContext.d.ts +1 -1
  711. package/dist/components/ModalRoot/ModalRootContext.js +19 -14
  712. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  713. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
  714. package/dist/components/ModalRoot/ModalRootDesktop.js +35 -16
  715. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  716. package/dist/components/ModalRoot/types.d.ts +1 -1
  717. package/dist/components/ModalRoot/types.js.map +1 -1
  718. package/dist/components/ModalRoot/useModalManager.d.ts +9 -9
  719. package/dist/components/ModalRoot/useModalManager.js +11 -11
  720. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  721. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  722. package/dist/components/NativeSelect/NativeSelect.d.ts +2 -2
  723. package/dist/components/NativeSelect/NativeSelect.js +5 -2
  724. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  725. package/dist/components/Panel/Panel.d.ts +2 -2
  726. package/dist/components/Panel/Panel.js.map +1 -1
  727. package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
  728. package/dist/components/PanelHeader/PanelHeader.js +23 -22
  729. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  730. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
  731. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
  732. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  733. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +13 -6
  734. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  735. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  736. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  737. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  738. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  739. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  740. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  741. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  742. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  743. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  744. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  745. package/dist/components/PanelSpinner/PanelSpinner.js +2 -1
  746. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  747. package/dist/components/Placeholder/Placeholder.js +2 -1
  748. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  749. package/dist/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  750. package/dist/components/PopoutRoot/PopoutRoot.js +1 -1
  751. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  752. package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
  753. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  754. package/dist/components/Popper/Popper.d.ts +2 -2
  755. package/dist/components/Popper/Popper.js +11 -5
  756. package/dist/components/Popper/Popper.js.map +1 -1
  757. package/dist/components/Progress/Progress.js +4 -5
  758. package/dist/components/Progress/Progress.js.map +1 -1
  759. package/dist/components/PromoBanner/PromoBanner.js +8 -1
  760. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  761. package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  762. package/dist/components/PullToRefresh/PullToRefresh.js +11 -8
  763. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  764. package/dist/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
  765. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  766. package/dist/components/Radio/Radio.d.ts +1 -1
  767. package/dist/components/Radio/Radio.js +2 -1
  768. package/dist/components/Radio/Radio.js.map +1 -1
  769. package/dist/components/RangeSlider/RangeSlider.js +18 -11
  770. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  771. package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
  772. package/dist/components/RangeSlider/UniversalSlider.js +18 -13
  773. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  774. package/dist/components/Removable/Removable.js +6 -3
  775. package/dist/components/Removable/Removable.js.map +1 -1
  776. package/dist/components/RichCell/RichCell.d.ts +1 -1
  777. package/dist/components/RichCell/RichCell.js +2 -1
  778. package/dist/components/RichCell/RichCell.js.map +1 -1
  779. package/dist/components/RichTooltip/RichTooltip.d.ts +2 -43
  780. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  781. package/dist/components/Root/Root.js +17 -12
  782. package/dist/components/Root/Root.js.map +1 -1
  783. package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -1
  784. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  785. package/dist/components/Search/Search.d.ts +1 -1
  786. package/dist/components/Search/Search.js +13 -9
  787. package/dist/components/Search/Search.js.map +1 -1
  788. package/dist/components/Select/Select.d.ts +2 -2
  789. package/dist/components/Select/Select.js +2 -1
  790. package/dist/components/Select/Select.js.map +1 -1
  791. package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  792. package/dist/components/SelectMimicry/SelectMimicry.js +4 -3
  793. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  794. package/dist/components/Separator/Separator.js +2 -1
  795. package/dist/components/Separator/Separator.js.map +1 -1
  796. package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
  797. package/dist/components/SimpleCell/SimpleCell.js +2 -1
  798. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  799. package/dist/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  800. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  801. package/dist/components/Slider/Slider.d.ts +1 -8
  802. package/dist/components/Slider/Slider.js +20 -15
  803. package/dist/components/Slider/Slider.js.map +1 -1
  804. package/dist/components/SliderSwitch/SliderSwitch.d.ts +1 -1
  805. package/dist/components/SliderSwitch/SliderSwitch.js +14 -7
  806. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  807. package/dist/components/SliderSwitch/SliderSwitchButton.js +2 -1
  808. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  809. package/dist/components/Snackbar/Snackbar.d.ts +2 -2
  810. package/dist/components/Snackbar/Snackbar.js +12 -4
  811. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  812. package/dist/components/Spinner/Spinner.js +2 -1
  813. package/dist/components/Spinner/Spinner.js.map +1 -1
  814. package/dist/components/SplitCol/SplitCol.d.ts +1 -1
  815. package/dist/components/SplitCol/SplitCol.js +1 -1
  816. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  817. package/dist/components/Tabbar/Tabbar.js +2 -1
  818. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  819. package/dist/components/TabbarItem/TabbarItem.js +9 -2
  820. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  821. package/dist/components/Tabs/Tabs.d.ts +2 -2
  822. package/dist/components/Tabs/Tabs.js +2 -1
  823. package/dist/components/Tabs/Tabs.js.map +1 -1
  824. package/dist/components/TabsItem/TabsItem.js +2 -1
  825. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  826. package/dist/components/Tappable/Tappable.d.ts +1 -1
  827. package/dist/components/Tappable/Tappable.js +9 -6
  828. package/dist/components/Tappable/Tappable.js.map +1 -1
  829. package/dist/components/TextTooltip/TextTooltip.d.ts +2 -37
  830. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  831. package/dist/components/Textarea/Textarea.d.ts +1 -1
  832. package/dist/components/Textarea/Textarea.js +5 -4
  833. package/dist/components/Textarea/Textarea.js.map +1 -1
  834. package/dist/components/Tooltip/Tooltip.js +26 -10
  835. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  836. package/dist/components/Tooltip/TooltipContainer.d.ts +1 -1
  837. package/dist/components/Touch/Touch.js +38 -21
  838. package/dist/components/Touch/Touch.js.map +1 -1
  839. package/dist/components/Touch/TouchContext.js +2 -1
  840. package/dist/components/Touch/TouchContext.js.map +1 -1
  841. package/dist/components/Typography/Caption/Caption.js +2 -1
  842. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  843. package/dist/components/Typography/Headline/Headline.js +2 -1
  844. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  845. package/dist/components/Typography/Subhead/Subhead.js +2 -1
  846. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  847. package/dist/components/Typography/Text/Text.js +2 -1
  848. package/dist/components/Typography/Text/Text.js.map +1 -1
  849. package/dist/components/Typography/Title/Title.js +2 -1
  850. package/dist/components/Typography/Title/Title.js.map +1 -1
  851. package/dist/components/UsersStack/UsersStack.js +6 -3
  852. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  853. package/dist/components/UsersStack/masks.d.ts +1 -1
  854. package/dist/components/UsersStack/masks.js +1 -1
  855. package/dist/components/UsersStack/masks.js.map +1 -1
  856. package/dist/components/View/View.d.ts +9 -9
  857. package/dist/components/View/View.js +99 -48
  858. package/dist/components/View/View.js.map +1 -1
  859. package/dist/components/View/ViewInfinite.d.ts +11 -11
  860. package/dist/components/View/ViewInfinite.js +70 -36
  861. package/dist/components/View/ViewInfinite.js.map +1 -1
  862. package/dist/components/WriteBar/WriteBar.d.ts +1 -1
  863. package/dist/components/WriteBar/WriteBar.js +3 -4
  864. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  865. package/dist/components/WriteBarIcon/WriteBarIcon.js +1 -1
  866. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  867. package/dist/components.css +17 -14
  868. package/dist/components.css.map +1 -1
  869. package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -2
  870. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  871. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  872. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  873. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  874. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +6 -7
  875. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  876. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js +3 -1
  877. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  878. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +10 -3
  879. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  880. package/dist/cssm/components/Alert/Alert.js +32 -18
  881. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  882. package/dist/cssm/components/AppRoot/AppRoot.js +26 -16
  883. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  884. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  885. package/dist/cssm/components/AppRoot/ScrollContext.js +5 -3
  886. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  887. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +33 -0
  888. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
  889. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
  890. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
  891. package/dist/cssm/components/Avatar/Avatar.js +12 -13
  892. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  893. package/dist/cssm/components/Banner/Banner.js +3 -2
  894. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  895. package/dist/cssm/components/Button/Button.css +9 -11
  896. package/dist/cssm/components/Button/Button.js +4 -4
  897. package/dist/cssm/components/Button/Button.js.map +1 -1
  898. package/dist/cssm/components/Card/Card.css +6 -1
  899. package/dist/cssm/components/Card/Card.js +2 -1
  900. package/dist/cssm/components/Card/Card.js.map +1 -1
  901. package/dist/cssm/components/CardGrid/CardGrid.js +2 -1
  902. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  903. package/dist/cssm/components/CardScroll/CardScroll.css +1 -1
  904. package/dist/cssm/components/CardScroll/CardScroll.js +18 -4
  905. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  906. package/dist/cssm/components/Cell/Cell.js +1 -1
  907. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  908. package/dist/cssm/components/Cell/useDraggable.js +58 -46
  909. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  910. package/dist/cssm/components/Checkbox/Checkbox.js +2 -1
  911. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  912. package/dist/cssm/components/Chip/Chip.js +2 -1
  913. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  914. package/dist/cssm/components/ChipsInput/ChipsInput.js +71 -62
  915. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  916. package/dist/cssm/components/ChipsInput/useChipsInput.js +2 -2
  917. package/dist/cssm/components/ChipsInput/useChipsInput.js.map +1 -1
  918. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +80 -67
  919. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  920. package/dist/cssm/components/ChipsSelect/useChipsSelect.js +6 -3
  921. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
  922. package/dist/cssm/components/ClickPopper/ClickPopper.js +7 -3
  923. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
  924. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +53 -41
  925. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  926. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +0 -20
  927. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  928. package/dist/cssm/components/ContentCard/ContentCard.js +9 -1
  929. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  930. package/dist/cssm/components/Counter/Counter.js +2 -1
  931. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  932. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +24 -9
  933. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  934. package/dist/cssm/components/CustomSelect/CustomSelect.js +98 -72
  935. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  936. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +1 -1
  937. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  938. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +4 -3
  939. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  940. package/dist/cssm/components/DatePicker/DatePicker.js +41 -26
  941. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  942. package/dist/cssm/components/Div/Div.js +2 -1
  943. package/dist/cssm/components/Div/Div.js.map +1 -1
  944. package/dist/cssm/components/Dropdown/Dropdown.js +1 -3
  945. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  946. package/dist/cssm/components/Epic/Epic.js +7 -4
  947. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  948. package/dist/cssm/components/Epic/ScrollSaver.js +2 -1
  949. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  950. package/dist/cssm/components/File/File.js +5 -2
  951. package/dist/cssm/components/File/File.js.map +1 -1
  952. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -4
  953. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  954. package/dist/cssm/components/FocusTrap/FocusTrap.js +3 -3
  955. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  956. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  957. package/dist/cssm/components/FormItem/FormItem.js +3 -1
  958. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  959. package/dist/cssm/components/FormLayout/FormLayout.js +6 -7
  960. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  961. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  962. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
  963. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  964. package/dist/cssm/components/Gallery/Gallery.js +129 -80
  965. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  966. package/dist/cssm/components/Gradient/Gradient.js +2 -1
  967. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  968. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  969. package/dist/cssm/components/Group/Group.js +2 -1
  970. package/dist/cssm/components/Group/Group.js.map +1 -1
  971. package/dist/cssm/components/Header/Header.js +4 -1
  972. package/dist/cssm/components/Header/Header.js.map +1 -1
  973. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +19 -9
  974. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  975. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +1 -1
  976. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
  977. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  978. package/dist/cssm/components/HoverPopper/HoverPopper.js +6 -3
  979. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  980. package/dist/cssm/components/IconButton/IconButton.js +9 -1
  981. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  982. package/dist/cssm/components/InfoRow/InfoRow.js +2 -1
  983. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  984. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +1 -1
  985. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  986. package/dist/cssm/components/Input/Input.js +2 -1
  987. package/dist/cssm/components/Input/Input.js.map +1 -1
  988. package/dist/cssm/components/Link/Link.js +2 -1
  989. package/dist/cssm/components/Link/Link.js.map +1 -1
  990. package/dist/cssm/components/List/List.js +2 -1
  991. package/dist/cssm/components/List/List.js.map +1 -1
  992. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
  993. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  994. package/dist/cssm/components/ModalCard/ModalCard.js +2 -1
  995. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  996. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  997. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +2 -1
  998. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  999. package/dist/cssm/components/ModalPage/ModalPage.js +3 -2
  1000. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  1001. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
  1002. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +28 -29
  1003. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  1004. package/dist/cssm/components/ModalRoot/ModalRoot.js +116 -47
  1005. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  1006. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  1007. package/dist/cssm/components/ModalRoot/ModalRootContext.js +19 -14
  1008. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  1009. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +35 -16
  1010. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  1011. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  1012. package/dist/cssm/components/ModalRoot/useModalManager.js +11 -11
  1013. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  1014. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  1015. package/dist/cssm/components/NativeSelect/NativeSelect.js +5 -2
  1016. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  1017. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  1018. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  1019. package/dist/cssm/components/PanelHeader/PanelHeader.js +23 -22
  1020. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  1021. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
  1022. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  1023. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +13 -6
  1024. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  1025. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
  1026. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  1027. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  1028. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
  1029. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  1030. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  1031. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  1032. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
  1033. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  1034. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
  1035. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  1036. package/dist/cssm/components/PanelSpinner/PanelSpinner.js +2 -1
  1037. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  1038. package/dist/cssm/components/Placeholder/Placeholder.js +2 -1
  1039. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  1040. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +1 -1
  1041. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  1042. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
  1043. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  1044. package/dist/cssm/components/Popper/Popper.js +11 -5
  1045. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  1046. package/dist/cssm/components/Progress/Progress.js +4 -5
  1047. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  1048. package/dist/cssm/components/PromoBanner/PromoBanner.js +8 -1
  1049. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  1050. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +11 -8
  1051. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  1052. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
  1053. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  1054. package/dist/cssm/components/Radio/Radio.js +2 -1
  1055. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  1056. package/dist/cssm/components/RangeSlider/RangeSlider.js +18 -11
  1057. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  1058. package/dist/cssm/components/RangeSlider/UniversalSlider.js +18 -13
  1059. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  1060. package/dist/cssm/components/Removable/Removable.js +6 -3
  1061. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  1062. package/dist/cssm/components/RichCell/RichCell.js +2 -1
  1063. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  1064. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -3
  1065. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  1066. package/dist/cssm/components/Root/Root.js +17 -12
  1067. package/dist/cssm/components/Root/Root.js.map +1 -1
  1068. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -1
  1069. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  1070. package/dist/cssm/components/Search/Search.css +1 -1
  1071. package/dist/cssm/components/Search/Search.js +13 -9
  1072. package/dist/cssm/components/Search/Search.js.map +1 -1
  1073. package/dist/cssm/components/Select/Select.js +2 -1
  1074. package/dist/cssm/components/Select/Select.js.map +1 -1
  1075. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -3
  1076. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  1077. package/dist/cssm/components/Separator/Separator.js +2 -1
  1078. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  1079. package/dist/cssm/components/SimpleCell/SimpleCell.js +2 -1
  1080. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  1081. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
  1082. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  1083. package/dist/cssm/components/Slider/Slider.js +20 -15
  1084. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  1085. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +14 -7
  1086. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  1087. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +2 -1
  1088. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  1089. package/dist/cssm/components/Snackbar/Snackbar.js +12 -4
  1090. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  1091. package/dist/cssm/components/Spinner/Spinner.js +2 -1
  1092. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  1093. package/dist/cssm/components/SplitCol/SplitCol.js +1 -1
  1094. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  1095. package/dist/cssm/components/Tabbar/Tabbar.css +1 -1
  1096. package/dist/cssm/components/Tabbar/Tabbar.js +2 -1
  1097. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  1098. package/dist/cssm/components/TabbarItem/TabbarItem.js +9 -2
  1099. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  1100. package/dist/cssm/components/Tabs/Tabs.js +2 -1
  1101. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  1102. package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
  1103. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  1104. package/dist/cssm/components/Tappable/Tappable.css +1 -1
  1105. package/dist/cssm/components/Tappable/Tappable.js +9 -6
  1106. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  1107. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -3
  1108. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  1109. package/dist/cssm/components/Textarea/Textarea.js +5 -4
  1110. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  1111. package/dist/cssm/components/Tooltip/Tooltip.js +26 -10
  1112. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  1113. package/dist/cssm/components/Touch/Touch.js +38 -21
  1114. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  1115. package/dist/cssm/components/Touch/TouchContext.js +2 -1
  1116. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  1117. package/dist/cssm/components/Typography/Caption/Caption.js +2 -1
  1118. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  1119. package/dist/cssm/components/Typography/Headline/Headline.js +2 -1
  1120. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  1121. package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -1
  1122. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  1123. package/dist/cssm/components/Typography/Text/Text.js +2 -1
  1124. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  1125. package/dist/cssm/components/Typography/Title/Title.js +2 -1
  1126. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1127. package/dist/cssm/components/UsersStack/UsersStack.js +6 -3
  1128. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1129. package/dist/cssm/components/UsersStack/masks.js +1 -1
  1130. package/dist/cssm/components/UsersStack/masks.js.map +1 -1
  1131. package/dist/cssm/components/View/View.js +99 -48
  1132. package/dist/cssm/components/View/View.js.map +1 -1
  1133. package/dist/cssm/components/View/ViewInfinite.js +70 -36
  1134. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1135. package/dist/cssm/components/WriteBar/WriteBar.js +3 -4
  1136. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  1137. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
  1138. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  1139. package/dist/cssm/fonts/fonts.css +1 -1
  1140. package/dist/cssm/helpers/getScheme.js +28 -0
  1141. package/dist/cssm/helpers/getScheme.js.map +1 -0
  1142. package/dist/cssm/helpers/scheme.js +61 -0
  1143. package/dist/cssm/helpers/scheme.js.map +1 -0
  1144. package/dist/cssm/hoc/withAdaptivity.js +3 -4
  1145. package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
  1146. package/dist/cssm/hoc/withContext.js +1 -2
  1147. package/dist/cssm/hoc/withContext.js.map +1 -1
  1148. package/dist/cssm/hoc/withInsets.js +1 -2
  1149. package/dist/cssm/hoc/withInsets.js.map +1 -1
  1150. package/dist/cssm/hoc/withPlatform.js +1 -2
  1151. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  1152. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  1153. package/dist/cssm/hooks/useEnsuredControl.js +1 -1
  1154. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  1155. package/dist/cssm/hooks/useEventListener.js +2 -2
  1156. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  1157. package/dist/cssm/hooks/useExternRef.js +6 -3
  1158. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  1159. package/dist/cssm/hooks/useGlobalEventListener.js +6 -2
  1160. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  1161. package/dist/cssm/hooks/useInsets.js.map +1 -1
  1162. package/dist/cssm/hooks/useKeyboard.js +36 -29
  1163. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  1164. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  1165. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1166. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  1167. package/dist/cssm/hooks/useTimeout.js +4 -2
  1168. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1169. package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -2
  1170. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1171. package/dist/cssm/index.js +6 -4
  1172. package/dist/cssm/index.js.map +1 -1
  1173. package/dist/cssm/lib/SSR.js +1 -1
  1174. package/dist/cssm/lib/SSR.js.map +1 -1
  1175. package/dist/cssm/lib/accessibility.js +3 -1
  1176. package/dist/cssm/lib/accessibility.js.map +1 -1
  1177. package/dist/cssm/lib/animate.js +1 -0
  1178. package/dist/cssm/lib/animate.js.map +1 -1
  1179. package/dist/cssm/lib/dom.js +2 -2
  1180. package/dist/cssm/lib/dom.js.map +1 -1
  1181. package/dist/cssm/lib/is.js +3 -1
  1182. package/dist/cssm/lib/is.js.map +1 -1
  1183. package/dist/cssm/lib/isRefObject.js.map +1 -1
  1184. package/dist/cssm/lib/jsxRuntime.js +3 -3
  1185. package/dist/cssm/lib/jsxRuntime.js.map +1 -1
  1186. package/dist/cssm/lib/offset.js +5 -5
  1187. package/dist/cssm/lib/offset.js.map +1 -1
  1188. package/dist/cssm/lib/platform.js.map +1 -1
  1189. package/dist/cssm/lib/polyfills.js.map +1 -1
  1190. package/dist/cssm/lib/prefixClass.js.map +1 -1
  1191. package/dist/cssm/lib/select.js +5 -3
  1192. package/dist/cssm/lib/select.js.map +1 -1
  1193. package/dist/cssm/lib/styles.js.map +1 -1
  1194. package/dist/cssm/lib/supportEvents.js.map +1 -1
  1195. package/dist/cssm/lib/utils.js +1 -1
  1196. package/dist/cssm/lib/utils.js.map +1 -1
  1197. package/dist/cssm/styles/bright_light.css +1 -1
  1198. package/dist/cssm/styles/components.css +17 -14
  1199. package/dist/cssm/styles/constants.css +3 -3
  1200. package/dist/cssm/styles/space_gray.css +1 -1
  1201. package/dist/cssm/styles/themes.css +4 -4
  1202. package/dist/cssm/styles/vkcom_dark.css +2 -2
  1203. package/dist/cssm/styles/vkcom_light.css +3 -3
  1204. package/dist/cssm/tokenized/index.js +2 -0
  1205. package/dist/cssm/tokenized/index.js.map +1 -0
  1206. package/dist/default_scheme.css +1 -1
  1207. package/dist/default_scheme.css.map +1 -1
  1208. package/dist/fonts.css +1 -1
  1209. package/dist/fonts.css.map +1 -1
  1210. package/dist/helpers/getScheme.d.ts +8 -0
  1211. package/dist/helpers/getScheme.js +28 -0
  1212. package/dist/helpers/getScheme.js.map +1 -0
  1213. package/dist/helpers/scheme.d.ts +34 -0
  1214. package/dist/helpers/scheme.js +61 -0
  1215. package/dist/helpers/scheme.js.map +1 -0
  1216. package/dist/hoc/withAdaptivity.d.ts +3 -2
  1217. package/dist/hoc/withAdaptivity.js +3 -4
  1218. package/dist/hoc/withAdaptivity.js.map +1 -1
  1219. package/dist/hoc/withContext.d.ts +1 -1
  1220. package/dist/hoc/withContext.js +1 -2
  1221. package/dist/hoc/withContext.js.map +1 -1
  1222. package/dist/hoc/withInsets.d.ts +3 -1
  1223. package/dist/hoc/withInsets.js +1 -2
  1224. package/dist/hoc/withInsets.js.map +1 -1
  1225. package/dist/hoc/withPlatform.d.ts +3 -1
  1226. package/dist/hoc/withPlatform.js +1 -2
  1227. package/dist/hoc/withPlatform.js.map +1 -1
  1228. package/dist/hooks/useAdaptivity.d.ts +2 -2
  1229. package/dist/hooks/useAdaptivity.js.map +1 -1
  1230. package/dist/hooks/useAppearance.d.ts +1 -1
  1231. package/dist/hooks/useEnsuredControl.d.ts +1 -1
  1232. package/dist/hooks/useEnsuredControl.js +1 -1
  1233. package/dist/hooks/useEnsuredControl.js.map +1 -1
  1234. package/dist/hooks/useEventListener.d.ts +3 -3
  1235. package/dist/hooks/useEventListener.js +2 -2
  1236. package/dist/hooks/useEventListener.js.map +1 -1
  1237. package/dist/hooks/useExternRef.d.ts +1 -1
  1238. package/dist/hooks/useExternRef.js +6 -3
  1239. package/dist/hooks/useExternRef.js.map +1 -1
  1240. package/dist/hooks/useFocusVisible.d.ts +1 -1
  1241. package/dist/hooks/useGlobalEventListener.d.ts +2 -2
  1242. package/dist/hooks/useGlobalEventListener.js +6 -2
  1243. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  1244. package/dist/hooks/useInsets.d.ts +7 -1
  1245. package/dist/hooks/useInsets.js.map +1 -1
  1246. package/dist/hooks/useKeyboard.js +36 -29
  1247. package/dist/hooks/useKeyboard.js.map +1 -1
  1248. package/dist/hooks/usePatchChildrenRef.d.ts +1 -1
  1249. package/dist/hooks/usePatchChildrenRef.js +1 -1
  1250. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1251. package/dist/hooks/usePlatform.d.ts +1 -1
  1252. package/dist/hooks/usePlatform.js.map +1 -1
  1253. package/dist/hooks/useTimeout.js +4 -2
  1254. package/dist/hooks/useTimeout.js.map +1 -1
  1255. package/dist/hooks/useWaitTransitionFinish.d.ts +1 -1
  1256. package/dist/hooks/useWaitTransitionFinish.js +5 -2
  1257. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1258. package/dist/index.d.ts +6 -4
  1259. package/dist/index.js +6 -4
  1260. package/dist/index.js.map +1 -1
  1261. package/dist/lib/SSR.d.ts +1 -1
  1262. package/dist/lib/SSR.js +1 -1
  1263. package/dist/lib/SSR.js.map +1 -1
  1264. package/dist/lib/accessibility.d.ts +1 -1
  1265. package/dist/lib/accessibility.js +3 -1
  1266. package/dist/lib/accessibility.js.map +1 -1
  1267. package/dist/lib/animate.js +1 -0
  1268. package/dist/lib/animate.js.map +1 -1
  1269. package/dist/lib/dom.d.ts +3 -3
  1270. package/dist/lib/dom.js +2 -2
  1271. package/dist/lib/dom.js.map +1 -1
  1272. package/dist/lib/getNavId.d.ts +1 -1
  1273. package/dist/lib/is.js +3 -1
  1274. package/dist/lib/is.js.map +1 -1
  1275. package/dist/lib/isRefObject.js.map +1 -1
  1276. package/dist/lib/jsxRuntime.d.ts +7 -3
  1277. package/dist/lib/jsxRuntime.js +3 -3
  1278. package/dist/lib/jsxRuntime.js.map +1 -1
  1279. package/dist/lib/offset.d.ts +5 -5
  1280. package/dist/lib/offset.js +5 -5
  1281. package/dist/lib/offset.js.map +1 -1
  1282. package/dist/lib/platform.d.ts +1 -1
  1283. package/dist/lib/platform.js.map +1 -1
  1284. package/dist/lib/polyfills.js.map +1 -1
  1285. package/dist/lib/prefixClass.d.ts +1 -1
  1286. package/dist/lib/prefixClass.js.map +1 -1
  1287. package/dist/lib/select.d.ts +2 -2
  1288. package/dist/lib/select.js +5 -3
  1289. package/dist/lib/select.js.map +1 -1
  1290. package/dist/lib/styles.d.ts +1 -1
  1291. package/dist/lib/styles.js.map +1 -1
  1292. package/dist/lib/supportEvents.d.ts +1 -1
  1293. package/dist/lib/supportEvents.js.map +1 -1
  1294. package/dist/lib/utils.d.ts +1 -1
  1295. package/dist/lib/utils.js +1 -1
  1296. package/dist/lib/utils.js.map +1 -1
  1297. package/dist/tokenized/index.d.ts +2 -0
  1298. package/dist/tokenized/index.js +2 -0
  1299. package/dist/tokenized/index.js.map +1 -0
  1300. package/dist/unstable.css.map +1 -1
  1301. package/dist/vkui.css +21 -18
  1302. package/dist/vkui.css.map +1 -1
  1303. package/package.json +39 -37
  1304. package/postcss.config.js +10 -1
  1305. package/src/components/ActionSheet/ActionSheet.tsx +3 -3
  1306. package/src/components/ActionSheet/ActionSheetContext.ts +11 -7
  1307. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +5 -7
  1308. package/src/components/ActionSheetItem/ActionSheetItem.tsx +14 -9
  1309. package/src/components/AdaptivityProvider/AdaptivityContext.tsx +6 -4
  1310. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +18 -13
  1311. package/src/components/Alert/Alert.tsx +33 -20
  1312. package/src/components/AppRoot/AppRoot.tsx +25 -19
  1313. package/src/components/AppRoot/AppRootContext.ts +1 -1
  1314. package/src/components/AppRoot/ScrollContext.ts +9 -9
  1315. package/src/components/AppearanceProvider/AppearanceProvider.tsx +44 -0
  1316. package/src/components/AppearanceProvider/AppearanceProviderContext.tsx +12 -0
  1317. package/src/components/Avatar/Avatar.tsx +8 -14
  1318. package/src/components/Banner/Banner.tsx +2 -1
  1319. package/src/components/Button/Button.css +9 -39
  1320. package/src/components/Button/Button.tsx +5 -5
  1321. package/src/components/Card/Card.css +14 -22
  1322. package/src/components/Card/Card.tsx +1 -0
  1323. package/src/components/CardGrid/CardGrid.tsx +1 -0
  1324. package/src/components/CardScroll/CardScroll.css +10 -23
  1325. package/src/components/CardScroll/CardScroll.tsx +27 -6
  1326. package/src/components/Cell/Cell.tsx +1 -1
  1327. package/src/components/Cell/useDraggable.tsx +53 -45
  1328. package/src/components/Checkbox/Checkbox.tsx +1 -0
  1329. package/src/components/Chip/Chip.tsx +1 -0
  1330. package/src/components/ChipsInput/ChipsInput.tsx +50 -45
  1331. package/src/components/ChipsInput/useChipsInput.ts +10 -9
  1332. package/src/components/ChipsSelect/ChipsSelect.tsx +78 -53
  1333. package/src/components/ChipsSelect/Readme.md +44 -57
  1334. package/src/components/ChipsSelect/useChipsSelect.ts +16 -10
  1335. package/src/components/ClickPopper/ClickPopper.tsx +11 -7
  1336. package/src/components/ConfigProvider/ConfigProvider.tsx +69 -57
  1337. package/src/components/ConfigProvider/ConfigProviderContext.tsx +1 -40
  1338. package/src/components/ContentCard/ContentCard.tsx +7 -0
  1339. package/src/components/Counter/Counter.tsx +1 -0
  1340. package/src/components/CustomScrollView/CustomScrollView.tsx +27 -20
  1341. package/src/components/CustomSelect/CustomSelect.tsx +70 -49
  1342. package/src/components/CustomSelect/Readme.md +1 -1
  1343. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -2
  1344. package/src/components/CustomSelectOption/CustomSelectOption.tsx +3 -2
  1345. package/src/components/DatePicker/DatePicker.tsx +14 -18
  1346. package/src/components/Div/Div.tsx +1 -0
  1347. package/src/components/Dropdown/Dropdown.tsx +4 -45
  1348. package/src/components/Epic/Epic.tsx +14 -9
  1349. package/src/components/Epic/ScrollSaver.tsx +1 -2
  1350. package/src/components/File/File.tsx +2 -1
  1351. package/src/components/FixedLayout/FixedLayout.tsx +4 -3
  1352. package/src/components/FocusTrap/FocusTrap.tsx +10 -8
  1353. package/src/components/FormItem/FormItem.tsx +5 -1
  1354. package/src/components/FormLayout/FormLayout.tsx +9 -9
  1355. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +6 -1
  1356. package/src/components/Gallery/Gallery.tsx +71 -63
  1357. package/src/components/Gradient/Gradient.tsx +1 -0
  1358. package/src/components/Group/Group.tsx +1 -0
  1359. package/src/components/Header/Header.tsx +3 -0
  1360. package/src/components/HorizontalScroll/HorizontalScroll.tsx +27 -8
  1361. package/src/components/HorizontalScroll/HorizontalScrollArrow.css +3 -1
  1362. package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +1 -0
  1363. package/src/components/HoverPopper/HoverPopper.tsx +6 -4
  1364. package/src/components/IconButton/IconButton.tsx +9 -0
  1365. package/src/components/InfoRow/InfoRow.tsx +1 -0
  1366. package/src/components/InitialsAvatar/InitialsAvatar.tsx +1 -1
  1367. package/src/components/Input/Input.tsx +1 -0
  1368. package/src/components/Link/Link.tsx +1 -0
  1369. package/src/components/List/List.tsx +1 -0
  1370. package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -1
  1371. package/src/components/ModalCard/ModalCard.tsx +8 -2
  1372. package/src/components/ModalCardBase/ModalCardBase.tsx +5 -3
  1373. package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -0
  1374. package/src/components/ModalPage/ModalPage.tsx +9 -3
  1375. package/src/components/ModalPageHeader/ModalPageHeader.css +9 -228
  1376. package/src/components/ModalPageHeader/ModalPageHeader.tsx +31 -41
  1377. package/src/components/ModalRoot/ModalRoot.tsx +93 -62
  1378. package/src/components/ModalRoot/ModalRootAdaptive.tsx +7 -4
  1379. package/src/components/ModalRoot/ModalRootContext.tsx +12 -8
  1380. package/src/components/ModalRoot/ModalRootDesktop.tsx +33 -19
  1381. package/src/components/ModalRoot/types.ts +1 -1
  1382. package/src/components/ModalRoot/useModalManager.tsx +31 -19
  1383. package/src/components/ModalRoot/withModalRootContext.tsx +4 -2
  1384. package/src/components/NativeSelect/NativeSelect.tsx +10 -7
  1385. package/src/components/Panel/Panel.tsx +7 -10
  1386. package/src/components/PanelHeader/PanelHeader.css +7 -3
  1387. package/src/components/PanelHeader/PanelHeader.tsx +11 -19
  1388. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -0
  1389. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +19 -7
  1390. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +1 -0
  1391. package/src/components/PanelHeaderContent/PanelHeaderContent.css +16 -5
  1392. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +4 -0
  1393. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +3 -3
  1394. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +1 -0
  1395. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +1 -0
  1396. package/src/components/PanelSpinner/PanelSpinner.tsx +1 -0
  1397. package/src/components/Placeholder/Placeholder.tsx +1 -0
  1398. package/src/components/PopoutRoot/PopoutRoot.tsx +8 -5
  1399. package/src/components/PopoutWrapper/PopoutWrapper.tsx +3 -3
  1400. package/src/components/Popper/Popper.tsx +18 -14
  1401. package/src/components/Progress/Progress.tsx +2 -5
  1402. package/src/components/PromoBanner/PromoBanner.tsx +9 -0
  1403. package/src/components/PullToRefresh/PullToRefresh.tsx +14 -7
  1404. package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +7 -14
  1405. package/src/components/Radio/Radio.tsx +1 -0
  1406. package/src/components/RangeSlider/RangeSlider.tsx +20 -13
  1407. package/src/components/RangeSlider/UniversalSlider.tsx +16 -14
  1408. package/src/components/Removable/Removable.tsx +15 -8
  1409. package/src/components/RichCell/RichCell.tsx +1 -0
  1410. package/src/components/RichTooltip/RichTooltip.tsx +2 -44
  1411. package/src/components/Root/Root.tsx +33 -11
  1412. package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -0
  1413. package/src/components/Search/Search.tsx +8 -7
  1414. package/src/components/Select/Select.tsx +7 -2
  1415. package/src/components/SelectMimicry/SelectMimicry.tsx +3 -2
  1416. package/src/components/Separator/Separator.tsx +1 -0
  1417. package/src/components/SimpleCell/SimpleCell.tsx +1 -0
  1418. package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +7 -5
  1419. package/src/components/Slider/Slider.tsx +23 -19
  1420. package/src/components/SliderSwitch/SliderSwitch.tsx +7 -4
  1421. package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -0
  1422. package/src/components/Snackbar/Readme.md +26 -0
  1423. package/src/components/Snackbar/Snackbar.tsx +15 -10
  1424. package/src/components/Spinner/Spinner.tsx +1 -0
  1425. package/src/components/SplitCol/SplitCol.tsx +2 -2
  1426. package/src/components/Tabbar/Tabbar.tsx +1 -0
  1427. package/src/components/TabbarItem/TabbarItem.tsx +9 -1
  1428. package/src/components/Tabs/Tabs.tsx +1 -0
  1429. package/src/components/TabsItem/TabsItem.tsx +1 -0
  1430. package/src/components/Tappable/Tappable.tsx +6 -5
  1431. package/src/components/TextTooltip/TextTooltip.tsx +3 -38
  1432. package/src/components/Textarea/Textarea.tsx +4 -3
  1433. package/src/components/Tooltip/Tooltip.tsx +20 -11
  1434. package/src/components/Touch/Touch.tsx +25 -12
  1435. package/src/components/Touch/TouchContext.ts +1 -0
  1436. package/src/components/Typography/Caption/Caption.tsx +1 -0
  1437. package/src/components/Typography/Headline/Headline.tsx +1 -0
  1438. package/src/components/Typography/Subhead/Subhead.tsx +1 -0
  1439. package/src/components/Typography/Text/Text.tsx +1 -0
  1440. package/src/components/Typography/Title/Title.tsx +1 -0
  1441. package/src/components/UsersStack/UsersStack.tsx +9 -1
  1442. package/src/components/UsersStack/masks.tsx +2 -2
  1443. package/src/components/View/View.tsx +98 -55
  1444. package/src/components/View/ViewInfinite.tsx +94 -66
  1445. package/src/components/WriteBar/WriteBar.tsx +5 -5
  1446. package/src/components/WriteBarIcon/WriteBarIcon.tsx +1 -1
  1447. package/src/helpers/getScheme.ts +27 -0
  1448. package/src/helpers/scheme.ts +86 -0
  1449. package/src/hoc/withAdaptivity.tsx +13 -6
  1450. package/src/hoc/withContext.tsx +4 -5
  1451. package/src/hoc/withInsets.tsx +7 -5
  1452. package/src/hoc/withPlatform.tsx +9 -5
  1453. package/src/hooks/useAdaptivity.ts +2 -1
  1454. package/src/hooks/useEnsuredControl.ts +2 -2
  1455. package/src/hooks/useEventListener.ts +32 -25
  1456. package/src/hooks/useExternRef.ts +10 -4
  1457. package/src/hooks/useGlobalEventListener.ts +19 -13
  1458. package/src/hooks/useInsets.ts +8 -1
  1459. package/src/hooks/useKeyboard.ts +33 -30
  1460. package/src/hooks/usePatchChildrenRef.ts +3 -3
  1461. package/src/hooks/usePlatform.ts +1 -1
  1462. package/src/hooks/useTimeout.ts +15 -11
  1463. package/src/hooks/useWaitTransitionFinish.ts +5 -3
  1464. package/src/index.ts +5 -5
  1465. package/src/lib/SSR.tsx +2 -2
  1466. package/src/lib/accessibility.ts +1 -1
  1467. package/src/lib/animate.ts +1 -0
  1468. package/src/lib/dom.tsx +3 -3
  1469. package/src/lib/isRefObject.ts +1 -1
  1470. package/src/lib/jsxRuntime.ts +5 -7
  1471. package/src/lib/offset.ts +10 -10
  1472. package/src/lib/platform.ts +5 -1
  1473. package/src/lib/polyfills.ts +2 -2
  1474. package/src/lib/prefixClass.ts +1 -1
  1475. package/src/lib/select.ts +4 -4
  1476. package/src/lib/styles.ts +1 -1
  1477. package/src/lib/supportEvents.ts +1 -1
  1478. package/src/lib/utils.ts +4 -2
  1479. package/src/styles/bright_light.css +2 -1
  1480. package/src/styles/space_gray.css +2 -1
  1481. package/src/styles/themes.css +6 -0
  1482. package/src/styles/vkcom_dark.css +2 -1
  1483. package/src/styles/vkcom_light.css +2 -1
  1484. package/src/testing/utils.tsx +4 -5
  1485. package/src/tokenized/index.ts +2 -0
  1486. package/tokenized/index.d.ts +1 -0
  1487. package/tokenized/package.json +4 -0
  1488. package/tsconfig.json +1 -3
  1489. package/webpack.config.js +10 -8
  1490. package/webpack.styles.config.js +5 -2
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/View/View.tsx"],"names":["warn","SwipeBackResults","scrollsCache","View","props","e","includes","animationName","flushTransition","state","prevPanel","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","platform","configProvider","IOS","isWebView","startX","window","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","scrolls","activePanel","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","undefined","nextPanel","document","React","Children","toArray","children","id","prevProps","prevState","popout","blurActiveElement","modal","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","animationEvent","supported","clearTimeout","animationFinishTimeout","setTimeout","transitionEndHandler","ANDROID","VKCOM","scrollTo","onTransition","from","to","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","removeEventListener","name","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","disableAnimation","modifiers","onMoveX","onEnd","isTransitionTarget","compensateScroll","el","calcPanelSwipeStyles","marginTop","Component","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nconst warn = warnOnce(\"View\");\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: number;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nexport let scrollsCache: ViewsScrolls = {};\n\nexport interface ViewProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewState {\n animated: boolean;\n\n visiblePanels: string[];\n activePanel: string;\n isBack: boolean;\n prevPanel: string;\n nextPanel: string;\n\n swipingBack: boolean;\n swipebackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string;\n swipeBackPrevPanel: string;\n swipeBackResult: SwipeBackResults;\n\n browserSwipe: boolean;\n}\n\nclass View extends React.Component<ViewProps & DOMProps, ViewState> {\n constructor(props: ViewProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipebackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewProps> = {\n history: [],\n };\n\n private readonly scrolls = scrollsCache[getNavId(this.props)] || {};\n private transitionFinishTimeout: ReturnType<typeof setTimeout>;\n private animationFinishTimeout: ReturnType<typeof setTimeout>;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n }\n\n componentDidUpdate(prevProps: ViewProps, prevState: ViewState) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find(\n (id) => id === prevProps.activePanel || id === this.props.activePanel\n );\n\n const isBack = firstLayerId === this.props.activePanel;\n this.scrolls[prevProps.activePanel] = this.props.scroll.getScroll().y;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.blurActiveElement();\n\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n clearTimeout(this.animationFinishTimeout);\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.props.activePanel;\n const prevPanel = prevProps.activePanel;\n this.scrolls[prevState.swipeBackPrevPanel] = 0;\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n this.props.scroll.scrollTo(0, this.scrolls[this.state.activePanel]);\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n }\n );\n }\n\n // Начался свайп назад\n if (!prevState.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult\n ) {\n this.props.scroll.scrollTo(0, this.scrolls[this.state.activePanel]);\n }\n\n // Закончился Safari свайп\n if (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider.transitionMotionEnabled === false ||\n !this.props.splitCol.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported) {\n elem.removeEventListener(transitionEvent.name, eventHandler);\n elem.addEventListener(transitionEvent.name, eventHandler);\n } else {\n clearTimeout(this.transitionFinishTimeout);\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string) {\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n if (isBack) {\n this.scrolls[prevPanel] = 0;\n }\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll.scrollTo(0, isBack ? this.scrolls[activePanel] : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n }\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n !e ||\n [\n \"vkui-animation-ios-next-forward\",\n \"vkui-animation-ios-prev-back\",\n \"vkui-animation-view-next-forward\",\n \"vkui-animation-view-prev-back\",\n ].includes(e.animationName)\n ) {\n this.flushTransition(this.state.prevPanel, this.state.isBack);\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e?.propertyName.includes(\"transform\") &&\n e?.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (e: TouchEvent): void => {\n if (swipeBackExcluded(e)) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider.isWebView &&\n (e.startX <= 70 || e.startX >= this.window.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider.isWebView &&\n this.props.onSwipeBack\n ) {\n if (this.state.animated && e.startX <= 70) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n this.props.history.length > 1\n ) {\n this.scrolls[this.state.activePanel] = this.props.scroll.getScroll().y;\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string): React.CSSProperties {\n if (!canUseDOM) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n isBack,\n animated,\n } = this.state;\n\n const hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels.filter((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n this.state.visiblePanels.includes(panelId) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n const modifiers = {\n \"View--animated\": !disableAnimation && animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isTransitionTarget =\n animated && panelId === (isBack ? prevPanel : nextPanel);\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n\n return (\n <div\n vkuiClass={classNames(\"View__panel\", {\n \"View__panel--active\": panelId === activePanel,\n \"View__panel--prev\": panelId === prevPanel,\n \"View__panel--next\": panelId === nextPanel,\n \"View__panel--swipe-back-prev\":\n panelId === swipeBackPrevPanel,\n \"View__panel--swipe-back-next\":\n panelId === swipeBackNextPanel,\n \"View__panel--swipe-back-success\":\n swipeBackResult === SwipeBackResults.success,\n \"View__panel--swipe-back-failed\":\n swipeBackResult === SwipeBackResults.fail,\n })}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : null\n }\n ref={(el) => (this.panelNodes[panelId] = el)}\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{\n marginTop: compensateScroll ? -this.scrolls[panelId] : null,\n }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\nexport default withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewProps>(View)),\n SplitColContext,\n \"splitCol\"\n ),\n ConfigProviderContext,\n \"configProvider\"\n ),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"View.js"}
1
+ {"version":3,"sources":["../../../../src/components/View/View.tsx"],"names":["SwipeBackResults","scrollsCache","warn","View","props","undefined","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","platform","configProvider","IOS","isWebView","startX","window","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","activePanel","scrolls","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","nextPanel","document","React","Children","toArray","children","process","env","NODE_ENV","popout","modal","id","prevProps","prevState","blurActiveElement","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","animationEvent","supported","animationFinishTimeout","clearTimeout","setTimeout","transitionEndHandler","ANDROID","VKCOM","scrollTo","onTransition","from","to","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","name","removeEventListener","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","disableAnimation","modifiers","onMoveX","onEnd","isTransitionTarget","compensateScroll","el","calcPanelSwipeStyles","marginTop","Component","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: number | undefined;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nexport let scrollsCache: ViewsScrolls = {};\n\nexport interface ViewProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewState {\n animated: boolean;\n\n visiblePanels: string[];\n activePanel: string | null;\n isBack: boolean | undefined;\n prevPanel: string | null;\n nextPanel: string | null;\n\n swipingBack: boolean;\n swipebackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string | null;\n swipeBackPrevPanel: string | null;\n swipeBackResult: SwipeBackResults | null;\n\n browserSwipe: boolean;\n}\n\nconst warn = warnOnce(\"View\");\nclass View extends React.Component<ViewProps & DOMProps, ViewState> {\n constructor(props: ViewProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipebackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewProps> = {\n history: [],\n };\n\n private readonly scrolls = scrollsCache[getNavId(this.props) as string] || {};\n private transitionFinishTimeout: number | undefined = undefined;\n private animationFinishTimeout: number | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentDidMount() {\n if (process.env.NODE_ENV === \"development\") {\n const { popout, modal } = this.props;\n popout &&\n warn(\n \"Свойство popout устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n modal &&\n warn(\n \"Свойство modal устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n }\n }\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n }\n\n componentDidUpdate(prevProps: ViewProps, prevState: ViewState) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find(\n (id) => id === prevProps.activePanel || id === this.props.activePanel\n );\n\n const isBack = firstLayerId === this.props.activePanel;\n this.scrolls[prevProps.activePanel] = this.props.scroll?.getScroll().y;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.blurActiveElement();\n\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.props.activePanel;\n const prevPanel = prevProps.activePanel;\n if (prevState.swipeBackPrevPanel !== null) {\n this.scrolls[prevState.swipeBackPrevPanel] = 0;\n }\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n if (this.state.activePanel !== null) {\n this.props.scroll?.scrollTo(\n 0,\n this.scrolls[this.state.activePanel]\n );\n }\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n }\n );\n }\n\n // Начался свайп назад\n if (!prevState.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n this.props.scroll?.scrollTo(0, this.scrolls[this.state.activePanel]);\n }\n\n // Закончился Safari свайп\n if (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n if (isBack) {\n this.scrolls[prevPanel] = 0;\n }\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll?.scrollTo(0, isBack ? this.scrolls[activePanel] : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n }\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n (!e ||\n [\n \"vkui-animation-ios-next-forward\",\n \"vkui-animation-ios-prev-back\",\n \"vkui-animation-view-next-forward\",\n \"vkui-animation-view-prev-back\",\n ].includes(e.animationName)) &&\n this.state.prevPanel !== null\n ) {\n this.flushTransition(this.state.prevPanel, Boolean(this.state.isBack));\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e?.propertyName.includes(\"transform\") &&\n e?.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (e: TouchEvent): void => {\n if (swipeBackExcluded(e)) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider?.isWebView &&\n (e.startX <= 70 || e.startX >= this.window!.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider?.isWebView &&\n this.props.onSwipeBack\n ) {\n if ((this.state.animated && e.startX <= 70) || !this.window) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n (this.props.history?.length ?? 0) > 1\n ) {\n if (this.state.activePanel !== null) {\n this.scrolls[this.state.activePanel] =\n this.props.scroll?.getScroll().y;\n }\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history!.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift = 0;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window?.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= (this.window?.innerWidth ?? 0)) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n isBack,\n animated,\n } = this.state;\n\n const hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels.filter((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined && this.state.visiblePanels.includes(panelId)) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n const modifiers = {\n \"View--animated\": !disableAnimation && animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isTransitionTarget =\n animated && panelId === (isBack ? prevPanel : nextPanel);\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n\n return (\n <div\n vkuiClass={classNames(\"View__panel\", {\n \"View__panel--active\": panelId === activePanel,\n \"View__panel--prev\": panelId === prevPanel,\n \"View__panel--next\": panelId === nextPanel,\n \"View__panel--swipe-back-prev\":\n panelId === swipeBackPrevPanel,\n \"View__panel--swipe-back-next\":\n panelId === swipeBackNextPanel,\n \"View__panel--swipe-back-success\":\n swipeBackResult === SwipeBackResults.success,\n \"View__panel--swipe-back-failed\":\n swipeBackResult === SwipeBackResults.fail,\n })}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : undefined\n }\n ref={(el) =>\n panelId !== undefined && (this.panelNodes[panelId] = el)\n }\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{\n marginTop: compensateScroll\n ? -(this.scrolls[panelId as string] ?? 0)\n : undefined,\n }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\n// eslint-disable-next-line import/no-default-export\nexport default withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewProps>(View)),\n SplitColContext,\n \"splitCol\"\n ),\n ConfigProviderContext,\n \"configProvider\"\n ),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"View.js"}
@@ -10,8 +10,8 @@ declare enum SwipeBackResults {
10
10
  success = 2
11
11
  }
12
12
  export declare type TransitionParams = {
13
- from: string;
14
- to: string;
13
+ from: string | null;
14
+ to: string | null;
15
15
  };
16
16
  export interface ViewInfiniteProps extends React.HTMLAttributes<HTMLElement>, HasPlatform, NavIdProps {
17
17
  activePanel: string;
@@ -49,18 +49,18 @@ export interface ViewInfiniteProps extends React.HTMLAttributes<HTMLElement>, Ha
49
49
  }
50
50
  export interface ViewInfiniteState {
51
51
  animated: boolean;
52
- visiblePanels: string[];
53
- activePanel: string;
54
- isBack: boolean;
55
- prevPanel: string;
56
- nextPanel: string;
52
+ visiblePanels: Array<string | null>;
53
+ activePanel: string | null;
54
+ isBack?: boolean;
55
+ prevPanel: string | null;
56
+ nextPanel: string | null;
57
57
  swipingBack: boolean;
58
58
  swipebackStartX: number;
59
59
  swipeBackShift: number;
60
- swipeBackNextPanel: string;
61
- swipeBackPrevPanel: string;
62
- swipeBackResult: SwipeBackResults;
60
+ swipeBackNextPanel: string | null;
61
+ swipeBackPrevPanel: string | null;
62
+ swipeBackResult: SwipeBackResults | null;
63
63
  browserSwipe: boolean;
64
64
  }
65
- declare const _default: React.FC<ViewInfiniteProps>;
65
+ declare const _default: React.FC<Pick<ViewInfiniteProps, "hidden" | "dir" | "nav" | "slot" | "style" | "title" | "scroll" | "color" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "role" | "tabIndex" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "popout" | "modal" | "onTransition" | "activePanel" | "onSwipeBack" | "onSwipeBackStart" | "onSwipeBackCancel" | "history" | "splitCol" | "configProvider" | "isBackCheck">>;
66
66
  export default _default;
@@ -17,7 +17,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
17
17
 
18
18
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
19
19
 
20
- var _objectSpread7 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
20
+ var _objectSpread6 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
21
21
 
22
22
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
23
23
 
@@ -87,12 +87,12 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
87
87
  (0, _classCallCheck2.default)(this, ViewInfinite);
88
88
  _this = _super.call(this, props);
89
89
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "scrolls", scrollsCache[(0, _getNavId.getNavId)(_this.props, warn)] || {});
90
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "transitionFinishTimeout", void 0);
91
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "animationFinishTimeout", void 0);
90
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "transitionFinishTimeout", undefined);
91
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "animationFinishTimeout", undefined);
92
92
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "panelNodes", {});
93
93
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "transitionEndHandler", function (e) {
94
- if (!e || ["vkui-animation-ios-next-forward", "vkui-animation-ios-prev-back", "vkui-animation-view-next-forward", "vkui-animation-view-prev-back"].includes(e.animationName)) {
95
- _this.flushTransition(_this.state.prevPanel, _this.state.isBack);
94
+ if ((!e || ["vkui-animation-ios-next-forward", "vkui-animation-ios-prev-back", "vkui-animation-view-next-forward", "vkui-animation-view-prev-back"].includes(e.animationName)) && _this.state.prevPanel !== null) {
95
+ _this.flushTransition(_this.state.prevPanel, Boolean(_this.state.isBack));
96
96
  }
97
97
  });
98
98
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "swipingBackTransitionEndHandler", function (e) {
@@ -111,7 +111,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
111
111
  }
112
112
  });
113
113
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onMoveX", function (e) {
114
- if ((0, _utils.swipeBackExcluded)(e)) {
114
+ if ((0, _utils.swipeBackExcluded)(e) || !_this.window) {
115
115
  return;
116
116
  }
117
117
 
@@ -119,20 +119,26 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
119
119
  platform = _this$props.platform,
120
120
  configProvider = _this$props.configProvider;
121
121
 
122
- if (platform === _platform.IOS && !configProvider.isWebView && (e.startX <= 70 || e.startX >= _this.window.innerWidth - 70) && !_this.state.browserSwipe) {
122
+ if (platform === _platform.IOS && !(configProvider !== null && configProvider !== void 0 && configProvider.isWebView) && (e.startX <= 70 || e.startX >= _this.window.innerWidth - 70) && !_this.state.browserSwipe) {
123
123
  _this.setState({
124
124
  browserSwipe: true
125
125
  });
126
126
  }
127
127
 
128
- if (platform === _platform.IOS && configProvider.isWebView && _this.props.onSwipeBack) {
128
+ if (platform === _platform.IOS && configProvider !== null && configProvider !== void 0 && configProvider.isWebView && _this.props.onSwipeBack) {
129
+ var _this$props$history$l, _this$props$history;
130
+
129
131
  if (_this.state.animated && e.startX <= 70) {
130
132
  return;
131
133
  }
132
134
 
133
- if (e.startX <= 70 && !_this.state.swipingBack && _this.props.history.length > 1) {
134
- var prevScrolls = _this.scrolls[_this.state.activePanel] || [];
135
- _this.scrolls = (0, _objectSpread7.default)((0, _objectSpread7.default)({}, _this.scrolls), {}, (0, _defineProperty2.default)({}, _this.state.activePanel, [].concat((0, _toConsumableArray2.default)(prevScrolls), [_this.props.scroll.getScroll().y])));
135
+ if (e.startX <= 70 && !_this.state.swipingBack && ((_this$props$history$l = (_this$props$history = _this.props.history) === null || _this$props$history === void 0 ? void 0 : _this$props$history.length) !== null && _this$props$history$l !== void 0 ? _this$props$history$l : 0) > 1) {
136
+ if (_this.state.activePanel !== null) {
137
+ var _this$props$scroll;
138
+
139
+ var prevScrolls = _this.scrolls[_this.state.activePanel] || [];
140
+ _this.scrolls = (0, _objectSpread6.default)((0, _objectSpread6.default)({}, _this.scrolls), {}, (0, _defineProperty2.default)({}, _this.state.activePanel, [].concat((0, _toConsumableArray2.default)(prevScrolls), [(_this$props$scroll = _this.props.scroll) === null || _this$props$scroll === void 0 ? void 0 : _this$props$scroll.getScroll().y])));
141
+ }
136
142
 
137
143
  _this.setState({
138
144
  swipingBack: true,
@@ -160,7 +166,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
160
166
  }
161
167
  });
162
168
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onEnd", function (e) {
163
- if (_this.state.swipingBack) {
169
+ if (_this.state.swipingBack && _this.window) {
164
170
  var speed = _this.state.swipeBackShift / e.duration * 1000;
165
171
 
166
172
  if (_this.state.swipeBackShift === 0) {
@@ -229,6 +235,8 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
229
235
  this.props.modal && !prevProps.modal && this.blurActiveElement(); // Нужен переход
230
236
 
231
237
  if (prevProps.activePanel !== this.props.activePanel && !prevState.swipingBack && !prevState.browserSwipe) {
238
+ var _this$props$scroll2;
239
+
232
240
  var isBack = false;
233
241
 
234
242
  if (this.props.isBackCheck) {
@@ -247,7 +255,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
247
255
 
248
256
  this.blurActiveElement();
249
257
  var prevScrolls = this.scrolls[prevProps.activePanel] || [];
250
- var scrolls = (0, _objectSpread7.default)((0, _objectSpread7.default)({}, this.scrolls), {}, (0, _defineProperty2.default)({}, prevProps.activePanel, [].concat((0, _toConsumableArray2.default)(prevScrolls), [this.props.scroll.getScroll().y])));
258
+ var scrolls = (0, _objectSpread6.default)((0, _objectSpread6.default)({}, this.scrolls), {}, (0, _defineProperty2.default)({}, prevProps.activePanel, [].concat((0, _toConsumableArray2.default)(prevScrolls), [(_this$props$scroll2 = this.props.scroll) === null || _this$props$scroll2 === void 0 ? void 0 : _this$props$scroll2.getScroll().y])));
251
259
  this.scrolls = scrolls;
252
260
 
253
261
  if (this.shouldDisableTransitionMotion()) {
@@ -263,7 +271,10 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
263
271
  }); // Фолбек анимации перехода
264
272
 
265
273
  if (!_supportEvents.animationEvent.supported) {
266
- clearTimeout(this.animationFinishTimeout);
274
+ if (this.animationFinishTimeout) {
275
+ clearTimeout(this.animationFinishTimeout);
276
+ }
277
+
267
278
  this.animationFinishTimeout = setTimeout(this.transitionEndHandler, this.props.platform === _platform.ANDROID || this.props.platform === _platform.VKCOM ? 300 : 600);
268
279
  }
269
280
  }
@@ -271,14 +282,22 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
271
282
 
272
283
 
273
284
  if (prevProps.activePanel !== this.props.activePanel && prevState.swipingBack) {
274
- var _objectSpread4;
275
-
276
285
  var nextPanel = this.state.swipeBackNextPanel;
277
286
  var prevPanel = this.state.swipeBackPrevPanel;
278
- var prevPanelScrolls = (0, _toConsumableArray2.default)(this.scrolls[prevPanel] || []).slice(0, -1);
279
- var newPanelScrolls = (0, _toConsumableArray2.default)(this.scrolls[nextPanel] || []);
280
- var scrollPosition = newPanelScrolls.pop();
281
- this.scrolls = (0, _objectSpread7.default)((0, _objectSpread7.default)({}, this.scrolls), {}, (_objectSpread4 = {}, (0, _defineProperty2.default)(_objectSpread4, nextPanel, newPanelScrolls), (0, _defineProperty2.default)(_objectSpread4, prevPanel, prevPanelScrolls), _objectSpread4));
287
+ var scrollPosition = undefined;
288
+ this.scrolls = (0, _objectSpread6.default)({}, this.scrolls);
289
+
290
+ if (prevPanel !== null) {
291
+ var prevPanelScrolls = (0, _toConsumableArray2.default)(this.scrolls[prevPanel] || []).slice(0, -1);
292
+ this.scrolls[prevPanel] = prevPanelScrolls;
293
+ }
294
+
295
+ if (nextPanel !== null) {
296
+ var newPanelScrolls = (0, _toConsumableArray2.default)(this.scrolls[nextPanel] || []);
297
+ scrollPosition = newPanelScrolls.pop();
298
+ this.scrolls[nextPanel] = newPanelScrolls;
299
+ }
300
+
282
301
  this.setState({
283
302
  swipeBackPrevPanel: null,
284
303
  swipeBackNextPanel: null,
@@ -289,8 +308,9 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
289
308
  activePanel: nextPanel,
290
309
  visiblePanels: [nextPanel]
291
310
  }, function () {
292
- _this2.props.scroll.scrollTo(0, scrollPosition);
311
+ var _this2$props$scroll;
293
312
 
313
+ (_this2$props$scroll = _this2.props.scroll) === null || _this2$props$scroll === void 0 ? void 0 : _this2$props$scroll.scrollTo(0, scrollPosition);
294
314
  prevProps.onTransition && prevProps.onTransition({
295
315
  isBack: true,
296
316
  from: prevPanel,
@@ -310,13 +330,15 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
310
330
  } // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)
311
331
 
312
332
 
313
- if (prevState.swipeBackResult === SwipeBackResults.fail && !this.state.swipeBackResult) {
333
+ if (prevState.swipeBackResult === SwipeBackResults.fail && !this.state.swipeBackResult && this.state.activePanel !== null) {
334
+ var _this$props$scroll3;
335
+
314
336
  var _newPanelScrolls = (0, _toConsumableArray2.default)(this.scrolls[this.state.activePanel] || []);
315
337
 
316
338
  var _scrollPosition = _newPanelScrolls.pop();
317
339
 
318
- this.scrolls = (0, _objectSpread7.default)((0, _objectSpread7.default)({}, this.scrolls), {}, (0, _defineProperty2.default)({}, this.state.activePanel, _newPanelScrolls));
319
- this.props.scroll.scrollTo(0, _scrollPosition);
340
+ this.scrolls = (0, _objectSpread6.default)((0, _objectSpread6.default)({}, this.scrolls), {}, (0, _defineProperty2.default)({}, this.state.activePanel, _newPanelScrolls));
341
+ (_this$props$scroll3 = this.props.scroll) === null || _this$props$scroll3 === void 0 ? void 0 : _this$props$scroll3.scrollTo(0, _scrollPosition);
320
342
  } // Закончился Safari свайп
321
343
 
322
344
 
@@ -334,29 +356,40 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
334
356
  }, {
335
357
  key: "shouldDisableTransitionMotion",
336
358
  value: function shouldDisableTransitionMotion() {
337
- return this.props.configProvider.transitionMotionEnabled === false || !this.props.splitCol.animate;
359
+ var _this$props$configPro, _this$props$splitCol;
360
+
361
+ return ((_this$props$configPro = this.props.configProvider) === null || _this$props$configPro === void 0 ? void 0 : _this$props$configPro.transitionMotionEnabled) === false || !((_this$props$splitCol = this.props.splitCol) !== null && _this$props$splitCol !== void 0 && _this$props$splitCol.animate);
338
362
  }
339
363
  }, {
340
364
  key: "waitTransitionFinish",
341
365
  value: function waitTransitionFinish(elem, eventHandler) {
342
- if (_supportEvents.transitionEvent.supported) {
366
+ if (_supportEvents.transitionEvent.supported && _supportEvents.transitionEvent.name && elem) {
343
367
  elem.removeEventListener(_supportEvents.transitionEvent.name, eventHandler);
344
368
  elem.addEventListener(_supportEvents.transitionEvent.name, eventHandler);
345
369
  } else {
346
- clearTimeout(this.transitionFinishTimeout);
370
+ if (this.transitionFinishTimeout) {
371
+ clearTimeout(this.transitionFinishTimeout);
372
+ }
373
+
347
374
  this.transitionFinishTimeout = setTimeout(eventHandler, this.props.platform === _platform.ANDROID || this.props.platform === _platform.VKCOM ? 300 : 600);
348
375
  }
349
376
  }
350
377
  }, {
351
378
  key: "blurActiveElement",
352
379
  value: function blurActiveElement() {
353
- if (typeof this.window !== "undefined" && this.document.activeElement) {
380
+ var _this$document;
381
+
382
+ if (typeof this.window !== "undefined" && (_this$document = this.document) !== null && _this$document !== void 0 && _this$document.activeElement) {
354
383
  this.document.activeElement.blur();
355
384
  }
356
385
  }
357
386
  }, {
358
387
  key: "pickPanel",
359
388
  value: function pickPanel(id) {
389
+ if (id === null) {
390
+ return undefined;
391
+ }
392
+
360
393
  return this.panelNodes[id];
361
394
  }
362
395
  }, {
@@ -370,9 +403,9 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
370
403
  var scrollPosition = isBack ? newPanelScrolls.pop() : 0;
371
404
 
372
405
  if (isBack) {
373
- var _objectSpread6;
406
+ var _objectSpread5;
374
407
 
375
- this.scrolls = (0, _objectSpread7.default)((0, _objectSpread7.default)({}, this.scrolls), {}, (_objectSpread6 = {}, (0, _defineProperty2.default)(_objectSpread6, prevPanel, prevPanelScrolls), (0, _defineProperty2.default)(_objectSpread6, activePanel, newPanelScrolls), _objectSpread6));
408
+ this.scrolls = (0, _objectSpread6.default)((0, _objectSpread6.default)({}, this.scrolls), {}, (_objectSpread5 = {}, (0, _defineProperty2.default)(_objectSpread5, prevPanel, prevPanelScrolls), (0, _defineProperty2.default)(_objectSpread5, activePanel, newPanelScrolls), _objectSpread5));
376
409
  }
377
410
 
378
411
  this.setState({
@@ -383,8 +416,9 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
383
416
  animated: false,
384
417
  isBack: undefined
385
418
  }, function () {
386
- _this3.props.scroll.scrollTo(0, isBack ? scrollPosition : 0);
419
+ var _this3$props$scroll;
387
420
 
421
+ (_this3$props$scroll = _this3.props.scroll) === null || _this3$props$scroll === void 0 ? void 0 : _this3$props$scroll.scrollTo(0, isBack ? scrollPosition : 0);
388
422
  _this3.props.onTransition && _this3.props.onTransition({
389
423
  isBack: isBack,
390
424
  from: prevPanel,
@@ -413,7 +447,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
413
447
  }, {
414
448
  key: "calcPanelSwipeStyles",
415
449
  value: function calcPanelSwipeStyles(panelId) {
416
- if (!_dom.canUseDOM) {
450
+ if (!_dom.canUseDOM || !this.window) {
417
451
  return {};
418
452
  }
419
453
 
@@ -489,7 +523,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
489
523
  var hasModal = !!modal;
490
524
  var panels = this.panels.filter(function (panel) {
491
525
  var panelId = (0, _getNavId.getNavId)(panel.props, warn);
492
- return _this4.state.visiblePanels.includes(panelId) || panelId === swipeBackPrevPanel || panelId === swipeBackNextPanel;
526
+ return panelId !== undefined && _this4.state.visiblePanels.includes(panelId) || panelId === swipeBackPrevPanel || panelId === swipeBackNextPanel;
493
527
  }).sort(function (panel) {
494
528
  var panelId = (0, _getNavId.getNavId)(panel.props, warn);
495
529
  var isPrevPanel = panelId === prevPanel || panelId === swipeBackPrevPanel;
@@ -524,7 +558,7 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
524
558
  var isPrev = panelId === prevPanel || panelId === swipeBackPrevPanel;
525
559
  var compensateScroll = isPrev || panelId === swipeBackNextPanel || panelId === nextPanel && isBack;
526
560
  var isTransitionTarget = animated && panelId === (isBack ? prevPanel : nextPanel);
527
- var scrollList = _this4.scrolls[panelId] || [];
561
+ var scrollList = panelId && _this4.scrolls[panelId] || [];
528
562
  var scroll = scrollList[scrollList.length - 1] || 0;
529
563
  return (0, _jsxRuntime.createScopedElement)("div", {
530
564
  vkuiClass: (0, _classNames.classNames)("View__panel", {
@@ -536,16 +570,16 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
536
570
  "View__panel--swipe-back-success": swipeBackResult === SwipeBackResults.success,
537
571
  "View__panel--swipe-back-failed": swipeBackResult === SwipeBackResults.fail
538
572
  }),
539
- onAnimationEnd: isTransitionTarget ? _this4.transitionEndHandler : null,
573
+ onAnimationEnd: isTransitionTarget ? _this4.transitionEndHandler : undefined,
540
574
  ref: function ref(el) {
541
- return _this4.panelNodes[panelId] = el;
575
+ return panelId !== undefined && (_this4.panelNodes[panelId] = el);
542
576
  },
543
577
  style: _this4.calcPanelSwipeStyles(panelId),
544
578
  key: panelId
545
579
  }, (0, _jsxRuntime.createScopedElement)("div", {
546
580
  vkuiClass: "View__panel-in",
547
581
  style: {
548
- marginTop: compensateScroll ? -scroll : null
582
+ marginTop: compensateScroll ? -scroll : undefined
549
583
  }
550
584
  }, (0, _jsxRuntime.createScopedElement)(_NavTransitionContext.NavTransitionProvider, {
551
585
  entering: panelId === nextPanel || panelId === swipeBackNextPanel
@@ -558,7 +592,8 @@ var ViewInfinite = /*#__PURE__*/function (_React$Component) {
558
592
  }
559
593
  }]);
560
594
  return ViewInfinite;
561
- }(React.Component);
595
+ }(React.Component); // eslint-disable-next-line import/no-default-export
596
+
562
597
 
563
598
  (0, _defineProperty2.default)(ViewInfinite, "defaultProps", {
564
599
  history: []