@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
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalScroll.js","names":["React","useAdaptivityHasPointer","HorizontalScrollArrow","easeInOutSine","useEventListener","useExternRef","classNames","now","performance","Date","roundUpElementScrollLeft","el","Math","ceil","scrollLeft","SCROLL_ONE_FRAME_TIME","doScroll","scrollElement","getScrollPosition","animationQueue","onScrollToRightBorder","onScrollEnd","onScrollStart","initialScrollWidth","scrollAnimationDuration","maxLeft","offsetWidth","startLeft","endLeft","startTime","scroll","time","elapsed","min","value","currentLeft","max","requestAnimationFrame","shift","length","HorizontalScroll","children","getScrollToLeft","getScrollToRight","showArrows","arrowSize","getRef","className","restProps","useState","canScrollLeft","setCanScrollLeft","canScrollRight","setCanScrollRight","isCustomScrollingRef","useRef","scrollerRef","hasPointer","scrollTo","useCallback","current","push","firstElementChild","scrollWidth","scrollToLeft","i","scrollToRight","onscroll","scrollEvent","useEffect","add","undefined"],"sources":["../../../../src/components/HorizontalScroll/HorizontalScroll.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { HorizontalScrollArrow } from './HorizontalScrollArrow';\nimport { easeInOutSine } from '../../lib/fx';\nimport { useEventListener } from '../../hooks/useEventListener';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { HasRef } from '../../types';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './HorizontalScroll.module.css';\n\ninterface ScrollContext {\n scrollElement: HTMLElement | null;\n scrollAnimationDuration: number;\n animationQueue: VoidFunction[];\n getScrollPosition: (currentPosition: number) => number;\n onScrollToRightBorder: VoidFunction;\n onScrollEnd: VoidFunction;\n onScrollStart: VoidFunction;\n /**\n * Начальная ширина прокрутки.\n * В некоторых случаях может отличаться от текущей ширины прокрутки из-за transforms: translate\n */\n initialScrollWidth: number;\n}\n\nexport type ScrollPositionHandler = (currentPosition: number) => number;\n\nexport interface HorizontalScrollProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * Функция для расчета величины прокрутки при клике на левую стрелку.\n */\n getScrollToLeft?: ScrollPositionHandler;\n /**\n * Функция для расчета величины прокрутки при клике на правую стрелку.\n */\n getScrollToRight?: ScrollPositionHandler;\n arrowSize?: 'm' | 'l';\n showArrows?: boolean | 'always';\n scrollAnimationDuration?: number;\n}\n\n/**\n * timing method\n */\nfunction now() {\n return performance && performance.now ? performance.now() : Date.now();\n}\n\n/**\n * Округляем el.scrollLeft\n * https://github.com/VKCOM/VKUI/pull/2445\n */\nconst roundUpElementScrollLeft = (el: HTMLElement) => Math.ceil(el.scrollLeft);\n\n/**\n * Код анимации скрола, на основе полифила: https://github.com/iamdustan/smoothscroll\n * Константа взята из полифила (468), на дизайн-ревью уточнили до 250\n * @var {number} SCROLL_ONE_FRAME_TIME время анимации скролла\n */\nconst SCROLL_ONE_FRAME_TIME = 250;\n\nfunction doScroll({\n scrollElement,\n getScrollPosition,\n animationQueue,\n onScrollToRightBorder,\n onScrollEnd,\n onScrollStart,\n initialScrollWidth,\n scrollAnimationDuration = SCROLL_ONE_FRAME_TIME,\n}: ScrollContext) {\n if (!scrollElement || !getScrollPosition) {\n return;\n }\n\n /**\n * максимальное значение сдвига влево\n */\n const maxLeft = initialScrollWidth - scrollElement.offsetWidth;\n\n let startLeft = roundUpElementScrollLeft(scrollElement);\n let endLeft = getScrollPosition(startLeft);\n\n onScrollStart();\n\n if (endLeft >= maxLeft) {\n onScrollToRightBorder();\n endLeft = maxLeft;\n }\n\n const startTime = now();\n\n (function scroll() {\n if (!scrollElement) {\n onScrollEnd();\n return;\n }\n\n const time = now();\n const elapsed = Math.min((time - startTime) / scrollAnimationDuration, 1);\n\n const value = easeInOutSine(elapsed);\n\n const currentLeft = startLeft + (endLeft - startLeft) * value;\n scrollElement.scrollLeft = Math.ceil(currentLeft);\n\n if (roundUpElementScrollLeft(scrollElement) !== Math.max(0, endLeft) && elapsed !== 1) {\n requestAnimationFrame(scroll);\n return;\n }\n\n onScrollEnd();\n animationQueue.shift();\n if (animationQueue.length > 0) {\n animationQueue[0]();\n }\n })();\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/HorizontalScroll\n */\nexport const HorizontalScroll = ({\n children,\n getScrollToLeft,\n getScrollToRight,\n showArrows = true,\n arrowSize = 'l',\n scrollAnimationDuration = SCROLL_ONE_FRAME_TIME,\n getRef,\n className,\n ...restProps\n}: HorizontalScrollProps) => {\n const [canScrollLeft, setCanScrollLeft] = React.useState(false);\n const [canScrollRight, setCanScrollRight] = React.useState(false);\n\n const isCustomScrollingRef = React.useRef(false);\n\n const scrollerRef = useExternRef(getRef);\n\n const animationQueue = React.useRef<VoidFunction[]>([]);\n\n const hasPointer = useAdaptivityHasPointer();\n\n const scrollTo = React.useCallback(\n (getScrollPosition: ScrollPositionHandler) => {\n const scrollElement = scrollerRef.current;\n\n animationQueue.current.push(() =>\n doScroll({\n scrollElement,\n getScrollPosition,\n animationQueue: animationQueue.current,\n onScrollToRightBorder: () => setCanScrollRight(false),\n onScrollEnd: () => (isCustomScrollingRef.current = false),\n onScrollStart: () => (isCustomScrollingRef.current = true),\n initialScrollWidth: scrollElement?.firstElementChild?.scrollWidth || 0,\n scrollAnimationDuration,\n }),\n );\n if (animationQueue.current.length === 1) {\n animationQueue.current[0]();\n }\n },\n [scrollAnimationDuration, scrollerRef],\n );\n\n const scrollToLeft = React.useCallback(() => {\n const getScrollPosition =\n getScrollToLeft ?? ((i: number) => i - scrollerRef.current!.offsetWidth);\n scrollTo(getScrollPosition);\n }, [getScrollToLeft, scrollTo, scrollerRef]);\n\n const scrollToRight = React.useCallback(() => {\n const getScrollPosition =\n getScrollToRight ?? ((i: number) => i + scrollerRef.current!.offsetWidth);\n scrollTo(getScrollPosition);\n }, [getScrollToRight, scrollTo, scrollerRef]);\n\n const onscroll = React.useCallback(() => {\n if (showArrows && hasPointer && scrollerRef.current && !isCustomScrollingRef.current) {\n const scrollElement = scrollerRef.current;\n\n setCanScrollLeft(scrollElement.scrollLeft > 0);\n setCanScrollRight(\n roundUpElementScrollLeft(scrollElement) + scrollElement.offsetWidth <\n scrollElement.scrollWidth,\n );\n }\n }, [hasPointer, scrollerRef, showArrows]);\n\n const scrollEvent = useEventListener('scroll', onscroll);\n React.useEffect(() => {\n if (scrollerRef.current) {\n scrollEvent.add(scrollerRef.current);\n }\n }, [scrollEvent, scrollerRef]);\n React.useEffect(onscroll, [scrollerRef, children, onscroll]);\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['HorizontalScroll'],\n showArrows === 'always' && styles['HorizontalScroll--withConstArrows'],\n className,\n )}\n >\n <div className={styles['HorizontalScroll__in']} ref={scrollerRef}>\n <div className={styles['HorizontalScroll__in-wrapper']}>{children}</div>\n </div>\n {showArrows && (hasPointer || hasPointer === undefined) && canScrollLeft && (\n <HorizontalScrollArrow\n size={arrowSize}\n direction=\"left\"\n className={styles['HorizontalScroll__arrowLeft']}\n onClick={scrollToLeft}\n />\n )}\n {showArrows && (hasPointer || hasPointer === undefined) && canScrollRight && (\n <HorizontalScrollArrow\n size={arrowSize}\n direction=\"right\"\n className={styles['HorizontalScroll__arrowRight']}\n onClick={scrollToRight}\n />\n )}\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"HorizontalScroll.js","names":["React","classNames","useAdaptivityHasPointer","useEventListener","useExternRef","easeInOutSine","HorizontalScrollArrow","now","performance","Date","roundUpElementScrollLeft","el","Math","ceil","scrollLeft","SCROLL_ONE_FRAME_TIME","doScroll","scrollElement","getScrollPosition","animationQueue","onScrollToRightBorder","onScrollEnd","onScrollStart","initialScrollWidth","scrollAnimationDuration","maxLeft","offsetWidth","startLeft","endLeft","startTime","scroll","time","elapsed","min","value","currentLeft","max","requestAnimationFrame","shift","length","HorizontalScroll","children","getScrollToLeft","getScrollToRight","showArrows","arrowSize","getRef","className","restProps","useState","canScrollLeft","setCanScrollLeft","canScrollRight","setCanScrollRight","isCustomScrollingRef","useRef","scrollerRef","hasPointer","scrollTo","useCallback","current","push","firstElementChild","scrollWidth","scrollToLeft","i","scrollToRight","onscroll","scrollEvent","useEffect","add","undefined"],"sources":["../../../../src/components/HorizontalScroll/HorizontalScroll.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { useEventListener } from '../../hooks/useEventListener';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { easeInOutSine } from '../../lib/fx';\nimport { HasRef } from '../../types';\nimport { HorizontalScrollArrow } from './HorizontalScrollArrow';\nimport styles from './HorizontalScroll.module.css';\n\ninterface ScrollContext {\n scrollElement: HTMLElement | null;\n scrollAnimationDuration: number;\n animationQueue: VoidFunction[];\n getScrollPosition: (currentPosition: number) => number;\n onScrollToRightBorder: VoidFunction;\n onScrollEnd: VoidFunction;\n onScrollStart: VoidFunction;\n /**\n * Начальная ширина прокрутки.\n * В некоторых случаях может отличаться от текущей ширины прокрутки из-за transforms: translate\n */\n initialScrollWidth: number;\n}\n\nexport type ScrollPositionHandler = (currentPosition: number) => number;\n\nexport interface HorizontalScrollProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * Функция для расчета величины прокрутки при клике на левую стрелку.\n */\n getScrollToLeft?: ScrollPositionHandler;\n /**\n * Функция для расчета величины прокрутки при клике на правую стрелку.\n */\n getScrollToRight?: ScrollPositionHandler;\n arrowSize?: 'm' | 'l';\n showArrows?: boolean | 'always';\n scrollAnimationDuration?: number;\n}\n\n/**\n * timing method\n */\nfunction now() {\n return performance && performance.now ? performance.now() : Date.now();\n}\n\n/**\n * Округляем el.scrollLeft\n * https://github.com/VKCOM/VKUI/pull/2445\n */\nconst roundUpElementScrollLeft = (el: HTMLElement) => Math.ceil(el.scrollLeft);\n\n/**\n * Код анимации скрола, на основе полифила: https://github.com/iamdustan/smoothscroll\n * Константа взята из полифила (468), на дизайн-ревью уточнили до 250\n * @var {number} SCROLL_ONE_FRAME_TIME время анимации скролла\n */\nconst SCROLL_ONE_FRAME_TIME = 250;\n\nfunction doScroll({\n scrollElement,\n getScrollPosition,\n animationQueue,\n onScrollToRightBorder,\n onScrollEnd,\n onScrollStart,\n initialScrollWidth,\n scrollAnimationDuration = SCROLL_ONE_FRAME_TIME,\n}: ScrollContext) {\n if (!scrollElement || !getScrollPosition) {\n return;\n }\n\n /**\n * максимальное значение сдвига влево\n */\n const maxLeft = initialScrollWidth - scrollElement.offsetWidth;\n\n let startLeft = roundUpElementScrollLeft(scrollElement);\n let endLeft = getScrollPosition(startLeft);\n\n onScrollStart();\n\n if (endLeft >= maxLeft) {\n onScrollToRightBorder();\n endLeft = maxLeft;\n }\n\n const startTime = now();\n\n (function scroll() {\n if (!scrollElement) {\n onScrollEnd();\n return;\n }\n\n const time = now();\n const elapsed = Math.min((time - startTime) / scrollAnimationDuration, 1);\n\n const value = easeInOutSine(elapsed);\n\n const currentLeft = startLeft + (endLeft - startLeft) * value;\n scrollElement.scrollLeft = Math.ceil(currentLeft);\n\n if (roundUpElementScrollLeft(scrollElement) !== Math.max(0, endLeft) && elapsed !== 1) {\n requestAnimationFrame(scroll);\n return;\n }\n\n onScrollEnd();\n animationQueue.shift();\n if (animationQueue.length > 0) {\n animationQueue[0]();\n }\n })();\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/HorizontalScroll\n */\nexport const HorizontalScroll = ({\n children,\n getScrollToLeft,\n getScrollToRight,\n showArrows = true,\n arrowSize = 'l',\n scrollAnimationDuration = SCROLL_ONE_FRAME_TIME,\n getRef,\n className,\n ...restProps\n}: HorizontalScrollProps) => {\n const [canScrollLeft, setCanScrollLeft] = React.useState(false);\n const [canScrollRight, setCanScrollRight] = React.useState(false);\n\n const isCustomScrollingRef = React.useRef(false);\n\n const scrollerRef = useExternRef(getRef);\n\n const animationQueue = React.useRef<VoidFunction[]>([]);\n\n const hasPointer = useAdaptivityHasPointer();\n\n const scrollTo = React.useCallback(\n (getScrollPosition: ScrollPositionHandler) => {\n const scrollElement = scrollerRef.current;\n\n animationQueue.current.push(() =>\n doScroll({\n scrollElement,\n getScrollPosition,\n animationQueue: animationQueue.current,\n onScrollToRightBorder: () => setCanScrollRight(false),\n onScrollEnd: () => (isCustomScrollingRef.current = false),\n onScrollStart: () => (isCustomScrollingRef.current = true),\n initialScrollWidth: scrollElement?.firstElementChild?.scrollWidth || 0,\n scrollAnimationDuration,\n }),\n );\n if (animationQueue.current.length === 1) {\n animationQueue.current[0]();\n }\n },\n [scrollAnimationDuration, scrollerRef],\n );\n\n const scrollToLeft = React.useCallback(() => {\n const getScrollPosition =\n getScrollToLeft ?? ((i: number) => i - scrollerRef.current!.offsetWidth);\n scrollTo(getScrollPosition);\n }, [getScrollToLeft, scrollTo, scrollerRef]);\n\n const scrollToRight = React.useCallback(() => {\n const getScrollPosition =\n getScrollToRight ?? ((i: number) => i + scrollerRef.current!.offsetWidth);\n scrollTo(getScrollPosition);\n }, [getScrollToRight, scrollTo, scrollerRef]);\n\n const onscroll = React.useCallback(() => {\n if (showArrows && hasPointer && scrollerRef.current && !isCustomScrollingRef.current) {\n const scrollElement = scrollerRef.current;\n\n setCanScrollLeft(scrollElement.scrollLeft > 0);\n setCanScrollRight(\n roundUpElementScrollLeft(scrollElement) + scrollElement.offsetWidth <\n scrollElement.scrollWidth,\n );\n }\n }, [hasPointer, scrollerRef, showArrows]);\n\n const scrollEvent = useEventListener('scroll', onscroll);\n React.useEffect(() => {\n if (scrollerRef.current) {\n scrollEvent.add(scrollerRef.current);\n }\n }, [scrollEvent, scrollerRef]);\n React.useEffect(onscroll, [scrollerRef, children, onscroll]);\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['HorizontalScroll'],\n showArrows === 'always' && styles['HorizontalScroll--withConstArrows'],\n className,\n )}\n >\n <div className={styles['HorizontalScroll__in']} ref={scrollerRef}>\n <div className={styles['HorizontalScroll__in-wrapper']}>{children}</div>\n </div>\n {showArrows && (hasPointer || hasPointer === undefined) && canScrollLeft && (\n <HorizontalScrollArrow\n size={arrowSize}\n direction=\"left\"\n className={styles['HorizontalScroll__arrowLeft']}\n onClick={scrollToLeft}\n />\n )}\n {showArrows && (hasPointer || hasPointer === undefined) && canScrollRight && (\n <HorizontalScrollArrow\n size={arrowSize}\n direction=\"right\"\n className={styles['HorizontalScroll__arrowRight']}\n onClick={scrollToRight}\n />\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -2,7 +2,7 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  var _excluded = ["size", "direction", "onClick", "className"];
4
4
  import * as React from 'react';
5
- import { Icon24Chevron, Icon24ChevronCompactLeft, Icon16Chevron, Icon16ChevronLeft } from '@vkontakte/icons';
5
+ import { Icon16Chevron, Icon16ChevronLeft, Icon24Chevron, Icon24ChevronCompactLeft } from '@vkontakte/icons';
6
6
  import { classNames } from '@vkontakte/vkjs';
7
7
  import { Tappable } from '../Tappable/Tappable';
8
8
  import "./HorizontalScrollArrow.module.css";
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalScrollArrow.js","names":["React","Icon24Chevron","Icon24ChevronCompactLeft","Icon16Chevron","Icon16ChevronLeft","classNames","Tappable","HorizontalScrollArrow","size","direction","onClick","className","restProps","ArrowIcon","styles"],"sources":["../../../../src/components/HorizontalScroll/HorizontalScrollArrow.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24Chevron,\n Icon24ChevronCompactLeft,\n Icon16Chevron,\n Icon16ChevronLeft,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './HorizontalScrollArrow.module.css';\n\nexport interface HorizontalScrollArrowProps {\n direction: 'left' | 'right';\n size?: 'm' | 'l';\n onClick(event: React.MouseEvent): void;\n className?: string;\n}\n\nexport const HorizontalScrollArrow = ({\n size = 'l',\n direction,\n onClick,\n className,\n ...restProps\n}: HorizontalScrollArrowProps) => {\n let ArrowIcon: React.ComponentType<unknown>;\n\n if (size === 'm') {\n ArrowIcon = direction === 'left' ? Icon16ChevronLeft : Icon16Chevron;\n } else {\n ArrowIcon = direction === 'left' ? Icon24ChevronCompactLeft : Icon24Chevron;\n }\n\n return (\n <Tappable\n {...restProps}\n Component=\"button\"\n hasHover={false}\n hasActive={false}\n className={classNames(\n styles['HorizontalScrollArrow'],\n styles[`HorizontalScrollArrow--size-${size}`],\n styles[`HorizontalScrollArrow--direction-${direction}`],\n className,\n )}\n onClick={onClick}\n >\n <span className={styles['HorizontalScrollArrow__icon']}>\n <ArrowIcon />\n </span>\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,aAAa,EACbC,wBAAwB,EACxBC,aAAa,EACbC,iBAAiB,QACZ,kBAAkB;AACzB,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,QAAQ,QAAQ,sBAAsB;AAAC;AAUhD,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqB,OAMA;EAAA,qBALhCC,IAAI;IAAJA,IAAI,0BAAG,GAAG;IACVC,SAAS,QAATA,SAAS;IACTC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAIC,SAAuC;EAE3C,IAAIL,IAAI,KAAK,GAAG,EAAE;IAChBK,SAAS,GAAGJ,SAAS,KAAK,MAAM,GAAGL,iBAAiB,GAAGD,aAAa;EACtE,CAAC,MAAM;IACLU,SAAS,GAAGJ,SAAS,KAAK,MAAM,GAAGP,wBAAwB,GAAGD,aAAa;EAC7E;EAEA,oBACE,oBAAC,QAAQ,eACHW,SAAS;IACb,SAAS,EAAC,QAAQ;IAClB,QAAQ,EAAE,KAAM;IAChB,SAAS,EAAE,KAAM;IACjB,SAAS,EAAEP,UAAU,8BAEnBS,MAAM,uCAAgCN,IAAI,EAAG,EAC7CM,MAAM,4CAAqCL,SAAS,EAAG,EACvDE,SAAS,CACT;IACF,OAAO,EAAED;EAAQ,iBAEjB;IAAM,SAAS;EAAwC,gBACrD,oBAAC,SAAS,OAAG,CACR,CACE;AAEf,CAAC;AAAC;EAAA;EAAA;EAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"HorizontalScrollArrow.js","names":["React","Icon16Chevron","Icon16ChevronLeft","Icon24Chevron","Icon24ChevronCompactLeft","classNames","Tappable","HorizontalScrollArrow","size","direction","onClick","className","restProps","ArrowIcon","styles"],"sources":["../../../../src/components/HorizontalScroll/HorizontalScrollArrow.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon16Chevron,\n Icon16ChevronLeft,\n Icon24Chevron,\n Icon24ChevronCompactLeft,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './HorizontalScrollArrow.module.css';\n\nexport interface HorizontalScrollArrowProps {\n direction: 'left' | 'right';\n size?: 'm' | 'l';\n onClick(event: React.MouseEvent): void;\n className?: string;\n}\n\nexport const HorizontalScrollArrow = ({\n size = 'l',\n direction,\n onClick,\n className,\n ...restProps\n}: HorizontalScrollArrowProps) => {\n let ArrowIcon: React.ComponentType<unknown>;\n\n if (size === 'm') {\n ArrowIcon = direction === 'left' ? Icon16ChevronLeft : Icon16Chevron;\n } else {\n ArrowIcon = direction === 'left' ? Icon24ChevronCompactLeft : Icon24Chevron;\n }\n\n return (\n <Tappable\n {...restProps}\n Component=\"button\"\n hasHover={false}\n hasActive={false}\n className={classNames(\n styles['HorizontalScrollArrow'],\n styles[`HorizontalScrollArrow--size-${size}`],\n styles[`HorizontalScrollArrow--direction-${direction}`],\n className,\n )}\n onClick={onClick}\n >\n <span className={styles['HorizontalScrollArrow__icon']}>\n <ArrowIcon />\n </span>\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SACEC,aAAa,EACbC,iBAAiB,EACjBC,aAAa,EACbC,wBAAwB,QACnB,kBAAkB;AACzB,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,QAAQ,QAAQ,sBAAsB;AAAC;AAUhD,OAAO,IAAMC,qBAAqB,GAAG,SAAxBA,qBAAqB,OAMA;EAAA,qBALhCC,IAAI;IAAJA,IAAI,0BAAG,GAAG;IACVC,SAAS,QAATA,SAAS;IACTC,OAAO,QAAPA,OAAO;IACPC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAIC,SAAuC;EAE3C,IAAIL,IAAI,KAAK,GAAG,EAAE;IAChBK,SAAS,GAAGJ,SAAS,KAAK,MAAM,GAAGP,iBAAiB,GAAGD,aAAa;EACtE,CAAC,MAAM;IACLY,SAAS,GAAGJ,SAAS,KAAK,MAAM,GAAGL,wBAAwB,GAAGD,aAAa;EAC7E;EAEA,oBACE,oBAAC,QAAQ,eACHS,SAAS;IACb,SAAS,EAAC,QAAQ;IAClB,QAAQ,EAAE,KAAM;IAChB,SAAS,EAAE,KAAM;IACjB,SAAS,EAAEP,UAAU,8BAEnBS,MAAM,uCAAgCN,IAAI,EAAG,EAC7CM,MAAM,4CAAqCL,SAAS,EAAG,EACvDE,SAAS,CACT;IACF,OAAO,EAAED;EAAQ,iBAEjB;IAAM,SAAS;EAAwC,gBACrD,oBAAC,SAAS,OAAG,CACR,CACE;AAEf,CAAC;AAAC;EAAA;EAAA;EAAA;EAAA;AAAA"}
@@ -3,11 +3,11 @@ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
3
3
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
4
4
  var _excluded = ["getRef", "content", "children", "onShownChange", "shown", "showDelay", "hideDelay"];
5
5
  import * as React from 'react';
6
- import { Popper } from '../Popper/Popper';
7
6
  import { useEventListener } from '../../hooks/useEventListener';
8
- import { useTimeout } from '../../hooks/useTimeout';
9
7
  import { usePatchChildrenRef } from '../../hooks/usePatchChildrenRef';
8
+ import { useTimeout } from '../../hooks/useTimeout';
10
9
  import { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';
10
+ import { Popper } from '../Popper/Popper';
11
11
  export var HoverPopper = function HoverPopper(_ref) {
12
12
  var getRef = _ref.getRef,
13
13
  content = _ref.content,
@@ -1 +1 @@
1
- {"version":3,"file":"HoverPopper.js","names":["React","Popper","useEventListener","useTimeout","usePatchChildrenRef","useIsomorphicLayoutEffect","HoverPopper","getRef","content","children","onShownChange","_shown","shown","showDelay","hideDelay","restProps","useState","computedShown","setComputedShown","setShown","value","showTimeout","hideTimeout","childRef","child","onTargetEnter","clear","set","onTargetLeave","targetEnterListener","targetLeaveListener","current","add"],"sources":["../../../../src/components/HoverPopper/HoverPopper.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Popper, PopperCommonProps } from '../Popper/Popper';\nimport { useEventListener } from '../../hooks/useEventListener';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { usePatchChildrenRef } from '../../hooks/usePatchChildrenRef';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\n\nexport interface HoverPopperProps extends PopperCommonProps {\n /**\n * Содержимое тултипа\n */\n content?: React.ReactNode;\n /**\n * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости тултипа\n */\n onShownChange?: (shown: boolean) => void;\n /**\n * Количество миллисекунд, после которых произойдет показ дропдауна\n */\n showDelay?: number;\n /**\n * Количество миллисекунд, после которых произойдет скрытие дропдауна\n */\n hideDelay?: number;\n /**\n * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента\n */\n children?: React.ReactElement;\n}\n\nexport const HoverPopper = ({\n getRef,\n content,\n children,\n onShownChange,\n shown: _shown,\n showDelay = 150,\n hideDelay = 150,\n ...restProps\n}: HoverPopperProps) => {\n const [computedShown, setComputedShown] = React.useState(_shown || false);\n\n const shown = typeof _shown === 'boolean' ? _shown : computedShown;\n\n const setShown = (value: boolean) => {\n if (typeof _shown !== 'boolean') {\n setComputedShown(value);\n }\n typeof onShownChange === 'function' && onShownChange(value);\n };\n\n const showTimeout = useTimeout(() => {\n setShown(true);\n }, showDelay);\n\n const hideTimeout = useTimeout(() => {\n setShown(false);\n }, hideDelay);\n\n const [childRef, child] = usePatchChildrenRef(children);\n\n const onTargetEnter = () => {\n hideTimeout.clear();\n showTimeout.set();\n };\n\n const onTargetLeave = () => {\n showTimeout.clear();\n hideTimeout.set();\n };\n\n const targetEnterListener = useEventListener('pointerenter', onTargetEnter);\n const targetLeaveListener = useEventListener('pointerleave', onTargetLeave);\n\n useIsomorphicLayoutEffect(() => {\n if (childRef.current) {\n targetEnterListener.add(childRef.current);\n targetLeaveListener.add(childRef.current);\n }\n }, []);\n\n return (\n <React.Fragment>\n {child}\n {shown && (\n <Popper\n {...restProps}\n onMouseOver={hideTimeout.clear}\n onMouseOut={onTargetLeave}\n getRef={getRef}\n targetRef={childRef}\n >\n {content}\n </Popper>\n )}\n </React.Fragment>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,MAAM,QAA2B,kBAAkB;AAC5D,SAASC,gBAAgB,QAAQ,8BAA8B;AAC/D,SAASC,UAAU,QAAQ,wBAAwB;AACnD,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,yBAAyB,QAAQ,qCAAqC;AA6B/E,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAW,OASA;EAAA,IARtBC,MAAM,QAANA,MAAM;IACNC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACNC,MAAM,QAAbC,KAAK;IAAA,sBACLC,SAAS;IAATA,SAAS,+BAAG,GAAG;IAAA,sBACfC,SAAS;IAATA,SAAS,+BAAG,GAAG;IACZC,SAAS;EAEZ,sBAA0Cf,KAAK,CAACgB,QAAQ,CAACL,MAAM,IAAI,KAAK,CAAC;IAAA;IAAlEM,aAAa;IAAEC,gBAAgB;EAEtC,IAAMN,KAAK,GAAG,OAAOD,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGM,aAAa;EAElE,IAAME,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,KAAc,EAAK;IACnC,IAAI,OAAOT,MAAM,KAAK,SAAS,EAAE;MAC/BO,gBAAgB,CAACE,KAAK,CAAC;IACzB;IACA,OAAOV,aAAa,KAAK,UAAU,IAAIA,aAAa,CAACU,KAAK,CAAC;EAC7D,CAAC;EAED,IAAMC,WAAW,GAAGlB,UAAU,CAAC,YAAM;IACnCgB,QAAQ,CAAC,IAAI,CAAC;EAChB,CAAC,EAAEN,SAAS,CAAC;EAEb,IAAMS,WAAW,GAAGnB,UAAU,CAAC,YAAM;IACnCgB,QAAQ,CAAC,KAAK,CAAC;EACjB,CAAC,EAAEL,SAAS,CAAC;EAEb,2BAA0BV,mBAAmB,CAACK,QAAQ,CAAC;IAAA;IAAhDc,QAAQ;IAAEC,KAAK;EAEtB,IAAMC,aAAa,GAAG,SAAhBA,aAAa,GAAS;IAC1BH,WAAW,CAACI,KAAK,EAAE;IACnBL,WAAW,CAACM,GAAG,EAAE;EACnB,CAAC;EAED,IAAMC,aAAa,GAAG,SAAhBA,aAAa,GAAS;IAC1BP,WAAW,CAACK,KAAK,EAAE;IACnBJ,WAAW,CAACK,GAAG,EAAE;EACnB,CAAC;EAED,IAAME,mBAAmB,GAAG3B,gBAAgB,CAAC,cAAc,EAAEuB,aAAa,CAAC;EAC3E,IAAMK,mBAAmB,GAAG5B,gBAAgB,CAAC,cAAc,EAAE0B,aAAa,CAAC;EAE3EvB,yBAAyB,CAAC,YAAM;IAC9B,IAAIkB,QAAQ,CAACQ,OAAO,EAAE;MACpBF,mBAAmB,CAACG,GAAG,CAACT,QAAQ,CAACQ,OAAO,CAAC;MACzCD,mBAAmB,CAACE,GAAG,CAACT,QAAQ,CAACQ,OAAO,CAAC;IAC3C;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,oBAAC,KAAK,CAAC,QAAQ,QACZP,KAAK,EACLZ,KAAK,iBACJ,oBAAC,MAAM,eACDG,SAAS;IACb,WAAW,EAAEO,WAAW,CAACI,KAAM;IAC/B,UAAU,EAAEE,aAAc;IAC1B,MAAM,EAAErB,MAAO;IACf,SAAS,EAAEgB;EAAS,IAEnBf,OAAO,CAEX,CACc;AAErB,CAAC"}
1
+ {"version":3,"file":"HoverPopper.js","names":["React","useEventListener","usePatchChildrenRef","useTimeout","useIsomorphicLayoutEffect","Popper","HoverPopper","getRef","content","children","onShownChange","_shown","shown","showDelay","hideDelay","restProps","useState","computedShown","setComputedShown","setShown","value","showTimeout","hideTimeout","childRef","child","onTargetEnter","clear","set","onTargetLeave","targetEnterListener","targetLeaveListener","current","add"],"sources":["../../../../src/components/HoverPopper/HoverPopper.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useEventListener } from '../../hooks/useEventListener';\nimport { usePatchChildrenRef } from '../../hooks/usePatchChildrenRef';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { Popper, PopperCommonProps } from '../Popper/Popper';\n\nexport interface HoverPopperProps extends PopperCommonProps {\n /**\n * Содержимое тултипа\n */\n content?: React.ReactNode;\n /**\n * Если передан, то тултип будет показан/скрыт в зависимости от значения свойства\n */\n shown?: boolean;\n /**\n * Вызывается при каждом изменении видимости тултипа\n */\n onShownChange?: (shown: boolean) => void;\n /**\n * Количество миллисекунд, после которых произойдет показ дропдауна\n */\n showDelay?: number;\n /**\n * Количество миллисекунд, после которых произойдет скрытие дропдауна\n */\n hideDelay?: number;\n /**\n * Либо jsx-элемент (div, button, etc.), либо компонент со свойством `getRootRef`, которое применяется к корневому элементу компонента\n */\n children?: React.ReactElement;\n}\n\nexport const HoverPopper = ({\n getRef,\n content,\n children,\n onShownChange,\n shown: _shown,\n showDelay = 150,\n hideDelay = 150,\n ...restProps\n}: HoverPopperProps) => {\n const [computedShown, setComputedShown] = React.useState(_shown || false);\n\n const shown = typeof _shown === 'boolean' ? _shown : computedShown;\n\n const setShown = (value: boolean) => {\n if (typeof _shown !== 'boolean') {\n setComputedShown(value);\n }\n typeof onShownChange === 'function' && onShownChange(value);\n };\n\n const showTimeout = useTimeout(() => {\n setShown(true);\n }, showDelay);\n\n const hideTimeout = useTimeout(() => {\n setShown(false);\n }, hideDelay);\n\n const [childRef, child] = usePatchChildrenRef(children);\n\n const onTargetEnter = () => {\n hideTimeout.clear();\n showTimeout.set();\n };\n\n const onTargetLeave = () => {\n showTimeout.clear();\n hideTimeout.set();\n };\n\n const targetEnterListener = useEventListener('pointerenter', onTargetEnter);\n const targetLeaveListener = useEventListener('pointerleave', onTargetLeave);\n\n useIsomorphicLayoutEffect(() => {\n if (childRef.current) {\n targetEnterListener.add(childRef.current);\n targetLeaveListener.add(childRef.current);\n }\n }, []);\n\n return (\n <React.Fragment>\n {child}\n {shown && (\n <Popper\n {...restProps}\n onMouseOver={hideTimeout.clear}\n onMouseOut={onTargetLeave}\n getRef={getRef}\n targetRef={childRef}\n >\n {content}\n </Popper>\n )}\n </React.Fragment>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,gBAAgB,QAAQ,8BAA8B;AAC/D,SAASC,mBAAmB,QAAQ,iCAAiC;AACrE,SAASC,UAAU,QAAQ,wBAAwB;AACnD,SAASC,yBAAyB,QAAQ,qCAAqC;AAC/E,SAASC,MAAM,QAA2B,kBAAkB;AA6B5D,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAW,OASA;EAAA,IARtBC,MAAM,QAANA,MAAM;IACNC,OAAO,QAAPA,OAAO;IACPC,QAAQ,QAARA,QAAQ;IACRC,aAAa,QAAbA,aAAa;IACNC,MAAM,QAAbC,KAAK;IAAA,sBACLC,SAAS;IAATA,SAAS,+BAAG,GAAG;IAAA,sBACfC,SAAS;IAATA,SAAS,+BAAG,GAAG;IACZC,SAAS;EAEZ,sBAA0Cf,KAAK,CAACgB,QAAQ,CAACL,MAAM,IAAI,KAAK,CAAC;IAAA;IAAlEM,aAAa;IAAEC,gBAAgB;EAEtC,IAAMN,KAAK,GAAG,OAAOD,MAAM,KAAK,SAAS,GAAGA,MAAM,GAAGM,aAAa;EAElE,IAAME,QAAQ,GAAG,SAAXA,QAAQ,CAAIC,KAAc,EAAK;IACnC,IAAI,OAAOT,MAAM,KAAK,SAAS,EAAE;MAC/BO,gBAAgB,CAACE,KAAK,CAAC;IACzB;IACA,OAAOV,aAAa,KAAK,UAAU,IAAIA,aAAa,CAACU,KAAK,CAAC;EAC7D,CAAC;EAED,IAAMC,WAAW,GAAGlB,UAAU,CAAC,YAAM;IACnCgB,QAAQ,CAAC,IAAI,CAAC;EAChB,CAAC,EAAEN,SAAS,CAAC;EAEb,IAAMS,WAAW,GAAGnB,UAAU,CAAC,YAAM;IACnCgB,QAAQ,CAAC,KAAK,CAAC;EACjB,CAAC,EAAEL,SAAS,CAAC;EAEb,2BAA0BZ,mBAAmB,CAACO,QAAQ,CAAC;IAAA;IAAhDc,QAAQ;IAAEC,KAAK;EAEtB,IAAMC,aAAa,GAAG,SAAhBA,aAAa,GAAS;IAC1BH,WAAW,CAACI,KAAK,EAAE;IACnBL,WAAW,CAACM,GAAG,EAAE;EACnB,CAAC;EAED,IAAMC,aAAa,GAAG,SAAhBA,aAAa,GAAS;IAC1BP,WAAW,CAACK,KAAK,EAAE;IACnBJ,WAAW,CAACK,GAAG,EAAE;EACnB,CAAC;EAED,IAAME,mBAAmB,GAAG5B,gBAAgB,CAAC,cAAc,EAAEwB,aAAa,CAAC;EAC3E,IAAMK,mBAAmB,GAAG7B,gBAAgB,CAAC,cAAc,EAAE2B,aAAa,CAAC;EAE3ExB,yBAAyB,CAAC,YAAM;IAC9B,IAAImB,QAAQ,CAACQ,OAAO,EAAE;MACpBF,mBAAmB,CAACG,GAAG,CAACT,QAAQ,CAACQ,OAAO,CAAC;MACzCD,mBAAmB,CAACE,GAAG,CAACT,QAAQ,CAACQ,OAAO,CAAC;IAC3C;EACF,CAAC,EAAE,EAAE,CAAC;EAEN,oBACE,oBAAC,KAAK,CAAC,QAAQ,QACZP,KAAK,EACLZ,KAAK,iBACJ,oBAAC,MAAM,eACDG,SAAS;IACb,WAAW,EAAEO,WAAW,CAACI,KAAM;IAC/B,UAAU,EAAEE,aAAc;IAC1B,MAAM,EAAErB,MAAO;IACf,SAAS,EAAEgB;EAAS,IAEnBf,OAAO,CAEX,CACc;AAErB,CAAC"}
@@ -6,4 +6,4 @@ export interface IconButtonProps extends TappableProps {
6
6
  /**
7
7
  * @see https://vkcom.github.io/VKUI/#/IconButton
8
8
  */
9
- export declare const IconButton: ({ children, Component, className, ...restProps }: IconButtonProps) => JSX.Element;
9
+ export declare const IconButton: ({ children, className, ...restProps }: IconButtonProps) => JSX.Element;
@@ -1,15 +1,19 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["children", "Component", "className"];
3
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ var _excluded = ["children", "className"];
4
5
  import * as React from 'react';
5
- import { Tappable } from '../Tappable/Tappable';
6
6
  import { classNames } from '@vkontakte/vkjs';
7
+ import { useAdaptivity } from '../../hooks/useAdaptivity';
7
8
  import { usePlatform } from '../../hooks/usePlatform';
9
+ import { SizeType } from '../../lib/adaptivity';
8
10
  import { Platform } from '../../lib/platform';
9
- import { getSizeYClassName } from '../../helpers/getSizeYClassName';
10
- import { useAdaptivity } from '../../hooks/useAdaptivity';
11
11
  import { COMMON_WARNINGS, warnOnce } from '../../lib/warnOnce';
12
+ import { Tappable } from '../Tappable/Tappable';
12
13
  import "./IconButton.module.css";
14
+ var sizeYClassNames = _defineProperty({
15
+ none: "vkuiIconButton--sizeY-none"
16
+ }, SizeType.COMPACT, "vkuiIconButton--sizeY-compact");
13
17
  var warn = warnOnce('IconButton');
14
18
 
15
19
  /**
@@ -17,13 +21,12 @@ var warn = warnOnce('IconButton');
17
21
  */
18
22
  export var IconButton = function IconButton(_ref) {
19
23
  var children = _ref.children,
20
- _ref$Component = _ref.Component,
21
- Component = _ref$Component === void 0 ? 'button' : _ref$Component,
22
24
  className = _ref.className,
23
25
  restProps = _objectWithoutProperties(_ref, _excluded);
24
26
  var platform = usePlatform();
25
27
  var _useAdaptivity = useAdaptivity(),
26
- sizeY = _useAdaptivity.sizeY;
28
+ _useAdaptivity$sizeY = _useAdaptivity.sizeY,
29
+ sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
27
30
  if (process.env.NODE_ENV === 'development') {
28
31
  var isAccessible = restProps['aria-label'] || restProps['aria-labelledby'];
29
32
  if (!isAccessible) {
@@ -32,10 +35,10 @@ export var IconButton = function IconButton(_ref) {
32
35
  }
33
36
  return /*#__PURE__*/React.createElement(Tappable, _extends({
34
37
  activeEffectDelay: 200,
35
- activeMode: "background"
38
+ activeMode: "background",
39
+ Component: restProps.href ? 'a' : 'button'
36
40
  }, restProps, {
37
- Component: restProps.href ? 'a' : Component,
38
- className: classNames("vkuiIconButton", getSizeYClassName("vkuiIconButton", sizeY), platform === Platform.IOS && "vkuiIconButton--ios", className)
41
+ className: classNames("vkuiIconButton", sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], platform === Platform.IOS && "vkuiIconButton--ios", className)
39
42
  }), children);
40
43
  };
41
44
  //# sourceMappingURL=IconButton.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","names":["React","Tappable","classNames","usePlatform","Platform","getSizeYClassName","useAdaptivity","COMMON_WARNINGS","warnOnce","warn","IconButton","children","Component","className","restProps","platform","sizeY","process","env","NODE_ENV","isAccessible","a11y","href","IOS"],"sources":["../../../../src/components/IconButton/IconButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { TappableProps, Tappable } from '../Tappable/Tappable';\nimport { classNames } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { COMMON_WARNINGS, warnOnce } from '../../lib/warnOnce';\nimport styles from './IconButton.module.css';\n\nexport interface IconButtonProps extends TappableProps {\n children?: React.ReactNode;\n}\n\nconst warn = warnOnce('IconButton');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/IconButton\n */\nexport const IconButton = ({\n children,\n Component = 'button',\n className,\n ...restProps\n}: IconButtonProps) => {\n const platform = usePlatform();\n const { sizeY } = useAdaptivity();\n\n if (process.env.NODE_ENV === 'development') {\n const isAccessible = restProps['aria-label'] || restProps['aria-labelledby'];\n\n if (!isAccessible) {\n warn(COMMON_WARNINGS.a11y[restProps.href ? 'link-name' : 'button-name'], 'error');\n }\n }\n\n return (\n <Tappable\n activeEffectDelay={200}\n activeMode=\"background\"\n {...restProps}\n Component={restProps.href ? 'a' : Component}\n className={classNames(\n styles['IconButton'],\n getSizeYClassName(styles['IconButton'], sizeY),\n platform === Platform.IOS && styles['IconButton--ios'],\n className,\n )}\n >\n {children}\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAAwBC,QAAQ,QAAQ,sBAAsB;AAC9D,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,iBAAiB,QAAQ,iCAAiC;AACnE,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,eAAe,EAAEC,QAAQ,QAAQ,oBAAoB;AAAC;AAO/D,IAAMC,IAAI,GAAGD,QAAQ,CAAC,YAAY,CAAC;;AAEnC;AACA;AACA;AACA,OAAO,IAAME,UAAU,GAAG,SAAbA,UAAU,OAKA;EAAA,IAJrBC,QAAQ,QAARA,QAAQ;IAAA,sBACRC,SAAS;IAATA,SAAS,+BAAG,QAAQ;IACpBC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAGZ,WAAW,EAAE;EAC9B,qBAAkBG,aAAa,EAAE;IAAzBU,KAAK,kBAALA,KAAK;EAEb,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EAAE;IAC1C,IAAMC,YAAY,GAAGN,SAAS,CAAC,YAAY,CAAC,IAAIA,SAAS,CAAC,iBAAiB,CAAC;IAE5E,IAAI,CAACM,YAAY,EAAE;MACjBX,IAAI,CAACF,eAAe,CAACc,IAAI,CAACP,SAAS,CAACQ,IAAI,GAAG,WAAW,GAAG,aAAa,CAAC,EAAE,OAAO,CAAC;IACnF;EACF;EAEA,oBACE,oBAAC,QAAQ;IACP,iBAAiB,EAAE,GAAI;IACvB,UAAU,EAAC;EAAY,GACnBR,SAAS;IACb,SAAS,EAAEA,SAAS,CAACQ,IAAI,GAAG,GAAG,GAAGV,SAAU;IAC5C,SAAS,EAAEV,UAAU,mBAEnBG,iBAAiB,mBAAuBW,KAAK,CAAC,EAC9CD,QAAQ,KAAKX,QAAQ,CAACmB,GAAG,yBAA6B,EACtDV,SAAS;EACT,IAEDF,QAAQ,CACA;AAEf,CAAC"}
1
+ {"version":3,"file":"IconButton.js","names":["React","classNames","useAdaptivity","usePlatform","SizeType","Platform","COMMON_WARNINGS","warnOnce","Tappable","sizeYClassNames","none","COMPACT","warn","IconButton","children","className","restProps","platform","sizeY","process","env","NODE_ENV","isAccessible","a11y","href","REGULAR","IOS"],"sources":["../../../../src/components/IconButton/IconButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { COMMON_WARNINGS, warnOnce } from '../../lib/warnOnce';\nimport { Tappable, TappableProps } from '../Tappable/Tappable';\nimport styles from './IconButton.module.css';\n\nconst sizeYClassNames = {\n none: styles['IconButton--sizeY-none'],\n [SizeType.COMPACT]: styles['IconButton--sizeY-compact'],\n};\n\nexport interface IconButtonProps extends TappableProps {\n children?: React.ReactNode;\n}\n\nconst warn = warnOnce('IconButton');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/IconButton\n */\nexport const IconButton = ({ children, className, ...restProps }: IconButtonProps) => {\n const platform = usePlatform();\n const { sizeY = 'none' } = useAdaptivity();\n\n if (process.env.NODE_ENV === 'development') {\n const isAccessible = restProps['aria-label'] || restProps['aria-labelledby'];\n\n if (!isAccessible) {\n warn(COMMON_WARNINGS.a11y[restProps.href ? 'link-name' : 'button-name'], 'error');\n }\n }\n\n return (\n <Tappable\n activeEffectDelay={200}\n activeMode=\"background\"\n Component={restProps.href ? 'a' : 'button'}\n {...restProps}\n className={classNames(\n styles['IconButton'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n platform === Platform.IOS && styles['IconButton--ios'],\n className,\n )}\n >\n {children}\n </Tappable>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,QAAQ,QAAQ,sBAAsB;AAC/C,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,eAAe,EAAEC,QAAQ,QAAQ,oBAAoB;AAC9D,SAASC,QAAQ,QAAuB,sBAAsB;AAAC;AAG/D,IAAMC,eAAe;EACnBC,IAAI;AAAkC,GACrCN,QAAQ,CAACO,OAAO,kCAClB;AAMD,IAAMC,IAAI,GAAGL,QAAQ,CAAC,YAAY,CAAC;;AAEnC;AACA;AACA;AACA,OAAO,IAAMM,UAAU,GAAG,SAAbA,UAAU,OAA+D;EAAA,IAAzDC,QAAQ,QAARA,QAAQ;IAAEC,SAAS,QAATA,SAAS;IAAKC,SAAS;EAC5D,IAAMC,QAAQ,GAAGd,WAAW,EAAE;EAC9B,qBAA2BD,aAAa,EAAE;IAAA,sCAAlCgB,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EAAE;IAC1C,IAAMC,YAAY,GAAGN,SAAS,CAAC,YAAY,CAAC,IAAIA,SAAS,CAAC,iBAAiB,CAAC;IAE5E,IAAI,CAACM,YAAY,EAAE;MACjBV,IAAI,CAACN,eAAe,CAACiB,IAAI,CAACP,SAAS,CAACQ,IAAI,GAAG,WAAW,GAAG,aAAa,CAAC,EAAE,OAAO,CAAC;IACnF;EACF;EAEA,oBACE,oBAAC,QAAQ;IACP,iBAAiB,EAAE,GAAI;IACvB,UAAU,EAAC,YAAY;IACvB,SAAS,EAAER,SAAS,CAACQ,IAAI,GAAG,GAAG,GAAG;EAAS,GACvCR,SAAS;IACb,SAAS,EAAEf,UAAU,mBAEnBiB,KAAK,KAAKd,QAAQ,CAACqB,OAAO,IAAIhB,eAAe,CAACS,KAAK,CAAC,EACpDD,QAAQ,KAAKZ,QAAQ,CAACqB,GAAG,yBAA6B,EACtDX,SAAS;EACT,IAEDD,QAAQ,CACA;AAEf,CAAC"}
@@ -1 +1 @@
1
- .vkuiIconButton{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:9999px;box-shadow:none;color:currentColor;display:block;height:48px;margin:0;padding:0;position:relative}.vkuiIconButton--sizeY-compact{height:44px}.vkuiIconButton[disabled]{opacity:.64;opacity:var(--vkui--opacity_disable_accessibility)}.vkuiIconButton--ios{border-radius:8px;border-radius:var(--vkui--size_border_radius--regular)}.vkuiIconButton .vkuiIcon--16{padding:16px}.vkuiIconButton .vkuiIcon--16.vkuiIcon--w-8{padding:16px 14px}.vkuiIconButton--sizeY-compact .vkuiIcon--16,.vkuiIconButton--sizeY-compact .vkuiIcon--16.vkuiIcon--w-8{padding:14px}.vkuiIconButton .vkuiIcon--24{padding:12px}.vkuiIconButton .vkuiIcon--28,.vkuiIconButton--sizeY-compact .vkuiIcon--24{padding:10px}.vkuiIconButton--sizeY-compact .vkuiIcon--28{padding:8px}@media (pointer:fine) and (min-width:768px),not (min-height:415px){.vkuiIconButton--sizeY-none{height:44px}.vkuiIconButton--sizeY-none .vkuiIcon--16,.vkuiIconButton--sizeY-none .vkuiIcon--16.vkuiIcon--w-8{padding:14px}.vkuiIconButton--sizeY-none .vkuiIcon--24{padding:10px}.vkuiIconButton--sizeY-none .vkuiIcon--28{padding:8px}}.vkuiFormField__after .vkuiIconButton,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton{align-content:center;align-items:center;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular);display:flex;height:44px;height:var(--vkui--size_field_height--regular);justify-content:center;width:44px;width:var(--vkui--size_field_height--regular)}.vkuiFormField__after .vkuiIconButton .vkuiIcon.vkuiIcon.vkuiIcon{padding:0}.vkuiFormField__after .vkuiIconButton--sizeY-compact{width:36px;width:var(--vkui--size_field_height--compact)}.vkuiFormField__after .vkuiIconButton--sizeY-compact,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-compact,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-compact{height:36px;height:var(--vkui--size_field_height--compact)}@media (pointer:fine) and (min-width:768px),not (min-height:415px){.vkuiFormField__after .vkuiIconButton--sizeY-none{width:36px;width:var(--vkui--size_field_height--compact)}.vkuiFormField__after .vkuiIconButton--sizeY-none,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-none,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-none{height:36px;height:var(--vkui--size_field_height--compact)}}
1
+ .vkuiIconButton{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:none;border-radius:9999px;box-shadow:none;color:currentColor;display:block;height:48px;margin:0;padding:0;position:relative}.vkuiIconButton--sizeY-compact{height:44px}.vkuiIconButton[disabled]{opacity:.64;opacity:var(--vkui--opacity_disable_accessibility)}.vkuiIconButton--ios{border-radius:8px;border-radius:var(--vkui--size_border_radius--regular)}.vkuiIconButton .vkuiIcon--16{padding:16px}.vkuiIconButton .vkuiIcon--16.vkuiIcon--w-8{padding:16px 14px}.vkuiIconButton--sizeY-compact .vkuiIcon--16,.vkuiIconButton--sizeY-compact .vkuiIcon--16.vkuiIcon--w-8{padding:14px}.vkuiIconButton .vkuiIcon--24{padding:12px}.vkuiIconButton .vkuiIcon--28,.vkuiIconButton--sizeY-compact .vkuiIcon--24{padding:10px}.vkuiIconButton--sizeY-compact .vkuiIcon--28{padding:8px}@media (max-height:414.9px),(pointer:fine) and (min-width:768px){.vkuiIconButton--sizeY-none{height:44px}.vkuiIconButton--sizeY-none .vkuiIcon--16,.vkuiIconButton--sizeY-none .vkuiIcon--16.vkuiIcon--w-8{padding:14px}.vkuiIconButton--sizeY-none .vkuiIcon--24{padding:10px}.vkuiIconButton--sizeY-none .vkuiIcon--28{padding:8px}}.vkuiFormField__after .vkuiIconButton,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton{align-content:center;align-items:center;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular);display:flex;height:44px;height:var(--vkui--size_field_height--regular);justify-content:center;width:44px;width:var(--vkui--size_field_height--regular)}.vkuiFormField__after .vkuiIconButton .vkuiIcon.vkuiIcon.vkuiIcon{padding:0}.vkuiFormField__after .vkuiIconButton--sizeY-compact{width:36px;width:var(--vkui--size_field_height--compact)}.vkuiFormField__after .vkuiIconButton--sizeY-compact,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-compact,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-compact{height:36px;height:var(--vkui--size_field_height--compact)}@media (max-height:414.9px),(pointer:fine) and (min-width:768px){.vkuiFormField__after .vkuiIconButton--sizeY-none{width:36px;width:var(--vkui--size_field_height--compact)}.vkuiFormField__after .vkuiIconButton--sizeY-none,.vkuiFormItem--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-none,.vkuiFormLayoutGroup--removable .vkuiRemovable__content>.vkuiIconButton--sizeY-none{height:36px;height:var(--vkui--size_field_height--compact)}}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { type ImageBaseProps, type ImageBaseOverlayProps } from '../ImageBase/ImageBase';
2
+ import { type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';
3
3
  import { type ImageBadgeProps } from './ImageBadge/ImageBadge';
4
4
  export type { ImageBadgeProps, ImageBaseOverlayProps as ImageOverlayProps };
5
5
  export declare const IMAGE_DEFAULT_SIZE = 48;
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","names":["React","classNames","ImageBase","ImageBadge","IMAGE_DEFAULT_SIZE","Image","size","borderRadius","borderRadiusProp","style","className","restProps","Badge","Overlay"],"sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { type ImageBaseProps, type ImageBaseOverlayProps, ImageBase } from '../ImageBase/ImageBase';\nimport { type ImageBadgeProps, ImageBadge } from './ImageBadge/ImageBadge';\nimport styles from './Image.module.css';\n\nexport type { ImageBadgeProps, ImageBaseOverlayProps as ImageOverlayProps };\n\nexport const IMAGE_DEFAULT_SIZE = 48;\n\nexport interface ImageProps extends Omit<ImageBaseProps, 'badge'> {\n /**\n * Размер закругления.\n */\n borderRadius?: 's' | 'l' | 'm';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Image\n */\nexport const Image = ({\n size = IMAGE_DEFAULT_SIZE,\n borderRadius: borderRadiusProp = 'm',\n style,\n className,\n ...restProps\n}: ImageProps) => {\n let borderRadius: number;\n\n switch (borderRadiusProp) {\n case 's': {\n if (size <= 32) {\n borderRadius = 2;\n } else if (size <= 56) {\n borderRadius = 3;\n }\n borderRadius = 4;\n break;\n }\n case 'm': {\n if (size <= 32) {\n borderRadius = 3;\n } else if (size <= 48) {\n borderRadius = 4;\n } else if (size <= 72) {\n borderRadius = 6;\n } else if (size <= 80) {\n borderRadius = 8;\n }\n borderRadius = 10;\n break;\n }\n case 'l': {\n if (size <= 16) {\n borderRadius = 4;\n } else if (size <= 20) {\n borderRadius = 5;\n } else if (size <= 32) {\n borderRadius = 6;\n } else if (size <= 40) {\n borderRadius = 8;\n } else if (size <= 48) {\n borderRadius = 10;\n } else if (size <= 56) {\n borderRadius = 12;\n } else if (size <= 64) {\n borderRadius = 14;\n }\n borderRadius = 16;\n }\n }\n\n return (\n <ImageBase\n {...restProps}\n size={size}\n style={{ ...style, borderRadius }}\n className={classNames(styles['Image'], className)}\n />\n );\n};\n\nImage.Badge = ImageBadge;\n\nImage.Overlay = ImageBase.Overlay;\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAA0DC,SAAS,QAAQ,wBAAwB;AACnG,SAA+BC,UAAU,QAAQ,yBAAyB;AAAC;AAK3E,OAAO,IAAMC,kBAAkB,GAAG,EAAE;AASpC;AACA;AACA;AACA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAMA;EAAA,qBALhBC,IAAI;IAAJA,IAAI,0BAAGF,kBAAkB;IAAA,yBACzBG,YAAY;IAAEC,gBAAgB,kCAAG,GAAG;IACpCC,KAAK,QAALA,KAAK;IACLC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAIJ,YAAoB;EAExB,QAAQC,gBAAgB;IACtB,KAAK,GAAG;MAAE;QACR,IAAIF,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB;QACAA,YAAY,GAAG,CAAC;QAChB;MACF;IACA,KAAK,GAAG;MAAE;QACR,IAAID,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB;QACAA,YAAY,GAAG,EAAE;QACjB;MACF;IACA,KAAK,GAAG;MAAE;QACR,IAAID,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB;QACAA,YAAY,GAAG,EAAE;MACnB;EAAC;EAGH,oBACE,oBAAC,SAAS,eACJI,SAAS;IACb,IAAI,EAAEL,IAAK;IACX,KAAK,kCAAOG,KAAK;MAAEF,YAAY,EAAZA;IAAY,EAAG;IAClC,SAAS,EAAEN,UAAU,cAAkBS,SAAS;EAAE,GAClD;AAEN,CAAC;AAEDL,KAAK,CAACO,KAAK,GAAGT,UAAU;AAExBE,KAAK,CAACQ,OAAO,GAAGX,SAAS,CAACW,OAAO"}
1
+ {"version":3,"file":"Image.js","names":["React","classNames","ImageBase","ImageBadge","IMAGE_DEFAULT_SIZE","Image","size","borderRadius","borderRadiusProp","style","className","restProps","Badge","Overlay"],"sources":["../../../../src/components/Image/Image.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { ImageBase, type ImageBaseOverlayProps, type ImageBaseProps } from '../ImageBase/ImageBase';\nimport { ImageBadge, type ImageBadgeProps } from './ImageBadge/ImageBadge';\nimport styles from './Image.module.css';\n\nexport type { ImageBadgeProps, ImageBaseOverlayProps as ImageOverlayProps };\n\nexport const IMAGE_DEFAULT_SIZE = 48;\n\nexport interface ImageProps extends Omit<ImageBaseProps, 'badge'> {\n /**\n * Размер закругления.\n */\n borderRadius?: 's' | 'l' | 'm';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Image\n */\nexport const Image = ({\n size = IMAGE_DEFAULT_SIZE,\n borderRadius: borderRadiusProp = 'm',\n style,\n className,\n ...restProps\n}: ImageProps) => {\n let borderRadius: number;\n\n switch (borderRadiusProp) {\n case 's': {\n if (size <= 32) {\n borderRadius = 2;\n } else if (size <= 56) {\n borderRadius = 3;\n }\n borderRadius = 4;\n break;\n }\n case 'm': {\n if (size <= 32) {\n borderRadius = 3;\n } else if (size <= 48) {\n borderRadius = 4;\n } else if (size <= 72) {\n borderRadius = 6;\n } else if (size <= 80) {\n borderRadius = 8;\n }\n borderRadius = 10;\n break;\n }\n case 'l': {\n if (size <= 16) {\n borderRadius = 4;\n } else if (size <= 20) {\n borderRadius = 5;\n } else if (size <= 32) {\n borderRadius = 6;\n } else if (size <= 40) {\n borderRadius = 8;\n } else if (size <= 48) {\n borderRadius = 10;\n } else if (size <= 56) {\n borderRadius = 12;\n } else if (size <= 64) {\n borderRadius = 14;\n }\n borderRadius = 16;\n }\n }\n\n return (\n <ImageBase\n {...restProps}\n size={size}\n style={{ ...style, borderRadius }}\n className={classNames(styles['Image'], className)}\n />\n );\n};\n\nImage.Badge = ImageBadge;\n\nImage.Overlay = ImageBase.Overlay;\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,SAAS,QAAyD,wBAAwB;AACnG,SAASC,UAAU,QAA8B,yBAAyB;AAAC;AAK3E,OAAO,IAAMC,kBAAkB,GAAG,EAAE;AASpC;AACA;AACA;AACA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAMA;EAAA,qBALhBC,IAAI;IAAJA,IAAI,0BAAGF,kBAAkB;IAAA,yBACzBG,YAAY;IAAEC,gBAAgB,kCAAG,GAAG;IACpCC,KAAK,QAALA,KAAK;IACLC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAIJ,YAAoB;EAExB,QAAQC,gBAAgB;IACtB,KAAK,GAAG;MAAE;QACR,IAAIF,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB;QACAA,YAAY,GAAG,CAAC;QAChB;MACF;IACA,KAAK,GAAG;MAAE;QACR,IAAID,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB;QACAA,YAAY,GAAG,EAAE;QACjB;MACF;IACA,KAAK,GAAG;MAAE;QACR,IAAID,IAAI,IAAI,EAAE,EAAE;UACdC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,CAAC;QAClB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB,CAAC,MAAM,IAAID,IAAI,IAAI,EAAE,EAAE;UACrBC,YAAY,GAAG,EAAE;QACnB;QACAA,YAAY,GAAG,EAAE;MACnB;EAAC;EAGH,oBACE,oBAAC,SAAS,eACJI,SAAS;IACb,IAAI,EAAEL,IAAK;IACX,KAAK,kCAAOG,KAAK;MAAEF,YAAY,EAAZA;IAAY,EAAG;IAClC,SAAS,EAAEN,UAAU,cAAkBS,SAAS;EAAE,GAClD;AAEN,CAAC;AAEDL,KAAK,CAACO,KAAK,GAAGT,UAAU;AAExBE,KAAK,CAACQ,OAAO,GAAGX,SAAS,CAACW,OAAO"}
@@ -1 +1 @@
1
- {"version":3,"file":"ImageBadge.js","names":["React","classNames","ImageBase","ImageBaseContext","ImageBadge","className","restProps","useContext","size"],"sources":["../../../../../src/components/Image/ImageBadge/ImageBadge.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { type ImageBaseBadgeProps, ImageBase, ImageBaseContext } from '../../ImageBase/ImageBase';\nimport styles from './ImageBadge.module.css';\n\nexport type ImageBadgeProps = ImageBaseBadgeProps;\n\nexport const ImageBadge = ({ className, ...restProps }: ImageBadgeProps) => {\n const { size } = React.useContext(ImageBaseContext);\n return (\n <ImageBase.Badge\n {...restProps}\n className={classNames(\n styles['ImageBadge'],\n size < 96 && styles['ImageBadge--shifted'],\n className,\n )}\n />\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAAmCC,SAAS,EAAEC,gBAAgB,QAAQ,2BAA2B;AAAC;AAKlG,OAAO,IAAMC,UAAU,GAAG,SAAbA,UAAU,OAAqD;EAAA,IAA/CC,SAAS,QAATA,SAAS;IAAKC,SAAS;EAClD,wBAAiBN,KAAK,CAACO,UAAU,CAACJ,gBAAgB,CAAC;IAA3CK,IAAI,qBAAJA,IAAI;EACZ,oBACE,oBAAC,SAAS,CAAC,KAAK,eACVF,SAAS;IACb,SAAS,EAAEL,UAAU,mBAEnBO,IAAI,GAAG,EAAE,6BAAiC,EAC1CH,SAAS;EACT,GACF;AAEN,CAAC"}
1
+ {"version":3,"file":"ImageBadge.js","names":["React","classNames","ImageBase","ImageBaseContext","ImageBadge","className","restProps","useContext","size"],"sources":["../../../../../src/components/Image/ImageBadge/ImageBadge.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { ImageBase, type ImageBaseBadgeProps, ImageBaseContext } from '../../ImageBase/ImageBase';\nimport styles from './ImageBadge.module.css';\n\nexport type ImageBadgeProps = ImageBaseBadgeProps;\n\nexport const ImageBadge = ({ className, ...restProps }: ImageBadgeProps) => {\n const { size } = React.useContext(ImageBaseContext);\n return (\n <ImageBase.Badge\n {...restProps}\n className={classNames(\n styles['ImageBadge'],\n size < 96 && styles['ImageBadge--shifted'],\n className,\n )}\n />\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,SAAS,EAA4BC,gBAAgB,QAAQ,2BAA2B;AAAC;AAKlG,OAAO,IAAMC,UAAU,GAAG,SAAbA,UAAU,OAAqD;EAAA,IAA/CC,SAAS,QAATA,SAAS;IAAKC,SAAS;EAClD,wBAAiBN,KAAK,CAACO,UAAU,CAACJ,gBAAgB,CAAC;IAA3CK,IAAI,qBAAJA,IAAI;EACZ,oBACE,oBAAC,SAAS,CAAC,KAAK,eACVF,SAAS;IACb,SAAS,EAAEL,UAAU,mBAEnBO,IAAI,GAAG,EAAE,6BAAiC,EAC1CH,SAAS;EACT,GACF;AAEN,CAAC"}
@@ -2,8 +2,8 @@ import * as React from 'react';
2
2
  import type { HasRef, HasRootRef } from '../../types';
3
3
  import { type ImageBaseBadgeProps } from './ImageBaseBadge/ImageBaseBadge';
4
4
  import { type ImageBaseOverlayProps } from './ImageBaseOverlay/ImageBaseOverlay';
5
- import type { ImageBaseExpectedIconProps, ImageBaseSize, ImageBaseContextProps } from './types';
6
5
  import { ImageBaseContext } from './context';
6
+ import type { ImageBaseContextProps, ImageBaseExpectedIconProps, ImageBaseSize } from './types';
7
7
  export type { ImageBaseSize, ImageBaseExpectedIconProps, ImageBaseBadgeProps, ImageBaseOverlayProps, ImageBaseContextProps, };
8
8
  export { getBadgeIconSizeByImageBaseSize, getFallbackIconSizeByImageBaseSize, getOverlayIconSizeByImageBaseSize, } from './helpers';
9
9
  export { ImageBaseContext };
@@ -8,7 +8,7 @@ import { classNames } from '@vkontakte/vkjs';
8
8
  import { ImageBaseBadge } from './ImageBaseBadge/ImageBaseBadge';
9
9
  import { ImageBaseOverlay } from './ImageBaseOverlay/ImageBaseOverlay';
10
10
  import { ImageBaseContext } from './context';
11
- import { validateSize, validateFallbackIcon } from './validators';
11
+ import { validateFallbackIcon, validateSize } from './validators';
12
12
  import "./ImageBase.module.css";
13
13
  export { getBadgeIconSizeByImageBaseSize, getFallbackIconSizeByImageBaseSize, getOverlayIconSizeByImageBaseSize } from './helpers';
14
14
  export { ImageBaseContext };
@@ -1 +1 @@
1
- {"version":3,"file":"ImageBase.js","names":["React","classNames","ImageBaseBadge","ImageBaseOverlay","ImageBaseContext","validateSize","validateFallbackIcon","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","ImageBase","alt","crossOrigin","decoding","loading","referrerPolicy","sizes","src","srcSet","useMap","getRef","size","width","height","style","className","getRootRef","withBorder","fallbackIconProp","children","ariaLabel","onClick","onLoad","onError","restProps","useState","loaded","setLoaded","failed","setFailed","hasSrc","needShowFallbackIcon","isValidElement","fallbackIcon","process","env","NODE_ENV","name","value","handleImageLoad","event","handleImageError","styles","Badge","Overlay"],"sources":["../../../../src/components/ImageBase/ImageBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport type { HasRef, HasRootRef } from '../../types';\nimport { type ImageBaseBadgeProps, ImageBaseBadge } from './ImageBaseBadge/ImageBaseBadge';\nimport { type ImageBaseOverlayProps, ImageBaseOverlay } from './ImageBaseOverlay/ImageBaseOverlay';\nimport type { ImageBaseExpectedIconProps, ImageBaseSize, ImageBaseContextProps } from './types';\nimport { ImageBaseContext } from './context';\nimport { validateSize, validateFallbackIcon } from './validators';\nimport styles from './ImageBase.module.css';\n\nexport type {\n ImageBaseSize,\n ImageBaseExpectedIconProps,\n ImageBaseBadgeProps,\n ImageBaseOverlayProps,\n ImageBaseContextProps,\n};\n\nexport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\n\nexport { ImageBaseContext };\n\nexport interface ImageBaseProps\n extends React.ImgHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLImageElement> {\n /**\n * Задаёт размер картинки.\n *\n * Используйте размеры заданные дизайн-системой `16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 | 48 | 56 | 64 | 72 | 80 | 88 | 96`.\n *\n * > ⚠️ Использование кастомного размера – это пограничный кейс.\n */\n size?: ImageBaseSize | number;\n /**\n * Включает или отключает обводку.\n */\n withBorder?: boolean;\n /**\n * Фолбек на случай, если картинка не прогрузилась.\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getFallbackIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n *\n * > ⚠️ Может перекрывать `children`.\n */\n fallbackIcon?: React.ReactElement<ImageBaseExpectedIconProps>;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ImageBase\n */\nexport const ImageBase = ({\n alt,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n src,\n srcSet,\n useMap,\n getRef,\n size = 24,\n width,\n height,\n style,\n className,\n getRootRef,\n withBorder = true,\n 'fallbackIcon': fallbackIconProp,\n children,\n 'aria-label': ariaLabel,\n onClick,\n onLoad,\n onError,\n ...restProps\n}: ImageBaseProps) => {\n const [loaded, setLoaded] = React.useState(false);\n const [failed, setFailed] = React.useState(false);\n\n const hasSrc = src || srcSet;\n const needShowFallbackIcon = (failed || !hasSrc) && React.isValidElement(fallbackIconProp);\n\n const fallbackIcon = needShowFallbackIcon ? fallbackIconProp : null;\n\n if (process.env.NODE_ENV === 'development') {\n validateSize(size);\n if (fallbackIcon) {\n validateFallbackIcon(size, { name: 'fallbackIcon', value: fallbackIcon });\n }\n }\n\n const handleImageLoad = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(true);\n setFailed(false);\n onLoad?.(event);\n };\n\n const handleImageError = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(false);\n setFailed(true);\n onError?.(event);\n };\n\n return (\n <ImageBaseContext.Provider value={{ size }}>\n <div\n {...restProps}\n ref={getRootRef}\n style={{ ...style, width: size, height: size }}\n className={classNames(\n className,\n styles['ImageBase'],\n styles[`ImageBase--size-${size as ImageBaseSize}`],\n withBorder && styles['ImageBase--withBorder'],\n loaded && styles['ImageBase--loaded'],\n )}\n role={hasSrc ? 'img' : 'presentation'}\n aria-label={ariaLabel}\n onClick={onClick}\n >\n {hasSrc && (\n <img\n ref={getRef}\n alt={alt}\n className={styles['ImageBase__img']}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n sizes={sizes}\n src={src}\n srcSet={srcSet}\n useMap={useMap}\n width={width}\n height={height}\n onLoad={handleImageLoad}\n onError={handleImageError}\n />\n )}\n {fallbackIcon && (\n <div className={classNames(styles['ImageBase__fallback'])}>{fallbackIcon}</div>\n )}\n {children}\n </div>\n </ImageBaseContext.Provider>\n );\n};\n\nImageBase.Badge = ImageBaseBadge;\n\nImageBase.Overlay = ImageBaseOverlay;\n"],"mappings":"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"}
1
+ {"version":3,"file":"ImageBase.js","names":["React","classNames","ImageBaseBadge","ImageBaseOverlay","ImageBaseContext","validateFallbackIcon","validateSize","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","ImageBase","alt","crossOrigin","decoding","loading","referrerPolicy","sizes","src","srcSet","useMap","getRef","size","width","height","style","className","getRootRef","withBorder","fallbackIconProp","children","ariaLabel","onClick","onLoad","onError","restProps","useState","loaded","setLoaded","failed","setFailed","hasSrc","needShowFallbackIcon","isValidElement","fallbackIcon","process","env","NODE_ENV","name","value","handleImageLoad","event","handleImageError","styles","Badge","Overlay"],"sources":["../../../../src/components/ImageBase/ImageBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport type { HasRef, HasRootRef } from '../../types';\nimport { ImageBaseBadge, type ImageBaseBadgeProps } from './ImageBaseBadge/ImageBaseBadge';\nimport { ImageBaseOverlay, type ImageBaseOverlayProps } from './ImageBaseOverlay/ImageBaseOverlay';\nimport { ImageBaseContext } from './context';\nimport type { ImageBaseContextProps, ImageBaseExpectedIconProps, ImageBaseSize } from './types';\nimport { validateFallbackIcon, validateSize } from './validators';\nimport styles from './ImageBase.module.css';\n\nexport type {\n ImageBaseSize,\n ImageBaseExpectedIconProps,\n ImageBaseBadgeProps,\n ImageBaseOverlayProps,\n ImageBaseContextProps,\n};\n\nexport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\n\nexport { ImageBaseContext };\n\nexport interface ImageBaseProps\n extends React.ImgHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLImageElement> {\n /**\n * Задаёт размер картинки.\n *\n * Используйте размеры заданные дизайн-системой `16 | 20 | 24 | 28 | 32 | 36 | 40 | 44 | 48 | 56 | 64 | 72 | 80 | 88 | 96`.\n *\n * > ⚠️ Использование кастомного размера – это пограничный кейс.\n */\n size?: ImageBaseSize | number;\n /**\n * Включает или отключает обводку.\n */\n withBorder?: boolean;\n /**\n * Фолбек на случай, если картинка не прогрузилась.\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getFallbackIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n *\n * > ⚠️ Может перекрывать `children`.\n */\n fallbackIcon?: React.ReactElement<ImageBaseExpectedIconProps>;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ImageBase\n */\nexport const ImageBase = ({\n alt,\n crossOrigin,\n decoding,\n loading,\n referrerPolicy,\n sizes,\n src,\n srcSet,\n useMap,\n getRef,\n size = 24,\n width,\n height,\n style,\n className,\n getRootRef,\n withBorder = true,\n 'fallbackIcon': fallbackIconProp,\n children,\n 'aria-label': ariaLabel,\n onClick,\n onLoad,\n onError,\n ...restProps\n}: ImageBaseProps) => {\n const [loaded, setLoaded] = React.useState(false);\n const [failed, setFailed] = React.useState(false);\n\n const hasSrc = src || srcSet;\n const needShowFallbackIcon = (failed || !hasSrc) && React.isValidElement(fallbackIconProp);\n\n const fallbackIcon = needShowFallbackIcon ? fallbackIconProp : null;\n\n if (process.env.NODE_ENV === 'development') {\n validateSize(size);\n if (fallbackIcon) {\n validateFallbackIcon(size, { name: 'fallbackIcon', value: fallbackIcon });\n }\n }\n\n const handleImageLoad = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(true);\n setFailed(false);\n onLoad?.(event);\n };\n\n const handleImageError = (event: React.SyntheticEvent<HTMLImageElement>) => {\n setLoaded(false);\n setFailed(true);\n onError?.(event);\n };\n\n return (\n <ImageBaseContext.Provider value={{ size }}>\n <div\n {...restProps}\n ref={getRootRef}\n style={{ ...style, width: size, height: size }}\n className={classNames(\n className,\n styles['ImageBase'],\n styles[`ImageBase--size-${size as ImageBaseSize}`],\n withBorder && styles['ImageBase--withBorder'],\n loaded && styles['ImageBase--loaded'],\n )}\n role={hasSrc ? 'img' : 'presentation'}\n aria-label={ariaLabel}\n onClick={onClick}\n >\n {hasSrc && (\n <img\n ref={getRef}\n alt={alt}\n className={styles['ImageBase__img']}\n crossOrigin={crossOrigin}\n decoding={decoding}\n loading={loading}\n referrerPolicy={referrerPolicy}\n sizes={sizes}\n src={src}\n srcSet={srcSet}\n useMap={useMap}\n width={width}\n height={height}\n onLoad={handleImageLoad}\n onError={handleImageError}\n />\n )}\n {fallbackIcon && (\n <div className={classNames(styles['ImageBase__fallback'])}>{fallbackIcon}</div>\n )}\n {children}\n </div>\n </ImageBaseContext.Provider>\n );\n};\n\nImageBase.Badge = ImageBaseBadge;\n\nImageBase.Overlay = ImageBaseOverlay;\n"],"mappings":"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"}
@@ -1 +1 @@
1
- .vkuiImageBase{align-items:center;background-color:#f5f5f5;background-color:var(--vkui--color_background_secondary);background-size:cover;box-sizing:border-box;color:#99a2ad;color:var(--vkui--color_icon_secondary);display:flex;flex-shrink:0;justify-content:center;position:relative}.vkuiImageBase--withBorder{box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);box-shadow:inset 0 0 0 var(--vkui_internal--thin_border) var(--vkui--color_image_border_alpha)}.vkuiImageBase__img{border:none;border-radius:inherit;display:block;height:100%;left:0;object-fit:cover;position:absolute;top:0;visibility:hidden;width:100%}.vkuiImageBase--loaded .vkuiImageBase__img{visibility:visible}.vkuiImageBase__fallback{left:auto;position:absolute;top:auto}.vkuiCellButton>.vkuiImageBase .vkuiIcon{color:#2688eb;color:var(--vkui--color_icon_accent)}.vkuiCellButton--mode-danger>.vkuiImageBase .vkuiIcon{color:#e64646;color:var(--vkui--color_icon_negative)}.vkuiPanelHeader__before .vkuiImageBase{margin-left:8px}.vkuiPanelHeader__after .vkuiImageBase{margin-right:8px}.vkuiSimpleCell>.vkuiImageBase{margin-right:12px}.vkuiSimpleCell>.vkuiImageBase--size-28,.vkuiSimpleCell>.vkuiImageBase--size-32{margin-bottom:10px;margin-top:10px}.vkuiSimpleCell>.vkuiImageBase--size-40{margin-bottom:4px;margin-top:4px}.vkuiSimpleCell>.vkuiImageBase--size-48,.vkuiSimpleCell>.vkuiImageBase--size-72{margin-bottom:6px;margin-top:6px}.vkuiSimpleCell--ios>.vkuiImageBase--size-28,.vkuiSimpleCell--ios>.vkuiImageBase--size-32{margin-left:4px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-28,.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-32{margin-bottom:8px;margin-top:8px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-40{margin-bottom:2px;margin-top:2px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-48{margin-bottom:4px;margin-top:4px}@media (pointer:fine) and (min-width:768px),not (min-height:415px){.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-28,.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-32{margin-bottom:8px;margin-top:8px}.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-40{margin-bottom:2px;margin-top:2px}.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-48{margin-bottom:4px;margin-top:4px}}
1
+ .vkuiImageBase{align-items:center;background-color:#f5f5f5;background-color:var(--vkui--color_background_secondary);background-size:cover;box-sizing:border-box;color:#99a2ad;color:var(--vkui--color_icon_secondary);display:flex;flex-shrink:0;justify-content:center;position:relative}.vkuiImageBase--withBorder{box-shadow:inset 0 0 0 1px rgba(0,0,0,.08);box-shadow:inset 0 0 0 var(--vkui_internal--thin_border) var(--vkui--color_image_border_alpha)}.vkuiImageBase__img{border:none;border-radius:inherit;display:block;height:100%;left:0;object-fit:cover;position:absolute;top:0;visibility:hidden;width:100%}.vkuiImageBase--loaded .vkuiImageBase__img{visibility:visible}.vkuiImageBase__fallback{left:auto;position:absolute;top:auto}.vkuiCellButton>.vkuiImageBase .vkuiIcon{color:#2688eb;color:var(--vkui--color_icon_accent)}.vkuiCellButton--mode-danger>.vkuiImageBase .vkuiIcon{color:#e64646;color:var(--vkui--color_icon_negative)}.vkuiPanelHeader__before .vkuiImageBase{margin-left:8px}.vkuiPanelHeader__after .vkuiImageBase{margin-right:8px}.vkuiSimpleCell>.vkuiImageBase{margin-right:12px}.vkuiSimpleCell>.vkuiImageBase--size-28,.vkuiSimpleCell>.vkuiImageBase--size-32{margin-bottom:10px;margin-top:10px}.vkuiSimpleCell>.vkuiImageBase--size-40{margin-bottom:4px;margin-top:4px}.vkuiSimpleCell>.vkuiImageBase--size-48,.vkuiSimpleCell>.vkuiImageBase--size-72{margin-bottom:6px;margin-top:6px}.vkuiSimpleCell--ios>.vkuiImageBase--size-28,.vkuiSimpleCell--ios>.vkuiImageBase--size-32{margin-left:4px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-28,.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-32{margin-bottom:8px;margin-top:8px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-40{margin-bottom:2px;margin-top:2px}.vkuiSimpleCell--sizeY-compact>.vkuiImageBase--size-48{margin-bottom:4px;margin-top:4px}@media (max-height:414.9px),(pointer:fine) and (min-width:768px){.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-28,.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-32{margin-bottom:8px;margin-top:8px}.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-40{margin-bottom:2px;margin-top:2px}.vkuiSimpleCell--sizeY-none>.vkuiImageBase--size-48{margin-bottom:4px;margin-top:4px}}
@@ -3,8 +3,8 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
3
3
  var _excluded = ["className", "theme", "visibility", "children", "onClick"];
4
4
  import * as React from 'react';
5
5
  import { classNames } from '@vkontakte/vkjs';
6
- import { useAppearance } from '../../../hooks/useAppearance';
7
6
  import { useAdaptivityHasPointer } from '../../../hooks/useAdaptivityHasPointer';
7
+ import { useAppearance } from '../../../hooks/useAppearance';
8
8
  import { Tappable } from '../../Tappable/Tappable';
9
9
  import { ImageBaseContext } from '../context';
10
10
  import { validateOverlayIcon } from '../validators';
@@ -1 +1 @@
1
- {"version":3,"file":"ImageBaseOverlay.js","names":["React","classNames","useAppearance","useAdaptivityHasPointer","Tappable","ImageBaseContext","validateOverlayIcon","ImageBaseOverlay","className","themeProp","theme","visibilityProp","visibility","children","onClick","restProps","appearance","hasPointer","process","env","NODE_ENV","useContext","size","name","value","undefined"],"sources":["../../../../../src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAppearance } from '../../../hooks/useAppearance';\nimport { useAdaptivityHasPointer } from '../../../hooks/useAdaptivityHasPointer';\nimport { Tappable } from '../../Tappable/Tappable';\nimport { ImageBaseContext } from '../context';\nimport type { ImageBaseExpectedIconProps } from '../types';\nimport { validateOverlayIcon } from '../validators';\nimport styles from './ImageBaseOverlay.module.css';\n\nexport interface ImageBaseOverlayProps extends React.AriaAttributes {\n /**\n * Задаёт тему оформления.\n *\n * > По умолчанию берётся из параметра `appearance` в `ConfigProvider`.\n */\n theme?: 'dark' | 'light';\n /**\n * Определяет каким образом должен показываться оверлей.\n *\n * - `\"on-hover\"` – на наведение указателя мыши.\n * - `\"always\"` – всегда показывать.\n *\n * > По умолчанию определяется в зависимости от того, есть ли у пользователя мышь или нет.\n */\n visibility?: 'on-hover' | 'always';\n /**\n * Принимает иконку.\n *\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getOverlayIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n */\n children: React.ReactElement<ImageBaseExpectedIconProps>;\n className?: string;\n onClick?: React.MouseEventHandler<HTMLElement>;\n}\n\n/**\n * Интерактивный оверлей над картинкой.\n */\nexport const ImageBaseOverlay = ({\n className,\n theme: themeProp,\n visibility: visibilityProp,\n children,\n onClick,\n ...restProps\n}: ImageBaseOverlayProps) => {\n const appearance = useAppearance();\n const hasPointer = useAdaptivityHasPointer();\n const theme = themeProp ?? appearance;\n const visibility = visibilityProp ?? (hasPointer ? 'on-hover' : 'always');\n\n if (process.env.NODE_ENV === 'development') {\n if (children) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { size } = React.useContext(ImageBaseContext);\n validateOverlayIcon(size, { name: 'children', value: children });\n }\n }\n\n return (\n <Tappable\n {...restProps}\n type=\"button\"\n Component=\"button\"\n className={classNames(\n styles['ImageBaseOverlay'],\n visibility === 'always' && styles['ImageBaseOverlay--visible'],\n theme === 'light' && styles['ImageBaseOverlay--theme-light'],\n theme === 'dark' && styles['ImageBaseOverlay--theme-dark'],\n className,\n )}\n hasHover={visibility === 'on-hover'}\n hoverMode={visibility === 'on-hover' ? styles['ImageBaseOverlay--visible'] : undefined}\n focusVisibleMode={styles['ImageBaseOverlay--focus-visible']}\n hasActive={false}\n onClick={onClick}\n >\n {children}\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,uBAAuB,QAAQ,wCAAwC;AAChF,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,gBAAgB,QAAQ,YAAY;AAE7C,SAASC,mBAAmB,QAAQ,eAAe;AAAC;AAoCpD;AACA;AACA;AACA,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgB,OAOA;EAAA,IAN3BC,SAAS,QAATA,SAAS;IACFC,SAAS,QAAhBC,KAAK;IACOC,cAAc,QAA1BC,UAAU;IACVC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACJC,SAAS;EAEZ,IAAMC,UAAU,GAAGd,aAAa,EAAE;EAClC,IAAMe,UAAU,GAAGd,uBAAuB,EAAE;EAC5C,IAAMO,KAAK,GAAGD,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIO,UAAU;EACrC,IAAMJ,UAAU,GAAGD,cAAc,aAAdA,cAAc,cAAdA,cAAc,GAAKM,UAAU,GAAG,UAAU,GAAG,QAAS;EAEzE,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EAAE;IAC1C,IAAIP,QAAQ,EAAE;MACZ;MACA,wBAAiBb,KAAK,CAACqB,UAAU,CAAChB,gBAAgB,CAAC;QAA3CiB,IAAI,qBAAJA,IAAI;MACZhB,mBAAmB,CAACgB,IAAI,EAAE;QAAEC,IAAI,EAAE,UAAU;QAAEC,KAAK,EAAEX;MAAS,CAAC,CAAC;IAClE;EACF;EAEA,oBACE,oBAAC,QAAQ,eACHE,SAAS;IACb,IAAI,EAAC,QAAQ;IACb,SAAS,EAAC,QAAQ;IAClB,SAAS,EAAEd,UAAU,yBAEnBW,UAAU,KAAK,QAAQ,mCAAuC,EAC9DF,KAAK,KAAK,OAAO,uCAA2C,EAC5DA,KAAK,KAAK,MAAM,sCAA0C,EAC1DF,SAAS,CACT;IACF,QAAQ,EAAEI,UAAU,KAAK,UAAW;IACpC,SAAS,EAAEA,UAAU,KAAK,UAAU,qCAAyCa,SAAU;IACvF,gBAAgB,uCAA4C;IAC5D,SAAS,EAAE,KAAM;IACjB,OAAO,EAAEX;EAAQ,IAEhBD,QAAQ,CACA;AAEf,CAAC"}
1
+ {"version":3,"file":"ImageBaseOverlay.js","names":["React","classNames","useAdaptivityHasPointer","useAppearance","Tappable","ImageBaseContext","validateOverlayIcon","ImageBaseOverlay","className","themeProp","theme","visibilityProp","visibility","children","onClick","restProps","appearance","hasPointer","process","env","NODE_ENV","useContext","size","name","value","undefined"],"sources":["../../../../../src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityHasPointer } from '../../../hooks/useAdaptivityHasPointer';\nimport { useAppearance } from '../../../hooks/useAppearance';\nimport { Tappable } from '../../Tappable/Tappable';\nimport { ImageBaseContext } from '../context';\nimport type { ImageBaseExpectedIconProps } from '../types';\nimport { validateOverlayIcon } from '../validators';\nimport styles from './ImageBaseOverlay.module.css';\n\nexport interface ImageBaseOverlayProps extends React.AriaAttributes {\n /**\n * Задаёт тему оформления.\n *\n * > По умолчанию берётся из параметра `appearance` в `ConfigProvider`.\n */\n theme?: 'dark' | 'light';\n /**\n * Определяет каким образом должен показываться оверлей.\n *\n * - `\"on-hover\"` – на наведение указателя мыши.\n * - `\"always\"` – всегда показывать.\n *\n * > По умолчанию определяется в зависимости от того, есть ли у пользователя мышь или нет.\n */\n visibility?: 'on-hover' | 'always';\n /**\n * Принимает иконку.\n *\n *\n * > 📝 Нужный для `<ImageBase size={...} />` размер можно узнать из функции `getOverlayIconSizeByImageBaseSize()`.\n *\n * > Предпочтительней использовать иконки из `@vkontakte/icons`.\n *\n * > 📊️ Если вы хотите передать кастомную иконку, то следует именовать её по шаблону `Icon<size><name>`. Или же\n * > чтобы в неё был передан параметр `width`. Тогда мы сможем выводить в консоль подсказку правильного ли размера вы\n * > использовали иконку.\n */\n children: React.ReactElement<ImageBaseExpectedIconProps>;\n className?: string;\n onClick?: React.MouseEventHandler<HTMLElement>;\n}\n\n/**\n * Интерактивный оверлей над картинкой.\n */\nexport const ImageBaseOverlay = ({\n className,\n theme: themeProp,\n visibility: visibilityProp,\n children,\n onClick,\n ...restProps\n}: ImageBaseOverlayProps) => {\n const appearance = useAppearance();\n const hasPointer = useAdaptivityHasPointer();\n const theme = themeProp ?? appearance;\n const visibility = visibilityProp ?? (hasPointer ? 'on-hover' : 'always');\n\n if (process.env.NODE_ENV === 'development') {\n if (children) {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const { size } = React.useContext(ImageBaseContext);\n validateOverlayIcon(size, { name: 'children', value: children });\n }\n }\n\n return (\n <Tappable\n {...restProps}\n type=\"button\"\n Component=\"button\"\n className={classNames(\n styles['ImageBaseOverlay'],\n visibility === 'always' && styles['ImageBaseOverlay--visible'],\n theme === 'light' && styles['ImageBaseOverlay--theme-light'],\n theme === 'dark' && styles['ImageBaseOverlay--theme-dark'],\n className,\n )}\n hasHover={visibility === 'on-hover'}\n hoverMode={visibility === 'on-hover' ? styles['ImageBaseOverlay--visible'] : undefined}\n focusVisibleMode={styles['ImageBaseOverlay--focus-visible']}\n hasActive={false}\n onClick={onClick}\n >\n {children}\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,uBAAuB,QAAQ,wCAAwC;AAChF,SAASC,aAAa,QAAQ,8BAA8B;AAC5D,SAASC,QAAQ,QAAQ,yBAAyB;AAClD,SAASC,gBAAgB,QAAQ,YAAY;AAE7C,SAASC,mBAAmB,QAAQ,eAAe;AAAC;AAoCpD;AACA;AACA;AACA,OAAO,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgB,OAOA;EAAA,IAN3BC,SAAS,QAATA,SAAS;IACFC,SAAS,QAAhBC,KAAK;IACOC,cAAc,QAA1BC,UAAU;IACVC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACJC,SAAS;EAEZ,IAAMC,UAAU,GAAGb,aAAa,EAAE;EAClC,IAAMc,UAAU,GAAGf,uBAAuB,EAAE;EAC5C,IAAMQ,KAAK,GAAGD,SAAS,aAATA,SAAS,cAATA,SAAS,GAAIO,UAAU;EACrC,IAAMJ,UAAU,GAAGD,cAAc,aAAdA,cAAc,cAAdA,cAAc,GAAKM,UAAU,GAAG,UAAU,GAAG,QAAS;EAEzE,IAAIC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,EAAE;IAC1C,IAAIP,QAAQ,EAAE;MACZ;MACA,wBAAiBb,KAAK,CAACqB,UAAU,CAAChB,gBAAgB,CAAC;QAA3CiB,IAAI,qBAAJA,IAAI;MACZhB,mBAAmB,CAACgB,IAAI,EAAE;QAAEC,IAAI,EAAE,UAAU;QAAEC,KAAK,EAAEX;MAAS,CAAC,CAAC;IAClE;EACF;EAEA,oBACE,oBAAC,QAAQ,eACHE,SAAS;IACb,IAAI,EAAC,QAAQ;IACb,SAAS,EAAC,QAAQ;IAClB,SAAS,EAAEd,UAAU,yBAEnBW,UAAU,KAAK,QAAQ,mCAAuC,EAC9DF,KAAK,KAAK,OAAO,uCAA2C,EAC5DA,KAAK,KAAK,MAAM,sCAA0C,EAC1DF,SAAS,CACT;IACF,QAAQ,EAAEI,UAAU,KAAK,UAAW;IACpC,SAAS,EAAEA,UAAU,KAAK,UAAU,qCAAyCa,SAAU;IACvF,gBAAgB,uCAA4C;IAC5D,SAAS,EAAE,KAAM;IACjB,OAAO,EAAEX;EAAQ,IAEhBD,QAAQ,CACA;AAEf,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import { warnOnce } from '../../lib/warnOnce';
2
- import { imageBaseSizes } from './types';
3
2
  import { getBadgeIconSizeByImageBaseSize, getFallbackIconSizeByImageBaseSize, getOverlayIconSizeByImageBaseSize } from './helpers';
3
+ import { imageBaseSizes } from './types';
4
4
 
5
5
  /**
6
6
  * Пример,
@@ -1 +1 @@
1
- {"version":3,"file":"validators.js","names":["warnOnce","imageBaseSizes","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","parseIconSizeByDisplayName","displayName","rawSize","replace","size","Number","parseIconSizeByWidthProp","width","getElementDisplayName","element","type","getElementWidthProp","props","getIconSizeByElement","sizeByDisplayName","sizeByWidth","validateIconComponentSizeByImageSize","imageSize","iconProp","selectorFn","logger","iconSize","value","result","MAX_SIZE","iconName","propMessage","name","warnImageBase","validateFallbackIcon","mapOfExpectedSize","Set","arrayOfSizes","Object","keys","map","str","maxSize","reduce","validateSize","has","join","warnImageBaseBadge","validateBadgeIcon","warnImageBaseOverlay","validateOverlayIcon"],"sources":["../../../../src/components/ImageBase/validators.ts"],"sourcesContent":["import { warnOnce } from '../../lib/warnOnce';\nimport { imageBaseSizes } from './types';\nimport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\n\n/**\n * Пример,\n *\n * Icon28User -> 28\n * Icon12Circle1 -> 12\n * Icon12Circle2 -> 12\n */\nfunction parseIconSizeByDisplayName(displayName: unknown): number | null {\n if (typeof displayName !== 'string') {\n return null;\n }\n const rawSize = displayName\n .replace(/\\d+$/g, '') // удаляем цифры в конце\n .replace(/\\D/g, ''); // удаляем всё, что не является числом\n const size = Number(rawSize);\n return size > 0 ? size : null;\n}\n\nfunction parseIconSizeByWidthProp(width: unknown): number | null {\n if (typeof width !== 'string' && typeof width !== 'number') {\n return null;\n }\n const size = Number(width);\n return size > 0 ? size : null;\n}\n\nfunction getElementDisplayName(element: JSX.Element): string | null {\n return element.type.displayName ?? null;\n}\n\nfunction getElementWidthProp(element: JSX.Element): number | string | null {\n return element.props.width ?? null;\n}\n\nfunction getIconSizeByElement(element: JSX.Element): number | null {\n const sizeByDisplayName = parseIconSizeByDisplayName(getElementDisplayName(element));\n const sizeByWidth = parseIconSizeByWidthProp(getElementWidthProp(element));\n return sizeByWidth ? sizeByWidth : sizeByDisplayName;\n}\n\ninterface IconProp {\n name: string;\n value: JSX.Element;\n}\n\ninterface SelectorFn {\n (imageSize: number): number;\n MAX_SIZE: number;\n}\n\nfunction validateIconComponentSizeByImageSize(\n imageSize: number,\n iconProp: IconProp,\n selectorFn: SelectorFn,\n logger: ReturnType<typeof warnOnce>,\n) {\n const iconSize = getIconSizeByElement(iconProp.value);\n\n if (iconSize === null) {\n return;\n }\n\n const result = selectorFn(imageSize);\n\n if (result === iconSize || (result === selectorFn.MAX_SIZE && iconSize >= result)) {\n return;\n }\n\n const iconName = getElementDisplayName(iconProp.value);\n const propMessage = iconName ? `${iconProp.name}={<${iconName} />}` : iconProp.name;\n\n logger(\n `Размер \\`${propMessage}\\` не соответствует дизайн-системе. Для \\`size={${imageSize}}\\` размер иконки для \\`${iconProp.name}\\` должен соответствовать <Icon${result}<name> />. Если такого размера нет, то используйте <${iconName} width={${result}} height={${result}} />`,\n 'log',\n );\n}\n\nconst warnImageBase = warnOnce('ImageBase');\n\nexport function validateFallbackIcon(imageSize: number, iconProp: IconProp) {\n return validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getFallbackIconSizeByImageBaseSize,\n warnImageBase,\n );\n}\n\nconst mapOfExpectedSize = new Set<number>(imageBaseSizes);\n\nconst arrayOfSizes = Object.keys(mapOfExpectedSize).map((str) => Number(str));\nconst maxSize = arrayOfSizes.reduce((maxSize, size) => (size > maxSize ? size : maxSize), 0);\n\nexport function validateSize(imageSize: number): void {\n if (imageSize > maxSize || mapOfExpectedSize.has(imageSize)) {\n return;\n }\n warnImageBase(\n `\\`size={${imageSize}}\\` не соответствует дизайн-системе. Пожалуйста, используйте один из следующих вариантов: ${arrayOfSizes.join(\n ' | ',\n )}`,\n 'log',\n );\n}\n\nconst warnImageBaseBadge = warnOnce('ImageBase.Badge');\n\nexport function validateBadgeIcon(imageSize: number, iconProp: IconProp): void {\n if (imageSize < 24 && iconProp) {\n return warnImageBaseBadge('Не используйте бейдж при `size < 24`.', 'log');\n }\n validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getBadgeIconSizeByImageBaseSize,\n warnImageBaseBadge,\n );\n}\n\nconst warnImageBaseOverlay = warnOnce('ImageBase.Overlay');\n\nexport function validateOverlayIcon(imageSize: number, iconProp: IconProp): void {\n validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getOverlayIconSizeByImageBaseSize,\n warnImageBaseOverlay,\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"validators.js","names":["warnOnce","getBadgeIconSizeByImageBaseSize","getFallbackIconSizeByImageBaseSize","getOverlayIconSizeByImageBaseSize","imageBaseSizes","parseIconSizeByDisplayName","displayName","rawSize","replace","size","Number","parseIconSizeByWidthProp","width","getElementDisplayName","element","type","getElementWidthProp","props","getIconSizeByElement","sizeByDisplayName","sizeByWidth","validateIconComponentSizeByImageSize","imageSize","iconProp","selectorFn","logger","iconSize","value","result","MAX_SIZE","iconName","propMessage","name","warnImageBase","validateFallbackIcon","mapOfExpectedSize","Set","arrayOfSizes","Object","keys","map","str","maxSize","reduce","validateSize","has","join","warnImageBaseBadge","validateBadgeIcon","warnImageBaseOverlay","validateOverlayIcon"],"sources":["../../../../src/components/ImageBase/validators.ts"],"sourcesContent":["import { warnOnce } from '../../lib/warnOnce';\nimport {\n getBadgeIconSizeByImageBaseSize,\n getFallbackIconSizeByImageBaseSize,\n getOverlayIconSizeByImageBaseSize,\n} from './helpers';\nimport { imageBaseSizes } from './types';\n\n/**\n * Пример,\n *\n * Icon28User -> 28\n * Icon12Circle1 -> 12\n * Icon12Circle2 -> 12\n */\nfunction parseIconSizeByDisplayName(displayName: unknown): number | null {\n if (typeof displayName !== 'string') {\n return null;\n }\n const rawSize = displayName\n .replace(/\\d+$/g, '') // удаляем цифры в конце\n .replace(/\\D/g, ''); // удаляем всё, что не является числом\n const size = Number(rawSize);\n return size > 0 ? size : null;\n}\n\nfunction parseIconSizeByWidthProp(width: unknown): number | null {\n if (typeof width !== 'string' && typeof width !== 'number') {\n return null;\n }\n const size = Number(width);\n return size > 0 ? size : null;\n}\n\nfunction getElementDisplayName(element: JSX.Element): string | null {\n return element.type.displayName ?? null;\n}\n\nfunction getElementWidthProp(element: JSX.Element): number | string | null {\n return element.props.width ?? null;\n}\n\nfunction getIconSizeByElement(element: JSX.Element): number | null {\n const sizeByDisplayName = parseIconSizeByDisplayName(getElementDisplayName(element));\n const sizeByWidth = parseIconSizeByWidthProp(getElementWidthProp(element));\n return sizeByWidth ? sizeByWidth : sizeByDisplayName;\n}\n\ninterface IconProp {\n name: string;\n value: JSX.Element;\n}\n\ninterface SelectorFn {\n (imageSize: number): number;\n MAX_SIZE: number;\n}\n\nfunction validateIconComponentSizeByImageSize(\n imageSize: number,\n iconProp: IconProp,\n selectorFn: SelectorFn,\n logger: ReturnType<typeof warnOnce>,\n) {\n const iconSize = getIconSizeByElement(iconProp.value);\n\n if (iconSize === null) {\n return;\n }\n\n const result = selectorFn(imageSize);\n\n if (result === iconSize || (result === selectorFn.MAX_SIZE && iconSize >= result)) {\n return;\n }\n\n const iconName = getElementDisplayName(iconProp.value);\n const propMessage = iconName ? `${iconProp.name}={<${iconName} />}` : iconProp.name;\n\n logger(\n `Размер \\`${propMessage}\\` не соответствует дизайн-системе. Для \\`size={${imageSize}}\\` размер иконки для \\`${iconProp.name}\\` должен соответствовать <Icon${result}<name> />. Если такого размера нет, то используйте <${iconName} width={${result}} height={${result}} />`,\n 'log',\n );\n}\n\nconst warnImageBase = warnOnce('ImageBase');\n\nexport function validateFallbackIcon(imageSize: number, iconProp: IconProp) {\n return validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getFallbackIconSizeByImageBaseSize,\n warnImageBase,\n );\n}\n\nconst mapOfExpectedSize = new Set<number>(imageBaseSizes);\n\nconst arrayOfSizes = Object.keys(mapOfExpectedSize).map((str) => Number(str));\nconst maxSize = arrayOfSizes.reduce((maxSize, size) => (size > maxSize ? size : maxSize), 0);\n\nexport function validateSize(imageSize: number): void {\n if (imageSize > maxSize || mapOfExpectedSize.has(imageSize)) {\n return;\n }\n warnImageBase(\n `\\`size={${imageSize}}\\` не соответствует дизайн-системе. Пожалуйста, используйте один из следующих вариантов: ${arrayOfSizes.join(\n ' | ',\n )}`,\n 'log',\n );\n}\n\nconst warnImageBaseBadge = warnOnce('ImageBase.Badge');\n\nexport function validateBadgeIcon(imageSize: number, iconProp: IconProp): void {\n if (imageSize < 24 && iconProp) {\n return warnImageBaseBadge('Не используйте бейдж при `size < 24`.', 'log');\n }\n validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getBadgeIconSizeByImageBaseSize,\n warnImageBaseBadge,\n );\n}\n\nconst warnImageBaseOverlay = warnOnce('ImageBase.Overlay');\n\nexport function validateOverlayIcon(imageSize: number, iconProp: IconProp): void {\n validateIconComponentSizeByImageSize(\n imageSize,\n iconProp,\n getOverlayIconSizeByImageBaseSize,\n warnImageBaseOverlay,\n );\n}\n"],"mappings":"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"}
@@ -3,8 +3,8 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
3
3
  var _excluded = ["header", "children", "className"];
4
4
  import * as React from 'react';
5
5
  import { classNames, hasReactNode } from '@vkontakte/vkjs';
6
- import { Subhead } from '../Typography/Subhead/Subhead';
7
6
  import { Headline } from '../Typography/Headline/Headline';
7
+ import { Subhead } from '../Typography/Subhead/Subhead';
8
8
  import "./InfoRow.module.css";
9
9
  /**
10
10
  * @see https://vkcom.github.io/VKUI/#/InfoRow
@@ -1 +1 @@
1
- {"version":3,"file":"InfoRow.js","names":["React","classNames","hasReactNode","Subhead","Headline","InfoRow","header","children","className","restProps"],"sources":["../../../../src/components/InfoRow/InfoRow.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Headline } from '../Typography/Headline/Headline';\nimport styles from './InfoRow.module.css';\n\nexport interface InfoRowProps extends React.HTMLAttributes<HTMLDivElement> {\n header: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/InfoRow\n */\nexport const InfoRow = ({ header, children, className, ...restProps }: InfoRowProps) => (\n <Headline\n {...restProps}\n Component=\"span\"\n className={classNames(styles['InfoRow'], className)}\n weight=\"3\"\n >\n {hasReactNode(header) && (\n <Subhead Component=\"span\" className={styles['InfoRow__header']}>\n {header}\n </Subhead>\n )}\n {children}\n </Headline>\n);\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,QAAQ,QAAQ,iCAAiC;AAAC;AAO3D;AACA;AACA;AACA,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAO;EAAA,IAAMC,MAAM,QAANA,MAAM;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,SAAS,QAATA,SAAS;IAAKC,SAAS;EAAA,oBACjE,oBAAC,QAAQ,eACHA,SAAS;IACb,SAAS,EAAC,MAAM;IAChB,SAAS,EAAER,UAAU,gBAAoBO,SAAS,CAAE;IACpD,MAAM,EAAC;EAAG,IAETN,YAAY,CAACI,MAAM,CAAC,iBACnB,oBAAC,OAAO;IAAC,SAAS,EAAC,MAAM;IAAC,SAAS;EAA4B,GAC5DA,MAAM,CAEV,EACAC,QAAQ,CACA;AAAA,CACZ"}
1
+ {"version":3,"file":"InfoRow.js","names":["React","classNames","hasReactNode","Headline","Subhead","InfoRow","header","children","className","restProps"],"sources":["../../../../src/components/InfoRow/InfoRow.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport styles from './InfoRow.module.css';\n\nexport interface InfoRowProps extends React.HTMLAttributes<HTMLDivElement> {\n header: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/InfoRow\n */\nexport const InfoRow = ({ header, children, className, ...restProps }: InfoRowProps) => (\n <Headline\n {...restProps}\n Component=\"span\"\n className={classNames(styles['InfoRow'], className)}\n weight=\"3\"\n >\n {hasReactNode(header) && (\n <Subhead Component=\"span\" className={styles['InfoRow__header']}>\n {header}\n </Subhead>\n )}\n {children}\n </Headline>\n);\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SAASC,QAAQ,QAAQ,iCAAiC;AAC1D,SAASC,OAAO,QAAQ,+BAA+B;AAAC;AAOxD;AACA;AACA;AACA,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAO;EAAA,IAAMC,MAAM,QAANA,MAAM;IAAEC,QAAQ,QAARA,QAAQ;IAAEC,SAAS,QAATA,SAAS;IAAKC,SAAS;EAAA,oBACjE,oBAAC,QAAQ,eACHA,SAAS;IACb,SAAS,EAAC,MAAM;IAChB,SAAS,EAAER,UAAU,gBAAoBO,SAAS,CAAE;IACpD,MAAM,EAAC;EAAG,IAETN,YAAY,CAACI,MAAM,CAAC,iBACnB,oBAAC,OAAO;IAAC,SAAS,EAAC,MAAM;IAAC,SAAS;EAA4B,GAC5DA,MAAM,CAEV,EACAC,QAAQ,CACA;AAAA,CACZ"}
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
- import { FormFieldProps } from '../FormField/FormField';
3
2
  import { HasAlign, HasRef, HasRootRef } from '../../types';
3
+ import { FormFieldProps } from '../FormField/FormField';
4
4
  export interface InputProps extends React.InputHTMLAttributes<HTMLInputElement>, HasRef<HTMLInputElement>, HasRootRef<HTMLDivElement>, HasAlign, FormFieldProps {
5
5
  }
6
6
  /**
7
7
  * @see https://vkcom.github.io/VKUI/#/Input
8
8
  */
9
- export declare const Input: ({ type, align, getRef, className, getRootRef, style, before, after, status, ...restProps }: InputProps) => JSX.Element;
9
+ export declare const Input: ({ type, align, getRef, className, getRootRef, style, before, after, status, mode, ...restProps }: InputProps) => JSX.Element;
@@ -1,12 +1,16 @@
1
1
  import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
- var _excluded = ["type", "align", "getRef", "className", "getRootRef", "style", "before", "after", "status"];
3
+ import _defineProperty from "@babel/runtime/helpers/defineProperty";
4
+ var _excluded = ["type", "align", "getRef", "className", "getRootRef", "style", "before", "after", "status", "mode"];
4
5
  import * as React from 'react';
5
6
  import { classNames } from '@vkontakte/vkjs';
6
- import { FormField } from '../FormField/FormField';
7
- import { getSizeYClassName } from '../../helpers/getSizeYClassName';
8
7
  import { useAdaptivity } from '../../hooks/useAdaptivity';
8
+ import { SizeType } from '../../lib/adaptivity';
9
+ import { FormField } from '../FormField/FormField';
9
10
  import "./Input.module.css";
11
+ var sizeYClassNames = _defineProperty({
12
+ none: "vkuiInput--sizeY-none"
13
+ }, SizeType.COMPACT, "vkuiInput--sizeY-compact");
10
14
  /**
11
15
  * @see https://vkcom.github.io/VKUI/#/Input
12
16
  */
@@ -21,16 +25,19 @@ export var Input = function Input(_ref) {
21
25
  before = _ref.before,
22
26
  after = _ref.after,
23
27
  status = _ref.status,
28
+ mode = _ref.mode,
24
29
  restProps = _objectWithoutProperties(_ref, _excluded);
25
30
  var _useAdaptivity = useAdaptivity(),
26
- sizeY = _useAdaptivity.sizeY;
31
+ _useAdaptivity$sizeY = _useAdaptivity.sizeY,
32
+ sizeY = _useAdaptivity$sizeY === void 0 ? 'none' : _useAdaptivity$sizeY;
27
33
  return /*#__PURE__*/React.createElement(FormField, {
28
34
  style: style,
29
- className: classNames("vkuiInput", align && styles["Input--align-".concat(align)], getSizeYClassName("vkuiInput", sizeY), before && "vkuiInput--hasBefore", after && "vkuiInput--hasAfter", className),
35
+ className: classNames("vkuiInput", align && styles["Input--align-".concat(align)], sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], before && "vkuiInput--hasBefore", after && "vkuiInput--hasAfter", className),
30
36
  getRootRef: getRootRef,
31
37
  before: before,
32
38
  after: after,
33
39
  disabled: restProps.disabled,
40
+ mode: mode,
34
41
  status: status
35
42
  }, /*#__PURE__*/React.createElement("input", _extends({}, restProps, {
36
43
  type: type,
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","names":["React","classNames","FormField","getSizeYClassName","useAdaptivity","Input","type","align","getRef","className","getRootRef","style","before","after","status","restProps","sizeY","styles","disabled"],"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { getSizeYClassName } from '../../helpers/getSizeYClassName';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport styles from './Input.module.css';\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n FormFieldProps {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Input\n */\nexport const Input = ({\n type = 'text',\n align,\n getRef,\n className,\n getRootRef,\n style,\n before,\n after,\n status,\n ...restProps\n}: InputProps) => {\n const { sizeY } = useAdaptivity();\n\n return (\n <FormField\n style={style}\n className={classNames(\n styles['Input'],\n align && styles[`Input--align-${align}`],\n getSizeYClassName(styles['Input'], sizeY),\n before && styles['Input--hasBefore'],\n after && styles['Input--hasAfter'],\n className,\n )}\n getRootRef={getRootRef}\n before={before}\n after={after}\n disabled={restProps.disabled}\n status={status}\n >\n <input {...restProps} type={type} className={styles['Input__el']} ref={getRef} />\n </FormField>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,SAAS,QAAwB,wBAAwB;AAElE,SAASC,iBAAiB,QAAQ,iCAAiC;AACnE,SAASC,aAAa,QAAQ,2BAA2B;AAAC;AAU1D;AACA;AACA;AACA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAWA;EAAA,qBAVhBC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IACbC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACVC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACHC,SAAS;EAEZ,qBAAkBX,aAAa,EAAE;IAAzBY,KAAK,kBAALA,KAAK;EAEb,oBACE,oBAAC,SAAS;IACR,KAAK,EAAEL,KAAM;IACb,SAAS,EAAEV,UAAU,cAEnBM,KAAK,IAAIU,MAAM,wBAAiBV,KAAK,EAAG,EACxCJ,iBAAiB,cAAkBa,KAAK,CAAC,EACzCJ,MAAM,0BAA8B,EACpCC,KAAK,yBAA6B,EAClCJ,SAAS,CACT;IACF,UAAU,EAAEC,UAAW;IACvB,MAAM,EAAEE,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,QAAQ,EAAEE,SAAS,CAACG,QAAS;IAC7B,MAAM,EAAEJ;EAAO,gBAEf,0CAAWC,SAAS;IAAE,IAAI,EAAET,IAAK;IAAC,SAAS,iBAAsB;IAAC,GAAG,EAAEE;EAAO,GAAG,CACvE;AAEhB,CAAC;AAAC;EAAA;EAAA;EAAA;AAAA"}
1
+ {"version":3,"file":"Input.js","names":["React","classNames","useAdaptivity","SizeType","FormField","sizeYClassNames","none","COMPACT","Input","type","align","getRef","className","getRootRef","style","before","after","status","mode","restProps","sizeY","styles","REGULAR","disabled"],"sources":["../../../../src/components/Input/Input.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { SizeType } from '../../lib/adaptivity';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport styles from './Input.module.css';\n\nconst sizeYClassNames = {\n none: styles['Input--sizeY-none'],\n [SizeType.COMPACT]: styles['Input--sizeY-compact'],\n};\n\nexport interface InputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLDivElement>,\n HasAlign,\n FormFieldProps {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Input\n */\nexport const Input = ({\n type = 'text',\n align,\n getRef,\n className,\n getRootRef,\n style,\n before,\n after,\n status,\n mode,\n ...restProps\n}: InputProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n return (\n <FormField\n style={style}\n className={classNames(\n styles['Input'],\n align && styles[`Input--align-${align}`],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n before && styles['Input--hasBefore'],\n after && styles['Input--hasAfter'],\n className,\n )}\n getRootRef={getRootRef}\n before={before}\n after={after}\n disabled={restProps.disabled}\n mode={mode}\n status={status}\n >\n <input {...restProps} type={type} className={styles['Input__el']} ref={getRef} />\n </FormField>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,aAAa,QAAQ,2BAA2B;AACzD,SAASC,QAAQ,QAAQ,sBAAsB;AAE/C,SAASC,SAAS,QAAwB,wBAAwB;AAAC;AAGnE,IAAMC,eAAe;EACnBC,IAAI;AAA6B,GAChCH,QAAQ,CAACI,OAAO,6BAClB;AASD;AACA;AACA;AACA,OAAO,IAAMC,KAAK,GAAG,SAARA,KAAK,OAYA;EAAA,qBAXhBC,IAAI;IAAJA,IAAI,0BAAG,MAAM;IACbC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,UAAU,QAAVA,UAAU;IACVC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,KAAK,QAALA,KAAK;IACLC,MAAM,QAANA,MAAM;IACNC,IAAI,QAAJA,IAAI;IACDC,SAAS;EAEZ,qBAA2BjB,aAAa,EAAE;IAAA,sCAAlCkB,KAAK;IAALA,KAAK,qCAAG,MAAM;EAEtB,oBACE,oBAAC,SAAS;IACR,KAAK,EAAEN,KAAM;IACb,SAAS,EAAEb,UAAU,cAEnBS,KAAK,IAAIW,MAAM,wBAAiBX,KAAK,EAAG,EACxCU,KAAK,KAAKjB,QAAQ,CAACmB,OAAO,IAAIjB,eAAe,CAACe,KAAK,CAAC,EACpDL,MAAM,0BAA8B,EACpCC,KAAK,yBAA6B,EAClCJ,SAAS,CACT;IACF,UAAU,EAAEC,UAAW;IACvB,MAAM,EAAEE,MAAO;IACf,KAAK,EAAEC,KAAM;IACb,QAAQ,EAAEG,SAAS,CAACI,QAAS;IAC7B,IAAI,EAAEL,IAAK;IACX,MAAM,EAAED;EAAO,gBAEf,0CAAWE,SAAS;IAAE,IAAI,EAAEV,IAAK;IAAC,SAAS,iBAAsB;IAAC,GAAG,EAAEE;EAAO,GAAG,CACvE;AAEhB,CAAC;AAAC;EAAA;EAAA;EAAA;AAAA"}