@vkontakte/vkui 4.28.0 → 4.29.1

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 (1753) hide show
  1. package/.browserslistrc +2 -0
  2. package/.cache/.eslintcache +1 -0
  3. package/.cache/.stylelintcache +1 -0
  4. package/.cache/.tsbuildinfo +53757 -0
  5. package/.cache/ts/src/appearance/constants.d.ts +1 -0
  6. package/.cache/ts/src/components/ActionSheet/ActionSheet.d.ts +26 -0
  7. package/.cache/ts/src/components/ActionSheet/ActionSheetContext.d.ts +8 -0
  8. package/.cache/ts/src/components/ActionSheet/ActionSheetDropdown.d.ts +4 -0
  9. package/.cache/ts/src/components/ActionSheet/ActionSheetDropdownDesktop.d.ts +4 -0
  10. package/.cache/ts/src/components/ActionSheet/types.d.ts +9 -0
  11. package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +20 -0
  12. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityContext.d.ts +46 -0
  13. package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +10 -0
  14. package/.cache/ts/src/components/Alert/Alert.d.ts +27 -0
  15. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +14 -0
  16. package/.cache/ts/src/components/AppRoot/AppRootContext.d.ts +9 -0
  17. package/.cache/ts/src/components/AppRoot/AppRootPortal.d.ts +5 -0
  18. package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +15 -0
  19. package/.cache/ts/src/components/AppearanceProvider/AppearanceProvider.d.ts +7 -0
  20. package/.cache/ts/src/components/AppearanceProvider/AppearanceProviderContext.d.ts +3 -0
  21. package/.cache/ts/src/components/Avatar/Avatar.d.ts +22 -0
  22. package/.cache/ts/src/components/Badge/Badge.d.ts +6 -0
  23. package/.cache/ts/src/components/Banner/Banner.d.ts +65 -0
  24. package/.cache/ts/src/components/Button/Button.d.ts +19 -0
  25. package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +20 -0
  26. package/.cache/ts/src/components/Calendar/Calendar.d.ts +21 -0
  27. package/.cache/ts/src/components/CalendarDay/CalendarDay.d.ts +22 -0
  28. package/.cache/ts/src/components/CalendarDays/CalendarDays.d.ts +22 -0
  29. package/.cache/ts/src/components/CalendarHeader/CalendarHeader.d.ts +16 -0
  30. package/.cache/ts/src/components/CalendarRange/CalendarRange.d.ts +16 -0
  31. package/.cache/ts/src/components/CalendarTime/CalendarTime.d.ts +11 -0
  32. package/.cache/ts/src/components/Card/Card.d.ts +7 -0
  33. package/.cache/ts/src/components/CardGrid/CardGrid.d.ts +8 -0
  34. package/.cache/ts/src/components/CardScroll/CardScroll.d.ts +12 -0
  35. package/.cache/ts/src/components/Cell/Cell.d.ts +47 -0
  36. package/.cache/ts/src/components/Cell/CellCheckbox/CellCheckbox.d.ts +5 -0
  37. package/.cache/ts/src/components/Cell/CellDragger/CellDragger.d.ts +6 -0
  38. package/.cache/ts/src/components/Cell/useDraggable.d.ts +13 -0
  39. package/.cache/ts/src/components/CellButton/CellButton.d.ts +9 -0
  40. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +10 -0
  41. package/.cache/ts/src/components/Chip/Chip.d.ts +16 -0
  42. package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +29 -0
  43. package/.cache/ts/src/components/ChipsInput/useChipsInput.d.ts +14 -0
  44. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +40 -0
  45. package/.cache/ts/src/components/ChipsSelect/useChipsSelect.d.ts +22 -0
  46. package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +21 -0
  47. package/.cache/ts/src/components/ConfigProvider/ConfigProvider.d.ts +16 -0
  48. package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +36 -0
  49. package/.cache/ts/src/components/ContentCard/ContentCard.d.ts +34 -0
  50. package/.cache/ts/src/components/Counter/Counter.d.ts +11 -0
  51. package/.cache/ts/src/components/CustomScrollView/CustomScrollView.d.ts +10 -0
  52. package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +65 -0
  53. package/.cache/ts/src/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +15 -0
  54. package/.cache/ts/src/components/CustomSelectOption/CustomSelectOption.d.ts +44 -0
  55. package/.cache/ts/src/components/DateInput/DateInput.d.ts +12 -0
  56. package/.cache/ts/src/components/DatePicker/DatePicker.d.ts +24 -0
  57. package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +18 -0
  58. package/.cache/ts/src/components/Div/Div.d.ts +6 -0
  59. package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +8 -0
  60. package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +3 -0
  61. package/.cache/ts/src/components/Epic/Epic.d.ts +10 -0
  62. package/.cache/ts/src/components/Epic/ScrollSaver.d.ts +6 -0
  63. package/.cache/ts/src/components/File/File.d.ts +9 -0
  64. package/.cache/ts/src/components/FixedLayout/FixedLayout.d.ts +19 -0
  65. package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +8 -0
  66. package/.cache/ts/src/components/FocusVisible/FocusVisible.d.ts +8 -0
  67. package/.cache/ts/src/components/Footer/Footer.d.ts +5 -0
  68. package/.cache/ts/src/components/FormField/FormField.d.ts +28 -0
  69. package/.cache/ts/src/components/FormItem/FormItem.d.ts +14 -0
  70. package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +6 -0
  71. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +13 -0
  72. package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +7 -0
  73. package/.cache/ts/src/components/Gallery/Gallery.d.ts +47 -0
  74. package/.cache/ts/src/components/Gradient/Gradient.d.ts +7 -0
  75. package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +9 -0
  76. package/.cache/ts/src/components/Group/Group.d.ts +23 -0
  77. package/.cache/ts/src/components/Header/Header.d.ts +18 -0
  78. package/.cache/ts/src/components/HorizontalCell/HorizontalCell.d.ts +10 -0
  79. package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +18 -0
  80. package/.cache/ts/src/components/HorizontalScroll/HorizontalScrollArrow.d.ts +8 -0
  81. package/.cache/ts/src/components/HoverPopper/HoverPopper.d.ts +29 -0
  82. package/.cache/ts/src/components/IconButton/IconButton.d.ts +11 -0
  83. package/.cache/ts/src/components/InfoRow/InfoRow.d.ts +7 -0
  84. package/.cache/ts/src/components/InitialsAvatar/InitialsAvatar.d.ts +32 -0
  85. package/.cache/ts/src/components/Input/Input.d.ts +8 -0
  86. package/.cache/ts/src/components/InputLike/InputLike.d.ts +10 -0
  87. package/.cache/ts/src/components/InputLike/InputLikeDivider.d.ts +3 -0
  88. package/.cache/ts/src/components/Link/Link.d.ts +6 -0
  89. package/.cache/ts/src/components/List/List.d.ts +4 -0
  90. package/.cache/ts/src/components/List/ListContext.d.ts +4 -0
  91. package/.cache/ts/src/components/LocaleProviderContext/LocaleProviderContext.d.ts +2 -0
  92. package/.cache/ts/src/components/MiniInfoCell/MiniInfoCell.d.ts +39 -0
  93. package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +10 -0
  94. package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +36 -0
  95. package/.cache/ts/src/components/ModalDismissButton/ModalDismissButton.d.ts +5 -0
  96. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +37 -0
  97. package/.cache/ts/src/components/ModalPageHeader/ModalPageHeader.d.ts +8 -0
  98. package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +28 -0
  99. package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +22 -0
  100. package/.cache/ts/src/components/ModalRoot/ModalRootContext.d.ts +20 -0
  101. package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +28 -0
  102. package/.cache/ts/src/components/ModalRoot/constants.d.ts +3 -0
  103. package/.cache/ts/src/components/ModalRoot/types.d.ts +60 -0
  104. package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +38 -0
  105. package/.cache/ts/src/components/ModalRoot/withModalRootContext.d.ts +5 -0
  106. package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +14 -0
  107. package/.cache/ts/src/components/NavTransitionContext/NavTransitionContext.d.ts +7 -0
  108. package/.cache/ts/src/components/Pagination/Pagination.d.ts +42 -0
  109. package/.cache/ts/src/components/Panel/Panel.d.ts +9 -0
  110. package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +21 -0
  111. package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +9 -0
  112. package/.cache/ts/src/components/PanelHeaderButton/PanelHeaderButton.d.ts +8 -0
  113. package/.cache/ts/src/components/PanelHeaderClose/PanelHeaderClose.d.ts +4 -0
  114. package/.cache/ts/src/components/PanelHeaderContent/PanelHeaderContent.d.ts +9 -0
  115. package/.cache/ts/src/components/PanelHeaderContext/PanelHeaderContext.d.ts +7 -0
  116. package/.cache/ts/src/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +18 -0
  117. package/.cache/ts/src/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +4 -0
  118. package/.cache/ts/src/components/PanelSpinner/PanelSpinner.d.ts +7 -0
  119. package/.cache/ts/src/components/Placeholder/Placeholder.d.ts +23 -0
  120. package/.cache/ts/src/components/PopoutRoot/PopoutRoot.d.ts +10 -0
  121. package/.cache/ts/src/components/PopoutWrapper/PopoutWrapper.d.ts +10 -0
  122. package/.cache/ts/src/components/Popper/Popper.d.ts +32 -0
  123. package/.cache/ts/src/components/Progress/Progress.d.ts +8 -0
  124. package/.cache/ts/src/components/PromoBanner/PromoBanner.d.ts +40 -0
  125. package/.cache/ts/src/components/PullToRefresh/PullToRefresh.d.ts +37 -0
  126. package/.cache/ts/src/components/PullToRefresh/PullToRefreshSpinner.d.ts +11 -0
  127. package/.cache/ts/src/components/Radio/Radio.d.ts +9 -0
  128. package/.cache/ts/src/components/RadioGroup/RadioGroup.d.ts +6 -0
  129. package/.cache/ts/src/components/RangeSlider/RangeSlider.d.ts +6 -0
  130. package/.cache/ts/src/components/RangeSlider/UniversalSlider.d.ts +16 -0
  131. package/.cache/ts/src/components/Removable/Removable.d.ts +21 -0
  132. package/.cache/ts/src/components/RichCell/RichCell.d.ts +37 -0
  133. package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +5 -0
  134. package/.cache/ts/src/components/Root/Root.d.ts +31 -0
  135. package/.cache/ts/src/components/ScreenSpinner/ScreenSpinner.d.ts +6 -0
  136. package/.cache/ts/src/components/Search/Search.d.ts +17 -0
  137. package/.cache/ts/src/components/SegmentedControl/SegmentedControl.d.ts +17 -0
  138. package/.cache/ts/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +4 -0
  139. package/.cache/ts/src/components/Select/Select.d.ts +6 -0
  140. package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +14 -0
  141. package/.cache/ts/src/components/Separator/Separator.d.ts +11 -0
  142. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +39 -0
  143. package/.cache/ts/src/components/SimpleCheckbox/SimpleCheckbox.d.ts +8 -0
  144. package/.cache/ts/src/components/Slider/Slider.d.ts +5 -0
  145. package/.cache/ts/src/components/SliderSwitch/SliderSwitch.d.ts +47 -0
  146. package/.cache/ts/src/components/SliderSwitch/SliderSwitchButton.d.ts +11 -0
  147. package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +35 -0
  148. package/.cache/ts/src/components/Spacing/Spacing.d.ts +18 -0
  149. package/.cache/ts/src/components/Spinner/Spinner.d.ts +7 -0
  150. package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +22 -0
  151. package/.cache/ts/src/components/SplitLayout/SplitLayout.d.ts +15 -0
  152. package/.cache/ts/src/components/SubnavigationBar/SubnavigationBar.d.ts +7 -0
  153. package/.cache/ts/src/components/SubnavigationButton/SubnavigationButton.d.ts +21 -0
  154. package/.cache/ts/src/components/Switch/Switch.d.ts +7 -0
  155. package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +11 -0
  156. package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +21 -0
  157. package/.cache/ts/src/components/Tabs/Tabs.d.ts +10 -0
  158. package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +8 -0
  159. package/.cache/ts/src/components/Tappable/Tappable.d.ts +42 -0
  160. package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +14 -0
  161. package/.cache/ts/src/components/Textarea/Textarea.d.ts +11 -0
  162. package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +55 -0
  163. package/.cache/ts/src/components/Tooltip/TooltipContainer.d.ts +5 -0
  164. package/.cache/ts/src/components/Touch/Touch.d.ts +49 -0
  165. package/.cache/ts/src/components/Touch/TouchContext.d.ts +7 -0
  166. package/.cache/ts/src/components/Typography/Caption/Caption.d.ts +14 -0
  167. package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +8 -0
  168. package/.cache/ts/src/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  169. package/.cache/ts/src/components/Typography/Subhead/Subhead.d.ts +12 -0
  170. package/.cache/ts/src/components/Typography/Text/Text.d.ts +8 -0
  171. package/.cache/ts/src/components/Typography/Title/Title.d.ts +13 -0
  172. package/.cache/ts/src/components/UsersStack/UsersStack.d.ts +23 -0
  173. package/.cache/ts/src/components/UsersStack/masks.d.ts +1 -0
  174. package/.cache/ts/src/components/View/View.d.ts +80 -0
  175. package/.cache/ts/src/components/View/ViewInfinite.d.ts +66 -0
  176. package/.cache/ts/src/components/View/utils.d.ts +2 -0
  177. package/.cache/ts/src/components/VisuallyHiddenInput/VisuallyHiddenInput.d.ts +12 -0
  178. package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +23 -0
  179. package/.cache/ts/src/components/WriteBarIcon/WriteBarIcon.d.ts +18 -0
  180. package/.cache/ts/src/helpers/avatar.d.ts +5 -0
  181. package/.cache/ts/src/helpers/getClassName.d.ts +2 -0
  182. package/.cache/ts/src/helpers/getScheme.d.ts +8 -0
  183. package/.cache/ts/src/helpers/math.d.ts +5 -0
  184. package/.cache/ts/src/helpers/scheme.d.ts +34 -0
  185. package/.cache/ts/src/hoc/withAdaptivity.d.ts +13 -0
  186. package/.cache/ts/src/hoc/withContext.d.ts +2 -0
  187. package/.cache/ts/src/hoc/withInsets.d.ts +3 -0
  188. package/.cache/ts/src/hoc/withPlatform.d.ts +3 -0
  189. package/.cache/ts/src/hooks/useAdaptivity.d.ts +3 -0
  190. package/.cache/ts/src/hooks/useAppearance.d.ts +1 -0
  191. package/.cache/ts/src/hooks/useBooleanState.d.ts +6 -0
  192. package/.cache/ts/src/hooks/useBridgeAdaptivity.d.ts +6 -0
  193. package/.cache/ts/src/hooks/useBrowserInfo.d.ts +2 -0
  194. package/.cache/ts/src/hooks/useCalendar.d.ts +18 -0
  195. package/.cache/ts/src/hooks/useDateInput.d.ts +30 -0
  196. package/.cache/ts/src/hooks/useEffectDev.d.ts +2 -0
  197. package/.cache/ts/src/hooks/useEnsuredControl.d.ts +6 -0
  198. package/.cache/ts/src/hooks/useEventListener.d.ts +7 -0
  199. package/.cache/ts/src/hooks/useExternRef.d.ts +2 -0
  200. package/.cache/ts/src/hooks/useFocusVisible.d.ts +6 -0
  201. package/.cache/ts/src/hooks/useGlobalEventListener.d.ts +2 -0
  202. package/.cache/ts/src/hooks/useInsets.d.ts +8 -0
  203. package/.cache/ts/src/hooks/useKeyboard.d.ts +11 -0
  204. package/.cache/ts/src/hooks/useKeyboardInputTracker.d.ts +3 -0
  205. package/.cache/ts/src/hooks/useObjectMemo.d.ts +2 -0
  206. package/.cache/ts/src/hooks/useOrientationChange.d.ts +7 -0
  207. package/.cache/ts/src/hooks/usePagination.d.ts +34 -0
  208. package/.cache/ts/src/hooks/usePatchChildrenRef.d.ts +6 -0
  209. package/.cache/ts/src/hooks/usePlatform.d.ts +2 -0
  210. package/.cache/ts/src/hooks/useTimeout.d.ts +4 -0
  211. package/.cache/ts/src/hooks/useWaitTransitionFinish.d.ts +3 -0
  212. package/.cache/ts/src/index.d.ts +300 -0
  213. package/.cache/ts/src/lib/SSR.d.ts +14 -0
  214. package/.cache/ts/src/lib/accessibility.d.ts +10 -0
  215. package/.cache/ts/src/lib/animate.d.ts +15 -0
  216. package/.cache/ts/src/lib/browser.d.ts +11 -0
  217. package/.cache/ts/src/lib/calendar.d.ts +14 -0
  218. package/.cache/ts/src/lib/callMultiple.d.ts +1 -0
  219. package/.cache/ts/src/lib/classNames.d.ts +6 -0
  220. package/.cache/ts/src/lib/classScopingMode.d.ts +8 -0
  221. package/.cache/ts/src/lib/date.d.ts +29 -0
  222. package/.cache/ts/src/lib/dom.d.ts +21 -0
  223. package/.cache/ts/src/lib/fx.d.ts +5 -0
  224. package/.cache/ts/src/lib/getNavId.d.ts +7 -0
  225. package/.cache/ts/src/lib/is.d.ts +1 -0
  226. package/.cache/ts/src/lib/isRefObject.d.ts +2 -0
  227. package/.cache/ts/src/lib/jsxRuntime.d.ts +8 -0
  228. package/.cache/ts/src/lib/offset.d.ts +7 -0
  229. package/.cache/ts/src/lib/platform.d.ts +19 -0
  230. package/.cache/ts/src/lib/polyfills.d.ts +6 -0
  231. package/.cache/ts/src/lib/prefixClass.d.ts +1 -0
  232. package/.cache/ts/src/lib/removeObjectKeys.d.ts +1 -0
  233. package/.cache/ts/src/lib/select.d.ts +7 -0
  234. package/.cache/ts/src/lib/styles.d.ts +1 -0
  235. package/.cache/ts/src/lib/supportEvents.d.ts +9 -0
  236. package/.cache/ts/src/lib/taptic.d.ts +2 -0
  237. package/.cache/ts/src/lib/testing.d.ts +1 -0
  238. package/.cache/ts/src/lib/touch.d.ts +9 -0
  239. package/.cache/ts/src/lib/useIsomorphicLayoutEffect.d.ts +2 -0
  240. package/.cache/ts/src/lib/utils.d.ts +16 -0
  241. package/.cache/ts/src/lib/warnOnce.d.ts +2 -0
  242. package/.cache/ts/src/testing/setup.d.ts +1 -0
  243. package/.cache/ts/src/testing/utils.d.ts +31 -0
  244. package/.cache/ts/src/tokenized/index.d.ts +42 -0
  245. package/.cache/ts/src/types.d.ts +34 -0
  246. package/.cache/ts/src/unstable/index.d.ts +17 -0
  247. package/.codesandbox/ci.json +5 -0
  248. package/.editorconfig +14 -0
  249. package/.eslintignore +6 -0
  250. package/.eslintrc.json +151 -0
  251. package/.gitattributes +1 -0
  252. package/.gitmodules +0 -0
  253. package/.prettierignore +14 -0
  254. package/.prettierrc.json +1 -0
  255. package/.stylelintignore +2 -0
  256. package/CONTRIBUTING.md +3 -2
  257. package/CSS_GUIDE.md +145 -0
  258. package/TESTING.md +58 -0
  259. package/babel.cjs.config.js +15 -0
  260. package/babel.config.js +72 -0
  261. package/dist/cjs/components/ActionSheet/ActionSheet.js +8 -8
  262. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  263. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +2 -1
  264. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  265. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  266. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  267. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +10 -11
  268. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  269. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +44 -11
  270. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  271. package/dist/cjs/components/Alert/Alert.d.ts +4 -1
  272. package/dist/cjs/components/Alert/Alert.js +32 -16
  273. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  274. package/dist/cjs/components/AppRoot/AppRoot.js +20 -3
  275. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  276. package/dist/cjs/components/AppRoot/ScrollContext.d.ts +6 -14
  277. package/dist/cjs/components/AppRoot/ScrollContext.js +94 -2
  278. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  279. package/dist/cjs/components/Avatar/Avatar.js +4 -1
  280. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  281. package/dist/cjs/components/Banner/Banner.js +5 -4
  282. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  283. package/dist/cjs/components/Button/Button.d.ts +1 -2
  284. package/dist/cjs/components/Button/Button.js +40 -49
  285. package/dist/cjs/components/Button/Button.js.map +1 -1
  286. package/dist/cjs/components/Calendar/Calendar.js +5 -5
  287. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  288. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -1
  289. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  290. package/dist/cjs/components/CalendarDays/CalendarDays.js +5 -5
  291. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  292. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +15 -15
  293. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  294. package/dist/cjs/components/CalendarRange/CalendarRange.js +12 -15
  295. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  296. package/dist/cjs/components/CalendarTime/CalendarTime.js +8 -10
  297. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  298. package/dist/cjs/components/CardScroll/CardScroll.js +3 -2
  299. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  300. package/dist/cjs/components/Cell/Cell.d.ts +1 -1
  301. package/dist/cjs/components/Cell/Cell.js +4 -3
  302. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  303. package/dist/cjs/components/CellButton/CellButton.js +1 -0
  304. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  305. package/dist/cjs/components/Checkbox/Checkbox.js +2 -5
  306. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  307. package/dist/cjs/components/Chip/Chip.js +3 -4
  308. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  309. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -2
  310. package/dist/cjs/components/ChipsInput/ChipsInput.js +7 -10
  311. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  312. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +2 -2
  313. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +10 -16
  314. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  315. package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
  316. package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
  317. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +1 -1
  318. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  319. package/dist/cjs/components/ContentCard/ContentCard.js +9 -10
  320. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  321. package/dist/cjs/components/Counter/Counter.js +3 -3
  322. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  323. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
  324. package/dist/cjs/components/CustomSelect/CustomSelect.js +45 -43
  325. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  326. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  327. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  328. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  329. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +26 -18
  330. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  331. package/dist/cjs/components/DateInput/DateInput.js +5 -5
  332. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  333. package/dist/cjs/components/DatePicker/DatePicker.js +6 -6
  334. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  335. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +7 -7
  336. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  337. package/dist/cjs/components/Epic/Epic.js +1 -1
  338. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  339. package/dist/cjs/components/File/File.js +2 -2
  340. package/dist/cjs/components/File/File.js.map +1 -1
  341. package/dist/cjs/components/FixedLayout/FixedLayout.js +2 -1
  342. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  343. package/dist/cjs/components/Footer/Footer.js +2 -4
  344. package/dist/cjs/components/Footer/Footer.js.map +1 -1
  345. package/dist/cjs/components/FormField/FormField.d.ts +15 -1
  346. package/dist/cjs/components/FormField/FormField.js +8 -8
  347. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  348. package/dist/cjs/components/FormItem/FormItem.js +6 -7
  349. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  350. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  351. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  352. package/dist/cjs/components/FormStatus/FormStatus.js +3 -8
  353. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  354. package/dist/cjs/components/Gallery/Gallery.d.ts +9 -1
  355. package/dist/cjs/components/Gallery/Gallery.js +10 -2
  356. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  357. package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +1 -0
  358. package/dist/cjs/components/GridAvatar/GridAvatar.js +6 -6
  359. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  360. package/dist/cjs/components/Group/Group.js +5 -6
  361. package/dist/cjs/components/Group/Group.js.map +1 -1
  362. package/dist/cjs/components/Header/Header.js +18 -24
  363. package/dist/cjs/components/Header/Header.js.map +1 -1
  364. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +6 -9
  365. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  366. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  367. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +34 -24
  368. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  369. package/dist/cjs/components/InfoRow/InfoRow.js +2 -2
  370. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  371. package/dist/cjs/components/Input/Input.d.ts +1 -2
  372. package/dist/cjs/components/Input/Input.js +13 -15
  373. package/dist/cjs/components/Input/Input.js.map +1 -1
  374. package/dist/cjs/components/List/List.js +1 -0
  375. package/dist/cjs/components/List/List.js.map +1 -1
  376. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -0
  377. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  378. package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
  379. package/dist/cjs/components/ModalCard/ModalCard.js +1 -0
  380. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  381. package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  382. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +10 -4
  383. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  384. package/dist/cjs/components/ModalPage/ModalPage.d.ts +16 -1
  385. package/dist/cjs/components/ModalPage/ModalPage.js +10 -6
  386. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  387. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +1 -0
  388. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  389. package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +14 -2
  390. package/dist/cjs/components/ModalRoot/ModalRoot.js +14 -11
  391. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  392. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  393. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +3 -0
  394. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  395. package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  396. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +10 -7
  397. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  398. package/dist/cjs/components/ModalRoot/types.d.ts +16 -1
  399. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  400. package/dist/cjs/components/ModalRoot/useModalManager.d.ts +6 -5
  401. package/dist/cjs/components/ModalRoot/useModalManager.js +54 -16
  402. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  403. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -2
  404. package/dist/cjs/components/NativeSelect/NativeSelect.js +7 -8
  405. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  406. package/dist/cjs/components/Pagination/Pagination.d.ts +3 -3
  407. package/dist/cjs/components/Pagination/Pagination.js +3 -3
  408. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  409. package/dist/cjs/components/Panel/Panel.js +2 -1
  410. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  411. package/dist/cjs/components/PanelHeader/PanelHeader.js +1 -0
  412. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  413. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  414. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  415. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +5 -4
  416. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  417. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +2 -4
  418. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  419. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +5 -1
  420. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  421. package/dist/cjs/components/Placeholder/Placeholder.js +4 -3
  422. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  423. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +1 -0
  424. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  425. package/dist/cjs/components/Popper/Popper.js +2 -2
  426. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  427. package/dist/cjs/components/PromoBanner/PromoBanner.js +5 -9
  428. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  429. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -1
  430. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  431. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  432. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  433. package/dist/cjs/components/Radio/Radio.js +2 -5
  434. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  435. package/dist/cjs/components/RichCell/RichCell.js +3 -2
  436. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  437. package/dist/cjs/components/RichTooltip/RichTooltip.js +2 -1
  438. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  439. package/dist/cjs/components/Root/Root.js +8 -7
  440. package/dist/cjs/components/Root/Root.js.map +1 -1
  441. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +3 -0
  442. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  443. package/dist/cjs/components/Search/Search.js +3 -2
  444. package/dist/cjs/components/Search/Search.js.map +1 -1
  445. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +19 -13
  446. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  447. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  448. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  449. package/dist/cjs/components/Select/Select.d.ts +1 -2
  450. package/dist/cjs/components/Select/Select.js +9 -11
  451. package/dist/cjs/components/Select/Select.js.map +1 -1
  452. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  453. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +5 -2
  454. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  455. package/dist/cjs/components/Separator/Separator.js +3 -1
  456. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  457. package/dist/cjs/components/SimpleCell/SimpleCell.js +5 -4
  458. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  459. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  460. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  461. package/dist/cjs/components/SliderSwitch/SliderSwitch.js +1 -0
  462. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  463. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +1 -0
  464. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  465. package/dist/cjs/components/Snackbar/Snackbar.js +3 -2
  466. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  467. package/dist/cjs/components/Spacing/Spacing.js +2 -1
  468. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  469. package/dist/cjs/components/SplitCol/SplitCol.js +2 -1
  470. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  471. package/dist/cjs/components/SplitLayout/SplitLayout.js +2 -1
  472. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  473. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +2 -2
  474. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  475. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +7 -7
  476. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  477. package/dist/cjs/components/Switch/Switch.js +1 -0
  478. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  479. package/dist/cjs/components/Tabbar/Tabbar.js +1 -0
  480. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  481. package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -1
  482. package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -1
  483. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  484. package/dist/cjs/components/TabsItem/TabsItem.js +3 -2
  485. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  486. package/dist/cjs/components/Tappable/Tappable.js +5 -4
  487. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  488. package/dist/cjs/components/TextTooltip/TextTooltip.js +3 -3
  489. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  490. package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
  491. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  492. package/dist/cjs/components/Touch/Touch.js +9 -3
  493. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  494. package/dist/cjs/components/Touch/TouchContext.d.ts +1 -1
  495. package/dist/cjs/components/Touch/TouchContext.js +1 -1
  496. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  497. package/dist/cjs/components/Typography/Caption/Caption.d.ts +8 -4
  498. package/dist/cjs/components/Typography/Caption/Caption.js +12 -14
  499. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  500. package/dist/cjs/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  501. package/dist/cjs/components/Typography/Paragraph/Paragraph.js +42 -0
  502. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -0
  503. package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +4 -3
  504. package/dist/cjs/components/Typography/Subhead/Subhead.js +4 -6
  505. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  506. package/dist/cjs/components/Typography/Text/Text.js +1 -1
  507. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  508. package/dist/cjs/components/Typography/Title/Title.d.ts +4 -3
  509. package/dist/cjs/components/Typography/Title/Title.js +5 -9
  510. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  511. package/dist/cjs/components/UsersStack/UsersStack.js +6 -6
  512. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  513. package/dist/cjs/components/View/View.js +5 -0
  514. package/dist/cjs/components/View/View.js.map +1 -1
  515. package/dist/cjs/components/View/ViewInfinite.js +5 -0
  516. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  517. package/dist/cjs/components/View/utils.js +5 -2
  518. package/dist/cjs/components/View/utils.js.map +1 -1
  519. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +3 -2
  520. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  521. package/dist/cjs/helpers/scheme.js +2 -2
  522. package/dist/cjs/helpers/scheme.js.map +1 -1
  523. package/dist/cjs/hooks/useBridgeAdaptivity.d.ts +6 -0
  524. package/dist/cjs/hooks/useBridgeAdaptivity.js +85 -0
  525. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -0
  526. package/dist/cjs/hooks/useCalendar.js +6 -6
  527. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  528. package/dist/cjs/hooks/useKeyboard.d.ts +1 -1
  529. package/dist/cjs/hooks/useKeyboard.js +1 -1
  530. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  531. package/dist/cjs/hooks/useOrientationChange.d.ts +7 -0
  532. package/dist/cjs/hooks/useOrientationChange.js +56 -0
  533. package/dist/cjs/hooks/useOrientationChange.js.map +1 -0
  534. package/dist/cjs/hooks/usePagination.d.ts +3 -3
  535. package/dist/cjs/hooks/usePagination.js +3 -3
  536. package/dist/cjs/hooks/usePagination.js.map +1 -1
  537. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  538. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  539. package/dist/cjs/hooks/useWaitTransitionFinish.js +6 -1
  540. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  541. package/dist/cjs/index.d.ts +22 -11
  542. package/dist/cjs/index.js +30 -22
  543. package/dist/cjs/index.js.map +1 -1
  544. package/dist/cjs/lib/calendar.js +12 -23
  545. package/dist/cjs/lib/calendar.js.map +1 -1
  546. package/dist/cjs/lib/date.d.ts +29 -0
  547. package/dist/cjs/lib/date.js +286 -0
  548. package/dist/cjs/lib/date.js.map +1 -0
  549. package/dist/cjs/lib/getNavId.d.ts +2 -1
  550. package/dist/cjs/lib/getNavId.js +1 -1
  551. package/dist/cjs/lib/getNavId.js.map +1 -1
  552. package/dist/cjs/lib/platform.js +29 -0
  553. package/dist/cjs/lib/platform.js.map +1 -1
  554. package/dist/cjs/lib/warnOnce.d.ts +2 -1
  555. package/dist/cjs/lib/warnOnce.js +3 -1
  556. package/dist/cjs/lib/warnOnce.js.map +1 -1
  557. package/dist/cjs/tokenized/index.d.ts +24 -4
  558. package/dist/cjs/tokenized/index.js +88 -10
  559. package/dist/cjs/tokenized/index.js.map +1 -1
  560. package/dist/components/ActionSheet/ActionSheet.js +5 -6
  561. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  562. package/dist/components/ActionSheet/ActionSheetDropdown.js +2 -1
  563. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  564. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  565. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  566. package/dist/components/ActionSheetItem/ActionSheetItem.js +6 -7
  567. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  568. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
  569. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  570. package/dist/components/Alert/Alert.d.ts +4 -1
  571. package/dist/components/Alert/Alert.js +25 -11
  572. package/dist/components/Alert/Alert.js.map +1 -1
  573. package/dist/components/AppRoot/AppRoot.js +19 -3
  574. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  575. package/dist/components/AppRoot/ScrollContext.d.ts +6 -14
  576. package/dist/components/AppRoot/ScrollContext.js +87 -1
  577. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  578. package/dist/components/Avatar/Avatar.js +4 -1
  579. package/dist/components/Avatar/Avatar.js.map +1 -1
  580. package/dist/components/Banner/Banner.js +3 -2
  581. package/dist/components/Banner/Banner.js.map +1 -1
  582. package/dist/components/Button/Button.d.ts +1 -2
  583. package/dist/components/Button/Button.js +32 -40
  584. package/dist/components/Button/Button.js.map +1 -1
  585. package/dist/components/Calendar/Calendar.js +3 -3
  586. package/dist/components/Calendar/Calendar.js.map +1 -1
  587. package/dist/components/CalendarDay/CalendarDay.js +4 -1
  588. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  589. package/dist/components/CalendarDays/CalendarDays.js +2 -2
  590. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  591. package/dist/components/CalendarHeader/CalendarHeader.js +8 -8
  592. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  593. package/dist/components/CalendarRange/CalendarRange.js +2 -5
  594. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  595. package/dist/components/CalendarTime/CalendarTime.js +3 -3
  596. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  597. package/dist/components/CardScroll/CardScroll.js +2 -1
  598. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  599. package/dist/components/Cell/Cell.d.ts +1 -1
  600. package/dist/components/Cell/Cell.js +4 -3
  601. package/dist/components/Cell/Cell.js.map +1 -1
  602. package/dist/components/CellButton/CellButton.js +1 -0
  603. package/dist/components/CellButton/CellButton.js.map +1 -1
  604. package/dist/components/Checkbox/Checkbox.js +1 -4
  605. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  606. package/dist/components/Chip/Chip.js +2 -3
  607. package/dist/components/Chip/Chip.js.map +1 -1
  608. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -2
  609. package/dist/components/ChipsInput/ChipsInput.js +6 -11
  610. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  611. package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -2
  612. package/dist/components/ChipsSelect/ChipsSelect.js +4 -9
  613. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  614. package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
  615. package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
  616. package/dist/components/ConfigProvider/ConfigProvider.js +1 -1
  617. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  618. package/dist/components/ContentCard/ContentCard.js +6 -7
  619. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  620. package/dist/components/Counter/Counter.js +2 -2
  621. package/dist/components/Counter/Counter.js.map +1 -1
  622. package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
  623. package/dist/components/CustomSelect/CustomSelect.js +40 -36
  624. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  625. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  626. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  627. package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  628. package/dist/components/CustomSelectOption/CustomSelectOption.js +20 -18
  629. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  630. package/dist/components/DateInput/DateInput.js +3 -3
  631. package/dist/components/DateInput/DateInput.js.map +1 -1
  632. package/dist/components/DatePicker/DatePicker.js +2 -2
  633. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  634. package/dist/components/DateRangeInput/DateRangeInput.js +2 -2
  635. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  636. package/dist/components/Epic/Epic.js +1 -1
  637. package/dist/components/Epic/Epic.js.map +1 -1
  638. package/dist/components/File/File.js +1 -1
  639. package/dist/components/File/File.js.map +1 -1
  640. package/dist/components/FixedLayout/FixedLayout.js +2 -1
  641. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  642. package/dist/components/Footer/Footer.js +1 -3
  643. package/dist/components/Footer/Footer.js.map +1 -1
  644. package/dist/components/FormField/FormField.d.ts +15 -1
  645. package/dist/components/FormField/FormField.js +8 -8
  646. package/dist/components/FormField/FormField.js.map +1 -1
  647. package/dist/components/FormItem/FormItem.js +4 -5
  648. package/dist/components/FormItem/FormItem.js.map +1 -1
  649. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  650. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  651. package/dist/components/FormStatus/FormStatus.js +2 -7
  652. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  653. package/dist/components/Gallery/Gallery.d.ts +9 -1
  654. package/dist/components/Gallery/Gallery.js +10 -2
  655. package/dist/components/Gallery/Gallery.js.map +1 -1
  656. package/dist/components/GridAvatar/GridAvatar.d.ts +1 -0
  657. package/dist/components/GridAvatar/GridAvatar.js +5 -6
  658. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  659. package/dist/components/Group/Group.js +4 -5
  660. package/dist/components/Group/Group.js.map +1 -1
  661. package/dist/components/Header/Header.js +13 -19
  662. package/dist/components/Header/Header.js.map +1 -1
  663. package/dist/components/HorizontalCell/HorizontalCell.js +3 -6
  664. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  665. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  666. package/dist/components/HorizontalScroll/HorizontalScroll.js +32 -21
  667. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  668. package/dist/components/InfoRow/InfoRow.js +1 -1
  669. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  670. package/dist/components/Input/Input.d.ts +1 -2
  671. package/dist/components/Input/Input.js +10 -10
  672. package/dist/components/Input/Input.js.map +1 -1
  673. package/dist/components/List/List.js +1 -0
  674. package/dist/components/List/List.js.map +1 -1
  675. package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -0
  676. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  677. package/dist/components/ModalCard/ModalCard.d.ts +1 -1
  678. package/dist/components/ModalCard/ModalCard.js +1 -0
  679. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  680. package/dist/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  681. package/dist/components/ModalCardBase/ModalCardBase.js +9 -3
  682. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  683. package/dist/components/ModalPage/ModalPage.d.ts +16 -1
  684. package/dist/components/ModalPage/ModalPage.js +9 -6
  685. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  686. package/dist/components/ModalPageHeader/ModalPageHeader.js +1 -0
  687. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  688. package/dist/components/ModalRoot/ModalRoot.d.ts +14 -2
  689. package/dist/components/ModalRoot/ModalRoot.js +14 -11
  690. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  691. package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  692. package/dist/components/ModalRoot/ModalRootAdaptive.js +2 -0
  693. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  694. package/dist/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  695. package/dist/components/ModalRoot/ModalRootDesktop.js +10 -7
  696. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  697. package/dist/components/ModalRoot/types.d.ts +16 -1
  698. package/dist/components/ModalRoot/types.js.map +1 -1
  699. package/dist/components/ModalRoot/useModalManager.d.ts +6 -5
  700. package/dist/components/ModalRoot/useModalManager.js +54 -16
  701. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  702. package/dist/components/NativeSelect/NativeSelect.d.ts +1 -2
  703. package/dist/components/NativeSelect/NativeSelect.js +5 -5
  704. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  705. package/dist/components/Pagination/Pagination.d.ts +3 -3
  706. package/dist/components/Pagination/Pagination.js +1 -1
  707. package/dist/components/Pagination/Pagination.js.map +1 -1
  708. package/dist/components/Panel/Panel.js +2 -1
  709. package/dist/components/Panel/Panel.js.map +1 -1
  710. package/dist/components/PanelHeader/PanelHeader.js +1 -0
  711. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  712. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  713. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  714. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
  715. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  716. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +1 -3
  717. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  718. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +4 -1
  719. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  720. package/dist/components/Placeholder/Placeholder.js +3 -2
  721. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  722. package/dist/components/PopoutWrapper/PopoutWrapper.js +1 -0
  723. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  724. package/dist/components/Popper/Popper.js +2 -2
  725. package/dist/components/Popper/Popper.js.map +1 -1
  726. package/dist/components/PromoBanner/PromoBanner.js +2 -6
  727. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  728. package/dist/components/PullToRefresh/PullToRefresh.js +2 -1
  729. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  730. package/dist/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  731. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  732. package/dist/components/Radio/Radio.js +1 -4
  733. package/dist/components/Radio/Radio.js.map +1 -1
  734. package/dist/components/RichCell/RichCell.js +2 -1
  735. package/dist/components/RichCell/RichCell.js.map +1 -1
  736. package/dist/components/RichTooltip/RichTooltip.js +2 -1
  737. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  738. package/dist/components/Root/Root.js +8 -7
  739. package/dist/components/Root/Root.js.map +1 -1
  740. package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -0
  741. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  742. package/dist/components/Search/Search.js +2 -1
  743. package/dist/components/Search/Search.js.map +1 -1
  744. package/dist/components/SegmentedControl/SegmentedControl.js +19 -13
  745. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  746. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  747. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  748. package/dist/components/Select/Select.d.ts +1 -2
  749. package/dist/components/Select/Select.js +5 -6
  750. package/dist/components/Select/Select.js.map +1 -1
  751. package/dist/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  752. package/dist/components/SelectMimicry/SelectMimicry.js +5 -2
  753. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  754. package/dist/components/Separator/Separator.js +3 -1
  755. package/dist/components/Separator/Separator.js.map +1 -1
  756. package/dist/components/SimpleCell/SimpleCell.js +3 -2
  757. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  758. package/dist/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  759. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  760. package/dist/components/SliderSwitch/SliderSwitch.js +1 -0
  761. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  762. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -0
  763. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  764. package/dist/components/Snackbar/Snackbar.js +2 -1
  765. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  766. package/dist/components/Spacing/Spacing.js +2 -1
  767. package/dist/components/Spacing/Spacing.js.map +1 -1
  768. package/dist/components/SplitCol/SplitCol.js +2 -1
  769. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  770. package/dist/components/SplitLayout/SplitLayout.js +2 -1
  771. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  772. package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -1
  773. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  774. package/dist/components/SubnavigationButton/SubnavigationButton.js +5 -5
  775. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  776. package/dist/components/Switch/Switch.js +1 -0
  777. package/dist/components/Switch/Switch.js.map +1 -1
  778. package/dist/components/Tabbar/Tabbar.js +1 -0
  779. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  780. package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
  781. package/dist/components/TabbarItem/TabbarItem.js +2 -1
  782. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  783. package/dist/components/TabsItem/TabsItem.js +2 -1
  784. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  785. package/dist/components/Tappable/Tappable.js +5 -4
  786. package/dist/components/Tappable/Tappable.js.map +1 -1
  787. package/dist/components/TextTooltip/TextTooltip.js +1 -1
  788. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  789. package/dist/components/Tooltip/Tooltip.js +4 -4
  790. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  791. package/dist/components/Touch/Touch.js +9 -3
  792. package/dist/components/Touch/Touch.js.map +1 -1
  793. package/dist/components/Touch/TouchContext.d.ts +1 -1
  794. package/dist/components/Touch/TouchContext.js +1 -1
  795. package/dist/components/Touch/TouchContext.js.map +1 -1
  796. package/dist/components/Typography/Caption/Caption.d.ts +8 -4
  797. package/dist/components/Typography/Caption/Caption.js +10 -14
  798. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  799. package/dist/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  800. package/dist/components/Typography/Paragraph/Paragraph.js +25 -0
  801. package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -0
  802. package/dist/components/Typography/Subhead/Subhead.d.ts +4 -3
  803. package/dist/components/Typography/Subhead/Subhead.js +3 -7
  804. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  805. package/dist/components/Typography/Text/Text.js +1 -1
  806. package/dist/components/Typography/Text/Text.js.map +1 -1
  807. package/dist/components/Typography/Title/Title.d.ts +4 -3
  808. package/dist/components/Typography/Title/Title.js +3 -8
  809. package/dist/components/Typography/Title/Title.js.map +1 -1
  810. package/dist/components/UsersStack/UsersStack.js +4 -4
  811. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  812. package/dist/components/View/View.js +5 -0
  813. package/dist/components/View/View.js.map +1 -1
  814. package/dist/components/View/ViewInfinite.js +5 -0
  815. package/dist/components/View/ViewInfinite.js.map +1 -1
  816. package/dist/components/View/utils.js +5 -2
  817. package/dist/components/View/utils.js.map +1 -1
  818. package/dist/components/WriteBarIcon/WriteBarIcon.js +3 -2
  819. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  820. package/dist/components.css +21 -6
  821. package/dist/components.css.map +1 -1
  822. package/dist/cssm/components/ActionSheet/ActionSheet.js +5 -6
  823. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  824. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +2 -1
  825. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  826. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +1 -1
  827. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  828. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +6 -7
  829. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  830. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +43 -11
  831. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  832. package/dist/cssm/components/Alert/Alert.css +1 -1
  833. package/dist/cssm/components/Alert/Alert.d.ts +4 -1
  834. package/dist/cssm/components/Alert/Alert.js +25 -11
  835. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  836. package/dist/cssm/components/AppRoot/AppRoot.js +19 -3
  837. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  838. package/dist/cssm/components/AppRoot/ScrollContext.d.ts +6 -14
  839. package/dist/cssm/components/AppRoot/ScrollContext.js +87 -1
  840. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  841. package/dist/cssm/components/Avatar/Avatar.js +4 -1
  842. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  843. package/dist/cssm/components/Banner/Banner.js +3 -2
  844. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  845. package/dist/cssm/components/Button/Button.css +1 -1
  846. package/dist/cssm/components/Button/Button.d.ts +1 -2
  847. package/dist/cssm/components/Button/Button.js +32 -40
  848. package/dist/cssm/components/Button/Button.js.map +1 -1
  849. package/dist/cssm/components/Calendar/Calendar.js +3 -3
  850. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  851. package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
  852. package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -1
  853. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  854. package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -2
  855. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  856. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +8 -8
  857. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  858. package/dist/cssm/components/CalendarRange/CalendarRange.js +2 -5
  859. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  860. package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
  861. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  862. package/dist/cssm/components/Card/Card.css +1 -1
  863. package/dist/cssm/components/CardScroll/CardScroll.js +2 -1
  864. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  865. package/dist/cssm/components/Cell/Cell.d.ts +1 -1
  866. package/dist/cssm/components/Cell/Cell.js +4 -3
  867. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  868. package/dist/cssm/components/CellButton/CellButton.js +1 -0
  869. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  870. package/dist/cssm/components/Checkbox/Checkbox.js +1 -4
  871. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  872. package/dist/cssm/components/Chip/Chip.js +2 -3
  873. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  874. package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
  875. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -2
  876. package/dist/cssm/components/ChipsInput/ChipsInput.js +6 -11
  877. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  878. package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
  879. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +2 -2
  880. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +4 -9
  881. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  882. package/dist/cssm/components/ClickPopper/ClickPopper.d.ts +1 -1
  883. package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
  884. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +1 -1
  885. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  886. package/dist/cssm/components/ContentCard/ContentCard.js +6 -7
  887. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  888. package/dist/cssm/components/Counter/Counter.js +2 -2
  889. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  890. package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
  891. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
  892. package/dist/cssm/components/CustomSelect/CustomSelect.js +40 -36
  893. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  894. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +3 -1
  895. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -5
  896. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  897. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.css +3 -1
  898. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +35 -6
  899. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +20 -18
  900. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  901. package/dist/cssm/components/DateInput/DateInput.css +1 -1
  902. package/dist/cssm/components/DateInput/DateInput.js +3 -3
  903. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  904. package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
  905. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  906. package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
  907. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +2 -2
  908. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  909. package/dist/cssm/components/Epic/Epic.js +1 -1
  910. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  911. package/dist/cssm/components/File/File.js +1 -1
  912. package/dist/cssm/components/File/File.js.map +1 -1
  913. package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
  914. package/dist/cssm/components/FixedLayout/FixedLayout.js +2 -1
  915. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  916. package/dist/cssm/components/Footer/Footer.js +1 -3
  917. package/dist/cssm/components/Footer/Footer.js.map +1 -1
  918. package/dist/cssm/components/FormField/FormField.css +5 -1
  919. package/dist/cssm/components/FormField/FormField.d.ts +15 -1
  920. package/dist/cssm/components/FormField/FormField.js +8 -8
  921. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  922. package/dist/cssm/components/FormItem/FormItem.js +4 -5
  923. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  924. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  925. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  926. package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
  927. package/dist/cssm/components/FormStatus/FormStatus.js +2 -7
  928. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  929. package/dist/cssm/components/Gallery/Gallery.d.ts +9 -1
  930. package/dist/cssm/components/Gallery/Gallery.js +10 -2
  931. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  932. package/dist/cssm/components/Gradient/Gradient.css +1 -1
  933. package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
  934. package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +1 -0
  935. package/dist/cssm/components/GridAvatar/GridAvatar.js +5 -6
  936. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  937. package/dist/cssm/components/Group/Group.js +4 -5
  938. package/dist/cssm/components/Group/Group.js.map +1 -1
  939. package/dist/cssm/components/Header/Header.js +13 -19
  940. package/dist/cssm/components/Header/Header.js.map +1 -1
  941. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -6
  942. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  943. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +1 -2
  944. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +32 -21
  945. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  946. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  947. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  948. package/dist/cssm/components/Input/Input.css +1 -1
  949. package/dist/cssm/components/Input/Input.d.ts +1 -2
  950. package/dist/cssm/components/Input/Input.js +10 -10
  951. package/dist/cssm/components/Input/Input.js.map +1 -1
  952. package/dist/cssm/components/InputLike/InputLike.css +1 -1
  953. package/dist/cssm/components/InputLike/InputLikeDivider.css +1 -1
  954. package/dist/cssm/components/List/List.js +1 -0
  955. package/dist/cssm/components/List/List.js.map +1 -1
  956. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -0
  957. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  958. package/dist/cssm/components/ModalCard/ModalCard.css +1 -1
  959. package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
  960. package/dist/cssm/components/ModalCard/ModalCard.js +1 -0
  961. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  962. package/dist/cssm/components/ModalCardBase/ModalCardBase.css +1 -1
  963. package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +5 -1
  964. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +9 -3
  965. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  966. package/dist/cssm/components/ModalPage/ModalPage.d.ts +16 -1
  967. package/dist/cssm/components/ModalPage/ModalPage.js +9 -6
  968. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  969. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +1 -0
  970. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  971. package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
  972. package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +14 -2
  973. package/dist/cssm/components/ModalRoot/ModalRoot.js +14 -11
  974. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  975. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +15 -3
  976. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +2 -0
  977. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  978. package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +14 -2
  979. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +10 -7
  980. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  981. package/dist/cssm/components/ModalRoot/types.d.ts +16 -1
  982. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  983. package/dist/cssm/components/ModalRoot/useModalManager.d.ts +6 -5
  984. package/dist/cssm/components/ModalRoot/useModalManager.js +54 -16
  985. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  986. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -2
  987. package/dist/cssm/components/NativeSelect/NativeSelect.js +5 -5
  988. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  989. package/dist/cssm/components/Pagination/Pagination.css +1 -1
  990. package/dist/cssm/components/Pagination/Pagination.d.ts +3 -3
  991. package/dist/cssm/components/Pagination/Pagination.js +1 -1
  992. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  993. package/dist/cssm/components/Panel/Panel.js +2 -1
  994. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  995. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  996. package/dist/cssm/components/PanelHeader/PanelHeader.js +1 -0
  997. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  998. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +1 -0
  999. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  1000. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
  1001. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +4 -3
  1002. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  1003. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
  1004. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +1 -3
  1005. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  1006. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +4 -1
  1007. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  1008. package/dist/cssm/components/Placeholder/Placeholder.js +3 -2
  1009. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  1010. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -0
  1011. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  1012. package/dist/cssm/components/Popper/Popper.js +2 -2
  1013. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  1014. package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -6
  1015. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  1016. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +2 -1
  1017. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  1018. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +1 -0
  1019. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  1020. package/dist/cssm/components/Radio/Radio.js +1 -4
  1021. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  1022. package/dist/cssm/components/Removable/Removable.css +1 -1
  1023. package/dist/cssm/components/RichCell/RichCell.js +2 -1
  1024. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  1025. package/dist/cssm/components/RichTooltip/RichTooltip.js +2 -1
  1026. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  1027. package/dist/cssm/components/Root/Root.css +1 -1
  1028. package/dist/cssm/components/Root/Root.js +8 -7
  1029. package/dist/cssm/components/Root/Root.js.map +1 -1
  1030. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -0
  1031. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  1032. package/dist/cssm/components/Search/Search.css +1 -1
  1033. package/dist/cssm/components/Search/Search.js +2 -1
  1034. package/dist/cssm/components/Search/Search.js.map +1 -1
  1035. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +19 -13
  1036. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  1037. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +1 -1
  1038. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  1039. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  1040. package/dist/cssm/components/Select/Select.css +1 -1
  1041. package/dist/cssm/components/Select/Select.d.ts +1 -2
  1042. package/dist/cssm/components/Select/Select.js +5 -6
  1043. package/dist/cssm/components/Select/Select.js.map +1 -1
  1044. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +3 -3
  1045. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +5 -2
  1046. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  1047. package/dist/cssm/components/Separator/Separator.js +3 -1
  1048. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  1049. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  1050. package/dist/cssm/components/SimpleCell/SimpleCell.js +3 -2
  1051. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  1052. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +6 -2
  1053. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  1054. package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -0
  1055. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  1056. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -0
  1057. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  1058. package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
  1059. package/dist/cssm/components/Snackbar/Snackbar.js +2 -1
  1060. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  1061. package/dist/cssm/components/Spacing/Spacing.js +2 -1
  1062. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  1063. package/dist/cssm/components/SplitCol/SplitCol.js +2 -1
  1064. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  1065. package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
  1066. package/dist/cssm/components/SplitLayout/SplitLayout.js +2 -1
  1067. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  1068. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
  1069. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  1070. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +5 -5
  1071. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  1072. package/dist/cssm/components/Switch/Switch.js +1 -0
  1073. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  1074. package/dist/cssm/components/Tabbar/Tabbar.js +1 -0
  1075. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  1076. package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
  1077. package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -1
  1078. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -1
  1079. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  1080. package/dist/cssm/components/Tabs/Tabs.css +1 -1
  1081. package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
  1082. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  1083. package/dist/cssm/components/Tappable/Tappable.css +1 -1
  1084. package/dist/cssm/components/Tappable/Tappable.js +5 -4
  1085. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  1086. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  1087. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  1088. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  1089. package/dist/cssm/components/Tooltip/Tooltip.js +4 -4
  1090. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  1091. package/dist/cssm/components/Touch/Touch.js +9 -3
  1092. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  1093. package/dist/cssm/components/Touch/TouchContext.d.ts +1 -1
  1094. package/dist/cssm/components/Touch/TouchContext.js +1 -1
  1095. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  1096. package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
  1097. package/dist/cssm/components/Typography/Caption/Caption.d.ts +8 -4
  1098. package/dist/cssm/components/Typography/Caption/Caption.js +10 -14
  1099. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  1100. package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
  1101. package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -0
  1102. package/dist/cssm/components/Typography/Paragraph/Paragraph.d.ts +10 -0
  1103. package/dist/cssm/components/Typography/Paragraph/Paragraph.js +26 -0
  1104. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -0
  1105. package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
  1106. package/dist/cssm/components/Typography/Subhead/Subhead.d.ts +4 -3
  1107. package/dist/cssm/components/Typography/Subhead/Subhead.js +3 -7
  1108. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  1109. package/dist/cssm/components/Typography/Text/Text.css +1 -1
  1110. package/dist/cssm/components/Typography/Text/Text.js +1 -1
  1111. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  1112. package/dist/cssm/components/Typography/Title/Title.css +1 -1
  1113. package/dist/cssm/components/Typography/Title/Title.d.ts +4 -3
  1114. package/dist/cssm/components/Typography/Title/Title.js +3 -8
  1115. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1116. package/dist/cssm/components/UsersStack/UsersStack.js +4 -4
  1117. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1118. package/dist/cssm/components/View/View.css +1 -1
  1119. package/dist/cssm/components/View/View.js +5 -0
  1120. package/dist/cssm/components/View/View.js.map +1 -1
  1121. package/dist/cssm/components/View/ViewIOS.css +1 -1
  1122. package/dist/cssm/components/View/ViewInfinite.js +5 -0
  1123. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1124. package/dist/cssm/components/View/utils.js +5 -2
  1125. package/dist/cssm/components/View/utils.js.map +1 -1
  1126. package/dist/cssm/components/WriteBar/WriteBar.css +1 -1
  1127. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +3 -2
  1128. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  1129. package/dist/cssm/helpers/scheme.js +2 -2
  1130. package/dist/cssm/helpers/scheme.js.map +1 -1
  1131. package/dist/cssm/hooks/useBridgeAdaptivity.d.ts +6 -0
  1132. package/dist/cssm/hooks/useBridgeAdaptivity.js +68 -0
  1133. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -0
  1134. package/dist/cssm/hooks/useCalendar.js +1 -1
  1135. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  1136. package/dist/cssm/hooks/useKeyboard.d.ts +1 -1
  1137. package/dist/cssm/hooks/useKeyboard.js +1 -1
  1138. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  1139. package/dist/cssm/hooks/useOrientationChange.d.ts +7 -0
  1140. package/dist/cssm/hooks/useOrientationChange.js +42 -0
  1141. package/dist/cssm/hooks/useOrientationChange.js.map +1 -0
  1142. package/dist/cssm/hooks/usePagination.d.ts +3 -3
  1143. package/dist/cssm/hooks/usePagination.js +3 -3
  1144. package/dist/cssm/hooks/usePagination.js.map +1 -1
  1145. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  1146. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1147. package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -1
  1148. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1149. package/dist/cssm/index.d.ts +22 -11
  1150. package/dist/cssm/index.js +13 -15
  1151. package/dist/cssm/index.js.map +1 -1
  1152. package/dist/cssm/lib/calendar.js +4 -15
  1153. package/dist/cssm/lib/calendar.js.map +1 -1
  1154. package/dist/cssm/lib/date.d.ts +29 -0
  1155. package/dist/cssm/lib/date.js +223 -0
  1156. package/dist/cssm/lib/date.js.map +1 -0
  1157. package/dist/cssm/lib/getNavId.d.ts +2 -1
  1158. package/dist/cssm/lib/getNavId.js +1 -1
  1159. package/dist/cssm/lib/getNavId.js.map +1 -1
  1160. package/dist/cssm/lib/platform.js +26 -0
  1161. package/dist/cssm/lib/platform.js.map +1 -1
  1162. package/dist/cssm/lib/warnOnce.d.ts +2 -1
  1163. package/dist/cssm/lib/warnOnce.js +3 -1
  1164. package/dist/cssm/lib/warnOnce.js.map +1 -1
  1165. package/dist/cssm/styles/bright_light.css +1 -1
  1166. package/dist/cssm/styles/common.css +1 -1
  1167. package/dist/cssm/styles/components.css +21 -6
  1168. package/dist/cssm/styles/constants.css +9 -2
  1169. package/dist/cssm/styles/space_gray.css +1 -1
  1170. package/dist/cssm/styles/themes.css +3 -3
  1171. package/dist/cssm/styles/unstable.css +1 -1
  1172. package/dist/cssm/styles/vkcom_dark.css +2 -2
  1173. package/dist/cssm/styles/vkcom_light.css +1 -1
  1174. package/dist/cssm/tokenized/index.d.ts +24 -4
  1175. package/dist/cssm/tokenized/index.js +14 -4
  1176. package/dist/cssm/tokenized/index.js.map +1 -1
  1177. package/dist/default_scheme.css +1 -1
  1178. package/dist/default_scheme.css.map +1 -1
  1179. package/dist/helpers/scheme.js +2 -2
  1180. package/dist/helpers/scheme.js.map +1 -1
  1181. package/dist/hooks/useBridgeAdaptivity.d.ts +6 -0
  1182. package/dist/hooks/useBridgeAdaptivity.js +68 -0
  1183. package/dist/hooks/useBridgeAdaptivity.js.map +1 -0
  1184. package/dist/hooks/useCalendar.js +1 -1
  1185. package/dist/hooks/useCalendar.js.map +1 -1
  1186. package/dist/hooks/useKeyboard.d.ts +1 -1
  1187. package/dist/hooks/useKeyboard.js +1 -1
  1188. package/dist/hooks/useKeyboard.js.map +1 -1
  1189. package/dist/hooks/useOrientationChange.d.ts +7 -0
  1190. package/dist/hooks/useOrientationChange.js +42 -0
  1191. package/dist/hooks/useOrientationChange.js.map +1 -0
  1192. package/dist/hooks/usePagination.d.ts +3 -3
  1193. package/dist/hooks/usePagination.js +3 -3
  1194. package/dist/hooks/usePagination.js.map +1 -1
  1195. package/dist/hooks/usePatchChildrenRef.js +1 -1
  1196. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1197. package/dist/hooks/useWaitTransitionFinish.js +5 -1
  1198. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1199. package/dist/index.d.ts +22 -11
  1200. package/dist/index.js +13 -15
  1201. package/dist/index.js.map +1 -1
  1202. package/dist/lib/calendar.js +4 -15
  1203. package/dist/lib/calendar.js.map +1 -1
  1204. package/dist/lib/date.d.ts +29 -0
  1205. package/dist/lib/date.js +223 -0
  1206. package/dist/lib/date.js.map +1 -0
  1207. package/dist/lib/getNavId.d.ts +2 -1
  1208. package/dist/lib/getNavId.js +1 -1
  1209. package/dist/lib/getNavId.js.map +1 -1
  1210. package/dist/lib/platform.js +26 -0
  1211. package/dist/lib/platform.js.map +1 -1
  1212. package/dist/lib/warnOnce.d.ts +2 -1
  1213. package/dist/lib/warnOnce.js +3 -1
  1214. package/dist/lib/warnOnce.js.map +1 -1
  1215. package/dist/tokenized/index.d.ts +24 -4
  1216. package/dist/tokenized/index.js +14 -4
  1217. package/dist/tokenized/index.js.map +1 -1
  1218. package/dist/unstable.css +1 -1
  1219. package/dist/unstable.css.map +1 -1
  1220. package/dist/vkui.css +24 -9
  1221. package/dist/vkui.css.map +1 -1
  1222. package/eslint-plugin-vkui/index.js +64 -0
  1223. package/eslint-plugin-vkui/package.json +5 -0
  1224. package/jest.unit.config.js +17 -0
  1225. package/package.json +10 -12
  1226. package/postcss-plugin-vk-sans/__tests__/custom_properties.css +4 -0
  1227. package/postcss-plugin-vk-sans/index.js +350 -0
  1228. package/src/appearance/constants.ts +1 -0
  1229. package/src/components/ActionSheet/ActionSheet.css +145 -0
  1230. package/src/components/ActionSheet/ActionSheet.tsx +164 -0
  1231. package/src/components/ActionSheet/ActionSheetContext.ts +18 -0
  1232. package/src/components/ActionSheet/ActionSheetDropdown.tsx +34 -0
  1233. package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +97 -0
  1234. package/src/components/ActionSheet/Readme.md +257 -0
  1235. package/src/components/ActionSheet/types.ts +16 -0
  1236. package/src/components/ActionSheetItem/ActionSheetItem.css +306 -0
  1237. package/src/components/ActionSheetItem/ActionSheetItem.tsx +183 -0
  1238. package/src/components/ActionSheetItem/Readme.md +2 -0
  1239. package/src/components/AdaptivityProvider/AdaptivityContext.tsx +62 -0
  1240. package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +169 -0
  1241. package/src/components/AdaptivityProvider/Readme.md +3 -0
  1242. package/src/components/Alert/Alert.css +297 -0
  1243. package/src/components/Alert/Alert.tsx +308 -0
  1244. package/src/components/Alert/Readme.md +133 -0
  1245. package/src/components/AppRoot/AppRoot.css +20 -0
  1246. package/src/components/AppRoot/AppRoot.tsx +221 -0
  1247. package/src/components/AppRoot/AppRootContext.ts +13 -0
  1248. package/src/components/AppRoot/AppRootPortal.tsx +24 -0
  1249. package/src/components/AppRoot/Readme.md +9 -0
  1250. package/src/components/AppRoot/ScrollContext.ts +132 -0
  1251. package/src/components/AppearanceProvider/AppearanceProvider.tsx +61 -0
  1252. package/src/components/AppearanceProvider/AppearanceProviderContext.tsx +7 -0
  1253. package/src/components/Avatar/Avatar.css +192 -0
  1254. package/src/components/Avatar/Avatar.tsx +186 -0
  1255. package/src/components/Avatar/Readme.md +838 -0
  1256. package/src/components/Badge/Badge.css +21 -0
  1257. package/src/components/Badge/Badge.tsx +27 -0
  1258. package/src/components/Badge/Readme.md +55 -0
  1259. package/src/components/Banner/Banner.css +154 -0
  1260. package/src/components/Banner/Banner.tsx +221 -0
  1261. package/src/components/Banner/Readme.md +215 -0
  1262. package/src/components/Button/Button.css +596 -0
  1263. package/src/components/Button/Button.tsx +214 -0
  1264. package/src/components/Button/Readme.md +186 -0
  1265. package/src/components/ButtonGroup/ButtonGroup.css +52 -0
  1266. package/src/components/ButtonGroup/ButtonGroup.tsx +48 -0
  1267. package/src/components/ButtonGroup/Readme.md +311 -0
  1268. package/src/components/Calendar/Calendar.css +31 -0
  1269. package/src/components/Calendar/Calendar.tsx +185 -0
  1270. package/src/components/Calendar/Readme.md +124 -0
  1271. package/src/components/CalendarDay/CalendarDay.css +85 -0
  1272. package/src/components/CalendarDay/CalendarDay.tsx +117 -0
  1273. package/src/components/CalendarDays/CalendarDays.css +31 -0
  1274. package/src/components/CalendarDays/CalendarDays.tsx +131 -0
  1275. package/src/components/CalendarHeader/CalendarHeader.css +50 -0
  1276. package/src/components/CalendarHeader/CalendarHeader.tsx +168 -0
  1277. package/src/components/CalendarRange/CalendarRange.css +27 -0
  1278. package/src/components/CalendarRange/CalendarRange.tsx +275 -0
  1279. package/src/components/CalendarRange/Readme.md +85 -0
  1280. package/src/components/CalendarTime/CalendarTime.css +18 -0
  1281. package/src/components/CalendarTime/CalendarTime.tsx +88 -0
  1282. package/src/components/Card/Card.css +84 -0
  1283. package/src/components/Card/Card.tsx +31 -0
  1284. package/src/components/Card/Readme.md +39 -0
  1285. package/src/components/CardGrid/CardGrid.css +82 -0
  1286. package/src/components/CardGrid/CardGrid.tsx +41 -0
  1287. package/src/components/CardGrid/Readme.md +41 -0
  1288. package/src/components/CardScroll/CardScroll.css +47 -0
  1289. package/src/components/CardScroll/CardScroll.tsx +118 -0
  1290. package/src/components/CardScroll/Readme.md +62 -0
  1291. package/src/components/Cell/Cell.css +56 -0
  1292. package/src/components/Cell/Cell.tsx +205 -0
  1293. package/src/components/Cell/CellCheckbox/CellCheckbox.css +17 -0
  1294. package/src/components/Cell/CellCheckbox/CellCheckbox.tsx +41 -0
  1295. package/src/components/Cell/CellDragger/CellDragger.css +4 -0
  1296. package/src/components/Cell/CellDragger/CellDragger.tsx +37 -0
  1297. package/src/components/Cell/Readme.md +163 -0
  1298. package/src/components/Cell/useDraggable.tsx +126 -0
  1299. package/src/components/CellButton/CellButton.css +46 -0
  1300. package/src/components/CellButton/CellButton.tsx +36 -0
  1301. package/src/components/CellButton/Readme.md +53 -0
  1302. package/src/components/Checkbox/Checkbox.css +127 -0
  1303. package/src/components/Checkbox/Checkbox.tsx +102 -0
  1304. package/src/components/Checkbox/Readme.md +20 -0
  1305. package/src/components/Chip/Chip.css +56 -0
  1306. package/src/components/Chip/Chip.tsx +70 -0
  1307. package/src/components/Chip/Readme.md +81 -0
  1308. package/src/components/ChipsInput/ChipsInput.css +72 -0
  1309. package/src/components/ChipsInput/ChipsInput.tsx +239 -0
  1310. package/src/components/ChipsInput/Readme.md +94 -0
  1311. package/src/components/ChipsInput/useChipsInput.ts +90 -0
  1312. package/src/components/ChipsSelect/ChipsSelect.css +23 -0
  1313. package/src/components/ChipsSelect/ChipsSelect.tsx +454 -0
  1314. package/src/components/ChipsSelect/Readme.md +115 -0
  1315. package/src/components/ChipsSelect/useChipsSelect.ts +72 -0
  1316. package/src/components/ClickPopper/ClickPopper.tsx +86 -0
  1317. package/src/components/ConfigProvider/ConfigProvider.tsx +144 -0
  1318. package/src/components/ConfigProvider/ConfigProviderContext.tsx +48 -0
  1319. package/src/components/ConfigProvider/Readme.md +1 -0
  1320. package/src/components/ContentCard/ContentCard.css +39 -0
  1321. package/src/components/ContentCard/ContentCard.tsx +153 -0
  1322. package/src/components/ContentCard/Readme.md +65 -0
  1323. package/src/components/Counter/Counter.css +161 -0
  1324. package/src/components/Counter/Counter.tsx +76 -0
  1325. package/src/components/Counter/Readme.md +114 -0
  1326. package/src/components/CustomScrollView/CustomScrollView.css +62 -0
  1327. package/src/components/CustomScrollView/CustomScrollView.tsx +168 -0
  1328. package/src/components/CustomSelect/CustomSelect.css +24 -0
  1329. package/src/components/CustomSelect/CustomSelect.tsx +784 -0
  1330. package/src/components/CustomSelect/Readme.md +248 -0
  1331. package/src/components/CustomSelectDropdown/CustomSelectDropdown.css +43 -0
  1332. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +76 -0
  1333. package/src/components/CustomSelectOption/CustomSelectOption.css +75 -0
  1334. package/src/components/CustomSelectOption/CustomSelectOption.tsx +126 -0
  1335. package/src/components/CustomSelectOption/Readme.md +52 -0
  1336. package/src/components/DateInput/DateInput.css +20 -0
  1337. package/src/components/DateInput/DateInput.tsx +317 -0
  1338. package/src/components/DateInput/Readme.md +116 -0
  1339. package/src/components/DatePicker/DatePicker.css +30 -0
  1340. package/src/components/DatePicker/DatePicker.tsx +238 -0
  1341. package/src/components/DatePicker/Readme.md +40 -0
  1342. package/src/components/DateRangeInput/DateRangeInput.css +16 -0
  1343. package/src/components/DateRangeInput/DateRangeInput.tsx +350 -0
  1344. package/src/components/DateRangeInput/Readme.md +96 -0
  1345. package/src/components/Div/Div.css +7 -0
  1346. package/src/components/Div/Div.tsx +26 -0
  1347. package/src/components/Div/Readme.md +17 -0
  1348. package/src/components/Dropdown/Dropdown.css +19 -0
  1349. package/src/components/Dropdown/Dropdown.tsx +42 -0
  1350. package/src/components/Dropdown/Readme.md +49 -0
  1351. package/src/components/DropdownIcon/DropdownIcon.css +3 -0
  1352. package/src/components/DropdownIcon/DropdownIcon.tsx +18 -0
  1353. package/src/components/Epic/Epic.css +4 -0
  1354. package/src/components/Epic/Epic.tsx +63 -0
  1355. package/src/components/Epic/Readme.md +244 -0
  1356. package/src/components/Epic/ScrollSaver.tsx +23 -0
  1357. package/src/components/File/File.css +6 -0
  1358. package/src/components/File/File.tsx +74 -0
  1359. package/src/components/File/Readme.md +20 -0
  1360. package/src/components/FixedLayout/FixedLayout.css +29 -0
  1361. package/src/components/FixedLayout/FixedLayout.tsx +72 -0
  1362. package/src/components/FixedLayout/Readme.md +117 -0
  1363. package/src/components/FocusTrap/FocusTrap.tsx +144 -0
  1364. package/src/components/FocusVisible/FocusVisible.css +72 -0
  1365. package/src/components/FocusVisible/FocusVisible.tsx +18 -0
  1366. package/src/components/Footer/Footer.css +8 -0
  1367. package/src/components/Footer/Footer.tsx +17 -0
  1368. package/src/components/Footer/Readme.md +23 -0
  1369. package/src/components/FormField/FormField.css +137 -0
  1370. package/src/components/FormField/FormField.tsx +95 -0
  1371. package/src/components/FormField/Readme.md +108 -0
  1372. package/src/components/FormItem/FormItem.css +83 -0
  1373. package/src/components/FormItem/FormItem.tsx +86 -0
  1374. package/src/components/FormItem/Readme.md +183 -0
  1375. package/src/components/FormLayout/FormLayout.css +16 -0
  1376. package/src/components/FormLayout/FormLayout.tsx +39 -0
  1377. package/src/components/FormLayout/Readme.md +2 -0
  1378. package/src/components/FormLayoutGroup/FormLayoutGroup.css +22 -0
  1379. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +72 -0
  1380. package/src/components/FormLayoutGroup/Readme.md +63 -0
  1381. package/src/components/FormStatus/FormStatus.css +34 -0
  1382. package/src/components/FormStatus/FormStatus.tsx +45 -0
  1383. package/src/components/FormStatus/Readme.md +23 -0
  1384. package/src/components/Gallery/Gallery.css +71 -0
  1385. package/src/components/Gallery/Gallery.tsx +574 -0
  1386. package/src/components/Gallery/Readme.md +99 -0
  1387. package/src/components/Gradient/Gradient.css +85 -0
  1388. package/src/components/Gradient/Gradient.tsx +29 -0
  1389. package/src/components/Gradient/Readme.md +55 -0
  1390. package/src/components/GridAvatar/GridAvatar.css +34 -0
  1391. package/src/components/GridAvatar/GridAvatar.tsx +41 -0
  1392. package/src/components/GridAvatar/Readme.md +24 -0
  1393. package/src/components/Group/Group.css +86 -0
  1394. package/src/components/Group/Group.tsx +95 -0
  1395. package/src/components/Group/Readme.md +156 -0
  1396. package/src/components/Header/Header.css +152 -0
  1397. package/src/components/Header/Header.tsx +177 -0
  1398. package/src/components/Header/Readme.md +114 -0
  1399. package/src/components/HorizontalCell/HorizontalCell.css +95 -0
  1400. package/src/components/HorizontalCell/HorizontalCell.tsx +86 -0
  1401. package/src/components/HorizontalCell/Readme.md +236 -0
  1402. package/src/components/HorizontalScroll/HorizontalScroll.css +31 -0
  1403. package/src/components/HorizontalScroll/HorizontalScroll.tsx +225 -0
  1404. package/src/components/HorizontalScroll/HorizontalScrollArrow.css +69 -0
  1405. package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +35 -0
  1406. package/src/components/HorizontalScroll/Readme.md +67 -0
  1407. package/src/components/HoverPopper/HoverPopper.tsx +102 -0
  1408. package/src/components/IconButton/IconButton.css +93 -0
  1409. package/src/components/IconButton/IconButton.tsx +57 -0
  1410. package/src/components/InfoRow/InfoRow.css +14 -0
  1411. package/src/components/InfoRow/InfoRow.tsx +37 -0
  1412. package/src/components/InfoRow/Readme.md +27 -0
  1413. package/src/components/InitialsAvatar/InitialsAvatar.css +55 -0
  1414. package/src/components/InitialsAvatar/InitialsAvatar.tsx +95 -0
  1415. package/src/components/InitialsAvatar/Readme.md +20 -0
  1416. package/src/components/Input/Input.css +52 -0
  1417. package/src/components/Input/Input.tsx +52 -0
  1418. package/src/components/Input/Readme.md +46 -0
  1419. package/src/components/InputLike/InputLike.css +25 -0
  1420. package/src/components/InputLike/InputLike.tsx +72 -0
  1421. package/src/components/InputLike/InputLikeDivider.css +4 -0
  1422. package/src/components/InputLike/InputLikeDivider.tsx +12 -0
  1423. package/src/components/Link/Link.css +18 -0
  1424. package/src/components/Link/Link.tsx +27 -0
  1425. package/src/components/Link/Readme.md +8 -0
  1426. package/src/components/List/List.css +2 -0
  1427. package/src/components/List/List.tsx +32 -0
  1428. package/src/components/List/ListContext.ts +6 -0
  1429. package/src/components/List/Readme.md +22 -0
  1430. package/src/components/LocaleProviderContext/LocaleProviderContext.tsx +5 -0
  1431. package/src/components/MiniInfoCell/MiniInfoCell.css +67 -0
  1432. package/src/components/MiniInfoCell/MiniInfoCell.tsx +95 -0
  1433. package/src/components/MiniInfoCell/Readme.md +150 -0
  1434. package/src/components/ModalCard/ModalCard.css +67 -0
  1435. package/src/components/ModalCard/ModalCard.tsx +94 -0
  1436. package/src/components/ModalCard/Readme.md +9 -0
  1437. package/src/components/ModalCardBase/ModalCardBase.css +104 -0
  1438. package/src/components/ModalCardBase/ModalCardBase.tsx +154 -0
  1439. package/src/components/ModalCardBase/Readme.md +38 -0
  1440. package/src/components/ModalDismissButton/ModalDismissButton.css +37 -0
  1441. package/src/components/ModalDismissButton/ModalDismissButton.tsx +32 -0
  1442. package/src/components/ModalDismissButton/Readme.md +53 -0
  1443. package/src/components/ModalPage/ModalPage.css +146 -0
  1444. package/src/components/ModalPage/ModalPage.tsx +150 -0
  1445. package/src/components/ModalPage/Readme.md +9 -0
  1446. package/src/components/ModalPageHeader/ModalPageHeader.css +24 -0
  1447. package/src/components/ModalPageHeader/ModalPageHeader.tsx +58 -0
  1448. package/src/components/ModalPageHeader/Readme.md +46 -0
  1449. package/src/components/ModalRoot/ModalRoot.css +68 -0
  1450. package/src/components/ModalRoot/ModalRoot.tsx +843 -0
  1451. package/src/components/ModalRoot/ModalRootAdaptive.tsx +60 -0
  1452. package/src/components/ModalRoot/ModalRootContext.tsx +51 -0
  1453. package/src/components/ModalRoot/ModalRootDesktop.tsx +279 -0
  1454. package/src/components/ModalRoot/Readme.md +774 -0
  1455. package/src/components/ModalRoot/constants.ts +4 -0
  1456. package/src/components/ModalRoot/types.ts +68 -0
  1457. package/src/components/ModalRoot/useModalManager.tsx +251 -0
  1458. package/src/components/ModalRoot/withModalRootContext.tsx +19 -0
  1459. package/src/components/NativeSelect/NativeSelect.tsx +113 -0
  1460. package/src/components/NativeSelect/Readme.md +17 -0
  1461. package/src/components/NavTransitionContext/NavTransitionContext.tsx +24 -0
  1462. package/src/components/Pagination/Pagination.css +62 -0
  1463. package/src/components/Pagination/Pagination.tsx +196 -0
  1464. package/src/components/Pagination/Readme.md +110 -0
  1465. package/src/components/Panel/Panel.css +116 -0
  1466. package/src/components/Panel/Panel.tsx +59 -0
  1467. package/src/components/Panel/Readme.md +97 -0
  1468. package/src/components/PanelHeader/PanelHeader.css +263 -0
  1469. package/src/components/PanelHeader/PanelHeader.tsx +143 -0
  1470. package/src/components/PanelHeader/Readme.md +244 -0
  1471. package/src/components/PanelHeaderBack/PanelHeaderBack.css +7 -0
  1472. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +61 -0
  1473. package/src/components/PanelHeaderBack/Readme.md +9 -0
  1474. package/src/components/PanelHeaderButton/PanelHeaderButton.css +102 -0
  1475. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +111 -0
  1476. package/src/components/PanelHeaderButton/Readme.md +47 -0
  1477. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +35 -0
  1478. package/src/components/PanelHeaderClose/Readme.md +9 -0
  1479. package/src/components/PanelHeaderContent/PanelHeaderContent.css +107 -0
  1480. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +105 -0
  1481. package/src/components/PanelHeaderContent/Readme.md +33 -0
  1482. package/src/components/PanelHeaderContext/PanelHeaderContext.css +143 -0
  1483. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +89 -0
  1484. package/src/components/PanelHeaderContext/Readme.md +110 -0
  1485. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +49 -0
  1486. package/src/components/PanelHeaderEdit/Readme.md +1 -0
  1487. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +37 -0
  1488. package/src/components/PanelHeaderSubmit/Readme.md +13 -0
  1489. package/src/components/PanelSpinner/PanelSpinner.tsx +21 -0
  1490. package/src/components/PanelSpinner/Readme.md +15 -0
  1491. package/src/components/Placeholder/Placeholder.css +50 -0
  1492. package/src/components/Placeholder/Placeholder.tsx +71 -0
  1493. package/src/components/Placeholder/Readme.md +104 -0
  1494. package/src/components/PopoutRoot/PopoutRoot.css +36 -0
  1495. package/src/components/PopoutRoot/PopoutRoot.tsx +72 -0
  1496. package/src/components/PopoutRoot/Readme.md +50 -0
  1497. package/src/components/PopoutWrapper/PopoutWrapper.css +109 -0
  1498. package/src/components/PopoutWrapper/PopoutWrapper.tsx +78 -0
  1499. package/src/components/PopoutWrapper/Readme.md +12 -0
  1500. package/src/components/Popper/Popper.css +39 -0
  1501. package/src/components/Popper/Popper.tsx +231 -0
  1502. package/src/components/Popper/Readme.md +33 -0
  1503. package/src/components/Progress/Progress.css +12 -0
  1504. package/src/components/Progress/Progress.tsx +49 -0
  1505. package/src/components/Progress/Readme.md +14 -0
  1506. package/src/components/PromoBanner/PromoBanner.css +55 -0
  1507. package/src/components/PromoBanner/PromoBanner.tsx +135 -0
  1508. package/src/components/PromoBanner/Readme.md +25 -0
  1509. package/src/components/PullToRefresh/PullToRefresh.css +98 -0
  1510. package/src/components/PullToRefresh/PullToRefresh.tsx +354 -0
  1511. package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +79 -0
  1512. package/src/components/PullToRefresh/Readme.md +71 -0
  1513. package/src/components/Radio/Radio.css +187 -0
  1514. package/src/components/Radio/Radio.tsx +82 -0
  1515. package/src/components/Radio/Readme.md +29 -0
  1516. package/src/components/RadioGroup/RadioGroup.css +12 -0
  1517. package/src/components/RadioGroup/RadioGroup.tsx +29 -0
  1518. package/src/components/RadioGroup/Readme.md +56 -0
  1519. package/src/components/RangeSlider/RangeSlider.tsx +54 -0
  1520. package/src/components/RangeSlider/Readme.md +32 -0
  1521. package/src/components/RangeSlider/UniversalSlider.tsx +162 -0
  1522. package/src/components/Removable/Removable.css +125 -0
  1523. package/src/components/Removable/Removable.tsx +176 -0
  1524. package/src/components/RichCell/Readme.md +65 -0
  1525. package/src/components/RichCell/RichCell.css +115 -0
  1526. package/src/components/RichCell/RichCell.tsx +105 -0
  1527. package/src/components/RichTooltip/Readme.md +59 -0
  1528. package/src/components/RichTooltip/RichTooltip.css +10 -0
  1529. package/src/components/RichTooltip/RichTooltip.tsx +33 -0
  1530. package/src/components/Root/Readme.md +36 -0
  1531. package/src/components/Root/Root.css +177 -0
  1532. package/src/components/Root/Root.tsx +210 -0
  1533. package/src/components/ScreenSpinner/Readme.md +43 -0
  1534. package/src/components/ScreenSpinner/ScreenSpinner.css +31 -0
  1535. package/src/components/ScreenSpinner/ScreenSpinner.tsx +40 -0
  1536. package/src/components/Search/Readme.md +235 -0
  1537. package/src/components/Search/Search.css +359 -0
  1538. package/src/components/Search/Search.tsx +197 -0
  1539. package/src/components/SegmentedControl/Readme.md +94 -0
  1540. package/src/components/SegmentedControl/SegmentedControl.css +42 -0
  1541. package/src/components/SegmentedControl/SegmentedControl.tsx +115 -0
  1542. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.css +30 -0
  1543. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.tsx +43 -0
  1544. package/src/components/Select/Readme.md +27 -0
  1545. package/src/components/Select/Select.css +64 -0
  1546. package/src/components/Select/Select.tsx +38 -0
  1547. package/src/components/SelectMimicry/Readme.md +87 -0
  1548. package/src/components/SelectMimicry/SelectMimicry.css +10 -0
  1549. package/src/components/SelectMimicry/SelectMimicry.tsx +97 -0
  1550. package/src/components/Separator/Readme.md +23 -0
  1551. package/src/components/Separator/Separator.css +48 -0
  1552. package/src/components/Separator/Separator.tsx +42 -0
  1553. package/src/components/SimpleCell/Readme.md +136 -0
  1554. package/src/components/SimpleCell/SimpleCell.css +258 -0
  1555. package/src/components/SimpleCell/SimpleCell.tsx +133 -0
  1556. package/src/components/SimpleCheckbox/Readme.md +25 -0
  1557. package/src/components/SimpleCheckbox/SimpleCheckbox.css +129 -0
  1558. package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +148 -0
  1559. package/src/components/Slider/Readme.md +83 -0
  1560. package/src/components/Slider/Slider.css +145 -0
  1561. package/src/components/Slider/Slider.tsx +54 -0
  1562. package/src/components/SliderSwitch/Readme.md +27 -0
  1563. package/src/components/SliderSwitch/SliderSwitch.css +87 -0
  1564. package/src/components/SliderSwitch/SliderSwitch.tsx +210 -0
  1565. package/src/components/SliderSwitch/SliderSwitchButton.tsx +54 -0
  1566. package/src/components/Snackbar/Readme.md +145 -0
  1567. package/src/components/Snackbar/Snackbar.css +162 -0
  1568. package/src/components/Snackbar/Snackbar.tsx +255 -0
  1569. package/src/components/Spacing/Readme.md +98 -0
  1570. package/src/components/Spacing/Spacing.css +46 -0
  1571. package/src/components/Spacing/Spacing.tsx +54 -0
  1572. package/src/components/Spinner/Readme.md +11 -0
  1573. package/src/components/Spinner/Spinner.css +33 -0
  1574. package/src/components/Spinner/Spinner.tsx +53 -0
  1575. package/src/components/SplitCol/Readme.md +1 -0
  1576. package/src/components/SplitCol/SplitCol.css +28 -0
  1577. package/src/components/SplitCol/SplitCol.tsx +76 -0
  1578. package/src/components/SplitLayout/Readme.md +154 -0
  1579. package/src/components/SplitLayout/SplitLayout.css +54 -0
  1580. package/src/components/SplitLayout/SplitLayout.tsx +55 -0
  1581. package/src/components/SubnavigationBar/Readme.md +264 -0
  1582. package/src/components/SubnavigationBar/SubnavigationBar.css +32 -0
  1583. package/src/components/SubnavigationBar/SubnavigationBar.tsx +67 -0
  1584. package/src/components/SubnavigationButton/Readme.md +128 -0
  1585. package/src/components/SubnavigationButton/SubnavigationButton.css +103 -0
  1586. package/src/components/SubnavigationButton/SubnavigationButton.tsx +100 -0
  1587. package/src/components/Switch/Readme.md +57 -0
  1588. package/src/components/Switch/Switch.css +198 -0
  1589. package/src/components/Switch/Switch.tsx +57 -0
  1590. package/src/components/Tabbar/Readme.md +7 -0
  1591. package/src/components/Tabbar/Tabbar.css +53 -0
  1592. package/src/components/Tabbar/Tabbar.tsx +51 -0
  1593. package/src/components/TabbarItem/Readme.md +102 -0
  1594. package/src/components/TabbarItem/TabbarItem.css +128 -0
  1595. package/src/components/TabbarItem/TabbarItem.tsx +95 -0
  1596. package/src/components/Tabs/Readme.md +274 -0
  1597. package/src/components/Tabs/Tabs.css +102 -0
  1598. package/src/components/Tabs/Tabs.tsx +57 -0
  1599. package/src/components/TabsItem/Readme.md +0 -0
  1600. package/src/components/TabsItem/TabsItem.css +178 -0
  1601. package/src/components/TabsItem/TabsItem.tsx +63 -0
  1602. package/src/components/Tappable/Tappable.css +146 -0
  1603. package/src/components/Tappable/Tappable.tsx +352 -0
  1604. package/src/components/TextTooltip/Readme.md +11 -0
  1605. package/src/components/TextTooltip/TextTooltip.css +18 -0
  1606. package/src/components/TextTooltip/TextTooltip.tsx +58 -0
  1607. package/src/components/Textarea/Readme.md +24 -0
  1608. package/src/components/Textarea/Textarea.css +39 -0
  1609. package/src/components/Textarea/Textarea.tsx +80 -0
  1610. package/src/components/Tooltip/Readme.md +263 -0
  1611. package/src/components/Tooltip/Tooltip.css +73 -0
  1612. package/src/components/Tooltip/Tooltip.tsx +315 -0
  1613. package/src/components/Tooltip/TooltipContainer.tsx +10 -0
  1614. package/src/components/Touch/Readme.md +116 -0
  1615. package/src/components/Touch/Touch.tsx +288 -0
  1616. package/src/components/Touch/TouchContext.ts +11 -0
  1617. package/src/components/Typography/Caption/Caption.css +97 -0
  1618. package/src/components/Typography/Caption/Caption.tsx +53 -0
  1619. package/src/components/Typography/Caption/Readme.md +29 -0
  1620. package/src/components/Typography/Headline/Headline.css +25 -0
  1621. package/src/components/Typography/Headline/Headline.tsx +36 -0
  1622. package/src/components/Typography/Headline/Readme.md +24 -0
  1623. package/src/components/Typography/Paragraph/Paragraph.css +17 -0
  1624. package/src/components/Typography/Paragraph/Paragraph.tsx +42 -0
  1625. package/src/components/Typography/Paragraph/Readme.md +19 -0
  1626. package/src/components/Typography/Subhead/Readme.md +21 -0
  1627. package/src/components/Typography/Subhead/Subhead.css +43 -0
  1628. package/src/components/Typography/Subhead/Subhead.tsx +50 -0
  1629. package/src/components/Typography/Text/Readme.md +22 -0
  1630. package/src/components/Typography/Text/Text.css +25 -0
  1631. package/src/components/Typography/Text/Text.tsx +52 -0
  1632. package/src/components/Typography/Title/Readme.md +31 -0
  1633. package/src/components/Typography/Title/Title.css +59 -0
  1634. package/src/components/Typography/Title/Title.tsx +61 -0
  1635. package/src/components/UsersStack/Readme.md +94 -0
  1636. package/src/components/UsersStack/UsersStack.css +99 -0
  1637. package/src/components/UsersStack/UsersStack.tsx +103 -0
  1638. package/src/components/UsersStack/masks.tsx +46 -0
  1639. package/src/components/View/Readme.md +98 -0
  1640. package/src/components/View/View.css +125 -0
  1641. package/src/components/View/View.tsx +677 -0
  1642. package/src/components/View/ViewIOS.css +155 -0
  1643. package/src/components/View/ViewInfinite.tsx +735 -0
  1644. package/src/components/View/utils.ts +10 -0
  1645. package/src/components/VisuallyHiddenInput/VisuallyHiddenInput.css +9 -0
  1646. package/src/components/VisuallyHiddenInput/VisuallyHiddenInput.tsx +25 -0
  1647. package/src/components/WriteBar/Readme.md +224 -0
  1648. package/src/components/WriteBar/WriteBar.css +106 -0
  1649. package/src/components/WriteBar/WriteBar.tsx +137 -0
  1650. package/src/components/WriteBarIcon/Readme.md +11 -0
  1651. package/src/components/WriteBarIcon/WriteBarIcon.css +75 -0
  1652. package/src/components/WriteBarIcon/WriteBarIcon.tsx +106 -0
  1653. package/src/fonts/VK_Sans_Display_Medium.woff +0 -0
  1654. package/src/fonts/VK_Sans_Display_Medium.woff2 +0 -0
  1655. package/src/fonts/fonts.css +7 -0
  1656. package/src/helpers/avatar.ts +10 -0
  1657. package/src/helpers/getClassName.ts +8 -0
  1658. package/src/helpers/getScheme.ts +27 -0
  1659. package/src/helpers/math.ts +40 -0
  1660. package/src/helpers/scheme.ts +87 -0
  1661. package/src/hoc/withAdaptivity.tsx +86 -0
  1662. package/src/hoc/withContext.tsx +14 -0
  1663. package/src/hoc/withInsets.tsx +12 -0
  1664. package/src/hoc/withPlatform.tsx +17 -0
  1665. package/src/hooks/useAdaptivity.ts +12 -0
  1666. package/src/hooks/useAppearance.ts +4 -0
  1667. package/src/hooks/useBooleanState.ts +19 -0
  1668. package/src/hooks/useBridgeAdaptivity.ts +83 -0
  1669. package/src/hooks/useBrowserInfo.ts +11 -0
  1670. package/src/hooks/useCalendar.ts +78 -0
  1671. package/src/hooks/useDateInput.ts +213 -0
  1672. package/src/hooks/useEffectDev.ts +5 -0
  1673. package/src/hooks/useEnsuredControl.ts +17 -0
  1674. package/src/hooks/useEventListener.ts +62 -0
  1675. package/src/hooks/useExternRef.ts +26 -0
  1676. package/src/hooks/useFocusVisible.ts +31 -0
  1677. package/src/hooks/useGlobalEventListener.ts +35 -0
  1678. package/src/hooks/useInsets.ts +69 -0
  1679. package/src/hooks/useKeyboard.ts +75 -0
  1680. package/src/hooks/useKeyboardInputTracker.ts +64 -0
  1681. package/src/hooks/useObjectMemo.ts +16 -0
  1682. package/src/hooks/useOrientationChange.ts +39 -0
  1683. package/src/hooks/usePagination.ts +96 -0
  1684. package/src/hooks/usePatchChildrenRef.ts +39 -0
  1685. package/src/hooks/usePlatform.ts +10 -0
  1686. package/src/hooks/useTimeout.ts +33 -0
  1687. package/src/hooks/useWaitTransitionFinish.ts +34 -0
  1688. package/src/index.ts +345 -0
  1689. package/src/lib/SSR.tsx +45 -0
  1690. package/src/lib/accessibility.ts +87 -0
  1691. package/src/lib/animate.ts +47 -0
  1692. package/src/lib/browser.ts +44 -0
  1693. package/src/lib/calendar.ts +123 -0
  1694. package/src/lib/callMultiple.ts +4 -0
  1695. package/src/lib/classNames.ts +44 -0
  1696. package/src/lib/classScopingMode.ts +21 -0
  1697. package/src/lib/date.ts +274 -0
  1698. package/src/lib/dom.tsx +45 -0
  1699. package/src/lib/fx.ts +7 -0
  1700. package/src/lib/getNavId.ts +15 -0
  1701. package/src/lib/is.ts +10 -0
  1702. package/src/lib/isRefObject.ts +11 -0
  1703. package/src/lib/jsxRuntime.d.ts +6 -0
  1704. package/src/lib/jsxRuntime.ts +43 -0
  1705. package/src/lib/offset.ts +17 -0
  1706. package/src/lib/platform.ts +70 -0
  1707. package/src/lib/polyfills.ts +96 -0
  1708. package/src/lib/prefixClass.ts +34 -0
  1709. package/src/lib/removeObjectKeys.ts +10 -0
  1710. package/src/lib/select.ts +54 -0
  1711. package/src/lib/styles.ts +12 -0
  1712. package/src/lib/supportEvents.ts +38 -0
  1713. package/src/lib/taptic.ts +9 -0
  1714. package/src/lib/testing.ts +4 -0
  1715. package/src/lib/touch.ts +59 -0
  1716. package/src/lib/useIsomorphicLayoutEffect.ts +7 -0
  1717. package/src/lib/utils.ts +99 -0
  1718. package/src/lib/warnOnce.ts +15 -0
  1719. package/src/styles/animations.css +19 -0
  1720. package/src/styles/bright_light.css +246 -0
  1721. package/src/styles/common.css +39 -0
  1722. package/src/styles/components.css +153 -0
  1723. package/src/styles/constants.css +79 -0
  1724. package/src/styles/space_gray.css +245 -0
  1725. package/src/styles/themes.css +10 -0
  1726. package/src/styles/unstable.css +6 -0
  1727. package/src/styles/vkcom_dark.css +251 -0
  1728. package/src/styles/vkcom_light.css +256 -0
  1729. package/src/testing/setup.ts +1 -0
  1730. package/src/testing/utils.tsx +205 -0
  1731. package/src/tokenized/index.ts +66 -0
  1732. package/src/types.ts +43 -0
  1733. package/src/unstable/index.ts +23 -0
  1734. package/src/vkui.js +1 -0
  1735. package/stylelint.config.js +46 -0
  1736. package/tasks/generate_scheme.js +13 -0
  1737. package/tasks/postcss-check-keyframes.js +36 -0
  1738. package/tasks/postcss-scope-root.js +9 -0
  1739. package/tasks/styleint-atomic.js +57 -0
  1740. package/tokenized/index.d.ts +1 -0
  1741. package/tokenized/package.json +4 -0
  1742. package/tsconfig.dist.json +16 -0
  1743. package/tsconfig.json +40 -0
  1744. package/types/global.d.ts +7 -0
  1745. package/unstable/index.d.ts +1 -0
  1746. package/unstable/package.json +4 -0
  1747. package/webpack.config.js +86 -0
  1748. package/webpack.styles.config.js +67 -0
  1749. package/dist/components.js.tmp +0 -24
  1750. package/dist/default_scheme.js.tmp +0 -24
  1751. package/dist/fonts.js.tmp +0 -24
  1752. package/dist/stable.js.tmp +0 -166
  1753. package/dist/unstable.js.tmp +0 -24
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PanelHeaderButton/PanelHeaderButton.tsx"],"names":["Tappable","getClassName","classNames","warnOnce","usePlatform","getTitleFromChildren","isPrimitiveReactNode","IOS","VKCOM","ANDROID","Text","Title","ButtonTypography","primary","children","platform","warn","PanelHeaderButton","label","restProps","isPrimitive","isPrimitiveLabel","hoverMode","activeMode","process","env","NODE_ENV","hasAccessibleName","Boolean","href"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getTitleFromChildren, isPrimitiveReactNode } from \"../../lib/utils\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport Text from \"../Typography/Text/Text\";\nimport Title from \"../Typography/Title/Title\";\nimport \"./PanelHeaderButton.css\";\n\nexport interface PanelHeaderButtonProps extends Omit<TappableProps, \"label\"> {\n primary?: boolean;\n label?: React.ReactNode;\n}\n\ninterface ButtonTypographyProps extends React.AllHTMLAttributes<HTMLElement> {\n primary?: PanelHeaderButtonProps[\"primary\"];\n}\n\nconst ButtonTypography: React.FC<ButtonTypographyProps> = ({\n primary,\n children,\n}: ButtonTypographyProps) => {\n const platform = usePlatform();\n\n if (platform === IOS) {\n return (\n <Title Component=\"span\" level=\"3\" weight={primary ? \"1\" : \"3\"}>\n {children}\n </Title>\n );\n }\n\n return (\n <Text weight={platform === VKCOM ? \"regular\" : \"medium\"}>{children}</Text>\n );\n};\n\nconst warn = warnOnce(\"PanelHeaderButton\");\nexport const PanelHeaderButton: React.FC<PanelHeaderButtonProps> = ({\n children,\n primary = false,\n label,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const isPrimitive = isPrimitiveReactNode(children);\n const isPrimitiveLabel = isPrimitiveReactNode(label);\n const platform = usePlatform();\n\n let hoverMode;\n let activeMode;\n\n switch (platform) {\n case ANDROID:\n hoverMode = \"background\";\n activeMode = \"background\";\n break;\n case IOS:\n hoverMode = \"background\";\n activeMode = \"opacity\";\n break;\n case VKCOM:\n hoverMode = \"PanelHeaderButton--hover\";\n activeMode = \"PanelHeaderButton--active\";\n }\n\n if (process.env.NODE_ENV === \"development\") {\n const hasAccessibleName = Boolean(\n getTitleFromChildren(children) ||\n getTitleFromChildren(label) ||\n restProps[\"aria-label\"] ||\n restProps[\"aria-labelledby\"]\n );\n\n if (!hasAccessibleName) {\n warn(\n \"a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label.\"\n );\n }\n }\n\n return (\n <Tappable\n {...restProps}\n hoverMode={hoverMode}\n Component={restProps.href ? \"a\" : \"button\"}\n activeEffectDelay={200}\n activeMode={activeMode}\n vkuiClass={classNames(getClassName(\"PanelHeaderButton\", platform), {\n \"PanelHeaderButton--primary\": primary,\n \"PanelHeaderButton--primitive\": isPrimitive,\n \"PanelHeaderButton--notPrimitive\": !isPrimitive && !isPrimitiveLabel,\n })}\n >\n {isPrimitive ? (\n <ButtonTypography primary={primary}>{children}</ButtonTypography>\n ) : (\n children\n )}\n {isPrimitiveLabel ? (\n <ButtonTypography primary={primary}>{label}</ButtonTypography>\n ) : (\n label\n )}\n </Tappable>\n );\n};\n"],"file":"PanelHeaderButton.js"}
1
+ {"version":3,"sources":["../../../src/components/PanelHeaderButton/PanelHeaderButton.tsx"],"names":["Tappable","getClassName","classNames","warnOnce","usePlatform","getTitleFromChildren","isPrimitiveReactNode","IOS","VKCOM","ANDROID","Text","Title","ButtonTypography","primary","children","platform","warn","PanelHeaderButton","label","restProps","isPrimitive","isPrimitiveLabel","hoverMode","activeMode","process","env","NODE_ENV","hasAccessibleName","Boolean","href"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getTitleFromChildren, isPrimitiveReactNode } from \"../../lib/utils\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport Text from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport \"./PanelHeaderButton.css\";\n\nexport interface PanelHeaderButtonProps extends Omit<TappableProps, \"label\"> {\n primary?: boolean;\n label?: React.ReactNode;\n}\n\ninterface ButtonTypographyProps extends React.AllHTMLAttributes<HTMLElement> {\n primary?: PanelHeaderButtonProps[\"primary\"];\n}\n\nconst ButtonTypography: React.FC<ButtonTypographyProps> = ({\n primary,\n children,\n}: ButtonTypographyProps) => {\n const platform = usePlatform();\n\n if (platform === IOS) {\n return (\n <Title Component=\"span\" level=\"3\" weight={primary ? \"1\" : \"3\"}>\n {children}\n </Title>\n );\n }\n\n return (\n <Text weight={platform === VKCOM ? \"regular\" : \"medium\"}>{children}</Text>\n );\n};\n\nconst warn = warnOnce(\"PanelHeaderButton\");\nexport const PanelHeaderButton: React.FC<PanelHeaderButtonProps> = ({\n children,\n primary = false,\n label,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const isPrimitive = isPrimitiveReactNode(children);\n const isPrimitiveLabel = isPrimitiveReactNode(label);\n const platform = usePlatform();\n\n let hoverMode;\n let activeMode;\n\n switch (platform) {\n case ANDROID:\n hoverMode = \"background\";\n activeMode = \"background\";\n break;\n case IOS:\n hoverMode = \"background\";\n activeMode = \"opacity\";\n break;\n case VKCOM:\n hoverMode = \"PanelHeaderButton--hover\";\n activeMode = \"PanelHeaderButton--active\";\n }\n\n if (process.env.NODE_ENV === \"development\") {\n const hasAccessibleName = Boolean(\n getTitleFromChildren(children) ||\n getTitleFromChildren(label) ||\n restProps[\"aria-label\"] ||\n restProps[\"aria-labelledby\"]\n );\n\n if (!hasAccessibleName) {\n warn(\n \"a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label.\",\n \"error\"\n );\n }\n }\n\n return (\n <Tappable\n {...restProps}\n hoverMode={hoverMode}\n Component={restProps.href ? \"a\" : \"button\"}\n activeEffectDelay={200}\n activeMode={activeMode}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"PanelHeaderButton\", platform), {\n \"PanelHeaderButton--primary\": primary,\n \"PanelHeaderButton--primitive\": isPrimitive,\n \"PanelHeaderButton--notPrimitive\": !isPrimitive && !isPrimitiveLabel,\n })}\n >\n {isPrimitive ? (\n <ButtonTypography primary={primary}>{children}</ButtonTypography>\n ) : (\n children\n )}\n {isPrimitiveLabel ? (\n <ButtonTypography primary={primary}>{label}</ButtonTypography>\n ) : (\n label\n )}\n </Tappable>\n );\n};\n"],"file":"PanelHeaderButton.js"}
@@ -7,7 +7,7 @@ import { getClassName } from "../../helpers/getClassName";
7
7
  import Tappable from "../Tappable/Tappable";
