@vkontakte/vkui 5.2.0 → 5.2.2

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 (1184) hide show
  1. package/README.md +6 -1
  2. package/dist/cjs/components/ActionSheet/ActionSheet.js +8 -8
  3. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  4. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +4 -4
  5. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  6. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  7. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  8. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +8 -8
  9. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  10. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  11. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  12. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  13. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  14. package/dist/cjs/components/Alert/Alert.d.ts +1 -1
  15. package/dist/cjs/components/Alert/Alert.js +13 -15
  16. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  17. package/dist/cjs/components/AppRoot/AppRoot.js +20 -12
  18. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  19. package/dist/cjs/components/AppRoot/AppRootPortal.js +2 -2
  20. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  21. package/dist/cjs/components/AppRoot/ScrollContext.js +1 -1
  22. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  23. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
  24. package/dist/cjs/components/Avatar/Avatar.js +1 -1
  25. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  26. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  27. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  28. package/dist/cjs/components/Banner/Banner.js +2 -2
  29. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  30. package/dist/cjs/components/BaseGallery/BaseGallery.js +4 -4
  31. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  32. package/dist/cjs/components/BaseGallery/helpers.d.ts +1 -1
  33. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  34. package/dist/cjs/components/BaseGallery/types.d.ts +1 -1
  35. package/dist/cjs/components/BaseGallery/types.js.map +1 -1
  36. package/dist/cjs/components/Button/Button.d.ts +2 -2
  37. package/dist/cjs/components/Button/Button.js +15 -11
  38. package/dist/cjs/components/Button/Button.js.map +1 -1
  39. package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  40. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  41. package/dist/cjs/components/Calendar/Calendar.d.ts +2 -2
  42. package/dist/cjs/components/Calendar/Calendar.js +6 -6
  43. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  44. package/dist/cjs/components/CalendarDay/CalendarDay.js +1 -1
  45. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  46. package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
  47. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  48. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +4 -4
  49. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  50. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +2 -2
  51. package/dist/cjs/components/CalendarRange/CalendarRange.js +3 -3
  52. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  53. package/dist/cjs/components/CalendarTime/CalendarTime.js +3 -3
  54. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  55. package/dist/cjs/components/CardGrid/CardGrid.js +8 -3
  56. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  57. package/dist/cjs/components/CardScroll/CardScroll.js +2 -6
  58. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  59. package/dist/cjs/components/Cell/Cell.d.ts +1 -1
  60. package/dist/cjs/components/Cell/Cell.js +6 -6
  61. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  62. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  63. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  64. package/dist/cjs/components/Cell/CellDragger/CellDragger.js +1 -1
  65. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  66. package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
  67. package/dist/cjs/components/Checkbox/Checkbox.js +16 -10
  68. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  69. package/dist/cjs/components/Chip/Chip.js +11 -6
  70. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  71. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -1
  72. package/dist/cjs/components/ChipsInput/ChipsInput.js +1 -1
  73. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  74. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +4 -4
  75. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  76. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +5 -5
  77. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  78. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +5 -5
  79. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  80. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  81. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  82. package/dist/cjs/components/ContentCard/ContentCard.d.ts +1 -1
  83. package/dist/cjs/components/ContentCard/ContentCard.js +2 -2
  84. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  85. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +4 -4
  86. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  87. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
  88. package/dist/cjs/components/CustomSelect/CustomSelect.js +8 -8
  89. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  90. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  91. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  92. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  93. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +10 -5
  94. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  95. package/dist/cjs/components/DateInput/DateInput.d.ts +2 -2
  96. package/dist/cjs/components/DateInput/DateInput.js +15 -10
  97. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  98. package/dist/cjs/components/DatePicker/DatePicker.js +2 -2
  99. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  100. package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  101. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +15 -10
  102. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  103. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  104. package/dist/cjs/components/Epic/Epic.js +1 -1
  105. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  106. package/dist/cjs/components/Epic/ScrollSaver.js +1 -1
  107. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  108. package/dist/cjs/components/File/File.d.ts +1 -1
  109. package/dist/cjs/components/File/File.js +2 -2
  110. package/dist/cjs/components/File/File.js.map +1 -1
  111. package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -5
  112. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  113. package/dist/cjs/components/FormField/FormField.js +8 -3
  114. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  115. package/dist/cjs/components/FormItem/FormItem.js +11 -6
  116. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  117. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  118. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  119. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  120. package/dist/cjs/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  121. package/dist/cjs/components/Group/Group.js +14 -8
  122. package/dist/cjs/components/Group/Group.js.map +1 -1
  123. package/dist/cjs/components/Header/Header.js +3 -3
  124. package/dist/cjs/components/Header/Header.js.map +1 -1
  125. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +3 -3
  126. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  127. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +3 -3
  128. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  129. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  130. package/dist/cjs/components/HoverPopper/HoverPopper.js +2 -2
  131. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  132. package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
  133. package/dist/cjs/components/IconButton/IconButton.js +13 -10
  134. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  135. package/dist/cjs/components/Image/Image.d.ts +1 -1
  136. package/dist/cjs/components/Image/Image.js.map +1 -1
  137. package/dist/cjs/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  138. package/dist/cjs/components/ImageBase/ImageBase.d.ts +1 -1
  139. package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
  140. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  141. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  142. package/dist/cjs/components/ImageBase/validators.js +1 -1
  143. package/dist/cjs/components/ImageBase/validators.js.map +1 -1
  144. package/dist/cjs/components/InfoRow/InfoRow.js +1 -1
  145. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  146. package/dist/cjs/components/Input/Input.d.ts +2 -2
  147. package/dist/cjs/components/Input/Input.js +12 -5
  148. package/dist/cjs/components/Input/Input.js.map +1 -1
  149. package/dist/cjs/components/InputLike/InputLike.js +1 -1
  150. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  151. package/dist/cjs/components/Link/Link.js.map +1 -1
  152. package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
  153. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
  154. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  155. package/dist/cjs/components/ModalCard/ModalCard.js +5 -5
  156. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  157. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +6 -6
  158. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  159. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -1
  160. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  161. package/dist/cjs/components/ModalPage/ModalPage.js +9 -12
  162. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  163. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +4 -4
  164. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  165. package/dist/cjs/components/ModalRoot/ModalRoot.js +12 -12
  166. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  167. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +2 -2
  168. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  169. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +6 -6
  170. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  171. package/dist/cjs/components/ModalRoot/useModalManager.js +3 -3
  172. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  173. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -1
  174. package/dist/cjs/components/NativeSelect/NativeSelect.js +12 -9
  175. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  176. package/dist/cjs/components/Pagination/Pagination.js +12 -6
  177. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  178. package/dist/cjs/components/Panel/Panel.d.ts +1 -1
  179. package/dist/cjs/components/Panel/Panel.js +13 -7
  180. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  181. package/dist/cjs/components/PanelHeader/PanelHeader.js +12 -11
  182. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  183. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +7 -6
  184. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  185. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  186. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  187. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  188. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  189. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  190. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  191. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  192. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  193. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  194. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  195. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  196. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  197. package/dist/cjs/components/Placeholder/Placeholder.js +1 -1
  198. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  199. package/dist/cjs/components/PlatformProvider/PlatformProvider.js +2 -2
  200. package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
  201. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
  202. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  203. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
  204. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  205. package/dist/cjs/components/Popover/Popover.js +5 -5
  206. package/dist/cjs/components/Popover/Popover.js.map +1 -1
  207. package/dist/cjs/components/Popper/Popper.d.ts +1 -1
  208. package/dist/cjs/components/Popper/Popper.js +3 -3
  209. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  210. package/dist/cjs/components/PopperArrow/PopperArrow.d.ts +1 -1
  211. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  212. package/dist/cjs/components/Progress/Progress.js +1 -1
  213. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  214. package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -2
  215. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  216. package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  217. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +8 -8
  218. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  219. package/dist/cjs/components/Radio/Radio.js +12 -7
  220. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  221. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  222. package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
  223. package/dist/cjs/components/RangeSlider/UniversalSlider.js +10 -5
  224. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  225. package/dist/cjs/components/Removable/Removable.js +4 -8
  226. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  227. package/dist/cjs/components/RichCell/RichCell.d.ts +5 -2
  228. package/dist/cjs/components/RichCell/RichCell.js +11 -4
  229. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  230. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  231. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js +23 -0
  232. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  233. package/dist/cjs/components/RichTooltip/RichTooltip.js +1 -1
  234. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  235. package/dist/cjs/components/Root/Root.js +8 -8
  236. package/dist/cjs/components/Root/Root.js.map +1 -1
  237. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +5 -5
  238. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  239. package/dist/cjs/components/Search/Search.d.ts +1 -1
  240. package/dist/cjs/components/Search/Search.js +13 -8
  241. package/dist/cjs/components/Search/Search.js.map +1 -1
  242. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +18 -18
  243. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  244. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  245. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  246. package/dist/cjs/components/Select/Select.js +3 -3
  247. package/dist/cjs/components/Select/Select.js.map +1 -1
  248. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  249. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +12 -9
  250. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  251. package/dist/cjs/components/SelectTypography/SelectTypography.js +4 -4
  252. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  253. package/dist/cjs/components/SimpleCell/SimpleCell.js +13 -7
  254. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  255. package/dist/cjs/components/Snackbar/Snackbar.d.ts +5 -2
  256. package/dist/cjs/components/Snackbar/Snackbar.js +8 -8
  257. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  258. package/dist/cjs/components/Spinner/Spinner.js +1 -1
  259. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  260. package/dist/cjs/components/SplitCol/SplitCol.js +9 -7
  261. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  262. package/dist/cjs/components/SplitLayout/SplitLayout.js +1 -1
  263. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  264. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +10 -5
  265. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  266. package/dist/cjs/components/Switch/Switch.js +12 -7
  267. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  268. package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -2
  269. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  270. package/dist/cjs/components/Tabs/Tabs.js +3 -3
  271. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  272. package/dist/cjs/components/TabsItem/TabsItem.js +10 -5
  273. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  274. package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
  275. package/dist/cjs/components/Tappable/Tappable.js +14 -14
  276. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  277. package/dist/cjs/components/TextTooltip/TextTooltip.js +1 -1
  278. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  279. package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
  280. package/dist/cjs/components/Textarea/Textarea.js +10 -5
  281. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  282. package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
  283. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  284. package/dist/cjs/components/Touch/Touch.js +3 -3
  285. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  286. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  287. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  288. package/dist/cjs/components/Typography/Headline/Headline.js +9 -4
  289. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  290. package/dist/cjs/components/Typography/Subhead/Subhead.js +8 -3
  291. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  292. package/dist/cjs/components/Typography/Text/Text.js +9 -4
  293. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  294. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  295. package/dist/cjs/components/UsersStack/UsersStack.js +2 -2
  296. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  297. package/dist/cjs/components/View/View.js +12 -12
  298. package/dist/cjs/components/View/View.js.map +1 -1
  299. package/dist/cjs/components/View/ViewInfinite.d.ts +2 -2
  300. package/dist/cjs/components/View/ViewInfinite.js +9 -9
  301. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  302. package/dist/cjs/components/WriteBar/WriteBar.js +4 -4
  303. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  304. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +17 -7
  305. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  306. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  307. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js +22 -0
  308. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  309. package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
  310. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  311. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  312. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  313. package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  314. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js +1 -1
  315. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  316. package/dist/cjs/hooks/useAutoDetectAppearance.js +1 -1
  317. package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
  318. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  319. package/dist/cjs/hooks/useChipsSelect.d.ts +1 -1
  320. package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
  321. package/dist/cjs/hooks/useDateInput.js +1 -1
  322. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  323. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  324. package/dist/cjs/hooks/useMediaQueries.js.map +1 -1
  325. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  326. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  327. package/dist/cjs/hooks/useTimeout.js +1 -1
  328. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  329. package/dist/cjs/hooks/useTodayDate.js.map +1 -1
  330. package/dist/cjs/hooks/useWaitTransitionFinish.js +1 -1
  331. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  332. package/dist/cjs/lib/SSR.js +3 -3
  333. package/dist/cjs/lib/SSR.js.map +1 -1
  334. package/dist/cjs/lib/adaptivity/constants.d.ts +7 -0
  335. package/dist/cjs/lib/adaptivity/constants.js +6 -1
  336. package/dist/cjs/lib/adaptivity/constants.js.map +1 -1
  337. package/dist/cjs/lib/adaptivity/functions.d.ts +9 -1
  338. package/dist/cjs/lib/adaptivity/functions.js +43 -0
  339. package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
  340. package/dist/cjs/lib/adaptivity/types.d.ts +2 -1
  341. package/dist/cjs/lib/adaptivity/types.js.map +1 -1
  342. package/dist/cjs/lib/calendar.js.map +1 -1
  343. package/dist/cjs/lib/floating/adapters.d.ts +1 -1
  344. package/dist/cjs/lib/floating/adapters.js.map +1 -1
  345. package/dist/cjs/lib/floating/functions.d.ts +1 -1
  346. package/dist/cjs/lib/floating/functions.js.map +1 -1
  347. package/dist/cjs/lib/platform.js +1 -1
  348. package/dist/cjs/lib/platform.js.map +1 -1
  349. package/dist/cjs/lib/select.js.map +1 -1
  350. package/dist/cjs/shared/breakpoints.d.ts +44 -0
  351. package/dist/cjs/shared/breakpoints.js +79 -13
  352. package/dist/cjs/shared/breakpoints.js.map +1 -1
  353. package/dist/cjs/types.d.ts +9 -1
  354. package/dist/cjs/types.js.map +1 -1
  355. package/dist/components/ActionSheet/ActionSheet.js +8 -8
  356. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  357. package/dist/components/ActionSheet/ActionSheetDropdown.js +4 -4
  358. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  359. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  360. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  361. package/dist/components/ActionSheetItem/ActionSheetItem.js +8 -8
  362. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  363. package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  364. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  365. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  366. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  367. package/dist/components/Alert/Alert.d.ts +1 -1
  368. package/dist/components/Alert/Alert.js +13 -15
  369. package/dist/components/Alert/Alert.js.map +1 -1
  370. package/dist/components/AppRoot/AppRoot.js +20 -12
  371. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  372. package/dist/components/AppRoot/AppRootPortal.js +2 -2
  373. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  374. package/dist/components/AppRoot/ScrollContext.js +1 -1
  375. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  376. package/dist/components/Avatar/Avatar.d.ts +1 -1
  377. package/dist/components/Avatar/Avatar.js +1 -1
  378. package/dist/components/Avatar/Avatar.js.map +1 -1
  379. package/dist/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  380. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
  381. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  382. package/dist/components/Banner/Banner.js +2 -2
  383. package/dist/components/Banner/Banner.js.map +1 -1
  384. package/dist/components/BaseGallery/BaseGallery.js +4 -4
  385. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  386. package/dist/components/BaseGallery/helpers.d.ts +1 -1
  387. package/dist/components/BaseGallery/helpers.js.map +1 -1
  388. package/dist/components/BaseGallery/types.d.ts +1 -1
  389. package/dist/components/BaseGallery/types.js.map +1 -1
  390. package/dist/components/Button/Button.d.ts +2 -2
  391. package/dist/components/Button/Button.js +15 -11
  392. package/dist/components/Button/Button.js.map +1 -1
  393. package/dist/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  394. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  395. package/dist/components/Calendar/Calendar.d.ts +2 -2
  396. package/dist/components/Calendar/Calendar.js +7 -7
  397. package/dist/components/Calendar/Calendar.js.map +1 -1
  398. package/dist/components/CalendarDay/CalendarDay.js +1 -1
  399. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  400. package/dist/components/CalendarDays/CalendarDays.js +3 -3
  401. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  402. package/dist/components/CalendarHeader/CalendarHeader.js +5 -5
  403. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  404. package/dist/components/CalendarRange/CalendarRange.d.ts +2 -2
  405. package/dist/components/CalendarRange/CalendarRange.js +4 -4
  406. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  407. package/dist/components/CalendarTime/CalendarTime.js +3 -3
  408. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  409. package/dist/components/CardGrid/CardGrid.js +8 -3
  410. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  411. package/dist/components/CardScroll/CardScroll.js +2 -6
  412. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  413. package/dist/components/Cell/Cell.d.ts +1 -1
  414. package/dist/components/Cell/Cell.js +6 -6
  415. package/dist/components/Cell/Cell.js.map +1 -1
  416. package/dist/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  417. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  418. package/dist/components/Cell/CellDragger/CellDragger.js +1 -1
  419. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  420. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  421. package/dist/components/Checkbox/Checkbox.js +16 -10
  422. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  423. package/dist/components/Chip/Chip.js +11 -6
  424. package/dist/components/Chip/Chip.js.map +1 -1
  425. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -1
  426. package/dist/components/ChipsInput/ChipsInput.js +1 -1
  427. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  428. package/dist/components/ChipsInputBase/ChipsInputBase.js +4 -4
  429. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  430. package/dist/components/ChipsSelect/ChipsSelect.js +5 -5
  431. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  432. package/dist/components/ConfigProvider/ConfigProvider.js +5 -5
  433. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  434. package/dist/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  435. package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  436. package/dist/components/ContentCard/ContentCard.d.ts +1 -1
  437. package/dist/components/ContentCard/ContentCard.js +2 -2
  438. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  439. package/dist/components/CustomScrollView/CustomScrollView.js +4 -4
  440. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  441. package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
  442. package/dist/components/CustomSelect/CustomSelect.js +8 -8
  443. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  444. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  445. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  446. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  447. package/dist/components/CustomSelectOption/CustomSelectOption.js +10 -5
  448. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  449. package/dist/components/DateInput/DateInput.d.ts +2 -2
  450. package/dist/components/DateInput/DateInput.js +15 -10
  451. package/dist/components/DateInput/DateInput.js.map +1 -1
  452. package/dist/components/DatePicker/DatePicker.js +2 -2
  453. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  454. package/dist/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  455. package/dist/components/DateRangeInput/DateRangeInput.js +15 -10
  456. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  457. package/dist/components/DropdownIcon/DropdownIcon.js +1 -1
  458. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  459. package/dist/components/Epic/Epic.js +1 -1
  460. package/dist/components/Epic/Epic.js.map +1 -1
  461. package/dist/components/Epic/ScrollSaver.js +1 -1
  462. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  463. package/dist/components/File/File.d.ts +1 -1
  464. package/dist/components/File/File.js +2 -2
  465. package/dist/components/File/File.js.map +1 -1
  466. package/dist/components/FixedLayout/FixedLayout.js +5 -5
  467. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  468. package/dist/components/FormField/FormField.js +8 -3
  469. package/dist/components/FormField/FormField.js.map +1 -1
  470. package/dist/components/FormItem/FormItem.js +11 -6
  471. package/dist/components/FormItem/FormItem.js.map +1 -1
  472. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  473. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  474. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  475. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  476. package/dist/components/Group/Group.js +14 -8
  477. package/dist/components/Group/Group.js.map +1 -1
  478. package/dist/components/Header/Header.js +3 -3
  479. package/dist/components/Header/Header.js.map +1 -1
  480. package/dist/components/HorizontalCell/HorizontalCell.js +3 -3
  481. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  482. package/dist/components/HorizontalScroll/HorizontalScroll.js +3 -3
  483. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  484. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  485. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  486. package/dist/components/HoverPopper/HoverPopper.js +2 -2
  487. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  488. package/dist/components/IconButton/IconButton.d.ts +1 -1
  489. package/dist/components/IconButton/IconButton.js +13 -10
  490. package/dist/components/IconButton/IconButton.js.map +1 -1
  491. package/dist/components/Image/Image.d.ts +1 -1
  492. package/dist/components/Image/Image.js.map +1 -1
  493. package/dist/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  494. package/dist/components/ImageBase/ImageBase.d.ts +1 -1
  495. package/dist/components/ImageBase/ImageBase.js +1 -1
  496. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  497. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  498. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  499. package/dist/components/ImageBase/validators.js +1 -1
  500. package/dist/components/ImageBase/validators.js.map +1 -1
  501. package/dist/components/InfoRow/InfoRow.js +1 -1
  502. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  503. package/dist/components/Input/Input.d.ts +2 -2
  504. package/dist/components/Input/Input.js +12 -5
  505. package/dist/components/Input/Input.js.map +1 -1
  506. package/dist/components/InputLike/InputLike.js +1 -1
  507. package/dist/components/InputLike/InputLike.js.map +1 -1
  508. package/dist/components/Link/Link.js.map +1 -1
  509. package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -1
  510. package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
  511. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  512. package/dist/components/ModalCard/ModalCard.js +5 -5
  513. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  514. package/dist/components/ModalCardBase/ModalCardBase.js +6 -6
  515. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  516. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -1
  517. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  518. package/dist/components/ModalPage/ModalPage.js +9 -12
  519. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  520. package/dist/components/ModalPageHeader/ModalPageHeader.js +4 -4
  521. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  522. package/dist/components/ModalRoot/ModalRoot.js +12 -12
  523. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  524. package/dist/components/ModalRoot/ModalRootAdaptive.js +2 -2
  525. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  526. package/dist/components/ModalRoot/ModalRootDesktop.js +6 -6
  527. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  528. package/dist/components/ModalRoot/useModalManager.js +3 -3
  529. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  530. package/dist/components/NativeSelect/NativeSelect.d.ts +1 -1
  531. package/dist/components/NativeSelect/NativeSelect.js +12 -9
  532. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  533. package/dist/components/Pagination/Pagination.js +12 -6
  534. package/dist/components/Pagination/Pagination.js.map +1 -1
  535. package/dist/components/Panel/Panel.d.ts +1 -1
  536. package/dist/components/Panel/Panel.js +13 -7
  537. package/dist/components/Panel/Panel.js.map +1 -1
  538. package/dist/components/PanelHeader/PanelHeader.js +12 -11
  539. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  540. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
  541. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  542. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  543. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  544. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  545. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  546. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  547. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  548. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  549. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  550. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
  551. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  552. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  553. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  554. package/dist/components/Placeholder/Placeholder.js +1 -1
  555. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  556. package/dist/components/PlatformProvider/PlatformProvider.js +2 -2
  557. package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
  558. package/dist/components/PopoutRoot/PopoutRoot.js +2 -2
  559. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  560. package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
  561. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  562. package/dist/components/Popover/Popover.js +5 -5
  563. package/dist/components/Popover/Popover.js.map +1 -1
  564. package/dist/components/Popper/Popper.d.ts +1 -1
  565. package/dist/components/Popper/Popper.js +4 -4
  566. package/dist/components/Popper/Popper.js.map +1 -1
  567. package/dist/components/PopperArrow/PopperArrow.d.ts +1 -1
  568. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  569. package/dist/components/Progress/Progress.js +1 -1
  570. package/dist/components/Progress/Progress.js.map +1 -1
  571. package/dist/components/PromoBanner/PromoBanner.js +2 -2
  572. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  573. package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  574. package/dist/components/PullToRefresh/PullToRefresh.js +8 -8
  575. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  576. package/dist/components/Radio/Radio.js +12 -7
  577. package/dist/components/Radio/Radio.js.map +1 -1
  578. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  579. package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
  580. package/dist/components/RangeSlider/UniversalSlider.js +10 -5
  581. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  582. package/dist/components/Removable/Removable.js +4 -8
  583. package/dist/components/Removable/Removable.js.map +1 -1
  584. package/dist/components/RichCell/RichCell.d.ts +5 -2
  585. package/dist/components/RichCell/RichCell.js +11 -4
  586. package/dist/components/RichCell/RichCell.js.map +1 -1
  587. package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  588. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js +14 -0
  589. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  590. package/dist/components/RichTooltip/RichTooltip.js +1 -1
  591. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  592. package/dist/components/Root/Root.js +8 -8
  593. package/dist/components/Root/Root.js.map +1 -1
  594. package/dist/components/ScreenSpinner/ScreenSpinner.js +5 -5
  595. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  596. package/dist/components/Search/Search.d.ts +1 -1
  597. package/dist/components/Search/Search.js +13 -8
  598. package/dist/components/Search/Search.js.map +1 -1
  599. package/dist/components/SegmentedControl/SegmentedControl.js +18 -18
  600. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  601. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  602. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  603. package/dist/components/Select/Select.js +3 -3
  604. package/dist/components/Select/Select.js.map +1 -1
  605. package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  606. package/dist/components/SelectMimicry/SelectMimicry.js +12 -9
  607. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  608. package/dist/components/SelectTypography/SelectTypography.js +4 -4
  609. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  610. package/dist/components/SimpleCell/SimpleCell.js +13 -7
  611. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  612. package/dist/components/Snackbar/Snackbar.d.ts +5 -2
  613. package/dist/components/Snackbar/Snackbar.js +8 -8
  614. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  615. package/dist/components/Spinner/Spinner.js +1 -1
  616. package/dist/components/Spinner/Spinner.js.map +1 -1
  617. package/dist/components/SplitCol/SplitCol.js +9 -7
  618. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  619. package/dist/components/SplitLayout/SplitLayout.js +1 -1
  620. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  621. package/dist/components/SubnavigationButton/SubnavigationButton.js +10 -5
  622. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  623. package/dist/components/Switch/Switch.js +12 -7
  624. package/dist/components/Switch/Switch.js.map +1 -1
  625. package/dist/components/TabbarItem/TabbarItem.js +2 -2
  626. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  627. package/dist/components/Tabs/Tabs.js +3 -3
  628. package/dist/components/Tabs/Tabs.js.map +1 -1
  629. package/dist/components/TabsItem/TabsItem.js +10 -5
  630. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  631. package/dist/components/Tappable/Tappable.d.ts +1 -1
  632. package/dist/components/Tappable/Tappable.js +14 -14
  633. package/dist/components/Tappable/Tappable.js.map +1 -1
  634. package/dist/components/TextTooltip/TextTooltip.js +1 -1
  635. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  636. package/dist/components/Textarea/Textarea.d.ts +1 -1
  637. package/dist/components/Textarea/Textarea.js +10 -5
  638. package/dist/components/Textarea/Textarea.js.map +1 -1
  639. package/dist/components/Tooltip/Tooltip.js +6 -6
  640. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  641. package/dist/components/Touch/Touch.js +3 -3
  642. package/dist/components/Touch/Touch.js.map +1 -1
  643. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  644. package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
  645. package/dist/components/Typography/Headline/Headline.js +9 -4
  646. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  647. package/dist/components/Typography/Subhead/Subhead.js +8 -3
  648. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  649. package/dist/components/Typography/Text/Text.js +9 -4
  650. package/dist/components/Typography/Text/Text.js.map +1 -1
  651. package/dist/components/Typography/Title/Title.js.map +1 -1
  652. package/dist/components/UsersStack/UsersStack.js +2 -2
  653. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  654. package/dist/components/View/View.js +12 -12
  655. package/dist/components/View/View.js.map +1 -1
  656. package/dist/components/View/ViewInfinite.d.ts +2 -2
  657. package/dist/components/View/ViewInfinite.js +9 -9
  658. package/dist/components/View/ViewInfinite.js.map +1 -1
  659. package/dist/components/WriteBar/WriteBar.js +4 -4
  660. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  661. package/dist/components/WriteBarIcon/WriteBarIcon.js +18 -8
  662. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  663. package/dist/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  664. package/dist/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
  665. package/dist/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  666. package/dist/components.css +45 -44
  667. package/dist/components.css.map +1 -1
  668. package/dist/components.js.tmp +3177 -2863
  669. package/dist/cssm/components/ActionSheet/ActionSheet.js +8 -8
  670. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  671. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +4 -4
  672. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  673. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  674. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  675. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +8 -8
  676. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  677. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  678. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  679. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  680. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  681. package/dist/cssm/components/Alert/Alert.d.ts +1 -1
  682. package/dist/cssm/components/Alert/Alert.js +13 -15
  683. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  684. package/dist/cssm/components/AppRoot/AppRoot.js +20 -12
  685. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  686. package/dist/cssm/components/AppRoot/AppRootPortal.js +2 -2
  687. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  688. package/dist/cssm/components/AppRoot/ScrollContext.js +1 -1
  689. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  690. package/dist/cssm/components/Avatar/Avatar.d.ts +1 -1
  691. package/dist/cssm/components/Avatar/Avatar.js +1 -1
  692. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  693. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  694. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
  695. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  696. package/dist/cssm/components/Banner/Banner.js +2 -2
  697. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  698. package/dist/cssm/components/BaseGallery/BaseGallery.js +4 -4
  699. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  700. package/dist/cssm/components/BaseGallery/helpers.d.ts +1 -1
  701. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  702. package/dist/cssm/components/BaseGallery/types.d.ts +1 -1
  703. package/dist/cssm/components/BaseGallery/types.js.map +1 -1
  704. package/dist/cssm/components/Button/Button.d.ts +2 -2
  705. package/dist/cssm/components/Button/Button.js +15 -11
  706. package/dist/cssm/components/Button/Button.js.map +1 -1
  707. package/dist/cssm/components/Button/Button.module.css +1 -1
  708. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  709. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  710. package/dist/cssm/components/Calendar/Calendar.d.ts +2 -2
  711. package/dist/cssm/components/Calendar/Calendar.js +7 -7
  712. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  713. package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -1
  714. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  715. package/dist/cssm/components/CalendarDays/CalendarDays.js +3 -3
  716. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  717. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +5 -5
  718. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  719. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +2 -2
  720. package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -4
  721. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  722. package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
  723. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  724. package/dist/cssm/components/CardGrid/CardGrid.js +8 -3
  725. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  726. package/dist/cssm/components/CardGrid/CardGrid.module.css +1 -1
  727. package/dist/cssm/components/CardScroll/CardScroll.js +2 -6
  728. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  729. package/dist/cssm/components/Cell/Cell.d.ts +1 -1
  730. package/dist/cssm/components/Cell/Cell.js +6 -6
  731. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  732. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  733. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  734. package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -1
  735. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  736. package/dist/cssm/components/Checkbox/Checkbox.d.ts +1 -1
  737. package/dist/cssm/components/Checkbox/Checkbox.js +16 -10
  738. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  739. package/dist/cssm/components/Checkbox/Checkbox.module.css +1 -1
  740. package/dist/cssm/components/Chip/Chip.js +11 -6
  741. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  742. package/dist/cssm/components/Chip/Chip.module.css +1 -1
  743. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -1
  744. package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
  745. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  746. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +4 -4
  747. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  748. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -5
  749. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  750. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -5
  751. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  752. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  753. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  754. package/dist/cssm/components/ContentCard/ContentCard.d.ts +1 -1
  755. package/dist/cssm/components/ContentCard/ContentCard.js +2 -2
  756. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  757. package/dist/cssm/components/Counter/Counter.module.css +1 -1
  758. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +4 -4
  759. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  760. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
  761. package/dist/cssm/components/CustomSelect/CustomSelect.js +8 -8
  762. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  763. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  764. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  765. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  766. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +10 -5
  767. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  768. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +1 -1
  769. package/dist/cssm/components/DateInput/DateInput.d.ts +2 -2
  770. package/dist/cssm/components/DateInput/DateInput.js +15 -10
  771. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  772. package/dist/cssm/components/DateInput/DateInput.module.css +1 -1
  773. package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
  774. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  775. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  776. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +15 -10
  777. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  778. package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +1 -1
  779. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +1 -1
  780. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  781. package/dist/cssm/components/Epic/Epic.js +1 -1
  782. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  783. package/dist/cssm/components/Epic/ScrollSaver.js +1 -1
  784. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  785. package/dist/cssm/components/File/File.d.ts +1 -1
  786. package/dist/cssm/components/File/File.js +2 -2
  787. package/dist/cssm/components/File/File.js.map +1 -1
  788. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -5
  789. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  790. package/dist/cssm/components/FormField/FormField.js +8 -3
  791. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  792. package/dist/cssm/components/FormField/FormField.module.css +1 -1
  793. package/dist/cssm/components/FormItem/FormItem.js +11 -6
  794. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  795. package/dist/cssm/components/FormItem/FormItem.module.css +1 -1
  796. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  797. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  798. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +1 -1
  799. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  800. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  801. package/dist/cssm/components/Group/Group.js +14 -8
  802. package/dist/cssm/components/Group/Group.js.map +1 -1
  803. package/dist/cssm/components/Group/Group.module.css +1 -1
  804. package/dist/cssm/components/Header/Header.js +3 -3
  805. package/dist/cssm/components/Header/Header.js.map +1 -1
  806. package/dist/cssm/components/Header/Header.module.css +1 -1
  807. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -3
  808. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  809. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +3 -3
  810. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  811. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  812. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  813. package/dist/cssm/components/HoverPopper/HoverPopper.js +2 -2
  814. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  815. package/dist/cssm/components/IconButton/IconButton.d.ts +1 -1
  816. package/dist/cssm/components/IconButton/IconButton.js +13 -10
  817. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  818. package/dist/cssm/components/IconButton/IconButton.module.css +1 -1
  819. package/dist/cssm/components/Image/Image.d.ts +1 -1
  820. package/dist/cssm/components/Image/Image.js.map +1 -1
  821. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  822. package/dist/cssm/components/ImageBase/ImageBase.d.ts +1 -1
  823. package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
  824. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  825. package/dist/cssm/components/ImageBase/ImageBase.module.css +1 -1
  826. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  827. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  828. package/dist/cssm/components/ImageBase/validators.js +1 -1
  829. package/dist/cssm/components/ImageBase/validators.js.map +1 -1
  830. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  831. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  832. package/dist/cssm/components/Input/Input.d.ts +2 -2
  833. package/dist/cssm/components/Input/Input.js +12 -5
  834. package/dist/cssm/components/Input/Input.js.map +1 -1
  835. package/dist/cssm/components/Input/Input.module.css +1 -1
  836. package/dist/cssm/components/InputLike/InputLike.js +1 -1
  837. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  838. package/dist/cssm/components/Link/Link.js.map +1 -1
  839. package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
  840. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +2 -2
  841. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  842. package/dist/cssm/components/ModalCard/ModalCard.js +5 -5
  843. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  844. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +6 -6
  845. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  846. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
  847. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  848. package/dist/cssm/components/ModalPage/ModalPage.js +9 -12
  849. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  850. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +4 -4
  851. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  852. package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -12
  853. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  854. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +2 -2
  855. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  856. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +6 -6
  857. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  858. package/dist/cssm/components/ModalRoot/useModalManager.js +3 -3
  859. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  860. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -1
  861. package/dist/cssm/components/NativeSelect/NativeSelect.js +12 -9
  862. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  863. package/dist/cssm/components/Pagination/Pagination.js +12 -6
  864. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  865. package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
  866. package/dist/cssm/components/Panel/Panel.d.ts +1 -1
  867. package/dist/cssm/components/Panel/Panel.js +13 -7
  868. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  869. package/dist/cssm/components/Panel/Panel.module.css +1 -1
  870. package/dist/cssm/components/PanelHeader/PanelHeader.js +12 -11
  871. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  872. package/dist/cssm/components/PanelHeader/PanelHeader.module.css +1 -1
  873. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
  874. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  875. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  876. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  877. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +1 -1
  878. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  879. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  880. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  881. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  882. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  883. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  884. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +1 -1
  885. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
  886. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  887. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  888. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  889. package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
  890. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  891. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +2 -2
  892. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  893. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +2 -2
  894. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  895. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
  896. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  897. package/dist/cssm/components/Popover/Popover.js +5 -5
  898. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  899. package/dist/cssm/components/Popper/Popper.d.ts +1 -1
  900. package/dist/cssm/components/Popper/Popper.js +4 -4
  901. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  902. package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +1 -1
  903. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  904. package/dist/cssm/components/Progress/Progress.js +1 -1
  905. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  906. package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -2
  907. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  908. package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  909. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +8 -8
  910. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  911. package/dist/cssm/components/Radio/Radio.js +12 -7
  912. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  913. package/dist/cssm/components/Radio/Radio.module.css +1 -1
  914. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  915. package/dist/cssm/components/RangeSlider/UniversalSlider.d.ts +1 -1
  916. package/dist/cssm/components/RangeSlider/UniversalSlider.js +10 -5
  917. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  918. package/dist/cssm/components/Removable/Removable.js +4 -8
  919. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  920. package/dist/cssm/components/Removable/Removable.module.css +1 -1
  921. package/dist/cssm/components/RichCell/RichCell.d.ts +5 -2
  922. package/dist/cssm/components/RichCell/RichCell.js +11 -4
  923. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  924. package/dist/cssm/components/RichCell/RichCell.module.css +1 -1
  925. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  926. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +15 -0
  927. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  928. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +1 -0
  929. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -1
  930. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  931. package/dist/cssm/components/Root/Root.js +8 -8
  932. package/dist/cssm/components/Root/Root.js.map +1 -1
  933. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +5 -5
  934. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  935. package/dist/cssm/components/Search/Search.d.ts +1 -1
  936. package/dist/cssm/components/Search/Search.js +13 -8
  937. package/dist/cssm/components/Search/Search.js.map +1 -1
  938. package/dist/cssm/components/Search/Search.module.css +1 -1
  939. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +18 -18
  940. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  941. package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +1 -1
  942. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  943. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  944. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +1 -1
  945. package/dist/cssm/components/Select/Select.js +3 -3
  946. package/dist/cssm/components/Select/Select.js.map +1 -1
  947. package/dist/cssm/components/Select/Select.module.css +1 -1
  948. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  949. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +12 -9
  950. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  951. package/dist/cssm/components/SelectTypography/SelectTypography.js +4 -4
  952. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  953. package/dist/cssm/components/SelectTypography/SelectTypography.module.css +1 -1
  954. package/dist/cssm/components/SimpleCell/SimpleCell.js +13 -7
  955. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  956. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +1 -1
  957. package/dist/cssm/components/Slider/Slider.module.css +1 -1
  958. package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -2
  959. package/dist/cssm/components/Snackbar/Snackbar.js +8 -8
  960. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  961. package/dist/cssm/components/Snackbar/Snackbar.module.css +1 -1
  962. package/dist/cssm/components/Spinner/Spinner.js +1 -1
  963. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  964. package/dist/cssm/components/SplitCol/SplitCol.js +9 -7
  965. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  966. package/dist/cssm/components/SplitCol/SplitCol.module.css +1 -1
  967. package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
  968. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  969. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +10 -5
  970. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  971. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +1 -1
  972. package/dist/cssm/components/Switch/Switch.js +12 -7
  973. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  974. package/dist/cssm/components/Switch/Switch.module.css +1 -1
  975. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -2
  976. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  977. package/dist/cssm/components/Tabs/Tabs.js +3 -3
  978. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  979. package/dist/cssm/components/TabsItem/TabsItem.js +10 -5
  980. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  981. package/dist/cssm/components/TabsItem/TabsItem.module.css +1 -1
  982. package/dist/cssm/components/Tappable/Tappable.d.ts +1 -1
  983. package/dist/cssm/components/Tappable/Tappable.js +14 -14
  984. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  985. package/dist/cssm/components/Tappable/Tappable.module.css +1 -1
  986. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  987. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  988. package/dist/cssm/components/Textarea/Textarea.d.ts +1 -1
  989. package/dist/cssm/components/Textarea/Textarea.js +10 -5
  990. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  991. package/dist/cssm/components/Textarea/Textarea.module.css +1 -1
  992. package/dist/cssm/components/Tooltip/Tooltip.js +6 -6
  993. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  994. package/dist/cssm/components/Touch/Touch.js +3 -3
  995. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  996. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  997. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  998. package/dist/cssm/components/Typography/Headline/Headline.js +9 -4
  999. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  1000. package/dist/cssm/components/Typography/Headline/Headline.module.css +1 -1
  1001. package/dist/cssm/components/Typography/Subhead/Subhead.js +8 -3
  1002. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  1003. package/dist/cssm/components/Typography/Subhead/Subhead.module.css +1 -1
  1004. package/dist/cssm/components/Typography/Text/Text.js +9 -4
  1005. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  1006. package/dist/cssm/components/Typography/Text/Text.module.css +1 -1
  1007. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1008. package/dist/cssm/components/UsersStack/UsersStack.js +2 -2
  1009. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1010. package/dist/cssm/components/UsersStack/UsersStack.module.css +1 -1
  1011. package/dist/cssm/components/View/View.js +12 -12
  1012. package/dist/cssm/components/View/View.js.map +1 -1
  1013. package/dist/cssm/components/View/ViewInfinite.d.ts +2 -2
  1014. package/dist/cssm/components/View/ViewInfinite.js +9 -9
  1015. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1016. package/dist/cssm/components/WriteBar/WriteBar.js +4 -4
  1017. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  1018. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +18 -8
  1019. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  1020. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +1 -1
  1021. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  1022. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
  1023. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  1024. package/dist/cssm/helpers/getPlatformClassName.js.map +1 -1
  1025. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  1026. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  1027. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
  1028. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1029. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
  1030. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1031. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
  1032. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1033. package/dist/cssm/hooks/useAutoDetectAppearance.js +1 -1
  1034. package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
  1035. package/dist/cssm/hooks/useCalendar.js +1 -1
  1036. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  1037. package/dist/cssm/hooks/useChipsSelect.d.ts +1 -1
  1038. package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
  1039. package/dist/cssm/hooks/useDateInput.js +1 -1
  1040. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  1041. package/dist/cssm/hooks/useFocusVisible.js +1 -1
  1042. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  1043. package/dist/cssm/hooks/useMediaQueries.js.map +1 -1
  1044. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  1045. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1046. package/dist/cssm/hooks/useTimeout.js +1 -1
  1047. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1048. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  1049. package/dist/cssm/hooks/useWaitTransitionFinish.js +1 -1
  1050. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1051. package/dist/cssm/lib/SSR.js +3 -3
  1052. package/dist/cssm/lib/SSR.js.map +1 -1
  1053. package/dist/cssm/lib/adaptivity/constants.d.ts +7 -0
  1054. package/dist/cssm/lib/adaptivity/constants.js +3 -0
  1055. package/dist/cssm/lib/adaptivity/constants.js.map +1 -1
  1056. package/dist/cssm/lib/adaptivity/functions.d.ts +9 -1
  1057. package/dist/cssm/lib/adaptivity/functions.js +43 -1
  1058. package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
  1059. package/dist/cssm/lib/adaptivity/types.d.ts +2 -1
  1060. package/dist/cssm/lib/adaptivity/types.js.map +1 -1
  1061. package/dist/cssm/lib/calendar.js +1 -1
  1062. package/dist/cssm/lib/calendar.js.map +1 -1
  1063. package/dist/cssm/lib/floating/adapters.d.ts +1 -1
  1064. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  1065. package/dist/cssm/lib/floating/functions.d.ts +1 -1
  1066. package/dist/cssm/lib/floating/functions.js.map +1 -1
  1067. package/dist/cssm/lib/platform.js +1 -1
  1068. package/dist/cssm/lib/platform.js.map +1 -1
  1069. package/dist/cssm/lib/select.js.map +1 -1
  1070. package/dist/cssm/shared/breakpoints.d.ts +44 -0
  1071. package/dist/cssm/shared/breakpoints.js +79 -13
  1072. package/dist/cssm/shared/breakpoints.js.map +1 -1
  1073. package/dist/cssm/styles/adaptivity.module.css +1 -1
  1074. package/dist/cssm/types.d.ts +9 -1
  1075. package/dist/cssm/types.js.map +1 -1
  1076. package/dist/helpers/getPlatformClassName.js.map +1 -1
  1077. package/dist/hoc/withPlatform.js.map +1 -1
  1078. package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  1079. package/dist/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
  1080. package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1081. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
  1082. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1083. package/dist/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
  1084. package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1085. package/dist/hooks/useAutoDetectAppearance.js +1 -1
  1086. package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
  1087. package/dist/hooks/useCalendar.js +1 -1
  1088. package/dist/hooks/useCalendar.js.map +1 -1
  1089. package/dist/hooks/useChipsSelect.d.ts +1 -1
  1090. package/dist/hooks/useChipsSelect.js.map +1 -1
  1091. package/dist/hooks/useDateInput.js +1 -1
  1092. package/dist/hooks/useDateInput.js.map +1 -1
  1093. package/dist/hooks/useFocusVisible.js +1 -1
  1094. package/dist/hooks/useFocusVisible.js.map +1 -1
  1095. package/dist/hooks/useMediaQueries.js.map +1 -1
  1096. package/dist/hooks/usePatchChildrenRef.js +1 -1
  1097. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1098. package/dist/hooks/useTimeout.js +1 -1
  1099. package/dist/hooks/useTimeout.js.map +1 -1
  1100. package/dist/hooks/useTodayDate.js.map +1 -1
  1101. package/dist/hooks/useWaitTransitionFinish.js +1 -1
  1102. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1103. package/dist/lib/SSR.js +3 -3
  1104. package/dist/lib/SSR.js.map +1 -1
  1105. package/dist/lib/adaptivity/constants.d.ts +7 -0
  1106. package/dist/lib/adaptivity/constants.js +3 -0
  1107. package/dist/lib/adaptivity/constants.js.map +1 -1
  1108. package/dist/lib/adaptivity/functions.d.ts +9 -1
  1109. package/dist/lib/adaptivity/functions.js +43 -1
  1110. package/dist/lib/adaptivity/functions.js.map +1 -1
  1111. package/dist/lib/adaptivity/types.d.ts +2 -1
  1112. package/dist/lib/adaptivity/types.js.map +1 -1
  1113. package/dist/lib/calendar.js +1 -1
  1114. package/dist/lib/calendar.js.map +1 -1
  1115. package/dist/lib/floating/adapters.d.ts +1 -1
  1116. package/dist/lib/floating/adapters.js.map +1 -1
  1117. package/dist/lib/floating/functions.d.ts +1 -1
  1118. package/dist/lib/floating/functions.js.map +1 -1
  1119. package/dist/lib/platform.js +1 -1
  1120. package/dist/lib/platform.js.map +1 -1
  1121. package/dist/lib/select.js.map +1 -1
  1122. package/dist/shared/breakpoints.d.ts +44 -0
  1123. package/dist/shared/breakpoints.js +79 -13
  1124. package/dist/shared/breakpoints.js.map +1 -1
  1125. package/dist/types.d.ts +9 -1
  1126. package/dist/types.js.map +1 -1
  1127. package/dist/vkui.css +45 -44
  1128. package/dist/vkui.css.map +1 -1
  1129. package/dist/vkui.js.tmp +3177 -2863
  1130. package/package.json +1 -1
  1131. package/dist/cjs/helpers/getHoverClassName.d.ts +0 -2
  1132. package/dist/cjs/helpers/getHoverClassName.js +0 -22
  1133. package/dist/cjs/helpers/getHoverClassName.js.map +0 -1
  1134. package/dist/cjs/helpers/getPointerClassName.d.ts +0 -2
  1135. package/dist/cjs/helpers/getPointerClassName.js +0 -22
  1136. package/dist/cjs/helpers/getPointerClassName.js.map +0 -1
  1137. package/dist/cjs/helpers/getSizeXClassName.d.ts +0 -5
  1138. package/dist/cjs/helpers/getSizeXClassName.js +0 -18
  1139. package/dist/cjs/helpers/getSizeXClassName.js.map +0 -1
  1140. package/dist/cjs/helpers/getSizeYClassName.d.ts +0 -5
  1141. package/dist/cjs/helpers/getSizeYClassName.js +0 -18
  1142. package/dist/cjs/helpers/getSizeYClassName.js.map +0 -1
  1143. package/dist/cjs/helpers/getViewHeightClassName.d.ts +0 -3
  1144. package/dist/cjs/helpers/getViewHeightClassName.js +0 -31
  1145. package/dist/cjs/helpers/getViewHeightClassName.js.map +0 -1
  1146. package/dist/cjs/helpers/getViewWidthClassName.d.ts +0 -3
  1147. package/dist/cjs/helpers/getViewWidthClassName.js +0 -52
  1148. package/dist/cjs/helpers/getViewWidthClassName.js.map +0 -1
  1149. package/dist/cssm/helpers/getHoverClassName.d.ts +0 -2
  1150. package/dist/cssm/helpers/getHoverClassName.js +0 -16
  1151. package/dist/cssm/helpers/getHoverClassName.js.map +0 -1
  1152. package/dist/cssm/helpers/getPointerClassName.d.ts +0 -2
  1153. package/dist/cssm/helpers/getPointerClassName.js +0 -16
  1154. package/dist/cssm/helpers/getPointerClassName.js.map +0 -1
  1155. package/dist/cssm/helpers/getSizeXClassName.d.ts +0 -5
  1156. package/dist/cssm/helpers/getSizeXClassName.js +0 -12
  1157. package/dist/cssm/helpers/getSizeXClassName.js.map +0 -1
  1158. package/dist/cssm/helpers/getSizeYClassName.d.ts +0 -5
  1159. package/dist/cssm/helpers/getSizeYClassName.js +0 -12
  1160. package/dist/cssm/helpers/getSizeYClassName.js.map +0 -1
  1161. package/dist/cssm/helpers/getViewHeightClassName.d.ts +0 -3
  1162. package/dist/cssm/helpers/getViewHeightClassName.js +0 -25
  1163. package/dist/cssm/helpers/getViewHeightClassName.js.map +0 -1
  1164. package/dist/cssm/helpers/getViewWidthClassName.d.ts +0 -3
  1165. package/dist/cssm/helpers/getViewWidthClassName.js +0 -46
  1166. package/dist/cssm/helpers/getViewWidthClassName.js.map +0 -1
  1167. package/dist/helpers/getHoverClassName.d.ts +0 -2
  1168. package/dist/helpers/getHoverClassName.js +0 -16
  1169. package/dist/helpers/getHoverClassName.js.map +0 -1
  1170. package/dist/helpers/getPointerClassName.d.ts +0 -2
  1171. package/dist/helpers/getPointerClassName.js +0 -16
  1172. package/dist/helpers/getPointerClassName.js.map +0 -1
  1173. package/dist/helpers/getSizeXClassName.d.ts +0 -5
  1174. package/dist/helpers/getSizeXClassName.js +0 -12
  1175. package/dist/helpers/getSizeXClassName.js.map +0 -1
  1176. package/dist/helpers/getSizeYClassName.d.ts +0 -5
  1177. package/dist/helpers/getSizeYClassName.js +0 -12
  1178. package/dist/helpers/getSizeYClassName.js.map +0 -1
  1179. package/dist/helpers/getViewHeightClassName.d.ts +0 -3
  1180. package/dist/helpers/getViewHeightClassName.js +0 -25
  1181. package/dist/helpers/getViewHeightClassName.js.map +0 -1
  1182. package/dist/helpers/getViewWidthClassName.d.ts +0 -3
  1183. package/dist/helpers/getViewWidthClassName.js +0 -46
  1184. package/dist/helpers/getViewWidthClassName.js.map +0 -1
