@vkontakte/vkui 5.7.2 → 5.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1106) hide show
  1. package/README.md +4 -4
  2. package/dist/cjs/components/Accordion/Accordion.d.ts +1 -1
  3. package/dist/cjs/components/Accordion/Accordion.js +6 -11
  4. package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
  5. package/dist/cjs/components/ActionSheet/ActionSheet.d.ts +6 -1
  6. package/dist/cjs/components/ActionSheet/ActionSheet.js +12 -9
  7. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  8. package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +6 -1
  9. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  10. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +2 -1
  11. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  12. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
  13. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -4
  14. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  15. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +22 -8
  16. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  17. package/dist/cjs/components/AppRoot/AppRoot.d.ts +19 -2
  18. package/dist/cjs/components/AppRoot/AppRoot.js +58 -20
  19. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  20. package/dist/cjs/components/AppRoot/AppRootContext.d.ts +1 -0
  21. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  22. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +1 -1
  23. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  24. package/dist/cjs/components/AspectRatio/AspectRatio.d.ts +3 -3
  25. package/dist/cjs/components/AspectRatio/AspectRatio.js +6 -8
  26. package/dist/cjs/components/AspectRatio/AspectRatio.js.map +1 -1
  27. package/dist/cjs/components/Badge/Badge.d.ts +3 -2
  28. package/dist/cjs/components/Badge/Badge.js +10 -8
  29. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  30. package/dist/cjs/components/Banner/Banner.d.ts +3 -3
  31. package/dist/cjs/components/Banner/Banner.js +10 -9
  32. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  33. package/dist/cjs/components/BaseGallery/BaseGallery.d.ts +1 -1
  34. package/dist/cjs/components/BaseGallery/BaseGallery.js +10 -9
  35. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  36. package/dist/cjs/components/BaseGallery/types.d.ts +2 -2
  37. package/dist/cjs/components/BaseGallery/types.js.map +1 -1
  38. package/dist/cjs/components/Button/Button.js +26 -22
  39. package/dist/cjs/components/Button/Button.js.map +1 -1
  40. package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +3 -3
  41. package/dist/cjs/components/ButtonGroup/ButtonGroup.js +21 -21
  42. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  43. package/dist/cjs/components/Calendar/Calendar.d.ts +3 -3
  44. package/dist/cjs/components/Calendar/Calendar.js +4 -6
  45. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  46. package/dist/cjs/components/CalendarDays/CalendarDays.d.ts +3 -2
  47. package/dist/cjs/components/CalendarDays/CalendarDays.js +11 -8
  48. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  49. package/dist/cjs/components/CalendarHeader/CalendarHeader.d.ts +3 -2
  50. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +24 -7
  51. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  52. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +3 -3
  53. package/dist/cjs/components/CalendarRange/CalendarRange.js +4 -6
  54. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  55. package/dist/cjs/components/Card/Card.d.ts +4 -4
  56. package/dist/cjs/components/Card/Card.js +7 -9
  57. package/dist/cjs/components/Card/Card.js.map +1 -1
  58. package/dist/cjs/components/CardGrid/CardGrid.d.ts +3 -2
  59. package/dist/cjs/components/CardGrid/CardGrid.js +11 -11
  60. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  61. package/dist/cjs/components/CardScroll/CardScroll.d.ts +3 -2
  62. package/dist/cjs/components/CardScroll/CardScroll.js +10 -9
  63. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  64. package/dist/cjs/components/Cell/CellDragger/CellDragger.d.ts +2 -1
  65. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  66. package/dist/cjs/components/Checkbox/Checkbox.js +3 -4
  67. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  68. package/dist/cjs/components/Chip/Chip.d.ts +3 -2
  69. package/dist/cjs/components/Chip/Chip.js +6 -7
  70. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  71. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +4 -2
  72. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  73. package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +7 -0
  74. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +24 -6
  75. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  76. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.d.ts +47 -3
  77. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +6 -1
  78. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  79. package/dist/cjs/components/Counter/Counter.d.ts +2 -1
  80. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  81. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +1 -1
  82. package/dist/cjs/components/CustomSelect/CustomSelect.js +1 -1
  83. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  84. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  85. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  86. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
  87. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  88. package/dist/cjs/components/DatePicker/DatePicker.d.ts +2 -1
  89. package/dist/cjs/components/DatePicker/DatePicker.js +5 -5
  90. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  91. package/dist/cjs/components/Div/Div.d.ts +3 -4
  92. package/dist/cjs/components/Div/Div.js +5 -13
  93. package/dist/cjs/components/Div/Div.js.map +1 -1
  94. package/dist/cjs/components/DropdownIcon/DropdownIcon.d.ts +2 -1
  95. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  96. package/dist/cjs/components/Epic/Epic.d.ts +3 -2
  97. package/dist/cjs/components/Epic/Epic.js +7 -7
  98. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  99. package/dist/cjs/components/FixedLayout/FixedLayout.d.ts +2 -2
  100. package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -4
  101. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  102. package/dist/cjs/components/FocusTrap/FocusTrap.d.ts +2 -2
  103. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  104. package/dist/cjs/components/FocusVisible/FocusVisible.d.ts +2 -1
  105. package/dist/cjs/components/FocusVisible/FocusVisible.js +8 -6
  106. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  107. package/dist/cjs/components/FormField/FormField.js +5 -4
  108. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  109. package/dist/cjs/components/FormItem/FormItem.d.ts +6 -1
  110. package/dist/cjs/components/FormItem/FormItem.js +11 -10
  111. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  112. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
  113. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +6 -6
  114. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  115. package/dist/cjs/components/FormStatus/FormStatus.d.ts +2 -2
  116. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  117. package/dist/cjs/components/Gradient/Gradient.d.ts +3 -2
  118. package/dist/cjs/components/Gradient/Gradient.js +15 -14
  119. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  120. package/dist/cjs/components/Group/Group.d.ts +3 -3
  121. package/dist/cjs/components/Group/Group.js +35 -21
  122. package/dist/cjs/components/Group/Group.js.map +1 -1
  123. package/dist/cjs/components/Header/Header.d.ts +3 -3
  124. package/dist/cjs/components/Header/Header.js +12 -11
  125. package/dist/cjs/components/Header/Header.js.map +1 -1
  126. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +6 -5
  127. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  128. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
  129. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +4 -4
  130. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  131. package/dist/cjs/components/ImageBase/ImageBase.d.ts +2 -2
  132. package/dist/cjs/components/ImageBase/ImageBase.js +5 -7
  133. package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
  134. package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
  135. package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +8 -9
  136. package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  137. package/dist/cjs/components/InfoRow/InfoRow.d.ts +2 -1
  138. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  139. package/dist/cjs/components/InputLike/InputLike.d.ts +3 -3
  140. package/dist/cjs/components/InputLike/InputLike.js +6 -8
  141. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  142. package/dist/cjs/components/List/List.d.ts +3 -2
  143. package/dist/cjs/components/List/List.js +5 -5
  144. package/dist/cjs/components/List/List.js.map +1 -1
  145. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
  146. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +14 -11
  147. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  148. package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
  149. package/dist/cjs/components/ModalCard/ModalCard.js +5 -7
  150. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  151. package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +3 -3
  152. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +4 -6
  153. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  154. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
  155. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  156. package/dist/cjs/components/ModalPage/ModalPage.d.ts +3 -2
  157. package/dist/cjs/components/ModalPage/ModalPage.js +9 -6
  158. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  159. package/dist/cjs/components/ModalRoot/ModalRoot.js +6 -4
  160. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  161. package/dist/cjs/components/ModalRoot/ModalRootContext.js +3 -0
  162. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  163. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +2 -2
  164. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  165. package/dist/cjs/components/ModalRoot/types.d.ts +1 -0
  166. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  167. package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
  168. package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +43 -0
  169. package/dist/cjs/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
  170. package/dist/cjs/components/Pagination/Pagination.d.ts +3 -3
  171. package/dist/cjs/components/Pagination/Pagination.js +17 -33
  172. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  173. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
  174. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.js +48 -0
  175. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
  176. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
  177. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.js +32 -0
  178. package/dist/cjs/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
  179. package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
  180. package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.js +20 -0
  181. package/dist/cjs/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
  182. package/dist/cjs/components/Pagination/utils.d.ts +1 -0
  183. package/dist/cjs/components/Pagination/utils.js +15 -0
  184. package/dist/cjs/components/Pagination/utils.js.map +1 -0
  185. package/dist/cjs/components/Panel/Panel.d.ts +3 -3
  186. package/dist/cjs/components/Panel/Panel.js +7 -7
  187. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  188. package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +3 -3
  189. package/dist/cjs/components/PanelHeader/PanelHeader.js +15 -10
  190. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  191. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
  192. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -6
  193. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  194. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
  195. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  196. package/dist/cjs/components/Placeholder/Placeholder.d.ts +24 -11
  197. package/dist/cjs/components/Placeholder/Placeholder.js +49 -21
  198. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  199. package/dist/cjs/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  200. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +12 -17
  201. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  202. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
  203. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +16 -16
  204. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  205. package/dist/cjs/components/Popper/Popper.d.ts +7 -3
  206. package/dist/cjs/components/Popper/Popper.js +19 -10
  207. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  208. package/dist/cjs/components/Progress/Progress.d.ts +3 -3
  209. package/dist/cjs/components/Progress/Progress.js +9 -10
  210. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  211. package/dist/cjs/components/PromoBanner/PromoBanner.d.ts +3 -2
  212. package/dist/cjs/components/PromoBanner/PromoBanner.js +5 -6
  213. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  214. package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +25 -0
  215. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +5 -2
  216. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  217. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
  218. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +14 -6
  219. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  220. package/dist/cjs/components/RadioGroup/RadioGroup.d.ts +3 -2
  221. package/dist/cjs/components/RadioGroup/RadioGroup.js +6 -7
  222. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  223. package/dist/cjs/components/Removable/Removable.d.ts +3 -3
  224. package/dist/cjs/components/Removable/Removable.js +4 -8
  225. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  226. package/dist/cjs/components/RichCell/RichCell.d.ts +1 -1
  227. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
  228. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js +5 -11
  229. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  230. package/dist/cjs/components/RichTooltip/RichTooltip.js +7 -6
  231. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  232. package/dist/cjs/components/Root/Root.d.ts +3 -2
  233. package/dist/cjs/components/Root/Root.js +13 -10
  234. package/dist/cjs/components/Root/Root.js.map +1 -1
  235. package/dist/cjs/components/RootComponent/RootComponent.d.ts +9 -0
  236. package/dist/cjs/components/RootComponent/RootComponent.js +29 -0
  237. package/dist/cjs/components/RootComponent/RootComponent.js.map +1 -0
  238. package/dist/cjs/components/ScrollArrow/ScrollArrow.d.ts +1 -1
  239. package/dist/cjs/components/ScrollArrow/ScrollArrow.js +13 -12
  240. package/dist/cjs/components/ScrollArrow/ScrollArrow.js.map +1 -1
  241. package/dist/cjs/components/Search/Search.d.ts +3 -3
  242. package/dist/cjs/components/Search/Search.js +4 -2
  243. package/dist/cjs/components/Search/Search.js.map +1 -1
  244. package/dist/cjs/components/SegmentedControl/SegmentedControl.d.ts +3 -3
  245. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +4 -6
  246. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  247. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
  248. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +4 -2
  249. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  250. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  251. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  252. package/dist/cjs/components/SelectTypography/SelectTypography.d.ts +2 -2
  253. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  254. package/dist/cjs/components/Separator/Separator.d.ts +3 -2
  255. package/dist/cjs/components/Separator/Separator.js +5 -5
  256. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  257. package/dist/cjs/components/Slider/Slider.d.ts +4 -3
  258. package/dist/cjs/components/Slider/Slider.js +5 -2
  259. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  260. package/dist/cjs/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
  261. package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js +56 -5
  262. package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  263. package/dist/cjs/components/Snackbar/Snackbar.d.ts +3 -2
  264. package/dist/cjs/components/Snackbar/Snackbar.js +8 -7
  265. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  266. package/dist/cjs/components/Spacing/Spacing.d.ts +3 -3
  267. package/dist/cjs/components/Spacing/Spacing.js +5 -6
  268. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  269. package/dist/cjs/components/Spinner/Spinner.d.ts +3 -2
  270. package/dist/cjs/components/Spinner/Spinner.js +6 -6
  271. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  272. package/dist/cjs/components/SplitCol/SplitCol.d.ts +2 -1
  273. package/dist/cjs/components/SplitCol/SplitCol.js +8 -6
  274. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  275. package/dist/cjs/components/SplitLayout/SplitLayout.d.ts +2 -2
  276. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  277. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
  278. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +7 -9
  279. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  280. package/dist/cjs/components/Tabbar/Tabbar.d.ts +3 -2
  281. package/dist/cjs/components/Tabbar/Tabbar.js +6 -7
  282. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  283. package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -1
  284. package/dist/cjs/components/TabbarItem/TabbarItem.js +7 -7
  285. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  286. package/dist/cjs/components/Tabs/Tabs.d.ts +3 -3
  287. package/dist/cjs/components/Tabs/Tabs.js +4 -6
  288. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  289. package/dist/cjs/components/TabsItem/TabsItem.d.ts +2 -1
  290. package/dist/cjs/components/TabsItem/TabsItem.js +6 -5
  291. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  292. package/dist/cjs/components/Tappable/Tappable.d.ts +6 -1
  293. package/dist/cjs/components/Tappable/Tappable.js +12 -9
  294. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  295. package/dist/cjs/components/TextTooltip/TextTooltip.js +7 -6
  296. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  297. package/dist/cjs/components/Tooltip/Tooltip.d.ts +1 -1
  298. package/dist/cjs/components/Tooltip/Tooltip.js +5 -3
  299. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  300. package/dist/cjs/components/TooltipBase/TooltipBase.d.ts +8 -1
  301. package/dist/cjs/components/TooltipBase/TooltipBase.js +21 -8
  302. package/dist/cjs/components/TooltipBase/TooltipBase.js.map +1 -1
  303. package/dist/cjs/components/Typography/Caption/Caption.js +6 -5
  304. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  305. package/dist/cjs/components/Typography/Headline/Headline.js +5 -4
  306. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  307. package/dist/cjs/components/Typography/Title/Title.js +6 -5
  308. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  309. package/dist/cjs/components/Typography/Typography.d.ts +1 -1
  310. package/dist/cjs/components/Typography/Typography.js +12 -13
  311. package/dist/cjs/components/Typography/Typography.js.map +1 -1
  312. package/dist/cjs/components/UsersStack/UsersStack.d.ts +3 -2
  313. package/dist/cjs/components/UsersStack/UsersStack.js +14 -12
  314. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  315. package/dist/cjs/components/View/View.d.ts +2 -1
  316. package/dist/cjs/components/View/View.js +7 -3
  317. package/dist/cjs/components/View/View.js.map +1 -1
  318. package/dist/cjs/components/View/ViewInfinite.d.ts +10 -3
  319. package/dist/cjs/components/View/ViewInfinite.js +17 -6
  320. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  321. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  322. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js +8 -9
  323. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  324. package/dist/cjs/helpers/appearance.d.ts +4 -0
  325. package/dist/cjs/helpers/appearance.js.map +1 -1
  326. package/dist/cjs/hooks/useAppearance.d.ts +1 -1
  327. package/dist/cjs/hooks/useAutoDetectAppearance.d.ts +4 -0
  328. package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
  329. package/dist/cjs/hooks/useBridgeAdaptivity.d.ts +5 -1
  330. package/dist/cjs/hooks/useBridgeAdaptivity.js +25 -20
  331. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -1
  332. package/dist/cjs/hooks/useInsets.d.ts +5 -1
  333. package/dist/cjs/hooks/useInsets.js +11 -11
  334. package/dist/cjs/hooks/useInsets.js.map +1 -1
  335. package/dist/cjs/index.d.ts +6 -3
  336. package/dist/cjs/index.js +14 -0
  337. package/dist/cjs/index.js.map +1 -1
  338. package/dist/cjs/lib/adaptivity/functions.d.ts +8 -0
  339. package/dist/cjs/lib/adaptivity/functions.js +30 -0
  340. package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
  341. package/dist/cjs/lib/appearance/index.d.ts +1 -0
  342. package/dist/cjs/lib/appearance/index.js +6 -0
  343. package/dist/cjs/lib/appearance/index.js.map +1 -0
  344. package/dist/cjs/lib/appearance/types.d.ts +1 -0
  345. package/dist/cjs/lib/appearance/types.js +6 -0
  346. package/dist/cjs/lib/appearance/types.js.map +1 -0
  347. package/dist/cjs/lib/floating/index.d.ts +1 -1
  348. package/dist/cjs/lib/floating/index.js +3 -0
  349. package/dist/cjs/lib/floating/index.js.map +1 -1
  350. package/dist/cjs/lib/platform.js +11 -7
  351. package/dist/cjs/lib/platform.js.map +1 -1
  352. package/dist/cjs/lib/select.d.ts +1 -1
  353. package/dist/cjs/lib/taptic.d.ts +4 -0
  354. package/dist/cjs/lib/taptic.js.map +1 -1
  355. package/dist/cjs/lib/utils.d.ts +2 -0
  356. package/dist/cjs/lib/utils.js +22 -0
  357. package/dist/cjs/lib/utils.js.map +1 -1
  358. package/dist/cjs/types.d.ts +1 -0
  359. package/dist/cjs/types.js.map +1 -1
  360. package/dist/components/Accordion/Accordion.d.ts +1 -1
  361. package/dist/components/Accordion/Accordion.js +6 -11
  362. package/dist/components/Accordion/Accordion.js.map +1 -1
  363. package/dist/components/ActionSheet/ActionSheet.d.ts +6 -1
  364. package/dist/components/ActionSheet/ActionSheet.js +12 -9
  365. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  366. package/dist/components/ActionSheet/ActionSheetContext.d.ts +6 -1
  367. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  368. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +2 -1
  369. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  370. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
  371. package/dist/components/ActionSheetItem/ActionSheetItem.js +15 -4
  372. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  373. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +22 -8
  374. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  375. package/dist/components/AppRoot/AppRoot.d.ts +19 -2
  376. package/dist/components/AppRoot/AppRoot.js +58 -20
  377. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  378. package/dist/components/AppRoot/AppRootContext.d.ts +1 -0
  379. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  380. package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +1 -1
  381. package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  382. package/dist/components/AspectRatio/AspectRatio.d.ts +3 -3
  383. package/dist/components/AspectRatio/AspectRatio.js +6 -8
  384. package/dist/components/AspectRatio/AspectRatio.js.map +1 -1
  385. package/dist/components/Badge/Badge.d.ts +3 -2
  386. package/dist/components/Badge/Badge.js +10 -8
  387. package/dist/components/Badge/Badge.js.map +1 -1
  388. package/dist/components/Banner/Banner.d.ts +3 -3
  389. package/dist/components/Banner/Banner.js +10 -9
  390. package/dist/components/Banner/Banner.js.map +1 -1
  391. package/dist/components/BaseGallery/BaseGallery.d.ts +1 -1
  392. package/dist/components/BaseGallery/BaseGallery.js +10 -9
  393. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  394. package/dist/components/BaseGallery/types.d.ts +2 -2
  395. package/dist/components/BaseGallery/types.js.map +1 -1
  396. package/dist/components/Button/Button.js +26 -22
  397. package/dist/components/Button/Button.js.map +1 -1
  398. package/dist/components/ButtonGroup/ButtonGroup.d.ts +3 -3
  399. package/dist/components/ButtonGroup/ButtonGroup.js +21 -21
  400. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  401. package/dist/components/Calendar/Calendar.d.ts +3 -3
  402. package/dist/components/Calendar/Calendar.js +4 -6
  403. package/dist/components/Calendar/Calendar.js.map +1 -1
  404. package/dist/components/CalendarDays/CalendarDays.d.ts +3 -2
  405. package/dist/components/CalendarDays/CalendarDays.js +11 -8
  406. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  407. package/dist/components/CalendarHeader/CalendarHeader.d.ts +3 -2
  408. package/dist/components/CalendarHeader/CalendarHeader.js +24 -7
  409. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  410. package/dist/components/CalendarRange/CalendarRange.d.ts +3 -3
  411. package/dist/components/CalendarRange/CalendarRange.js +4 -6
  412. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  413. package/dist/components/Card/Card.d.ts +4 -4
  414. package/dist/components/Card/Card.js +7 -9
  415. package/dist/components/Card/Card.js.map +1 -1
  416. package/dist/components/CardGrid/CardGrid.d.ts +3 -2
  417. package/dist/components/CardGrid/CardGrid.js +11 -11
  418. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  419. package/dist/components/CardScroll/CardScroll.d.ts +3 -2
  420. package/dist/components/CardScroll/CardScroll.js +10 -9
  421. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  422. package/dist/components/Cell/CellDragger/CellDragger.d.ts +2 -1
  423. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  424. package/dist/components/Checkbox/Checkbox.js +3 -4
  425. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  426. package/dist/components/Chip/Chip.d.ts +3 -2
  427. package/dist/components/Chip/Chip.js +6 -7
  428. package/dist/components/Chip/Chip.js.map +1 -1
  429. package/dist/components/ChipsInputBase/ChipsInputBase.js +4 -2
  430. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  431. package/dist/components/ConfigProvider/ConfigProvider.d.ts +7 -0
  432. package/dist/components/ConfigProvider/ConfigProvider.js +25 -7
  433. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  434. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +47 -3
  435. package/dist/components/ConfigProvider/ConfigProviderContext.js +6 -1
  436. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  437. package/dist/components/Counter/Counter.d.ts +2 -1
  438. package/dist/components/Counter/Counter.js.map +1 -1
  439. package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
  440. package/dist/components/CustomSelect/CustomSelect.js +1 -1
  441. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  442. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  443. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  444. package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
  445. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  446. package/dist/components/DatePicker/DatePicker.d.ts +2 -1
  447. package/dist/components/DatePicker/DatePicker.js +6 -6
  448. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  449. package/dist/components/Div/Div.d.ts +3 -4
  450. package/dist/components/Div/Div.js +5 -13
  451. package/dist/components/Div/Div.js.map +1 -1
  452. package/dist/components/DropdownIcon/DropdownIcon.d.ts +2 -1
  453. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  454. package/dist/components/Epic/Epic.d.ts +3 -2
  455. package/dist/components/Epic/Epic.js +7 -7
  456. package/dist/components/Epic/Epic.js.map +1 -1
  457. package/dist/components/FixedLayout/FixedLayout.d.ts +2 -2
  458. package/dist/components/FixedLayout/FixedLayout.js +5 -4
  459. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  460. package/dist/components/FocusTrap/FocusTrap.d.ts +2 -2
  461. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  462. package/dist/components/FocusVisible/FocusVisible.d.ts +2 -1
  463. package/dist/components/FocusVisible/FocusVisible.js +8 -6
  464. package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
  465. package/dist/components/FormField/FormField.js +5 -4
  466. package/dist/components/FormField/FormField.js.map +1 -1
  467. package/dist/components/FormItem/FormItem.d.ts +6 -1
  468. package/dist/components/FormItem/FormItem.js +11 -10
  469. package/dist/components/FormItem/FormItem.js.map +1 -1
  470. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
  471. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +6 -6
  472. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  473. package/dist/components/FormStatus/FormStatus.d.ts +2 -2
  474. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  475. package/dist/components/Gradient/Gradient.d.ts +3 -2
  476. package/dist/components/Gradient/Gradient.js +15 -14
  477. package/dist/components/Gradient/Gradient.js.map +1 -1
  478. package/dist/components/Group/Group.d.ts +3 -3
  479. package/dist/components/Group/Group.js +35 -21
  480. package/dist/components/Group/Group.js.map +1 -1
  481. package/dist/components/Header/Header.d.ts +3 -3
  482. package/dist/components/Header/Header.js +12 -11
  483. package/dist/components/Header/Header.js.map +1 -1
  484. package/dist/components/HorizontalCell/HorizontalCell.js +6 -5
  485. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  486. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
  487. package/dist/components/HorizontalScroll/HorizontalScroll.js +4 -4
  488. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  489. package/dist/components/ImageBase/ImageBase.d.ts +2 -2
  490. package/dist/components/ImageBase/ImageBase.js +5 -7
  491. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  492. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
  493. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +8 -9
  494. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  495. package/dist/components/InfoRow/InfoRow.d.ts +2 -1
  496. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  497. package/dist/components/InputLike/InputLike.d.ts +3 -3
  498. package/dist/components/InputLike/InputLike.js +6 -8
  499. package/dist/components/InputLike/InputLike.js.map +1 -1
  500. package/dist/components/List/List.d.ts +3 -2
  501. package/dist/components/List/List.js +5 -5
  502. package/dist/components/List/List.js.map +1 -1
  503. package/dist/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
  504. package/dist/components/MiniInfoCell/MiniInfoCell.js +14 -11
  505. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  506. package/dist/components/ModalCard/ModalCard.d.ts +1 -1
  507. package/dist/components/ModalCard/ModalCard.js +5 -7
  508. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  509. package/dist/components/ModalCardBase/ModalCardBase.d.ts +3 -3
  510. package/dist/components/ModalCardBase/ModalCardBase.js +4 -6
  511. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  512. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
  513. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  514. package/dist/components/ModalPage/ModalPage.d.ts +3 -2
  515. package/dist/components/ModalPage/ModalPage.js +9 -6
  516. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  517. package/dist/components/ModalRoot/ModalRoot.js +7 -5
  518. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  519. package/dist/components/ModalRoot/ModalRootContext.js +3 -0
  520. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  521. package/dist/components/ModalRoot/ModalRootDesktop.js +3 -3
  522. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  523. package/dist/components/ModalRoot/types.d.ts +1 -0
  524. package/dist/components/ModalRoot/types.js.map +1 -1
  525. package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
  526. package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +24 -0
  527. package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
  528. package/dist/components/Pagination/Pagination.d.ts +3 -3
  529. package/dist/components/Pagination/Pagination.js +17 -33
  530. package/dist/components/Pagination/Pagination.js.map +1 -1
  531. package/dist/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
  532. package/dist/components/Pagination/PaginationPage/PaginationPageButton.js +37 -0
  533. package/dist/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
  534. package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
  535. package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.js +21 -0
  536. package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
  537. package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
  538. package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.js +10 -0
  539. package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
  540. package/dist/components/Pagination/utils.d.ts +1 -0
  541. package/dist/components/Pagination/utils.js +5 -0
  542. package/dist/components/Pagination/utils.js.map +1 -0
  543. package/dist/components/Panel/Panel.d.ts +3 -3
  544. package/dist/components/Panel/Panel.js +7 -7
  545. package/dist/components/Panel/Panel.js.map +1 -1
  546. package/dist/components/PanelHeader/PanelHeader.d.ts +3 -3
  547. package/dist/components/PanelHeader/PanelHeader.js +16 -11
  548. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  549. package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
  550. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -6
  551. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  552. package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
  553. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  554. package/dist/components/Placeholder/Placeholder.d.ts +24 -11
  555. package/dist/components/Placeholder/Placeholder.js +49 -21
  556. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  557. package/dist/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  558. package/dist/components/PopoutRoot/PopoutRoot.js +12 -17
  559. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  560. package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
  561. package/dist/components/PopoutWrapper/PopoutWrapper.js +16 -16
  562. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  563. package/dist/components/Popper/Popper.d.ts +7 -3
  564. package/dist/components/Popper/Popper.js +20 -11
  565. package/dist/components/Popper/Popper.js.map +1 -1
  566. package/dist/components/Progress/Progress.d.ts +3 -3
  567. package/dist/components/Progress/Progress.js +9 -10
  568. package/dist/components/Progress/Progress.js.map +1 -1
  569. package/dist/components/PromoBanner/PromoBanner.d.ts +3 -2
  570. package/dist/components/PromoBanner/PromoBanner.js +5 -6
  571. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  572. package/dist/components/PullToRefresh/PullToRefresh.d.ts +25 -0
  573. package/dist/components/PullToRefresh/PullToRefresh.js +5 -2
  574. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  575. package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
  576. package/dist/components/PullToRefresh/PullToRefreshSpinner.js +14 -6
  577. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  578. package/dist/components/RadioGroup/RadioGroup.d.ts +3 -2
  579. package/dist/components/RadioGroup/RadioGroup.js +6 -7
  580. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  581. package/dist/components/Removable/Removable.d.ts +3 -3
  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 +1 -1
  585. package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
  586. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js +5 -11
  587. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  588. package/dist/components/RichTooltip/RichTooltip.js +7 -6
  589. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  590. package/dist/components/Root/Root.d.ts +3 -2
  591. package/dist/components/Root/Root.js +13 -10
  592. package/dist/components/Root/Root.js.map +1 -1
  593. package/dist/components/RootComponent/RootComponent.d.ts +9 -0
  594. package/dist/components/RootComponent/RootComponent.js +20 -0
  595. package/dist/components/RootComponent/RootComponent.js.map +1 -0
  596. package/dist/components/ScrollArrow/ScrollArrow.d.ts +1 -1
  597. package/dist/components/ScrollArrow/ScrollArrow.js +13 -12
  598. package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
  599. package/dist/components/Search/Search.d.ts +3 -3
  600. package/dist/components/Search/Search.js +4 -2
  601. package/dist/components/Search/Search.js.map +1 -1
  602. package/dist/components/SegmentedControl/SegmentedControl.d.ts +3 -3
  603. package/dist/components/SegmentedControl/SegmentedControl.js +4 -6
  604. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  605. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
  606. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +4 -2
  607. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  608. package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  609. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  610. package/dist/components/SelectTypography/SelectTypography.d.ts +2 -2
  611. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  612. package/dist/components/Separator/Separator.d.ts +3 -2
  613. package/dist/components/Separator/Separator.js +5 -5
  614. package/dist/components/Separator/Separator.js.map +1 -1
  615. package/dist/components/Slider/Slider.d.ts +4 -3
  616. package/dist/components/Slider/Slider.js +5 -2
  617. package/dist/components/Slider/Slider.js.map +1 -1
  618. package/dist/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
  619. package/dist/components/Slider/SliderThumb/SliderThumb.js +56 -5
  620. package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  621. package/dist/components/Snackbar/Snackbar.d.ts +3 -2
  622. package/dist/components/Snackbar/Snackbar.js +8 -7
  623. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  624. package/dist/components/Spacing/Spacing.d.ts +3 -3
  625. package/dist/components/Spacing/Spacing.js +5 -6
  626. package/dist/components/Spacing/Spacing.js.map +1 -1
  627. package/dist/components/Spinner/Spinner.d.ts +3 -2
  628. package/dist/components/Spinner/Spinner.js +6 -6
  629. package/dist/components/Spinner/Spinner.js.map +1 -1
  630. package/dist/components/SplitCol/SplitCol.d.ts +2 -1
  631. package/dist/components/SplitCol/SplitCol.js +8 -6
  632. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  633. package/dist/components/SplitLayout/SplitLayout.d.ts +2 -2
  634. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  635. package/dist/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
  636. package/dist/components/SubnavigationBar/SubnavigationBar.js +7 -9
  637. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  638. package/dist/components/Tabbar/Tabbar.d.ts +3 -2
  639. package/dist/components/Tabbar/Tabbar.js +6 -7
  640. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  641. package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
  642. package/dist/components/TabbarItem/TabbarItem.js +7 -7
  643. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  644. package/dist/components/Tabs/Tabs.d.ts +3 -3
  645. package/dist/components/Tabs/Tabs.js +4 -6
  646. package/dist/components/Tabs/Tabs.js.map +1 -1
  647. package/dist/components/TabsItem/TabsItem.d.ts +2 -1
  648. package/dist/components/TabsItem/TabsItem.js +6 -5
  649. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  650. package/dist/components/Tappable/Tappable.d.ts +6 -1
  651. package/dist/components/Tappable/Tappable.js +12 -9
  652. package/dist/components/Tappable/Tappable.js.map +1 -1
  653. package/dist/components/TextTooltip/TextTooltip.js +7 -6
  654. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  655. package/dist/components/Tooltip/Tooltip.d.ts +1 -1
  656. package/dist/components/Tooltip/Tooltip.js +6 -4
  657. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  658. package/dist/components/TooltipBase/TooltipBase.d.ts +8 -1
  659. package/dist/components/TooltipBase/TooltipBase.js +10 -5
  660. package/dist/components/TooltipBase/TooltipBase.js.map +1 -1
  661. package/dist/components/Typography/Caption/Caption.js +6 -5
  662. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  663. package/dist/components/Typography/Headline/Headline.js +5 -4
  664. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  665. package/dist/components/Typography/Title/Title.js +6 -5
  666. package/dist/components/Typography/Title/Title.js.map +1 -1
  667. package/dist/components/Typography/Typography.d.ts +1 -1
  668. package/dist/components/Typography/Typography.js +12 -13
  669. package/dist/components/Typography/Typography.js.map +1 -1
  670. package/dist/components/UsersStack/UsersStack.d.ts +3 -2
  671. package/dist/components/UsersStack/UsersStack.js +14 -12
  672. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  673. package/dist/components/View/View.d.ts +2 -1
  674. package/dist/components/View/View.js +7 -3
  675. package/dist/components/View/View.js.map +1 -1
  676. package/dist/components/View/ViewInfinite.d.ts +10 -3
  677. package/dist/components/View/ViewInfinite.js +7 -4
  678. package/dist/components/View/ViewInfinite.js.map +1 -1
  679. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  680. package/dist/components/VisuallyHidden/VisuallyHidden.js +8 -9
  681. package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  682. package/dist/components.css +19 -18
  683. package/dist/components.css.map +1 -1
  684. package/dist/components.js.tmp +6990 -4428
  685. package/dist/cssm/components/Accordion/Accordion.d.ts +1 -1
  686. package/dist/cssm/components/Accordion/Accordion.js +5 -5
  687. package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
  688. package/dist/cssm/components/ActionSheet/ActionSheet.d.ts +6 -1
  689. package/dist/cssm/components/ActionSheet/ActionSheet.js +11 -9
  690. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  691. package/dist/cssm/components/ActionSheet/ActionSheetContext.d.ts +6 -1
  692. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  693. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +1 -0
  694. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  695. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +6 -1
  696. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +13 -3
  697. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  698. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +22 -8
  699. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  700. package/dist/cssm/components/AppRoot/AppRoot.d.ts +19 -2
  701. package/dist/cssm/components/AppRoot/AppRoot.js +49 -15
  702. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  703. package/dist/cssm/components/AppRoot/AppRootContext.d.ts +1 -0
  704. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  705. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.d.ts +1 -1
  706. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  707. package/dist/cssm/components/AspectRatio/AspectRatio.d.ts +3 -3
  708. package/dist/cssm/components/AspectRatio/AspectRatio.js +5 -5
  709. package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
  710. package/dist/cssm/components/Badge/Badge.d.ts +3 -2
  711. package/dist/cssm/components/Badge/Badge.js +8 -5
  712. package/dist/cssm/components/Badge/Badge.js.map +1 -1
  713. package/dist/cssm/components/Banner/Banner.d.ts +3 -3
  714. package/dist/cssm/components/Banner/Banner.js +9 -7
  715. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  716. package/dist/cssm/components/BaseGallery/BaseGallery.d.ts +1 -1
  717. package/dist/cssm/components/BaseGallery/BaseGallery.js +10 -8
  718. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  719. package/dist/cssm/components/BaseGallery/types.d.ts +2 -2
  720. package/dist/cssm/components/BaseGallery/types.js.map +1 -1
  721. package/dist/cssm/components/Button/Button.js +26 -22
  722. package/dist/cssm/components/Button/Button.js.map +1 -1
  723. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +3 -3
  724. package/dist/cssm/components/ButtonGroup/ButtonGroup.js +19 -16
  725. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  726. package/dist/cssm/components/Calendar/Calendar.d.ts +3 -3
  727. package/dist/cssm/components/Calendar/Calendar.js +4 -4
  728. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  729. package/dist/cssm/components/CalendarDays/CalendarDays.d.ts +3 -2
  730. package/dist/cssm/components/CalendarDays/CalendarDays.js +9 -6
  731. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  732. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +3 -2
  733. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +6 -4
  734. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  735. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +3 -3
  736. package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -5
  737. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  738. package/dist/cssm/components/Card/Card.d.ts +4 -4
  739. package/dist/cssm/components/Card/Card.js +6 -5
  740. package/dist/cssm/components/Card/Card.js.map +1 -1
  741. package/dist/cssm/components/Card/Card.module.css +1 -1
  742. package/dist/cssm/components/CardGrid/CardGrid.d.ts +3 -2
  743. package/dist/cssm/components/CardGrid/CardGrid.js +10 -8
  744. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  745. package/dist/cssm/components/CardGrid/CardGrid.module.css +0 -7
  746. package/dist/cssm/components/CardScroll/CardScroll.d.ts +3 -2
  747. package/dist/cssm/components/CardScroll/CardScroll.js +9 -7
  748. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  749. package/dist/cssm/components/Cell/CellDragger/CellDragger.d.ts +2 -1
  750. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  751. package/dist/cssm/components/Checkbox/Checkbox.js +2 -3
  752. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  753. package/dist/cssm/components/Chip/Chip.d.ts +3 -2
  754. package/dist/cssm/components/Chip/Chip.js +5 -5
  755. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  756. package/dist/cssm/components/Chip/Chip.module.css +24 -0
  757. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +4 -2
  758. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  759. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +1 -4
  760. package/dist/cssm/components/ConfigProvider/ConfigProvider.d.ts +7 -0
  761. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +32 -7
  762. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  763. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.d.ts +47 -3
  764. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +6 -1
  765. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  766. package/dist/cssm/components/Counter/Counter.d.ts +2 -1
  767. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  768. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
  769. package/dist/cssm/components/CustomSelect/CustomSelect.js +1 -1
  770. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  771. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  772. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  773. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +2 -2
  774. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  775. package/dist/cssm/components/DatePicker/DatePicker.d.ts +2 -1
  776. package/dist/cssm/components/DatePicker/DatePicker.js +5 -4
  777. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  778. package/dist/cssm/components/Div/Div.d.ts +3 -4
  779. package/dist/cssm/components/Div/Div.js +5 -8
  780. package/dist/cssm/components/Div/Div.js.map +1 -1
  781. package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +2 -1
  782. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  783. package/dist/cssm/components/Epic/Epic.d.ts +3 -2
  784. package/dist/cssm/components/Epic/Epic.js +4 -4
  785. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  786. package/dist/cssm/components/FixedLayout/FixedLayout.d.ts +2 -2
  787. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -4
  788. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  789. package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +2 -2
  790. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  791. package/dist/cssm/components/FocusVisible/FocusVisible.d.ts +2 -1
  792. package/dist/cssm/components/FocusVisible/FocusVisible.js +8 -6
  793. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  794. package/dist/cssm/components/FormField/FormField.js +5 -4
  795. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  796. package/dist/cssm/components/FormItem/FormItem.d.ts +6 -1
  797. package/dist/cssm/components/FormItem/FormItem.js +9 -7
  798. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  799. package/dist/cssm/components/FormItem/FormItem.module.css +3 -0
  800. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -3
  801. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -4
  802. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  803. package/dist/cssm/components/FormStatus/FormStatus.d.ts +2 -2
  804. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  805. package/dist/cssm/components/Gradient/Gradient.d.ts +3 -2
  806. package/dist/cssm/components/Gradient/Gradient.js +14 -11
  807. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  808. package/dist/cssm/components/Group/Group.d.ts +3 -3
  809. package/dist/cssm/components/Group/Group.js +34 -19
  810. package/dist/cssm/components/Group/Group.js.map +1 -1
  811. package/dist/cssm/components/Group/Group.module.css +36 -4
  812. package/dist/cssm/components/Header/Header.d.ts +3 -3
  813. package/dist/cssm/components/Header/Header.js +10 -8
  814. package/dist/cssm/components/Header/Header.js.map +1 -1
  815. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +6 -5
  816. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  817. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +3 -3
  818. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +4 -3
  819. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  820. package/dist/cssm/components/ImageBase/ImageBase.d.ts +2 -2
  821. package/dist/cssm/components/ImageBase/ImageBase.js +5 -5
  822. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  823. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.d.ts +3 -2
  824. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +7 -6
  825. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  826. package/dist/cssm/components/InfoRow/InfoRow.d.ts +2 -1
  827. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  828. package/dist/cssm/components/Input/Input.module.css +15 -0
  829. package/dist/cssm/components/InputLike/InputLike.d.ts +3 -3
  830. package/dist/cssm/components/InputLike/InputLike.js +5 -5
  831. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  832. package/dist/cssm/components/List/List.d.ts +3 -2
  833. package/dist/cssm/components/List/List.js +4 -3
  834. package/dist/cssm/components/List/List.js.map +1 -1
  835. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.d.ts +2 -1
  836. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +14 -11
  837. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  838. package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
  839. package/dist/cssm/components/ModalCard/ModalCard.js +4 -4
  840. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  841. package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +3 -3
  842. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +4 -4
  843. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  844. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.d.ts +2 -1
  845. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  846. package/dist/cssm/components/ModalPage/ModalPage.d.ts +3 -2
  847. package/dist/cssm/components/ModalPage/ModalPage.js +8 -4
  848. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  849. package/dist/cssm/components/ModalPage/ModalPage.module.css +7 -3
  850. package/dist/cssm/components/ModalRoot/ModalRoot.js +6 -4
  851. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  852. package/dist/cssm/components/ModalRoot/ModalRoot.module.css +1 -1
  853. package/dist/cssm/components/ModalRoot/ModalRootContext.js +2 -1
  854. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  855. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -3
  856. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  857. package/dist/cssm/components/ModalRoot/types.d.ts +1 -0
  858. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  859. package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts +8 -0
  860. package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js +22 -0
  861. package/dist/cssm/components/NavTransitionDirectionContext/NavTransitionDirectionContext.js.map +1 -0
  862. package/dist/cssm/components/Pagination/Pagination.d.ts +3 -3
  863. package/dist/cssm/components/Pagination/Pagination.js +16 -31
  864. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  865. package/dist/cssm/components/Pagination/Pagination.module.css +0 -51
  866. package/dist/cssm/components/Pagination/PaginationPage/PaginationPage.module.css +43 -0
  867. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.d.ts +12 -0
  868. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js +30 -0
  869. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -0
  870. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts +6 -0
  871. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.js +17 -0
  872. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageEllipsis.js.map +1 -0
  873. package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts +5 -0
  874. package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.js +10 -0
  875. package/dist/cssm/components/Pagination/PaginationPage/usePaginationPageClasses.js.map +1 -0
  876. package/dist/cssm/components/Pagination/utils.d.ts +1 -0
  877. package/dist/cssm/components/Pagination/utils.js +5 -0
  878. package/dist/cssm/components/Pagination/utils.js.map +1 -0
  879. package/dist/cssm/components/Panel/Panel.d.ts +3 -3
  880. package/dist/cssm/components/Panel/Panel.js +6 -4
  881. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  882. package/dist/cssm/components/Panel/Panel.module.css +9 -2
  883. package/dist/cssm/components/PanelHeader/PanelHeader.d.ts +3 -3
  884. package/dist/cssm/components/PanelHeader/PanelHeader.js +17 -10
  885. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  886. package/dist/cssm/components/PanelHeader/PanelHeader.module.css +0 -4
  887. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -2
  888. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -4
  889. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  890. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.d.ts +2 -1
  891. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  892. package/dist/cssm/components/Placeholder/Placeholder.d.ts +24 -11
  893. package/dist/cssm/components/Placeholder/Placeholder.js +32 -15
  894. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  895. package/dist/cssm/components/PopoutRoot/PopoutRoot.d.ts +3 -3
  896. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +12 -15
  897. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  898. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.d.ts +3 -2
  899. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +15 -14
  900. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  901. package/dist/cssm/components/Popper/Popper.d.ts +7 -3
  902. package/dist/cssm/components/Popper/Popper.js +18 -10
  903. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  904. package/dist/cssm/components/Progress/Progress.d.ts +3 -3
  905. package/dist/cssm/components/Progress/Progress.js +9 -8
  906. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  907. package/dist/cssm/components/PromoBanner/PromoBanner.d.ts +3 -2
  908. package/dist/cssm/components/PromoBanner/PromoBanner.js +4 -4
  909. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  910. package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +25 -0
  911. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +5 -2
  912. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  913. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.d.ts +7 -7
  914. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +6 -5
  915. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  916. package/dist/cssm/components/RadioGroup/RadioGroup.d.ts +3 -2
  917. package/dist/cssm/components/RadioGroup/RadioGroup.js +4 -3
  918. package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
  919. package/dist/cssm/components/Removable/Removable.d.ts +3 -3
  920. package/dist/cssm/components/Removable/Removable.js +4 -6
  921. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  922. package/dist/cssm/components/RichCell/RichCell.d.ts +1 -1
  923. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.d.ts +3 -1
  924. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +6 -6
  925. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  926. package/dist/cssm/components/RichTooltip/RichTooltip.js +7 -6
  927. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  928. package/dist/cssm/components/Root/Root.d.ts +3 -2
  929. package/dist/cssm/components/Root/Root.js +12 -8
  930. package/dist/cssm/components/Root/Root.js.map +1 -1
  931. package/dist/cssm/components/RootComponent/RootComponent.d.ts +9 -0
  932. package/dist/cssm/components/RootComponent/RootComponent.js +11 -0
  933. package/dist/cssm/components/RootComponent/RootComponent.js.map +1 -0
  934. package/dist/cssm/components/ScrollArrow/ScrollArrow.d.ts +1 -1
  935. package/dist/cssm/components/ScrollArrow/ScrollArrow.js +13 -10
  936. package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
  937. package/dist/cssm/components/Search/Search.d.ts +3 -3
  938. package/dist/cssm/components/Search/Search.js +2 -1
  939. package/dist/cssm/components/Search/Search.js.map +1 -1
  940. package/dist/cssm/components/SegmentedControl/SegmentedControl.d.ts +3 -3
  941. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +4 -4
  942. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  943. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -3
  944. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +2 -1
  945. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  946. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
  947. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  948. package/dist/cssm/components/SelectTypography/SelectTypography.d.ts +2 -2
  949. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  950. package/dist/cssm/components/Separator/Separator.d.ts +3 -2
  951. package/dist/cssm/components/Separator/Separator.js +3 -2
  952. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  953. package/dist/cssm/components/Slider/Slider.d.ts +4 -3
  954. package/dist/cssm/components/Slider/Slider.js +3 -1
  955. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  956. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.d.ts +2 -1
  957. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +54 -5
  958. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  959. package/dist/cssm/components/Snackbar/Snackbar.d.ts +3 -2
  960. package/dist/cssm/components/Snackbar/Snackbar.js +8 -6
  961. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  962. package/dist/cssm/components/Spacing/Spacing.d.ts +3 -3
  963. package/dist/cssm/components/Spacing/Spacing.js +4 -4
  964. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  965. package/dist/cssm/components/Spinner/Spinner.d.ts +3 -2
  966. package/dist/cssm/components/Spinner/Spinner.js +5 -4
  967. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  968. package/dist/cssm/components/SplitCol/SplitCol.d.ts +2 -1
  969. package/dist/cssm/components/SplitCol/SplitCol.js +7 -5
  970. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  971. package/dist/cssm/components/SplitLayout/SplitLayout.d.ts +2 -2
  972. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  973. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.d.ts +3 -2
  974. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +6 -6
  975. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  976. package/dist/cssm/components/Tabbar/Tabbar.d.ts +3 -2
  977. package/dist/cssm/components/Tabbar/Tabbar.js +5 -4
  978. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  979. package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -1
  980. package/dist/cssm/components/TabbarItem/TabbarItem.js +5 -4
  981. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  982. package/dist/cssm/components/Tabs/Tabs.d.ts +3 -3
  983. package/dist/cssm/components/Tabs/Tabs.js +4 -4
  984. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  985. package/dist/cssm/components/TabsItem/TabsItem.d.ts +2 -1
  986. package/dist/cssm/components/TabsItem/TabsItem.js +6 -5
  987. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  988. package/dist/cssm/components/Tappable/Tappable.d.ts +6 -1
  989. package/dist/cssm/components/Tappable/Tappable.js +10 -8
  990. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  991. package/dist/cssm/components/Tappable/Tappable.module.css +4 -0
  992. package/dist/cssm/components/TextTooltip/TextTooltip.js +7 -6
  993. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  994. package/dist/cssm/components/Tooltip/Tooltip.d.ts +1 -1
  995. package/dist/cssm/components/Tooltip/Tooltip.js +4 -3
  996. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  997. package/dist/cssm/components/TooltipBase/TooltipBase.d.ts +8 -1
  998. package/dist/cssm/components/TooltipBase/TooltipBase.js +9 -4
  999. package/dist/cssm/components/TooltipBase/TooltipBase.js.map +1 -1
  1000. package/dist/cssm/components/TooltipBase/TooltipBase.module.css +0 -1
  1001. package/dist/cssm/components/Typography/Caption/Caption.js +6 -5
  1002. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  1003. package/dist/cssm/components/Typography/Headline/Headline.js +5 -4
  1004. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  1005. package/dist/cssm/components/Typography/Title/Title.js +6 -5
  1006. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1007. package/dist/cssm/components/Typography/Typography.d.ts +1 -1
  1008. package/dist/cssm/components/Typography/Typography.js +10 -8
  1009. package/dist/cssm/components/Typography/Typography.js.map +1 -1
  1010. package/dist/cssm/components/Typography/Typography.module.css +6 -0
  1011. package/dist/cssm/components/UsersStack/UsersStack.d.ts +3 -2
  1012. package/dist/cssm/components/UsersStack/UsersStack.js +14 -11
  1013. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1014. package/dist/cssm/components/View/View.d.ts +2 -1
  1015. package/dist/cssm/components/View/View.js +7 -3
  1016. package/dist/cssm/components/View/View.js.map +1 -1
  1017. package/dist/cssm/components/View/ViewInfinite.d.ts +10 -3
  1018. package/dist/cssm/components/View/ViewInfinite.js +7 -4
  1019. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1020. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.d.ts +1 -1
  1021. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +4 -6
  1022. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  1023. package/dist/cssm/helpers/appearance.d.ts +4 -0
  1024. package/dist/cssm/helpers/appearance.js +4 -1
  1025. package/dist/cssm/helpers/appearance.js.map +1 -1
  1026. package/dist/cssm/hooks/useAppearance.d.ts +1 -1
  1027. package/dist/cssm/hooks/useAutoDetectAppearance.d.ts +4 -0
  1028. package/dist/cssm/hooks/useAutoDetectAppearance.js +4 -1
  1029. package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
  1030. package/dist/cssm/hooks/useBridgeAdaptivity.d.ts +5 -1
  1031. package/dist/cssm/hooks/useBridgeAdaptivity.js +29 -22
  1032. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -1
  1033. package/dist/cssm/hooks/useInsets.d.ts +5 -1
  1034. package/dist/cssm/hooks/useInsets.js +15 -13
  1035. package/dist/cssm/hooks/useInsets.js.map +1 -1
  1036. package/dist/cssm/index.d.ts +6 -3
  1037. package/dist/cssm/index.js +3 -1
  1038. package/dist/cssm/index.js.map +1 -1
  1039. package/dist/cssm/lib/adaptivity/functions.d.ts +8 -0
  1040. package/dist/cssm/lib/adaptivity/functions.js +29 -1
  1041. package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
  1042. package/dist/cssm/lib/appearance/index.d.ts +1 -0
  1043. package/dist/cssm/lib/appearance/index.js +3 -0
  1044. package/dist/cssm/lib/appearance/index.js.map +1 -0
  1045. package/dist/cssm/lib/appearance/types.d.ts +1 -0
  1046. package/dist/cssm/lib/appearance/types.js +3 -0
  1047. package/dist/cssm/lib/appearance/types.js.map +1 -0
  1048. package/dist/cssm/lib/floating/index.d.ts +1 -1
  1049. package/dist/cssm/lib/floating/index.js +1 -1
  1050. package/dist/cssm/lib/floating/index.js.map +1 -1
  1051. package/dist/cssm/lib/platform.js +9 -7
  1052. package/dist/cssm/lib/platform.js.map +1 -1
  1053. package/dist/cssm/lib/select.d.ts +1 -1
  1054. package/dist/cssm/lib/taptic.d.ts +4 -0
  1055. package/dist/cssm/lib/taptic.js +4 -1
  1056. package/dist/cssm/lib/taptic.js.map +1 -1
  1057. package/dist/cssm/lib/utils.d.ts +2 -0
  1058. package/dist/cssm/lib/utils.js +14 -0
  1059. package/dist/cssm/lib/utils.js.map +1 -1
  1060. package/dist/cssm/styles/common.css +8 -2
  1061. package/dist/cssm/styles/themes.css +226 -133
  1062. package/dist/cssm/types.d.ts +1 -0
  1063. package/dist/cssm/types.js.map +1 -1
  1064. package/dist/helpers/appearance.d.ts +4 -0
  1065. package/dist/helpers/appearance.js +4 -1
  1066. package/dist/helpers/appearance.js.map +1 -1
  1067. package/dist/hooks/useAppearance.d.ts +1 -1
  1068. package/dist/hooks/useAutoDetectAppearance.d.ts +4 -0
  1069. package/dist/hooks/useAutoDetectAppearance.js +4 -1
  1070. package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
  1071. package/dist/hooks/useBridgeAdaptivity.d.ts +5 -1
  1072. package/dist/hooks/useBridgeAdaptivity.js +29 -21
  1073. package/dist/hooks/useBridgeAdaptivity.js.map +1 -1
  1074. package/dist/hooks/useInsets.d.ts +5 -1
  1075. package/dist/hooks/useInsets.js +15 -12
  1076. package/dist/hooks/useInsets.js.map +1 -1
  1077. package/dist/index.d.ts +6 -3
  1078. package/dist/index.js +3 -1
  1079. package/dist/index.js.map +1 -1
  1080. package/dist/lib/adaptivity/functions.d.ts +8 -0
  1081. package/dist/lib/adaptivity/functions.js +29 -1
  1082. package/dist/lib/adaptivity/functions.js.map +1 -1
  1083. package/dist/lib/appearance/index.d.ts +1 -0
  1084. package/dist/lib/appearance/index.js +3 -0
  1085. package/dist/lib/appearance/index.js.map +1 -0
  1086. package/dist/lib/appearance/types.d.ts +1 -0
  1087. package/dist/lib/appearance/types.js +3 -0
  1088. package/dist/lib/appearance/types.js.map +1 -0
  1089. package/dist/lib/floating/index.d.ts +1 -1
  1090. package/dist/lib/floating/index.js +1 -1
  1091. package/dist/lib/floating/index.js.map +1 -1
  1092. package/dist/lib/platform.js +11 -7
  1093. package/dist/lib/platform.js.map +1 -1
  1094. package/dist/lib/select.d.ts +1 -1
  1095. package/dist/lib/taptic.d.ts +4 -0
  1096. package/dist/lib/taptic.js +4 -1
  1097. package/dist/lib/taptic.js.map +1 -1
  1098. package/dist/lib/utils.d.ts +2 -0
  1099. package/dist/lib/utils.js +16 -0
  1100. package/dist/lib/utils.js.map +1 -1
  1101. package/dist/types.d.ts +1 -0
  1102. package/dist/types.js.map +1 -1
  1103. package/dist/vkui.css +20 -19
  1104. package/dist/vkui.css.map +1 -1
  1105. package/dist/vkui.js.tmp +6990 -4428
  1106. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Popper/Popper.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport {\n arrowMiddleware,\n autoPlacementMiddleware,\n autoUpdateFloatingElement,\n checkIsNotAutoPlacement,\n convertFloatingDataToReactCSSProperties,\n flipMiddleware,\n getAutoPlacementAlign,\n offsetMiddleware,\n type Placement,\n type PlacementWithAuto,\n shiftMiddleware,\n sizeMiddleware,\n useFloating,\n type UseFloatingMiddleware,\n} from '../../lib/floating';\nimport type { HasRef } from '../../types';\nimport { AppRootPortal } from '../AppRoot/AppRootPortal';\nimport {\n DEFAULT_ARROW_HEIGHT,\n DEFAULT_ARROW_PADDING,\n DefaultIcon,\n} from '../PopperArrow/DefaultIcon';\nimport { PopperArrow, type PopperArrowProps } from '../PopperArrow/PopperArrow';\nimport styles from './Popper.module.css';\n\nexport interface PopperRenderContentProps {\n className: string;\n}\n\nexport interface PopperCommonProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: PlacementWithAuto;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n /**\n * Отображать ли стрелку, указывающую на якорный элемент\n */\n arrow?: boolean;\n /**\n * Высота стрелки. Складывается с `offsetDistance`, чтобы стрелка не залезала на якорный элемент.\n */\n arrowHeight?: number;\n /**\n * Безопасная зона вокруг стрелки, чтобы та не выходила за края контента.\n */\n arrowPadding?: number;\n /**\n * Стиль стрелки.\n */\n arrowClassName?: string;\n /**\n * Пользовательская SVG иконка.\n *\n * Требования:\n *\n * 1. Иконка по умолчанию должна быть направлена вверх (a.k.a `IconUp`).\n * 2. Чтобы избежать проблемы с пространством между стрелкой и контентом на некоторых экранах,\n * растяните кривую по высоте на `1px` и увеличьте на этот размер `height` и `viewBox` SVG.\n * (см. https://github.com/VKCOM/VKUI/pull/4496).\n * 3. Передайте высоту иконки в параметр `arrowHeight`. В значении высоты можно исключить хак с `1px` из п.2.\n * 4. Убедитесь, что компонент принимает все валидные для SVG параметры.\n * 5. Убедитесь, что SVG и её элементы наследует цвет через `fill=\"currentColor\"`.\n */\n ArrowIcon?: PopperArrowProps['Icon'];\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n /**\n * Кастомный root-элемент портала.\n * При передаче вместе с `forcePorta=true` игнорируется `portalRoot` и `disablePortal`\n * из контекста `AppRoot`.\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /**\n * Подписывается на изменение геометрии `targetRef`, чтобы пересчитать свою позицию.\n */\n autoUpdateOnTargetResize?: boolean;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать)\n */\n customMiddlewares?: UseFloatingMiddleware[];\n /**\n * При передаче содержимого в `children`, он будет обёрнут во внутренний контейнер.\n *\n * Если хочется управлять этим контейнером, то используйте данную функцию.\n *\n * > ⚠️ Параметр `children` будет проигнорирован.\n */\n renderContent?(props: PopperRenderContentProps): React.ReactNode;\n onPlacementChange?(data: { placement?: Placement }): void;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Popper\n */\nexport const Popper = ({\n targetRef,\n children,\n getRef,\n placement: placementProp = 'bottom-start',\n onPlacementChange,\n arrow,\n arrowHeight = DEFAULT_ARROW_HEIGHT,\n arrowPadding = DEFAULT_ARROW_PADDING,\n arrowClassName,\n ArrowIcon = DefaultIcon,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n portalRoot,\n autoUpdateOnTargetResize = false,\n style: styleProp,\n customMiddlewares,\n renderContent,\n className,\n ...restProps\n}: PopperProps) => {\n const [arrowRef, setArrowRef] = React.useState<HTMLDivElement | null>(null);\n\n const isNotAutoPlacement = checkIsNotAutoPlacement(placementProp);\n\n const memoizedMiddlewares = React.useMemo(() => {\n const middlewares: UseFloatingMiddleware[] = [\n offsetMiddleware({\n crossAxis: offsetSkidding,\n mainAxis: arrow ? offsetDistance + arrowHeight : offsetDistance,\n }),\n ];\n\n // см. https://floating-ui.com/docs/flip#conflict-with-autoplacement\n if (isNotAutoPlacement) {\n middlewares.push(flipMiddleware());\n } else {\n middlewares.push(\n autoPlacementMiddleware({ alignment: getAutoPlacementAlign(placementProp) }),\n );\n }\n\n middlewares.push(shiftMiddleware());\n\n if (sameWidth) {\n middlewares.push(\n sizeMiddleware({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n );\n }\n\n if (customMiddlewares) {\n middlewares.push(...customMiddlewares);\n }\n\n // см. https://floating-ui.com/docs/arrow#order\n if (arrow) {\n middlewares.push(\n arrowMiddleware({\n element: arrowRef,\n padding: arrowPadding,\n }),\n );\n }\n\n return middlewares;\n }, [\n offsetSkidding,\n arrowRef,\n arrow,\n arrowHeight,\n arrowPadding,\n offsetDistance,\n isNotAutoPlacement,\n sameWidth,\n customMiddlewares,\n placementProp,\n ]);\n\n const {\n x: floatingDataX,\n y: floatingDataY,\n strategy: floatingPositionStrategy,\n placement: resolvedPlacement,\n refs,\n middlewareData: { arrow: arrowCoords },\n } = useFloating({\n placement: isNotAutoPlacement ? placementProp : undefined,\n middleware: memoizedMiddlewares,\n whileElementsMounted(...args) {\n return autoUpdateFloatingElement(...args, {\n elementResize: autoUpdateOnTargetResize,\n });\n },\n });\n\n const handleRootRef = useExternRef<HTMLDivElement>(refs.setFloating, getRef);\n\n React.useEffect(() => {\n refs.setReference(targetRef.current);\n }, [refs, targetRef]);\n\n React.useEffect(() => {\n if (resolvedPlacement && onPlacementChange) {\n onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <div\n {...restProps}\n className={classNames(styles['Popper'], className)}\n ref={handleRootRef}\n style={{\n ...styleProp,\n ...convertFloatingDataToReactCSSProperties(\n floatingPositionStrategy,\n floatingDataX,\n floatingDataY,\n sameWidth ? null : undefined,\n ),\n }}\n >\n {arrow && (\n <PopperArrow\n coords={arrowCoords}\n placement={resolvedPlacement}\n arrowClassName={arrowClassName}\n getRootRef={setArrowRef}\n Icon={ArrowIcon}\n />\n )}\n {renderContent ? renderContent({ className: '' }) : children}\n </div>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} portalRoot={portalRoot}>\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"names":["Popper","targetRef","children","getRef","placementProp","placement","onPlacementChange","arrow","arrowHeight","DEFAULT_ARROW_HEIGHT","arrowPadding","DEFAULT_ARROW_PADDING","arrowClassName","ArrowIcon","DefaultIcon","sameWidth","offsetDistance","offsetSkidding","forcePortal","portalRoot","autoUpdateOnTargetResize","style","styleProp","customMiddlewares","renderContent","className","restProps","React","useState","arrowRef","setArrowRef","isNotAutoPlacement","checkIsNotAutoPlacement","memoizedMiddlewares","useMemo","middlewares","offsetMiddleware","crossAxis","mainAxis","push","flipMiddleware","autoPlacementMiddleware","alignment","getAutoPlacementAlign","shiftMiddleware","sizeMiddleware","apply","rects","elements","Object","assign","floating","width","reference","arrowMiddleware","element","padding","useFloating","undefined","middleware","whileElementsMounted","args","autoUpdateFloatingElement","elementResize","x","floatingDataX","y","floatingDataY","strategy","floatingPositionStrategy","resolvedPlacement","refs","middlewareData","arrowCoords","handleRootRef","useExternRef","setFloating","useEffect","setReference","current","dropdown","div","classNames","ref","convertFloatingDataToReactCSSProperties","PopperArrow","coords","getRootRef","Icon","AppRootPortal"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/Popper/Popper.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport {\n arrowMiddleware,\n autoPlacementMiddleware,\n autoUpdateFloatingElement,\n checkIsNotAutoPlacement,\n convertFloatingDataToReactCSSProperties,\n flipMiddleware,\n getAutoPlacementAlign,\n hideMiddleware,\n offsetMiddleware,\n type Placement,\n type PlacementWithAuto,\n shiftMiddleware,\n sizeMiddleware,\n useFloating,\n type UseFloatingMiddleware,\n} from '../../lib/floating';\nimport type { HasRef, HTMLAttributesWithRootRef } from '../../types';\nimport { AppRootPortal } from '../AppRoot/AppRootPortal';\nimport {\n DEFAULT_ARROW_HEIGHT,\n DEFAULT_ARROW_PADDING,\n DefaultIcon,\n} from '../PopperArrow/DefaultIcon';\nimport { PopperArrow, type PopperArrowProps } from '../PopperArrow/PopperArrow';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './Popper.module.css';\n\nexport interface PopperRenderContentProps {\n className: string;\n}\n\nexport interface PopperCommonProps\n extends HTMLAttributesWithRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n /**\n * По умолчанию компонент выберет наилучшее расположение сам. Но его можно задать извне с помощью этого свойства\n */\n placement?: PlacementWithAuto;\n /**\n * Отступ по вспомогательной оси\n */\n offsetSkidding?: number;\n /**\n * Отступ по главной оси\n */\n offsetDistance?: number;\n /**\n * Отображать ли стрелку, указывающую на якорный элемент\n */\n arrow?: boolean;\n /**\n * Высота стрелки. Складывается с `offsetDistance`, чтобы стрелка не залезала на якорный элемент.\n */\n arrowHeight?: number;\n /**\n * Безопасная зона вокруг стрелки, чтобы та не выходила за края контента.\n */\n arrowPadding?: number;\n /**\n * Стиль стрелки.\n */\n arrowClassName?: string;\n /**\n * Пользовательская SVG иконка.\n *\n * Требования:\n *\n * 1. Иконка по умолчанию должна быть направлена вверх (a.k.a `IconUp`).\n * 2. Чтобы избежать проблемы с пространством между стрелкой и контентом на некоторых экранах,\n * растяните кривую по высоте на `1px` и увеличьте на этот размер `height` и `viewBox` SVG.\n * (см. https://github.com/VKCOM/VKUI/pull/4496).\n * 3. Передайте высоту иконки в параметр `arrowHeight`. В значении высоты можно исключить хак с `1px` из п.2.\n * 4. Убедитесь, что компонент принимает все валидные для SVG параметры.\n * 5. Убедитесь, что SVG и её элементы наследует цвет через `fill=\"currentColor\"`.\n */\n ArrowIcon?: PopperArrowProps['Icon'];\n /**\n * Выставлять ширину равной target элементу\n */\n sameWidth?: boolean;\n forcePortal?: boolean;\n /**\n * Кастомный root-элемент портала.\n * При передаче вместе с `forcePorta=true` игнорируется `portalRoot` и `disablePortal`\n * из контекста `AppRoot`.\n */\n portalRoot?: HTMLElement | React.RefObject<HTMLElement> | null;\n /**\n * Подписывается на изменение геометрии `targetRef`, чтобы пересчитать свою позицию.\n */\n autoUpdateOnTargetResize?: boolean;\n /**\n * Массив кастомных модификаторов для Popper (необходимо мемоизировать)\n */\n customMiddlewares?: UseFloatingMiddleware[];\n /**\n * При передаче содержимого в `children`, он будет обёрнут во внутренний контейнер.\n *\n * Если хочется управлять этим контейнером, то используйте данную функцию.\n *\n * > ⚠️ Параметр `children` будет проигнорирован.\n */\n renderContent?(props: PopperRenderContentProps): React.ReactNode;\n onPlacementChange?(data: { placement?: Placement }): void;\n /**\n * Принудительно скрывает компонет если целевой элемент исчез\n */\n hideWhenReferenceHidden?: boolean;\n}\n\nexport interface PopperProps extends PopperCommonProps {\n targetRef: React.RefObject<HTMLElement>;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Popper\n */\nexport const Popper = ({\n targetRef,\n children,\n getRef,\n placement: placementProp = 'bottom-start',\n onPlacementChange,\n arrow,\n arrowHeight = DEFAULT_ARROW_HEIGHT,\n arrowPadding = DEFAULT_ARROW_PADDING,\n arrowClassName,\n ArrowIcon = DefaultIcon,\n sameWidth,\n offsetDistance = 8,\n offsetSkidding = 0,\n forcePortal = true,\n portalRoot,\n autoUpdateOnTargetResize = false,\n style: styleProp,\n customMiddlewares,\n renderContent,\n getRootRef,\n hideWhenReferenceHidden,\n ...restProps\n}: PopperProps) => {\n const [arrowRef, setArrowRef] = React.useState<HTMLDivElement | null>(null);\n\n const isNotAutoPlacement = checkIsNotAutoPlacement(placementProp);\n\n const memoizedMiddlewares = React.useMemo(() => {\n const middlewares: UseFloatingMiddleware[] = [\n offsetMiddleware({\n crossAxis: offsetSkidding,\n mainAxis: arrow ? offsetDistance + arrowHeight : offsetDistance,\n }),\n ];\n\n // см. https://floating-ui.com/docs/flip#conflict-with-autoplacement\n if (isNotAutoPlacement) {\n middlewares.push(flipMiddleware());\n } else {\n middlewares.push(\n autoPlacementMiddleware({ alignment: getAutoPlacementAlign(placementProp) }),\n );\n }\n\n middlewares.push(shiftMiddleware());\n\n if (sameWidth) {\n middlewares.push(\n sizeMiddleware({\n apply({ rects, elements }) {\n Object.assign(elements.floating.style, {\n width: `${rects.reference.width}px`,\n });\n },\n }),\n );\n }\n\n if (customMiddlewares) {\n middlewares.push(...customMiddlewares);\n }\n\n // см. https://floating-ui.com/docs/arrow#order\n if (arrow) {\n middlewares.push(\n arrowMiddleware({\n element: arrowRef,\n padding: arrowPadding,\n }),\n );\n }\n\n if (hideWhenReferenceHidden) {\n middlewares.push(hideMiddleware());\n }\n\n return middlewares;\n }, [\n offsetSkidding,\n arrowRef,\n arrow,\n arrowHeight,\n arrowPadding,\n offsetDistance,\n isNotAutoPlacement,\n sameWidth,\n customMiddlewares,\n placementProp,\n hideWhenReferenceHidden,\n ]);\n\n const {\n x: floatingDataX,\n y: floatingDataY,\n strategy: floatingPositionStrategy,\n placement: resolvedPlacement,\n refs,\n middlewareData: { arrow: arrowCoords, hide },\n } = useFloating({\n placement: isNotAutoPlacement ? placementProp : undefined,\n middleware: memoizedMiddlewares,\n whileElementsMounted(...args) {\n return autoUpdateFloatingElement(...args, {\n elementResize: autoUpdateOnTargetResize,\n });\n },\n });\n\n // TODO [>=6]: убрать getRef\n const handleRootRef = useExternRef<HTMLDivElement>(refs.setFloating, getRef, getRootRef);\n\n React.useEffect(() => {\n refs.setReference(targetRef.current);\n }, [refs, targetRef]);\n\n React.useEffect(() => {\n if (resolvedPlacement && onPlacementChange) {\n onPlacementChange({ placement: resolvedPlacement });\n }\n }, [onPlacementChange, resolvedPlacement]);\n\n const dropdown = (\n <RootComponent\n {...restProps}\n baseClassName={styles['Popper']}\n getRootRef={handleRootRef}\n style={{\n ...styleProp,\n ...convertFloatingDataToReactCSSProperties(\n floatingPositionStrategy,\n floatingDataX,\n floatingDataY,\n sameWidth ? null : undefined,\n ),\n ...(hide?.referenceHidden && {\n visibility: 'hidden',\n }),\n }}\n >\n {arrow && (\n <PopperArrow\n coords={arrowCoords}\n placement={resolvedPlacement}\n arrowClassName={arrowClassName}\n getRootRef={setArrowRef}\n Icon={ArrowIcon}\n />\n )}\n {renderContent ? renderContent({ className: '' }) : children}\n </RootComponent>\n );\n\n return (\n <AppRootPortal forcePortal={forcePortal} portalRoot={portalRoot}>\n {dropdown}\n </AppRootPortal>\n );\n};\n"],"names":["Popper","targetRef","children","getRef","placementProp","placement","onPlacementChange","arrow","arrowHeight","DEFAULT_ARROW_HEIGHT","arrowPadding","DEFAULT_ARROW_PADDING","arrowClassName","ArrowIcon","DefaultIcon","sameWidth","offsetDistance","offsetSkidding","forcePortal","portalRoot","autoUpdateOnTargetResize","style","styleProp","customMiddlewares","renderContent","getRootRef","hideWhenReferenceHidden","restProps","hide","React","useState","arrowRef","setArrowRef","isNotAutoPlacement","checkIsNotAutoPlacement","memoizedMiddlewares","useMemo","middlewares","offsetMiddleware","crossAxis","mainAxis","push","flipMiddleware","autoPlacementMiddleware","alignment","getAutoPlacementAlign","shiftMiddleware","sizeMiddleware","apply","rects","elements","Object","assign","floating","width","reference","arrowMiddleware","element","padding","hideMiddleware","useFloating","undefined","middleware","whileElementsMounted","args","autoUpdateFloatingElement","elementResize","x","floatingDataX","y","floatingDataY","strategy","floatingPositionStrategy","resolvedPlacement","refs","middlewareData","arrowCoords","handleRootRef","useExternRef","setFloating","useEffect","setReference","current","dropdown","RootComponent","baseClassName","convertFloatingDataToReactCSSProperties","referenceHidden","visibility","PopperArrow","coords","Icon","className","AppRootPortal"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
- import { HasRootRef } from '../../types';
3
- export interface ProgressProps extends React.HTMLAttributes<HTMLDivElement>, HasRootRef<HTMLDivElement> {
2
+ import { HTMLAttributesWithRootRef } from '../../types';
3
+ export interface ProgressProps extends HTMLAttributesWithRootRef<HTMLDivElement> {
4
4
  /**
5
5
  * Стиль отображения прогрессбара
6
6
  */
@@ -14,4 +14,4 @@ export interface ProgressProps extends React.HTMLAttributes<HTMLDivElement>, Has
14
14
  /**
15
15
  * @see https://vkcom.github.io/VKUI/#/Progress
16
16
  */
17
- export declare const Progress: ({ value, getRootRef, className, appearance, height, style: styleProps, ...restProps }: ProgressProps) => React.JSX.Element;
17
+ export declare const Progress: ({ value, appearance, height, style: styleProps, ...restProps }: ProgressProps) => React.JSX.Element;
@@ -15,6 +15,12 @@ var _object_without_properties = require("@swc/helpers/_/_object_without_propert
15
15
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
16
16
  var _vkjs = require("@vkontakte/vkjs");
17
17
  var _math = require("../../helpers/math");
18
+ var _RootComponent = require("../RootComponent/RootComponent");
19
+ var stylesAppearance = {
20
+ accent: "vkuiProgress--appearance-accent",
21
+ positive: "vkuiProgress--appearance-positive",
22
+ negative: "vkuiProgress--appearance-negative"
23
+ };
18
24
  function progressCustomHeightStyle(height) {
19
25
  return height ? {
20
26
  height: height,
@@ -29,10 +35,8 @@ function progressStyle(height, styleProps) {
29
35
  var PROGRESS_MIN_VALUE = 0;
30
36
  var PROGRESS_MAX_VALUE = 100;
31
37
  var Progress = function(_param) {
32
- var _param_value = _param.value, value = _param_value === void 0 ? 0 : _param_value, getRootRef = _param.getRootRef, className = _param.className, _param_appearance = _param.appearance, appearance = _param_appearance === void 0 ? "accent" : _param_appearance, height = _param.height, styleProps = _param.style, restProps = _object_without_properties._(_param, [
38
+ var _param_value = _param.value, value = _param_value === void 0 ? 0 : _param_value, _param_appearance = _param.appearance, appearance = _param_appearance === void 0 ? "accent" : _param_appearance, height = _param.height, styleProps = _param.style, restProps = _object_without_properties._(_param, [
33
39
  "value",
34
- "getRootRef",
35
- "className",
36
40
  "appearance",
37
41
  "height",
38
42
  "style"
@@ -40,7 +44,7 @@ var Progress = function(_param) {
40
44
  var progress = (0, _math.clamp)(value, PROGRESS_MIN_VALUE, PROGRESS_MAX_VALUE);
41
45
  var title = "".concat(progress, " / ").concat(PROGRESS_MAX_VALUE);
42
46
  var style = progressStyle(height, styleProps);
43
- return /*#__PURE__*/ _react.createElement("div", _object_spread_props._(_object_spread._({
47
+ return /*#__PURE__*/ _react.createElement(_RootComponent.RootComponent, _object_spread_props._(_object_spread._({
44
48
  "aria-valuenow": value,
45
49
  title: title,
46
50
  style: style
@@ -48,12 +52,7 @@ var Progress = function(_param) {
48
52
  role: "progressbar",
49
53
  "aria-valuemin": PROGRESS_MIN_VALUE,
50
54
  "aria-valuemax": PROGRESS_MAX_VALUE,
51
- ref: getRootRef,
52
- className: (0, _vkjs.classNames)("vkuiProgress", {
53
- accent: "vkuiProgress--appearance-accent",
54
- positive: "vkuiProgress--appearance-positive",
55
- negative: "vkuiProgress--appearance-negative"
56
- }[appearance], className)
55
+ baseClassName: (0, _vkjs.classNames)("vkuiProgress", stylesAppearance[appearance])
57
56
  }), /*#__PURE__*/ _react.createElement("div", {
58
57
  className: "vkuiProgress__in",
59
58
  style: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Progress/Progress.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { HasRootRef } from '../../types';\nimport styles from './Progress.module.css';\n\nfunction progressCustomHeightStyle(height: number | undefined): React.CSSProperties | undefined {\n return height\n ? {\n height,\n borderRadius: height / 2,\n }\n : undefined;\n}\n\nfunction progressStyle(height: number | undefined, styleProps: React.CSSProperties | undefined) {\n const styleHeight = progressCustomHeightStyle(height);\n const style = styleHeight ? { ...styleProps, ...styleHeight } : styleProps;\n\n return style;\n}\n\nexport interface ProgressProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Стиль отображения прогрессбара\n */\n appearance?: 'accent' | 'positive' | 'negative';\n value?: number;\n /**\n * Высота элемента.\n */\n height?: number;\n}\n\nconst PROGRESS_MIN_VALUE = 0;\nconst PROGRESS_MAX_VALUE = 100;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Progress\n */\nexport const Progress = ({\n value = 0,\n getRootRef,\n className,\n appearance = 'accent',\n height,\n style: styleProps,\n ...restProps\n}: ProgressProps) => {\n const progress = clamp(value, PROGRESS_MIN_VALUE, PROGRESS_MAX_VALUE);\n const title = `${progress} / ${PROGRESS_MAX_VALUE}`;\n\n const style = progressStyle(height, styleProps);\n\n return (\n <div\n aria-valuenow={value}\n title={title}\n style={style}\n {...restProps}\n role=\"progressbar\"\n aria-valuemin={PROGRESS_MIN_VALUE}\n aria-valuemax={PROGRESS_MAX_VALUE}\n ref={getRootRef}\n className={classNames(\n styles['Progress'],\n {\n accent: styles['Progress--appearance-accent'],\n positive: styles['Progress--appearance-positive'],\n negative: styles['Progress--appearance-negative'],\n }[appearance],\n className,\n )}\n >\n <div className={styles['Progress__in']} style={{ width: `${progress}%` }} />\n </div>\n );\n};\n"],"names":["Progress","progressCustomHeightStyle","height","borderRadius","undefined","progressStyle","styleProps","styleHeight","style","PROGRESS_MIN_VALUE","PROGRESS_MAX_VALUE","value","getRootRef","className","appearance","restProps","progress","clamp","title","div","aria-valuenow","role","aria-valuemin","aria-valuemax","ref","classNames","accent","positive","negative","width"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;;;+DA1CU;oBACI;oBACL;AAItB,SAASC,0BAA0BC,MAA0B;IAC3D,OAAOA,SACH;QACEA,QAAAA;QACAC,cAAcD,SAAS;IACzB,IACAE;AACN;AAEA,SAASC,cAAcH,MAA0B,EAAEI,UAA2C;IAC5F,IAAMC,cAAcN,0BAA0BC;IAC9C,IAAMM,QAAQD,cAAc,qBAAKD,YAAeC,eAAgBD;IAEhE,OAAOE;AACT;AAgBA,IAAMC,qBAAqB;AAC3B,IAAMC,qBAAqB;AAKpB,IAAMV,WAAW;8BACtBW,OAAAA,kCAAQ,kBACRC,oBAAAA,YACAC,mBAAAA,sCACAC,YAAAA,4CAAa,8BACbZ,gBAAAA,QACAM,AAAOF,oBAAPE,OACGO;QANHJ;QACAC;QACAC;QACAC;QACAZ;QACAM;;IAGA,IAAMQ,WAAWC,IAAAA,WAAK,EAACN,OAAOF,oBAAoBC;IAClD,IAAMQ,QAAQ,AAAC,GAAgBR,OAAdM,UAAS,OAAwB,OAAnBN;IAE/B,IAAMF,QAAQH,cAAcH,QAAQI;IAEpC,qBACE,qBAACa;QACCC,iBAAeT;QACfO,OAAOA;QACPV,OAAOA;OACHO;QACJM,MAAK;QACLC,iBAAeb;QACfc,iBAAeb;QACfc,KAAKZ;QACLC,WAAWY,IAAAA,gBAAU,kBAEnB;YACEC,MAAM;YACNC,QAAQ;YACRC,QAAQ;QACV,CAAC,CAACd,WAAW,EACbD;sBAGF,qBAACM;QAAIN,SAAS;QAA0BL,OAAO;YAAEqB,OAAO,AAAC,GAAW,OAATb,UAAS;QAAG;;AAG7E"}
1
+ {"version":3,"sources":["../../../../src/components/Progress/Progress.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './Progress.module.css';\n\nconst stylesAppearance = {\n accent: styles['Progress--appearance-accent'],\n positive: styles['Progress--appearance-positive'],\n negative: styles['Progress--appearance-negative'],\n};\n\nfunction progressCustomHeightStyle(height: number | undefined): React.CSSProperties | undefined {\n return height\n ? {\n height,\n borderRadius: height / 2,\n }\n : undefined;\n}\n\nfunction progressStyle(height: number | undefined, styleProps: React.CSSProperties | undefined) {\n const styleHeight = progressCustomHeightStyle(height);\n const style = styleHeight ? { ...styleProps, ...styleHeight } : styleProps;\n\n return style;\n}\n\nexport interface ProgressProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Стиль отображения прогрессбара\n */\n appearance?: 'accent' | 'positive' | 'negative';\n value?: number;\n /**\n * Высота элемента.\n */\n height?: number;\n}\n\nconst PROGRESS_MIN_VALUE = 0;\nconst PROGRESS_MAX_VALUE = 100;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Progress\n */\nexport const Progress = ({\n value = 0,\n appearance = 'accent',\n height,\n style: styleProps,\n ...restProps\n}: ProgressProps) => {\n const progress = clamp(value, PROGRESS_MIN_VALUE, PROGRESS_MAX_VALUE);\n const title = `${progress} / ${PROGRESS_MAX_VALUE}`;\n\n const style = progressStyle(height, styleProps);\n\n return (\n <RootComponent\n aria-valuenow={value}\n title={title}\n style={style}\n {...restProps}\n role=\"progressbar\"\n aria-valuemin={PROGRESS_MIN_VALUE}\n aria-valuemax={PROGRESS_MAX_VALUE}\n baseClassName={classNames(styles['Progress'], stylesAppearance[appearance])}\n >\n <div className={styles['Progress__in']} style={{ width: `${progress}%` }} />\n </RootComponent>\n );\n};\n"],"names":["Progress","stylesAppearance","accent","positive","negative","progressCustomHeightStyle","height","borderRadius","undefined","progressStyle","styleProps","styleHeight","style","PROGRESS_MIN_VALUE","PROGRESS_MAX_VALUE","value","appearance","restProps","progress","clamp","title","RootComponent","aria-valuenow","role","aria-valuemin","aria-valuemax","baseClassName","classNames","div","className","width"],"mappings":";;;;+BA+CaA;;;eAAAA;;;;;;;+DA/CU;oBACI;oBACL;6BAEQ;AAG9B,IAAMC,mBAAmB;IACvBC,MAAM;IACNC,QAAQ;IACRC,QAAQ;AACV;AAEA,SAASC,0BAA0BC,MAA0B;IAC3D,OAAOA,SACH;QACEA,QAAAA;QACAC,cAAcD,SAAS;IACzB,IACAE;AACN;AAEA,SAASC,cAAcH,MAA0B,EAAEI,UAA2C;IAC5F,IAAMC,cAAcN,0BAA0BC;IAC9C,IAAMM,QAAQD,cAAc,qBAAKD,YAAeC,eAAgBD;IAEhE,OAAOE;AACT;AAcA,IAAMC,qBAAqB;AAC3B,IAAMC,qBAAqB;AAKpB,IAAMd,WAAW;8BACtBe,OAAAA,kCAAQ,6CACRC,YAAAA,4CAAa,8BACbV,gBAAAA,QACAM,AAAOF,oBAAPE,OACGK;QAJHF;QACAC;QACAV;QACAM;;IAGA,IAAMM,WAAWC,IAAAA,WAAK,EAACJ,OAAOF,oBAAoBC;IAClD,IAAMM,QAAQ,AAAC,GAAgBN,OAAdI,UAAS,OAAwB,OAAnBJ;IAE/B,IAAMF,QAAQH,cAAcH,QAAQI;IAEpC,qBACE,qBAACW,4BAAa;QACZC,iBAAeP;QACfK,OAAOA;QACPR,OAAOA;OACHK;QACJM,MAAK;QACLC,iBAAeX;QACfY,iBAAeX;QACfY,eAAeC,IAAAA,gBAAU,kBAAqB1B,gBAAgB,CAACe,WAAW;sBAE1E,qBAACY;QAAIC,SAAS;QAA0BjB,OAAO;YAAEkB,OAAO,AAAC,GAAW,OAATZ,UAAS;QAAG;;AAG7E"}
@@ -1,4 +1,5 @@
1
1
  import * as React from 'react';
2
+ import { HTMLAttributesWithRootRef } from '../../types';
2
3
  type StatsType = 'playbackStarted' | 'click';
3
4
  type BannerData = {
4
5
  title?: string;
@@ -25,7 +26,7 @@ type BannerData = {
25
26
  description?: string;
26
27
  ageRestrictions?: string;
27
28
  };
28
- export interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {
29
+ export interface PromoBannerProps extends HTMLAttributesWithRootRef<HTMLDivElement> {
29
30
  /** Данные рекламного баннера, полученные из VKWebAppGetAds */
30
31
  bannerData: BannerData;
31
32
  /** Флаг скрытия кнопки закрытия рекламы */
@@ -39,5 +40,5 @@ export interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {
39
40
  *
40
41
  * Используйте событие [VKWebAppShowBannerAd](https://dev.vk.com/mini-apps/monetization/ad/banners)
41
42
  */
42
- export declare const PromoBanner: ({ bannerData, onClose, isCloseButtonHidden, className, ...restProps }: PromoBannerProps) => React.JSX.Element;
43
+ export declare const PromoBanner: ({ bannerData, onClose, isCloseButtonHidden, ...restProps }: PromoBannerProps) => React.JSX.Element;
43
44
  export {};
@@ -16,19 +16,18 @@ var _object_without_properties = require("@swc/helpers/_/_object_without_propert
16
16
  var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
17
17
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
18
18
  var _icons = require("@vkontakte/icons");
19
- var _vkjs = require("@vkontakte/vkjs");
20
19
  var _warnOnce = require("../../lib/warnOnce");
21
20
  var _Button = require("../Button/Button");
22
21
  var _Image = require("../Image/Image");
22
+ var _RootComponent = require("../RootComponent/RootComponent");
23
23
  var _SimpleCell = require("../SimpleCell/SimpleCell");
24
24
  var _Footnote = require("../Typography/Footnote/Footnote");
25
25
  var warn = (0, _warnOnce.warnOnce)("PromoBanner");
26
26
  var PromoBanner = function(_param) {
27
- var _param_bannerData = _param.bannerData, bannerData = _param_bannerData === void 0 ? {} : _param_bannerData, onClose = _param.onClose, isCloseButtonHidden = _param.isCloseButtonHidden, className = _param.className, restProps = _object_without_properties._(_param, [
27
+ var _param_bannerData = _param.bannerData, bannerData = _param_bannerData === void 0 ? {} : _param_bannerData, onClose = _param.onClose, isCloseButtonHidden = _param.isCloseButtonHidden, restProps = _object_without_properties._(_param, [
28
28
  "bannerData",
29
29
  "onClose",
30
- "isCloseButtonHidden",
31
- "className"
30
+ "isCloseButtonHidden"
32
31
  ]);
33
32
  if (process.env.NODE_ENV === "development") {
34
33
  warn("Компонент устарел и будет удален в v6. Используйте событие VKWebAppShowBannerAd https://dev.vk.com/mini-apps/monetization/ad/banners");
@@ -53,8 +52,8 @@ var PromoBanner = function(_param) {
53
52
  }, [
54
53
  statsPixels.playbackStarted
55
54
  ]);
56
- return /*#__PURE__*/ _react.createElement("div", _object_spread._({
57
- className: (0, _vkjs.classNames)("vkuiPromoBanner", className)
55
+ return /*#__PURE__*/ _react.createElement(_RootComponent.RootComponent, _object_spread._({
56
+ baseClassName: "vkuiPromoBanner"
58
57
  }, restProps), /*#__PURE__*/ _react.createElement("div", {
59
58
  className: "vkuiPromoBanner__head"
60
59
  }, /*#__PURE__*/ _react.createElement(_Footnote.Footnote, null, bannerData.advertisingLabel || "Advertisement"), bannerData.ageRestrictions && /*#__PURE__*/ _react.createElement(_Footnote.Footnote, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PromoBanner/PromoBanner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { Button } from '../Button/Button';\nimport { Image } from '../Image/Image';\nimport { SimpleCell } from '../SimpleCell/SimpleCell';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './PromoBanner.module.css';\n\nconst warn = warnOnce('PromoBanner');\n\ntype StatsType =\n | 'playbackStarted' // Начало показа\n | 'click'; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string;\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n};\n\nexport interface PromoBannerProps extends React.HTMLAttributes<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\n// TODO [>=6]: Удалить компонент\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PromoBanner\n * @deprecated v5.3.1\n *\n * Используйте событие [VKWebAppShowBannerAd](https://dev.vk.com/mini-apps/monetization/ad/banners)\n */\nexport const PromoBanner = ({\n bannerData = {},\n onClose,\n isCloseButtonHidden,\n className,\n ...restProps\n}: PromoBannerProps) => {\n if (process.env.NODE_ENV === 'development') {\n warn(\n 'Компонент устарел и будет удален в v6. Используйте событие VKWebAppShowBannerAd https://dev.vk.com/mini-apps/monetization/ad/banners',\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState('');\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce((acc, item) => ({ ...acc, [item.type]: item.url }), {})\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics],\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || ''),\n [statsPixels.click],\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <div className={classNames(styles['PromoBanner'], className)} {...restProps}>\n <div className={styles['PromoBanner__head']}>\n <Footnote>{bannerData.advertisingLabel || 'Advertisement'}</Footnote>\n {bannerData.ageRestrictions && (\n <Footnote className={styles['PromoBanner__age']}>{bannerData.ageRestrictions}</Footnote>\n )}\n\n {!isCloseButtonHidden && (\n <div className={styles['PromoBanner__close']} onClick={onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n bannerData.iconLink && (\n <Image\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n data-testid={process.env.NODE_ENV === 'test' ? 'avatar' : undefined}\n />\n )\n }\n after={\n bannerData.ctaText && (\n <Button\n mode=\"outline\"\n data-testid={process.env.NODE_ENV === 'test' ? 'button-ctaText' : undefined}\n >\n {bannerData.ctaText}\n </Button>\n )\n }\n subtitle={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div className={styles['PromoBanner__pixels']}>\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </div>\n );\n};\n"],"names":["PromoBanner","warn","warnOnce","bannerData","onClose","isCloseButtonHidden","className","restProps","process","env","NODE_ENV","React","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","div","classNames","Footnote","advertisingLabel","ageRestrictions","Icon24Dismiss","SimpleCell","href","trackingLink","rel","target","before","iconLink","Image","size","src","alt","title","data-testid","undefined","after","ctaText","Button","mode","subtitle","domain","length","img"],"mappings":";;;;+BAwDaA;;;eAAAA;;;;;;;;;+DAxDU;qBACO;oBACH;wBACF;sBACF;qBACD;0BACK;wBACF;AAGzB,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AA8Cf,IAAMF,cAAc;mCACzBG,YAAAA,4CAAa,CAAC,uBACdC,iBAAAA,SACAC,6BAAAA,qBACAC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAIE,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1CT,KACE;IAEJ;IAEA,IAAwCU,qCAAAA,OAAMC,QAAQ,CAAC,SAAhDC,eAAiCF,oBAAnBG,kBAAmBH;IAExC,IAAMI,cAAcJ,OAAMK,OAAO,CAC/B;eACGb,WAAWc,UAAU,GAClBd,WAAWc,UAAU,CAACC,MAAM,CAAC,SAACC,KAAKC;mBAAU,4CAAKD,MAAK,uBAACC,KAAKC,IAAI,EAAGD,KAAKE,GAAG;WAAK,CAAC,KAClF,CAAC;OACP;QAACnB,WAAWc,UAAU;KAAC;IAGzB,IAAMM,UAAUZ,OAAMa,WAAW,CAC/B;eAAMV,gBAAgBC,YAAYU,KAAK,IAAI;OAC3C;QAACV,YAAYU,KAAK;KAAC;IAGrBd,OAAMe,SAAS,CAAC;QACd,IAAIX,YAAYY,eAAe,EAAE;YAC/Bb,gBAAgBC,YAAYY,eAAe;QAC7C;IACF,GAAG;QAACZ,YAAYY,eAAe;KAAC;IAEhC,qBACE,qBAACC;QAAItB,WAAWuB,IAAAA,gBAAU,qBAAwBvB;OAAgBC,0BAChE,qBAACqB;QAAItB,SAAS;qBACZ,qBAACwB,kBAAQ,QAAE3B,WAAW4B,gBAAgB,IAAI,kBACzC5B,WAAW6B,eAAe,kBACzB,qBAACF,kBAAQ;QAACxB,SAAS;OAA+BH,WAAW6B,eAAe,GAG7E,CAAC3B,qCACA,qBAACuB;QAAItB,SAAS;QAAgCiB,SAASnB;qBACrD,qBAAC6B,oBAAa,yBAIpB,qBAACC,sBAAU;QACTC,MAAMhC,WAAWiC,YAAY;QAC7Bb,SAASA;QACTc,KAAI;QACJC,QAAO;QACPC,QACEpC,WAAWqC,QAAQ,kBACjB,qBAACC,YAAK;YACJC,MAAM;YACNC,KAAKxC,WAAWqC,QAAQ;YACxBI,KAAKzC,WAAW0C,KAAK;YACrBC,eAAatC,QAAQC,GAAG,CAACC,QAAQ,KAAK,SAAS,WAAWqC;;QAIhEC,OACE7C,WAAW8C,OAAO,kBAChB,qBAACC,cAAM;YACLC,MAAK;YACLL,eAAatC,QAAQC,GAAG,CAACC,QAAQ,KAAK,SAAS,mBAAmBqC;WAEjE5C,WAAW8C,OAAO;QAIzBG,UAAUjD,WAAWkD,MAAM;OAE1BlD,WAAW0C,KAAK,GAGlBhC,aAAayC,MAAM,GAAG,mBACrB,qBAAC1B;QAAItB,SAAS;qBACZ,qBAACiD;QAAIZ,KAAK9B;QAAc+B,KAAI;;AAKtC"}
1
+ {"version":3,"sources":["../../../../src/components/PromoBanner/PromoBanner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { Button } from '../Button/Button';\nimport { Image } from '../Image/Image';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { SimpleCell } from '../SimpleCell/SimpleCell';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './PromoBanner.module.css';\n\nconst warn = warnOnce('PromoBanner');\n\ntype StatsType =\n | 'playbackStarted' // Начало показа\n | 'click'; // Клик по баннеру\n\ntype BannerData = {\n title?: string;\n url_types?: string;\n bannerID?: string;\n imageWidth?: number;\n imageHeight?: number;\n imageLink?: string;\n trackingLink?: string;\n type?: string;\n iconWidth?: number;\n domain?: string;\n ctaText?: string;\n advertisingLabel?: string;\n iconLink?: string;\n statistics?: Array<{ type: StatsType; url: string }>;\n openInBrowser?: boolean;\n iconHeight?: number;\n directLink?: boolean;\n navigationType?: string;\n description?: string;\n ageRestrictions?: string;\n};\n\nexport interface PromoBannerProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /** Данные рекламного баннера, полученные из VKWebAppGetAds */\n bannerData: BannerData;\n /** Флаг скрытия кнопки закрытия рекламы */\n isCloseButtonHidden?: boolean;\n /** Хандлер закрытия рекламы */\n onClose: () => void;\n}\n\n// TODO [>=6]: Удалить компонент\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PromoBanner\n * @deprecated v5.3.1\n *\n * Используйте событие [VKWebAppShowBannerAd](https://dev.vk.com/mini-apps/monetization/ad/banners)\n */\nexport const PromoBanner = ({\n bannerData = {},\n onClose,\n isCloseButtonHidden,\n ...restProps\n}: PromoBannerProps) => {\n if (process.env.NODE_ENV === 'development') {\n warn(\n 'Компонент устарел и будет удален в v6. Используйте событие VKWebAppShowBannerAd https://dev.vk.com/mini-apps/monetization/ad/banners',\n );\n }\n\n const [currentPixel, setCurrentPixel] = React.useState('');\n\n const statsPixels = React.useMemo(\n () =>\n (bannerData.statistics\n ? bannerData.statistics.reduce((acc, item) => ({ ...acc, [item.type]: item.url }), {})\n : {}) as Record<StatsType, string | void>,\n [bannerData.statistics],\n );\n\n const onClick = React.useCallback(\n () => setCurrentPixel(statsPixels.click || ''),\n [statsPixels.click],\n );\n\n React.useEffect(() => {\n if (statsPixels.playbackStarted) {\n setCurrentPixel(statsPixels.playbackStarted);\n }\n }, [statsPixels.playbackStarted]);\n\n return (\n <RootComponent baseClassName={styles['PromoBanner']} {...restProps}>\n <div className={styles['PromoBanner__head']}>\n <Footnote>{bannerData.advertisingLabel || 'Advertisement'}</Footnote>\n {bannerData.ageRestrictions && (\n <Footnote className={styles['PromoBanner__age']}>{bannerData.ageRestrictions}</Footnote>\n )}\n\n {!isCloseButtonHidden && (\n <div className={styles['PromoBanner__close']} onClick={onClose}>\n <Icon24Dismiss />\n </div>\n )}\n </div>\n <SimpleCell\n href={bannerData.trackingLink}\n onClick={onClick}\n rel=\"nofollow noopener noreferrer\"\n target=\"_blank\"\n before={\n bannerData.iconLink && (\n <Image\n size={48}\n src={bannerData.iconLink}\n alt={bannerData.title}\n data-testid={process.env.NODE_ENV === 'test' ? 'avatar' : undefined}\n />\n )\n }\n after={\n bannerData.ctaText && (\n <Button\n mode=\"outline\"\n data-testid={process.env.NODE_ENV === 'test' ? 'button-ctaText' : undefined}\n >\n {bannerData.ctaText}\n </Button>\n )\n }\n subtitle={bannerData.domain}\n >\n {bannerData.title}\n </SimpleCell>\n\n {currentPixel.length > 0 && (\n <div className={styles['PromoBanner__pixels']}>\n <img src={currentPixel} alt=\"\" />\n </div>\n )}\n </RootComponent>\n );\n};\n"],"names":["PromoBanner","warn","warnOnce","bannerData","onClose","isCloseButtonHidden","restProps","process","env","NODE_ENV","React","useState","currentPixel","setCurrentPixel","statsPixels","useMemo","statistics","reduce","acc","item","type","url","onClick","useCallback","click","useEffect","playbackStarted","RootComponent","baseClassName","div","className","Footnote","advertisingLabel","ageRestrictions","Icon24Dismiss","SimpleCell","href","trackingLink","rel","target","before","iconLink","Image","size","src","alt","title","data-testid","undefined","after","ctaText","Button","mode","subtitle","domain","length","img"],"mappings":";;;;+BAyDaA;;;eAAAA;;;;;;;;;+DAzDU;qBACO;wBACL;sBAEF;qBACD;6BACQ;0BACH;wBACF;AAGzB,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AA8Cf,IAAMF,cAAc;mCACzBG,YAAAA,4CAAa,CAAC,uBACdC,iBAAAA,SACAC,6BAAAA,qBACGC;QAHHH;QACAC;QACAC;;IAGA,IAAIE,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1CR,KACE;IAEJ;IAEA,IAAwCS,qCAAAA,OAAMC,QAAQ,CAAC,SAAhDC,eAAiCF,oBAAnBG,kBAAmBH;IAExC,IAAMI,cAAcJ,OAAMK,OAAO,CAC/B;eACGZ,WAAWa,UAAU,GAClBb,WAAWa,UAAU,CAACC,MAAM,CAAC,SAACC,KAAKC;mBAAU,4CAAKD,MAAK,uBAACC,KAAKC,IAAI,EAAGD,KAAKE,GAAG;WAAK,CAAC,KAClF,CAAC;OACP;QAAClB,WAAWa,UAAU;KAAC;IAGzB,IAAMM,UAAUZ,OAAMa,WAAW,CAC/B;eAAMV,gBAAgBC,YAAYU,KAAK,IAAI;OAC3C;QAACV,YAAYU,KAAK;KAAC;IAGrBd,OAAMe,SAAS,CAAC;QACd,IAAIX,YAAYY,eAAe,EAAE;YAC/Bb,gBAAgBC,YAAYY,eAAe;QAC7C;IACF,GAAG;QAACZ,YAAYY,eAAe;KAAC;IAEhC,qBACE,qBAACC,4BAAa;QAACC,aAAa;OAA6BtB,0BACvD,qBAACuB;QAAIC,SAAS;qBACZ,qBAACC,kBAAQ,QAAE5B,WAAW6B,gBAAgB,IAAI,kBACzC7B,WAAW8B,eAAe,kBACzB,qBAACF,kBAAQ;QAACD,SAAS;OAA+B3B,WAAW8B,eAAe,GAG7E,CAAC5B,qCACA,qBAACwB;QAAIC,SAAS;QAAgCR,SAASlB;qBACrD,qBAAC8B,oBAAa,yBAIpB,qBAACC,sBAAU;QACTC,MAAMjC,WAAWkC,YAAY;QAC7Bf,SAASA;QACTgB,KAAI;QACJC,QAAO;QACPC,QACErC,WAAWsC,QAAQ,kBACjB,qBAACC,YAAK;YACJC,MAAM;YACNC,KAAKzC,WAAWsC,QAAQ;YACxBI,KAAK1C,WAAW2C,KAAK;YACrBC,eAAaxC,QAAQC,GAAG,CAACC,QAAQ,KAAK,SAAS,WAAWuC;;QAIhEC,OACE9C,WAAW+C,OAAO,kBAChB,qBAACC,cAAM;YACLC,MAAK;YACLL,eAAaxC,QAAQC,GAAG,CAACC,QAAQ,KAAK,SAAS,mBAAmBuC;WAEjE7C,WAAW+C,OAAO;QAIzBG,UAAUlD,WAAWmD,MAAM;OAE1BnD,WAAW2C,KAAK,GAGlBlC,aAAa2C,MAAM,GAAG,mBACrB,qBAAC1B;QAAIC,SAAS;qBACZ,qBAAC0B;QAAIZ,KAAKhC;QAAciC,KAAI;;AAKtC"}
@@ -6,6 +6,31 @@ import { TouchProps } from '../Touch/Touch';
6
6
  export interface PullToRefreshProps extends DOMProps, TouchProps, HasChildren {
7
7
  /**
8
8
  * Будет вызвана для обновления контента (прим.: функция должна быть мемоизированным коллбэком)
9
+ *
10
+ * > ⚠️ **Для разработчиков VK Mini Apps**
11
+ * >
12
+ * > Сейчас метод под конец выполнения вызывает `runTapticImpactOccurred()`.
13
+ * >
14
+ * > В **v6** нужно будет самостоятельно вызывать эту функцию в вашем обработчике `onRefresh()`.
15
+ * > (см. https://github.com/VKCOM/VKUI/issues/5049). Функцию можете импортировать её из
16
+ * > бибилиотеки `@vkontakte/vk-bridge-react`.
17
+ * >
18
+ * > Чтобы подготовить ваше мини-приложение к обновлению до **v6**, в рамках **v5** вы уже можете
19
+ * > вызывать `runTapticImpactOccurred()`, но с одним условием: вы должны вернуть результат
20
+ * > выполнения функции, чтобы исключить двойной вызов. Результат функции — `boolean`. Если
21
+ * > вернётся `true`, значит, вызывать `runTapticImpactOccurred()` снова со стороны **VKUI** —
22
+ * > не нужно.
23
+ * >
24
+ * > ```jsx
25
+ * > const onRefresh = React.useCallback(() => {
26
+ * > // ...
27
+ * > return runTapticImpactOccurred();
28
+ * > }, []);
29
+ * >
30
+ * > // <PullToRefresh onRefresh={onRefresh} />
31
+ * > ```
32
+ * >
33
+ * > Соответственно, в **v6** ничего возвращать уже не потребуется.
9
34
  */
10
35
  onRefresh: AnyFunction;
11
36
  /**
@@ -132,8 +132,11 @@ var PullToRefresh = function(_param) {
132
132
  setSpinnerY(function(prevSpinnerY) {
133
133
  return platform === _platform.Platform.IOS ? prevSpinnerY : initParams.refreshing;
134
134
  });
135
- onRefresh();
136
- (0, _taptic.runTapticImpactOccurred)("light");
135
+ var runTapticImpactOccurredCalled = onRefresh();
136
+ // TODO [>=6]: удалить блок кода (#5049)
137
+ if (!runTapticImpactOccurredCalled) {
138
+ (0, _taptic.runTapticImpactOccurred)("light");
139
+ }
137
140
  }
138
141
  }, [
139
142
  refreshing,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PullToRefresh/PullToRefresh.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { DOMProps, useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { runTapticImpactOccurred } from '../../lib/taptic';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { AnyFunction, HasChildren } from '../../types';\nimport { ScrollContextInterface, useScroll } from '../AppRoot/ScrollContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { Touch, TouchEvent, TouchProps } from '../Touch/Touch';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { PullToRefreshSpinner } from './PullToRefreshSpinner';\nimport styles from './PullToRefresh.module.css';\n\nfunction cancelEvent(event: any) {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault && event.cancelable) {\n event.preventDefault();\n }\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n return false;\n}\n\nexport interface PullToRefreshProps extends DOMProps, TouchProps, HasChildren {\n /**\n * Будет вызвана для обновления контента (прим.: функция должна быть мемоизированным коллбэком)\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n}\n\nconst TOUCH_MOVE_EVENT_PARAMS = {\n cancelable: true,\n passive: false,\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PullToRefresh\n */\nexport const PullToRefresh = ({\n children,\n isFetching,\n onRefresh,\n className,\n ...restProps\n}: PullToRefreshProps) => {\n const platform = usePlatform();\n const scroll = useScroll();\n const { document } = useDOM();\n const prevIsFetching = usePrevious(isFetching);\n\n const initParams = React.useMemo(\n () => ({\n start: platform === Platform.IOS ? -10 : -45,\n max: platform === Platform.IOS ? 50 : 80,\n maxY: platform === Platform.IOS ? 400 : 80,\n refreshing: platform === Platform.IOS ? 36 : 50,\n positionMultiplier: platform === Platform.IOS ? 0.21 : 1,\n }),\n [platform],\n );\n\n const [spinnerY, setSpinnerY] = React.useState(initParams.start);\n const [watching, setWatching] = React.useState(false);\n const [refreshing, setRefreshing] = React.useState(false);\n const [canRefresh, setCanRefresh] = React.useState(false);\n const [touchDown, setTouchDown] = React.useState(false);\n const prevTouchDown = usePrevious(touchDown);\n\n const touchY = React.useRef(0);\n const [contentShift, setContentShift] = React.useState(0);\n const [spinnerProgress, setSpinnerProgress] = React.useState(0);\n\n const onWindowTouchMove = (event: Event) => {\n if (refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n useGlobalEventListener(document, 'touchmove', onWindowTouchMove, TOUCH_MOVE_EVENT_PARAMS);\n\n const resetRefreshingState = React.useCallback(() => {\n setWatching(false);\n setCanRefresh(false);\n setRefreshing(false);\n setSpinnerY(initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }, [initParams]);\n\n const onRefreshingFinish = React.useCallback(() => {\n if (!touchDown) {\n resetRefreshingState();\n }\n }, [touchDown, resetRefreshingState]);\n\n const { set: setWaitFetchingTimeout, clear: clearWaitFetchingTimeout } = useTimeout(\n onRefreshingFinish,\n 1000,\n );\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && prevIsFetching && !isFetching) {\n onRefreshingFinish();\n }\n }, [prevIsFetching, isFetching, onRefreshingFinish]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && !prevIsFetching && isFetching) {\n clearWaitFetchingTimeout();\n }\n }, [isFetching, prevIsFetching, clearWaitFetchingTimeout]);\n\n const runRefreshing = React.useCallback(() => {\n if (!refreshing && onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n setWaitFetchingTimeout();\n\n setRefreshing(true);\n setSpinnerY((prevSpinnerY) =>\n platform === Platform.IOS ? prevSpinnerY : initParams.refreshing,\n );\n\n onRefresh();\n runTapticImpactOccurred('light');\n }\n }, [refreshing, onRefresh, setWaitFetchingTimeout, platform, initParams.refreshing]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevTouchDown !== undefined && prevTouchDown && !touchDown) {\n if (!refreshing && canRefresh) {\n runRefreshing();\n } else if (refreshing && !isFetching) {\n // only iOS can start refresh before gesture end\n resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n setSpinnerY(refreshing ? initParams.refreshing : initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }\n }\n }, [\n initParams,\n prevIsFetching,\n isFetching,\n onRefreshingFinish,\n prevTouchDown,\n touchDown,\n refreshing,\n canRefresh,\n runRefreshing,\n ]);\n\n const onTouchStart = (e: TouchEvent) => {\n if (refreshing) {\n cancelEvent(e);\n }\n setTouchDown(true);\n };\n\n const onTouchMove = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = initParams;\n const pageYOffset = scroll?.getScroll().y;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier, maxY } = initParams;\n\n const shift = Math.max(0, shiftY - touchY.current);\n\n const currentY = clamp(start + shift * positionMultiplier, start, maxY);\n const progress = currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n setSpinnerY(currentY);\n setSpinnerProgress(clamp(progress, 0, 80));\n setCanRefresh(progress > 80);\n setContentShift((currentY + 10) * 2.3);\n\n if (progress > 85 && !refreshing && platform === Platform.IOS) {\n runRefreshing();\n }\n } else if (isY && pageYOffset === 0 && shiftY > 0 && !refreshing && touchDown) {\n cancelEvent(e);\n\n touchY.current = shiftY;\n setWatching(true);\n setSpinnerY(start);\n setSpinnerProgress(0);\n }\n };\n\n const onTouchEnd = () => {\n setWatching(false);\n setTouchDown(false);\n };\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = '';\n\n if (platform === Platform.IOS && refreshing && !touchDown) {\n contentTransform = 'translate3d(0, 100px, 0)';\n } else if (platform === Platform.IOS && (contentShift || refreshing)) {\n contentTransform = `translate3d(0, ${contentShift}px, 0)`;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <Touch\n {...restProps}\n onStart={onTouchStart}\n onMove={onTouchMove}\n onEnd={onTouchEnd}\n className={classNames(\n styles['PullToRefresh'],\n platform === Platform.IOS && styles['PullToRefresh--ios'],\n watching && styles['PullToRefresh--watching'],\n refreshing && styles['PullToRefresh--refreshing'],\n className,\n )}\n >\n <FixedLayout className={styles['PullToRefresh__controls']} useParentWidth>\n <PullToRefreshSpinner\n style={{\n transform: spinnerTransform,\n WebkitTransform: spinnerTransform,\n opacity: watching || refreshing || canRefresh ? 1 : 0,\n }}\n on={refreshing}\n progress={refreshing ? undefined : spinnerProgress}\n />\n </FixedLayout>\n\n <div\n className={styles['PullToRefresh__content']}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n};\n"],"names":["PullToRefresh","cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","TOUCH_MOVE_EVENT_PARAMS","passive","children","isFetching","onRefresh","className","restProps","platform","usePlatform","scroll","useScroll","document","useDOM","prevIsFetching","usePrevious","initParams","React","useMemo","start","Platform","IOS","max","maxY","refreshing","positionMultiplier","useState","spinnerY","setSpinnerY","watching","setWatching","setRefreshing","canRefresh","setCanRefresh","touchDown","setTouchDown","prevTouchDown","touchY","useRef","contentShift","setContentShift","spinnerProgress","setSpinnerProgress","onWindowTouchMove","useGlobalEventListener","resetRefreshingState","useCallback","onRefreshingFinish","useTimeout","set","setWaitFetchingTimeout","clear","clearWaitFetchingTimeout","useIsomorphicLayoutEffect","undefined","runRefreshing","prevSpinnerY","runTapticImpactOccurred","onTouchStart","e","onTouchMove","isY","shiftY","pageYOffset","getScroll","y","shift","Math","current","currentY","clamp","progress","abs","onTouchEnd","spinnerTransform","contentTransform","TouchRootContext","Provider","value","Touch","onStart","onMove","onEnd","classNames","FixedLayout","useParentWidth","PullToRefreshSpinner","style","transform","WebkitTransform","opacity","on","div"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/PullToRefresh/PullToRefresh.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { DOMProps, useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { runTapticImpactOccurred } from '../../lib/taptic';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { AnyFunction, HasChildren } from '../../types';\nimport { ScrollContextInterface, useScroll } from '../AppRoot/ScrollContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { Touch, TouchEvent, TouchProps } from '../Touch/Touch';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { PullToRefreshSpinner } from './PullToRefreshSpinner';\nimport styles from './PullToRefresh.module.css';\n\nfunction cancelEvent(event: any) {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault && event.cancelable) {\n event.preventDefault();\n }\n if (event.stopPropagation) {\n event.stopPropagation();\n }\n return false;\n}\n\nexport interface PullToRefreshProps extends DOMProps, TouchProps, HasChildren {\n /**\n * Будет вызвана для обновления контента (прим.: функция должна быть мемоизированным коллбэком)\n *\n * > ⚠️ **Для разработчиков VK Mini Apps**\n * >\n * > Сейчас метод под конец выполнения вызывает `runTapticImpactOccurred()`.\n * >\n * > В **v6** нужно будет самостоятельно вызывать эту функцию в вашем обработчике `onRefresh()`.\n * > (см. https://github.com/VKCOM/VKUI/issues/5049). Функцию можете импортировать её из\n * > бибилиотеки `@vkontakte/vk-bridge-react`.\n * >\n * > Чтобы подготовить ваше мини-приложение к обновлению до **v6**, в рамках **v5** вы уже можете\n * > вызывать `runTapticImpactOccurred()`, но с одним условием: вы должны вернуть результат\n * > выполнения функции, чтобы исключить двойной вызов. Результат функции — `boolean`. Если\n * > вернётся `true`, значит, вызывать `runTapticImpactOccurred()` снова со стороны **VKUI** —\n * > не нужно.\n * >\n * > ```jsx\n * > const onRefresh = React.useCallback(() => {\n * > // ...\n * > return runTapticImpactOccurred();\n * > }, []);\n * >\n * > // <PullToRefresh onRefresh={onRefresh} />\n * > ```\n * >\n * > Соответственно, в **v6** ничего возвращать уже не потребуется.\n */\n onRefresh: AnyFunction;\n /**\n * Определяет, выполняется ли обновление. Для скрытия спиннера после получения контента необходимо передать `false`\n */\n isFetching?: boolean;\n /** @ignore */\n scroll?: ScrollContextInterface;\n}\n\nconst TOUCH_MOVE_EVENT_PARAMS = {\n cancelable: true,\n passive: false,\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PullToRefresh\n */\nexport const PullToRefresh = ({\n children,\n isFetching,\n onRefresh,\n className,\n ...restProps\n}: PullToRefreshProps) => {\n const platform = usePlatform();\n const scroll = useScroll();\n const { document } = useDOM();\n const prevIsFetching = usePrevious(isFetching);\n\n const initParams = React.useMemo(\n () => ({\n start: platform === Platform.IOS ? -10 : -45,\n max: platform === Platform.IOS ? 50 : 80,\n maxY: platform === Platform.IOS ? 400 : 80,\n refreshing: platform === Platform.IOS ? 36 : 50,\n positionMultiplier: platform === Platform.IOS ? 0.21 : 1,\n }),\n [platform],\n );\n\n const [spinnerY, setSpinnerY] = React.useState(initParams.start);\n const [watching, setWatching] = React.useState(false);\n const [refreshing, setRefreshing] = React.useState(false);\n const [canRefresh, setCanRefresh] = React.useState(false);\n const [touchDown, setTouchDown] = React.useState(false);\n const prevTouchDown = usePrevious(touchDown);\n\n const touchY = React.useRef(0);\n const [contentShift, setContentShift] = React.useState(0);\n const [spinnerProgress, setSpinnerProgress] = React.useState(0);\n\n const onWindowTouchMove = (event: Event) => {\n if (refreshing) {\n event.preventDefault();\n event.stopPropagation();\n }\n };\n\n useGlobalEventListener(document, 'touchmove', onWindowTouchMove, TOUCH_MOVE_EVENT_PARAMS);\n\n const resetRefreshingState = React.useCallback(() => {\n setWatching(false);\n setCanRefresh(false);\n setRefreshing(false);\n setSpinnerY(initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }, [initParams]);\n\n const onRefreshingFinish = React.useCallback(() => {\n if (!touchDown) {\n resetRefreshingState();\n }\n }, [touchDown, resetRefreshingState]);\n\n const { set: setWaitFetchingTimeout, clear: clearWaitFetchingTimeout } = useTimeout(\n onRefreshingFinish,\n 1000,\n );\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && prevIsFetching && !isFetching) {\n onRefreshingFinish();\n }\n }, [prevIsFetching, isFetching, onRefreshingFinish]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevIsFetching !== undefined && !prevIsFetching && isFetching) {\n clearWaitFetchingTimeout();\n }\n }, [isFetching, prevIsFetching, clearWaitFetchingTimeout]);\n\n const runRefreshing = React.useCallback(() => {\n if (!refreshing && onRefresh) {\n // cleanup if the consumer does not start fetching in 1s\n setWaitFetchingTimeout();\n\n setRefreshing(true);\n setSpinnerY((prevSpinnerY) =>\n platform === Platform.IOS ? prevSpinnerY : initParams.refreshing,\n );\n\n const runTapticImpactOccurredCalled = onRefresh();\n // TODO [>=6]: удалить блок кода (#5049)\n if (!runTapticImpactOccurredCalled) {\n runTapticImpactOccurred('light');\n }\n }\n }, [refreshing, onRefresh, setWaitFetchingTimeout, platform, initParams.refreshing]);\n\n useIsomorphicLayoutEffect(() => {\n if (prevTouchDown !== undefined && prevTouchDown && !touchDown) {\n if (!refreshing && canRefresh) {\n runRefreshing();\n } else if (refreshing && !isFetching) {\n // only iOS can start refresh before gesture end\n resetRefreshingState();\n } else {\n // refreshing && isFetching: refresh in progress\n // OR !refreshing && !canRefresh: pull was not strong enough\n setSpinnerY(refreshing ? initParams.refreshing : initParams.start);\n setSpinnerProgress(0);\n setContentShift(0);\n }\n }\n }, [\n initParams,\n prevIsFetching,\n isFetching,\n onRefreshingFinish,\n prevTouchDown,\n touchDown,\n refreshing,\n canRefresh,\n runRefreshing,\n ]);\n\n const onTouchStart = (e: TouchEvent) => {\n if (refreshing) {\n cancelEvent(e);\n }\n setTouchDown(true);\n };\n\n const onTouchMove = (e: TouchEvent) => {\n const { isY, shiftY } = e;\n const { start, max } = initParams;\n const pageYOffset = scroll?.getScroll().y;\n\n if (watching && touchDown) {\n cancelEvent(e);\n\n const { positionMultiplier, maxY } = initParams;\n\n const shift = Math.max(0, shiftY - touchY.current);\n\n const currentY = clamp(start + shift * positionMultiplier, start, maxY);\n const progress = currentY > -10 ? Math.abs((currentY + 10) / max) * 80 : 0;\n\n setSpinnerY(currentY);\n setSpinnerProgress(clamp(progress, 0, 80));\n setCanRefresh(progress > 80);\n setContentShift((currentY + 10) * 2.3);\n\n if (progress > 85 && !refreshing && platform === Platform.IOS) {\n runRefreshing();\n }\n } else if (isY && pageYOffset === 0 && shiftY > 0 && !refreshing && touchDown) {\n cancelEvent(e);\n\n touchY.current = shiftY;\n setWatching(true);\n setSpinnerY(start);\n setSpinnerProgress(0);\n }\n };\n\n const onTouchEnd = () => {\n setWatching(false);\n setTouchDown(false);\n };\n\n const spinnerTransform = `translate3d(0, ${spinnerY}px, 0)`;\n let contentTransform = '';\n\n if (platform === Platform.IOS && refreshing && !touchDown) {\n contentTransform = 'translate3d(0, 100px, 0)';\n } else if (platform === Platform.IOS && (contentShift || refreshing)) {\n contentTransform = `translate3d(0, ${contentShift}px, 0)`;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <Touch\n {...restProps}\n onStart={onTouchStart}\n onMove={onTouchMove}\n onEnd={onTouchEnd}\n className={classNames(\n styles['PullToRefresh'],\n platform === Platform.IOS && styles['PullToRefresh--ios'],\n watching && styles['PullToRefresh--watching'],\n refreshing && styles['PullToRefresh--refreshing'],\n className,\n )}\n >\n <FixedLayout className={styles['PullToRefresh__controls']} useParentWidth>\n <PullToRefreshSpinner\n style={{\n transform: spinnerTransform,\n WebkitTransform: spinnerTransform,\n opacity: watching || refreshing || canRefresh ? 1 : 0,\n }}\n on={refreshing}\n progress={refreshing ? undefined : spinnerProgress}\n />\n </FixedLayout>\n\n <div\n className={styles['PullToRefresh__content']}\n style={{\n transform: contentTransform,\n WebkitTransform: contentTransform,\n }}\n >\n {children}\n </div>\n </Touch>\n </TouchRootContext.Provider>\n );\n};\n"],"names":["PullToRefresh","cancelEvent","event","originalEvent","preventDefault","cancelable","stopPropagation","TOUCH_MOVE_EVENT_PARAMS","passive","children","isFetching","onRefresh","className","restProps","platform","usePlatform","scroll","useScroll","document","useDOM","prevIsFetching","usePrevious","initParams","React","useMemo","start","Platform","IOS","max","maxY","refreshing","positionMultiplier","useState","spinnerY","setSpinnerY","watching","setWatching","setRefreshing","canRefresh","setCanRefresh","touchDown","setTouchDown","prevTouchDown","touchY","useRef","contentShift","setContentShift","spinnerProgress","setSpinnerProgress","onWindowTouchMove","useGlobalEventListener","resetRefreshingState","useCallback","onRefreshingFinish","useTimeout","set","setWaitFetchingTimeout","clear","clearWaitFetchingTimeout","useIsomorphicLayoutEffect","undefined","runRefreshing","prevSpinnerY","runTapticImpactOccurredCalled","runTapticImpactOccurred","onTouchStart","e","onTouchMove","isY","shiftY","pageYOffset","getScroll","y","shift","Math","current","currentY","clamp","progress","abs","onTouchEnd","spinnerTransform","contentTransform","TouchRootContext","Provider","value","Touch","onStart","onMove","onEnd","classNames","FixedLayout","useParentWidth","PullToRefreshSpinner","style","transform","WebkitTransform","opacity","on","div"],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import * as React from 'react';
2
- export interface PullToRefreshSpinnerProps extends React.HTMLAttributes<HTMLDivElement> {
3
- 'size'?: number;
4
- 'strokeWidth'?: number;
5
- 'on'?: boolean;
6
- 'progress'?: number;
7
- 'aria-label'?: string;
2
+ import { HTMLAttributesWithRootRef } from '../../types';
3
+ export interface PullToRefreshSpinnerProps extends HTMLAttributesWithRootRef<HTMLDivElement> {
4
+ size?: number;
5
+ strokeWidth?: number;
6
+ on?: boolean;
7
+ progress?: number;
8
8
  }
9
- export declare const PullToRefreshSpinner: ({ on, size, strokeWidth, style, progress, "aria-label": ariaLabel, }: PullToRefreshSpinnerProps) => React.JSX.Element;
9
+ export declare const PullToRefreshSpinner: ({ on, size, strokeWidth, progress, "aria-label": ariaLabel, ...restProps }: PullToRefreshSpinnerProps) => React.JSX.Element;
@@ -9,23 +9,31 @@ Object.defineProperty(exports, "PullToRefreshSpinner", {
9
9
  }
10
10
  });
11
11
  var _interop_require_wildcard = require("@swc/helpers/_/_interop_require_wildcard");
12
+ var _object_spread = require("@swc/helpers/_/_object_spread");
13
+ var _object_without_properties = require("@swc/helpers/_/_object_without_properties");
12
14
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
13
15
  var _vkjs = require("@vkontakte/vkjs");
16
+ var _RootComponent = require("../RootComponent/RootComponent");
14
17
  function calcStrokeDashOffset(value, radius) {
15
18
  var progress = value / 100;
16
19
  return 2 * Math.PI * radius * (1 - progress);
17
20
  }
18
- var PullToRefreshSpinner = function(param) {
19
- var _param_on = param.on, on = _param_on === void 0 ? true : _param_on, _param_size = param.size, size = _param_size === void 0 ? 24 : _param_size, _param_strokeWidth = param.strokeWidth, strokeWidth = _param_strokeWidth === void 0 ? 2.5 : _param_strokeWidth, style = param.style, _param_progress = param.progress, progress = _param_progress === void 0 ? 0 : _param_progress, tmp = param["aria-label"], ariaLabel = tmp === void 0 ? "Пожалуйста, подождите..." : tmp;
21
+ var PullToRefreshSpinner = function(_param) {
22
+ var _param_on = _param.on, on = _param_on === void 0 ? true : _param_on, _param_size = _param.size, size = _param_size === void 0 ? 24 : _param_size, _param_strokeWidth = _param.strokeWidth, strokeWidth = _param_strokeWidth === void 0 ? 2.5 : _param_strokeWidth, _param_progress = _param.progress, progress = _param_progress === void 0 ? 0 : _param_progress, tmp = _param["aria-label"], ariaLabel = tmp === void 0 ? "Пожалуйста, подождите..." : tmp, restProps = _object_without_properties._(_param, [
23
+ "on",
24
+ "size",
25
+ "strokeWidth",
26
+ "progress",
27
+ "aria-label"
28
+ ]);
20
29
  var radius = 0.5 * size - 0.5 * strokeWidth;
21
30
  var dasharray = 2 * Math.PI * radius;
22
31
  var circleCenter = 0.5 * size;
23
32
  var dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);
24
- return /*#__PURE__*/ _react.createElement("div", {
25
- className: (0, _vkjs.classNames)("vkuiPullToRefresh__spinner", on && "vkuiPullToRefresh__spinner--on"),
26
- style: style,
33
+ return /*#__PURE__*/ _react.createElement(_RootComponent.RootComponent, _object_spread._({
34
+ baseClassName: (0, _vkjs.classNames)("vkuiPullToRefresh__spinner", on && "vkuiPullToRefresh__spinner--on"),
27
35
  "aria-label": on ? ariaLabel : undefined
28
- }, /*#__PURE__*/ _react.createElement("svg", {
36
+ }, restProps), /*#__PURE__*/ _react.createElement("svg", {
29
37
  role: "presentation",
30
38
  className: "vkuiPullToRefresh__spinner-self",
31
39
  style: {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PullToRefresh/PullToRefreshSpinner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './PullToRefresh.module.css';\n\nfunction calcStrokeDashOffset(value: number, radius: number) {\n const progress = value / 100;\n return 2 * Math.PI * radius * (1 - progress);\n}\n\nexport interface PullToRefreshSpinnerProps extends React.HTMLAttributes<HTMLDivElement> {\n 'size'?: number;\n 'strokeWidth'?: number;\n 'on'?: boolean;\n 'progress'?: number;\n 'aria-label'?: string;\n}\n\nexport const PullToRefreshSpinner = ({\n on = true,\n size = 24,\n strokeWidth = 2.5,\n style,\n progress = 0,\n 'aria-label': ariaLabel = 'Пожалуйста, подождите...',\n}: PullToRefreshSpinnerProps) => {\n const radius = 0.5 * size - 0.5 * strokeWidth;\n const dasharray = 2 * Math.PI * radius;\n const circleCenter = 0.5 * size;\n\n const dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);\n\n return (\n <div\n className={classNames(\n styles['PullToRefresh__spinner'],\n on && styles['PullToRefresh__spinner--on'],\n )}\n style={style}\n aria-label={on ? ariaLabel : undefined}\n >\n <svg\n role=\"presentation\"\n className={styles['PullToRefresh__spinner-self']}\n style={{\n width: size,\n height: size,\n }}\n viewBox={`0 0 ${size} ${size}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g\n style={{\n width: size,\n height: size,\n transformOrigin: `${circleCenter}px ${circleCenter}px`,\n }}\n >\n <circle\n className={styles['PullToRefresh__spinner-path']}\n fill=\"none\"\n strokeDasharray={dasharray}\n strokeDashoffset={dashoffset}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={circleCenter}\n cy={circleCenter}\n r={radius}\n />\n </g>\n </svg>\n </div>\n );\n};\n"],"names":["PullToRefreshSpinner","calcStrokeDashOffset","value","radius","progress","Math","PI","on","size","strokeWidth","style","ariaLabel","dasharray","circleCenter","dashoffset","div","className","classNames","aria-label","undefined","svg","role","width","height","viewBox","xmlns","g","transformOrigin","circle","fill","strokeDasharray","strokeDashoffset","strokeLinecap","cx","cy","r"],"mappings":";;;;+BAiBaA;;;eAAAA;;;;+DAjBU;oBACI;AAG3B,SAASC,qBAAqBC,KAAa,EAAEC,MAAc;IACzD,IAAMC,WAAWF,QAAQ;IACzB,OAAO,IAAIG,KAAKC,EAAE,GAAGH,SAAU,CAAA,IAAIC,QAAO;AAC5C;AAUO,IAAMJ,uBAAuB;0BAClCO,IAAAA,4BAAK,sCACLC,MAAAA,gCAAO,6CACPC,aAAAA,8CAAc,0BACdC,cAAAA,+BACAN,UAAAA,wCAAW,qBACGO,YAAd,eAAcA,YAAAA,iBAAY,6BAAZA;IAEd,IAAMR,SAAS,MAAMK,OAAO,MAAMC;IAClC,IAAMG,YAAY,IAAIP,KAAKC,EAAE,GAAGH;IAChC,IAAMU,eAAe,MAAML;IAE3B,IAAMM,aAAab,qBAAqBM,KAAK,KAAKH,UAAUD;IAE5D,qBACE,qBAACY;QACCC,WAAWC,IAAAA,gBAAU,gCAEnBV;QAEFG,OAAOA;QACPQ,cAAYX,KAAKI,YAAYQ;qBAE7B,qBAACC;QACCC,MAAK;QACLL,SAAS;QACTN,OAAO;YACLY,OAAOd;YACPe,QAAQf;QACV;QACAgB,SAAS,AAAC,OAAchB,OAARA,MAAK,KAAQ,OAALA;QACxBiB,OAAM;qBAEN,qBAACC;QACChB,OAAO;YACLY,OAAOd;YACPe,QAAQf;YACRmB,iBAAiB,AAAC,GAAoBd,OAAlBA,cAAa,OAAkB,OAAbA,cAAa;QACrD;qBAEA,qBAACe;QACCZ,SAAS;QACTa,MAAK;QACLC,iBAAiBlB;QACjBmB,kBAAkBjB;QAClBL,aAAaA;QACbuB,eAAc;QACdC,IAAIpB;QACJqB,IAAIrB;QACJsB,GAAGhC;;AAMf"}
1
+ {"version":3,"sources":["../../../../src/components/PullToRefresh/PullToRefreshSpinner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './PullToRefresh.module.css';\n\nfunction calcStrokeDashOffset(value: number, radius: number) {\n const progress = value / 100;\n return 2 * Math.PI * radius * (1 - progress);\n}\n\nexport interface PullToRefreshSpinnerProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n size?: number;\n strokeWidth?: number;\n on?: boolean;\n progress?: number;\n}\n\nexport const PullToRefreshSpinner = ({\n on = true,\n size = 24,\n strokeWidth = 2.5,\n progress = 0,\n 'aria-label': ariaLabel = 'Пожалуйста, подождите...',\n ...restProps\n}: PullToRefreshSpinnerProps) => {\n const radius = 0.5 * size - 0.5 * strokeWidth;\n const dasharray = 2 * Math.PI * radius;\n const circleCenter = 0.5 * size;\n\n const dashoffset = calcStrokeDashOffset(on ? 80 : progress, radius);\n\n return (\n <RootComponent\n baseClassName={classNames(\n styles['PullToRefresh__spinner'],\n on && styles['PullToRefresh__spinner--on'],\n )}\n aria-label={on ? ariaLabel : undefined}\n {...restProps}\n >\n <svg\n role=\"presentation\"\n className={styles['PullToRefresh__spinner-self']}\n style={{\n width: size,\n height: size,\n }}\n viewBox={`0 0 ${size} ${size}`}\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <g\n style={{\n width: size,\n height: size,\n transformOrigin: `${circleCenter}px ${circleCenter}px`,\n }}\n >\n <circle\n className={styles['PullToRefresh__spinner-path']}\n fill=\"none\"\n strokeDasharray={dasharray}\n strokeDashoffset={dashoffset}\n strokeWidth={strokeWidth}\n strokeLinecap=\"round\"\n cx={circleCenter}\n cy={circleCenter}\n r={radius}\n />\n </g>\n </svg>\n </RootComponent>\n );\n};\n"],"names":["PullToRefreshSpinner","calcStrokeDashOffset","value","radius","progress","Math","PI","on","size","strokeWidth","ariaLabel","restProps","dasharray","circleCenter","dashoffset","RootComponent","baseClassName","classNames","aria-label","undefined","svg","role","className","style","width","height","viewBox","xmlns","g","transformOrigin","circle","fill","strokeDasharray","strokeDashoffset","strokeLinecap","cx","cy","r"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;;;+DAlBU;oBACI;6BAEG;AAG9B,SAASC,qBAAqBC,KAAa,EAAEC,MAAc;IACzD,IAAMC,WAAWF,QAAQ;IACzB,OAAO,IAAIG,KAAKC,EAAE,GAAGH,SAAU,CAAA,IAAIC,QAAO;AAC5C;AASO,IAAMJ,uBAAuB;2BAClCO,IAAAA,4BAAK,uCACLC,MAAAA,gCAAO,8CACPC,aAAAA,8CAAc,mDACdL,UAAAA,wCAAW,qBACGM,aAAd,eAAcA,YAAAA,iBAAY,6BAAZA,KACXC;QALHJ;QACAC;QACAC;QACAL;QACA;;IAGA,IAAMD,SAAS,MAAMK,OAAO,MAAMC;IAClC,IAAMG,YAAY,IAAIP,KAAKC,EAAE,GAAGH;IAChC,IAAMU,eAAe,MAAML;IAE3B,IAAMM,aAAab,qBAAqBM,KAAK,KAAKH,UAAUD;IAE5D,qBACE,qBAACY,4BAAa;QACZC,eAAeC,IAAAA,gBAAU,gCAEvBV;QAEFW,cAAYX,KAAKG,YAAYS;OACzBR,0BAEJ,qBAACS;QACCC,MAAK;QACLC,SAAS;QACTC,OAAO;YACLC,OAAOhB;YACPiB,QAAQjB;QACV;QACAkB,SAAS,AAAC,OAAclB,OAARA,MAAK,KAAQ,OAALA;QACxBmB,OAAM;qBAEN,qBAACC;QACCL,OAAO;YACLC,OAAOhB;YACPiB,QAAQjB;YACRqB,iBAAiB,AAAC,GAAoBhB,OAAlBA,cAAa,OAAkB,OAAbA,cAAa;QACrD;qBAEA,qBAACiB;QACCR,SAAS;QACTS,MAAK;QACLC,iBAAiBpB;QACjBqB,kBAAkBnB;QAClBL,aAAaA;QACbyB,eAAc;QACdC,IAAItB;QACJuB,IAAIvB;QACJwB,GAAGlC;;AAMf"}
@@ -1,8 +1,9 @@
1
1
  import * as React from 'react';
2
- export interface RadioGroupProps extends React.HTMLAttributes<HTMLDivElement> {
2
+ import { HTMLAttributesWithRootRef } from '../../types';
3
+ export interface RadioGroupProps extends HTMLAttributesWithRootRef<HTMLDivElement> {
3
4
  mode?: 'vertical' | 'horizontal';
4
5
  }
5
6
  /**
6
7
  * @see https://vkcom.github.io/VKUI/#/RadioGroup
7
8
  */
8
- export declare const RadioGroup: ({ mode, children, className, ...restProps }: RadioGroupProps) => React.JSX.Element;
9
+ export declare const RadioGroup: ({ mode, ...restProps }: RadioGroupProps) => React.JSX.Element;
@@ -13,15 +13,14 @@ var _object_spread = require("@swc/helpers/_/_object_spread");
13
13
  var _object_without_properties = require("@swc/helpers/_/_object_without_properties");
14
14
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
15
15
  var _vkjs = require("@vkontakte/vkjs");
16
+ var _RootComponent = require("../RootComponent/RootComponent");
16
17
  var RadioGroup = function(_param) /*#__PURE__*/ {
17
- var _param_mode = _param.mode, mode = _param_mode === void 0 ? "vertical" : _param_mode, children = _param.children, className = _param.className, restProps = _object_without_properties._(_param, [
18
- "mode",
19
- "children",
20
- "className"
18
+ var _param_mode = _param.mode, mode = _param_mode === void 0 ? "vertical" : _param_mode, restProps = _object_without_properties._(_param, [
19
+ "mode"
21
20
  ]);
22
- return _react.createElement("div", _object_spread._({
23
- className: (0, _vkjs.classNames)("vkuiRadioGroup", "vkuiInternalRadioGroup", mode === "horizontal" && "vkuiRadioGroup--mode-horizontal", className)
24
- }, restProps), children);
21
+ return _react.createElement(_RootComponent.RootComponent, _object_spread._({
22
+ baseClassName: (0, _vkjs.classNames)("vkuiRadioGroup", "vkuiInternalRadioGroup", mode === "horizontal" && "vkuiRadioGroup--mode-horizontal")
23
+ }, restProps));
25
24
  };
26
25
 
27
26
  //# sourceMappingURL=RadioGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './RadioGroup.module.css';\n\nexport interface RadioGroupProps extends React.HTMLAttributes<HTMLDivElement> {\n mode?: 'vertical' | 'horizontal';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RadioGroup\n */\nexport const RadioGroup = ({\n mode = 'vertical',\n children,\n className,\n ...restProps\n}: RadioGroupProps) => (\n <div\n className={classNames(\n styles['RadioGroup'],\n 'vkuiInternalRadioGroup',\n mode === 'horizontal' && styles['RadioGroup--mode-horizontal'],\n className,\n )}\n {...restProps}\n >\n {children}\n </div>\n);\n"],"names":["RadioGroup","mode","children","className","restProps","div","classNames"],"mappings":";;;;+BAWaA;;;eAAAA;;;;;;+DAXU;oBACI;AAUpB,IAAMA,aAAa;6BACxBC,MAAAA,gCAAO,0BACPC,kBAAAA,UACAC,mBAAAA,WACGC;QAHHH;QACAC;QACAC;;WAGA,qBAACE;QACCF,WAAWG,IAAAA,gBAAU,oBAEnB,0BACAL,SAAS,mDACTE;OAEEC,YAEHF;AACE"}
1
+ {"version":3,"sources":["../../../../src/components/RadioGroup/RadioGroup.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './RadioGroup.module.css';\n\nexport interface RadioGroupProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n mode?: 'vertical' | 'horizontal';\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/RadioGroup\n */\nexport const RadioGroup = ({ mode = 'vertical', ...restProps }: RadioGroupProps) => (\n <RootComponent\n baseClassName={classNames(\n styles['RadioGroup'],\n 'vkuiInternalRadioGroup',\n mode === 'horizontal' && styles['RadioGroup--mode-horizontal'],\n )}\n {...restProps}\n />\n);\n"],"names":["RadioGroup","mode","restProps","RootComponent","baseClassName","classNames"],"mappings":";;;;+BAaaA;;;eAAAA;;;;;;+DAbU;oBACI;6BAEG;AAUvB,IAAMA,aAAa;6BAAGC,MAAAA,gCAAO,0BAAeC;QAAtBD;;WAC3B,qBAACE,4BAAa;QACZC,eAAeC,IAAAA,gBAAU,oBAEvB,0BACAJ,SAAS;OAEPC;AACL"}
@@ -1,5 +1,5 @@
1
1
  import * as React from 'react';
2
- import { HasRootRef } from '../../types';
2
+ import { HTMLAttributesWithRootRef } from '../../types';
3
3
  export interface RemovableProps {
4
4
  /**
5
5
  * iOS only. Текст в выезжающей кнопке для удаления ячейки.
@@ -10,7 +10,7 @@ export interface RemovableProps {
10
10
  */
11
11
  onRemove?: (e: React.MouseEvent, rootEl?: HTMLElement | null) => void;
12
12
  }
13
- interface RemovableOwnProps extends React.HTMLAttributes<HTMLDivElement>, RemovableProps, HasRootRef<HTMLDivElement> {
13
+ interface RemovableOwnProps extends HTMLAttributesWithRootRef<HTMLDivElement>, RemovableProps {
14
14
  /**
15
15
  * Расположение кнопки удаления.
16
16
  */
@@ -24,5 +24,5 @@ interface RemovableOwnProps extends React.HTMLAttributes<HTMLDivElement>, Remova
24
24
  /**
25
25
  * @see https://vkcom.github.io/VKUI/#/Removable
26
26
  */
27
- export declare const Removable: ({ getRootRef, children, onRemove, removePlaceholder, align, className, indent, ...restProps }: RemovableOwnProps) => React.JSX.Element;
27
+ export declare const Removable: ({ children, onRemove, removePlaceholder, align, indent, ...restProps }: RemovableOwnProps) => React.JSX.Element;
28
28
  export {};
@@ -16,13 +16,13 @@ var _sliced_to_array = require("@swc/helpers/_/_sliced_to_array");
16
16
  var _react = /*#__PURE__*/ _interop_require_wildcard._(require("react"));
17
17
  var _icons = require("@vkontakte/icons");
18
18
  var _vkjs = require("@vkontakte/vkjs");
19
- var _useExternRef = require("../../hooks/useExternRef");
20
19
  var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
21
20
  var _usePlatform = require("../../hooks/usePlatform");
22
21
  var _dom = require("../../lib/dom");
23
22
  var _platform = require("../../lib/platform");
24
23
  var _utils = require("../../lib/utils");
25
24
  var _IconButton = require("../IconButton/IconButton");
25
+ var _RootComponent = require("../RootComponent/RootComponent");
26
26
  var _Tappable = require("../Tappable/Tappable");
27
27
  /**
28
28
  * @see https://vkcom.github.io/VKUI/#/RemovableIos
@@ -88,25 +88,21 @@ var _Tappable = require("../Tappable/Tappable");
88
88
  }, removePlaceholder)));
89
89
  };
90
90
  var Removable = function(_param) {
91
- var getRootRef = _param.getRootRef, children = _param.children, _param_onRemove = _param.onRemove, onRemove = _param_onRemove === void 0 ? _vkjs.noop : _param_onRemove, _param_removePlaceholder = _param.removePlaceholder, removePlaceholder = _param_removePlaceholder === void 0 ? "Удалить" : _param_removePlaceholder, _param_align = _param.align, align = _param_align === void 0 ? "center" : _param_align, className = _param.className, _param_indent = _param.indent, indent = _param_indent === void 0 ? false : _param_indent, restProps = _object_without_properties._(_param, [
92
- "getRootRef",
91
+ var children = _param.children, _param_onRemove = _param.onRemove, onRemove = _param_onRemove === void 0 ? _vkjs.noop : _param_onRemove, _param_removePlaceholder = _param.removePlaceholder, removePlaceholder = _param_removePlaceholder === void 0 ? "Удалить" : _param_removePlaceholder, _param_align = _param.align, align = _param_align === void 0 ? "center" : _param_align, _param_indent = _param.indent, indent = _param_indent === void 0 ? false : _param_indent, restProps = _object_without_properties._(_param, [
93
92
  "children",
94
93
  "onRemove",
95
94
  "removePlaceholder",
96
95
  "align",
97
- "className",
98
96
  "indent"
99
97
  ]);
100
98
  var platform = (0, _usePlatform.usePlatform)();
101
- var ref = (0, _useExternRef.useExternRef)(getRootRef);
102
99
  var onRemoveClick = function(e) {
103
100
  e.preventDefault();
104
101
  onRemove(e);
105
102
  };
106
103
  var removePlaceholderString = (0, _utils.getTitleFromChildren)(removePlaceholder);
107
- return /*#__PURE__*/ _react.createElement("div", _object_spread_props._(_object_spread._({}, restProps), {
108
- ref: ref,
109
- className: (0, _vkjs.classNames)(platform === _platform.Platform.IOS && "vkuiRemovable--ios", align === "start" && "vkuiRemovable--align-start", indent && "vkuiRemovable--indent", className)
104
+ return /*#__PURE__*/ _react.createElement(_RootComponent.RootComponent, _object_spread_props._(_object_spread._({}, restProps), {
105
+ baseClassName: (0, _vkjs.classNames)(platform === _platform.Platform.IOS && "vkuiRemovable--ios", align === "start" && "vkuiRemovable--align-start", indent && "vkuiRemovable--indent")
110
106
  }), platform !== _platform.Platform.IOS && /*#__PURE__*/ _react.createElement("div", {
111
107
  className: (0, _vkjs.classNames)("vkuiRemovable__content", "vkuiInternalRemovable__content")
112
108
  }, children, /*#__PURE__*/ _react.createElement(_IconButton.IconButton, {