8
8
  import { usePlatform } from "../../hooks/usePlatform";
9
9
  import { hasReactNode } from "../../lib/utils";
10
- import Caption from "../Typography/Caption/Caption";
10
+ import { Caption } from "../Typography/Caption/Caption";
11
11
  import Headline from "../Typography/Headline/Headline";
12
12
  import { IOS, Platform } from "../../lib/platform";
13
13
  import Text from "../Typography/Text/Text";
@@ -62,8 +62,6 @@ var PanelHeaderContent = function PanelHeaderContent(_ref2) {
62
62
  }, before), createScopedElement(InComponent, _extends({}, inProps, {
63
63
  vkuiClass: "PanelHeaderContent__in"
64
64
  }), hasReactNode(status) && createScopedElement(Caption, {
65
- level: "1",
66
- weight: "regular",
67
65
  vkuiClass: "PanelHeaderContent__status"
68
66
  }, status), createScopedElement("div", {
69
67
  vkuiClass: "PanelHeaderContent__children"
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PanelHeaderContent/PanelHeaderContent.tsx"],"names":["getClassName","Tappable","usePlatform","hasReactNode","Caption","Headline","IOS","Platform","Text","PanelHeaderChildren","platform","hasStatus","hasBefore","children","VKCOM","PanelHeaderContent","className","style","aside","status","before","onClick","restProps","InComponent","rootProps","inProps","activeEffectDelay","hasActive","activeMode","baseClassNames"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Caption from \"../Typography/Caption/Caption\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { IOS, Platform } from \"../../lib/platform\";\nimport Text from \"../Typography/Text/Text\";\nimport { HasPlatform } from \"../../types\";\nimport \"./PanelHeaderContent.css\";\n\nexport interface PanelHeaderContentProps\n extends React.HTMLAttributes<HTMLDivElement> {\n aside?: React.ReactNode;\n before?: React.ReactNode;\n status?: React.ReactNode;\n}\n\ninterface PanelHeaderChildrenProps extends HasPlatform {\n hasStatus: boolean;\n hasBefore: boolean;\n}\n\nconst PanelHeaderChildren: React.FC<PanelHeaderChildrenProps> = ({\n platform,\n hasStatus,\n hasBefore,\n children,\n}) => {\n if (platform === Platform.VKCOM) {\n return (\n <Text Component=\"div\" weight=\"medium\">\n {children}\n </Text>\n );\n }\n\n return hasStatus || hasBefore ? (\n <Headline Component=\"div\" weight=\"medium\">\n {children}\n </Headline>\n ) : (\n <div vkuiClass=\"PanelHeaderContent__children-in\">{children}</div>\n );\n};\n\nconst PanelHeaderContent: React.FunctionComponent<PanelHeaderContentProps> = ({\n className,\n style,\n aside,\n status,\n before,\n children,\n onClick,\n ...restProps\n}: PanelHeaderContentProps) => {\n const InComponent = onClick ? Tappable : \"div\";\n const rootProps = onClick ? {} : restProps;\n const platform = usePlatform();\n const inProps = onClick\n ? {\n ...restProps,\n onClick,\n activeEffectDelay: 200,\n hasActive: platform === IOS,\n activeMode: \"opacity\",\n }\n : {};\n const baseClassNames = getClassName(\"PanelHeaderContent\", platform);\n\n return (\n <div\n {...rootProps}\n vkuiClass={baseClassNames}\n style={style}\n className={className}\n >\n {hasReactNode(before) && (\n <div vkuiClass=\"PanelHeaderContent__before\">{before}</div>\n )}\n <InComponent {...inProps} vkuiClass=\"PanelHeaderContent__in\">\n {hasReactNode(status) && (\n <Caption\n level=\"1\"\n weight=\"regular\"\n vkuiClass=\"PanelHeaderContent__status\"\n >\n {status}\n </Caption>\n )}\n <div vkuiClass=\"PanelHeaderContent__children\">\n <PanelHeaderChildren\n platform={platform}\n hasStatus={hasReactNode(status)}\n hasBefore={hasReactNode(before)}\n >\n {children}\n </PanelHeaderChildren>\n {hasReactNode(aside) && (\n <div vkuiClass=\"PanelHeaderContent__aside\">{aside}</div>\n )}\n </div>\n {hasReactNode(before) && <div vkuiClass=\"PanelHeaderContent__width\" />}\n </InComponent>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default PanelHeaderContent;\n"],"file":"PanelHeaderContent.js"}
1
+ {"version":3,"sources":["../../../src/components/PanelHeaderContent/PanelHeaderContent.tsx"],"names":["getClassName","Tappable","usePlatform","hasReactNode","Caption","Headline","IOS","Platform","Text","PanelHeaderChildren","platform","hasStatus","hasBefore","children","VKCOM","PanelHeaderContent","className","style","aside","status","before","onClick","restProps","InComponent","rootProps","inProps","activeEffectDelay","hasActive","activeMode","baseClassNames"],"mappings":";;;;;AACA,SAASA,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,OAAT;AACA,OAAOC,QAAP;AACA,SAASC,GAAT,EAAcC,QAAd;AACA,OAAOC,IAAP;;AAgBA,IAAMC,mBAAuD,GAAG,SAA1DA,mBAA0D,OAK1D;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,SAGI,QAHJA,SAGI;AAAA,MAFJC,SAEI,QAFJA,SAEI;AAAA,MADJC,QACI,QADJA,QACI;;AACJ,MAAIH,QAAQ,KAAKH,QAAQ,CAACO,KAA1B,EAAiC;AAC/B,WACE,oBAAC,IAAD;AAAM,MAAA,SAAS,EAAC,KAAhB;AAAsB,MAAA,MAAM,EAAC;AAA7B,OACGD,QADH,CADF;AAKD;;AAED,SAAOF,SAAS,IAAIC,SAAb,GACL,oBAAC,QAAD;AAAU,IAAA,SAAS,EAAC,KAApB;AAA0B,IAAA,MAAM,EAAC;AAAjC,KACGC,QADH,CADK,GAKL;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkDA,QAAlD,CALF;AAOD,CArBD;;AAuBA,IAAME,kBAAoE,GAAG,SAAvEA,kBAAuE,QAS9C;AAAA,MAR7BC,SAQ6B,SAR7BA,SAQ6B;AAAA,MAP7BC,KAO6B,SAP7BA,KAO6B;AAAA,MAN7BC,KAM6B,SAN7BA,KAM6B;AAAA,MAL7BC,MAK6B,SAL7BA,MAK6B;AAAA,MAJ7BC,MAI6B,SAJ7BA,MAI6B;AAAA,MAH7BP,QAG6B,SAH7BA,QAG6B;AAAA,MAF7BQ,OAE6B,SAF7BA,OAE6B;AAAA,MAD1BC,SAC0B;;AAC7B,MAAMC,WAAW,GAAGF,OAAO,GAAGpB,QAAH,GAAc,KAAzC;AACA,MAAMuB,SAAS,GAAGH,OAAO,GAAG,EAAH,GAAQC,SAAjC;AACA,MAAMZ,QAAQ,GAAGR,WAAW,EAA5B;AACA,MAAMuB,OAAO,GAAGJ,OAAO,mCAEdC,SAFc;AAGjBD,IAAAA,OAAO,EAAPA,OAHiB;AAIjBK,IAAAA,iBAAiB,EAAE,GAJF;AAKjBC,IAAAA,SAAS,EAAEjB,QAAQ,KAAKJ,GALP;AAMjBsB,IAAAA,UAAU,EAAE;AANK,OAQnB,EARJ;AASA,MAAMC,cAAc,GAAG7B,YAAY,CAAC,oBAAD,EAAuBU,QAAvB,CAAnC;AAEA,SACE,wCACMc,SADN;AAEE,IAAA,SAAS,EAAEK,cAFb;AAGE,IAAA,KAAK,EAAEZ,KAHT;AAIE,IAAA,SAAS,EAAED;AAJb,MAMGb,YAAY,CAACiB,MAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAA6CA,MAA7C,CAPJ,EASE,oBAAC,WAAD,eAAiBK,OAAjB;AAA0B,IAAA,SAAS,EAAC;AAApC,MACGtB,YAAY,CAACgB,MAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAiDA,MAAjD,CAFJ,EAIE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,mBAAD;AACE,IAAA,QAAQ,EAAET,QADZ;AAEE,IAAA,SAAS,EAAEP,YAAY,CAACgB,MAAD,CAFzB;AAGE,IAAA,SAAS,EAAEhB,YAAY,CAACiB,MAAD;AAHzB,KAKGP,QALH,CADF,EAQGV,YAAY,CAACe,KAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAA4CA,KAA5C,CATJ,CAJF,EAgBGf,YAAY,CAACiB,MAAD,CAAZ,IAAwB;AAAK,IAAA,SAAS,EAAC;AAAf,IAhB3B,CATF,CADF;AA8BD,CAtDD,C,CAwDA;;;AACA,eAAeL,kBAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { IOS, Platform } from \"../../lib/platform\";\nimport Text from \"../Typography/Text/Text\";\nimport { HasPlatform } from \"../../types\";\nimport \"./PanelHeaderContent.css\";\n\nexport interface PanelHeaderContentProps\n extends React.HTMLAttributes<HTMLDivElement> {\n aside?: React.ReactNode;\n before?: React.ReactNode;\n status?: React.ReactNode;\n}\n\ninterface PanelHeaderChildrenProps extends HasPlatform {\n hasStatus: boolean;\n hasBefore: boolean;\n}\n\nconst PanelHeaderChildren: React.FC<PanelHeaderChildrenProps> = ({\n platform,\n hasStatus,\n hasBefore,\n children,\n}) => {\n if (platform === Platform.VKCOM) {\n return (\n <Text Component=\"div\" weight=\"medium\">\n {children}\n </Text>\n );\n }\n\n return hasStatus || hasBefore ? (\n <Headline Component=\"div\" weight=\"medium\">\n {children}\n </Headline>\n ) : (\n <div vkuiClass=\"PanelHeaderContent__children-in\">{children}</div>\n );\n};\n\nconst PanelHeaderContent: React.FunctionComponent<PanelHeaderContentProps> = ({\n className,\n style,\n aside,\n status,\n before,\n children,\n onClick,\n ...restProps\n}: PanelHeaderContentProps) => {\n const InComponent = onClick ? Tappable : \"div\";\n const rootProps = onClick ? {} : restProps;\n const platform = usePlatform();\n const inProps = onClick\n ? {\n ...restProps,\n onClick,\n activeEffectDelay: 200,\n hasActive: platform === IOS,\n activeMode: \"opacity\",\n }\n : {};\n const baseClassNames = getClassName(\"PanelHeaderContent\", platform);\n\n return (\n <div\n {...rootProps}\n vkuiClass={baseClassNames}\n style={style}\n className={className}\n >\n {hasReactNode(before) && (\n <div vkuiClass=\"PanelHeaderContent__before\">{before}</div>\n )}\n <InComponent {...inProps} vkuiClass=\"PanelHeaderContent__in\">\n {hasReactNode(status) && (\n <Caption vkuiClass=\"PanelHeaderContent__status\">{status}</Caption>\n )}\n <div vkuiClass=\"PanelHeaderContent__children\">\n <PanelHeaderChildren\n platform={platform}\n hasStatus={hasReactNode(status)}\n hasBefore={hasReactNode(before)}\n >\n {children}\n </PanelHeaderChildren>\n {hasReactNode(aside) && (\n <div vkuiClass=\"PanelHeaderContent__aside\">{aside}</div>\n )}\n </div>\n {hasReactNode(before) && <div vkuiClass=\"PanelHeaderContent__width\" />}\n </InComponent>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default PanelHeaderContent;\n"],"file":"PanelHeaderContent.js"}
@@ -14,6 +14,7 @@ import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
14
14
  import { useGlobalEventListener } from "../../hooks/useGlobalEventListener";