@@ -10,21 +10,21 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
12
  var React = _interopRequireWildcard(require("react"));
13
- var _dom = require("../../lib/dom");
14
13
  var _vkjs = require("@vkontakte/vkjs");
14
+ var _math = require("../../helpers/math");
15
+ var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
16
+ var _usePlatform = require("../../hooks/usePlatform");
17
+ var _usePrevious = require("../../hooks/usePrevious");
18
+ var _useTimeout2 = require("../../hooks/useTimeout");
19
+ var _dom = require("../../lib/dom");
15
20
  var _platform = require("../../lib/platform");
16
21
  var _taptic = require("../../lib/taptic");
17
22
  var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
18
- var _usePlatform = require("../../hooks/usePlatform");
19
- var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
20
23
  var _ScrollContext = require("../AppRoot/ScrollContext");
21
- var _Touch = require("../Touch/Touch");
22
24
  var _FixedLayout = require("../FixedLayout/FixedLayout");
23
- var _PullToRefreshSpinner = require("./PullToRefreshSpinner");
25
+ var _Touch = require("../Touch/Touch");
24
26
  var _TouchContext = _interopRequireDefault(require("../Touch/TouchContext"));
25
- var _usePrevious = require("../../hooks/usePrevious");
26
- var _useTimeout2 = require("../../hooks/useTimeout");
27
- var _math = require("../../helpers/math");
27
+ var _PullToRefreshSpinner = require("./PullToRefreshSpinner");
28
28
  var _excluded = ["children", "isFetching", "onRefresh", "className"];
