@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/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":"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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 // 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"}
@@ -25,6 +25,7 @@ var PullToRefreshSpinner = function PullToRefreshSpinner(_ref) {
25
25
  var circleCenter = 0.5 * size;
26
26
  var dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);
27
27
  return createScopedElement("div", {
28
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
28
29
  vkuiClass: classNames("PullToRefresh__spinner", {
29
30
  "PullToRefresh__spinner--on": on
30
31
  }),
@@ -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;AACA;;AAEA,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;AACA;;AAEA,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
  import "./Radio.css";
@@ -50,9 +50,6 @@ var Radio = function Radio(props) {
50
50
  }, createScopedElement("div", {
51
51
  vkuiClass: "Radio__children"
52
52
  }, children), hasReactNode(description) && createScopedElement(Caption, {
53
- level: "1",
54
- Component: "span",
55
- weight: "regular",
56
53
  vkuiClass: "Radio__description"
57
54
  }, description))));
58
55
  }; // 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;AACA;;AAUA,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;AACA;;AAUA,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"}
@@ -1 +1 @@
1
- .vkuiRemovable__content{position:relative;display:flex;align-items:center;padding-left:16px;padding-left:var(--formitem_padding)}.vkuiRemovable__action{position:relative;flex-grow:0;flex-shrink:0;border:0}.vkuiRemovable--start .vkuiRemovable__action{align-self:flex-start}.vkuiFormItem--removable.vkuiFormItem--withTop .vkuiRemovable__action,.vkuiFormLayoutGroup--removable .vkuiFormItem--withTop~.vkuiRemovable__action{top:28px}.vkuiFormItem--sizeY-compact.vkuiFormItem--removable.vkuiFormItem--withTop .vkuiRemovable__action,.vkuiFormLayoutGroup--sizeY-compact.vkuiFormLayoutGroup--removable .vkuiFormItem--withTop~.vkuiRemovable__action{top:26px}.vkuiRemovable--ios{overflow:hidden}.vkuiRemovable__remove{position:absolute;left:100%;top:0;height:100%;padding:0 10px;font-size:15px;line-height:45px;color:#fff;color:var(--white);background-color:#e64646;background-color:var(--destructive);border:0;border-radius:0}.vkuiRemovable__remove-in{display:flex;align-items:center;justify-content:center;width:100%;height:100%}@media (prefers-reduced-motion:no-preference){.vkuiRemovable--ios .vkuiRemovable__content{transition:-webkit-transform .6s cubic-bezier(.36,.66,.04,1);transition:transform .6s cubic-bezier(.36,.66,.04,1);transition:transform .6s cubic-bezier(.36,.66,.04,1),-webkit-transform .6s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .6s var(--ios-easing);transition:transform .6s var(--ios-easing);transition:transform .6s var(--ios-easing),-webkit-transform .6s var(--ios-easing)}}.vkuiRemovable__toggle{display:block;width:44px;height:44px;margin:0 2px;background:0 0}.vkuiRemovable__toggle-in{position:relative;display:flex;align-items:center;align-content:center;justify-content:center;width:100%;height:100%;border:0}.vkuiRemovable__toggle-in::after{content:"";width:22px;height:22px;background-color:#e64646;background-color:var(--destructive);border-radius:50%}.vkuiRemovable__toggle-in::before{content:"";position:absolute;display:block;width:12px;height:2px;background-color:#fff;background-color:var(--white)}.vkuiRemovable--ios .vkuiRemovable__content{padding-left:0;padding-right:16px;padding-right:var(--formitem_padding)}.vkuiFormLayoutGroup--removable .vkuiRemovable__content{flex-wrap:wrap}.vkuiFormLayoutGroup--removable .vkuiFormItem--ios.vkuiFormItem--withTop~.vkuiRemovable__offset{order:-1;display:block;width:100%;height:28px}.vkuiFormLayoutGroup--removable.vkuiFormLayoutGroup--sizeY-compact .vkuiFormItem--ios.vkuiFormItem--withTop~.vkuiRemovable__offset{height:26px}
1
+ .vkuiRemovable__content{position:relative;display:flex;align-items:center;padding-left:16px;padding-left:var(--formitem_padding)}.vkuiRemovable__action{position:relative;flex-grow:0;flex-shrink:0;border:0}.vkuiRemovable--start .vkuiRemovable__action{align-self:flex-start}.vkuiFormItem--removable.vkuiFormItem--withTop .vkuiRemovable__action,.vkuiFormLayoutGroup--removable .vkuiFormItem--withTop~.vkuiRemovable__action{top:28px}.vkuiFormItem--sizeY-compact.vkuiFormItem--removable.vkuiFormItem--withTop .vkuiRemovable__action,.vkuiFormLayoutGroup--sizeY-compact.vkuiFormLayoutGroup--removable .vkuiFormItem--withTop~.vkuiRemovable__action{top:26px}.vkuiRemovable--ios{overflow:hidden}.vkuiRemovable__remove{position:absolute;left:100%;top:0;height:100%;padding:0 10px;font-size:15px;line-height:45px;color:#fff;color:var(--white);background-color:#e64646;background-color:var(--destructive);border:0;border-radius:0;letter-spacing:var(--vk-sans-ls-17)}.vkuiRemovable__remove-in{display:flex;align-items:center;justify-content:center;width:100%;height:100%}@media (prefers-reduced-motion:no-preference){.vkuiRemovable--ios .vkuiRemovable__content{transition:-webkit-transform .6s cubic-bezier(.36,.66,.04,1);transition:transform .6s cubic-bezier(.36,.66,.04,1);transition:transform .6s cubic-bezier(.36,.66,.04,1),-webkit-transform .6s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .6s var(--ios-easing);transition:transform .6s var(--ios-easing);transition:transform .6s var(--ios-easing),-webkit-transform .6s var(--ios-easing)}}.vkuiRemovable__toggle{display:block;width:44px;height:44px;margin:0 2px;background:0 0}.vkuiRemovable__toggle-in{position:relative;display:flex;align-items:center;align-content:center;justify-content:center;width:100%;height:100%;border:0}.vkuiRemovable__toggle-in::after{content:"";width:22px;height:22px;background-color:#e64646;background-color:var(--destructive);border-radius:50%}.vkuiRemovable__toggle-in::before{content:"";position:absolute;display:block;width:12px;height:2px;background-color:#fff;background-color:var(--white)}.vkuiRemovable--ios .vkuiRemovable__content{padding-left:0;padding-right:16px;padding-right:var(--formitem_padding)}.vkuiFormLayoutGroup--removable .vkuiRemovable__content{flex-wrap:wrap}.vkuiFormLayoutGroup--removable .vkuiFormItem--ios.vkuiFormItem--withTop~.vkuiRemovable__offset{order:-1;display:block;width:100%;height:28px}.vkuiFormLayoutGroup--removable.vkuiFormLayoutGroup--sizeY-compact .vkuiFormItem--ios.vkuiFormItem--withTop~.vkuiRemovable__offset{height:26px}
@@ -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
  import "./RichCell.css";
14
14
 
@@ -26,6 +26,7 @@ var RichCell = function RichCell(_ref) {
26
26
 
27
27
  var platform = usePlatform();
28
28
  return createScopedElement(Tappable, _extends({}, restProps, {
29
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
29
30
  vkuiClass: classNames(getClassName("RichCell", platform), {
30
31
  "RichCell--mult": multiline
31
32
  }, "RichCell--sizeY-".concat(sizeY))
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/RichCell/RichCell.tsx"],"names":["classNames","usePlatform","getClassName","Tappable","hasReactNode","Text","Subhead","withAdaptivity","RichCell","children","text","caption","before","after","bottom","actions","multiline","sizeY","restProps","platform"],"mappings":";;;;AACA,SAASA,UAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,YAAT;AACA,OAAOC,IAAP;AACA,OAAOC,OAAP;AACA,SAASC,cAAT;AACA;;AAmCA,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,OAWpC;AAAA,MAVJC,QAUI,QAVJA,QAUI;AAAA,MATJC,IASI,QATJA,IASI;AAAA,MARJC,OAQI,QARJA,OAQI;AAAA,MAPJC,MAOI,QAPJA,MAOI;AAAA,MANJC,KAMI,QANJA,KAMI;AAAA,MALJC,MAKI,QALJA,MAKI;AAAA,MAJJC,OAII,QAJJA,OAII;AAAA,MAHJC,SAGI,QAHJA,SAGI;AAAA,MAFJC,KAEI,QAFJA,KAEI;AAAA,MADDC,SACC;;AACJ,MAAMC,QAAQ,GAAGlB,WAAW,EAA5B;AAEA,SACE,oBAAC,QAAD,eACMiB,SADN;AAEE,IAAA,SAAS,EAAElB,UAAU,CACnBE,YAAY,CAAC,UAAD,EAAaiB,QAAb,CADO,EAEnB;AACE,wBAAkBH;AADpB,KAFmB,4BAKAC,KALA;AAFvB,MAUGL,MAVH,EAWE;AAAK,IAAA,SAAS,EAAC;AAAf,KAEGC,KAFH,EAGE,oBAAC,IAAD;AAAM,IAAA,MAAM,EAAC,QAAb;AAAsB,IAAA,SAAS,EAAC;AAAhC,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAqCJ,QAArC,CADF,EAEGL,YAAY,CAACS,KAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CAHJ,CAHF,EASGT,YAAY,CAACM,IAAD,CAAZ,IACC,oBAAC,IAAD;AAAM,IAAA,MAAM,EAAC,SAAb;AAAuB,IAAA,SAAS,EAAC;AAAjC,KACGA,IADH,CAVJ,EAcGN,YAAY,CAACO,OAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC,MAAnB;AAA0B,IAAA,SAAS,EAAC;AAApC,KACGA,OADH,CAfJ,EAmBG,CAACP,YAAY,CAACU,MAAD,CAAZ,IAAwBV,YAAY,CAACW,OAAD,CAArC,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGD,MADH,EAEGV,YAAY,CAACW,OAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoCA,OAApC,CAHJ,CApBJ,CAXF,CADF;AA0CD,CAxDD,C,CA0DA;;;AACA,eAAeR,cAAc,CAACC,QAAD,EAAW;AAAES,EAAAA,KAAK,EAAE;AAAT,CAAX,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Text from \"../Typography/Text/Text\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport { withAdaptivity } from \"../../hoc/withAdaptivity\";\nimport \"./RichCell.css\";\n\nexport interface RichCellProps extends TappableProps {\n /**\n * Контейнер для текста под `children`.\n */\n text?: React.ReactNode;\n /**\n * Контейнер для текста под `text`.\n */\n caption?: React.ReactNode;\n /**\n * Контейнер для контента под `caption`. Например `<UsersStack size=\"s\" />`\n */\n bottom?: React.ReactNode;\n /**\n * Кнопка `<Button size=\"s\" />`. Располагается под `bottom`.\n * Для набора кнопок следует использовать обёртку `<ButtonGroup mode=\"horizontal\" gap=\"s\">...</ButtonGroup>`.\n */\n actions?: React.ReactNode;\n /**\n * `<Avatar size={48|72} />`\n */\n before?: React.ReactNode;\n /**\n * Иконка 28 или текст\n */\n after?: React.ReactNode;\n /**\n * Убирает анимацию нажатия\n */\n disabled?: boolean;\n multiline?: boolean;\n}\n\nconst RichCell: React.FC<RichCellProps> = ({\n children,\n text,\n caption,\n before,\n after,\n bottom,\n actions,\n multiline,\n sizeY,\n ...restProps\n}) => {\n const platform = usePlatform();\n\n return (\n <Tappable\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"RichCell\", platform),\n {\n \"RichCell--mult\": multiline,\n },\n `RichCell--sizeY-${sizeY}`\n )}\n >\n {before}\n <div vkuiClass=\"RichCell__in\">\n {/* Этот after будет скрыт из верстки. Он нужен для CSS */}\n {after}\n <Text weight=\"medium\" vkuiClass=\"RichCell__content\">\n <div vkuiClass=\"RichCell__children\">{children}</div>\n {hasReactNode(after) && (\n <div vkuiClass=\"RichCell__after\">{after}</div>\n )}\n </Text>\n {hasReactNode(text) && (\n <Text weight=\"regular\" vkuiClass=\"RichCell__text\">\n {text}\n </Text>\n )}\n {hasReactNode(caption) && (\n <Subhead Component=\"span\" vkuiClass=\"RichCell__caption\">\n {caption}\n </Subhead>\n )}\n {(hasReactNode(bottom) || hasReactNode(actions)) && (\n <div vkuiClass=\"RichCell__bottom\">\n {bottom}\n {hasReactNode(actions) && (\n <div vkuiClass=\"RichCell__actions\">{actions}</div>\n )}\n </div>\n )}\n </div>\n </Tappable>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(RichCell, { sizeY: true });\n"],"file":"RichCell.js"}
1
+ {"version":3,"sources":["../../../../src/components/RichCell/RichCell.tsx"],"names":["classNames","usePlatform","getClassName","Tappable","hasReactNode","Text","Subhead","withAdaptivity","RichCell","children","text","caption","before","after","bottom","actions","multiline","sizeY","restProps","platform"],"mappings":";;;;AACA,SAASA,UAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,OAAOC,QAAP;AACA,SAASC,YAAT;AACA,OAAOC,IAAP;AACA,SAASC,OAAT;AACA,SAASC,cAAT;AACA;;AAmCA,IAAMC,QAAiC,GAAG,SAApCA,QAAoC,OAWpC;AAAA,MAVJC,QAUI,QAVJA,QAUI;AAAA,MATJC,IASI,QATJA,IASI;AAAA,MARJC,OAQI,QARJA,OAQI;AAAA,MAPJC,MAOI,QAPJA,MAOI;AAAA,MANJC,KAMI,QANJA,KAMI;AAAA,MALJC,MAKI,QALJA,MAKI;AAAA,MAJJC,OAII,QAJJA,OAII;AAAA,MAHJC,SAGI,QAHJA,SAGI;AAAA,MAFJC,KAEI,QAFJA,KAEI;AAAA,MADDC,SACC;;AACJ,MAAMC,QAAQ,GAAGlB,WAAW,EAA5B;AAEA,SACE,oBAAC,QAAD,eACMiB,SADN;AAEE;AACA,IAAA,SAAS,EAAElB,UAAU,CACnBE,YAAY,CAAC,UAAD,EAAaiB,QAAb,CADO,EAEnB;AACE,wBAAkBH;AADpB,KAFmB,4BAKAC,KALA;AAHvB,MAWGL,MAXH,EAYE;AAAK,IAAA,SAAS,EAAC;AAAf,KAEGC,KAFH,EAGE,oBAAC,IAAD;AAAM,IAAA,MAAM,EAAC,QAAb;AAAsB,IAAA,SAAS,EAAC;AAAhC,KACE;AAAK,IAAA,SAAS,EAAC;AAAf,KAAqCJ,QAArC,CADF,EAEGL,YAAY,CAACS,KAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAkCA,KAAlC,CAHJ,CAHF,EASGT,YAAY,CAACM,IAAD,CAAZ,IACC,oBAAC,IAAD;AAAM,IAAA,MAAM,EAAC,SAAb;AAAuB,IAAA,SAAS,EAAC;AAAjC,KACGA,IADH,CAVJ,EAcGN,YAAY,CAACO,OAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC,MAAnB;AAA0B,IAAA,SAAS,EAAC;AAApC,KACGA,OADH,CAfJ,EAmBG,CAACP,YAAY,CAACU,MAAD,CAAZ,IAAwBV,YAAY,CAACW,OAAD,CAArC,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACGD,MADH,EAEGV,YAAY,CAACW,OAAD,CAAZ,IACC;AAAK,IAAA,SAAS,EAAC;AAAf,KAAoCA,OAApC,CAHJ,CApBJ,CAZF,CADF;AA2CD,CAzDD,C,CA2DA;;;AACA,eAAeR,cAAc,CAACC,QAAD,EAAW;AAAES,EAAAA,KAAK,EAAE;AAAT,CAAX,CAA7B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport Tappable, { TappableProps } from \"../Tappable/Tappable\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Text from \"../Typography/Text/Text\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { withAdaptivity } from \"../../hoc/withAdaptivity\";\nimport \"./RichCell.css\";\n\nexport interface RichCellProps extends TappableProps {\n /**\n * Контейнер для текста под `children`.\n */\n text?: React.ReactNode;\n /**\n * Контейнер для текста под `text`.\n */\n caption?: React.ReactNode;\n /**\n * Контейнер для контента под `caption`. Например `<UsersStack size=\"s\" />`\n */\n bottom?: React.ReactNode;\n /**\n * Кнопка `<Button size=\"s\" />`. Располагается под `bottom`.\n * Для набора кнопок следует использовать обёртку `<ButtonGroup mode=\"horizontal\" gap=\"s\">...</ButtonGroup>`.\n */\n actions?: React.ReactNode;\n /**\n * `<Avatar size={48|72} />`\n */\n before?: React.ReactNode;\n /**\n * Иконка 28 или текст\n */\n after?: React.ReactNode;\n /**\n * Убирает анимацию нажатия\n */\n disabled?: boolean;\n multiline?: boolean;\n}\n\nconst RichCell: React.FC<RichCellProps> = ({\n children,\n text,\n caption,\n before,\n after,\n bottom,\n actions,\n multiline,\n sizeY,\n ...restProps\n}) => {\n const platform = usePlatform();\n\n return (\n <Tappable\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\n getClassName(\"RichCell\", platform),\n {\n \"RichCell--mult\": multiline,\n },\n `RichCell--sizeY-${sizeY}`\n )}\n >\n {before}\n <div vkuiClass=\"RichCell__in\">\n {/* Этот after будет скрыт из верстки. Он нужен для CSS */}\n {after}\n <Text weight=\"medium\" vkuiClass=\"RichCell__content\">\n <div vkuiClass=\"RichCell__children\">{children}</div>\n {hasReactNode(after) && (\n <div vkuiClass=\"RichCell__after\">{after}</div>\n )}\n </Text>\n {hasReactNode(text) && (\n <Text weight=\"regular\" vkuiClass=\"RichCell__text\">\n {text}\n </Text>\n )}\n {hasReactNode(caption) && (\n <Subhead Component=\"span\" vkuiClass=\"RichCell__caption\">\n {caption}\n </Subhead>\n )}\n {(hasReactNode(bottom) || hasReactNode(actions)) && (\n <div vkuiClass=\"RichCell__bottom\">\n {bottom}\n {hasReactNode(actions) && (\n <div vkuiClass=\"RichCell__actions\">{actions}</div>\n )}\n </div>\n )}\n </div>\n </Tappable>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withAdaptivity(RichCell, { sizeY: true });\n"],"file":"RichCell.js"}
@@ -18,7 +18,8 @@ export var RichTooltip = function RichTooltip(_ref) {
18
18
 
19
19
  var platform = usePlatform();
20
20
  var appearance = useAppearance();
21
- return createScopedElement(HoverPopper, _extends({
21
+ return createScopedElement(HoverPopper // eslint-disable-next-line vkui/no-object-expression-in-arguments
22
+ , _extends({
22
23
  vkuiClass: classNames(getClassName("RichTooltip", platform), _defineProperty({}, "RichTooltip--".concat(appearance), !!appearance)),
23
24
  arrow: arrow,
24
25
  arrowClassName: prefixClass("RichTooltip__arrow")
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"names":["HoverPopper","getClassName","usePlatform","useAppearance","classNames","prefixClass","RichTooltip","children","arrow","popperProps","platform","appearance"],"mappings":";;;;;AACA,SAASA,WAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,aAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA;AAIA,OAAO,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAI/B;AAAA,MAHtBC,QAGsB,QAHtBA,QAGsB;AAAA,wBAFtBC,KAEsB;AAAA,MAFtBA,KAEsB,2BAFd,IAEc;AAAA,MADnBC,WACmB;;AACtB,MAAMC,QAAQ,GAAGR,WAAW,EAA5B;AACA,MAAMS,UAAU,GAAGR,aAAa,EAAhC;AAEA,SACE,oBAAC,WAAD;AACE,IAAA,SAAS,EAAEC,UAAU,CAACH,YAAY,CAAC,aAAD,EAAgBS,QAAhB,CAAb,6CACFC,UADE,GACa,CAAC,CAACA,UADf,EADvB;AAIE,IAAA,KAAK,EAAEH,KAJT;AAKE,IAAA,cAAc,EAAEH,WAAW,CAAC,oBAAD;AAL7B,KAMMI,WANN,GAQGF,QARH,CADF;AAYD,CApBM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useAppearance } from \"../../hooks/useAppearance\";\nimport { classNames } from \"../../lib/classNames\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./RichTooltip.css\";\n\nexport type RichTooltipProps = Omit<HoverPopperProps, \"arrowClassName\">;\n\nexport const RichTooltip: React.FC<RichTooltipProps> = ({\n children,\n arrow = true,\n ...popperProps\n}: RichTooltipProps) => {\n const platform = usePlatform();\n const appearance = useAppearance();\n\n return (\n <HoverPopper\n vkuiClass={classNames(getClassName(\"RichTooltip\", platform), {\n [`RichTooltip--${appearance}`]: !!appearance,\n })}\n arrow={arrow}\n arrowClassName={prefixClass(\"RichTooltip__arrow\")}\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"RichTooltip.js"}
1
+ {"version":3,"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"names":["HoverPopper","getClassName","usePlatform","useAppearance","classNames","prefixClass","RichTooltip","children","arrow","popperProps","platform","appearance"],"mappings":";;;;;AACA,SAASA,WAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,aAAT;AACA,SAASC,UAAT;AACA,SAASC,WAAT;AACA;AAIA,OAAO,IAAMC,WAAuC,GAAG,SAA1CA,WAA0C,OAI/B;AAAA,MAHtBC,QAGsB,QAHtBA,QAGsB;AAAA,wBAFtBC,KAEsB;AAAA,MAFtBA,KAEsB,2BAFd,IAEc;AAAA,MADnBC,WACmB;;AACtB,MAAMC,QAAQ,GAAGR,WAAW,EAA5B;AACA,MAAMS,UAAU,GAAGR,aAAa,EAAhC;AAEA,SACE,oBAAC,WAAD,CACE;AADF;AAEE,IAAA,SAAS,EAAEC,UAAU,CAACH,YAAY,CAAC,aAAD,EAAgBS,QAAhB,CAAb,6CACFC,UADE,GACa,CAAC,CAACA,UADf,EAFvB;AAKE,IAAA,KAAK,EAAEH,KALT;AAME,IAAA,cAAc,EAAEH,WAAW,CAAC,oBAAD;AAN7B,KAOMI,WAPN,GASGF,QATH,CADF;AAaD,CArBM","sourcesContent":["import * as React from \"react\";\nimport { HoverPopper, HoverPopperProps } from \"../HoverPopper/HoverPopper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useAppearance } from \"../../hooks/useAppearance\";\nimport { classNames } from \"../../lib/classNames\";\nimport { prefixClass } from \"../../lib/prefixClass\";\nimport \"./RichTooltip.css\";\n\nexport type RichTooltipProps = Omit<HoverPopperProps, \"arrowClassName\">;\n\nexport const RichTooltip: React.FC<RichTooltipProps> = ({\n children,\n arrow = true,\n ...popperProps\n}: RichTooltipProps) => {\n const platform = usePlatform();\n const appearance = useAppearance();\n\n return (\n <HoverPopper\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"RichTooltip\", platform), {\n [`RichTooltip--${appearance}`]: !!appearance,\n })}\n arrow={arrow}\n arrowClassName={prefixClass(\"RichTooltip__arrow\")}\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"file":"RichTooltip.js"}
@@ -1 +1 @@
1
- .vkuiRoot{width:100%;height:100%;position:relative}.vkuiRoot--transition{pointer-events:none}.vkuiRoot__view{width:100%;height:100%;position:relative}.vkuiRoot--transition .vkuiRoot__view{position:fixed;left:0;top:0;overflow:hidden}.vkuiRoot__scrollCompensation{width:100%;height:100%}.vkuiRoot__view--show-back,.vkuiRoot__view--hide-forward{z-index:1}.vkuiRoot__view--show-forward,.vkuiRoot__view--hide-back{z-index:2}.vkuiRoot__popout{position:fixed;left:0;top:0;z-index:100;width:100%;height:100%}.vkuiRoot__modal{position:fixed;left:0;top:0;z-index:99;width:100%;height:100%}.vkuiRoot__modal:empty{display:none}.vkuiRoot--ios .vkuiRoot__view--show-back::after,.vkuiRoot--ios .vkuiRoot__view--hide-forward::after{position:absolute;width:100%;height:100%;left:0;top:0;display:block;content:"";background-color:#000;z-index:6}.vkuiRoot--ios .vkuiRoot__view--show-back::after{-webkit-animation:vkui-root-ios-animation-show-back .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-show-back .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-show-back .6s var(--ios-easing);animation:vkui-root-ios-animation-show-back .6s var(--ios-easing)}.vkuiRoot--ios .vkuiRoot__view--hide-forward::after{-webkit-animation:vkui-root-ios-animation-hide-forward .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-hide-forward .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-hide-forward .6s var(--ios-easing);animation:vkui-root-ios-animation-hide-forward .6s var(--ios-easing)}.vkuiRoot--ios .vkuiRoot__view--show-forward{-webkit-animation:vkui-root-ios-animation-show-forward .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-show-forward .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-show-forward .6s var(--ios-easing);animation:vkui-root-ios-animation-show-forward .6s var(--ios-easing)}.vkuiRoot--ios .vkuiRoot__view--hide-back{-webkit-animation:vkui-root-ios-animation-hide-back .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-hide-back .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-hide-back .6s var(--ios-easing);animation:vkui-root-ios-animation-hide-back .6s var(--ios-easing)}@-webkit-keyframes vkui-root-ios-animation-show-back{0%{opacity:.3}to{opacity:0}}@keyframes vkui-root-ios-animation-show-back{0%{opacity:.3}to{opacity:0}}@-webkit-keyframes vkui-root-ios-animation-hide-forward{0%{opacity:0}to{opacity:.3}}@keyframes vkui-root-ios-animation-hide-forward{0%{opacity:0}to{opacity:.3}}@-webkit-keyframes vkui-root-ios-animation-hide-back{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes vkui-root-ios-animation-hide-back{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes vkui-root-ios-animation-show-forward{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes vkui-root-ios-animation-show-forward{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.vkuiRoot--android .vkuiRoot__view--show-forward,.vkuiRoot--vkcom .vkuiRoot__view--show-forward{-webkit-animation:vkui-root-android-animation-show-forward .3s cubic-bezier(.4,0,.2,1);animation:vkui-root-android-animation-show-forward .3s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-root-android-animation-show-forward .3s var(--android-easing);animation:vkui-root-android-animation-show-forward .3s var(--android-easing)}.vkuiRoot--android .vkuiRoot__view--hide-back,.vkuiRoot--vkcom .vkuiRoot__view--hide-back{-webkit-animation:vkui-root-android-animation-hide-back .3s cubic-bezier(.4,0,.2,1);animation:vkui-root-android-animation-hide-back .3s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-root-android-animation-hide-back .3s var(--android-easing);animation:vkui-root-android-animation-hide-back .3s var(--android-easing)}@-webkit-keyframes vkui-root-android-animation-hide-back{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}to{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}}@keyframes vkui-root-android-animation-hide-back{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}to{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}}@-webkit-keyframes vkui-root-android-animation-show-forward{0%{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes vkui-root-android-animation-show-forward{0%{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}.vkuiRoot--ios.vkuiRoot--no-motion .vkuiRoot__view,.vkuiRoot--android.vkuiRoot--no-motion .vkuiRoot__view,.vkuiRoot--vkcom.vkuiRoot--no-motion .vkuiRoot__view{-webkit-animation:none;animation:none}
1
+ .vkuiRoot{width:100%;height:100%;position:relative}.vkuiRoot--transition{pointer-events:none}.vkuiRoot__view{width:100%;height:100%;position:relative}.vkuiRoot--transition .vkuiRoot__view{position:fixed;left:0;top:0;overflow:hidden}.vkuiRoot__scrollCompensation{width:100%;height:100%}.vkuiRoot__view--show-back,.vkuiRoot__view--hide-forward{z-index:1}.vkuiRoot__view--show-forward,.vkuiRoot__view--hide-back{z-index:2}.vkuiRoot__popout{position:fixed;left:0;top:0;z-index:100;width:100%;height:100%}.vkuiRoot__modal{position:fixed;left:0;top:0;z-index:99;width:100%;height:100%}.vkuiRoot__modal:empty{display:none}.vkuiRoot--ios .vkuiRoot__view--show-back::after,.vkuiRoot--ios .vkuiRoot__view--hide-forward::after{position:absolute;width:100%;height:100%;left:0;top:0;display:block;content:"";background-color:#000;z-index:6}.vkuiRoot--ios .vkuiRoot__view--show-back::after{-webkit-animation:vkui-root-ios-animation-show-back .6s cubic-bezier(.36,.66,.04,1) forwards;animation:vkui-root-ios-animation-show-back .6s cubic-bezier(.36,.66,.04,1) forwards;-webkit-animation:vkui-root-ios-animation-show-back .6s var(--ios-easing) forwards;animation:vkui-root-ios-animation-show-back .6s var(--ios-easing) forwards}.vkuiRoot--ios .vkuiRoot__view--hide-forward::after{-webkit-animation:vkui-root-ios-animation-hide-forward .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-hide-forward .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-hide-forward .6s var(--ios-easing);animation:vkui-root-ios-animation-hide-forward .6s var(--ios-easing)}.vkuiRoot--ios .vkuiRoot__view--show-forward{-webkit-animation:vkui-root-ios-animation-show-forward .6s cubic-bezier(.36,.66,.04,1);animation:vkui-root-ios-animation-show-forward .6s cubic-bezier(.36,.66,.04,1);-webkit-animation:vkui-root-ios-animation-show-forward .6s var(--ios-easing);animation:vkui-root-ios-animation-show-forward .6s var(--ios-easing)}.vkuiRoot--ios .vkuiRoot__view--hide-back{-webkit-animation:vkui-root-ios-animation-hide-back .6s cubic-bezier(.36,.66,.04,1) forwards;animation:vkui-root-ios-animation-hide-back .6s cubic-bezier(.36,.66,.04,1) forwards;-webkit-animation:vkui-root-ios-animation-hide-back .6s var(--ios-easing) forwards;animation:vkui-root-ios-animation-hide-back .6s var(--ios-easing) forwards}@-webkit-keyframes vkui-root-ios-animation-show-back{0%{opacity:.3}to{opacity:0}}@keyframes vkui-root-ios-animation-show-back{0%{opacity:.3}to{opacity:0}}@-webkit-keyframes vkui-root-ios-animation-hide-forward{0%{opacity:0}to{opacity:.3}}@keyframes vkui-root-ios-animation-hide-forward{0%{opacity:0}to{opacity:.3}}@-webkit-keyframes vkui-root-ios-animation-hide-back{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes vkui-root-ios-animation-hide-back{0%{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@-webkit-keyframes vkui-root-ios-animation-show-forward{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}@keyframes vkui-root-ios-animation-show-forward{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.vkuiRoot--android .vkuiRoot__view--show-forward,.vkuiRoot--vkcom .vkuiRoot__view--show-forward{-webkit-animation:vkui-root-android-animation-show-forward .3s cubic-bezier(.4,0,.2,1);animation:vkui-root-android-animation-show-forward .3s cubic-bezier(.4,0,.2,1);-webkit-animation:vkui-root-android-animation-show-forward .3s var(--android-easing);animation:vkui-root-android-animation-show-forward .3s var(--android-easing)}.vkuiRoot--android .vkuiRoot__view--hide-back,.vkuiRoot--vkcom .vkuiRoot__view--hide-back{-webkit-animation:vkui-root-android-animation-hide-back .3s cubic-bezier(.4,0,.2,1) forwards;animation:vkui-root-android-animation-hide-back .3s cubic-bezier(.4,0,.2,1) forwards;-webkit-animation:vkui-root-android-animation-hide-back .3s var(--android-easing) forwards;animation:vkui-root-android-animation-hide-back .3s var(--android-easing) forwards}@-webkit-keyframes vkui-root-android-animation-hide-back{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}to{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}}@keyframes vkui-root-android-animation-hide-back{0%{-webkit-transform:scale(1);transform:scale(1);opacity:1}to{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}}@-webkit-keyframes vkui-root-android-animation-show-forward{0%{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}@keyframes vkui-root-android-animation-show-forward{0%{-webkit-transform:scale(1.05);transform:scale(1.05);opacity:0}to{-webkit-transform:scale(1);transform:scale(1);opacity:1}}
@@ -75,7 +75,7 @@ var Root = function Root(_ref) {
75
75
  _setState({
76
76
  activeView: panel,
77
77
  prevView: activeView,
78
- transition: true,
78
+ transition: !disableAnimation,
79
79
  isBack: _isBack
80
80
  });
81
81
  }
@@ -106,7 +106,7 @@ var Root = function Root(_ref) {
106
106
  to: activeView
107
107
  });
108
108
  }
109
- }, [transition]);
109
+ }, [transition, prevView]);
110
110
  var fallbackTransition = useTimeout(finishTransition, platform === IOS ? 600 : 300);
111
111
  React.useEffect(function () {
112
112
  if (!transition) {
@@ -114,8 +114,8 @@ var Root = function Root(_ref) {
114
114
  return;
115
115
  }
116
116
 
117
- disableAnimation ? finishTransition() : fallbackTransition.set();
118
- }, [disableAnimation, fallbackTransition, finishTransition, transition]);
117
+ fallbackTransition.set();
118
+ }, [fallbackTransition, transition]);
119
119
 
120
120
  var onAnimationEnd = function onAnimationEnd(e) {
121
121
  if (["vkui-root-android-animation-hide-back", "vkui-root-android-animation-show-forward", "vkui-root-ios-animation-hide-back", "vkui-root-ios-animation-show-forward"].includes(e.animationName)) {
@@ -129,9 +129,9 @@ var Root = function Root(_ref) {
129
129
  }
130
130
 
131
131
  return createScopedElement("div", _extends({}, restProps, {
132
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
132
133
  vkuiClass: classNames(getClassName("Root", platform), {
133
- "Root--transition": !disableAnimation && transition,
134
- "Root--no-motion": disableAnimation
134
+ "Root--transition": transition
135
135
  })
136
136
  }), views.map(function (view) {
137
137
  var _scrolls$viewId;
@@ -149,7 +149,8 @@ var Root = function Root(_ref) {
149
149
  ref: function ref(e) {
150
150
  return viewId && (viewNodes[viewId] = e);
151
151
  },
152
- onAnimationEnd: isTransitionTarget ? onAnimationEnd : undefined,
152
+ onAnimationEnd: isTransitionTarget ? onAnimationEnd : undefined // eslint-disable-next-line vkui/no-object-expression-in-arguments
153
+ ,
153
154
  vkuiClass: classNames("Root__view", {
154
155
  "Root__view--hide-back": transition && viewId === prevView && isBack,
155
156
  "Root__view--hide-forward": transition && viewId === prevView && !isBack,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Root/Root.tsx"],"names":["React","classNames","getClassName","IOS","ConfigProviderContext","SplitColContext","AppRootPortal","ScrollContext","NavTransitionProvider","getNavId","warnOnce","useDOM","useIsomorphicLayoutEffect","useTimeout","usePlatform","warn","Root","popout","modal","children","_activeView","activeView","onTransition","nav","restProps","scroll","useContext","platform","document","scrolls","useRef","current","viewNodes","transitionMotionEnabled","animate","disableAnimation","views","Children","toArray","useState","transition","prevView","isBack","_setState","transitionTo","panel","viewIds","map","view","props","indexOf","getScroll","y","finishTransition","useCallback","activeElement","blur","scrollTo","Boolean","from","to","fallbackTransition","useEffect","clear","set","onAnimationEnd","e","includes","animationName","process","env","NODE_ENV","viewId","isTransitionTarget","compensateScroll","undefined","marginTop"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS } from \"../../lib/platform\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { ScrollContext } from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Root.css\";\n\nexport interface RootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n NavIdProps {\n activeView: string;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n}\n\nexport interface RootState {\n activeView: string;\n transition: boolean;\n isBack?: boolean;\n prevView?: string;\n}\n\nconst warn = warnOnce(\"Root\");\nconst Root: React.FC<RootProps> = ({\n popout = null,\n modal,\n children,\n activeView: _activeView,\n onTransition,\n nav,\n ...restProps\n}: RootProps) => {\n const scroll = React.useContext(ScrollContext);\n const platform = usePlatform();\n const { document } = useDOM();\n const scrolls = React.useRef<Record<string, number>>({}).current;\n const viewNodes = React.useRef<Record<string, HTMLElement | null>>(\n {}\n ).current;\n\n const { transitionMotionEnabled = true } = React.useContext(\n ConfigProviderContext\n );\n const { animate } = React.useContext(SplitColContext);\n const disableAnimation = !transitionMotionEnabled || !animate;\n\n const views = React.Children.toArray(children) as React.ReactElement[];\n\n const [{ prevView, activeView, transition, isBack }, _setState] =\n React.useState<RootState>({\n activeView: _activeView,\n transition: false,\n });\n const transitionTo = (panel: string) => {\n if (panel !== activeView) {\n const viewIds = views.map((view) => getNavId(view.props, warn));\n const isBack = viewIds.indexOf(panel) < viewIds.indexOf(activeView);\n scrolls[activeView] = scroll.getScroll().y;\n _setState({\n activeView: panel,\n prevView: activeView,\n transition: true,\n isBack,\n });\n }\n };\n const finishTransition = React.useCallback(\n () => _setState({ activeView, prevView, isBack, transition: false }),\n [activeView, isBack, prevView]\n );\n\n useIsomorphicLayoutEffect(() => {\n (document!.activeElement as HTMLElement).blur();\n }, [!!popout, activeView]);\n\n // Нужен переход\n useIsomorphicLayoutEffect(() => transitionTo(_activeView), [_activeView]);\n useIsomorphicLayoutEffect(() => {\n if (!transition && prevView) {\n // Закончился переход\n scroll.scrollTo(0, isBack ? scrolls[activeView] : 0);\n onTransition &&\n onTransition({\n isBack: Boolean(isBack),\n from: prevView,\n to: activeView,\n });\n }\n }, [transition]);\n\n const fallbackTransition = useTimeout(\n finishTransition,\n platform === IOS ? 600 : 300\n );\n React.useEffect(() => {\n if (!transition) {\n fallbackTransition.clear();\n return;\n }\n disableAnimation ? finishTransition() : fallbackTransition.set();\n }, [disableAnimation, fallbackTransition, finishTransition, transition]);\n\n const onAnimationEnd = (e: React.AnimationEvent) => {\n if (\n [\n \"vkui-root-android-animation-hide-back\",\n \"vkui-root-android-animation-show-forward\",\n \"vkui-root-ios-animation-hide-back\",\n \"vkui-root-ios-animation-show-forward\",\n ].includes(e.animationName)\n ) {\n finishTransition();\n }\n };\n\n if (process.env.NODE_ENV === \"development\") {\n popout &&\n warn(\n \"Свойство popout устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n modal &&\n warn(\n \"Свойство modal устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n }\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(getClassName(\"Root\", platform), {\n \"Root--transition\": !disableAnimation && transition,\n \"Root--no-motion\": disableAnimation,\n })}\n >\n {views.map((view) => {\n const viewId = getNavId(view.props, warn);\n if (viewId !== activeView && !(transition && viewId === prevView)) {\n return null;\n }\n const isTransitionTarget =\n transition && viewId === (isBack ? prevView : activeView);\n const compensateScroll =\n transition &&\n (viewId === prevView || (isBack && viewId === activeView));\n return (\n <div\n key={viewId}\n ref={(e) => viewId && (viewNodes[viewId] = e)}\n onAnimationEnd={isTransitionTarget ? onAnimationEnd : undefined}\n vkuiClass={classNames(\"Root__view\", {\n \"Root__view--hide-back\":\n transition && viewId === prevView && isBack,\n \"Root__view--hide-forward\":\n transition && viewId === prevView && !isBack,\n \"Root__view--show-back\":\n transition && viewId === activeView && isBack,\n \"Root__view--show-forward\":\n transition && viewId === activeView && !isBack,\n \"Root__view--active\": !transition && viewId === activeView,\n })}\n >\n <NavTransitionProvider\n entering={transition && viewId === activeView}\n >\n <div\n vkuiClass=\"Root__scrollCompensation\"\n style={{\n marginTop: compensateScroll\n ? viewId && -(scrolls[viewId] ?? 0)\n : undefined,\n }}\n >\n {view}\n </div>\n </NavTransitionProvider>\n </div>\n );\n })}\n <AppRootPortal>\n {!!popout && <div vkuiClass=\"Root__popout\">{popout}</div>}\n {!!modal && <div vkuiClass=\"Root__modal\">{modal}</div>}\n </AppRootPortal>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Root;\n"],"file":"Root.js"}
1
+ {"version":3,"sources":["../../../../src/components/Root/Root.tsx"],"names":["React","classNames","getClassName","IOS","ConfigProviderContext","SplitColContext","AppRootPortal","ScrollContext","NavTransitionProvider","getNavId","warnOnce","useDOM","useIsomorphicLayoutEffect","useTimeout","usePlatform","warn","Root","popout","modal","children","_activeView","activeView","onTransition","nav","restProps","scroll","useContext","platform","document","scrolls","useRef","current","viewNodes","transitionMotionEnabled","animate","disableAnimation","views","Children","toArray","useState","transition","prevView","isBack","_setState","transitionTo","panel","viewIds","map","view","props","indexOf","getScroll","y","finishTransition","useCallback","activeElement","blur","scrollTo","Boolean","from","to","fallbackTransition","useEffect","clear","set","onAnimationEnd","e","includes","animationName","process","env","NODE_ENV","viewId","isTransitionTarget","compensateScroll","undefined","marginTop"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS } from \"../../lib/platform\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { ScrollContext } from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useTimeout } from \"../../hooks/useTimeout\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./Root.css\";\n\nexport interface RootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n NavIdProps {\n activeView: string;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n}\n\nexport interface RootState {\n activeView: string;\n transition: boolean;\n isBack?: boolean;\n prevView?: string;\n}\n\nconst warn = warnOnce(\"Root\");\nconst Root: React.FC<RootProps> = ({\n popout = null,\n modal,\n children,\n activeView: _activeView,\n onTransition,\n nav,\n ...restProps\n}: RootProps) => {\n const scroll = React.useContext(ScrollContext);\n const platform = usePlatform();\n const { document } = useDOM();\n const scrolls = React.useRef<Record<string, number>>({}).current;\n const viewNodes = React.useRef<Record<string, HTMLElement | null>>(\n {}\n ).current;\n\n const { transitionMotionEnabled = true } = React.useContext(\n ConfigProviderContext\n );\n const { animate } = React.useContext(SplitColContext);\n const disableAnimation = !transitionMotionEnabled || !animate;\n\n const views = React.Children.toArray(children) as React.ReactElement[];\n\n const [{ prevView, activeView, transition, isBack }, _setState] =\n React.useState<RootState>({\n activeView: _activeView,\n transition: false,\n });\n const transitionTo = (panel: string) => {\n if (panel !== activeView) {\n const viewIds = views.map((view) => getNavId(view.props, warn));\n const isBack = viewIds.indexOf(panel) < viewIds.indexOf(activeView);\n scrolls[activeView] = scroll.getScroll().y;\n _setState({\n activeView: panel,\n prevView: activeView,\n transition: !disableAnimation,\n isBack,\n });\n }\n };\n const finishTransition = React.useCallback(\n () => _setState({ activeView, prevView, isBack, transition: false }),\n [activeView, isBack, prevView]\n );\n\n useIsomorphicLayoutEffect(() => {\n (document!.activeElement as HTMLElement).blur();\n }, [!!popout, activeView]);\n\n // Нужен переход\n useIsomorphicLayoutEffect(() => transitionTo(_activeView), [_activeView]);\n useIsomorphicLayoutEffect(() => {\n if (!transition && prevView) {\n // Закончился переход\n scroll.scrollTo(0, isBack ? scrolls[activeView] : 0);\n onTransition &&\n onTransition({\n isBack: Boolean(isBack),\n from: prevView,\n to: activeView,\n });\n }\n }, [transition, prevView]);\n\n const fallbackTransition = useTimeout(\n finishTransition,\n platform === IOS ? 600 : 300\n );\n React.useEffect(() => {\n if (!transition) {\n fallbackTransition.clear();\n return;\n }\n fallbackTransition.set();\n }, [fallbackTransition, transition]);\n\n const onAnimationEnd = (e: React.AnimationEvent) => {\n if (\n [\n \"vkui-root-android-animation-hide-back\",\n \"vkui-root-android-animation-show-forward\",\n \"vkui-root-ios-animation-hide-back\",\n \"vkui-root-ios-animation-show-forward\",\n ].includes(e.animationName)\n ) {\n finishTransition();\n }\n };\n\n if (process.env.NODE_ENV === \"development\") {\n popout &&\n warn(\n \"Свойство popout устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n modal &&\n warn(\n \"Свойство modal устарело и будет удалено в 5.0.0. Используйте одноименное свойство у SplitLayout.\"\n );\n }\n\n return (\n <div\n {...restProps}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"Root\", platform), {\n \"Root--transition\": transition,\n })}\n >\n {views.map((view) => {\n const viewId = getNavId(view.props, warn);\n if (viewId !== activeView && !(transition && viewId === prevView)) {\n return null;\n }\n const isTransitionTarget =\n transition && viewId === (isBack ? prevView : activeView);\n const compensateScroll =\n transition &&\n (viewId === prevView || (isBack && viewId === activeView));\n return (\n <div\n key={viewId}\n ref={(e) => viewId && (viewNodes[viewId] = e)}\n onAnimationEnd={isTransitionTarget ? onAnimationEnd : undefined}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"Root__view\", {\n \"Root__view--hide-back\":\n transition && viewId === prevView && isBack,\n \"Root__view--hide-forward\":\n transition && viewId === prevView && !isBack,\n \"Root__view--show-back\":\n transition && viewId === activeView && isBack,\n \"Root__view--show-forward\":\n transition && viewId === activeView && !isBack,\n \"Root__view--active\": !transition && viewId === activeView,\n })}\n >\n <NavTransitionProvider\n entering={transition && viewId === activeView}\n >\n <div\n vkuiClass=\"Root__scrollCompensation\"\n style={{\n marginTop: compensateScroll\n ? viewId && -(scrolls[viewId] ?? 0)\n : undefined,\n }}\n >\n {view}\n </div>\n </NavTransitionProvider>\n </div>\n );\n })}\n <AppRootPortal>\n {!!popout && <div vkuiClass=\"Root__popout\">{popout}</div>}\n {!!modal && <div vkuiClass=\"Root__modal\">{modal}</div>}\n </AppRootPortal>\n </div>\n );\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default Root;\n"],"file":"Root.js"}
@@ -6,6 +6,7 @@ import Spinner from "../Spinner/Spinner";
6
6
  import { PopoutWrapper } from "../PopoutWrapper/PopoutWrapper";
7
7
  import { getClassName } from "../../helpers/getClassName";
8
8
  import { usePlatform } from "../../hooks/usePlatform";
9
+ import { useScrollLock } from "../AppRoot/ScrollContext";
9
10
  import "./ScreenSpinner.css";
10
11
 
11
12
  var ScreenSpinner = function ScreenSpinner(props) {
@@ -14,6 +15,7 @@ var ScreenSpinner = function ScreenSpinner(props) {
14
15
  restProps = _objectWithoutProperties(props, _excluded);
15
16
 
16
17
  var platform = usePlatform();
18
+ useScrollLock();
17
19
  return createScopedElement(PopoutWrapper, {
18
20
  hasMask: false,
19
21
  vkuiClass: getClassName("ScreenSpinner", platform),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ScreenSpinner/ScreenSpinner.tsx"],"names":["Spinner","PopoutWrapper","getClassName","usePlatform","ScreenSpinner","props","style","className","restProps","platform","defaultProps","size"],"mappings":";;;;AACA,OAAOA,OAAP;AACA,SAASC,aAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA;;AAKA,IAAMC,aAA2C,GAAG,SAA9CA,aAA8C,CAClDC,KADkD,EAE/C;AACH,MAAQC,KAAR,GAA2CD,KAA3C,CAAQC,KAAR;AAAA,MAAeC,SAAf,GAA2CF,KAA3C,CAAeE,SAAf;AAAA,MAA6BC,SAA7B,4BAA2CH,KAA3C;;AACA,MAAMI,QAAQ,GAAGN,WAAW,EAA5B;AAEA,SACE,oBAAC,aAAD;AACE,IAAA,OAAO,EAAE,KADX;AAEE,IAAA,SAAS,EAAED,YAAY,CAAC,eAAD,EAAkBO,QAAlB,CAFzB;AAGE,IAAA,SAAS,EAAEF,SAHb;AAIE,IAAA,KAAK,EAAED;AAJT,KAME;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAgDE,SAAhD,EADF,CANF,CADF;AAYD,CAlBD;;AAoBAJ,aAAa,CAACM,YAAd,GAA6B;AAC3BC,EAAAA,IAAI,EAAE,OADqB;AAE3B,gBAAc;AAFa,CAA7B,C,CAKA;;AACA,eAAeP,aAAf","sourcesContent":["import * as React from \"react\";\nimport Spinner, { SpinnerProps } from \"../Spinner/Spinner\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport \"./ScreenSpinner.css\";\n\nexport type ScreenSpinnerProps = React.HTMLAttributes<HTMLDivElement> &\n SpinnerProps;\n\nconst ScreenSpinner: React.FC<ScreenSpinnerProps> = (\n props: ScreenSpinnerProps\n) => {\n const { style, className, ...restProps } = props;\n const platform = usePlatform();\n\n return (\n <PopoutWrapper\n hasMask={false}\n vkuiClass={getClassName(\"ScreenSpinner\", platform)}\n className={className}\n style={style}\n >\n <div vkuiClass=\"ScreenSpinner__container\">\n <Spinner vkuiClass=\"ScreenSpinner__spinner\" {...restProps} />\n </div>\n </PopoutWrapper>\n );\n};\n\nScreenSpinner.defaultProps = {\n size: \"large\",\n \"aria-label\": \"Пожалуйста, подождите...\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default ScreenSpinner;\n"],"file":"ScreenSpinner.js"}
1
+ {"version":3,"sources":["../../../../src/components/ScreenSpinner/ScreenSpinner.tsx"],"names":["Spinner","PopoutWrapper","getClassName","usePlatform","useScrollLock","ScreenSpinner","props","style","className","restProps","platform","defaultProps","size"],"mappings":";;;;AACA,OAAOA,OAAP;AACA,SAASC,aAAT;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,aAAT;AACA;;AAKA,IAAMC,aAA2C,GAAG,SAA9CA,aAA8C,CAClDC,KADkD,EAE/C;AACH,MAAQC,KAAR,GAA2CD,KAA3C,CAAQC,KAAR;AAAA,MAAeC,SAAf,GAA2CF,KAA3C,CAAeE,SAAf;AAAA,MAA6BC,SAA7B,4BAA2CH,KAA3C;;AACA,MAAMI,QAAQ,GAAGP,WAAW,EAA5B;AAEAC,EAAAA,aAAa;AAEb,SACE,oBAAC,aAAD;AACE,IAAA,OAAO,EAAE,KADX;AAEE,IAAA,SAAS,EAAEF,YAAY,CAAC,eAAD,EAAkBQ,QAAlB,CAFzB;AAGE,IAAA,SAAS,EAAEF,SAHb;AAIE,IAAA,KAAK,EAAED;AAJT,KAME;AAAK,IAAA,SAAS,EAAC;AAAf,KACE,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC;AAAnB,KAAgDE,SAAhD,EADF,CANF,CADF;AAYD,CApBD;;AAsBAJ,aAAa,CAACM,YAAd,GAA6B;AAC3BC,EAAAA,IAAI,EAAE,OADqB;AAE3B,gBAAc;AAFa,CAA7B,C,CAKA;;AACA,eAAeP,aAAf","sourcesContent":["import * as React from \"react\";\nimport Spinner, { SpinnerProps } from \"../Spinner/Spinner\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useScrollLock } from \"../AppRoot/ScrollContext\";\nimport \"./ScreenSpinner.css\";\n\nexport type ScreenSpinnerProps = React.HTMLAttributes<HTMLDivElement> &\n SpinnerProps;\n\nconst ScreenSpinner: React.FC<ScreenSpinnerProps> = (\n props: ScreenSpinnerProps\n) => {\n const { style, className, ...restProps } = props;\n const platform = usePlatform();\n\n useScrollLock();\n\n return (\n <PopoutWrapper\n hasMask={false}\n vkuiClass={getClassName(\"ScreenSpinner\", platform)}\n className={className}\n style={style}\n >\n <div vkuiClass=\"ScreenSpinner__container\">\n <Spinner vkuiClass=\"ScreenSpinner__spinner\" {...restProps} />\n </div>\n </PopoutWrapper>\n );\n};\n\nScreenSpinner.defaultProps = {\n size: \"large\",\n \"aria-label\": \"Пожалуйста, подождите...\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default ScreenSpinner;\n"],"file":"ScreenSpinner.js"}
@@ -1 +1 @@
1
- .vkuiSearch{overflow:hidden;font-weight:400;font-family:-apple-system,system-ui,Helvetica Neue,Roboto,sans-serif;font-family:var(--font-common);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);line-height:normal}.vkuiSearch__in{position:relative}.vkuiSearch__width{height:36px;height:var(--search_default_height);white-space:nowrap;color:transparent;width:10000px}.vkuiSearch__control{display:flex;justify-content:flex-start;align-items:center;position:absolute;left:0;top:0;width:calc(100% - 1px);height:100%;border-radius:10px}.vkuiSearch__input{-webkit-appearance:none;border:0;margin:0;height:36px;height:var(--search_default_height);position:relative;padding:0 22px 0 36px;box-sizing:border-box;font-size:17px;border-radius:10px;max-width:100%;flex-grow:1;min-width:0;background-color:transparent;z-index:2;color:#000;color:var(--text_primary)}.vkuiSearch__input::-webkit-search-decoration,.vkuiSearch__input::-webkit-search-cancel-button,.vkuiSearch__input::-webkit-search-results-button,.vkuiSearch__input::-webkit-search-results-decoration{display:none}.vkuiSearch--has-after .vkuiSearch__input{border-radius:10px 0 0 10px}.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon .vkuiSearch__input,.vkuiSearch--has-value .vkuiSearch__placeholder,.vkuiSearch--has-icon .vkuiSearch__placeholder{padding-right:40px}.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:80px}.vkuiSearch__after-width{font-size:17px;height:36px;height:var(--search_default_height);line-height:36px;line-height:var(--search_default_height);padding-left:12px;padding-right:4px;flex-shrink:0;pointer-events:none;cursor:text}.vkuiSearch__placeholder{position:absolute;left:0;width:100%;cursor:text;z-index:1;text-align:left;height:36px;height:var(--search_default_height);font-size:0;padding-left:12px;padding-right:22px;pointer-events:none;box-sizing:border-box;display:flex}.vkuiSearch__placeholder-in{height:36px;height:var(--search_default_height);display:flex;align-items:center;overflow:hidden;flex-grow:1;max-width:100%}.vkuiSearch__placeholder-text{margin-left:8px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vkuiSearch--has-value .vkuiSearch__placeholder-text{opacity:0}.vkuiSearch__icons{position:absolute;right:100%;top:0;display:flex;align-items:center;justify-content:center;color:#818c99;color:var(--search_bar_field_tint)}.vkuiSearch__icon{width:40px;height:36px;height:var(--search_default_height);display:flex;align-items:center;justify-content:center}.vkuiSearch__after{position:absolute;left:100%;top:0;line-height:36px;line-height:var(--search_default_height);z-index:2;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing);cursor:default}.vkuiSearch--focused .vkuiSearch__after,.vkuiSearch--has-value .vkuiSearch__after{-webkit-transform:translate(-100%);transform:translate(-100%)}.vkuiSearch__after::before{position:absolute;right:calc(100% - 1px);display:block;height:100%;width:10px;content:"";pointer-events:none}.vkuiSearch__after-in{position:relative;z-index:2;cursor:pointer;font-size:17px;padding-left:12px;padding-right:4px}.vkuiSearch__after::after{position:absolute;right:100%;display:block;height:100%;width:10px;content:"";top:0;border-radius:0 10px 10px 0;cursor:text;pointer-events:none}.vkuiGroup--plain .vkuiSearch{padding-top:4px}.vkuiSearch{background:#fff;background:var(--search_bar_background)}.vkuiSearch__control{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiSearch__placeholder{color:#818c99;color:var(--search_bar_field_tint)}.vkuiSearch__after-width{background:#ebedf0;background:var(--search_bar_field_background);color:#ebedf0;color:var(--search_bar_field_background)}.vkuiSearch__after{background:#fff;background:var(--search_bar_background);color:#2688eb;color:var(--accent)}.vkuiSearch__after::after{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__after::before{background-color:#fff;background-color:var(--search_bar_background)}.vkuiPanelHeader .vkuiSearch{background:#fff;background:var(--header_background)}.vkuiPanelHeader .vkuiSearch__control{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiPanelHeader .vkuiSearch__placeholder{color:#818c99;color:var(--header_search_field_tint)}.vkuiPanelHeader .vkuiSearch__after-width{background:#ebedf0;background:var(--header_search_field_background);color:#ebedf0;color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after{background:#fff;background:var(--header_background);color:#2688eb;color:var(--header_tint)}.vkuiPanelHeader .vkuiSearch__after::after{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after::before{background-color:#fff;background-color:var(--header_background)}.vkuiSearch--ios{padding:8px 12px}.vkuiSearch--android{padding:8px 16px}.vkuiSearch--vkcom,.vkuiPanelHeader--vkcom .vkuiSearch{background:0 0}.vkuiSearch--vkcom .vkuiSearch__in{padding-top:6px;padding-bottom:6px}.vkuiSearch--vkcom .vkuiSearch__input{font-size:15px;line-height:20px;padding-left:40px}.vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:16px}.vkuiSearch--vkcom .vkuiSearch__icons{top:4px;right:calc(100% + 8px)}.vkuiSearch--vkcom.vkuiSearch--has-value .vkuiSearch__input{padding-right:56px}.vkuiSearch--vkcom.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input{padding-right:92px}.vkuiSearch--vkcom .vkuiSearch__icon{width:40px;height:40px}.vkuiSearch--vkcom .vkuiSearch__icon:hover{background-color:rgba(0,0,0,.04);background-color:var(--background_hover);border-radius:50%}.vkuiSearch--vkcom .vkuiSearch__control{background-color:transparent}.vkuiPanelHeader--vkcom .vkuiSearch__separator{display:none}.vkuiSearch--vkcom .vkuiSearch__separator{color:#e1e3e6;color:var(--input_border)}.vkuiGroup--card .vkuiSearch--vkcom{margin:0-8px}.vkuiGroup--card .vkuiSearch--vkcom:first-child{margin-top:-8px}.vkuiGroup--card .vkuiSearch--vkcom:not(:last-child){margin-bottom:8px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:20px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__input{padding-left:44px}
1
+ .vkuiSearch{overflow:hidden;font-weight:400;font-family:-apple-systemsystem-uiHelvetica NeueRobotosans-serif;font-family:var(--font-common);-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0);line-height:normal}.vkuiSearch__in{position:relative}.vkuiSearch__width{height:36px;height:var(--search_default_height);white-space:nowrap;color:transparent;width:10000px}.vkuiSearch__control{display:flex;justify-content:flex-start;align-items:center;position:absolute;left:0;top:0;width:calc(100% - 1px);height:100%;border-radius:10px}.vkuiSearch__input{-webkit-appearance:none;border:0;margin:0;height:36px;height:var(--search_default_height);position:relative;padding:0 22px 0 36px;box-sizing:border-box;font-size:17px;border-radius:10px;max-width:100%;flex-grow:1;min-width:0;background-color:transparent;z-index:2;color:#000;color:var(--text_primary);letter-spacing:var(--vk-sans-ls-25)}.vkuiSearch__input::-webkit-search-decoration,.vkuiSearch__input::-webkit-search-cancel-button,.vkuiSearch__input::-webkit-search-results-button,.vkuiSearch__input::-webkit-search-results-decoration{display:none}.vkuiSearch--has-after .vkuiSearch__input{border-radius:10px 0 0 10px}.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon .vkuiSearch__input,.vkuiSearch--has-value .vkuiSearch__placeholder,.vkuiSearch--has-icon .vkuiSearch__placeholder{padding-right:40px}.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input,.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__placeholder{padding-right:80px}.vkuiSearch__after-width{font-size:17px;height:36px;height:var(--search_default_height);line-height:36px;line-height:var(--search_default_height);padding-left:12px;padding-right:4px;flex-shrink:0;pointer-events:none;cursor:text;letter-spacing:var(--vk-sans-ls-25)}.vkuiSearch__placeholder{position:absolute;left:0;width:100%;cursor:text;z-index:1;text-align:left;height:36px;height:var(--search_default_height);font-size:0;padding-left:12px;padding-right:22px;pointer-events:none;box-sizing:border-box;display:flex}.vkuiSearch__placeholder-in{height:36px;height:var(--search_default_height);display:flex;align-items:center;overflow:hidden;flex-grow:1;max-width:100%}.vkuiSearch__placeholder-text{margin-left:8px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vkuiSearch--has-value .vkuiSearch__placeholder-text{opacity:0}.vkuiSearch__icons{position:absolute;right:100%;top:0;display:flex;align-items:center;justify-content:center;color:#818c99;color:var(--search_bar_field_tint)}.vkuiSearch__icon{width:40px;height:36px;height:var(--search_default_height);display:flex;align-items:center;justify-content:center}.vkuiSearch__after{position:absolute;left:100%;top:0;line-height:36px;line-height:var(--search_default_height);z-index:2;-webkit-transform:translate(0);transform:translate(0);transition:-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1);transition:transform .3s cubic-bezier(.36,.66,.04,1),-webkit-transform .3s cubic-bezier(.36,.66,.04,1);transition:-webkit-transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing);transition:transform .3s var(--ios-easing),-webkit-transform .3s var(--ios-easing);cursor:default}.vkuiSearch--focused .vkuiSearch__after,.vkuiSearch--has-value .vkuiSearch__after{-webkit-transform:translate(-100%);transform:translate(-100%)}.vkuiSearch__after::before{position:absolute;right:calc(100% - 1px);display:block;height:100%;width:10px;content:"";pointer-events:none}.vkuiSearch__after-in{position:relative;z-index:2;cursor:pointer;font-size:17px;padding-left:12px;padding-right:4px;letter-spacing:var(--vk-sans-ls-25)}.vkuiSearch__after::after{position:absolute;right:100%;display:block;height:100%;width:10px;content:"";top:0;border-radius:0 10px 10px 0;cursor:text;pointer-events:none}.vkuiGroup--plain .vkuiSearch{padding-top:4px}.vkuiSearch{background:#fff;background:var(--search_bar_background)}.vkuiSearch__control{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiSearch__placeholder{color:#818c99;color:var(--search_bar_field_tint)}.vkuiSearch__after-width{background:#ebedf0;background:var(--search_bar_field_background);color:#ebedf0;color:var(--search_bar_field_background)}.vkuiSearch__after{background:#fff;background:var(--search_bar_background);color:#2688eb;color:var(--accent)}.vkuiSearch__after::after{background-color:#ebedf0;background-color:var(--search_bar_field_background)}.vkuiSearch__after::before{background-color:#fff;background-color:var(--search_bar_background)}.vkuiPanelHeader .vkuiSearch{background:#fff;background:var(--header_background)}.vkuiPanelHeader .vkuiSearch__control{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__input{color:#000;color:var(--text_primary)}.vkuiPanelHeader .vkuiSearch__placeholder{color:#818c99;color:var(--header_search_field_tint)}.vkuiPanelHeader .vkuiSearch__after-width{background:#ebedf0;background:var(--header_search_field_background);color:#ebedf0;color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after{background:#fff;background:var(--header_background);color:#2688eb;color:var(--header_tint)}.vkuiPanelHeader .vkuiSearch__after::after{background-color:#ebedf0;background-color:var(--header_search_field_background)}.vkuiPanelHeader .vkuiSearch__after::before{background-color:#fff;background-color:var(--header_background)}.vkuiSearch--ios{padding:8px 12px}.vkuiSearch--android{padding:8px 16px}.vkuiSearch--vkcom,.vkuiPanelHeader--vkcom .vkuiSearch{background:0 0}.vkuiSearch--vkcom .vkuiSearch__in{padding-top:6px;padding-bottom:6px}.vkuiSearch--vkcom .vkuiSearch__input{font-size:15px;line-height:20px;padding-left:40px;letter-spacing:var(--vk-sans-ls-17)}.vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:16px}.vkuiSearch--vkcom .vkuiSearch__icons{top:4px;right:calc(100% + 8px)}.vkuiSearch--vkcom.vkuiSearch--has-value .vkuiSearch__input{padding-right:56px}.vkuiSearch--vkcom.vkuiSearch--has-icon.vkuiSearch--has-value .vkuiSearch__input{padding-right:92px}.vkuiSearch--vkcom .vkuiSearch__icon{width:40px;height:40px}.vkuiSearch--vkcom .vkuiSearch__icon:hover{background-color:rgba(0,0,0,.04);background-color:var(--background_hover);border-radius:50%}.vkuiSearch--vkcom .vkuiSearch__control{background-color:transparent}.vkuiPanelHeader--vkcom .vkuiSearch__separator{display:none}.vkuiSearch--vkcom .vkuiSearch__separator{color:#e1e3e6;color:var(--input_border)}.vkuiGroup--card .vkuiSearch--vkcom{margin:0-8px}.vkuiGroup--card .vkuiSearch--vkcom:first-child{margin-top:-8px}.vkuiGroup--card .vkuiSearch--vkcom:not(:last-child){margin-bottom:8px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__placeholder{padding-left:20px}.vkuiGroup--card .vkuiSearch--vkcom .vkuiSearch__input{padding-left:44px}
@@ -13,7 +13,7 @@ import { IOS, VKCOM, ANDROID } from "../../lib/platform";
13
13
  import { Touch } from "../Touch/Touch";
14
14
  import { noop } from "../../lib/utils";
15
15
  import Text from "../Typography/Text/Text";
16
- import Title from "../Typography/Title/Title";
16
+ import { Title } from "../Typography/Title/Title";
17
17
  import Headline from "../Typography/Headline/Headline";
18
18
  import Separator from "../Separator/Separator";
19
19
  import { useExternRef } from "../../hooks/useExternRef";
@@ -105,6 +105,7 @@ var Search = function Search(_ref2) {
105
105
  onCancel();
106
106
  }, [inputRef, onCancel]);
107
107
  return createScopedElement("div", {
108
+ // eslint-disable-next-line vkui/no-object-expression-in-arguments
108
109
  vkuiClass: classNames(getClassName("Search", platform), {
109
110
  "Search--focused": isFocused,
110
111
  "Search--has-value": !!value,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Search/Search.tsx"],"names":["React","classNames","withPlatform","getClassName","Icon16SearchOutline","Icon16Clear","Icon24Cancel","IOS","VKCOM","ANDROID","Touch","noop","Text","Title","Headline","Separator","useExternRef","useEnsuredControl","SearchPlaceholderTypography","platform","children","restProps","Search","before","className","defaultValue","placeholder","after","getRef","icon","onIconClick","style","inputProps","inputRef","useState","isFocused","setFocused","value","onChange","onFocus","e","onBlur","onCancel","useCallback","nativeInputValueSetter","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","call","current","ev2","Event","bubbles","dispatchEvent","onIconClickStart","originalEvent","onIconCancelClickStart","preventDefault","focus","defaultProps","autoComplete"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport {\n Icon16SearchOutline,\n Icon16Clear,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { HasPlatform, HasRef } from \"../../types\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { VKUITouchEvent } from \"../../lib/touch\";\nimport { noop } from \"../../lib/utils\";\nimport Text from \"../Typography/Text/Text\";\nimport Title from \"../Typography/Title/Title\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Separator from \"../Separator/Separator\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport \"./Search.css\";\n\nexport type InputRef = (element: HTMLInputElement) => void;\n\ninterface SearchPlaceholderTypographyProps\n extends HasPlatform,\n React.HTMLAttributes<HTMLElement> {}\n\nconst SearchPlaceholderTypography: React.FC<\n SearchPlaceholderTypographyProps\n> = ({ platform, children, ...restProps }) => {\n switch (platform) {\n case IOS:\n return (\n <Title {...restProps} level=\"3\" weight=\"3\">\n {children}\n </Title>\n );\n case VKCOM:\n return (\n <Text {...restProps} weight=\"regular\">\n {children}\n </Text>\n );\n case ANDROID:\n default:\n return (\n <Headline {...restProps} weight=\"regular\">\n {children}\n </Headline>\n );\n }\n};\n\nexport interface SearchProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasPlatform {\n /**\n * iOS only. Текст кнопки \"отмена\", которая чистит текстовое поле и убирает фокус.\n */\n after?: React.ReactNode;\n before?: React.ReactNode;\n icon?: React.ReactNode;\n onIconClick?: (e: VKUITouchEvent) => void;\n defaultValue?: string;\n}\n\nconst Search: React.FC<SearchProps> = ({\n before,\n className,\n defaultValue,\n placeholder,\n after,\n getRef,\n platform,\n icon,\n onIconClick = noop,\n style,\n ...inputProps\n}) => {\n const inputRef = useExternRef(getRef);\n const [isFocused, setFocused] = React.useState(false);\n const [value, onChange] = useEnsuredControl(inputProps, { defaultValue });\n\n const onFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n inputProps.onFocus && inputProps.onFocus(e);\n };\n\n const onBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false);\n inputProps.onBlur && inputProps.onBlur(e);\n };\n\n const onCancel = React.useCallback(() => {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n \"value\"\n )?.set;\n nativeInputValueSetter?.call(inputRef.current, \"\");\n\n const ev2 = new Event(\"input\", { bubbles: true });\n inputRef.current?.dispatchEvent(ev2);\n }, [inputRef]);\n\n const onIconClickStart = React.useCallback(\n (e: TouchEvent) => onIconClick(e.originalEvent),\n [onIconClick]\n );\n\n const onIconCancelClickStart = React.useCallback(\n (e: TouchEvent) => {\n e.originalEvent.preventDefault();\n inputRef.current?.focus();\n onCancel();\n },\n [inputRef, onCancel]\n );\n\n return (\n <div\n vkuiClass={classNames(getClassName(\"Search\", platform), {\n \"Search--focused\": isFocused,\n \"Search--has-value\": !!value,\n \"Search--has-after\": !!after,\n \"Search--has-icon\": !!icon,\n })}\n className={className}\n style={style}\n >\n <div vkuiClass=\"Search__in\">\n <div vkuiClass=\"Search__width\" />\n <label vkuiClass=\"Search__control\">\n <input\n type=\"search\"\n {...inputProps}\n ref={inputRef}\n vkuiClass=\"Search__input\"\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n value={value}\n />\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n <div vkuiClass=\"Search__placeholder\">\n <div vkuiClass=\"Search__placeholder-in\">\n {before}\n <SearchPlaceholderTypography\n vkuiClass=\"Search__placeholder-text\"\n platform={platform}\n >\n {placeholder}\n </SearchPlaceholderTypography>\n </div>\n {isFocused && platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n </div>\n </label>\n <div vkuiClass=\"Search__after\" onClick={onCancel}>\n <div vkuiClass=\"Search__icons\">\n {icon && (\n <Touch onStart={onIconClickStart} vkuiClass=\"Search__icon\">\n {icon}\n </Touch>\n )}\n {!!value && (\n <Touch onStart={onIconCancelClickStart} vkuiClass=\"Search__icon\">\n {platform === IOS ? <Icon16Clear /> : <Icon24Cancel />}\n </Touch>\n )}\n </div>\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-in\">{after}</div>\n )}\n </div>\n </div>\n {platform === VKCOM && <Separator vkuiClass=\"Search__separator\" wide />}\n </div>\n );\n};\n\nSearch.defaultProps = {\n autoComplete: \"off\",\n defaultValue: \"\",\n placeholder: \"Поиск\",\n after: \"Отмена\",\n before: <Icon16SearchOutline />,\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withPlatform(Search);\n"],"file":"Search.js"}
1
+ {"version":3,"sources":["../../../../src/components/Search/Search.tsx"],"names":["React","classNames","withPlatform","getClassName","Icon16SearchOutline","Icon16Clear","Icon24Cancel","IOS","VKCOM","ANDROID","Touch","noop","Text","Title","Headline","Separator","useExternRef","useEnsuredControl","SearchPlaceholderTypography","platform","children","restProps","Search","before","className","defaultValue","placeholder","after","getRef","icon","onIconClick","style","inputProps","inputRef","useState","isFocused","setFocused","value","onChange","onFocus","e","onBlur","onCancel","useCallback","nativeInputValueSetter","Object","getOwnPropertyDescriptor","HTMLInputElement","prototype","set","call","current","ev2","Event","bubbles","dispatchEvent","onIconClickStart","originalEvent","onIconCancelClickStart","preventDefault","focus","defaultProps","autoComplete"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport {\n Icon16SearchOutline,\n Icon16Clear,\n Icon24Cancel,\n} from \"@vkontakte/icons\";\nimport { IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { HasPlatform, HasRef } from \"../../types\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { VKUITouchEvent } from \"../../lib/touch\";\nimport { noop } from \"../../lib/utils\";\nimport Text from \"../Typography/Text/Text\";\nimport { Title } from \"../Typography/Title/Title\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport Separator from \"../Separator/Separator\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useEnsuredControl } from \"../../hooks/useEnsuredControl\";\nimport \"./Search.css\";\n\nexport type InputRef = (element: HTMLInputElement) => void;\n\ninterface SearchPlaceholderTypographyProps\n extends HasPlatform,\n React.HTMLAttributes<HTMLElement> {}\n\nconst SearchPlaceholderTypography: React.FC<\n SearchPlaceholderTypographyProps\n> = ({ platform, children, ...restProps }) => {\n switch (platform) {\n case IOS:\n return (\n <Title {...restProps} level=\"3\" weight=\"3\">\n {children}\n </Title>\n );\n case VKCOM:\n return (\n <Text {...restProps} weight=\"regular\">\n {children}\n </Text>\n );\n case ANDROID:\n default:\n return (\n <Headline {...restProps} weight=\"regular\">\n {children}\n </Headline>\n );\n }\n};\n\nexport interface SearchProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasPlatform {\n /**\n * iOS only. Текст кнопки \"отмена\", которая чистит текстовое поле и убирает фокус.\n */\n after?: React.ReactNode;\n before?: React.ReactNode;\n icon?: React.ReactNode;\n onIconClick?: (e: VKUITouchEvent) => void;\n defaultValue?: string;\n}\n\nconst Search: React.FC<SearchProps> = ({\n before,\n className,\n defaultValue,\n placeholder,\n after,\n getRef,\n platform,\n icon,\n onIconClick = noop,\n style,\n ...inputProps\n}) => {\n const inputRef = useExternRef(getRef);\n const [isFocused, setFocused] = React.useState(false);\n const [value, onChange] = useEnsuredControl(inputProps, { defaultValue });\n\n const onFocus = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(true);\n inputProps.onFocus && inputProps.onFocus(e);\n };\n\n const onBlur = (e: React.FocusEvent<HTMLInputElement>) => {\n setFocused(false);\n inputProps.onBlur && inputProps.onBlur(e);\n };\n\n const onCancel = React.useCallback(() => {\n // eslint-disable-next-line @typescript-eslint/unbound-method\n const nativeInputValueSetter = Object.getOwnPropertyDescriptor(\n HTMLInputElement.prototype,\n \"value\"\n )?.set;\n nativeInputValueSetter?.call(inputRef.current, \"\");\n\n const ev2 = new Event(\"input\", { bubbles: true });\n inputRef.current?.dispatchEvent(ev2);\n }, [inputRef]);\n\n const onIconClickStart = React.useCallback(\n (e: TouchEvent) => onIconClick(e.originalEvent),\n [onIconClick]\n );\n\n const onIconCancelClickStart = React.useCallback(\n (e: TouchEvent) => {\n e.originalEvent.preventDefault();\n inputRef.current?.focus();\n onCancel();\n },\n [inputRef, onCancel]\n );\n\n return (\n <div\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"Search\", platform), {\n \"Search--focused\": isFocused,\n \"Search--has-value\": !!value,\n \"Search--has-after\": !!after,\n \"Search--has-icon\": !!icon,\n })}\n className={className}\n style={style}\n >\n <div vkuiClass=\"Search__in\">\n <div vkuiClass=\"Search__width\" />\n <label vkuiClass=\"Search__control\">\n <input\n type=\"search\"\n {...inputProps}\n ref={inputRef}\n vkuiClass=\"Search__input\"\n onFocus={onFocus}\n onBlur={onBlur}\n onChange={onChange}\n value={value}\n />\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n <div vkuiClass=\"Search__placeholder\">\n <div vkuiClass=\"Search__placeholder-in\">\n {before}\n <SearchPlaceholderTypography\n vkuiClass=\"Search__placeholder-text\"\n platform={platform}\n >\n {placeholder}\n </SearchPlaceholderTypography>\n </div>\n {isFocused && platform === IOS && after && (\n <div vkuiClass=\"Search__after-width\">{after}</div>\n )}\n </div>\n </label>\n <div vkuiClass=\"Search__after\" onClick={onCancel}>\n <div vkuiClass=\"Search__icons\">\n {icon && (\n <Touch onStart={onIconClickStart} vkuiClass=\"Search__icon\">\n {icon}\n </Touch>\n )}\n {!!value && (\n <Touch onStart={onIconCancelClickStart} vkuiClass=\"Search__icon\">\n {platform === IOS ? <Icon16Clear /> : <Icon24Cancel />}\n </Touch>\n )}\n </div>\n {platform === IOS && after && (\n <div vkuiClass=\"Search__after-in\">{after}</div>\n )}\n </div>\n </div>\n {platform === VKCOM && <Separator vkuiClass=\"Search__separator\" wide />}\n </div>\n );\n};\n\nSearch.defaultProps = {\n autoComplete: \"off\",\n defaultValue: \"\",\n placeholder: \"Поиск\",\n after: \"Отмена\",\n before: <Icon16SearchOutline />,\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default withPlatform(Search);\n"],"file":"Search.js"}