15
15
  import { useTimeout } from "../../hooks/useTimeout";
16
16
  import { usePlatform } from "../../hooks/usePlatform";
17
+ import { useScrollLock } from "../AppRoot/ScrollContext";
17
18
  export var PanelHeaderContext = function PanelHeaderContext(_ref) {
18
19
  var children = _ref.children,
19
20
  onClose = _ref.onClose,
@@ -40,7 +41,8 @@ export var PanelHeaderContext = function PanelHeaderContext(_ref) {
40
41
  var elementRef = React.useRef(null);
41
42
  useIsomorphicLayoutEffect(function () {
42
43
  opened && setVisible(true);
43
- }, [opened]); // start closing on outer click
44
+ }, [opened]);
45
+ useScrollLock(!isDesktop && opened); // start closing on outer click
44
46
 
45
47
  useGlobalEventListener(document, "click", isDesktop && opened && !closing && function (event) {
46
48
  if (elementRef.current && !elementRef.current.contains(event.target)) {
@@ -57,6 +59,7 @@ export var PanelHeaderContext = function PanelHeaderContext(_ref) {
57
59
  return closing ? animationFallback.set() : animationFallback.clear();
58
60
  }, [animationFallback, closing]);
59
61
  return createScopedElement(FixedLayout, _extends({}, restProps, {
62
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
60
63
  vkuiClass: classNames(getClassName("PanelHeaderContext", platform), {
61
64
  "PanelHeaderContext--opened": opened,
62
65
  "PanelHeaderContext--closing": closing,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PanelHeaderContext/PanelHeaderContext.tsx"],"names":["React","FixedLayout","classNames","getClassName","ViewWidth","useAdaptivity","useDOM","useIsomorphicLayoutEffect","useGlobalEventListener","useTimeout","usePlatform","PanelHeaderContext","children","onClose","opened","restProps","document","platform","useState","visible","setVisible","closing","viewWidth","isDesktop","SMALL_TABLET","elementRef","useRef","event","current","contains","target","onAnimationEnd","animationFallback","useEffect","set","clear","undefined"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAOC,WAAP;AACA,SAASC,UAAT;AACA,SAASC,YAAT;AACA,SAASC,SAAT;AACA,SAASC,aAAT;AACA,SAASC,MAAT;AACA,SAASC,yBAAT;AACA,SAASC,sBAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AASA,OAAO,IAAMC,kBAAqD,GAAG,SAAxDA,kBAAwD,OAK/D;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,OAGI,QAHJA,OAGI;AAAA,yBAFJC,MAEI;AAAA,MAFJA,MAEI,4BAFK,KAEL;AAAA,MADDC,SACC;;AACJ,gBAAqBT,MAAM,EAA3B;AAAA,MAAQU,QAAR,WAAQA,QAAR;;AACA,MAAMC,QAAQ,GAAGP,WAAW,EAA5B;;AACA,wBAA8BV,KAAK,CAACkB,QAAN,CAAeJ,MAAf,CAA9B;AAAA;AAAA,MAAOK,OAAP;AAAA,MAAgBC,UAAhB;;AACA,MAAMC,OAAO,GAAGF,OAAO,IAAI,CAACL,MAA5B;;AACA,uBAAsBT,aAAa,EAAnC;AAAA,MAAQiB,SAAR,kBAAQA,SAAR;;AACA,MAAMC,SAAS,GAAGD,SAAS,IAAIlB,SAAS,CAACoB,YAAzC;AACA,MAAMC,UAAU,GAAGzB,KAAK,CAAC0B,MAAN,CAA6B,IAA7B,CAAnB;AAEAnB,EAAAA,yBAAyB,CAAC,YAAM;AAC9BO,IAAAA,MAAM,IAAIM,UAAU,CAAC,IAAD,CAApB;AACD,GAFwB,EAEtB,CAACN,MAAD,CAFsB,CAAzB,CATI,CAaJ;;AACAN,EAAAA,sBAAsB,CACpBQ,QADoB,EAEpB,OAFoB,EAGpBO,SAAS,IACPT,MADF,IAEE,CAACO,OAFH,IAGG,UAACM,KAAD,EAAW;AACV,QACEF,UAAU,CAACG,OAAX,IACA,CAACH,UAAU,CAACG,OAAX,CAAmBC,QAAnB,CAA4BF,KAAK,CAACG,MAAlC,CAFH,EAGE;AACAjB,MAAAA,OAAO;AACR;AACF,GAbiB,CAAtB,CAdI,CA8BJ;;AACA,MAAMkB,cAAc,GAAG,SAAjBA,cAAiB;AAAA,WAAMX,UAAU,CAAC,KAAD,CAAhB;AAAA,GAAvB;;AACA,MAAMY,iBAAiB,GAAGvB,UAAU,CAACsB,cAAD,EAAiB,GAAjB,CAApC;AACA/B,EAAAA,KAAK,CAACiC,SAAN,CACE;AAAA,WAAOZ,OAAO,GAAGW,iBAAiB,CAACE,GAAlB,EAAH,GAA6BF,iBAAiB,CAACG,KAAlB,EAA3C;AAAA,GADF,EAEE,CAACH,iBAAD,EAAoBX,OAApB,CAFF;AAKA,SACE,oBAAC,WAAD,eACMN,SADN;AAEE,IAAA,SAAS,EAAEb,UAAU,CAACC,YAAY,CAAC,oBAAD,EAAuBc,QAAvB,CAAb,EAA+C;AAClE,oCAA8BH,MADoC;AAElE,qCAA+BO,OAFmC;AAGlE,qCAA+BE;AAHmC,KAA/C,CAFvB;AAOE,IAAA,QAAQ,EAAC;AAPX,MASE;AACE,IAAA,SAAS,EAAC,wBADZ;AAEE,IAAA,GAAG,EAAEE,UAFP;AAGE,IAAA,cAAc,EAAEJ,OAAO,GAAGU,cAAH,GAAoBK;AAH7C,KAKE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA8CjB,OAAO,IAAIP,QAAzD,CALF,CATF,EAgBG,CAACW,SAAD,IAAcJ,OAAd,IACC;AAAK,IAAA,OAAO,EAAEN,OAAd;AAAuB,IAAA,SAAS,EAAC;AAAjC,IAjBJ,CADF;AAsBD,CAjEM","sourcesContent":["import * as React from \"react\";\nimport FixedLayout from \"../FixedLayout/FixedLayout\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ViewWidth } from \"../AdaptivityProvider/AdaptivityContext\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./PanelHeaderContext.css\";\n\nexport interface PanelHeaderContextProps\n extends React.HTMLAttributes<HTMLDivElement> {\n opened: boolean;\n onClose: VoidFunction;\n}\n\nexport const PanelHeaderContext: React.FC<PanelHeaderContextProps> = ({\n children,\n onClose,\n opened = false,\n ...restProps\n}) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const [visible, setVisible] = React.useState(opened);\n const closing = visible && !opened;\n const { viewWidth } = useAdaptivity();\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n useIsomorphicLayoutEffect(() => {\n opened && setVisible(true);\n }, [opened]);\n\n // start closing on outer click\n useGlobalEventListener(\n document,\n \"click\",\n isDesktop &&\n opened &&\n !closing &&\n ((event) => {\n if (\n elementRef.current &&\n !elementRef.current.contains(event.target as Node)\n ) {\n onClose();\n }\n })\n );\n\n // fallback onAnimationEnd when animationend not supported\n const onAnimationEnd = () => setVisible(false);\n const animationFallback = useTimeout(onAnimationEnd, 200);\n React.useEffect(\n () => (closing ? animationFallback.set() : animationFallback.clear()),\n [animationFallback, closing]\n );\n\n return (\n <FixedLayout\n {...restProps}\n vkuiClass={classNames(getClassName(\"PanelHeaderContext\", platform), {\n \"PanelHeaderContext--opened\": opened,\n \"PanelHeaderContext--closing\": closing,\n \"PanelHeaderContext--desktop\": isDesktop,\n })}\n vertical=\"top\"\n >\n <div\n vkuiClass=\"PanelHeaderContext__in\"\n ref={elementRef}\n onAnimationEnd={closing ? onAnimationEnd : undefined}\n >\n <div vkuiClass=\"PanelHeaderContext__content\">{visible && children}</div>\n </div>\n {!isDesktop && visible && (\n <div onClick={onClose} vkuiClass=\"PanelHeaderContext__fade\" />\n )}\n </FixedLayout>\n );\n};\n"],"file":"PanelHeaderContext.js"}
1
+ {"version":3,"sources":["../../../src/components/PanelHeaderContext/PanelHeaderContext.tsx"],"names":["React","FixedLayout","classNames","getClassName","ViewWidth","useAdaptivity","useDOM","useIsomorphicLayoutEffect","useGlobalEventListener","useTimeout","usePlatform","useScrollLock","PanelHeaderContext","children","onClose","opened","restProps","document","platform","useState","visible","setVisible","closing","viewWidth","isDesktop","SMALL_TABLET","elementRef","useRef","event","current","contains","target","onAnimationEnd","animationFallback","useEffect","set","clear","undefined"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,OAAOC,WAAP;AACA,SAASC,UAAT;AACA,SAASC,YAAT;AACA,SAASC,SAAT;AACA,SAASC,aAAT;AACA,SAASC,MAAT;AACA,SAASC,yBAAT;AACA,SAASC,sBAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA,SAASC,aAAT;AASA,OAAO,IAAMC,kBAAqD,GAAG,SAAxDA,kBAAwD,OAK/D;AAAA,MAJJC,QAII,QAJJA,QAII;AAAA,MAHJC,OAGI,QAHJA,OAGI;AAAA,yBAFJC,MAEI;AAAA,MAFJA,MAEI,4BAFK,KAEL;AAAA,MADDC,SACC;;AACJ,gBAAqBV,MAAM,EAA3B;AAAA,MAAQW,QAAR,WAAQA,QAAR;;AACA,MAAMC,QAAQ,GAAGR,WAAW,EAA5B;;AACA,wBAA8BV,KAAK,CAACmB,QAAN,CAAeJ,MAAf,CAA9B;AAAA;AAAA,MAAOK,OAAP;AAAA,MAAgBC,UAAhB;;AACA,MAAMC,OAAO,GAAGF,OAAO,IAAI,CAACL,MAA5B;;AACA,uBAAsBV,aAAa,EAAnC;AAAA,MAAQkB,SAAR,kBAAQA,SAAR;;AACA,MAAMC,SAAS,GAAGD,SAAS,IAAInB,SAAS,CAACqB,YAAzC;AACA,MAAMC,UAAU,GAAG1B,KAAK,CAAC2B,MAAN,CAA6B,IAA7B,CAAnB;AAEApB,EAAAA,yBAAyB,CAAC,YAAM;AAC9BQ,IAAAA,MAAM,IAAIM,UAAU,CAAC,IAAD,CAApB;AACD,GAFwB,EAEtB,CAACN,MAAD,CAFsB,CAAzB;AAIAJ,EAAAA,aAAa,CAAC,CAACa,SAAD,IAAcT,MAAf,CAAb,CAbI,CAeJ;;AACAP,EAAAA,sBAAsB,CACpBS,QADoB,EAEpB,OAFoB,EAGpBO,SAAS,IACPT,MADF,IAEE,CAACO,OAFH,IAGG,UAACM,KAAD,EAAW;AACV,QACEF,UAAU,CAACG,OAAX,IACA,CAACH,UAAU,CAACG,OAAX,CAAmBC,QAAnB,CAA4BF,KAAK,CAACG,MAAlC,CAFH,EAGE;AACAjB,MAAAA,OAAO;AACR;AACF,GAbiB,CAAtB,CAhBI,CAgCJ;;AACA,MAAMkB,cAAc,GAAG,SAAjBA,cAAiB;AAAA,WAAMX,UAAU,CAAC,KAAD,CAAhB;AAAA,GAAvB;;AACA,MAAMY,iBAAiB,GAAGxB,UAAU,CAACuB,cAAD,EAAiB,GAAjB,CAApC;AACAhC,EAAAA,KAAK,CAACkC,SAAN,CACE;AAAA,WAAOZ,OAAO,GAAGW,iBAAiB,CAACE,GAAlB,EAAH,GAA6BF,iBAAiB,CAACG,KAAlB,EAA3C;AAAA,GADF,EAEE,CAACH,iBAAD,EAAoBX,OAApB,CAFF;AAKA,SACE,oBAAC,WAAD,eACMN,SADN;AAEE;AACA,IAAA,SAAS,EAAEd,UAAU,CAACC,YAAY,CAAC,oBAAD,EAAuBe,QAAvB,CAAb,EAA+C;AAClE,oCAA8BH,MADoC;AAElE,qCAA+BO,OAFmC;AAGlE,qCAA+BE;AAHmC,KAA/C,CAHvB;AAQE,IAAA,QAAQ,EAAC;AARX,MAUE;AACE,IAAA,SAAS,EAAC,wBADZ;AAEE,IAAA,GAAG,EAAEE,UAFP;AAGE,IAAA,cAAc,EAAEJ,OAAO,GAAGU,cAAH,GAAoBK;AAH7C,KAKE;AAAK,IAAA,SAAS,EAAC;AAAf,KAA8CjB,OAAO,IAAIP,QAAzD,CALF,CAVF,EAiBG,CAACW,SAAD,IAAcJ,OAAd,IACC;AAAK,IAAA,OAAO,EAAEN,OAAd;AAAuB,IAAA,SAAS,EAAC;AAAjC,IAlBJ,CADF;AAuBD,CApEM","sourcesContent":["import * as React from \"react\";\nimport FixedLayout from \"../FixedLayout/FixedLayout\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { ViewWidth } from \"../AdaptivityProvider/AdaptivityContext\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useScrollLock } from \"../AppRoot/ScrollContext\";\nimport \"./PanelHeaderContext.css\";\n\nexport interface PanelHeaderContextProps\n extends React.HTMLAttributes<HTMLDivElement> {\n opened: boolean;\n onClose: VoidFunction;\n}\n\nexport const PanelHeaderContext: React.FC<PanelHeaderContextProps> = ({\n children,\n onClose,\n opened = false,\n ...restProps\n}) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const [visible, setVisible] = React.useState(opened);\n const closing = visible && !opened;\n const { viewWidth } = useAdaptivity();\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n useIsomorphicLayoutEffect(() => {\n opened && setVisible(true);\n }, [opened]);\n\n useScrollLock(!isDesktop && opened);\n\n // start closing on outer click\n useGlobalEventListener(\n document,\n \"click\",\n isDesktop &&\n opened &&\n !closing &&\n ((event) => {\n if (\n elementRef.current &&\n !elementRef.current.contains(event.target as Node)\n ) {\n onClose();\n }\n })\n );\n\n // fallback onAnimationEnd when animationend not supported\n const onAnimationEnd = () => setVisible(false);\n const animationFallback = useTimeout(onAnimationEnd, 200);\n React.useEffect(\n () => (closing ? animationFallback.set() : animationFallback.clear()),\n [animationFallback, closing]\n );\n\n return (\n <FixedLayout\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"PanelHeaderContext\", platform), {\n \"PanelHeaderContext--opened\": opened,\n \"PanelHeaderContext--closing\": closing,\n \"PanelHeaderContext--desktop\": isDesktop,\n })}\n vertical=\"top\"\n >\n <div\n vkuiClass=\"PanelHeaderContext__in\"\n ref={elementRef}\n onAnimationEnd={closing ? onAnimationEnd : undefined}\n >\n <div vkuiClass=\"PanelHeaderContext__content\">{visible && children}</div>\n </div>\n {!isDesktop && visible && (\n <div onClick={onClose} vkuiClass=\"PanelHeaderContext__fade\" />\n )}\n </FixedLayout>\n );\n};\n"],"file":"PanelHeaderContext.js"}
@@ -4,7 +4,7 @@ var _excluded = ["icon", "header", "action", "children", "stretched", "getRootRe
4
4
  import { createScopedElement } from "../../lib/jsxRuntime";
5
5
  import { classNames } from "../../lib/classNames";
6
6
  import { hasReactNode } from "../../lib/utils";
7
- import Title from "../Typography/Title/Title";
7
+ import { Title } from "../Typography/Title/Title";
8
8
  import Headline from "../Typography/Headline/Headline";
9
9
 
10
10
  var Placeholder = function Placeholder(props) {
@@ -17,7 +17,8 @@ var Placeholder = function Placeholder(props) {
17
17
  restProps = _objectWithoutProperties(props, _excluded);
18
18
 
19
19
  return createScopedElement("div", _extends({}, restProps, {
20
- ref: getRootRef,
20
+ ref: getRootRef // eslint-disable-next-line vkui/no-object-expression-in-arguments
21
+ ,
21
22
  vkuiClass: classNames("Placeholder", {
22
23
  "Placeholder--stretched": stretched
23
24
  })
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Placeholder/Placeholder.tsx"],"names":["classNames","hasReactNode","Title","Headline","Placeholder","props","icon","header","action","children","stretched","getRootRef","restProps"],"mappings":";;;;AACA,SAASA,UAAT;AACA,SAASC,YAAT;AACA,OAAOC,KAAP;AACA,OAAOC,QAAP;;AAyBA,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,CAACC,KAAD,EAA6B;AAC3E,MACEC,IADF,GAQID,KARJ,CACEC,IADF;AAAA,MAEEC,MAFF,GAQIF,KARJ,CAEEE,MAFF;AAAA,MAGEC,MAHF,GAQIH,KARJ,CAGEG,MAHF;AAAA,MAIEC,QAJF,GAQIJ,KARJ,CAIEI,QAJF;AAAA,MAKEC,SALF,GAQIL,KARJ,CAKEK,SALF;AAAA,MAMEC,UANF,GAQIN,KARJ,CAMEM,UANF;AAAA,MAOKC,SAPL,4BAQIP,KARJ;;AAUA,SACE,wCACMO,SADN;AAEE,IAAA,GAAG,EAAED,UAFP;AAGE,IAAA,SAAS,EAAEX,UAAU,CAAC,aAAD,EAAgB;AACnC,gCAA0BU;AADS,KAAhB;AAHvB,MAOE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGT,YAAY,CAACK,IAAD,CAAZ,IAAsB;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoCA,IAApC,CADzB,EAEGL,YAAY,CAACM,MAAD,CAAZ,IACC,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAC,GAAb;AAAiB,IAAA,MAAM,EAAC,GAAxB;AAA4B,IAAA,SAAS,EAAC;AAAtC,KACGA,MADH,CAHJ,EAOGN,YAAY,CAACQ,QAAD,CAAZ,IACC,oBAAC,QAAD;AAAU,IAAA,MAAM,EAAC,SAAjB;AAA2B,IAAA,SAAS,EAAC;AAArC,KACGA,QADH,CARJ,EAYGR,YAAY,CAACO,MAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAsCA,MAAtC,CAbJ,CAPF,CADF;AA0BD,CArCD,C,CAuCA;;;AACA,eAAeJ,WAAf","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Title from \"../Typography/Title/Title\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { HasRootRef } from \"../../types\";\nimport \"./Placeholder.css\";\n\nexport interface PlaceholderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка\n */\n icon?: React.ReactNode;\n /**\n * Заголовок плейсхолдера\n */\n header?: React.ReactNode;\n /**\n * Кнопка действия\n */\n action?: React.ReactNode;\n /**\n * Растягивает плейсхолдер на весь экран, но в таком случае на экране должен быть только плейсхолдер\n */\n stretched?: boolean;\n}\n\nconst Placeholder: React.FC<PlaceholderProps> = (props: PlaceholderProps) => {\n const {\n icon,\n header,\n action,\n children,\n stretched,\n getRootRef,\n ...restProps\n } = props;\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n vkuiClass={classNames(\"Placeholder\", {\n \"Placeholder--stretched\": stretched,\n })}\n >\n <div vkuiClass=\"Placeholder__in\">\n {hasReactNode(icon) && <div vkuiClass=\"Placeholder__icon\">{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" vkuiClass=\"Placeholder__header\">\n {header}\n </Title>\n )}\n {hasReactNode(children) && (\n <Headline weight=\"regular\" vkuiClass=\"Placeholder__text\">\n {children}\n </Headline>\n )}\n {hasReactNode(action) && (\n <div vkuiClass=\"Placeholder__action\">{action}</div>\n )}\n </div>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Placeholder;\n"],"file":"Placeholder.js"}
1
+ {"version":3,"sources":["../../../src/components/Placeholder/Placeholder.tsx"],"names":["classNames","hasReactNode","Title","Headline","Placeholder","props","icon","header","action","children","stretched","getRootRef","restProps"],"mappings":";;;;AACA,SAASA,UAAT;AACA,SAASC,YAAT;AACA,SAASC,KAAT;AACA,OAAOC,QAAP;;AAyBA,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,CAACC,KAAD,EAA6B;AAC3E,MACEC,IADF,GAQID,KARJ,CACEC,IADF;AAAA,MAEEC,MAFF,GAQIF,KARJ,CAEEE,MAFF;AAAA,MAGEC,MAHF,GAQIH,KARJ,CAGEG,MAHF;AAAA,MAIEC,QAJF,GAQIJ,KARJ,CAIEI,QAJF;AAAA,MAKEC,SALF,GAQIL,KARJ,CAKEK,SALF;AAAA,MAMEC,UANF,GAQIN,KARJ,CAMEM,UANF;AAAA,MAOKC,SAPL,4BAQIP,KARJ;;AAUA,SACE,wCACMO,SADN;AAEE,IAAA,GAAG,EAAED,UAFP,CAGE;AAHF;AAIE,IAAA,SAAS,EAAEX,UAAU,CAAC,aAAD,EAAgB;AACnC,gCAA0BU;AADS,KAAhB;AAJvB,MAQE;AAAK,IAAA,SAAS,EAAC;AAAf,KACGT,YAAY,CAACK,IAAD,CAAZ,IAAsB;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoCA,IAApC,CADzB,EAEGL,YAAY,CAACM,MAAD,CAAZ,IACC,oBAAC,KAAD;AAAO,IAAA,KAAK,EAAC,GAAb;AAAiB,IAAA,MAAM,EAAC,GAAxB;AAA4B,IAAA,SAAS,EAAC;AAAtC,KACGA,MADH,CAHJ,EAOGN,YAAY,CAACQ,QAAD,CAAZ,IACC,oBAAC,QAAD;AAAU,IAAA,MAAM,EAAC,SAAjB;AAA2B,IAAA,SAAS,EAAC;AAArC,KACGA,QADH,CARJ,EAYGR,YAAY,CAACO,MAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAsCA,MAAtC,CAbJ,CARF,CADF;AA2BD,CAtCD,C,CAwCA;;;AACA,eAAeJ,WAAf","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Title } from \"../Typography/Title/Title\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { HasRootRef } from \"../../types\";\nimport \"./Placeholder.css\";\n\nexport interface PlaceholderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка\n */\n icon?: React.ReactNode;\n /**\n * Заголовок плейсхолдера\n */\n header?: React.ReactNode;\n /**\n * Кнопка действия\n */\n action?: React.ReactNode;\n /**\n * Растягивает плейсхолдер на весь экран, но в таком случае на экране должен быть только плейсхолдер\n */\n stretched?: boolean;\n}\n\nconst Placeholder: React.FC<PlaceholderProps> = (props: PlaceholderProps) => {\n const {\n icon,\n header,\n action,\n children,\n stretched,\n getRootRef,\n ...restProps\n } = props;\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"Placeholder\", {\n \"Placeholder--stretched\": stretched,\n })}\n >\n <div vkuiClass=\"Placeholder__in\">\n {hasReactNode(icon) && <div vkuiClass=\"Placeholder__icon\">{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" vkuiClass=\"Placeholder__header\">\n {header}\n </Title>\n )}\n {hasReactNode(children) && (\n <Headline weight=\"regular\" vkuiClass=\"Placeholder__text\">\n {children}\n </Headline>\n )}\n {hasReactNode(action) && (\n <div vkuiClass=\"Placeholder__action\">{action}</div>\n )}\n </div>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Placeholder;\n"],"file":"Placeholder.js"}
@@ -56,6 +56,7 @@ export var PopoutWrapper = function PopoutWrapper(_ref) {
56
56
  });
57
57
  var baseClassNames = getClassName("PopoutWrapper", platform);
58
58
  return createScopedElement("div", _extends({}, restProps, {
59
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
59
60
  vkuiClass: classNames(baseClassNames, "PopoutWrapper--v-".concat(alignY), "PopoutWrapper--h-".concat(alignX), {
60
61
  "PopoutWrapper--closing": closing,
61
62
  "PopoutWrapper--opened": opened,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PopoutWrapper/PopoutWrapper.tsx"],"names":["React","getClassName","classNames","IOS","useTimeout","usePlatform","useGlobalEventListener","useDOM","PopoutWrapper","alignY","alignX","closing","hasMask","fixed","children","onClick","restProps","platform","useState","opened","setOpened","elRef","useRef","onFadeInEnd","e","animationName","animationFinishFallback","useEffect","set","window","preventDefault","passive","baseClassNames","undefined"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,GAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA,SAASC,sBAAT;AACA,SAASC,MAAT;AAYA,OAAO,IAAMC,aAA2C,GAAG,SAA9CA,aAA8C,OASjC;AAAA,yBARxBC,MAQwB;AAAA,MARxBA,MAQwB,4BARf,QAQe;AAAA,yBAPxBC,MAOwB;AAAA,MAPxBA,MAOwB,4BAPf,QAOe;AAAA,0BANxBC,OAMwB;AAAA,MANxBA,OAMwB,6BANd,KAMc;AAAA,0BALxBC,OAKwB;AAAA,MALxBA,OAKwB,6BALd,IAKc;AAAA,wBAJxBC,KAIwB;AAAA,MAJxBA,KAIwB,2BAJhB,IAIgB;AAAA,MAHxBC,QAGwB,QAHxBA,QAGwB;AAAA,MAFxBC,OAEwB,QAFxBA,OAEwB;AAAA,MADrBC,SACqB;;AACxB,MAAMC,QAAQ,GAAGZ,WAAW,EAA5B;;AACA,wBAA4BL,KAAK,CAACkB,QAAN,CAAe,CAACN,OAAhB,CAA5B;AAAA;AAAA,MAAOO,MAAP;AAAA,MAAeC,SAAf;;AACA,MAAMC,KAAK,GAAGrB,KAAK,CAACsB,MAAN,CAA6B,IAA7B,CAAd;;AAEA,MAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAA8B;AAChD,QAAI,CAACA,CAAD,IAAMA,CAAC,CAACC,aAAF,KAAoB,6BAA9B,EAA6D;AAC3DL,MAAAA,SAAS,CAAC,IAAD,CAAT;AACD;AACF,GAJD;;AAKA,MAAMM,uBAAuB,GAAGtB,UAAU,CACxCmB,WADwC,EAExCN,QAAQ,KAAKd,GAAb,GAAmB,GAAnB,GAAyB,GAFe,CAA1C;AAIAH,EAAAA,KAAK,CAAC2B,SAAN,CAAgB,YAAM;AACpB,KAACR,MAAD,IAAWO,uBAAuB,CAACE,GAAxB,EAAX;AACD,GAFD,EAEG,CAACF,uBAAD,EAA0BP,MAA1B,CAFH;;AAIA,gBAAmBZ,MAAM,EAAzB;AAAA,MAAQsB,MAAR,WAAQA,MAAR;;AACAvB,EAAAA,sBAAsB,CAACuB,MAAD,EAAS,WAAT,EAAsB,UAACL,CAAD;AAAA,WAAOA,CAAC,CAACM,cAAF,EAAP;AAAA,GAAtB,EAAiD;AACrEC,IAAAA,OAAO,EAAE;AAD4D,GAAjD,CAAtB;AAIA,MAAMC,cAAc,GAAG/B,YAAY,CAAC,eAAD,EAAkBgB,QAAlB,CAAnC;AAEA,SACE,wCACMD,SADN;AAEE,IAAA,SAAS,EAAEd,UAAU,CACnB8B,cADmB,6BAECvB,MAFD,8BAGCC,MAHD,GAInB;AACE,gCAA0BC,OAD5B;AAEE,+BAAyBQ,MAF3B;AAGE,8BAAwBN,KAH1B;AAIE,+BAAyBD;AAJ3B,KAJmB,CAFvB;AAaE,IAAA,cAAc,EAAEO,MAAM,GAAGc,SAAH,GAAeV,WAbvC;AAcE,IAAA,GAAG,EAAEF;AAdP,MAgBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC,wBAAf;AAAwC,IAAA,OAAO,EAAEN;AAAjD,IADF,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAyCD,QAAzC,CAFF,CAhBF,CADF;AAuBD,CAzDM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS } from \"../../lib/platform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { useDOM } from \"../../lib/dom\";\nimport \"./PopoutWrapper.css\";\n\nexport interface PopoutWrapperProps\n extends React.HTMLAttributes<HTMLDivElement> {\n hasMask?: boolean;\n fixed?: boolean;\n alignY?: \"top\" | \"center\" | \"bottom\";\n alignX?: \"left\" | \"center\" | \"right\";\n closing?: boolean;\n}\n\nexport const PopoutWrapper: React.FC<PopoutWrapperProps> = ({\n alignY = \"center\",\n alignX = \"center\",\n closing = false,\n hasMask = true,\n fixed = true,\n children,\n onClick,\n ...restProps\n}: PopoutWrapperProps) => {\n const platform = usePlatform();\n const [opened, setOpened] = React.useState(!hasMask);\n const elRef = React.useRef<HTMLDivElement>(null);\n\n const onFadeInEnd = (e?: React.AnimationEvent) => {\n if (!e || e.animationName === \"vkui-animation-full-fade-in\") {\n setOpened(true);\n }\n };\n const animationFinishFallback = useTimeout(\n onFadeInEnd,\n platform === IOS ? 300 : 200\n );\n React.useEffect(() => {\n !opened && animationFinishFallback.set();\n }, [animationFinishFallback, opened]);\n\n const { window } = useDOM();\n useGlobalEventListener(window, \"touchmove\", (e) => e.preventDefault(), {\n passive: false,\n });\n\n const baseClassNames = getClassName(\"PopoutWrapper\", platform);\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n baseClassNames,\n `PopoutWrapper--v-${alignY}`,\n `PopoutWrapper--h-${alignX}`,\n {\n \"PopoutWrapper--closing\": closing,\n \"PopoutWrapper--opened\": opened,\n \"PopoutWrapper--fixed\": fixed,\n \"PopoutWrapper--masked\": hasMask,\n }\n )}\n onAnimationEnd={opened ? undefined : onFadeInEnd}\n ref={elRef}\n >\n <div vkuiClass=\"PopoutWrapper__container\">\n <div vkuiClass=\"PopoutWrapper__overlay\" onClick={onClick} />\n <div vkuiClass=\"PopoutWrapper__content\">{children}</div>\n </div>\n </div>\n );\n};\n"],"file":"PopoutWrapper.js"}
1
+ {"version":3,"sources":["../../../src/components/PopoutWrapper/PopoutWrapper.tsx"],"names":["React","getClassName","classNames","IOS","useTimeout","usePlatform","useGlobalEventListener","useDOM","PopoutWrapper","alignY","alignX","closing","hasMask","fixed","children","onClick","restProps","platform","useState","opened","setOpened","elRef","useRef","onFadeInEnd","e","animationName","animationFinishFallback","useEffect","set","window","preventDefault","passive","baseClassNames","undefined"],"mappings":";;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,GAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA,SAASC,sBAAT;AACA,SAASC,MAAT;AAYA,OAAO,IAAMC,aAA2C,GAAG,SAA9CA,aAA8C,OASjC;AAAA,yBARxBC,MAQwB;AAAA,MARxBA,MAQwB,4BARf,QAQe;AAAA,yBAPxBC,MAOwB;AAAA,MAPxBA,MAOwB,4BAPf,QAOe;AAAA,0BANxBC,OAMwB;AAAA,MANxBA,OAMwB,6BANd,KAMc;AAAA,0BALxBC,OAKwB;AAAA,MALxBA,OAKwB,6BALd,IAKc;AAAA,wBAJxBC,KAIwB;AAAA,MAJxBA,KAIwB,2BAJhB,IAIgB;AAAA,MAHxBC,QAGwB,QAHxBA,QAGwB;AAAA,MAFxBC,OAEwB,QAFxBA,OAEwB;AAAA,MADrBC,SACqB;;AACxB,MAAMC,QAAQ,GAAGZ,WAAW,EAA5B;;AACA,wBAA4BL,KAAK,CAACkB,QAAN,CAAe,CAACN,OAAhB,CAA5B;AAAA;AAAA,MAAOO,MAAP;AAAA,MAAeC,SAAf;;AACA,MAAMC,KAAK,GAAGrB,KAAK,CAACsB,MAAN,CAA6B,IAA7B,CAAd;;AAEA,MAAMC,WAAW,GAAG,SAAdA,WAAc,CAACC,CAAD,EAA8B;AAChD,QAAI,CAACA,CAAD,IAAMA,CAAC,CAACC,aAAF,KAAoB,6BAA9B,EAA6D;AAC3DL,MAAAA,SAAS,CAAC,IAAD,CAAT;AACD;AACF,GAJD;;AAKA,MAAMM,uBAAuB,GAAGtB,UAAU,CACxCmB,WADwC,EAExCN,QAAQ,KAAKd,GAAb,GAAmB,GAAnB,GAAyB,GAFe,CAA1C;AAIAH,EAAAA,KAAK,CAAC2B,SAAN,CAAgB,YAAM;AACpB,KAACR,MAAD,IAAWO,uBAAuB,CAACE,GAAxB,EAAX;AACD,GAFD,EAEG,CAACF,uBAAD,EAA0BP,MAA1B,CAFH;;AAIA,gBAAmBZ,MAAM,EAAzB;AAAA,MAAQsB,MAAR,WAAQA,MAAR;;AACAvB,EAAAA,sBAAsB,CAACuB,MAAD,EAAS,WAAT,EAAsB,UAACL,CAAD;AAAA,WAAOA,CAAC,CAACM,cAAF,EAAP;AAAA,GAAtB,EAAiD;AACrEC,IAAAA,OAAO,EAAE;AAD4D,GAAjD,CAAtB;AAIA,MAAMC,cAAc,GAAG/B,YAAY,CAAC,eAAD,EAAkBgB,QAAlB,CAAnC;AAEA,SACE,wCACMD,SADN;AAEE;AACA,IAAA,SAAS,EAAEd,UAAU,CACnB8B,cADmB,6BAECvB,MAFD,8BAGCC,MAHD,GAInB;AACE,gCAA0BC,OAD5B;AAEE,+BAAyBQ,MAF3B;AAGE,8BAAwBN,KAH1B;AAIE,+BAAyBD;AAJ3B,KAJmB,CAHvB;AAcE,IAAA,cAAc,EAAEO,MAAM,GAAGc,SAAH,GAAeV,WAdvC;AAeE,IAAA,GAAG,EAAEF;AAfP,MAiBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,SAAS,EAAC,wBAAf;AAAwC,IAAA,OAAO,EAAEN;AAAjD,IADF,EAEE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAyCD,QAAzC,CAFF,CAjBF,CADF;AAwBD,CA1DM","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS } from \"../../lib/platform\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { useDOM } from \"../../lib/dom\";\nimport \"./PopoutWrapper.css\";\n\nexport interface PopoutWrapperProps\n extends React.HTMLAttributes<HTMLDivElement> {\n hasMask?: boolean;\n fixed?: boolean;\n alignY?: \"top\" | \"center\" | \"bottom\";\n alignX?: \"left\" | \"center\" | \"right\";\n closing?: boolean;\n}\n\nexport const PopoutWrapper: React.FC<PopoutWrapperProps> = ({\n alignY = \"center\",\n alignX = \"center\",\n closing = false,\n hasMask = true,\n fixed = true,\n children,\n onClick,\n ...restProps\n}: PopoutWrapperProps) => {\n const platform = usePlatform();\n const [opened, setOpened] = React.useState(!hasMask);\n const elRef = React.useRef<HTMLDivElement>(null);\n\n const onFadeInEnd = (e?: React.AnimationEvent) => {\n if (!e || e.animationName === \"vkui-animation-full-fade-in\") {\n setOpened(true);\n }\n };\n const animationFinishFallback = useTimeout(\n onFadeInEnd,\n platform === IOS ? 300 : 200\n );\n React.useEffect(() => {\n !opened && animationFinishFallback.set();\n }, [animationFinishFallback, opened]);\n\n const { window } = useDOM();\n useGlobalEventListener(window, \"touchmove\", (e) => e.preventDefault(), {\n passive: false,\n });\n\n const baseClassNames = getClassName(\"PopoutWrapper\", platform);\n\n return (\n <div\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n baseClassNames,\n `PopoutWrapper--v-${alignY}`,\n `PopoutWrapper--h-${alignX}`,\n {\n \"PopoutWrapper--closing\": closing,\n \"PopoutWrapper--opened\": opened,\n \"PopoutWrapper--fixed\": fixed,\n \"PopoutWrapper--masked\": hasMask,\n }\n )}\n onAnimationEnd={opened ? undefined : onFadeInEnd}\n ref={elRef}\n >\n <div vkuiClass=\"PopoutWrapper__container\">\n <div vkuiClass=\"PopoutWrapper__overlay\" onClick={onClick} />\n <div vkuiClass=\"PopoutWrapper__content\">{children}</div>\n </div>\n </div>\n );\n};\n"],"file":"PopoutWrapper.js"}
@@ -98,8 +98,8 @@ export var Popper = function Popper(_ref) {
98
98
  attributes = _usePopper.attributes;
99
99
 
100
100
  var resolvedPlacement = state === null || state === void 0 ? void 0 : state.placement;
101
- var isEdgePlacement = !!resolvedPlacement && resolvedPlacement.includes("-"); // true, если поппер отрисован скраю
102
- // Если поппер рисуется скраю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до
101
+ var isEdgePlacement = !!resolvedPlacement && resolvedPlacement.includes("-"); // true, если поппер отрисован с краю
102
+ // Если поппер рисуется с краю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до
103
103
  // таргета из-за маленьких размеров последнего
104
104
 
105
105
  useIsomorphicLayoutEffect(function () {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Popper/Popper.tsx"],"names":["React","usePopper","AppRootPortal","usePlatform","getClassName","useExternRef","useIsomorphicLayoutEffect","ARROW_PADDING","ARROW_WIDTH","ARROW_HEIGHT","Popper","targetRef","children","getRef","placement","onPlacementChange","arrow","arrowClassName","sameWidth","offsetDistance","offsetSkidding","forcePortal","compStyles","style","restProps","useState","popperNode","setPopperNode","smallTargetOffsetSkidding","setSmallTargetOffsetSkidding","platform","setExternalRef","modifiers","useMemo","name","options","offset","push","padding","enabled","phase","requires","fn","state","styles","popper","width","rects","reference","effect","elements","offsetWidth","current","attributes","resolvedPlacement","isEdgePlacement","includes","placementDirection","startsWith","arrowSize","targetSize","offsetHeight","useEffect","dropdown","minWidth","scrollWidth","undefined"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { usePopper, Modifier } from \"react-popper\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { HasRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport \"./Popper.css\";\n\nexport type Placement =\n | \"auto\"\n | \"auto-start\"\n | \"auto-end\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"right-start\"\n | \"right-end\"\n | \"left-start\"\n | \"left-end\"\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\";\n\nexport interface PopperCommonProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: Placement;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n arrow?: boolean;\n arrowClassName?: string;\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (data: { placement?: Placement }) => void;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\nconst ARROW_PADDING = 8;\nconst ARROW_WIDTH = 20;\nconst ARROW_HEIGHT = 8;\n\nexport const Popper: React.FC<PopperProps> = ({\n targetRef,\n children,\n getRef,\n placement = \"bottom-start\",\n onPlacementChange,\n arrow,\n arrowClassName,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n style: compStyles,\n ...restProps\n}: PopperProps) => {\n const [popperNode, setPopperNode] = React.useState<HTMLDivElement | null>(\n null\n );\n const [smallTargetOffsetSkidding, setSmallTargetOffsetSkidding] =\n React.useState(0);\n const platform = usePlatform();\n\n const setExternalRef = useExternRef<HTMLDivElement>(getRef, setPopperNode);\n\n const modifiers = React.useMemo(() => {\n const modifiers: Array<Modifier<string>> = [\n {\n name: \"preventOverflow\",\n },\n {\n name: \"offset\",\n options: {\n offset: [\n arrow ? offsetSkidding - smallTargetOffsetSkidding : offsetSkidding,\n arrow ? offsetDistance + ARROW_HEIGHT : offsetDistance,\n ],\n },\n },\n {\n name: \"flip\",\n },\n ];\n\n if (arrow) {\n modifiers.push({\n name: \"arrow\",\n options: {\n padding: ARROW_PADDING,\n },\n });\n }\n\n if (sameWidth) {\n const sameWidth: Modifier<string> = {\n name: \"sameWidth\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: ({ state }) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n effect: ({ state }) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as HTMLElement).offsetWidth\n }px`;\n },\n };\n\n modifiers.push(sameWidth);\n }\n\n return modifiers;\n }, [\n arrow,\n sameWidth,\n smallTargetOffsetSkidding,\n offsetSkidding,\n offsetDistance,\n ]);\n\n const { styles, state, attributes } = usePopper(\n targetRef.current,\n popperNode,\n {\n placement,\n modifiers,\n }\n );\n\n const resolvedPlacement = state?.placement;\n const isEdgePlacement =\n !!resolvedPlacement && resolvedPlacement.includes(\"-\"); // true, если поппер отрисован скраю\n\n // Если поппер рисуется скраю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до\n // таргета из-за маленьких размеров последнего\n useIsomorphicLayoutEffect(() => {\n if (arrow && isEdgePlacement) {\n const placementDirection =\n resolvedPlacement?.startsWith(\"bottom\") ||\n resolvedPlacement?.startsWith(\"top\")\n ? \"vertical\"\n : \"horizontal\";\n\n const arrowSize =\n placementDirection === \"vertical\" ? ARROW_WIDTH : ARROW_HEIGHT;\n const targetSize =\n (placementDirection === \"vertical\"\n ? targetRef.current?.offsetWidth\n : targetRef.current?.offsetHeight) ?? 0;\n\n if (targetSize < arrowSize + 2 * ARROW_PADDING) {\n setSmallTargetOffsetSkidding(ARROW_PADDING + arrowSize / 2);\n }\n } else {\n setSmallTargetOffsetSkidding(0);\n }\n }, [arrow, isEdgePlacement]);\n\n React.useEffect(() => {\n if (resolvedPlacement) {\n onPlacementChange && onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <div\n {...restProps}\n {...attributes.popper}\n vkuiClass={getClassName(\"Popper\", platform)}\n ref={setExternalRef}\n style={{\n ...compStyles,\n ...styles.popper,\n minWidth: sameWidth ? targetRef.current?.scrollWidth : undefined,\n }}\n >\n {arrow && (\n <div\n {...attributes.arrow}\n vkuiClass=\"Popper__arrow\"\n data-popper-arrow={true}\n style={styles.arrow}\n >\n <svg\n vkuiClass=\"Popper__arrow-in\"\n className={arrowClassName}\n width=\"20\"\n height=\"8\"\n viewBox=\"0 0 20 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z\"\n fill=\"currentColor\"\n />\n </svg>\n </div>\n )}\n <div vkuiClass=\"Popper__content\">{children}</div>\n </div>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} vkuiClass=\"PopperPortal\">\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"file":"Popper.js"}
1
+ {"version":3,"sources":["../../../src/components/Popper/Popper.tsx"],"names":["React","usePopper","AppRootPortal","usePlatform","getClassName","useExternRef","useIsomorphicLayoutEffect","ARROW_PADDING","ARROW_WIDTH","ARROW_HEIGHT","Popper","targetRef","children","getRef","placement","onPlacementChange","arrow","arrowClassName","sameWidth","offsetDistance","offsetSkidding","forcePortal","compStyles","style","restProps","useState","popperNode","setPopperNode","smallTargetOffsetSkidding","setSmallTargetOffsetSkidding","platform","setExternalRef","modifiers","useMemo","name","options","offset","push","padding","enabled","phase","requires","fn","state","styles","popper","width","rects","reference","effect","elements","offsetWidth","current","attributes","resolvedPlacement","isEdgePlacement","includes","placementDirection","startsWith","arrowSize","targetSize","offsetHeight","useEffect","dropdown","minWidth","scrollWidth","undefined"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { usePopper, Modifier } from \"react-popper\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { HasRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport \"./Popper.css\";\n\nexport type Placement =\n | \"auto\"\n | \"auto-start\"\n | \"auto-end\"\n | \"top-start\"\n | \"top-end\"\n | \"bottom-start\"\n | \"bottom-end\"\n | \"right-start\"\n | \"right-end\"\n | \"left-start\"\n | \"left-end\"\n | \"top\"\n | \"bottom\"\n | \"left\"\n | \"right\";\n\nexport interface PopperCommonProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: Placement;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n arrow?: boolean;\n arrowClassName?: string;\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (data: { placement?: Placement }) => void;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\nconst ARROW_PADDING = 8;\nconst ARROW_WIDTH = 20;\nconst ARROW_HEIGHT = 8;\n\nexport const Popper: React.FC<PopperProps> = ({\n targetRef,\n children,\n getRef,\n placement = \"bottom-start\",\n onPlacementChange,\n arrow,\n arrowClassName,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n style: compStyles,\n ...restProps\n}: PopperProps) => {\n const [popperNode, setPopperNode] = React.useState<HTMLDivElement | null>(\n null\n );\n const [smallTargetOffsetSkidding, setSmallTargetOffsetSkidding] =\n React.useState(0);\n const platform = usePlatform();\n\n const setExternalRef = useExternRef<HTMLDivElement>(getRef, setPopperNode);\n\n const modifiers = React.useMemo(() => {\n const modifiers: Array<Modifier<string>> = [\n {\n name: \"preventOverflow\",\n },\n {\n name: \"offset\",\n options: {\n offset: [\n arrow ? offsetSkidding - smallTargetOffsetSkidding : offsetSkidding,\n arrow ? offsetDistance + ARROW_HEIGHT : offsetDistance,\n ],\n },\n },\n {\n name: \"flip\",\n },\n ];\n\n if (arrow) {\n modifiers.push({\n name: \"arrow\",\n options: {\n padding: ARROW_PADDING,\n },\n });\n }\n\n if (sameWidth) {\n const sameWidth: Modifier<string> = {\n name: \"sameWidth\",\n enabled: true,\n phase: \"beforeWrite\",\n requires: [\"computeStyles\"],\n fn: ({ state }) => {\n state.styles.popper.width = `${state.rects.reference.width}px`;\n },\n effect: ({ state }) => {\n state.elements.popper.style.width = `${\n (state.elements.reference as HTMLElement).offsetWidth\n }px`;\n },\n };\n\n modifiers.push(sameWidth);\n }\n\n return modifiers;\n }, [\n arrow,\n sameWidth,\n smallTargetOffsetSkidding,\n offsetSkidding,\n offsetDistance,\n ]);\n\n const { styles, state, attributes } = usePopper(\n targetRef.current,\n popperNode,\n {\n placement,\n modifiers,\n }\n );\n\n const resolvedPlacement = state?.placement;\n const isEdgePlacement =\n !!resolvedPlacement && resolvedPlacement.includes(\"-\"); // true, если поппер отрисован с краю\n\n // Если поппер рисуется с краю, то нужно опционально сместить его в тех случаях, когда стрелка не дотягивается до\n // таргета из-за маленьких размеров последнего\n useIsomorphicLayoutEffect(() => {\n if (arrow && isEdgePlacement) {\n const placementDirection =\n resolvedPlacement?.startsWith(\"bottom\") ||\n resolvedPlacement?.startsWith(\"top\")\n ? \"vertical\"\n : \"horizontal\";\n\n const arrowSize =\n placementDirection === \"vertical\" ? ARROW_WIDTH : ARROW_HEIGHT;\n const targetSize =\n (placementDirection === \"vertical\"\n ? targetRef.current?.offsetWidth\n : targetRef.current?.offsetHeight) ?? 0;\n\n if (targetSize < arrowSize + 2 * ARROW_PADDING) {\n setSmallTargetOffsetSkidding(ARROW_PADDING + arrowSize / 2);\n }\n } else {\n setSmallTargetOffsetSkidding(0);\n }\n }, [arrow, isEdgePlacement]);\n\n React.useEffect(() => {\n if (resolvedPlacement) {\n onPlacementChange && onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <div\n {...restProps}\n {...attributes.popper}\n vkuiClass={getClassName(\"Popper\", platform)}\n ref={setExternalRef}\n style={{\n ...compStyles,\n ...styles.popper,\n minWidth: sameWidth ? targetRef.current?.scrollWidth : undefined,\n }}\n >\n {arrow && (\n <div\n {...attributes.arrow}\n vkuiClass=\"Popper__arrow\"\n data-popper-arrow={true}\n style={styles.arrow}\n >\n <svg\n vkuiClass=\"Popper__arrow-in\"\n className={arrowClassName}\n width=\"20\"\n height=\"8\"\n viewBox=\"0 0 20 8\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M10 0C13 0 15.9999 8 20 8H0C3.9749 8 7 0 10 0Z\"\n fill=\"currentColor\"\n />\n </svg>\n </div>\n )}\n <div vkuiClass=\"Popper__content\">{children}</div>\n </div>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} vkuiClass=\"PopperPortal\">\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"file":"Popper.js"}
@@ -7,10 +7,10 @@ var _excluded = ["bannerData", "onClose"];
7
7
  import { createScopedElement } from "../../lib/jsxRuntime";
8
8
  import * as React from "react";
9
9
  import { Icon24Dismiss } from "@vkontakte/icons";
10
- import Button from "../Button/Button";
10
+ import { Button } from "../Button/Button";
11
11
  import SimpleCell from "../SimpleCell/SimpleCell";
12
12
  import Avatar from "../Avatar/Avatar";
13
- import Caption from "../Typography/Caption/Caption";
13
+ import { Caption } from "../Typography/Caption/Caption";
14
14
  import { usePlatform } from "../../hooks/usePlatform";
15
15
  import { getClassName } from "../../helpers/getClassName";
16
16
  import { warnOnce } from "../../lib/warnOnce";
@@ -53,12 +53,8 @@ var PromoBanner = function PromoBanner(props) {
53
53
  }, restProps), createScopedElement("div", {
54
54
  vkuiClass: "PromoBanner__head"
55
55
  }, createScopedElement(Caption, {
56
- weight: "regular",
57
- level: "1",
58
56
  vkuiClass: "PromoBanner__label"
59
57
  }, bannerData.advertisingLabel || "Advertisement"), ageRestrictions != null && createScopedElement(Caption, {
60
- weight: "regular",
61
- level: "1",
62
58
  vkuiClass: "PromoBanner__age"
63
59
  }, ageRestrictions, "+"), !props.isCloseButtonHidden && createScopedElement("div", {
64
60
  vkuiClass: "PromoBanner__close",
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PromoBanner/PromoBanner.tsx"],"names":["React","Icon24Dismiss","Button","SimpleCell","Avatar","Caption","usePlatform","getClassName","warnOnce","warn","PromoBanner","props","platform","bannerData","onClose","restProps","ageRestrictions","parseInt","ageRestriction","process","env","NODE_ENV","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","advertisingLabel","isCloseButtonHidden","trackingLink","iconLink","title","ctaText","domain","length"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Icon24Dismiss } from \"@vkontakte/icons\";\nimport Button from \"../Button/Button\";\nimport SimpleCell from \"../SimpleCell/SimpleCell\";\nimport Avatar from \"../Avatar/Avatar\";\nimport Caption from \"../Typography/Caption/Caption\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./PromoBanner.css\";\n\ntype StatsType =\n | \"playbackStarted\" // Начало показа\n | \"click\"; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string; // eslint-disable-line camelcase\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n /** @deprecated */\n ageRestriction?: number;\n};\n\nexport interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\nconst warn = warnOnce(\"PromoBanner\");\nconst PromoBanner = (props: PromoBannerProps) => {\n const platform = usePlatform();\n const { bannerData = {}, onClose, ...restProps } = props;\n\n const ageRestrictions =\n bannerData.ageRestrictions != null\n ? parseInt(bannerData.ageRestrictions)\n : bannerData.ageRestriction;\n\n if (bannerData.ageRestriction && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство bannerData.ageRestriction устарело и будет удалено в 5.0.0. Используйте bannerData.ageRestrictions\"\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState(\"\");\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce(\n (acc, item) => ({ ...acc, [item.type]: item.url }),\n {}\n )\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics]\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || \"\"),\n [statsPixels.click]\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <div vkuiClass={getClassName(\"PromoBanner\", platform)} {...restProps}>\n <div vkuiClass=\"PromoBanner__head\">\n <Caption weight=\"regular\" level=\"1\" vkuiClass=\"PromoBanner__label\">\n {bannerData.advertisingLabel || \"Advertisement\"}\n </Caption>\n {ageRestrictions != null && (\n <Caption weight=\"regular\" level=\"1\" vkuiClass=\"PromoBanner__age\">\n {ageRestrictions}+\n </Caption>\n )}\n\n {!props.isCloseButtonHidden && (\n <div vkuiClass=\"PromoBanner__close\" onClick={props.onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n <Avatar\n mode=\"image\"\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n />\n }\n after={<Button mode=\"outline\">{bannerData.ctaText}</Button>}\n description={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div vkuiClass=\"PromoBanner__pixels\">\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default PromoBanner;\n"],"file":"PromoBanner.js"}
1
+ {"version":3,"sources":["../../../src/components/PromoBanner/PromoBanner.tsx"],"names":["React","Icon24Dismiss","Button","SimpleCell","Avatar","Caption","usePlatform","getClassName","warnOnce","warn","PromoBanner","props","platform","bannerData","onClose","restProps","ageRestrictions","parseInt","ageRestriction","process","env","NODE_ENV","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","advertisingLabel","isCloseButtonHidden","trackingLink","iconLink","title","ctaText","domain","length"],"mappings":";;;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,aAAT,QAA8B,kBAA9B;AACA,SAASC,MAAT;AACA,OAAOC,UAAP;AACA,OAAOC,MAAP;AACA,SAASC,OAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,QAAT;AAyCA,IAAMC,IAAI,GAAGD,QAAQ,CAAC,aAAD,CAArB;;AACA,IAAME,WAAW,GAAG,SAAdA,WAAc,CAACC,KAAD,EAA6B;AAC/C,MAAMC,QAAQ,GAAGN,WAAW,EAA5B;;AACA,0BAAmDK,KAAnD,CAAQE,UAAR;AAAA,MAAQA,UAAR,kCAAqB,EAArB;AAAA,MAAyBC,OAAzB,GAAmDH,KAAnD,CAAyBG,OAAzB;AAAA,MAAqCC,SAArC,4BAAmDJ,KAAnD;;AAEA,MAAMK,eAAe,GACnBH,UAAU,CAACG,eAAX,IAA8B,IAA9B,GACIC,QAAQ,CAACJ,UAAU,CAACG,eAAZ,CADZ,GAEIH,UAAU,CAACK,cAHjB;;AAKA,MAAIL,UAAU,CAACK,cAAX,IAA6BC,OAAO,CAACC,GAAR,CAAYC,QAAZ,KAAyB,aAA1D,EAAyE;AACvEZ,IAAAA,IAAI,CACF,6GADE,CAAJ;AAGD;;AAED,wBAAwCT,KAAK,CAACsB,QAAN,CAAe,EAAf,CAAxC;AAAA;AAAA,MAAOC,YAAP;AAAA,MAAqBC,eAArB;;AAEA,MAAMC,WAAW,GAAGzB,KAAK,CAAC0B,OAAN,CAClB;AAAA,WACGb,UAAU,CAACc,UAAX,GACGd,UAAU,CAACc,UAAX,CAAsBC,MAAtB,CACE,UAACC,GAAD,EAAMC,IAAN;AAAA,6CAAqBD,GAArB,2BAA2BC,IAAI,CAACC,IAAhC,EAAuCD,IAAI,CAACE,GAA5C;AAAA,KADF,EAEE,EAFF,CADH,GAKG,EANN;AAAA,GADkB,EAQlB,CAACnB,UAAU,CAACc,UAAZ,CARkB,CAApB;AAWA,MAAMM,OAAO,GAAGjC,KAAK,CAACkC,WAAN,CACd;AAAA,WAAMV,eAAe,CAACC,WAAW,CAACU,KAAZ,IAAqB,EAAtB,CAArB;AAAA,GADc,EAEd,CAACV,WAAW,CAACU,KAAb,CAFc,CAAhB;AAKAnC,EAAAA,KAAK,CAACoC,SAAN,CAAgB,YAAM;AACpB,QAAIX,WAAW,CAACY,eAAhB,EAAiC;AAC/Bb,MAAAA,eAAe,CAACC,WAAW,CAACY,eAAb,CAAf;AACD;AACF,GAJD,EAIG,CAACZ,WAAW,CAACY,eAAb,CAJH;AAMA,SACE;AAAK,IAAA,SAAS,EAAE9B,YAAY,CAAC,aAAD,EAAgBK,QAAhB;AAA5B,KAA2DG,SAA3D,GACE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KACGF,UAAU,CAACyB,gBAAX,IAA+B,eADlC,CADF,EAIGtB,eAAe,IAAI,IAAnB,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAuCA,eAAvC,MALJ,EAQG,CAACL,KAAK,CAAC4B,mBAAP,IACC;AAAK,IAAA,SAAS,EAAC,oBAAf;AAAoC,IAAA,OAAO,EAAE5B,KAAK,CAACG;AAAnD,KACE,oBAAC,aAAD,OADF,CATJ,CADF,EAeE,oBAAC,UAAD;AACE,IAAA,IAAI,EAAED,UAAU,CAAC2B,YADnB;AAEE,IAAA,OAAO,EAAEP,OAFX;AAGE,IAAA,GAAG,EAAC,8BAHN;AAIE,IAAA,MAAM,EAAC,QAJT;AAKE,IAAA,MAAM,EACJ,oBAAC,MAAD;AACE,MAAA,IAAI,EAAC,OADP;AAEE,MAAA,IAAI,EAAE,EAFR;AAGE,MAAA,GAAG,EAAEpB,UAAU,CAAC4B,QAHlB;AAIE,MAAA,GAAG,EAAE5B,UAAU,CAAC6B;AAJlB,MANJ;AAaE,IAAA,KAAK,EAAE,oBAAC,MAAD;AAAQ,MAAA,IAAI,EAAC;AAAb,OAAwB7B,UAAU,CAAC8B,OAAnC,CAbT;AAcE,IAAA,WAAW,EAAE9B,UAAU,CAAC+B;AAd1B,KAgBG/B,UAAU,CAAC6B,KAhBd,CAfF,EAkCGnB,YAAY,CAACsB,MAAb,GAAsB,CAAtB,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAK,IAAA,GAAG,EAAEtB,YAAV;AAAwB,IAAA,GAAG,EAAC;AAA5B,IADF,CAnCJ,CADF;AA0CD,CAjFD,C,CAmFA;;;AACA,eAAeb,WAAf","sourcesContent":["import * as React from \"react\";\nimport { Icon24Dismiss } from \"@vkontakte/icons\";\nimport { Button } from \"../Button/Button\";\nimport SimpleCell from \"../SimpleCell/SimpleCell\";\nimport Avatar from \"../Avatar/Avatar\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./PromoBanner.css\";\n\ntype StatsType =\n | \"playbackStarted\" // Начало показа\n | \"click\"; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string; // eslint-disable-line camelcase\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n /** @deprecated */\n ageRestriction?: number;\n};\n\nexport interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\nconst warn = warnOnce(\"PromoBanner\");\nconst PromoBanner = (props: PromoBannerProps) => {\n const platform = usePlatform();\n const { bannerData = {}, onClose, ...restProps } = props;\n\n const ageRestrictions =\n bannerData.ageRestrictions != null\n ? parseInt(bannerData.ageRestrictions)\n : bannerData.ageRestriction;\n\n if (bannerData.ageRestriction && process.env.NODE_ENV === \"development\") {\n warn(\n \"Свойство bannerData.ageRestriction устарело и будет удалено в 5.0.0. Используйте bannerData.ageRestrictions\"\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState(\"\");\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce(\n (acc, item) => ({ ...acc, [item.type]: item.url }),\n {}\n )\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics]\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || \"\"),\n [statsPixels.click]\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <div vkuiClass={getClassName(\"PromoBanner\", platform)} {...restProps}>\n <div vkuiClass=\"PromoBanner__head\">\n <Caption vkuiClass=\"PromoBanner__label\">\n {bannerData.advertisingLabel || \"Advertisement\"}\n </Caption>\n {ageRestrictions != null && (\n <Caption vkuiClass=\"PromoBanner__age\">{ageRestrictions}+</Caption>\n )}\n\n {!props.isCloseButtonHidden && (\n <div vkuiClass=\"PromoBanner__close\" onClick={props.onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n <Avatar\n mode=\"image\"\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n />\n }\n after={<Button mode=\"outline\">{bannerData.ctaText}</Button>}\n description={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div vkuiClass=\"PromoBanner__pixels\">\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default PromoBanner;\n"],"file":"PromoBanner.js"}
@@ -281,7 +281,8 @@ var PullToRefresh = /*#__PURE__*/function (_React$PureComponent) {
281
281
  }, createScopedElement(Touch, _extends({}, restProps, {
282
282
  onStart: this.onTouchStart,
283
283
  onMove: this.onTouchMove,
284
- onEnd: this.onTouchEnd,
284
+ onEnd: this.onTouchEnd // eslint-disable-next-line vkui/no-object-expression-in-arguments
285
+ ,
285
286
  vkuiClass: classNames(getClassName("PullToRefresh", platform), {
286
287
  "PullToRefresh--watching": watching,
287
288
  "PullToRefresh--refreshing": refreshing
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PullToRefresh/PullToRefresh.tsx"],"names":["React","Touch","TouchRootContext","FixedLayout","classNames","IOS","ANDROID","VKCOM","getClassName","PullToRefreshSpinner","withPlatform","canUseDOM","withDOM","runTapticImpactOccurred","withContext","ScrollContext","cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","PullToRefresh","props","undefined","e","state","refreshing","setState","touchDown","isY","shiftY","params","start","max","pageYOffset","scroll","getScroll","y","watching","positionMultiplier","shift","Math","touchY","currentY","min","maxY","progress","abs","spinnerY","spinnerProgress","canRefresh","contentShift","platform","runRefreshing","resetRefreshingState","contentRef","createRef","document","addEventListener","onWindowTouchMove","passive","removeEventListener","waitFetchingTimeout","clearTimeout","prevProps","prevState","isFetching","onRefreshingFinish","onRefresh","setTimeout","children","window","restProps","spinnerTransform","contentTransform","onTouchStart","onTouchMove","onTouchEnd","transform","WebkitTransform","opacity","PureComponent"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchProps, TouchEvent } from \"../Touch/Touch\";\nimport TouchRootContext from \"../Touch/TouchContext\";\nimport FixedLayout from \"../FixedLayout/FixedLayout\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport PullToRefreshSpinner from \"./PullToRefreshSpinner\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { AnyFunction, HasPlatform } from \"../../types\";\nimport { canUseDOM, DOMProps, withDOM } from \"../../lib/dom\";\nimport { runTapticImpactOccurred } from \"../../lib/taptic\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport \"./PullToRefresh.css\";\n\nexport interface PullToRefreshProps extends TouchProps, HasPlatform {\n /**\n * Будет вызвана для обновления контента\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n}\n\nexport interface PullToRefreshState {\n watching: boolean;\n refreshing: boolean;\n canRefresh: boolean;\n\n touchDown: boolean;\n\n touchY: number;\n spinnerY: PullToRefreshParams[\"start\"];\n spinnerProgress: number;\n contentShift: number;\n}\n\nexport interface PullToRefreshParams {\n start: number;\n max: number;\n maxY: number;\n refreshing: number;\n positionMultiplier: number;\n}\n\nexport type TouchEventHandler = (event: TouchEvent) => void;\n\nfunction cancelEvent(event: any) {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault && event.cancelable) {\n event.preventDefault();\n }\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n return false;\n}\n\nclass PullToRefresh extends React.PureComponent<\n PullToRefreshProps & DOMProps,\n PullToRefreshState\n> {\n constructor(props: PullToRefreshProps) {\n super(props);\n\n this.params = {\n start: props.platform === ANDROID || props.platform === VKCOM ? -45 : -10,\n max: props.platform === ANDROID || props.platform === VKCOM ? 80 : 50,\n maxY: props.platform === ANDROID || props.platform === VKCOM ? 80 : 400,\n refreshing:\n props.platform === ANDROID || props.platform === VKCOM ? 50 : 36,\n\n positionMultiplier:\n props.platform === ANDROID || props.platform === VKCOM ? 1 : 0.21,\n };\n\n this.state = {\n watching: false,\n refreshing: false,\n canRefresh: false,\n\n touchDown: false,\n\n touchY: 0,\n spinnerY: this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n };\n\n this.contentRef = React.createRef();\n }\n\n params: PullToRefreshParams;\n contentRef: React.RefObject<HTMLDivElement>;\n waitFetchingTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n componentDidMount() {\n if (canUseDOM) {\n this.document!.addEventListener(\"touchmove\", this.onWindowTouchMove, {\n // @ts-ignore\n cancelable: true,\n passive: false,\n });\n }\n }\n\n componentWillUnmount() {\n // Здесь нужен последний аргумент с такими же параметрами, потому что\n // некоторые браузеры на странных вендорах типа Meizu не удаляют обработчик.\n // https://github.com/VKCOM/VKUI/issues/444\n if (canUseDOM) {\n this.document!.removeEventListener(\"touchmove\", this.onWindowTouchMove, {\n // @ts-ignore\n cancelable: true,\n passive: false,\n });\n }\n if (this.waitFetchingTimeout) {\n clearTimeout(this.waitFetchingTimeout);\n }\n }\n\n componentDidUpdate(\n prevProps: PullToRefreshProps,\n prevState: PullToRefreshState\n ) {\n if (prevProps.isFetching && !this.props.isFetching) {\n this.onRefreshingFinish();\n }\n if (\n !prevProps.isFetching &&\n this.props.isFetching &&\n this.waitFetchingTimeout\n ) {\n clearTimeout(this.waitFetchingTimeout);\n }\n\n if (prevState.touchDown && !this.state.touchDown) {\n const { refreshing, canRefresh } = this.state;\n if (!refreshing && canRefresh) {\n this.runRefreshing();\n } else if (refreshing && !this.props.isFetching) {\n // only iOS can start refresh before gesture end\n this.resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n this.setState({\n spinnerY: refreshing ? this.params.refreshing : this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n });\n }\n }\n }\n\n onTouchStart: TouchEventHandler = (e: TouchEvent) => {\n if (this.state.refreshing) {\n cancelEvent(e);\n }\n this.setState({ touchDown: true });\n };\n\n onWindowTouchMove: EventListener = (event: Event) => {\n if (this.state.refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n onTouchMove: TouchEventHandler = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = this.params;\n const pageYOffset = this.props.scroll?.getScroll().y;\n\n const { refreshing, watching, touchDown } = this.state;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier } = this.params;\n\n const shift = Math.max(0, shiftY - this.state.touchY);\n\n const currentY = Math.max(\n start,\n Math.min(this.params.maxY, start + shift * positionMultiplier)\n );\n const progress =\n currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n this.setState({\n spinnerY: currentY,\n spinnerProgress: Math.min(80, Math.max(0, progress)),\n canRefresh: progress > 80,\n contentShift: (currentY + 10) * 2.3,\n });\n\n if (progress > 85 && !refreshing && this.props.platform === IOS) {\n this.runRefreshing();\n }\n } else if (\n isY &&\n pageYOffset === 0 &&\n shiftY > 0 &&\n !refreshing &&\n touchDown\n ) {\n cancelEvent(e);\n\n this.setState({\n watching: true,\n touchY: shiftY,\n spinnerY: start,\n spinnerProgress: 0,\n });\n }\n };\n\n onTouchEnd = () => {\n this.setState({\n watching: false,\n touchDown: false,\n });\n };\n\n runRefreshing() {\n if (!this.state.refreshing && this.props.onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n this.waitFetchingTimeout = setTimeout(this.onRefreshingFinish, 1000);\n this.setState({\n refreshing: true,\n spinnerY:\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? this.params.refreshing\n : this.state.spinnerY,\n });\n\n this.props.onRefresh();\n runTapticImpactOccurred(\"light\");\n }\n }\n\n onRefreshingFinish: VoidFunction = () => {\n if (!this.state.touchDown) {\n this.resetRefreshingState();\n }\n };\n\n resetRefreshingState() {\n this.setState({\n watching: false,\n canRefresh: false,\n refreshing: false,\n spinnerY: this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n });\n }\n\n render() {\n const {\n children,\n onRefresh,\n isFetching,\n platform,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n watching,\n refreshing,\n spinnerY,\n spinnerProgress,\n canRefresh,\n touchDown,\n contentShift,\n } = this.state;\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = \"\";\n\n if (platform === IOS && refreshing && !touchDown) {\n contentTransform = \"translate3d(0, 100px, 0)\";\n } else if (platform === IOS && (contentShift || refreshing)) {\n contentTransform = `translate3d(0, ${contentShift}px, 0)`;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <Touch\n {...restProps}\n onStart={this.onTouchStart}\n onMove={this.onTouchMove}\n onEnd={this.onTouchEnd}\n vkuiClass={classNames(getClassName(\"PullToRefresh\", platform), {\n \"PullToRefresh--watching\": watching,\n \"PullToRefresh--refreshing\": refreshing,\n })}\n >\n <FixedLayout vkuiClass=\"PullToRefresh__controls\">\n <PullToRefreshSpinner\n style={{\n transform: spinnerTransform,\n WebkitTransform: spinnerTransform,\n opacity: watching || refreshing || canRefresh ? 1 : 0,\n }}\n on={refreshing}\n progress={refreshing ? undefined : spinnerProgress}\n />\n </FixedLayout>\n\n <div\n vkuiClass=\"PullToRefresh__content\"\n ref={this.contentRef}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n }\n}\n\n// eslint-disable-next-line import/no-default-export\nexport default withContext(\n withPlatform(withDOM<PullToRefreshProps>(PullToRefresh)),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"PullToRefresh.js"}
1
+ {"version":3,"sources":["../../../src/components/PullToRefresh/PullToRefresh.tsx"],"names":["React","Touch","TouchRootContext","FixedLayout","classNames","IOS","ANDROID","VKCOM","getClassName","PullToRefreshSpinner","withPlatform","canUseDOM","withDOM","runTapticImpactOccurred","withContext","ScrollContext","cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","PullToRefresh","props","undefined","e","state","refreshing","setState","touchDown","isY","shiftY","params","start","max","pageYOffset","scroll","getScroll","y","watching","positionMultiplier","shift","Math","touchY","currentY","min","maxY","progress","abs","spinnerY","spinnerProgress","canRefresh","contentShift","platform","runRefreshing","resetRefreshingState","contentRef","createRef","document","addEventListener","onWindowTouchMove","passive","removeEventListener","waitFetchingTimeout","clearTimeout","prevProps","prevState","isFetching","onRefreshingFinish","onRefresh","setTimeout","children","window","restProps","spinnerTransform","contentTransform","onTouchStart","onTouchMove","onTouchEnd","transform","WebkitTransform","opacity","PureComponent"],"mappings":";;;;;;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,KAAT;AACA,OAAOC,gBAAP;AACA,OAAOC,WAAP;AACA,SAASC,UAAT;AACA,SAASC,GAAT,EAAcC,OAAd,EAAuBC,KAAvB;AACA,SAASC,YAAT;AACA,OAAOC,oBAAP;AACA,SAASC,YAAT;AAEA,SAASC,SAAT,EAA8BC,OAA9B;AACA,SAASC,uBAAT;AACA,SAASC,WAAT;AACA,SACEC,aADF;;AA0CA,SAASC,WAAT,CAAqBC,KAArB,EAAiC;AAC/B,MAAI,CAACA,KAAL,EAAY;AACV,WAAO,KAAP;AACD;;AACD,SAAOA,KAAK,CAACC,aAAb,EAA4B;AAC1BD,IAAAA,KAAK,GAAGA,KAAK,CAACC,aAAd;AACD;;AACD,MAAID,KAAK,CAACE,cAAN,IAAwBF,KAAK,CAACG,UAAlC,EAA8C;AAC5CH,IAAAA,KAAK,CAACE,cAAN;AACD;;AACD,MAAIF,KAAK,CAACI,eAAV,EAA2B;AACzBJ,IAAAA,KAAK,CAACI,eAAN;AACD;;AACD,SAAO,KAAP;AACD;;IAEKC,a;;;;;AAIJ,yBAAYC,KAAZ,EAAuC;AAAA;;AAAA;;AACrC,8BAAMA,KAAN;;AADqC;;AAAA;;AAAA,0EAgC0BC,SAhC1B;;AAAA,mEAkGL,UAACC,CAAD,EAAmB;AACnD,UAAI,MAAKC,KAAL,CAAWC,UAAf,EAA2B;AACzBX,QAAAA,WAAW,CAACS,CAAD,CAAX;AACD;;AACD,YAAKG,QAAL,CAAc;AAAEC,QAAAA,SAAS,EAAE;AAAb,OAAd;AACD,KAvGsC;;AAAA,wEAyGJ,UAACZ,KAAD,EAAkB;AACnD,UAAI,MAAKS,KAAL,CAAWC,UAAf,EAA2B;AACzBV,QAAAA,KAAK,CAACE,cAAN;AACAF,QAAAA,KAAK,CAACI,eAAN;AACD;AACF,KA9GsC;;AAAA,kEAgHN,UAACI,CAAD,EAAmB;AAAA;;AAClD,UAAQK,GAAR,GAAwBL,CAAxB,CAAQK,GAAR;AAAA,UAAaC,MAAb,GAAwBN,CAAxB,CAAaM,MAAb;AACA,yBAAuB,MAAKC,MAA5B;AAAA,UAAQC,KAAR,gBAAQA,KAAR;AAAA,UAAeC,GAAf,gBAAeA,GAAf;AACA,UAAMC,WAAW,yBAAG,MAAKZ,KAAL,CAAWa,MAAd,uDAAG,mBAAmBC,SAAnB,GAA+BC,CAAnD;AAEA,wBAA4C,MAAKZ,KAAjD;AAAA,UAAQC,UAAR,eAAQA,UAAR;AAAA,UAAoBY,QAApB,eAAoBA,QAApB;AAAA,UAA8BV,SAA9B,eAA8BA,SAA9B;;AAEA,UAAIU,QAAQ,IAAIV,SAAhB,EAA2B;AACzBb,QAAAA,WAAW,CAACS,CAAD,CAAX;AAEA,YAAQe,kBAAR,GAA+B,MAAKR,MAApC,CAAQQ,kBAAR;AAEA,YAAMC,KAAK,GAAGC,IAAI,CAACR,GAAL,CAAS,CAAT,EAAYH,MAAM,GAAG,MAAKL,KAAL,CAAWiB,MAAhC,CAAd;AAEA,YAAMC,QAAQ,GAAGF,IAAI,CAACR,GAAL,CACfD,KADe,EAEfS,IAAI,CAACG,GAAL,CAAS,MAAKb,MAAL,CAAYc,IAArB,EAA2Bb,KAAK,GAAGQ,KAAK,GAAGD,kBAA3C,CAFe,CAAjB;AAIA,YAAMO,QAAQ,GACZH,QAAQ,GAAG,CAAC,EAAZ,GAAiBF,IAAI,CAACM,GAAL,CAAS,CAACJ,QAAQ,GAAG,EAAZ,IAAkBV,GAA3B,IAAkC,EAAnD,GAAwD,CAD1D;;AAGA,cAAKN,QAAL,CAAc;AACZqB,UAAAA,QAAQ,EAAEL,QADE;AAEZM,UAAAA,eAAe,EAAER,IAAI,CAACG,GAAL,CAAS,EAAT,EAAaH,IAAI,CAACR,GAAL,CAAS,CAAT,EAAYa,QAAZ,CAAb,CAFL;AAGZI,UAAAA,UAAU,EAAEJ,QAAQ,GAAG,EAHX;AAIZK,UAAAA,YAAY,EAAE,CAACR,QAAQ,GAAG,EAAZ,IAAkB;AAJpB,SAAd;;AAOA,YAAIG,QAAQ,GAAG,EAAX,IAAiB,CAACpB,UAAlB,IAAgC,MAAKJ,KAAL,CAAW8B,QAAX,KAAwBhD,GAA5D,EAAiE;AAC/D,gBAAKiD,aAAL;AACD;AACF,OAxBD,MAwBO,IACLxB,GAAG,IACHK,WAAW,KAAK,CADhB,IAEAJ,MAAM,GAAG,CAFT,IAGA,CAACJ,UAHD,IAIAE,SALK,EAML;AACAb,QAAAA,WAAW,CAACS,CAAD,CAAX;;AAEA,cAAKG,QAAL,CAAc;AACZW,UAAAA,QAAQ,EAAE,IADE;AAEZI,UAAAA,MAAM,EAAEZ,MAFI;AAGZkB,UAAAA,QAAQ,EAAEhB,KAHE;AAIZiB,UAAAA,eAAe,EAAE;AAJL,SAAd;AAMD;AACF,KA/JsC;;AAAA,iEAiK1B,YAAM;AACjB,YAAKtB,QAAL,CAAc;AACZW,QAAAA,QAAQ,EAAE,KADE;AAEZV,QAAAA,SAAS,EAAE;AAFC,OAAd;AAID,KAtKsC;;AAAA,yEAyLJ,YAAM;AACvC,UAAI,CAAC,MAAKH,KAAL,CAAWG,SAAhB,EAA2B;AACzB,cAAK0B,oBAAL;AACD;AACF,KA7LsC;;AAGrC,UAAKvB,MAAL,GAAc;AACZC,MAAAA,KAAK,EAAEV,KAAK,CAAC8B,QAAN,KAAmB/C,OAAnB,IAA8BiB,KAAK,CAAC8B,QAAN,KAAmB9C,KAAjD,GAAyD,CAAC,EAA1D,GAA+D,CAAC,EAD3D;AAEZ2B,MAAAA,GAAG,EAAEX,KAAK,CAAC8B,QAAN,KAAmB/C,OAAnB,IAA8BiB,KAAK,CAAC8B,QAAN,KAAmB9C,KAAjD,GAAyD,EAAzD,GAA8D,EAFvD;AAGZuC,MAAAA,IAAI,EAAEvB,KAAK,CAAC8B,QAAN,KAAmB/C,OAAnB,IAA8BiB,KAAK,CAAC8B,QAAN,KAAmB9C,KAAjD,GAAyD,EAAzD,GAA8D,GAHxD;AAIZoB,MAAAA,UAAU,EACRJ,KAAK,CAAC8B,QAAN,KAAmB/C,OAAnB,IAA8BiB,KAAK,CAAC8B,QAAN,KAAmB9C,KAAjD,GAAyD,EAAzD,GAA8D,EALpD;AAOZiC,MAAAA,kBAAkB,EAChBjB,KAAK,CAAC8B,QAAN,KAAmB/C,OAAnB,IAA8BiB,KAAK,CAAC8B,QAAN,KAAmB9C,KAAjD,GAAyD,CAAzD,GAA6D;AARnD,KAAd;AAWA,UAAKmB,KAAL,GAAa;AACXa,MAAAA,QAAQ,EAAE,KADC;AAEXZ,MAAAA,UAAU,EAAE,KAFD;AAGXwB,MAAAA,UAAU,EAAE,KAHD;AAKXtB,MAAAA,SAAS,EAAE,KALA;AAOXc,MAAAA,MAAM,EAAE,CAPG;AAQXM,MAAAA,QAAQ,EAAE,MAAKjB,MAAL,CAAYC,KARX;AASXiB,MAAAA,eAAe,EAAE,CATN;AAUXE,MAAAA,YAAY,EAAE;AAVH,KAAb;AAaA,UAAKI,UAAL,gBAAkBxD,KAAK,CAACyD,SAAN,EAAlB;AA3BqC;AA4BtC;;;;SAMD,eAAe;AACb,aAAO,KAAKlC,KAAL,CAAWmC,QAAlB;AACD;;;WAED,6BAAoB;AAClB,UAAI/C,SAAJ,EAAe;AACb,aAAK+C,QAAL,CAAeC,gBAAf,CAAgC,WAAhC,EAA6C,KAAKC,iBAAlD,EAAqE;AACnE;AACAxC,UAAAA,UAAU,EAAE,IAFuD;AAGnEyC,UAAAA,OAAO,EAAE;AAH0D,SAArE;AAKD;AACF;;;WAED,gCAAuB;AACrB;AACA;AACA;AACA,UAAIlD,SAAJ,EAAe;AACb,aAAK+C,QAAL,CAAeI,mBAAf,CAAmC,WAAnC,EAAgD,KAAKF,iBAArD,EAAwE;AACtE;AACAxC,UAAAA,UAAU,EAAE,IAF0D;AAGtEyC,UAAAA,OAAO,EAAE;AAH6D,SAAxE;AAKD;;AACD,UAAI,KAAKE,mBAAT,EAA8B;AAC5BC,QAAAA,YAAY,CAAC,KAAKD,mBAAN,CAAZ;AACD;AACF;;;WAED,4BACEE,SADF,EAEEC,SAFF,EAGE;AACA,UAAID,SAAS,CAACE,UAAV,IAAwB,CAAC,KAAK5C,KAAL,CAAW4C,UAAxC,EAAoD;AAClD,aAAKC,kBAAL;AACD;;AACD,UACE,CAACH,SAAS,CAACE,UAAX,IACA,KAAK5C,KAAL,CAAW4C,UADX,IAEA,KAAKJ,mBAHP,EAIE;AACAC,QAAAA,YAAY,CAAC,KAAKD,mBAAN,CAAZ;AACD;;AAED,UAAIG,SAAS,CAACrC,SAAV,IAAuB,CAAC,KAAKH,KAAL,CAAWG,SAAvC,EAAkD;AAChD,2BAAmC,KAAKH,KAAxC;AAAA,YAAQC,UAAR,gBAAQA,UAAR;AAAA,YAAoBwB,UAApB,gBAAoBA,UAApB;;AACA,YAAI,CAACxB,UAAD,IAAewB,UAAnB,EAA+B;AAC7B,eAAKG,aAAL;AACD,SAFD,MAEO,IAAI3B,UAAU,IAAI,CAAC,KAAKJ,KAAL,CAAW4C,UAA9B,EAA0C;AAC/C;AACA,eAAKZ,oBAAL;AACD,SAHM,MAGA;AACL;AACA;AACA,eAAK3B,QAAL,CAAc;AACZqB,YAAAA,QAAQ,EAAEtB,UAAU,GAAG,KAAKK,MAAL,CAAYL,UAAf,GAA4B,KAAKK,MAAL,CAAYC,KADhD;AAEZiB,YAAAA,eAAe,EAAE,CAFL;AAGZE,YAAAA,YAAY,EAAE;AAHF,WAAd;AAKD;AACF;AACF;;;WAwED,yBAAgB;AACd,UAAI,CAAC,KAAK1B,KAAL,CAAWC,UAAZ,IAA0B,KAAKJ,KAAL,CAAW8C,SAAzC,EAAoD;AAClD;AACA,aAAKN,mBAAL,GAA2BO,UAAU,CAAC,KAAKF,kBAAN,EAA0B,IAA1B,CAArC;AACA,aAAKxC,QAAL,CAAc;AACZD,UAAAA,UAAU,EAAE,IADA;AAEZsB,UAAAA,QAAQ,EACN,KAAK1B,KAAL,CAAW8B,QAAX,KAAwB/C,OAAxB,IAAmC,KAAKiB,KAAL,CAAW8B,QAAX,KAAwB9C,KAA3D,GACI,KAAKyB,MAAL,CAAYL,UADhB,GAEI,KAAKD,KAAL,CAAWuB;AALL,SAAd;AAQA,aAAK1B,KAAL,CAAW8C,SAAX;AACAxD,QAAAA,uBAAuB,CAAC,OAAD,CAAvB;AACD;AACF;;;WAQD,gCAAuB;AACrB,WAAKe,QAAL,CAAc;AACZW,QAAAA,QAAQ,EAAE,KADE;AAEZY,QAAAA,UAAU,EAAE,KAFA;AAGZxB,QAAAA,UAAU,EAAE,KAHA;AAIZsB,QAAAA,QAAQ,EAAE,KAAKjB,MAAL,CAAYC,KAJV;AAKZiB,QAAAA,eAAe,EAAE,CALL;AAMZE,QAAAA,YAAY,EAAE;AANF,OAAd;AAQD;;;WAED,kBAAS;AACP,wBASI,KAAK7B,KATT;AAAA,UACEgD,QADF,eACEA,QADF;AAAA,UAEEF,SAFF,eAEEA,SAFF;AAAA,UAGEF,UAHF,eAGEA,UAHF;AAAA,UAIEd,QAJF,eAIEA,QAJF;AAAA,UAKEmB,MALF,eAKEA,MALF;AAAA,UAMEd,QANF,eAMEA,QANF;AAAA,UAOEtB,MAPF,eAOEA,MAPF;AAAA,UAQKqC,SARL;;AAUA,yBAQI,KAAK/C,KART;AAAA,UACEa,QADF,gBACEA,QADF;AAAA,UAEEZ,UAFF,gBAEEA,UAFF;AAAA,UAGEsB,QAHF,gBAGEA,QAHF;AAAA,UAIEC,eAJF,gBAIEA,eAJF;AAAA,UAKEC,UALF,gBAKEA,UALF;AAAA,UAMEtB,SANF,gBAMEA,SANF;AAAA,UAOEuB,YAPF,gBAOEA,YAPF;AAUA,UAAMsB,gBAAgB,4BAAqBzB,QAArB,WAAtB;AACA,UAAI0B,gBAAgB,GAAG,EAAvB;;AAEA,UAAItB,QAAQ,KAAKhD,GAAb,IAAoBsB,UAApB,IAAkC,CAACE,SAAvC,EAAkD;AAChD8C,QAAAA,gBAAgB,GAAG,0BAAnB;AACD,OAFD,MAEO,IAAItB,QAAQ,KAAKhD,GAAb,KAAqB+C,YAAY,IAAIzB,UAArC,CAAJ,EAAsD;AAC3DgD,QAAAA,gBAAgB,4BAAqBvB,YAArB,WAAhB;AACD;;AAED,aACE,oBAAC,gBAAD,CAAkB,QAAlB;AAA2B,QAAA,KAAK,EAAE;AAAlC,SACE,oBAAC,KAAD,eACMqB,SADN;AAEE,QAAA,OAAO,EAAE,KAAKG,YAFhB;AAGE,QAAA,MAAM,EAAE,KAAKC,WAHf;AAIE,QAAA,KAAK,EAAE,KAAKC,UAJd,CAKE;AALF;AAME,QAAA,SAAS,EAAE1E,UAAU,CAACI,YAAY,CAAC,eAAD,EAAkB6C,QAAlB,CAAb,EAA0C;AAC7D,qCAA2Bd,QADkC;AAE7D,uCAA6BZ;AAFgC,SAA1C;AANvB,UAWE,oBAAC,WAAD;AAAa,QAAA,SAAS,EAAC;AAAvB,SACE,oBAAC,oBAAD;AACE,QAAA,KAAK,EAAE;AACLoD,UAAAA,SAAS,EAAEL,gBADN;AAELM,UAAAA,eAAe,EAAEN,gBAFZ;AAGLO,UAAAA,OAAO,EAAE1C,QAAQ,IAAIZ,UAAZ,IAA0BwB,UAA1B,GAAuC,CAAvC,GAA2C;AAH/C,SADT;AAME,QAAA,EAAE,EAAExB,UANN;AAOE,QAAA,QAAQ,EAAEA,UAAU,GAAGH,SAAH,GAAe0B;AAPrC,QADF,CAXF,EAuBE;AACE,QAAA,SAAS,EAAC,wBADZ;AAEE,QAAA,GAAG,EAAE,KAAKM,UAFZ;AAGE,QAAA,KAAK,EAAE;AACLuB,UAAAA,SAAS,EAAEJ,gBADN;AAELK,UAAAA,eAAe,EAAEL;AAFZ;AAHT,SAQGJ,QARH,CAvBF,CADF,CADF;AAsCD;;;;EAlRyBvE,KAAK,CAACkF,a,GAqRlC;;;AACA,eAAepE,WAAW,CACxBJ,YAAY,CAACE,OAAO,CAAqBU,aAArB,CAAR,CADY,EAExBP,aAFwB,EAGxB,QAHwB,CAA1B","sourcesContent":["import * as React from \"react\";\nimport { Touch, TouchProps, TouchEvent } from \"../Touch/Touch\";\nimport TouchRootContext from \"../Touch/TouchContext\";\nimport FixedLayout from \"../FixedLayout/FixedLayout\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport PullToRefreshSpinner from \"./PullToRefreshSpinner\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { AnyFunction, HasPlatform } from \"../../types\";\nimport { canUseDOM, DOMProps, withDOM } from \"../../lib/dom\";\nimport { runTapticImpactOccurred } from \"../../lib/taptic\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport \"./PullToRefresh.css\";\n\nexport interface PullToRefreshProps extends TouchProps, HasPlatform {\n /**\n * Будет вызвана для обновления контента\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n}\n\nexport interface PullToRefreshState {\n watching: boolean;\n refreshing: boolean;\n canRefresh: boolean;\n\n touchDown: boolean;\n\n touchY: number;\n spinnerY: PullToRefreshParams[\"start\"];\n spinnerProgress: number;\n contentShift: number;\n}\n\nexport interface PullToRefreshParams {\n start: number;\n max: number;\n maxY: number;\n refreshing: number;\n positionMultiplier: number;\n}\n\nexport type TouchEventHandler = (event: TouchEvent) => void;\n\nfunction cancelEvent(event: any) {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault && event.cancelable) {\n event.preventDefault();\n }\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n return false;\n}\n\nclass PullToRefresh extends React.PureComponent<\n PullToRefreshProps & DOMProps,\n PullToRefreshState\n> {\n constructor(props: PullToRefreshProps) {\n super(props);\n\n this.params = {\n start: props.platform === ANDROID || props.platform === VKCOM ? -45 : -10,\n max: props.platform === ANDROID || props.platform === VKCOM ? 80 : 50,\n maxY: props.platform === ANDROID || props.platform === VKCOM ? 80 : 400,\n refreshing:\n props.platform === ANDROID || props.platform === VKCOM ? 50 : 36,\n\n positionMultiplier:\n props.platform === ANDROID || props.platform === VKCOM ? 1 : 0.21,\n };\n\n this.state = {\n watching: false,\n refreshing: false,\n canRefresh: false,\n\n touchDown: false,\n\n touchY: 0,\n spinnerY: this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n };\n\n this.contentRef = React.createRef();\n }\n\n params: PullToRefreshParams;\n contentRef: React.RefObject<HTMLDivElement>;\n waitFetchingTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n componentDidMount() {\n if (canUseDOM) {\n this.document!.addEventListener(\"touchmove\", this.onWindowTouchMove, {\n // @ts-ignore\n cancelable: true,\n passive: false,\n });\n }\n }\n\n componentWillUnmount() {\n // Здесь нужен последний аргумент с такими же параметрами, потому что\n // некоторые браузеры на странных вендорах типа Meizu не удаляют обработчик.\n // https://github.com/VKCOM/VKUI/issues/444\n if (canUseDOM) {\n this.document!.removeEventListener(\"touchmove\", this.onWindowTouchMove, {\n // @ts-ignore\n cancelable: true,\n passive: false,\n });\n }\n if (this.waitFetchingTimeout) {\n clearTimeout(this.waitFetchingTimeout);\n }\n }\n\n componentDidUpdate(\n prevProps: PullToRefreshProps,\n prevState: PullToRefreshState\n ) {\n if (prevProps.isFetching && !this.props.isFetching) {\n this.onRefreshingFinish();\n }\n if (\n !prevProps.isFetching &&\n this.props.isFetching &&\n this.waitFetchingTimeout\n ) {\n clearTimeout(this.waitFetchingTimeout);\n }\n\n if (prevState.touchDown && !this.state.touchDown) {\n const { refreshing, canRefresh } = this.state;\n if (!refreshing && canRefresh) {\n this.runRefreshing();\n } else if (refreshing && !this.props.isFetching) {\n // only iOS can start refresh before gesture end\n this.resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n this.setState({\n spinnerY: refreshing ? this.params.refreshing : this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n });\n }\n }\n }\n\n onTouchStart: TouchEventHandler = (e: TouchEvent) => {\n if (this.state.refreshing) {\n cancelEvent(e);\n }\n this.setState({ touchDown: true });\n };\n\n onWindowTouchMove: EventListener = (event: Event) => {\n if (this.state.refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n onTouchMove: TouchEventHandler = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = this.params;\n const pageYOffset = this.props.scroll?.getScroll().y;\n\n const { refreshing, watching, touchDown } = this.state;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier } = this.params;\n\n const shift = Math.max(0, shiftY - this.state.touchY);\n\n const currentY = Math.max(\n start,\n Math.min(this.params.maxY, start + shift * positionMultiplier)\n );\n const progress =\n currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n this.setState({\n spinnerY: currentY,\n spinnerProgress: Math.min(80, Math.max(0, progress)),\n canRefresh: progress > 80,\n contentShift: (currentY + 10) * 2.3,\n });\n\n if (progress > 85 && !refreshing && this.props.platform === IOS) {\n this.runRefreshing();\n }\n } else if (\n isY &&\n pageYOffset === 0 &&\n shiftY > 0 &&\n !refreshing &&\n touchDown\n ) {\n cancelEvent(e);\n\n this.setState({\n watching: true,\n touchY: shiftY,\n spinnerY: start,\n spinnerProgress: 0,\n });\n }\n };\n\n onTouchEnd = () => {\n this.setState({\n watching: false,\n touchDown: false,\n });\n };\n\n runRefreshing() {\n if (!this.state.refreshing && this.props.onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n this.waitFetchingTimeout = setTimeout(this.onRefreshingFinish, 1000);\n this.setState({\n refreshing: true,\n spinnerY:\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? this.params.refreshing\n : this.state.spinnerY,\n });\n\n this.props.onRefresh();\n runTapticImpactOccurred(\"light\");\n }\n }\n\n onRefreshingFinish: VoidFunction = () => {\n if (!this.state.touchDown) {\n this.resetRefreshingState();\n }\n };\n\n resetRefreshingState() {\n this.setState({\n watching: false,\n canRefresh: false,\n refreshing: false,\n spinnerY: this.params.start,\n spinnerProgress: 0,\n contentShift: 0,\n });\n }\n\n render() {\n const {\n children,\n onRefresh,\n isFetching,\n platform,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n watching,\n refreshing,\n spinnerY,\n spinnerProgress,\n canRefresh,\n touchDown,\n contentShift,\n } = this.state;\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = \"\";\n\n if (platform === IOS && refreshing && !touchDown) {\n contentTransform = \"translate3d(0, 100px, 0)\";\n } else if (platform === IOS && (contentShift || refreshing)) {\n contentTransform = `translate3d(0, ${contentShift}px, 0)`;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <Touch\n {...restProps}\n onStart={this.onTouchStart}\n onMove={this.onTouchMove}\n onEnd={this.onTouchEnd}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"PullToRefresh\", platform), {\n \"PullToRefresh--watching\": watching,\n \"PullToRefresh--refreshing\": refreshing,\n })}\n >\n <FixedLayout vkuiClass=\"PullToRefresh__controls\">\n <PullToRefreshSpinner\n style={{\n transform: spinnerTransform,\n WebkitTransform: spinnerTransform,\n opacity: watching || refreshing || canRefresh ? 1 : 0,\n }}\n on={refreshing}\n progress={refreshing ? undefined : spinnerProgress}\n />\n </FixedLayout>\n\n <div\n vkuiClass=\"PullToRefresh__content\"\n ref={this.contentRef}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n }\n}\n\n// eslint-disable-next-line import/no-default-export\nexport default withContext(\n withPlatform(withDOM<PullToRefreshProps>(PullToRefresh)),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"PullToRefresh.js"}
@@ -24,6 +24,7 @@ var PullToRefreshSpinner = function PullToRefreshSpinner(_ref) {
24
24
  var circleCenter = 0.5 * size;
25
25
  var dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);
26
26
  return createScopedElement("div", {
27
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
27
28
  vkuiClass: classNames("PullToRefresh__spinner", {
28
29
  "PullToRefresh__spinner--on": on
29
30
  }),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/PullToRefresh/PullToRefreshSpinner.tsx"],"names":["React","classNames","calcStrokeDashOffset","value","radius","progress","Math","PI","PullToRefreshSpinner","on","size","strokeWidth","style","ariaLabel","dasharray","circleCenter","dashoffset","undefined","width","height","transformOrigin","memo"],"mappings":";AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;;AAGA,SAASC,oBAAT,CAA8BC,KAA9B,EAA6CC,MAA7C,EAA6D;AAC3D,MAAMC,QAAQ,GAAGF,KAAK,GAAG,GAAzB;AACA,SAAO,IAAIG,IAAI,CAACC,EAAT,GAAcH,MAAd,IAAwB,IAAIC,QAA5B,CAAP;AACD;;AAWD,IAAMG,oBAEL,GAAG,SAFEA,oBAEF,OAO6B;AAAA,qBAN/BC,EAM+B;AAAA,MAN/BA,EAM+B,wBAN1B,IAM0B;AAAA,uBAL/BC,IAK+B;AAAA,MAL/BA,IAK+B,0BALxB,EAKwB;AAAA,8BAJ/BC,WAI+B;AAAA,MAJ/BA,WAI+B,iCAJjB,GAIiB;AAAA,MAH/BC,KAG+B,QAH/BA,KAG+B;AAAA,2BAF/BP,QAE+B;AAAA,MAF/BA,QAE+B,8BAFpB,CAEoB;AAAA,4BAD/B,YAC+B;AAAA,MADjBQ,SACiB,+BADL,0BACK;AAC/B,MAAMT,MAAM,GAAG,MAAMM,IAAN,GAAa,MAAMC,WAAlC;AACA,MAAMG,SAAS,GAAG,IAAIR,IAAI,CAACC,EAAT,GAAcH,MAAhC;AACA,MAAMW,YAAY,GAAG,MAAML,IAA3B;AAEA,MAAMM,UAAU,GAAGd,oBAAoB,CAACO,EAAE,GAAG,EAAH,GAAQJ,QAAX,EAAqBD,MAArB,CAAvC;AAEA,SACE;AACE,IAAA,SAAS,EAAEH,UAAU,CAAC,wBAAD,EAA2B;AAC9C,oCAA8BQ;AADgB,KAA3B,CADvB;AAIE,IAAA,KAAK,EAAEG,KAJT;AAKE,kBAAYH,EAAE,GAAGI,SAAH,GAAeI;AAL/B,KAOE;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,6BAFZ;AAGE,IAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAER,IADF;AAELS,MAAAA,MAAM,EAAET;AAFH,KAHT;AAOE,IAAA,OAAO,gBAASA,IAAT,cAAiBA,IAAjB,CAPT;AAQE,IAAA,KAAK,EAAC;AARR,KAUE;AACE,IAAA,KAAK,EAAE;AACLQ,MAAAA,KAAK,EAAER,IADF;AAELS,MAAAA,MAAM,EAAET,IAFH;AAGLU,MAAAA,eAAe,YAAKL,YAAL,gBAAuBA,YAAvB;AAHV;AADT,KAOE;AACE,IAAA,SAAS,EAAC,6BADZ;AAEE,IAAA,IAAI,EAAC,MAFP;AAGE,IAAA,eAAe,EAAED,SAHnB;AAIE,IAAA,gBAAgB,EAAEE,UAJpB;AAKE,IAAA,WAAW,EAAEL,WALf;AAME,IAAA,aAAa,EAAC,OANhB;AAOE,IAAA,EAAE,EAAEI,YAPN;AAQE,IAAA,EAAE,EAAEA,YARN;AASE,IAAA,CAAC,EAAEX;AATL,IAPF,CAVF,CAPF,CADF;AAwCD,CAxDD,C,CA0DA;;;AACA,4BAAeJ,KAAK,CAACqB,IAAN,CAAWb,oBAAX,CAAf","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./PullToRefresh.css\";\n\nfunction calcStrokeDashOffset(value: number, radius: number) {\n const progress = value / 100;\n return 2 * Math.PI * radius * (1 - progress);\n}\n\nexport interface PullToRefreshSpinnerProps\n extends React.HTMLAttributes<HTMLDivElement> {\n size?: number;\n strokeWidth?: number;\n on?: boolean;\n progress?: number;\n \"aria-label\"?: string;\n}\n\nconst PullToRefreshSpinner: React.FunctionComponent<\n PullToRefreshSpinnerProps\n> = ({\n on = true,\n size = 24,\n strokeWidth = 2.5,\n style,\n progress = 0,\n \"aria-label\": ariaLabel = \"Пожалуйста, подождите...\",\n}: PullToRefreshSpinnerProps) => {\n const radius = 0.5 * size - 0.5 * strokeWidth;\n const dasharray = 2 * Math.PI * radius;\n const circleCenter = 0.5 * size;\n\n const dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);\n\n return (\n <div\n vkuiClass={classNames(\"PullToRefresh__spinner\", {\n \"PullToRefresh__spinner--on\": on,\n })}\n style={style}\n aria-label={on ? ariaLabel : undefined}\n >\n <svg\n role=\"presentation\"\n vkuiClass=\"PullToRefresh__spinner-self\"\n style={{\n width: size,\n height: size,\n }}\n viewBox={`0 0 ${size} ${size}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g\n style={{\n width: size,\n height: size,\n transformOrigin: `${circleCenter}px ${circleCenter}px`,\n }}\n >\n <circle\n vkuiClass=\"PullToRefresh__spinner-path\"\n fill=\"none\"\n strokeDasharray={dasharray}\n strokeDashoffset={dashoffset}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={circleCenter}\n cy={circleCenter}\n r={radius}\n />\n </g>\n </svg>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default React.memo(PullToRefreshSpinner);\n"],"file":"PullToRefreshSpinner.js"}
1
+ {"version":3,"sources":["../../../src/components/PullToRefresh/PullToRefreshSpinner.tsx"],"names":["React","classNames","calcStrokeDashOffset","value","radius","progress","Math","PI","PullToRefreshSpinner","on","size","strokeWidth","style","ariaLabel","dasharray","circleCenter","dashoffset","undefined","width","height","transformOrigin","memo"],"mappings":";AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;;AAGA,SAASC,oBAAT,CAA8BC,KAA9B,EAA6CC,MAA7C,EAA6D;AAC3D,MAAMC,QAAQ,GAAGF,KAAK,GAAG,GAAzB;AACA,SAAO,IAAIG,IAAI,CAACC,EAAT,GAAcH,MAAd,IAAwB,IAAIC,QAA5B,CAAP;AACD;;AAWD,IAAMG,oBAEL,GAAG,SAFEA,oBAEF,OAO6B;AAAA,qBAN/BC,EAM+B;AAAA,MAN/BA,EAM+B,wBAN1B,IAM0B;AAAA,uBAL/BC,IAK+B;AAAA,MAL/BA,IAK+B,0BALxB,EAKwB;AAAA,8BAJ/BC,WAI+B;AAAA,MAJ/BA,WAI+B,iCAJjB,GAIiB;AAAA,MAH/BC,KAG+B,QAH/BA,KAG+B;AAAA,2BAF/BP,QAE+B;AAAA,MAF/BA,QAE+B,8BAFpB,CAEoB;AAAA,4BAD/B,YAC+B;AAAA,MADjBQ,SACiB,+BADL,0BACK;AAC/B,MAAMT,MAAM,GAAG,MAAMM,IAAN,GAAa,MAAMC,WAAlC;AACA,MAAMG,SAAS,GAAG,IAAIR,IAAI,CAACC,EAAT,GAAcH,MAAhC;AACA,MAAMW,YAAY,GAAG,MAAML,IAA3B;AAEA,MAAMM,UAAU,GAAGd,oBAAoB,CAACO,EAAE,GAAG,EAAH,GAAQJ,QAAX,EAAqBD,MAArB,CAAvC;AAEA,SACE;AACE;AACA,IAAA,SAAS,EAAEH,UAAU,CAAC,wBAAD,EAA2B;AAC9C,oCAA8BQ;AADgB,KAA3B,CAFvB;AAKE,IAAA,KAAK,EAAEG,KALT;AAME,kBAAYH,EAAE,GAAGI,SAAH,GAAeI;AAN/B,KAQE;AACE,IAAA,IAAI,EAAC,cADP;AAEE,IAAA,SAAS,EAAC,6BAFZ;AAGE,IAAA,KAAK,EAAE;AACLC,MAAAA,KAAK,EAAER,IADF;AAELS,MAAAA,MAAM,EAAET;AAFH,KAHT;AAOE,IAAA,OAAO,gBAASA,IAAT,cAAiBA,IAAjB,CAPT;AAQE,IAAA,KAAK,EAAC;AARR,KAUE;AACE,IAAA,KAAK,EAAE;AACLQ,MAAAA,KAAK,EAAER,IADF;AAELS,MAAAA,MAAM,EAAET,IAFH;AAGLU,MAAAA,eAAe,YAAKL,YAAL,gBAAuBA,YAAvB;AAHV;AADT,KAOE;AACE,IAAA,SAAS,EAAC,6BADZ;AAEE,IAAA,IAAI,EAAC,MAFP;AAGE,IAAA,eAAe,EAAED,SAHnB;AAIE,IAAA,gBAAgB,EAAEE,UAJpB;AAKE,IAAA,WAAW,EAAEL,WALf;AAME,IAAA,aAAa,EAAC,OANhB;AAOE,IAAA,EAAE,EAAEI,YAPN;AAQE,IAAA,EAAE,EAAEA,YARN;AASE,IAAA,CAAC,EAAEX;AATL,IAPF,CAVF,CARF,CADF;AAyCD,CAzDD,C,CA2DA;;;AACA,4BAAeJ,KAAK,CAACqB,IAAN,CAAWb,oBAAX,CAAf","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport \"./PullToRefresh.css\";\n\nfunction calcStrokeDashOffset(value: number, radius: number) {\n const progress = value / 100;\n return 2 * Math.PI * radius * (1 - progress);\n}\n\nexport interface PullToRefreshSpinnerProps\n extends React.HTMLAttributes<HTMLDivElement> {\n size?: number;\n strokeWidth?: number;\n on?: boolean;\n progress?: number;\n \"aria-label\"?: string;\n}\n\nconst PullToRefreshSpinner: React.FunctionComponent<\n PullToRefreshSpinnerProps\n> = ({\n on = true,\n size = 24,\n strokeWidth = 2.5,\n style,\n progress = 0,\n \"aria-label\": ariaLabel = \"Пожалуйста, подождите...\",\n}: PullToRefreshSpinnerProps) => {\n const radius = 0.5 * size - 0.5 * strokeWidth;\n const dasharray = 2 * Math.PI * radius;\n const circleCenter = 0.5 * size;\n\n const dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);\n\n return (\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"PullToRefresh__spinner\", {\n \"PullToRefresh__spinner--on\": on,\n })}\n style={style}\n aria-label={on ? ariaLabel : undefined}\n >\n <svg\n role=\"presentation\"\n vkuiClass=\"PullToRefresh__spinner-self\"\n style={{\n width: size,\n height: size,\n }}\n viewBox={`0 0 ${size} ${size}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g\n style={{\n width: size,\n height: size,\n transformOrigin: `${circleCenter}px ${circleCenter}px`,\n }}\n >\n <circle\n vkuiClass=\"PullToRefresh__spinner-path\"\n fill=\"none\"\n strokeDasharray={dasharray}\n strokeDashoffset={dashoffset}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={circleCenter}\n cy={circleCenter}\n r={radius}\n />\n </g>\n </svg>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default React.memo(PullToRefreshSpinner);\n"],"file":"PullToRefreshSpinner.js"}
@@ -9,7 +9,7 @@ import { IOS, VKCOM } from "../../lib/platform";
9
9
  import { usePlatform } from "../../hooks/usePlatform";
10
10
  import { withAdaptivity, SizeType } from "../../hoc/withAdaptivity";
11
11
  import { hasReactNode } from "../../lib/utils";
12
- import Caption from "../Typography/Caption/Caption";
12
+ import { Caption } from "../Typography/Caption/Caption";
13
13
  import Headline from "../Typography/Headline/Headline";
14
14
  import Text from "../Typography/Text/Text";
15
15
 
@@ -49,9 +49,6 @@ var Radio = function Radio(props) {
49
49
  }, createScopedElement("div", {
50
50
  vkuiClass: "Radio__children"
51
51
  }, children), hasReactNode(description) && createScopedElement(Caption, {
52
- level: "1",
53
- Component: "span",
54
- weight: "regular",
55
52
  vkuiClass: "Radio__description"
56
53
  }, description))));
57
54
  }; // eslint-disable-next-line import/no-default-export
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/Radio/Radio.tsx"],"names":["Tappable","ACTIVE_EFFECT_DELAY","getClassName","classNames","IOS","VKCOM","usePlatform","withAdaptivity","SizeType","hasReactNode","Caption","Headline","Text","Radio","props","children","description","style","className","getRef","getRootRef","sizeY","restProps","platform","ContentComponent","COMPACT","disabled"],"mappings":";;;;AACA,OAAOA,QAAP,IAAmBC,mBAAnB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,GAAT,EAAcC,KAAd;AAEA,SAASC,WAAT;AACA,SACEC,cADF,EAGEC,QAHF;AAKA,SAASC,YAAT;AACA,OAAOC,OAAP;AACA,OAAOC,QAAP;AACA,OAAOC,IAAP;;AAWA,IAAMC,KAA2B,GAAG,SAA9BA,KAA8B,CAACC,KAAD,EAAuB;AACzD,MACEC,QADF,GASID,KATJ,CACEC,QADF;AAAA,MAEEC,WAFF,GASIF,KATJ,CAEEE,WAFF;AAAA,MAGEC,KAHF,GASIH,KATJ,CAGEG,KAHF;AAAA,MAIEC,SAJF,GASIJ,KATJ,CAIEI,SAJF;AAAA,MAKEC,MALF,GASIL,KATJ,CAKEK,MALF;AAAA,MAMEC,UANF,GASIN,KATJ,CAMEM,UANF;AAAA,MAOEC,KAPF,GASIP,KATJ,CAOEO,KAPF;AAAA,MAQKC,SARL,4BASIR,KATJ;;AAUA,MAAMS,QAAQ,GAAGjB,WAAW,EAA5B;AAEA,MAAMkB,gBAAgB,GACpBD,QAAQ,KAAKlB,KAAb,IAAsBgB,KAAK,KAAKb,QAAQ,CAACiB,OAAzC,GAAmDb,IAAnD,GAA0DD,QAD5D;AAGA,SACE,oBAAC,QAAD;AACE,IAAA,SAAS,EAAC,OADZ;AAEE,IAAA,KAAK,EAAEM,KAFT;AAGE,IAAA,SAAS,EAAEC,SAHb;AAIE,IAAA,SAAS,EAAEf,UAAU,CACnBD,YAAY,CAAC,OAAD,EAAUqB,QAAV,CADO,yBAEHF,KAFG,EAJvB;AAQE,IAAA,iBAAiB,EAAEE,QAAQ,KAAKnB,GAAb,GAAmB,GAAnB,GAAyBH,mBAR9C;AASE,IAAA,QAAQ,EAAEqB,SAAS,CAACI,QATtB;AAUE,IAAA,UAAU,EAAEN;AAVd,KAYE,0CACME,SADN;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,SAAS,EAAC,cAHZ;AAIE,IAAA,GAAG,EAAEH;AAJP,KAZF,EAkBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAG,IAAA,SAAS,EAAC,aAAb;AAA2B,IAAA,IAAI,EAAC;AAAhC,IADF,EAEE,oBAAC,gBAAD;AACE,IAAA,MAAM,EAAC,SADT;AAEE,IAAA,SAAS,EAAC,gBAFZ;AAGE,IAAA,SAAS,EAAC;AAHZ,KAKE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCJ,QAAlC,CALF,EAMGN,YAAY,CAACO,WAAD,CAAZ,IACC,oBAAC,OAAD;AACE,IAAA,KAAK,EAAC,GADR;AAEE,IAAA,SAAS,EAAC,MAFZ;AAGE,IAAA,MAAM,EAAC,SAHT;AAIE,IAAA,SAAS,EAAC;AAJZ,KAMGA,WANH,CAPJ,CAFF,CAlBF,CADF;AAyCD,CAzDD,C,CA2DA;;;AACA,eAAeT,cAAc,CAACM,KAAD,EAAQ;AACnCQ,EAAAA,KAAK,EAAE;AAD4B,CAAR,CAA7B","sourcesContent":["import * as React from \"react\";\nimport Tappable, { ACTIVE_EFFECT_DELAY } from \"../Tappable/Tappable\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n SizeType,\n} from \"../../hoc/withAdaptivity\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Caption from \"../Typography/Caption/Caption\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Text from \"../Typography/Text/Text\";\nimport \"./Radio.css\";\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement>,\n AdaptivityProps {\n description?: React.ReactNode;\n}\n\nconst Radio: React.FC<RadioProps> = (props: RadioProps) => {\n const {\n children,\n description,\n style,\n className,\n getRef,\n getRootRef,\n sizeY,\n ...restProps\n } = props;\n const platform = usePlatform();\n\n const ContentComponent =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={className}\n vkuiClass={classNames(\n getClassName(\"Radio\", platform),\n `Radio--sizeY-${sizeY}`\n )}\n activeEffectDelay={platform === IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <input\n {...restProps}\n type=\"radio\"\n vkuiClass=\"Radio__input\"\n ref={getRef}\n />\n <div vkuiClass=\"Radio__container\">\n <i vkuiClass=\"Radio__icon\" role=\"presentation\" />\n <ContentComponent\n weight=\"regular\"\n vkuiClass=\"Radio__content\"\n Component=\"div\"\n >\n <div vkuiClass=\"Radio__children\">{children}</div>\n {hasReactNode(description) && (\n <Caption\n level=\"1\"\n Component=\"span\"\n weight=\"regular\"\n vkuiClass=\"Radio__description\"\n >\n {description}\n </Caption>\n )}\n </ContentComponent>\n </div>\n </Tappable>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Radio, {\n sizeY: true,\n});\n"],"file":"Radio.js"}
1
+ {"version":3,"sources":["../../../src/components/Radio/Radio.tsx"],"names":["Tappable","ACTIVE_EFFECT_DELAY","getClassName","classNames","IOS","VKCOM","usePlatform","withAdaptivity","SizeType","hasReactNode","Caption","Headline","Text","Radio","props","children","description","style","className","getRef","getRootRef","sizeY","restProps","platform","ContentComponent","COMPACT","disabled"],"mappings":";;;;AACA,OAAOA,QAAP,IAAmBC,mBAAnB;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,GAAT,EAAcC,KAAd;AAEA,SAASC,WAAT;AACA,SACEC,cADF,EAGEC,QAHF;AAKA,SAASC,YAAT;AACA,SAASC,OAAT;AACA,OAAOC,QAAP;AACA,OAAOC,IAAP;;AAWA,IAAMC,KAA2B,GAAG,SAA9BA,KAA8B,CAACC,KAAD,EAAuB;AACzD,MACEC,QADF,GASID,KATJ,CACEC,QADF;AAAA,MAEEC,WAFF,GASIF,KATJ,CAEEE,WAFF;AAAA,MAGEC,KAHF,GASIH,KATJ,CAGEG,KAHF;AAAA,MAIEC,SAJF,GASIJ,KATJ,CAIEI,SAJF;AAAA,MAKEC,MALF,GASIL,KATJ,CAKEK,MALF;AAAA,MAMEC,UANF,GASIN,KATJ,CAMEM,UANF;AAAA,MAOEC,KAPF,GASIP,KATJ,CAOEO,KAPF;AAAA,MAQKC,SARL,4BASIR,KATJ;;AAUA,MAAMS,QAAQ,GAAGjB,WAAW,EAA5B;AAEA,MAAMkB,gBAAgB,GACpBD,QAAQ,KAAKlB,KAAb,IAAsBgB,KAAK,KAAKb,QAAQ,CAACiB,OAAzC,GAAmDb,IAAnD,GAA0DD,QAD5D;AAGA,SACE,oBAAC,QAAD;AACE,IAAA,SAAS,EAAC,OADZ;AAEE,IAAA,KAAK,EAAEM,KAFT;AAGE,IAAA,SAAS,EAAEC,SAHb;AAIE,IAAA,SAAS,EAAEf,UAAU,CACnBD,YAAY,CAAC,OAAD,EAAUqB,QAAV,CADO,yBAEHF,KAFG,EAJvB;AAQE,IAAA,iBAAiB,EAAEE,QAAQ,KAAKnB,GAAb,GAAmB,GAAnB,GAAyBH,mBAR9C;AASE,IAAA,QAAQ,EAAEqB,SAAS,CAACI,QATtB;AAUE,IAAA,UAAU,EAAEN;AAVd,KAYE,0CACME,SADN;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,IAAA,SAAS,EAAC,cAHZ;AAIE,IAAA,GAAG,EAAEH;AAJP,KAZF,EAkBE;AAAK,IAAA,SAAS,EAAC;AAAf,KACE;AAAG,IAAA,SAAS,EAAC,aAAb;AAA2B,IAAA,IAAI,EAAC;AAAhC,IADF,EAEE,oBAAC,gBAAD;AACE,IAAA,MAAM,EAAC,SADT;AAEE,IAAA,SAAS,EAAC,gBAFZ;AAGE,IAAA,SAAS,EAAC;AAHZ,KAKE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCJ,QAAlC,CALF,EAMGN,YAAY,CAACO,WAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAyCA,WAAzC,CAPJ,CAFF,CAlBF,CADF;AAkCD,CAlDD,C,CAoDA;;;AACA,eAAeT,cAAc,CAACM,KAAD,EAAQ;AACnCQ,EAAAA,KAAK,EAAE;AAD4B,CAAR,CAA7B","sourcesContent":["import * as React from \"react\";\nimport Tappable, { ACTIVE_EFFECT_DELAY } from \"../Tappable/Tappable\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { IOS, VKCOM } from \"../../lib/platform\";\nimport { HasRef, HasRootRef } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n withAdaptivity,\n AdaptivityProps,\n SizeType,\n} from \"../../hoc/withAdaptivity\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Text from \"../Typography/Text/Text\";\nimport \"./Radio.css\";\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement>,\n AdaptivityProps {\n description?: React.ReactNode;\n}\n\nconst Radio: React.FC<RadioProps> = (props: RadioProps) => {\n const {\n children,\n description,\n style,\n className,\n getRef,\n getRootRef,\n sizeY,\n ...restProps\n } = props;\n const platform = usePlatform();\n\n const ContentComponent =\n platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline;\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={className}\n vkuiClass={classNames(\n getClassName(\"Radio\", platform),\n `Radio--sizeY-${sizeY}`\n )}\n activeEffectDelay={platform === IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <input\n {...restProps}\n type=\"radio\"\n vkuiClass=\"Radio__input\"\n ref={getRef}\n />\n <div vkuiClass=\"Radio__container\">\n <i vkuiClass=\"Radio__icon\" role=\"presentation\" />\n <ContentComponent\n weight=\"regular\"\n vkuiClass=\"Radio__content\"\n Component=\"div\"\n >\n <div vkuiClass=\"Radio__children\">{children}</div>\n {hasReactNode(description) && (\n <Caption vkuiClass=\"Radio__description\">{description}</Caption>\n )}\n </ContentComponent>\n </div>\n </Tappable>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(Radio, {\n sizeY: true,\n});\n"],"file":"Radio.js"}
@@ -8,7 +8,7 @@ import { getClassName } from "../../helpers/getClassName";
8
8
  import Tappable from "../Tappable/Tappable";
9
9
  import { hasReactNode } from "../../lib/utils";
10
10
  import Text from "../Typography/Text/Text";
11
- import Subhead from "../Typography/Subhead/Subhead";
11
+ import { Subhead } from "../Typography/Subhead/Subhead";
12
12
  import { withAdaptivity } from "../../hoc/withAdaptivity";
13
13
 
14
14
  var RichCell = function RichCell(_ref) {
@@ -25,6 +25,7 @@ var RichCell = function RichCell(_ref) {
25
25
 
26
26
  var platform = usePlatform();
27
27
  return createScopedElement(Tappable, _extends({}, restProps, {
28
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
28
29
  vkuiClass: classNames(getClassName("RichCell", platform), {
29
30
  "RichCell--mult": multiline
30
31
  }, "RichCell--sizeY-".concat(sizeY))