29
29
  function cancelEvent(event) {
30
30
  if (!event) {
@@ -1 +1 @@
1
- {"version":3,"file":"PullToRefresh.js","names":["cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","TOUCH_MOVE_EVENT_PARAMS","passive","PullToRefresh","children","isFetching","onRefresh","className","restProps","platform","usePlatform","scroll","useScroll","useDOM","document","prevIsFetching","usePrevious","initParams","React","useMemo","start","Platform","IOS","max","maxY","refreshing","positionMultiplier","useState","spinnerY","setSpinnerY","watching","setWatching","setRefreshing","canRefresh","setCanRefresh","touchDown","setTouchDown","prevTouchDown","touchY","useRef","contentShift","setContentShift","spinnerProgress","setSpinnerProgress","onWindowTouchMove","useGlobalEventListener","resetRefreshingState","useCallback","onRefreshingFinish","useTimeout","setWaitFetchingTimeout","set","clearWaitFetchingTimeout","clear","useIsomorphicLayoutEffect","undefined","runRefreshing","prevSpinnerY","runTapticImpactOccurred","onTouchStart","e","onTouchMove","isY","shiftY","pageYOffset","getScroll","y","shift","Math","current","currentY","clamp","progress","abs","onTouchEnd","spinnerTransform","contentTransform","classNames","transform","WebkitTransform","opacity"],"sources":["../../../../src/components/PullToRefresh/PullToRefresh.tsx"],"sourcesContent":["import * as React from 'react';\nimport { AnyFunction } from '../../types';\nimport { DOMProps, useDOM } from '../../lib/dom';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Platform } from '../../lib/platform';\nimport { runTapticImpactOccurred } from '../../lib/taptic';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { ScrollContextInterface, useScroll } from '../AppRoot/ScrollContext';\nimport { Touch, TouchEvent, TouchProps } from '../Touch/Touch';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { PullToRefreshSpinner } from './PullToRefreshSpinner';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { clamp } from '../../helpers/math';\nimport styles from './PullToRefresh.module.css';\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\nexport interface PullToRefreshProps extends DOMProps, TouchProps {\n /**\n * Будет вызвана для обновления контента (прим.: функция должна быть мемоизированным коллбэком)\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n children?: React.ReactNode;\n}\n\nconst TOUCH_MOVE_EVENT_PARAMS = {\n cancelable: true,\n passive: false,\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PullToRefresh\n */\nexport const PullToRefresh = ({\n children,\n isFetching,\n onRefresh,\n className,\n ...restProps\n}: PullToRefreshProps) => {\n const platform = usePlatform();\n const scroll = useScroll();\n const { document } = useDOM();\n const prevIsFetching = usePrevious(isFetching);\n\n const initParams = React.useMemo(\n () => ({\n start: platform === Platform.IOS ? -10 : -45,\n max: platform === Platform.IOS ? 50 : 80,\n maxY: platform === Platform.IOS ? 400 : 80,\n refreshing: platform === Platform.IOS ? 36 : 50,\n positionMultiplier: platform === Platform.IOS ? 0.21 : 1,\n }),\n [platform],\n );\n\n const [spinnerY, setSpinnerY] = React.useState(initParams.start);\n const [watching, setWatching] = React.useState(false);\n const [refreshing, setRefreshing] = React.useState(false);\n const [canRefresh, setCanRefresh] = React.useState(false);\n const [touchDown, setTouchDown] = React.useState(false);\n const prevTouchDown = usePrevious(touchDown);\n\n const touchY = React.useRef(0);\n const [contentShift, setContentShift] = React.useState(0);\n const [spinnerProgress, setSpinnerProgress] = React.useState(0);\n\n const onWindowTouchMove = (event: Event) => {\n if (refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n useGlobalEventListener(document, 'touchmove', onWindowTouchMove, TOUCH_MOVE_EVENT_PARAMS);\n\n const resetRefreshingState = React.useCallback(() => {\n setWatching(false);\n setCanRefresh(false);\n setRefreshing(false);\n setSpinnerY(initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }, [initParams]);\n\n const onRefreshingFinish = React.useCallback(() => {\n if (!touchDown) {\n resetRefreshingState();\n }\n }, [touchDown, resetRefreshingState]);\n\n const { set: setWaitFetchingTimeout, clear: clearWaitFetchingTimeout } = useTimeout(\n onRefreshingFinish,\n 1000,\n );\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && prevIsFetching && !isFetching) {\n onRefreshingFinish();\n }\n }, [prevIsFetching, isFetching, onRefreshingFinish]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && !prevIsFetching && isFetching) {\n clearWaitFetchingTimeout();\n }\n }, [isFetching, prevIsFetching, clearWaitFetchingTimeout]);\n\n const runRefreshing = React.useCallback(() => {\n if (!refreshing && onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n setWaitFetchingTimeout();\n\n setRefreshing(true);\n setSpinnerY((prevSpinnerY) =>\n platform === Platform.IOS ? prevSpinnerY : initParams.refreshing,\n );\n\n onRefresh();\n runTapticImpactOccurred('light');\n }\n }, [refreshing, onRefresh, setWaitFetchingTimeout, platform, initParams.refreshing]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevTouchDown !== undefined && prevTouchDown && !touchDown) {\n if (!refreshing && canRefresh) {\n runRefreshing();\n } else if (refreshing && !isFetching) {\n // only iOS can start refresh before gesture end\n resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n setSpinnerY(refreshing ? initParams.refreshing : initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }\n }\n }, [\n initParams,\n prevIsFetching,\n isFetching,\n onRefreshingFinish,\n prevTouchDown,\n touchDown,\n refreshing,\n canRefresh,\n runRefreshing,\n ]);\n\n const onTouchStart = (e: TouchEvent) => {\n if (refreshing) {\n cancelEvent(e);\n }\n setTouchDown(true);\n };\n\n const onTouchMove = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = initParams;\n const pageYOffset = scroll?.getScroll().y;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier, maxY } = initParams;\n\n const shift = Math.max(0, shiftY - touchY.current);\n\n const currentY = clamp(start + shift * positionMultiplier, start, maxY);\n const progress = currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n setSpinnerY(currentY);\n setSpinnerProgress(clamp(progress, 0, 80));\n setCanRefresh(progress > 80);\n setContentShift((currentY + 10) * 2.3);\n\n if (progress > 85 && !refreshing && platform === Platform.IOS) {\n runRefreshing();\n }\n } else if (isY && pageYOffset === 0 && shiftY > 0 && !refreshing && touchDown) {\n cancelEvent(e);\n\n touchY.current = shiftY;\n setWatching(true);\n setSpinnerY(start);\n setSpinnerProgress(0);\n }\n };\n\n const onTouchEnd = () => {\n setWatching(false);\n setTouchDown(false);\n };\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = '';\n\n if (platform === Platform.IOS && refreshing && !touchDown) {\n contentTransform = 'translate3d(0, 100px, 0)';\n } else if (platform === 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={onTouchStart}\n onMove={onTouchMove}\n onEnd={onTouchEnd}\n className={classNames(\n styles['PullToRefresh'],\n platform === Platform.IOS && styles['PullToRefresh--ios'],\n watching && styles['PullToRefresh--watching'],\n refreshing && styles['PullToRefresh--refreshing'],\n className,\n )}\n >\n <FixedLayout className={styles['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 className={styles['PullToRefresh__content']}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"PullToRefresh.js","names":["cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","TOUCH_MOVE_EVENT_PARAMS","passive","PullToRefresh","children","isFetching","onRefresh","className","restProps","platform","usePlatform","scroll","useScroll","useDOM","document","prevIsFetching","usePrevious","initParams","React","useMemo","start","Platform","IOS","max","maxY","refreshing","positionMultiplier","useState","spinnerY","setSpinnerY","watching","setWatching","setRefreshing","canRefresh","setCanRefresh","touchDown","setTouchDown","prevTouchDown","touchY","useRef","contentShift","setContentShift","spinnerProgress","setSpinnerProgress","onWindowTouchMove","useGlobalEventListener","resetRefreshingState","useCallback","onRefreshingFinish","useTimeout","setWaitFetchingTimeout","set","clearWaitFetchingTimeout","clear","useIsomorphicLayoutEffect","undefined","runRefreshing","prevSpinnerY","runTapticImpactOccurred","onTouchStart","e","onTouchMove","isY","shiftY","pageYOffset","getScroll","y","shift","Math","current","currentY","clamp","progress","abs","onTouchEnd","spinnerTransform","contentTransform","classNames","transform","WebkitTransform","opacity"],"sources":["../../../../src/components/PullToRefresh/PullToRefresh.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { DOMProps, useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { runTapticImpactOccurred } from '../../lib/taptic';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { AnyFunction } from '../../types';\nimport { ScrollContextInterface, useScroll } from '../AppRoot/ScrollContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { Touch, TouchEvent, TouchProps } from '../Touch/Touch';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { PullToRefreshSpinner } from './PullToRefreshSpinner';\nimport styles from './PullToRefresh.module.css';\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\nexport interface PullToRefreshProps extends DOMProps, TouchProps {\n /**\n * Будет вызвана для обновления контента (прим.: функция должна быть мемоизированным коллбэком)\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n children?: React.ReactNode;\n}\n\nconst TOUCH_MOVE_EVENT_PARAMS = {\n cancelable: true,\n passive: false,\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PullToRefresh\n */\nexport const PullToRefresh = ({\n children,\n isFetching,\n onRefresh,\n className,\n ...restProps\n}: PullToRefreshProps) => {\n const platform = usePlatform();\n const scroll = useScroll();\n const { document } = useDOM();\n const prevIsFetching = usePrevious(isFetching);\n\n const initParams = React.useMemo(\n () => ({\n start: platform === Platform.IOS ? -10 : -45,\n max: platform === Platform.IOS ? 50 : 80,\n maxY: platform === Platform.IOS ? 400 : 80,\n refreshing: platform === Platform.IOS ? 36 : 50,\n positionMultiplier: platform === Platform.IOS ? 0.21 : 1,\n }),\n [platform],\n );\n\n const [spinnerY, setSpinnerY] = React.useState(initParams.start);\n const [watching, setWatching] = React.useState(false);\n const [refreshing, setRefreshing] = React.useState(false);\n const [canRefresh, setCanRefresh] = React.useState(false);\n const [touchDown, setTouchDown] = React.useState(false);\n const prevTouchDown = usePrevious(touchDown);\n\n const touchY = React.useRef(0);\n const [contentShift, setContentShift] = React.useState(0);\n const [spinnerProgress, setSpinnerProgress] = React.useState(0);\n\n const onWindowTouchMove = (event: Event) => {\n if (refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n useGlobalEventListener(document, 'touchmove', onWindowTouchMove, TOUCH_MOVE_EVENT_PARAMS);\n\n const resetRefreshingState = React.useCallback(() => {\n setWatching(false);\n setCanRefresh(false);\n setRefreshing(false);\n setSpinnerY(initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }, [initParams]);\n\n const onRefreshingFinish = React.useCallback(() => {\n if (!touchDown) {\n resetRefreshingState();\n }\n }, [touchDown, resetRefreshingState]);\n\n const { set: setWaitFetchingTimeout, clear: clearWaitFetchingTimeout } = useTimeout(\n onRefreshingFinish,\n 1000,\n );\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && prevIsFetching && !isFetching) {\n onRefreshingFinish();\n }\n }, [prevIsFetching, isFetching, onRefreshingFinish]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && !prevIsFetching && isFetching) {\n clearWaitFetchingTimeout();\n }\n }, [isFetching, prevIsFetching, clearWaitFetchingTimeout]);\n\n const runRefreshing = React.useCallback(() => {\n if (!refreshing && onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n setWaitFetchingTimeout();\n\n setRefreshing(true);\n setSpinnerY((prevSpinnerY) =>\n platform === Platform.IOS ? prevSpinnerY : initParams.refreshing,\n );\n\n onRefresh();\n runTapticImpactOccurred('light');\n }\n }, [refreshing, onRefresh, setWaitFetchingTimeout, platform, initParams.refreshing]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevTouchDown !== undefined && prevTouchDown && !touchDown) {\n if (!refreshing && canRefresh) {\n runRefreshing();\n } else if (refreshing && !isFetching) {\n // only iOS can start refresh before gesture end\n resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n setSpinnerY(refreshing ? initParams.refreshing : initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }\n }\n }, [\n initParams,\n prevIsFetching,\n isFetching,\n onRefreshingFinish,\n prevTouchDown,\n touchDown,\n refreshing,\n canRefresh,\n runRefreshing,\n ]);\n\n const onTouchStart = (e: TouchEvent) => {\n if (refreshing) {\n cancelEvent(e);\n }\n setTouchDown(true);\n };\n\n const onTouchMove = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = initParams;\n const pageYOffset = scroll?.getScroll().y;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier, maxY } = initParams;\n\n const shift = Math.max(0, shiftY - touchY.current);\n\n const currentY = clamp(start + shift * positionMultiplier, start, maxY);\n const progress = currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n setSpinnerY(currentY);\n setSpinnerProgress(clamp(progress, 0, 80));\n setCanRefresh(progress > 80);\n setContentShift((currentY + 10) * 2.3);\n\n if (progress > 85 && !refreshing && platform === Platform.IOS) {\n runRefreshing();\n }\n } else if (isY && pageYOffset === 0 && shiftY > 0 && !refreshing && touchDown) {\n cancelEvent(e);\n\n touchY.current = shiftY;\n setWatching(true);\n setSpinnerY(start);\n setSpinnerProgress(0);\n }\n };\n\n const onTouchEnd = () => {\n setWatching(false);\n setTouchDown(false);\n };\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = '';\n\n if (platform === Platform.IOS && refreshing && !touchDown) {\n contentTransform = 'translate3d(0, 100px, 0)';\n } else if (platform === 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={onTouchStart}\n onMove={onTouchMove}\n onEnd={onTouchEnd}\n className={classNames(\n styles['PullToRefresh'],\n platform === Platform.IOS && styles['PullToRefresh--ios'],\n watching && styles['PullToRefresh--watching'],\n refreshing && styles['PullToRefresh--refreshing'],\n className,\n )}\n >\n <FixedLayout className={styles['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 className={styles['PullToRefresh__content']}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n};\n"],"mappings":"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"}
@@ -8,16 +8,20 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.Radio = void 0;
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
12
  var React = _interopRequireWildcard(require("react"));
12
- var _Tappable = require("../Tappable/Tappable");
13
13
  var _vkjs = require("@vkontakte/vkjs");
14
- var _platform = require("../../lib/platform");
14
+ var _useAdaptivity2 = require("../../hooks/useAdaptivity");
15
15
  var _usePlatform = require("../../hooks/usePlatform");
16
- var _VisuallyHiddenInput = require("../VisuallyHiddenInput/VisuallyHiddenInput");
16
+ var _adaptivity = require("../../lib/adaptivity");
17
+ var _platform = require("../../lib/platform");
18
+ var _Tappable = require("../Tappable/Tappable");
17
19
  var _Footnote = require("../Typography/Footnote/Footnote");
18
- var _getSizeYClassName = require("../../helpers/getSizeYClassName");
19
- var _useAdaptivity2 = require("../../hooks/useAdaptivity");
20
+ var _VisuallyHiddenInput = require("../VisuallyHiddenInput/VisuallyHiddenInput");
20
21
  var _excluded = ["children", "description", "style", "className", "getRootRef"];
22
+ var sizeYClassNames = (0, _defineProperty2.default)({
23
+ none: "vkuiRadio--sizeY-none"
24
+ }, _adaptivity.SizeType.COMPACT, "vkuiRadio--sizeY-compact");
21
25
  var RadioIcon = function RadioIcon(props) {
22
26
  return /*#__PURE__*/React.createElement("svg", (0, _extends2.default)({
23
27
  xmlns: "http://www.w3.org/2000/svg",
@@ -50,11 +54,12 @@ var Radio = function Radio(_ref) {
50
54
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
51
55
  var platform = (0, _usePlatform.usePlatform)();
52
56
  var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
53
- sizeY = _useAdaptivity.sizeY;
57
+ _useAdaptivity$sizeY = _useAdaptivity.sizeY,
58
+ sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
54
59
  return /*#__PURE__*/React.createElement(_Tappable.Tappable, {
55
60
  Component: "label",
56
61
  style: style,
57
- className: (0, _vkjs.classNames)("vkuiRadio", (0, _getSizeYClassName.getSizeYClassName)("vkuiRadio", sizeY), className),
62
+ className: (0, _vkjs.classNames)("vkuiRadio", sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], className),
58
63
  activeEffectDelay: platform === _platform.Platform.IOS ? 100 : _Tappable.ACTIVE_EFFECT_DELAY,
59
64
  disabled: restProps.disabled,
60
65
  getRootRef: getRootRef
@@ -1 +1 @@
1
- {"version":3,"file":"Radio.js","names":["RadioIcon","props","Radio","children","description","style","className","getRootRef","restProps","platform","usePlatform","useAdaptivity","sizeY","classNames","getSizeYClassName","Platform","IOS","ACTIVE_EFFECT_DELAY","disabled","hasReactNode"],"sources":["../../../../src/components/Radio/Radio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ACTIVE_EFFECT_DELAY, Tappable } from '../Tappable/Tappable';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { VisuallyHiddenInput } from '../VisuallyHiddenInput/VisuallyHiddenInput';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport styles from './Radio.module.css';\n\nconst RadioIcon = (props: React.SVGProps<SVGSVGElement>) => {\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" aria-hidden {...props}>\n <circle cx=\"12\" cy=\"12\" r=\"11\" stroke=\"currentColor\" strokeWidth=\"2\" fill=\"none\" />\n <circle cx=\"12\" cy=\"12\" r=\"7.5\" className={styles['Radio__pin']} fill=\"currentColor\" />\n </svg>\n );\n};\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement> {\n description?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Radio\n */\nexport const Radio = ({\n children,\n description,\n style,\n className,\n getRootRef,\n ...restProps\n}: RadioProps) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={classNames(styles['Radio'], getSizeYClassName(styles['Radio'], sizeY), className)}\n activeEffectDelay={platform === Platform.IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <VisuallyHiddenInput {...restProps} className={styles['Radio__input']} type=\"radio\" />\n <div className={styles['Radio__container']}>\n <RadioIcon className={styles['Radio__icon']} />\n <div className={styles['Radio__content']}>\n <div className={styles['Radio__children']}>{children}</div>\n {hasReactNode(description) && (\n <Footnote className={styles['Radio__description']}>{description}</Footnote>\n )}\n </div>\n </div>\n </Tappable>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAA0D;AAG1D,IAAMA,SAAS,GAAG,SAAZA,SAAS,CAAIC,KAAoC,EAAK;EAC1D,oBACE;IAAK,KAAK,EAAC,4BAA4B;IAAC,OAAO,EAAC,WAAW;IAAC;EAAW,GAAKA,KAAK,gBAC/E;IAAQ,EAAE,EAAC,IAAI;IAAC,EAAE,EAAC,IAAI;IAAC,CAAC,EAAC,IAAI;IAAC,MAAM,EAAC,cAAc;IAAC,WAAW,EAAC,GAAG;IAAC,IAAI,EAAC;EAAM,EAAG,eACnF;IAAQ,EAAE,EAAC,IAAI;IAAC,EAAE,EAAC,IAAI;IAAC,CAAC,EAAC,KAAK;IAAC,SAAS,kBAAuB;IAAC,IAAI,EAAC;EAAc,EAAG,CACnF;AAEV,CAAC;AASD;AACA;AACA;AACO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAOA;EAAA,IANhBC,QAAQ,QAARA,QAAQ;IACRC,WAAW,QAAXA,WAAW;IACXC,KAAK,QAALA,KAAK;IACLC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACPC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,qBAAkB,IAAAC,6BAAa,GAAE;IAAzBC,KAAK,kBAALA,KAAK;EAEb,oBACE,oBAAC,kBAAQ;IACP,SAAS,EAAC,OAAO;IACjB,KAAK,EAAEP,KAAM;IACb,SAAS,EAAE,IAAAQ,gBAAU,eAAkB,IAAAC,oCAAiB,eAAkBF,KAAK,CAAC,EAAEN,SAAS,CAAE;IAC7F,iBAAiB,EAAEG,QAAQ,KAAKM,kBAAQ,CAACC,GAAG,GAAG,GAAG,GAAGC,6BAAoB;IACzE,QAAQ,EAAET,SAAS,CAACU,QAAS;IAC7B,UAAU,EAAEX;EAAW,gBAEvB,oBAAC,wCAAmB,6BAAKC,SAAS;IAAE,SAAS,oBAAyB;IAAC,IAAI,EAAC;EAAO,GAAG,eACtF;IAAK,SAAS;EAA6B,gBACzC,oBAAC,SAAS;IAAC,SAAS;EAAwB,EAAG,eAC/C;IAAK,SAAS;EAA2B,gBACvC;IAAK,SAAS;EAA4B,GAAEL,QAAQ,CAAO,EAC1D,IAAAgB,kBAAY,EAACf,WAAW,CAAC,iBACxB,oBAAC,kBAAQ;IAAC,SAAS;EAA+B,GAAEA,WAAW,CAChE,CACG,CACF,CACG;AAEf,CAAC;AAAC"}
1
+ {"version":3,"file":"Radio.js","names":["sizeYClassNames","none","SizeType","COMPACT","RadioIcon","props","Radio","children","description","style","className","getRootRef","restProps","platform","usePlatform","useAdaptivity","sizeY","classNames","REGULAR","Platform","IOS","ACTIVE_EFFECT_DELAY","disabled","hasReactNode"],"sources":["../../../../src/components/Radio/Radio.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { ACTIVE_EFFECT_DELAY, Tappable } from '../Tappable/Tappable';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { VisuallyHiddenInput } from '../VisuallyHiddenInput/VisuallyHiddenInput';\nimport styles from './Radio.module.css';\n\nconst sizeYClassNames = {\n none: styles['Radio--sizeY-none'],\n [SizeType.COMPACT]: styles['Radio--sizeY-compact'],\n};\n\nconst RadioIcon = (props: React.SVGProps<SVGSVGElement>) => {\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 24 24\" aria-hidden {...props}>\n <circle cx=\"12\" cy=\"12\" r=\"11\" stroke=\"currentColor\" strokeWidth=\"2\" fill=\"none\" />\n <circle cx=\"12\" cy=\"12\" r=\"7.5\" className={styles['Radio__pin']} fill=\"currentColor\" />\n </svg>\n );\n};\n\nexport interface RadioProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLLabelElement> {\n description?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Radio\n */\nexport const Radio = ({\n children,\n description,\n style,\n className,\n getRootRef,\n ...restProps\n}: RadioProps) => {\n const platform = usePlatform();\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <Tappable\n Component=\"label\"\n style={style}\n className={classNames(\n styles['Radio'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n activeEffectDelay={platform === Platform.IOS ? 100 : ACTIVE_EFFECT_DELAY}\n disabled={restProps.disabled}\n getRootRef={getRootRef}\n >\n <VisuallyHiddenInput {...restProps} className={styles['Radio__input']} type=\"radio\" />\n <div className={styles['Radio__container']}>\n <RadioIcon className={styles['Radio__icon']} />\n <div className={styles['Radio__content']}>\n <div className={styles['Radio__children']}>{children}</div>\n {hasReactNode(description) && (\n <Footnote className={styles['Radio__description']}>{description}</Footnote>\n )}\n </div>\n </div>\n </Tappable>\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAAiF;AAGjF,IAAMA,eAAe;EACnBC,IAAI;AAA6B,GAChCC,oBAAQ,CAACC,OAAO,6BAClB;AAED,IAAMC,SAAS,GAAG,SAAZA,SAAS,CAAIC,KAAoC,EAAK;EAC1D,oBACE;IAAK,KAAK,EAAC,4BAA4B;IAAC,OAAO,EAAC,WAAW;IAAC;EAAW,GAAKA,KAAK,gBAC/E;IAAQ,EAAE,EAAC,IAAI;IAAC,EAAE,EAAC,IAAI;IAAC,CAAC,EAAC,IAAI;IAAC,MAAM,EAAC,cAAc;IAAC,WAAW,EAAC,GAAG;IAAC,IAAI,EAAC;EAAM,EAAG,eACnF;IAAQ,EAAE,EAAC,IAAI;IAAC,EAAE,EAAC,IAAI;IAAC,CAAC,EAAC,KAAK;IAAC,SAAS,kBAAuB;IAAC,IAAI,EAAC;EAAc,EAAG,CACnF;AAEV,CAAC;AASD;AACA;AACA;AACO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAOA;EAAA,IANhBC,QAAQ,QAARA,QAAQ;IACRC,WAAW,QAAXA,WAAW;IACXC,KAAK,QAALA,KAAK;IACLC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACPC,SAAS;EAEZ,IAAMC,QAAQ,GAAG,IAAAC,wBAAW,GAAE;EAC9B,qBAA2B,IAAAC,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,oBACE,oBAAC,kBAAQ;IACP,SAAS,EAAC,OAAO;IACjB,KAAK,EAAEP,KAAM;IACb,SAAS,EAAE,IAAAQ,gBAAU,eAEnBD,KAAK,KAAKd,oBAAQ,CAACgB,OAAO,IAAIlB,eAAe,CAACgB,KAAK,CAAC,EACpDN,SAAS,CACT;IACF,iBAAiB,EAAEG,QAAQ,KAAKM,kBAAQ,CAACC,GAAG,GAAG,GAAG,GAAGC,6BAAoB;IACzE,QAAQ,EAAET,SAAS,CAACU,QAAS;IAC7B,UAAU,EAAEX;EAAW,gBAEvB,oBAAC,wCAAmB,6BAAKC,SAAS;IAAE,SAAS,oBAAyB;IAAC,IAAI,EAAC;EAAO,GAAG,eACtF;IAAK,SAAS;EAA6B,gBACzC,oBAAC,SAAS;IAAC,SAAS;EAAwB,EAAG,eAC/C;IAAK,SAAS;EAA2B,gBACvC;IAAK,SAAS;EAA4B,GAAEL,QAAQ,CAAO,EAC1D,IAAAgB,kBAAY,EAACf,WAAW,CAAC,iBACxB,oBAAC,kBAAQ;IAAC,SAAS;EAA+B,GAAEA,WAAW,CAChE,CACG,CACF,CACG;AAEf,CAAC;AAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"RangeSlider.js","names":["RangeSlider","onChange","min","max","defaultValue","step","props","isControlled","value","undefined","React","useState","localValue","setValue","start","end","useMemo","clamp","handleChange","useCallback","nextValue","event","disabled"],"sources":["../../../../src/components/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { clamp } from '../../helpers/math';\nimport { UniversalSlider, UniversalSliderProps } from './UniversalSlider';\nimport { TouchEvent } from '../Touch/Touch';\n\nexport type Value = [number, number];\nexport type RangeSliderProps = UniversalSliderProps<Value>;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RangeSlider\n */\nexport const RangeSlider = ({\n onChange,\n min = 0,\n max = 100,\n defaultValue = [min, max],\n step = 0,\n ...props\n}: RangeSliderProps) => {\n const isControlled = props.value !== undefined;\n\n const [localValue, setValue] = React.useState(defaultValue);\n const [start, end] = props.value || localValue;\n const value = React.useMemo(\n () => [clamp(start, min, max), clamp(end, min, max)] as Value,\n [end, max, min, start],\n );\n\n const handleChange: RangeSliderProps['onChange'] = React.useCallback(\n (nextValue: Value, event: TouchEvent) => {\n if (props.disabled || (value[0] === nextValue[0] && value[1] === nextValue[1])) {\n return;\n }\n !isControlled && setValue(nextValue);\n onChange && onChange(nextValue, event);\n },\n [props.disabled, value, isControlled, onChange],\n );\n\n return (\n <UniversalSlider\n {...props}\n value={value}\n onChange={handleChange}\n min={min}\n max={max}\n step={step}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AAA0E;AAM1E;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAOA;EAAA,IANtBC,QAAQ,QAARA,QAAQ;IAAA,gBACRC,GAAG;IAAHA,GAAG,yBAAG,CAAC;IAAA,gBACPC,GAAG;IAAHA,GAAG,yBAAG,GAAG;IAAA,yBACTC,YAAY;IAAZA,YAAY,kCAAG,CAACF,GAAG,EAAEC,GAAG,CAAC;IAAA,iBACzBE,IAAI;IAAJA,IAAI,0BAAG,CAAC;IACLC,KAAK;EAER,IAAMC,YAAY,GAAGD,KAAK,CAACE,KAAK,KAAKC,SAAS;EAE9C,sBAA+BC,KAAK,CAACC,QAAQ,CAACP,YAAY,CAAC;IAAA;IAApDQ,UAAU;IAAEC,QAAQ;EAC3B,YAAqBP,KAAK,CAACE,KAAK,IAAII,UAAU;IAAA;IAAvCE,KAAK;IAAEC,GAAG;EACjB,IAAMP,KAAK,GAAGE,KAAK,CAACM,OAAO,CACzB;IAAA,OAAM,CAAC,IAAAC,WAAK,EAACH,KAAK,EAAEZ,GAAG,EAAEC,GAAG,CAAC,EAAE,IAAAc,WAAK,EAACF,GAAG,EAAEb,GAAG,EAAEC,GAAG,CAAC,CAAC;EAAA,CAAS,EAC7D,CAACY,GAAG,EAAEZ,GAAG,EAAED,GAAG,EAAEY,KAAK,CAAC,CACvB;EAED,IAAMI,YAA0C,GAAGR,KAAK,CAACS,WAAW,CAClE,UAACC,SAAgB,EAAEC,KAAiB,EAAK;IACvC,IAAIf,KAAK,CAACgB,QAAQ,IAAKd,KAAK,CAAC,CAAC,CAAC,KAAKY,SAAS,CAAC,CAAC,CAAC,IAAIZ,KAAK,CAAC,CAAC,CAAC,KAAKY,SAAS,CAAC,CAAC,CAAE,EAAE;MAC9E;IACF;IACA,CAACb,YAAY,IAAIM,QAAQ,CAACO,SAAS,CAAC;IACpCnB,QAAQ,IAAIA,QAAQ,CAACmB,SAAS,EAAEC,KAAK,CAAC;EACxC,CAAC,EACD,CAACf,KAAK,CAACgB,QAAQ,EAAEd,KAAK,EAAED,YAAY,EAAEN,QAAQ,CAAC,CAChD;EAED,oBACE,oBAAC,gCAAe,6BACVK,KAAK;IACT,KAAK,EAAEE,KAAM;IACb,QAAQ,EAAEU,YAAa;IACvB,GAAG,EAAEhB,GAAI;IACT,GAAG,EAAEC,GAAI;IACT,IAAI,EAAEE;EAAK,GACX;AAEN,CAAC;AAAC"}
1
+ {"version":3,"file":"RangeSlider.js","names":["RangeSlider","onChange","min","max","defaultValue","step","props","isControlled","value","undefined","React","useState","localValue","setValue","start","end","useMemo","clamp","handleChange","useCallback","nextValue","event","disabled"],"sources":["../../../../src/components/RangeSlider/RangeSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { clamp } from '../../helpers/math';\nimport { TouchEvent } from '../Touch/Touch';\nimport { UniversalSlider, UniversalSliderProps } from './UniversalSlider';\n\nexport type Value = [number, number];\nexport type RangeSliderProps = UniversalSliderProps<Value>;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RangeSlider\n */\nexport const RangeSlider = ({\n onChange,\n min = 0,\n max = 100,\n defaultValue = [min, max],\n step = 0,\n ...props\n}: RangeSliderProps) => {\n const isControlled = props.value !== undefined;\n\n const [localValue, setValue] = React.useState(defaultValue);\n const [start, end] = props.value || localValue;\n const value = React.useMemo(\n () => [clamp(start, min, max), clamp(end, min, max)] as Value,\n [end, max, min, start],\n );\n\n const handleChange: RangeSliderProps['onChange'] = React.useCallback(\n (nextValue: Value, event: TouchEvent) => {\n if (props.disabled || (value[0] === nextValue[0] && value[1] === nextValue[1])) {\n return;\n }\n !isControlled && setValue(nextValue);\n onChange && onChange(nextValue, event);\n },\n [props.disabled, value, isControlled, onChange],\n );\n\n return (\n <UniversalSlider\n {...props}\n value={value}\n onChange={handleChange}\n min={min}\n max={max}\n step={step}\n />\n );\n};\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AAEA;AAA0E;AAK1E;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAOA;EAAA,IANtBC,QAAQ,QAARA,QAAQ;IAAA,gBACRC,GAAG;IAAHA,GAAG,yBAAG,CAAC;IAAA,gBACPC,GAAG;IAAHA,GAAG,yBAAG,GAAG;IAAA,yBACTC,YAAY;IAAZA,YAAY,kCAAG,CAACF,GAAG,EAAEC,GAAG,CAAC;IAAA,iBACzBE,IAAI;IAAJA,IAAI,0BAAG,CAAC;IACLC,KAAK;EAER,IAAMC,YAAY,GAAGD,KAAK,CAACE,KAAK,KAAKC,SAAS;EAE9C,sBAA+BC,KAAK,CAACC,QAAQ,CAACP,YAAY,CAAC;IAAA;IAApDQ,UAAU;IAAEC,QAAQ;EAC3B,YAAqBP,KAAK,CAACE,KAAK,IAAII,UAAU;IAAA;IAAvCE,KAAK;IAAEC,GAAG;EACjB,IAAMP,KAAK,GAAGE,KAAK,CAACM,OAAO,CACzB;IAAA,OAAM,CAAC,IAAAC,WAAK,EAACH,KAAK,EAAEZ,GAAG,EAAEC,GAAG,CAAC,EAAE,IAAAc,WAAK,EAACF,GAAG,EAAEb,GAAG,EAAEC,GAAG,CAAC,CAAC;EAAA,CAAS,EAC7D,CAACY,GAAG,EAAEZ,GAAG,EAAED,GAAG,EAAEY,KAAK,CAAC,CACvB;EAED,IAAMI,YAA0C,GAAGR,KAAK,CAACS,WAAW,CAClE,UAACC,SAAgB,EAAEC,KAAiB,EAAK;IACvC,IAAIf,KAAK,CAACgB,QAAQ,IAAKd,KAAK,CAAC,CAAC,CAAC,KAAKY,SAAS,CAAC,CAAC,CAAC,IAAIZ,KAAK,CAAC,CAAC,CAAC,KAAKY,SAAS,CAAC,CAAC,CAAE,EAAE;MAC9E;IACF;IACA,CAACb,YAAY,IAAIM,QAAQ,CAACO,SAAS,CAAC;IACpCnB,QAAQ,IAAIA,QAAQ,CAACmB,SAAS,EAAEC,KAAK,CAAC;EACxC,CAAC,EACD,CAACf,KAAK,CAACgB,QAAQ,EAAEd,KAAK,EAAED,YAAY,EAAEN,QAAQ,CAAC,CAChD;EAED,oBACE,oBAAC,gCAAe,6BACVK,KAAK;IACT,KAAK,EAAEE,KAAM;IACb,QAAQ,EAAEU,YAAa;IACvB,GAAG,EAAEhB,GAAI;IACT,GAAG,EAAEC,GAAI;IACT,IAAI,EAAEE;EAAK,GACX;AAEN,CAAC;AAAC"}
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { TouchEvent } from '../Touch/Touch';
3
2
  import { HasRootRef } from '../../types';
3
+ import { TouchEvent } from '../Touch/Touch';
4
4
  export declare type UniversalValue = [number | null, number];
5
5
  export interface UniversalSliderProps<Value> extends HasRootRef<HTMLDivElement>, Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange'> {
6
6
  min?: number;
@@ -9,14 +9,18 @@ exports.UniversalSlider = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
12
13
  var React = _interopRequireWildcard(require("react"));
13
- var _Touch = require("../Touch/Touch");
14
14
  var _vkjs = require("@vkontakte/vkjs");
15
15
  var _math = require("../../helpers/math");
16
- var _useExternRef = require("../../hooks/useExternRef");
17
16
  var _useAdaptivity2 = require("../../hooks/useAdaptivity");
18
- var _getSizeYClassName = require("../../helpers/getSizeYClassName");
17
+ var _useExternRef = require("../../hooks/useExternRef");
18
+ var _adaptivity = require("../../lib/adaptivity");
19
+ var _Touch = require("../Touch/Touch");
19
20
  var _excluded = ["min", "max", "step", "value", "defaultValue", "onChange", "getRootRef", "disabled", "className"];
21
+ var sizeYClassNames = (0, _defineProperty2.default)({
22
+ none: "vkuiSlider--sizeY-none"
23
+ }, _adaptivity.SizeType.COMPACT, "vkuiSlider--sizeY-compact");
20
24
  var UniversalSlider = function UniversalSlider(_ref) {
21
25
  var _ref$min = _ref.min,
22
26
  min = _ref$min === void 0 ? 0 : _ref$min,
@@ -44,7 +48,8 @@ var UniversalSlider = function UniversalSlider(_ref) {
44
48
  var thumbStart = React.useRef(null);
45
49
  var thumbEnd = React.useRef(null);
46
50
  var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
47
- sizeY = _useAdaptivity.sizeY;
51
+ _useAdaptivity$sizeY = _useAdaptivity.sizeY,
52
+ sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
48
53
  var offsetToValue = function offsetToValue(absolute) {
49
54
  return (0, _math.rescale)(absolute, [0, gesture.containerWidth], [min, max], {
50
55
  step: step
@@ -118,7 +123,7 @@ var UniversalSlider = function UniversalSlider(_ref) {
118
123
  onMove: onMove,
119
124
  onEnd: onEnd
120
125
  }, {
121
- className: (0, _vkjs.classNames)("vkuiSlider", (0, _getSizeYClassName.getSizeYClassName)("vkuiSlider", sizeY), disabled && "vkuiSlider--disabled", className)
126
+ className: (0, _vkjs.classNames)("vkuiSlider", sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], disabled && "vkuiSlider--disabled", className)
122
127
  }), /*#__PURE__*/React.createElement("div", {
123
128
  ref: container,
124
129
  className: "vkuiSlider__in"
@@ -1 +1 @@
1
- {"version":3,"file":"UniversalSlider.js","names":["UniversalSlider","min","max","step","value","defaultValue","onChange","getRootRef","disabled","className","restProps","start","end","isRange","gesture","React","useRef","dragging","startX","containerWidth","current","container","useExternRef","thumbStart","thumbEnd","useAdaptivity","sizeY","offsetToValue","absolute","rescale","updateRange","nextValue","snapDirection","pos","target","Math","abs","onStart","e","boundingRect","getBoundingClientRect","width","absolutePosition","left","originalEvent","stopPropagation","onMove","shiftX","preventDefault","onEnd","toPercent","v","draggerStyle","join","classNames","getSizeYClassName"],"sources":["../../../../src/components/RangeSlider/UniversalSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Touch, TouchEvent, TouchEventHandler } from '../Touch/Touch';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasRootRef } from '../../types';\nimport { rescale } from '../../helpers/math';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport styles from '../Slider/Slider.module.css';\n\nexport type UniversalValue = [number | null, number];\n\nexport interface UniversalSliderProps<Value>\n extends HasRootRef<HTMLDivElement>,\n Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange'> {\n min?: number;\n max?: number;\n step?: number;\n value?: Value;\n defaultValue?: Value;\n disabled?: boolean;\n onChange?(value: Value, e: TouchEvent): void;\n}\n\nexport const UniversalSlider = ({\n min = 0,\n max = 100,\n step,\n value = [0, 0],\n defaultValue,\n onChange,\n getRootRef,\n disabled,\n className,\n ...restProps\n}: UniversalSliderProps<UniversalValue>) => {\n const [start, end] = value;\n const isRange = start != null;\n const gesture = React.useRef({\n dragging: false as false | 'start' | 'end',\n startX: 0,\n containerWidth: 0,\n }).current;\n const container = useExternRef(getRootRef);\n const thumbStart = React.useRef<HTMLDivElement>(null);\n const thumbEnd = React.useRef<HTMLDivElement>(null);\n const { sizeY } = useAdaptivity();\n\n const offsetToValue = (absolute: number) => {\n return rescale(absolute, [0, gesture.containerWidth], [min, max], { step });\n };\n\n const updateRange = (nextValue: number): UniversalValue => {\n if (start == null) {\n return [null, nextValue];\n }\n\n const { dragging } = gesture;\n if (dragging === 'start') {\n if (nextValue > end) {\n // \"перехватиться\", если перетянули за конец\n gesture.dragging = 'end';\n return [end, nextValue];\n }\n return [nextValue, end];\n }\n if (dragging === 'end') {\n if (nextValue < start) {\n // \"перехватиться\", если перетянули за начало\n gesture.dragging = 'start';\n return [nextValue, start];\n }\n return [start, nextValue];\n }\n\n return value;\n };\n\n const snapDirection = (pos: number, target: EventTarget | null) => {\n if (target === thumbStart.current) {\n return 'start';\n }\n if (target === thumbEnd.current) {\n return 'end';\n }\n return Math.abs((start ?? 0) - pos) <= Math.abs(end - pos) ? 'start' : 'end';\n };\n\n const onStart: TouchEventHandler = (e: TouchEvent) => {\n const boundingRect = container.current?.getBoundingClientRect();\n gesture.containerWidth = boundingRect?.width ?? 0;\n\n const absolutePosition = e.startX - (boundingRect?.left ?? 0);\n const pos = offsetToValue(absolutePosition);\n gesture.dragging = snapDirection(pos, e.originalEvent.target);\n gesture.startX = absolutePosition;\n\n onChange?.(updateRange(pos), e);\n e.originalEvent.stopPropagation();\n };\n\n const onMove: TouchEventHandler = (e: TouchEvent) => {\n onChange?.(updateRange(offsetToValue(gesture.startX + (e.shiftX || 0))), e);\n\n e.originalEvent.stopPropagation();\n e.originalEvent.preventDefault();\n };\n\n const onEnd: TouchEventHandler = (e) => {\n gesture.dragging = false;\n e.originalEvent.stopPropagation();\n };\n\n const toPercent = (v: number) => ((v - min) / (max - min)) * 100;\n const draggerStyle = isRange\n ? {\n width: `${toPercent(end) - toPercent(start ?? 0)}%`,\n left: `${toPercent(start ?? 0)}%`,\n }\n : {\n width: `${toPercent(end)}%`,\n };\n\n return (\n <Touch\n data-value={isRange ? value.join(',') : value}\n {...restProps}\n {...(disabled ? {} : { onStart, onMove, onEnd })}\n className={classNames(\n styles['Slider'],\n getSizeYClassName(styles['Slider'], sizeY),\n disabled && styles['Slider--disabled'],\n className,\n )}\n >\n <div ref={container} className={styles['Slider__in']}>\n <div className={styles['Slider__dragger']} style={draggerStyle}>\n {isRange && (\n <span\n className={classNames(styles['Slider__thumb'], styles['Slider__thumb--start'])}\n ref={thumbStart}\n />\n )}\n <span\n className={classNames(styles['Slider__thumb'], styles['Slider__thumb--end'])}\n ref={thumbEnd}\n />\n </div>\n </div>\n </Touch>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"UniversalSlider.js","names":["sizeYClassNames","none","SizeType","COMPACT","UniversalSlider","min","max","step","value","defaultValue","onChange","getRootRef","disabled","className","restProps","start","end","isRange","gesture","React","useRef","dragging","startX","containerWidth","current","container","useExternRef","thumbStart","thumbEnd","useAdaptivity","sizeY","offsetToValue","absolute","rescale","updateRange","nextValue","snapDirection","pos","target","Math","abs","onStart","e","boundingRect","getBoundingClientRect","width","absolutePosition","left","originalEvent","stopPropagation","onMove","shiftX","preventDefault","onEnd","toPercent","v","draggerStyle","join","classNames","REGULAR"],"sources":["../../../../src/components/RangeSlider/UniversalSlider.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { rescale } from '../../helpers/math';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasRootRef } from '../../types';\nimport { Touch, TouchEvent, TouchEventHandler } from '../Touch/Touch';\nimport styles from '../Slider/Slider.module.css';\n\nconst sizeYClassNames = {\n none: styles['Slider--sizeY-none'],\n [SizeType.COMPACT]: styles['Slider--sizeY-compact'],\n};\n\nexport type UniversalValue = [number | null, number];\n\nexport interface UniversalSliderProps<Value>\n extends HasRootRef<HTMLDivElement>,\n Omit<React.HTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange'> {\n min?: number;\n max?: number;\n step?: number;\n value?: Value;\n defaultValue?: Value;\n disabled?: boolean;\n onChange?(value: Value, e: TouchEvent): void;\n}\n\nexport const UniversalSlider = ({\n min = 0,\n max = 100,\n step,\n value = [0, 0],\n defaultValue,\n onChange,\n getRootRef,\n disabled,\n className,\n ...restProps\n}: UniversalSliderProps<UniversalValue>) => {\n const [start, end] = value;\n const isRange = start != null;\n const gesture = React.useRef({\n dragging: false as false | 'start' | 'end',\n startX: 0,\n containerWidth: 0,\n }).current;\n const container = useExternRef(getRootRef);\n const thumbStart = React.useRef<HTMLDivElement>(null);\n const thumbEnd = React.useRef<HTMLDivElement>(null);\n const { sizeY = 'none' } = useAdaptivity();\n\n const offsetToValue = (absolute: number) => {\n return rescale(absolute, [0, gesture.containerWidth], [min, max], { step });\n };\n\n const updateRange = (nextValue: number): UniversalValue => {\n if (start == null) {\n return [null, nextValue];\n }\n\n const { dragging } = gesture;\n if (dragging === 'start') {\n if (nextValue > end) {\n // \"перехватиться\", если перетянули за конец\n gesture.dragging = 'end';\n return [end, nextValue];\n }\n return [nextValue, end];\n }\n if (dragging === 'end') {\n if (nextValue < start) {\n // \"перехватиться\", если перетянули за начало\n gesture.dragging = 'start';\n return [nextValue, start];\n }\n return [start, nextValue];\n }\n\n return value;\n };\n\n const snapDirection = (pos: number, target: EventTarget | null) => {\n if (target === thumbStart.current) {\n return 'start';\n }\n if (target === thumbEnd.current) {\n return 'end';\n }\n return Math.abs((start ?? 0) - pos) <= Math.abs(end - pos) ? 'start' : 'end';\n };\n\n const onStart: TouchEventHandler = (e: TouchEvent) => {\n const boundingRect = container.current?.getBoundingClientRect();\n gesture.containerWidth = boundingRect?.width ?? 0;\n\n const absolutePosition = e.startX - (boundingRect?.left ?? 0);\n const pos = offsetToValue(absolutePosition);\n gesture.dragging = snapDirection(pos, e.originalEvent.target);\n gesture.startX = absolutePosition;\n\n onChange?.(updateRange(pos), e);\n e.originalEvent.stopPropagation();\n };\n\n const onMove: TouchEventHandler = (e: TouchEvent) => {\n onChange?.(updateRange(offsetToValue(gesture.startX + (e.shiftX || 0))), e);\n\n e.originalEvent.stopPropagation();\n e.originalEvent.preventDefault();\n };\n\n const onEnd: TouchEventHandler = (e) => {\n gesture.dragging = false;\n e.originalEvent.stopPropagation();\n };\n\n const toPercent = (v: number) => ((v - min) / (max - min)) * 100;\n const draggerStyle = isRange\n ? {\n width: `${toPercent(end) - toPercent(start ?? 0)}%`,\n left: `${toPercent(start ?? 0)}%`,\n }\n : {\n width: `${toPercent(end)}%`,\n };\n\n return (\n <Touch\n data-value={isRange ? value.join(',') : value}\n {...restProps}\n {...(disabled ? {} : { onStart, onMove, onEnd })}\n className={classNames(\n styles['Slider'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n disabled && styles['Slider--disabled'],\n className,\n )}\n >\n <div ref={container} className={styles['Slider__in']}>\n <div className={styles['Slider__dragger']} style={draggerStyle}>\n {isRange && (\n <span\n className={classNames(styles['Slider__thumb'], styles['Slider__thumb--start'])}\n ref={thumbStart}\n />\n )}\n <span\n className={classNames(styles['Slider__thumb'], styles['Slider__thumb--end'])}\n ref={thumbEnd}\n />\n </div>\n </div>\n </Touch>\n );\n};\n"],"mappings":"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"}
@@ -10,18 +10,16 @@ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
12
  var React = _interopRequireWildcard(require("react"));
13
+ var _icons = require("@vkontakte/icons");
13
14
  var _vkjs = require("@vkontakte/vkjs");
14
- var _utils = require("../../lib/utils");
15
15
  var _useExternRef = require("../../hooks/useExternRef");
16
+ var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
16
17
  var _usePlatform = require("../../hooks/usePlatform");
17
- var _useAdaptivity2 = require("../../hooks/useAdaptivity");
18
18
  var _dom = require("../../lib/dom");
19
19
  var _platform = require("../../lib/platform");
20
- var _icons = require("@vkontakte/icons");
20
+ var _utils = require("../../lib/utils");
21
21
  var _IconButton = require("../IconButton/IconButton");
22
- var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
23
22
  var _Tappable = require("../Tappable/Tappable");
24
- var _getSizeYClassName = require("../../helpers/getSizeYClassName");
25
23
  var _excluded = ["getRootRef", "children", "onRemove", "removePlaceholder", "align", "className"];
26
24
  /**
27
25
  * @see https://vkcom.github.io/VKUI/#/RemovableIos
@@ -109,8 +107,6 @@ var Removable = function Removable(_ref2) {
109
107
  className = _ref2.className,
110
108
  restProps = (0, _objectWithoutProperties2.default)(_ref2, _excluded);
111
109
  var platform = (0, _usePlatform.usePlatform)();
112
- var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
113
- sizeY = _useAdaptivity.sizeY;
114
110
  var ref = (0, _useExternRef.useExternRef)(getRootRef);
115
111
  var onRemoveClick = function onRemoveClick(e) {
116
112
  e.preventDefault();
@@ -119,7 +115,7 @@ var Removable = function Removable(_ref2) {
119
115
  var removePlaceholderString = (0, _utils.getTitleFromChildren)(removePlaceholder);
120
116
  return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
121
117
  ref: ref,
122
- className: (0, _vkjs.classNames)("vkuiRemovable", platform === _platform.Platform.IOS && "vkuiRemovable--ios", styles["Removable--align-".concat(align)], (0, _getSizeYClassName.getSizeYClassName)("vkuiRemovable", sizeY), className)
118
+ className: (0, _vkjs.classNames)("vkuiRemovable", platform === _platform.Platform.IOS && "vkuiRemovable--ios", styles["Removable--align-".concat(align)], className)
123
119
  }), platform !== _platform.Platform.IOS && /*#__PURE__*/React.createElement("div", {
124
120
  className: "vkuiRemovable__content"
125
121
  }, children, /*#__PURE__*/React.createElement(_IconButton.IconButton, {
@@ -1 +1 @@
1
- {"version":3,"file":"Removable.js","names":["RemovableIos","onRemove","removePlaceholder","removePlaceholderString","children","useDOM","window","removeButtonRef","React","useRef","disabledRef","useState","removeOffset","updateRemoveOffset","useGlobalEventListener","capture","onRemoveTransitionEnd","current","focus","onRemoveActivateClick","e","stopPropagation","offsetWidth","transform","classNames","Removable","getRootRef","noop","align","className","restProps","platform","usePlatform","useAdaptivity","sizeY","ref","useExternRef","onRemoveClick","preventDefault","getTitleFromChildren","Platform","IOS","styles","getSizeYClassName"],"sources":["../../../../src/components/Removable/Removable.tsx"],"sourcesContent":["import * as React from 'react';\nimport { HasRootRef } from '../../types';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { Icon24Cancel } from '@vkontakte/icons';\nimport { IconButton } from '../IconButton/IconButton';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { Tappable } from '../Tappable/Tappable';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport styles from './Removable.module.css';\n\nexport interface RemovableProps {\n /**\n * iOS only. Текст в выезжающей кнопке для удаления ячейки.\n */\n removePlaceholder?: React.ReactNode;\n /**\n * Коллбэк срабатывает при клике на контрол удаления.\n */\n onRemove?: (e: React.MouseEvent, rootEl?: HTMLElement | null) => void;\n}\n\ninterface RemovableIosOwnProps extends RemovableProps {\n removePlaceholderString?: string;\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RemovableIos\n */\nconst RemovableIos = ({\n onRemove,\n removePlaceholder,\n removePlaceholderString,\n children,\n}: RemovableIosOwnProps) => {\n const { window } = useDOM();\n\n const removeButtonRef = React.useRef<HTMLElement>(null);\n const disabledRef = React.useRef(true);\n const [removeOffset, updateRemoveOffset] = React.useState(0);\n\n useGlobalEventListener(\n window,\n 'click',\n () => {\n if (removeOffset > 0) {\n updateRemoveOffset(0);\n }\n },\n { capture: true },\n );\n\n const onRemoveTransitionEnd = () => {\n if (removeOffset > 0) {\n removeButtonRef?.current?.focus();\n } else {\n disabledRef.current = true;\n }\n };\n\n const onRemoveActivateClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n if (!removeButtonRef.current) {\n return;\n }\n const { offsetWidth } = removeButtonRef.current;\n disabledRef.current = false;\n updateRemoveOffset(offsetWidth);\n };\n\n return (\n <div\n className={styles['Removable__content']}\n style={{ transform: `translateX(-${removeOffset ?? 0}px)` }}\n onTransitionEnd={onRemoveTransitionEnd}\n >\n <IconButton\n hasActive={false}\n hasHover={false}\n aria-label={removePlaceholderString}\n className={classNames(styles['Removable__action'], styles['Removable__toggle'])}\n onClick={onRemoveActivateClick}\n disabled={removeOffset > 0}\n >\n <i className={styles['Removable__toggle-in']} role=\"presentation\" />\n </IconButton>\n {children}\n\n <span className={styles['Removable__offset']} aria-hidden />\n\n <Tappable\n Component=\"button\"\n hasActive={false}\n hasHover={false}\n disabled={disabledRef.current}\n getRootRef={removeButtonRef}\n className={styles['Removable__remove']}\n onClick={onRemove}\n >\n <span className={styles['Removable__remove-in']}>{removePlaceholder}</span>\n </Tappable>\n </div>\n );\n};\n\ninterface RemovableOwnProps\n extends React.AllHTMLAttributes<HTMLElement>,\n RemovableProps,\n HasRootRef<HTMLDivElement> {\n /**\n * Расположение кнопки удаления.\n */\n align?: 'start' | 'center';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Removable\n */\nexport const Removable = ({\n getRootRef,\n children,\n onRemove = noop,\n removePlaceholder = 'Удалить',\n align = 'center',\n className,\n ...restProps\n}: RemovableOwnProps) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n\n const ref = useExternRef(getRootRef);\n\n const onRemoveClick = (e: React.MouseEvent) => {\n e.preventDefault();\n onRemove(e);\n };\n\n const removePlaceholderString: string = getTitleFromChildren(removePlaceholder);\n\n return (\n <div\n {...restProps}\n ref={ref}\n className={classNames(\n styles['Removable'],\n platform === Platform.IOS && styles['Removable--ios'],\n styles[`Removable--align-${align}`],\n getSizeYClassName(styles['Removable'], sizeY),\n className,\n )}\n >\n {platform !== Platform.IOS && (\n <div className={styles['Removable__content']}>\n {children}\n\n <IconButton\n activeMode=\"opacity\"\n hoverMode=\"opacity\"\n className={styles['Removable__action']}\n onClick={onRemoveClick}\n aria-label={removePlaceholderString}\n >\n <Icon24Cancel role=\"presentation\" />\n </IconButton>\n\n <span className={styles['Removable__offset']} aria-hidden />\n </div>\n )}\n\n {platform === Platform.IOS && (\n <RemovableIos\n onRemove={onRemoveClick}\n removePlaceholder={removePlaceholder}\n removePlaceholderString={removePlaceholderString}\n >\n {children}\n </RemovableIos>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"Removable.js","names":["RemovableIos","onRemove","removePlaceholder","removePlaceholderString","children","useDOM","window","removeButtonRef","React","useRef","disabledRef","useState","removeOffset","updateRemoveOffset","useGlobalEventListener","capture","onRemoveTransitionEnd","current","focus","onRemoveActivateClick","e","stopPropagation","offsetWidth","transform","classNames","Removable","getRootRef","noop","align","className","restProps","platform","usePlatform","ref","useExternRef","onRemoveClick","preventDefault","getTitleFromChildren","Platform","IOS","styles"],"sources":["../../../../src/components/Removable/Removable.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Cancel } from '@vkontakte/icons';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { HasRootRef } from '../../types';\nimport { IconButton } from '../IconButton/IconButton';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './Removable.module.css';\n\nexport interface RemovableProps {\n /**\n * iOS only. Текст в выезжающей кнопке для удаления ячейки.\n */\n removePlaceholder?: React.ReactNode;\n /**\n * Коллбэк срабатывает при клике на контрол удаления.\n */\n onRemove?: (e: React.MouseEvent, rootEl?: HTMLElement | null) => void;\n}\n\ninterface RemovableIosOwnProps extends RemovableProps {\n removePlaceholderString?: string;\n children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RemovableIos\n */\nconst RemovableIos = ({\n onRemove,\n removePlaceholder,\n removePlaceholderString,\n children,\n}: RemovableIosOwnProps) => {\n const { window } = useDOM();\n\n const removeButtonRef = React.useRef<HTMLElement>(null);\n const disabledRef = React.useRef(true);\n const [removeOffset, updateRemoveOffset] = React.useState(0);\n\n useGlobalEventListener(\n window,\n 'click',\n () => {\n if (removeOffset > 0) {\n updateRemoveOffset(0);\n }\n },\n { capture: true },\n );\n\n const onRemoveTransitionEnd = () => {\n if (removeOffset > 0) {\n removeButtonRef?.current?.focus();\n } else {\n disabledRef.current = true;\n }\n };\n\n const onRemoveActivateClick = (e: React.MouseEvent) => {\n e.stopPropagation();\n if (!removeButtonRef.current) {\n return;\n }\n const { offsetWidth } = removeButtonRef.current;\n disabledRef.current = false;\n updateRemoveOffset(offsetWidth);\n };\n\n return (\n <div\n className={styles['Removable__content']}\n style={{ transform: `translateX(-${removeOffset ?? 0}px)` }}\n onTransitionEnd={onRemoveTransitionEnd}\n >\n <IconButton\n hasActive={false}\n hasHover={false}\n aria-label={removePlaceholderString}\n className={classNames(styles['Removable__action'], styles['Removable__toggle'])}\n onClick={onRemoveActivateClick}\n disabled={removeOffset > 0}\n >\n <i className={styles['Removable__toggle-in']} role=\"presentation\" />\n </IconButton>\n {children}\n\n <span className={styles['Removable__offset']} aria-hidden />\n\n <Tappable\n Component=\"button\"\n hasActive={false}\n hasHover={false}\n disabled={disabledRef.current}\n getRootRef={removeButtonRef}\n className={styles['Removable__remove']}\n onClick={onRemove}\n >\n <span className={styles['Removable__remove-in']}>{removePlaceholder}</span>\n </Tappable>\n </div>\n );\n};\n\ninterface RemovableOwnProps\n extends React.AllHTMLAttributes<HTMLElement>,\n RemovableProps,\n HasRootRef<HTMLDivElement> {\n /**\n * Расположение кнопки удаления.\n */\n align?: 'start' | 'center';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Removable\n */\nexport const Removable = ({\n getRootRef,\n children,\n onRemove = noop,\n removePlaceholder = 'Удалить',\n align = 'center',\n className,\n ...restProps\n}: RemovableOwnProps) => {\n const platform = usePlatform();\n\n const ref = useExternRef(getRootRef);\n\n const onRemoveClick = (e: React.MouseEvent) => {\n e.preventDefault();\n onRemove(e);\n };\n\n const removePlaceholderString: string = getTitleFromChildren(removePlaceholder);\n\n return (\n <div\n {...restProps}\n ref={ref}\n className={classNames(\n styles['Removable'],\n platform === Platform.IOS && styles['Removable--ios'],\n styles[`Removable--align-${align}`],\n className,\n )}\n >\n {platform !== Platform.IOS && (\n <div className={styles['Removable__content']}>\n {children}\n\n <IconButton\n activeMode=\"opacity\"\n hoverMode=\"opacity\"\n className={styles['Removable__action']}\n onClick={onRemoveClick}\n aria-label={removePlaceholderString}\n >\n <Icon24Cancel role=\"presentation\" />\n </IconButton>\n\n <span className={styles['Removable__offset']} aria-hidden />\n </div>\n )}\n\n {platform === Platform.IOS && (\n <RemovableIos\n onRemove={onRemoveClick}\n removePlaceholder={removePlaceholder}\n removePlaceholderString={removePlaceholderString}\n >\n {children}\n </RemovableIos>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -33,7 +33,7 @@ export interface RichCellProps extends TappableProps {
33
33
  */
34
34
  before?: React.ReactNode;
35
35
  /**
36
- * Иконка 24 или текст.
36
+ * Иконка 28 или текст.
37
37
  */
38
38
  after?: React.ReactNode;
39
39
  /**
@@ -52,4 +52,7 @@ export interface RichCellProps extends TappableProps {
52
52
  /**
53
53
  * @see https://vkcom.github.io/VKUI/#/RichCell
54
54
  */
55
- export declare const RichCell: ({ subhead, children, text, caption, before, after, afterCaption, bottom, actions, multiline, className, ...restProps }: RichCellProps) => JSX.Element;
55
+ export declare const RichCell: {
56
+ ({ subhead, children, text, caption, before, after, afterCaption, bottom, actions, multiline, className, ...restProps }: RichCellProps): JSX.Element;
57
+ Icon: ({ children, className, ...restProps }: React.HTMLAttributes<HTMLDivElement>) => JSX.Element;
58
+ };
@@ -8,13 +8,18 @@ Object.defineProperty(exports, "__esModule", {
8
8
  exports.RichCell = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
12
  var React = _interopRequireWildcard(require("react"));
12
13
  var _vkjs = require("@vkontakte/vkjs");
14
+ var _useAdaptivity2 = require("../../hooks/useAdaptivity");
15
+ var _adaptivity = require("../../lib/adaptivity");
13
16
  var _Tappable = require("../Tappable/Tappable");
14
17
  var _Subhead = require("../Typography/Subhead/Subhead");
15
- var _getSizeYClassName = require("../../helpers/getSizeYClassName");
16
- var _useAdaptivity2 = require("../../hooks/useAdaptivity");
18
+ var _RichCellIcon = require("./RichCellIcon/RichCellIcon");
17
19
  var _excluded = ["subhead", "children", "text", "caption", "before", "after", "afterCaption", "bottom", "actions", "multiline", "className"];
20
+ var sizeYClassNames = (0, _defineProperty2.default)({
21
+ none: "vkuiRichCell--sizeY-none"
22
+ }, _adaptivity.SizeType.COMPACT, "vkuiRichCell--sizeY-compact");
18
23
  /**
19
24
  * @see https://vkcom.github.io/VKUI/#/RichCell
20
25
  */
@@ -32,9 +37,10 @@ var RichCell = function RichCell(_ref) {
32
37
  className = _ref.className,
33
38
  restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
34
39
  var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
35
- sizeY = _useAdaptivity.sizeY;
40
+ _useAdaptivity$sizeY = _useAdaptivity.sizeY,
41
+ sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
36
42
  return /*#__PURE__*/React.createElement(_Tappable.Tappable, (0, _extends2.default)({}, restProps, {
37
- className: (0, _vkjs.classNames)("vkuiRichCell", !multiline && "vkuiRichCell--text-ellipsis", (0, _getSizeYClassName.getSizeYClassName)("vkuiRichCell", sizeY), className)
43
+ className: (0, _vkjs.classNames)("vkuiRichCell", !multiline && "vkuiRichCell--text-ellipsis", sizeY !== _adaptivity.SizeType.REGULAR && sizeYClassNames[sizeY], className)
38
44
  }), before && /*#__PURE__*/React.createElement("div", {
39
45
  className: "vkuiRichCell__before"
40
46
  }, before), /*#__PURE__*/React.createElement("div", {
@@ -66,4 +72,5 @@ var RichCell = function RichCell(_ref) {
66
72
  }, actions)));
67
73
  };
68
74
  exports.RichCell = RichCell;
75
+ RichCell.Icon = _RichCellIcon.RichCellIcon;
69
76
  //# sourceMappingURL=RichCell.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"RichCell.js","names":["RichCell","subhead","children","text","caption","before","after","afterCaption","bottom","actions","multiline","className","restProps","useAdaptivity","sizeY","classNames","getSizeYClassName"],"sources":["../../../../src/components/RichCell/RichCell.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { TappableProps, Tappable } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport styles from './RichCell.module.css';\n\nexport interface RichCellProps extends TappableProps {\n /**\n * Контейнер для текста над `children`.\n */\n subhead?: React.ReactNode;\n /**\n * Контейнер для текста под `children`.\n */\n text?: React.ReactNode;\n /**\n * Контейнер для текста под `text`.\n */\n caption?: React.ReactNode;\n /**\n * Контейнер для контента под `caption`. Например `<UsersStack size=\"m\" />`.\n */\n bottom?: React.ReactNode;\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `mode=\"primary\" size=\"s\"`\n * - `mode=\"secondary\" size=\"s\"`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `mode=\"horizontal\" gap=\"s\" stretched`\n */\n actions?: React.ReactNode;\n /**\n * `<Avatar size={40|48|72} />`.\n */\n before?: React.ReactNode;\n /**\n * Иконка 24 или текст.\n */\n after?: React.ReactNode;\n /**\n * Текст под `after`.\n */\n afterCaption?: React.ReactNode;\n /**\n * Убирает анимацию нажатия.\n */\n disabled?: boolean;\n /**\n * Включает многострочный режим для `subhead`, `children`, `text` и `caption`.\n */\n multiline?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RichCell\n */\nexport const RichCell = ({\n subhead,\n children,\n text,\n caption,\n before,\n after,\n afterCaption,\n bottom,\n actions,\n multiline,\n className,\n ...restProps\n}: RichCellProps) => {\n const { sizeY } = useAdaptivity();\n\n return (\n <Tappable\n {...restProps}\n className={classNames(\n styles['RichCell'],\n !multiline && styles['RichCell--text-ellipsis'],\n getSizeYClassName(styles['RichCell'], sizeY),\n className,\n )}\n >\n {before && <div className={styles['RichCell__before']}>{before}</div>}\n <div className={styles['RichCell__in']}>\n <div className={styles['RichCell__content']}>\n <div className={styles['RichCell__content-before']}>\n {subhead && (\n <Subhead Component=\"div\" className={styles['RichCell__subhead']}>\n {subhead}\n </Subhead>\n )}\n <div className={styles['RichCell__children']}>{children}</div>\n {text && <div className={styles['RichCell__text']}>{text}</div>}\n {caption && (\n <Subhead Component=\"div\" className={styles['RichCell__caption']}>\n {caption}\n </Subhead>\n )}\n </div>\n {(after || afterCaption) && (\n <div className={styles['RichCell__content-after']}>\n {after && <div className={styles['RichCell__after-children']}>{after}</div>}\n {afterCaption && (\n <div className={styles['RichCell__after-caption']}>{afterCaption}</div>\n )}\n </div>\n )}\n </div>\n {bottom && <div className={styles['RichCell__bottom']}>{bottom}</div>}\n {actions && <div className={styles['RichCell__actions']}>{actions}</div>}\n </div>\n </Tappable>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AAA0D;AAqD1D;AACA;AACA;AACO,IAAMA,QAAQ,GAAG,SAAXA,QAAQ,OAaA;EAAA,IAZnBC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,IAAI,QAAJA,IAAI;IACJC,OAAO,QAAPA,OAAO;IACPC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,YAAY,QAAZA,YAAY;IACZC,MAAM,QAANA,MAAM;IACNC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,qBAAkB,IAAAC,6BAAa,GAAE;IAAzBC,KAAK,kBAALA,KAAK;EAEb,oBACE,oBAAC,kBAAQ,6BACHF,SAAS;IACb,SAAS,EAAE,IAAAG,gBAAU,kBAEnB,CAACL,SAAS,iCAAqC,EAC/C,IAAAM,oCAAiB,kBAAqBF,KAAK,CAAC,EAC5CH,SAAS;EACT,IAEDN,MAAM,iBAAI;IAAK,SAAS;EAA6B,GAAEA,MAAM,CAAO,eACrE;IAAK,SAAS;EAAyB,gBACrC;IAAK,SAAS;EAA8B,gBAC1C;IAAK,SAAS;EAAqC,GAChDJ,OAAO,iBACN,oBAAC,gBAAO;IAAC,SAAS,EAAC,KAAK;IAAC,SAAS;EAA8B,GAC7DA,OAAO,CAEX,eACD;IAAK,SAAS;EAA+B,GAAEC,QAAQ,CAAO,EAC7DC,IAAI,iBAAI;IAAK,SAAS;EAA2B,GAAEA,IAAI,CAAO,EAC9DC,OAAO,iBACN,oBAAC,gBAAO;IAAC,SAAS,EAAC,KAAK;IAAC,SAAS;EAA8B,GAC7DA,OAAO,CAEX,CACG,EACL,CAACE,KAAK,IAAIC,YAAY,kBACrB;IAAK,SAAS;EAAoC,GAC/CD,KAAK,iBAAI;IAAK,SAAS;EAAqC,GAAEA,KAAK,CAAO,EAC1EC,YAAY,iBACX;IAAK,SAAS;EAAoC,GAAEA,YAAY,CACjE,CAEJ,CACG,EACLC,MAAM,iBAAI;IAAK,SAAS;EAA6B,GAAEA,MAAM,CAAO,EACpEC,OAAO,iBAAI;IAAK,SAAS;EAA8B,GAAEA,OAAO,CAAO,CACpE,CACG;AAEf,CAAC;AAAC"}
1
+ {"version":3,"file":"RichCell.js","names":["sizeYClassNames","none","SizeType","COMPACT","RichCell","subhead","children","text","caption","before","after","afterCaption","bottom","actions","multiline","className","restProps","useAdaptivity","sizeY","classNames","REGULAR","Icon","RichCellIcon"],"sources":["../../../../src/components/RichCell/RichCell.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Tappable, TappableProps } from '../Tappable/Tappable';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { RichCellIcon } from './RichCellIcon/RichCellIcon';\nimport styles from './RichCell.module.css';\n\nconst sizeYClassNames = {\n none: styles['RichCell--sizeY-none'],\n [SizeType.COMPACT]: styles['RichCell--sizeY-compact'],\n};\n\nexport interface RichCellProps extends TappableProps {\n /**\n * Контейнер для текста над `children`.\n */\n subhead?: React.ReactNode;\n /**\n * Контейнер для текста под `children`.\n */\n text?: React.ReactNode;\n /**\n * Контейнер для текста под `text`.\n */\n caption?: React.ReactNode;\n /**\n * Контейнер для контента под `caption`. Например `<UsersStack size=\"m\" />`.\n */\n bottom?: React.ReactNode;\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `mode=\"primary\" size=\"s\"`\n * - `mode=\"secondary\" size=\"s\"`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `mode=\"horizontal\" gap=\"s\" stretched`\n */\n actions?: React.ReactNode;\n /**\n * `<Avatar size={40|48|72} />`.\n */\n before?: React.ReactNode;\n /**\n * Иконка 28 или текст.\n */\n after?: React.ReactNode;\n /**\n * Текст под `after`.\n */\n afterCaption?: React.ReactNode;\n /**\n * Убирает анимацию нажатия.\n */\n disabled?: boolean;\n /**\n * Включает многострочный режим для `subhead`, `children`, `text` и `caption`.\n */\n multiline?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RichCell\n */\nexport const RichCell = ({\n subhead,\n children,\n text,\n caption,\n before,\n after,\n afterCaption,\n bottom,\n actions,\n multiline,\n className,\n ...restProps\n}: RichCellProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <Tappable\n {...restProps}\n className={classNames(\n styles['RichCell'],\n !multiline && styles['RichCell--text-ellipsis'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n >\n {before && <div className={styles['RichCell__before']}>{before}</div>}\n <div className={styles['RichCell__in']}>\n <div className={styles['RichCell__content']}>\n <div className={styles['RichCell__content-before']}>\n {subhead && (\n <Subhead Component=\"div\" className={styles['RichCell__subhead']}>\n {subhead}\n </Subhead>\n )}\n <div className={styles['RichCell__children']}>{children}</div>\n {text && <div className={styles['RichCell__text']}>{text}</div>}\n {caption && (\n <Subhead Component=\"div\" className={styles['RichCell__caption']}>\n {caption}\n </Subhead>\n )}\n </div>\n {(after || afterCaption) && (\n <div className={styles['RichCell__content-after']}>\n {after && <div className={styles['RichCell__after-children']}>{after}</div>}\n {afterCaption && (\n <div className={styles['RichCell__after-caption']}>{afterCaption}</div>\n )}\n </div>\n )}\n </div>\n {bottom && <div className={styles['RichCell__bottom']}>{bottom}</div>}\n {actions && <div className={styles['RichCell__actions']}>{actions}</div>}\n </div>\n </Tappable>\n );\n};\n\nRichCell.Icon = RichCellIcon;\n"],"mappings":";;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAA2D;AAG3D,IAAMA,eAAe;EACnBC,IAAI;AAAgC,GACnCC,oBAAQ,CAACC,OAAO,gCAClB;AAoDD;AACA;AACA;AACO,IAAMC,QAAQ,GAAG,SAAXA,QAAQ,OAaA;EAAA,IAZnBC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,IAAI,QAAJA,IAAI;IACJC,OAAO,QAAPA,OAAO;IACPC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,YAAY,QAAZA,YAAY;IACZC,MAAM,QAANA,MAAM;IACNC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACTC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,qBAA2B,IAAAC,6BAAa,GAAE;IAAA,sCAAlCC,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,oBACE,oBAAC,kBAAQ,6BACHF,SAAS;IACb,SAAS,EAAE,IAAAG,gBAAU,kBAEnB,CAACL,SAAS,iCAAqC,EAC/CI,KAAK,KAAKhB,oBAAQ,CAACkB,OAAO,IAAIpB,eAAe,CAACkB,KAAK,CAAC,EACpDH,SAAS;EACT,IAEDN,MAAM,iBAAI;IAAK,SAAS;EAA6B,GAAEA,MAAM,CAAO,eACrE;IAAK,SAAS;EAAyB,gBACrC;IAAK,SAAS;EAA8B,gBAC1C;IAAK,SAAS;EAAqC,GAChDJ,OAAO,iBACN,oBAAC,gBAAO;IAAC,SAAS,EAAC,KAAK;IAAC,SAAS;EAA8B,GAC7DA,OAAO,CAEX,eACD;IAAK,SAAS;EAA+B,GAAEC,QAAQ,CAAO,EAC7DC,IAAI,iBAAI;IAAK,SAAS;EAA2B,GAAEA,IAAI,CAAO,EAC9DC,OAAO,iBACN,oBAAC,gBAAO;IAAC,SAAS,EAAC,KAAK;IAAC,SAAS;EAA8B,GAC7DA,OAAO,CAEX,CACG,EACL,CAACE,KAAK,IAAIC,YAAY,kBACrB;IAAK,SAAS;EAAoC,GAC/CD,KAAK,iBAAI;IAAK,SAAS;EAAqC,GAAEA,KAAK,CAAO,EAC1EC,YAAY,iBACX;IAAK,SAAS;EAAoC,GAAEA,YAAY,CACjE,CAEJ,CACG,EACLC,MAAM,iBAAI;IAAK,SAAS;EAA6B,GAAEA,MAAM,CAAO,EACpEC,OAAO,iBAAI;IAAK,SAAS;EAA8B,GAAEA,OAAO,CAAO,CACpE,CACG;AAEf,CAAC;AAAC;AAEFT,QAAQ,CAACiB,IAAI,GAAGC,0BAAY"}
@@ -0,0 +1,2 @@
1
+ import * as React from 'react';
2
+ export declare const RichCellIcon: ({ children, className, ...restProps }: React.HTMLAttributes<HTMLDivElement>) => JSX.Element;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.RichCellIcon = void 0;
9
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var React = _interopRequireWildcard(require("react"));
12
+ var _vkjs = require("@vkontakte/vkjs");
13
+ var _excluded = ["children", "className"];
14
+ var RichCellIcon = function RichCellIcon(_ref) {
15
+ var children = _ref.children,
16
+ className = _ref.className,
17
+ restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
18
+ return /*#__PURE__*/React.createElement("div", (0, _extends2.default)({}, restProps, {
19
+ className: (0, _vkjs.classNames)("vkuiRichCellIcon", className)
20
+ }), children);
21
+ };
22
+ exports.RichCellIcon = RichCellIcon;
23
+ //# sourceMappingURL=RichCellIcon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RichCellIcon.js","names":["RichCellIcon","children","className","restProps","classNames"],"sources":["../../../../../src/components/RichCell/RichCellIcon/RichCellIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './RichCellIcon.module.css';\n\nexport const RichCellIcon = ({\n children,\n className,\n ...restProps\n}: React.HTMLAttributes<HTMLDivElement>) => {\n return (\n <div {...restProps} className={classNames(styles['RichCellIcon'], className)}>\n {children}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AAA6C;AAGtC,IAAMA,YAAY,GAAG,SAAfA,YAAY,OAImB;EAAA,IAH1CC,QAAQ,QAARA,QAAQ;IACRC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,oBACE,sDAASA,SAAS;IAAE,SAAS,EAAE,IAAAC,gBAAU,sBAAyBF,SAAS;EAAE,IAC1ED,QAAQ,CACL;AAEV,CAAC;AAAC"}
@@ -9,8 +9,8 @@ exports.RichTooltip = void 0;
9
9
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
11
  var React = _interopRequireWildcard(require("react"));
12
- var _HoverPopper = require("../HoverPopper/HoverPopper");
13
12
  var _vkjs = require("@vkontakte/vkjs");
13
+ var _HoverPopper = require("../HoverPopper/HoverPopper");
14
14
  var _excluded = ["children", "arrow", "appearance", "className"];
15
15
  /**
16
16
  * @see https://vkcom.github.io/VKUI/#/RichTooltip
@@ -1 +1 @@
1
- {"version":3,"file":"RichTooltip.js","names":["RichTooltip","children","arrow","appearance","className","popperProps","classNames","styles"],"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { HoverPopper, HoverPopperProps } from '../HoverPopper/HoverPopper';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './RichTooltip.module.css';\n\nexport interface RichTooltipProps extends Omit<HoverPopperProps, 'arrowClassName'> {\n /**\n * Стиль отображения подсказки\n */\n appearance?: 'accent' | 'neutral' | 'white' | 'black' | 'inversion';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RichTooltip\n */\nexport const RichTooltip = ({\n children,\n arrow = true,\n appearance = 'neutral',\n className,\n ...popperProps\n}: RichTooltipProps) => {\n return (\n <HoverPopper\n className={classNames(\n styles['RichTooltip'],\n styles[`RichTooltip--appearance-${appearance}`],\n className,\n )}\n arrow={arrow}\n arrowClassName={styles['RichTooltip__arrow']}\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AAA6C;AAU7C;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAMA;EAAA,IALtBC,QAAQ,QAARA,QAAQ;IAAA,kBACRC,KAAK;IAALA,KAAK,2BAAG,IAAI;IAAA,uBACZC,UAAU;IAAVA,UAAU,gCAAG,SAAS;IACtBC,SAAS,QAATA,SAAS;IACNC,WAAW;EAEd,oBACE,oBAAC,wBAAW;IACV,SAAS,EAAE,IAAAC,gBAAU,qBAEnBC,MAAM,mCAA4BJ,UAAU,EAAG,EAC/CC,SAAS,CACT;IACF,KAAK,EAAEF,KAAM;IACb,cAAc;EAA+B,GACzCG,WAAW,GAEdJ,QAAQ,CACG;AAElB,CAAC;AAAC;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"RichTooltip.js","names":["RichTooltip","children","arrow","appearance","className","popperProps","classNames","styles"],"sources":["../../../../src/components/RichTooltip/RichTooltip.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HoverPopper, HoverPopperProps } from '../HoverPopper/HoverPopper';\nimport styles from './RichTooltip.module.css';\n\nexport interface RichTooltipProps extends Omit<HoverPopperProps, 'arrowClassName'> {\n /**\n * Стиль отображения подсказки\n */\n appearance?: 'accent' | 'neutral' | 'white' | 'black' | 'inversion';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RichTooltip\n */\nexport const RichTooltip = ({\n children,\n arrow = true,\n appearance = 'neutral',\n className,\n ...popperProps\n}: RichTooltipProps) => {\n return (\n <HoverPopper\n className={classNames(\n styles['RichTooltip'],\n styles[`RichTooltip--appearance-${appearance}`],\n className,\n )}\n arrow={arrow}\n arrowClassName={styles['RichTooltip__arrow']}\n {...popperProps}\n >\n {children}\n </HoverPopper>\n );\n};\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;AAA2E;AAU3E;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAW,OAMA;EAAA,IALtBC,QAAQ,QAARA,QAAQ;IAAA,kBACRC,KAAK;IAALA,KAAK,2BAAG,IAAI;IAAA,uBACZC,UAAU;IAAVA,UAAU,gCAAG,SAAS;IACtBC,SAAS,QAATA,SAAS;IACNC,WAAW;EAEd,oBACE,oBAAC,wBAAW;IACV,SAAS,EAAE,IAAAC,gBAAU,qBAEnBC,MAAM,mCAA4BJ,UAAU,EAAG,EAC/CC,SAAS,CACT;IACF,KAAK,EAAEF,KAAM;IACb,cAAc;EAA+B,GACzCG,WAAW,GAEdJ,QAAQ,CACG;AAElB,CAAC;AAAC;AAAA;EAAA;EAAA;EAAA;EAAA;EAAA;AAAA"}
@@ -11,17 +11,17 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
11
11
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
12
12
  var React = _interopRequireWildcard(require("react"));
13
13
  var _vkjs = require("@vkontakte/vkjs");
14
+ var _usePlatform = require("../../hooks/usePlatform");
15
+ var _useTimeout = require("../../hooks/useTimeout");
16
+ var _dom = require("../../lib/dom");
17
+ var _getNavId = require("../../lib/getNavId");
14
18
  var _platform = require("../../lib/platform");
15
- var _ConfigProviderContext = require("../ConfigProvider/ConfigProviderContext");
16
- var _SplitColContext = require("../SplitCol/SplitColContext");
19
+ var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
20
+ var _warnOnce = require("../../lib/warnOnce");
17
21
  var _ScrollContext = require("../AppRoot/ScrollContext");
22
+ var _ConfigProviderContext = require("../ConfigProvider/ConfigProviderContext");
18
23
  var _NavTransitionContext = require("../NavTransitionContext/NavTransitionContext");
19
- var _getNavId = require("../../lib/getNavId");
20
- var _warnOnce = require("../../lib/warnOnce");
21
- var _dom = require("../../lib/dom");
22
- var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
23
- var _useTimeout = require("../../hooks/useTimeout");
24
- var _usePlatform = require("../../hooks/usePlatform");
24
+ var _SplitColContext = require("../SplitCol/SplitColContext");
25
25
  var _excluded = ["children", "activeView", "onTransition", "nav", "className"];
26
26
  var warn = (0, _warnOnce.warnOnce)('Root');
27
27