@vkontakte/vkui 5.5.4 → 5.6.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 (1179) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
  3. package/dist/cjs/components/Accordion/AccordionSummary.js.map +1 -1
  4. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  5. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  6. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  7. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  8. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -2
  9. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  10. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  11. package/dist/cjs/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  12. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  13. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  14. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  15. package/dist/cjs/components/AppRoot/AppRoot.js +6 -5
  16. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  17. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  18. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  19. package/dist/cjs/components/AppRoot/ScrollContext.js +5 -3
  20. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  21. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  22. package/dist/cjs/components/AspectRatio/AspectRatio.js.map +1 -1
  23. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  24. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  25. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  26. package/dist/cjs/components/Avatar/AvatarBadge/icons.js.map +1 -1
  27. package/dist/cjs/components/Avatar/helpers.js.map +1 -1
  28. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  29. package/dist/cjs/components/Banner/Banner.d.ts +5 -1
  30. package/dist/cjs/components/Banner/Banner.js +4 -3
  31. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  32. package/dist/cjs/components/BaseGallery/BaseGallery.js +15 -9
  33. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  34. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  35. package/dist/cjs/components/Button/Button.d.ts +2 -1
  36. package/dist/cjs/components/Button/Button.js +5 -3
  37. package/dist/cjs/components/Button/Button.js.map +1 -1
  38. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  39. package/dist/cjs/components/Calendar/Calendar.js +2 -1
  40. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  41. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -2
  42. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  43. package/dist/cjs/components/CalendarDays/CalendarDays.js +6 -5
  44. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  45. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  46. package/dist/cjs/components/CalendarRange/CalendarRange.js +16 -8
  47. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  48. package/dist/cjs/components/CalendarTime/CalendarTime.js +4 -2
  49. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  50. package/dist/cjs/components/Card/Card.js.map +1 -1
  51. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  52. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  53. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  54. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  55. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  56. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  57. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  58. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  59. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  60. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  61. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  62. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +10 -4
  63. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  64. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  65. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +20 -9
  66. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  67. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  68. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  69. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  70. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  71. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  72. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +2 -1
  73. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  74. package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  75. package/dist/cjs/components/CustomSelect/CustomSelect.js +15 -8
  76. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  77. package/dist/cjs/components/CustomSelect/CustomSelectClearButton.js.map +1 -1
  78. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -2
  79. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  80. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  81. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  82. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  83. package/dist/cjs/components/DatePicker/DatePicker.js +8 -5
  84. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  85. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +11 -7
  86. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  87. package/dist/cjs/components/Div/Div.js.map +1 -1
  88. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  89. package/dist/cjs/components/Epic/Epic.d.ts +1 -0
  90. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  91. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  92. package/dist/cjs/components/File/File.js.map +1 -1
  93. package/dist/cjs/components/FixedLayout/FixedLayout.js +2 -1
  94. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  95. package/dist/cjs/components/FocusTrap/FocusTrap.js +4 -3
  96. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  97. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  98. package/dist/cjs/components/Footer/Footer.js.map +1 -1
  99. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  100. package/dist/cjs/components/FormItem/FormItem.js +2 -1
  101. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  102. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  103. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  104. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  105. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  106. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  107. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  108. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  109. package/dist/cjs/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  110. package/dist/cjs/components/Group/Group.d.ts +8 -8
  111. package/dist/cjs/components/Group/Group.js +1 -1
  112. package/dist/cjs/components/Group/Group.js.map +1 -1
  113. package/dist/cjs/components/Header/Header.js.map +1 -1
  114. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  115. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  116. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.js +56 -0
  117. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  118. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +2 -2
  119. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  120. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  121. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  122. package/dist/cjs/components/Image/Image.js.map +1 -1
  123. package/dist/cjs/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  124. package/dist/cjs/components/ImageBase/ImageBase.js +4 -2
  125. package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
  126. package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  127. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  128. package/dist/cjs/components/ImageBase/context.js.map +1 -1
  129. package/dist/cjs/components/ImageBase/helpers.js.map +1 -1
  130. package/dist/cjs/components/ImageBase/validators.js +3 -4
  131. package/dist/cjs/components/ImageBase/validators.js.map +1 -1
  132. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  133. package/dist/cjs/components/Input/Input.js.map +1 -1
  134. package/dist/cjs/components/InputLike/InputLike.js +6 -4
  135. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  136. package/dist/cjs/components/InputLike/InputLikeDivider.js.map +1 -1
  137. package/dist/cjs/components/Link/Link.js.map +1 -1
  138. package/dist/cjs/components/List/List.js.map +1 -1
  139. package/dist/cjs/components/List/ListContext.js.map +1 -1
  140. package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
  141. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  142. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  143. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +9 -8
  144. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  145. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  146. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  147. package/dist/cjs/components/ModalPage/ModalPageContext.js.map +1 -1
  148. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  149. package/dist/cjs/components/ModalRoot/ModalRoot.js +21 -15
  150. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  151. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  152. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  153. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +12 -6
  154. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  155. package/dist/cjs/components/ModalRoot/types.d.ts +4 -2
  156. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  157. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  158. package/dist/cjs/components/ModalRoot/useModalRootContext.js.map +1 -1
  159. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  160. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  161. package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  162. package/dist/cjs/components/Pagination/Pagination.js +2 -1
  163. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  164. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  165. package/dist/cjs/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  166. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  167. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  168. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  169. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  170. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  171. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  172. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  173. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  174. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  175. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  176. package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
  177. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  178. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  179. package/dist/cjs/components/Popover/Popover.js.map +1 -1
  180. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  181. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  182. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  183. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  184. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -1
  185. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  186. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  187. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  188. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  189. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  190. package/dist/cjs/components/Removable/Removable.js +2 -2
  191. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  192. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  193. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  194. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  195. package/dist/cjs/components/Root/Root.d.ts +1 -0
  196. package/dist/cjs/components/Root/Root.js.map +1 -1
  197. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  198. package/dist/cjs/components/ScrollArrow/ScrollArrow.js.map +1 -1
  199. package/dist/cjs/components/Search/Search.js +2 -2
  200. package/dist/cjs/components/Search/Search.js.map +1 -1
  201. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  202. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  203. package/dist/cjs/components/Select/Select.js.map +1 -1
  204. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  205. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  206. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  207. package/dist/cjs/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  208. package/dist/cjs/components/SimpleCell/Chevron/Chevron.js +27 -0
  209. package/dist/cjs/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  210. package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +6 -2
  211. package/dist/cjs/components/SimpleCell/SimpleCell.js +16 -5
  212. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  213. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  214. package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  215. package/dist/cjs/components/Slider/helpers.js.map +1 -1
  216. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  217. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  218. package/dist/cjs/components/Spinner/Spinner.d.ts +2 -1
  219. package/dist/cjs/components/Spinner/Spinner.js +19 -4
  220. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  221. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  222. package/dist/cjs/components/SplitCol/SplitColContext.js.map +1 -1
  223. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  224. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  225. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  226. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  227. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  228. package/dist/cjs/components/TabbarItem/TabbarItem.js +1 -1
  229. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  230. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  231. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  232. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  233. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  234. package/dist/cjs/components/Textarea/Textarea.js +2 -1
  235. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  236. package/dist/cjs/components/Tooltip/Tooltip.js +4 -2
  237. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  238. package/dist/cjs/components/Tooltip/TooltipContainer.js.map +1 -1
  239. package/dist/cjs/components/Touch/Touch.js +1 -1
  240. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  241. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  242. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  243. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  244. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  245. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
  246. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  247. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  248. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  249. package/dist/cjs/components/Typography/Typography.js.map +1 -1
  250. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  251. package/dist/cjs/components/View/View.d.ts +1 -0
  252. package/dist/cjs/components/View/View.js +16 -8
  253. package/dist/cjs/components/View/View.js.map +1 -1
  254. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  255. package/dist/cjs/components/View/utils.js +2 -2
  256. package/dist/cjs/components/View/utils.js.map +1 -1
  257. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  258. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  259. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  260. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  261. package/dist/cjs/helpers/appearance.js.map +1 -1
  262. package/dist/cjs/helpers/generateVKUITokensClassName.js.map +1 -1
  263. package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
  264. package/dist/cjs/helpers/math.js.map +1 -1
  265. package/dist/cjs/helpers/range.js.map +1 -1
  266. package/dist/cjs/hoc/withContext.js.map +1 -1
  267. package/dist/cjs/hoc/withInsets.js.map +1 -1
  268. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  269. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  270. package/dist/cjs/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  271. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  272. package/dist/cjs/hooks/useAdaptivityConditionalRender/index.js.map +1 -1
  273. package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  274. package/dist/cjs/hooks/useAdaptivityHasHover.js.map +1 -1
  275. package/dist/cjs/hooks/useAdaptivityHasPointer.js.map +1 -1
  276. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  277. package/dist/cjs/hooks/useAppearance.js.map +1 -1
  278. package/dist/cjs/hooks/useAutoDetectAppearance.js +2 -1
  279. package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
  280. package/dist/cjs/hooks/useBooleanState.js.map +1 -1
  281. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -1
  282. package/dist/cjs/hooks/useCalendar.js +6 -3
  283. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  284. package/dist/cjs/hooks/useChipsInput.js +2 -1
  285. package/dist/cjs/hooks/useChipsInput.js.map +1 -1
  286. package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
  287. package/dist/cjs/hooks/useDateInput.js +5 -3
  288. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  289. package/dist/cjs/hooks/useEffectDev.js.map +1 -1
  290. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  291. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  292. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  293. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  294. package/dist/cjs/hooks/useFocusWithin.js.map +1 -1
  295. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  296. package/dist/cjs/hooks/useId.js.map +1 -1
  297. package/dist/cjs/hooks/useInsets.js.map +1 -1
  298. package/dist/cjs/hooks/useIsClient.js.map +1 -1
  299. package/dist/cjs/hooks/useKeyboard.js +4 -4
  300. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  301. package/dist/cjs/hooks/useKeyboardInputTracker.js.map +1 -1
  302. package/dist/cjs/hooks/useMediaQueries.js.map +1 -1
  303. package/dist/cjs/hooks/useObjectMemo.js.map +1 -1
  304. package/dist/cjs/hooks/useOrientationChange.js +1 -1
  305. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  306. package/dist/cjs/hooks/usePagination.js.map +1 -1
  307. package/dist/cjs/hooks/usePatchChildrenRef.js +2 -1
  308. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  309. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  310. package/dist/cjs/hooks/usePrevious.js.map +1 -1
  311. package/dist/cjs/hooks/useTimeout.js +2 -1
  312. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  313. package/dist/cjs/hooks/useTodayDate.js.map +1 -1
  314. package/dist/cjs/hooks/useWaitTransitionFinish.js +4 -2
  315. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  316. package/dist/cjs/index.d.ts +3 -1
  317. package/dist/cjs/index.js +4 -0
  318. package/dist/cjs/index.js.map +1 -1
  319. package/dist/cjs/lib/SSR.js.map +1 -1
  320. package/dist/cjs/lib/accessibility.js.map +1 -1
  321. package/dist/cjs/lib/adaptivity/constants.js.map +1 -1
  322. package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
  323. package/dist/cjs/lib/animate.js.map +1 -1
  324. package/dist/cjs/lib/browser.js.map +1 -1
  325. package/dist/cjs/lib/calendar.js.map +1 -1
  326. package/dist/cjs/lib/callMultiple.js.map +1 -1
  327. package/dist/cjs/lib/date.js.map +1 -1
  328. package/dist/cjs/lib/dom.js.map +1 -1
  329. package/dist/cjs/lib/floating/adapters.js.map +1 -1
  330. package/dist/cjs/lib/floating/functions.js.map +1 -1
  331. package/dist/cjs/lib/floating/index.js.map +1 -1
  332. package/dist/cjs/lib/fx.js.map +1 -1
  333. package/dist/cjs/lib/getNavId.js.map +1 -1
  334. package/dist/cjs/lib/isRefObject.js.map +1 -1
  335. package/dist/cjs/lib/matchMedia.js.map +1 -1
  336. package/dist/cjs/lib/offset.js +6 -5
  337. package/dist/cjs/lib/offset.js.map +1 -1
  338. package/dist/cjs/lib/platform.js.map +1 -1
  339. package/dist/cjs/lib/polyfills.js.map +1 -1
  340. package/dist/cjs/lib/removeObjectKeys.js.map +1 -1
  341. package/dist/cjs/lib/select.js +2 -2
  342. package/dist/cjs/lib/select.js.map +1 -1
  343. package/dist/cjs/lib/styles.js.map +1 -1
  344. package/dist/cjs/lib/supportEvents.js.map +1 -1
  345. package/dist/cjs/lib/taptic.js.map +1 -1
  346. package/dist/cjs/lib/testing.js.map +1 -1
  347. package/dist/cjs/lib/tokensClassProvider.js.map +1 -1
  348. package/dist/cjs/lib/touch.js.map +1 -1
  349. package/dist/cjs/lib/useIsomorphicLayoutEffect.js.map +1 -1
  350. package/dist/cjs/lib/utils.js.map +1 -1
  351. package/dist/cjs/lib/warnOnce.js.map +1 -1
  352. package/dist/cjs/shared/breakpoints.js.map +1 -1
  353. package/dist/components/Accordion/Accordion.js.map +1 -1
  354. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  355. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  356. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  357. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -2
  358. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  359. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  360. package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  361. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  362. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  363. package/dist/components/Alert/Alert.js.map +1 -1
  364. package/dist/components/AppRoot/AppRoot.js +6 -5
  365. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  366. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  367. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  368. package/dist/components/AppRoot/ScrollContext.js +5 -3
  369. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  370. package/dist/components/Avatar/Avatar.js.map +1 -1
  371. package/dist/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  372. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  373. package/dist/components/Avatar/helpers.js.map +1 -1
  374. package/dist/components/Banner/Banner.d.ts +5 -1
  375. package/dist/components/Banner/Banner.js +4 -3
  376. package/dist/components/Banner/Banner.js.map +1 -1
  377. package/dist/components/BaseGallery/BaseGallery.js +15 -9
  378. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  379. package/dist/components/BaseGallery/helpers.js.map +1 -1
  380. package/dist/components/Button/Button.d.ts +2 -1
  381. package/dist/components/Button/Button.js +5 -3
  382. package/dist/components/Button/Button.js.map +1 -1
  383. package/dist/components/Calendar/Calendar.js +2 -1
  384. package/dist/components/Calendar/Calendar.js.map +1 -1
  385. package/dist/components/CalendarDay/CalendarDay.js +4 -2
  386. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  387. package/dist/components/CalendarDays/CalendarDays.js +6 -5
  388. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  389. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  390. package/dist/components/CalendarRange/CalendarRange.js +16 -8
  391. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  392. package/dist/components/CalendarTime/CalendarTime.js +4 -2
  393. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  394. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  395. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  396. package/dist/components/Cell/Cell.js.map +1 -1
  397. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  398. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  399. package/dist/components/Cell/useDraggable.js.map +1 -1
  400. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  401. package/dist/components/Chip/Chip.js.map +1 -1
  402. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  403. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  404. package/dist/components/ChipsInputBase/ChipsInputBase.js +10 -4
  405. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  406. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  407. package/dist/components/ChipsSelect/ChipsSelect.js +20 -9
  408. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  409. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  410. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  411. package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  412. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  413. package/dist/components/Counter/Counter.js.map +1 -1
  414. package/dist/components/CustomScrollView/CustomScrollView.js +2 -1
  415. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  416. package/dist/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  417. package/dist/components/CustomSelect/CustomSelect.js +15 -8
  418. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  419. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -2
  420. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  421. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  422. package/dist/components/DateInput/DateInput.js +4 -2
  423. package/dist/components/DateInput/DateInput.js.map +1 -1
  424. package/dist/components/DatePicker/DatePicker.js +8 -5
  425. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  426. package/dist/components/DateRangeInput/DateRangeInput.js +11 -7
  427. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  428. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  429. package/dist/components/Epic/Epic.d.ts +1 -0
  430. package/dist/components/Epic/Epic.js.map +1 -1
  431. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  432. package/dist/components/File/File.js.map +1 -1
  433. package/dist/components/FixedLayout/FixedLayout.js +2 -1
  434. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  435. package/dist/components/FocusTrap/FocusTrap.js +4 -3
  436. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  437. package/dist/components/FormField/FormField.js.map +1 -1
  438. package/dist/components/FormItem/FormItem.js +2 -1
  439. package/dist/components/FormItem/FormItem.js.map +1 -1
  440. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  441. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  442. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  443. package/dist/components/Gallery/Gallery.js.map +1 -1
  444. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  445. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  446. package/dist/components/Group/Group.d.ts +8 -8
  447. package/dist/components/Group/Group.js +1 -1
  448. package/dist/components/Group/Group.js.map +1 -1
  449. package/dist/components/Header/Header.js.map +1 -1
  450. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  451. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.js +45 -0
  452. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  453. package/dist/components/HorizontalScroll/HorizontalScroll.js +2 -2
  454. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  455. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  456. package/dist/components/IconButton/IconButton.js.map +1 -1
  457. package/dist/components/Image/Image.js.map +1 -1
  458. package/dist/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  459. package/dist/components/ImageBase/ImageBase.js +4 -2
  460. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  461. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  462. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  463. package/dist/components/ImageBase/context.js.map +1 -1
  464. package/dist/components/ImageBase/helpers.js.map +1 -1
  465. package/dist/components/ImageBase/validators.js +3 -4
  466. package/dist/components/ImageBase/validators.js.map +1 -1
  467. package/dist/components/Input/Input.js.map +1 -1
  468. package/dist/components/InputLike/InputLike.js +6 -4
  469. package/dist/components/InputLike/InputLike.js.map +1 -1
  470. package/dist/components/Link/Link.js.map +1 -1
  471. package/dist/components/List/List.js.map +1 -1
  472. package/dist/components/List/ListContext.js.map +1 -1
  473. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  474. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  475. package/dist/components/ModalCardBase/ModalCardBase.js +9 -8
  476. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  477. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  478. package/dist/components/ModalPage/ModalPageContext.js.map +1 -1
  479. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  480. package/dist/components/ModalRoot/ModalRoot.js +21 -15
  481. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  482. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  483. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  484. package/dist/components/ModalRoot/ModalRootDesktop.js +12 -6
  485. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  486. package/dist/components/ModalRoot/types.d.ts +4 -2
  487. package/dist/components/ModalRoot/types.js.map +1 -1
  488. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  489. package/dist/components/ModalRoot/useModalRootContext.js.map +1 -1
  490. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  491. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  492. package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  493. package/dist/components/Pagination/Pagination.js +2 -1
  494. package/dist/components/Pagination/Pagination.js.map +1 -1
  495. package/dist/components/Panel/Panel.js.map +1 -1
  496. package/dist/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  497. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  498. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  499. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  500. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  501. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  502. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  503. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  504. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  505. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  506. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  507. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  508. package/dist/components/Popover/Popover.js.map +1 -1
  509. package/dist/components/Popper/Popper.js.map +1 -1
  510. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  511. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  512. package/dist/components/PullToRefresh/PullToRefresh.js +2 -1
  513. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  514. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  515. package/dist/components/Radio/Radio.js.map +1 -1
  516. package/dist/components/Removable/Removable.js +2 -2
  517. package/dist/components/Removable/Removable.js.map +1 -1
  518. package/dist/components/RichCell/RichCell.js.map +1 -1
  519. package/dist/components/Root/Root.d.ts +1 -0
  520. package/dist/components/Root/Root.js.map +1 -1
  521. package/dist/components/Search/Search.js +2 -2
  522. package/dist/components/Search/Search.js.map +1 -1
  523. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  524. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  525. package/dist/components/Select/Select.js.map +1 -1
  526. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  527. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  528. package/dist/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  529. package/dist/components/SimpleCell/Chevron/Chevron.js +16 -0
  530. package/dist/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  531. package/dist/components/SimpleCell/SimpleCell.d.ts +6 -2
  532. package/dist/components/SimpleCell/SimpleCell.js +16 -5
  533. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  534. package/dist/components/Slider/Slider.js.map +1 -1
  535. package/dist/components/Slider/helpers.js.map +1 -1
  536. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  537. package/dist/components/Spinner/Spinner.d.ts +2 -1
  538. package/dist/components/Spinner/Spinner.js +19 -4
  539. package/dist/components/Spinner/Spinner.js.map +1 -1
  540. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  541. package/dist/components/SplitCol/SplitColContext.js.map +1 -1
  542. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  543. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  544. package/dist/components/Switch/Switch.js.map +1 -1
  545. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  546. package/dist/components/TabbarItem/TabbarItem.js +1 -1
  547. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  548. package/dist/components/Tabs/Tabs.js.map +1 -1
  549. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  550. package/dist/components/Tappable/Tappable.js.map +1 -1
  551. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  552. package/dist/components/Textarea/Textarea.js +2 -1
  553. package/dist/components/Textarea/Textarea.js.map +1 -1
  554. package/dist/components/Tooltip/Tooltip.js +4 -2
  555. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  556. package/dist/components/Tooltip/TooltipContainer.js.map +1 -1
  557. package/dist/components/Touch/Touch.js +1 -1
  558. package/dist/components/Touch/Touch.js.map +1 -1
  559. package/dist/components/Touch/TouchContext.js.map +1 -1
  560. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  561. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  562. package/dist/components/Typography/Text/Text.js.map +1 -1
  563. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  564. package/dist/components/View/View.d.ts +1 -0
  565. package/dist/components/View/View.js +16 -8
  566. package/dist/components/View/View.js.map +1 -1
  567. package/dist/components/View/ViewInfinite.js.map +1 -1
  568. package/dist/components/View/utils.js +2 -2
  569. package/dist/components/View/utils.js.map +1 -1
  570. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  571. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  572. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  573. package/dist/components.css +10 -9
  574. package/dist/components.css.map +1 -1
  575. package/dist/components.js.tmp +3108 -2238
  576. package/dist/cssm/components/Accordion/Accordion.js +1 -1
  577. package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
  578. package/dist/cssm/components/Accordion/AccordionSummary.js +1 -1
  579. package/dist/cssm/components/Accordion/AccordionSummary.js.map +1 -1
  580. package/dist/cssm/components/ActionSheet/ActionSheet.js +2 -2
  581. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  582. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  583. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +3 -3
  584. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  585. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  586. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  587. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +3 -3
  588. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  589. package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js +2 -2
  590. package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  591. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  592. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +3 -3
  593. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  594. package/dist/cssm/components/Alert/Alert.js +6 -6
  595. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  596. package/dist/cssm/components/AppRoot/AppRoot.js +3 -3
  597. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  598. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  599. package/dist/cssm/components/AppRoot/AppRootPortal.js +2 -2
  600. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  601. package/dist/cssm/components/AppRoot/ScrollContext.js +5 -5
  602. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  603. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +1 -1
  604. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  605. package/dist/cssm/components/AspectRatio/AspectRatio.js +1 -1
  606. package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
  607. package/dist/cssm/components/Avatar/Avatar.js +1 -1
  608. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  609. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js +2 -2
  610. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  611. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +2 -2
  612. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  613. package/dist/cssm/components/Avatar/AvatarBadge/icons.js +2 -2
  614. package/dist/cssm/components/Avatar/AvatarBadge/icons.js.map +1 -1
  615. package/dist/cssm/components/Avatar/helpers.js.map +1 -1
  616. package/dist/cssm/components/Badge/Badge.js +1 -1
  617. package/dist/cssm/components/Badge/Badge.js.map +1 -1
  618. package/dist/cssm/components/Banner/Banner.d.ts +5 -1
  619. package/dist/cssm/components/Banner/Banner.js +2 -2
  620. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  621. package/dist/cssm/components/Banner/Banner.module.css +6 -1
  622. package/dist/cssm/components/BaseGallery/BaseGallery.js +3 -3
  623. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  624. package/dist/cssm/components/BaseGallery/helpers.js +4 -4
  625. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  626. package/dist/cssm/components/Button/Button.d.ts +2 -1
  627. package/dist/cssm/components/Button/Button.js +4 -3
  628. package/dist/cssm/components/Button/Button.js.map +1 -1
  629. package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -1
  630. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  631. package/dist/cssm/components/Calendar/Calendar.js +2 -2
  632. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  633. package/dist/cssm/components/CalendarDay/CalendarDay.js +2 -2
  634. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  635. package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -2
  636. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  637. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +7 -7
  638. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  639. package/dist/cssm/components/CalendarRange/CalendarRange.js +2 -2
  640. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  641. package/dist/cssm/components/CalendarTime/CalendarTime.js +1 -1
  642. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  643. package/dist/cssm/components/Card/Card.js +1 -1
  644. package/dist/cssm/components/Card/Card.js.map +1 -1
  645. package/dist/cssm/components/CardGrid/CardGrid.js +2 -2
  646. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  647. package/dist/cssm/components/CardScroll/CardScroll.js +2 -2
  648. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  649. package/dist/cssm/components/Cell/Cell.js +3 -3
  650. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  651. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  652. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  653. package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -1
  654. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  655. package/dist/cssm/components/Cell/useDraggable.js +1 -1
  656. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  657. package/dist/cssm/components/CellButton/CellButton.js +1 -1
  658. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  659. package/dist/cssm/components/Checkbox/Checkbox.js +3 -3
  660. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  661. package/dist/cssm/components/Chip/Chip.js +2 -2
  662. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  663. package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
  664. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  665. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  666. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +9 -5
  667. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  668. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  669. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +13 -5
  670. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  671. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +2 -2
  672. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  673. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  674. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  675. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  676. package/dist/cssm/components/ContentCard/ContentCard.js +3 -3
  677. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  678. package/dist/cssm/components/Counter/Counter.js +1 -1
  679. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  680. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +3 -3
  681. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  682. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js +1 -1
  683. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  684. package/dist/cssm/components/CustomSelect/CustomSelect.js +4 -4
  685. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  686. package/dist/cssm/components/CustomSelect/CustomSelectClearButton.js +1 -1
  687. package/dist/cssm/components/CustomSelect/CustomSelectClearButton.js.map +1 -1
  688. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -2
  689. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  690. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +2 -2
  691. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  692. package/dist/cssm/components/DateInput/DateInput.js +3 -3
  693. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  694. package/dist/cssm/components/DatePicker/DatePicker.js +8 -8
  695. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  696. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +3 -3
  697. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  698. package/dist/cssm/components/Div/Div.js +1 -1
  699. package/dist/cssm/components/Div/Div.js.map +1 -1
  700. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +2 -2
  701. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  702. package/dist/cssm/components/Epic/Epic.d.ts +1 -0
  703. package/dist/cssm/components/Epic/Epic.js +1 -1
  704. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  705. package/dist/cssm/components/Epic/ScrollSaver.js +2 -2
  706. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  707. package/dist/cssm/components/File/File.js +1 -1
  708. package/dist/cssm/components/File/File.js.map +1 -1
  709. package/dist/cssm/components/FixedLayout/FixedLayout.js +3 -3
  710. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  711. package/dist/cssm/components/FocusTrap/FocusTrap.js +4 -4
  712. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  713. package/dist/cssm/components/FocusVisible/FocusVisible.js +1 -1
  714. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  715. package/dist/cssm/components/Footer/Footer.js +1 -1
  716. package/dist/cssm/components/Footer/Footer.js.map +1 -1
  717. package/dist/cssm/components/FormField/FormField.js +2 -2
  718. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  719. package/dist/cssm/components/FormItem/FormItem.js +2 -2
  720. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  721. package/dist/cssm/components/FormLayout/FormLayout.js +1 -1
  722. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  723. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -2
  724. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  725. package/dist/cssm/components/FormStatus/FormStatus.js +1 -1
  726. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  727. package/dist/cssm/components/Gallery/Gallery.js +1 -1
  728. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  729. package/dist/cssm/components/Gradient/Gradient.js +1 -1
  730. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  731. package/dist/cssm/components/GridAvatar/GridAvatar.js +1 -1
  732. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  733. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js +2 -2
  734. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  735. package/dist/cssm/components/Group/Group.d.ts +8 -8
  736. package/dist/cssm/components/Group/Group.js +4 -4
  737. package/dist/cssm/components/Group/Group.js.map +1 -1
  738. package/dist/cssm/components/Group/Group.module.css +2 -0
  739. package/dist/cssm/components/Header/Header.js +2 -2
  740. package/dist/cssm/components/Header/Header.js.map +1 -1
  741. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -3
  742. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  743. package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +0 -5
  744. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  745. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.js +35 -0
  746. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  747. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.module.css +47 -0
  748. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +2 -2
  749. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  750. package/dist/cssm/components/HoverPopper/HoverPopper.js +1 -1
  751. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  752. package/dist/cssm/components/IconButton/IconButton.js +2 -2
  753. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  754. package/dist/cssm/components/Image/Image.js +1 -1
  755. package/dist/cssm/components/Image/Image.js.map +1 -1
  756. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js +2 -2
  757. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  758. package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
  759. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  760. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +2 -2
  761. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  762. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +2 -2
  763. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  764. package/dist/cssm/components/ImageBase/context.js.map +1 -1
  765. package/dist/cssm/components/ImageBase/helpers.js.map +1 -1
  766. package/dist/cssm/components/ImageBase/validators.js +3 -4
  767. package/dist/cssm/components/ImageBase/validators.js.map +1 -1
  768. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  769. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  770. package/dist/cssm/components/Input/Input.js +2 -2
  771. package/dist/cssm/components/Input/Input.js.map +1 -1
  772. package/dist/cssm/components/InputLike/InputLike.js +1 -1
  773. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  774. package/dist/cssm/components/InputLike/InputLikeDivider.js +1 -1
  775. package/dist/cssm/components/InputLike/InputLikeDivider.js.map +1 -1
  776. package/dist/cssm/components/Link/Link.js +1 -1
  777. package/dist/cssm/components/Link/Link.js.map +1 -1
  778. package/dist/cssm/components/List/List.js +1 -1
  779. package/dist/cssm/components/List/List.js.map +1 -1
  780. package/dist/cssm/components/List/ListContext.js.map +1 -1
  781. package/dist/cssm/components/LocaleProvider/LocaleProvider.js +1 -1
  782. package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
  783. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
  784. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  785. package/dist/cssm/components/ModalCard/ModalCard.js +3 -3
  786. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  787. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +11 -10
  788. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  789. package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +4 -5
  790. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
  791. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  792. package/dist/cssm/components/ModalPage/ModalPage.js +4 -4
  793. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  794. package/dist/cssm/components/ModalPage/ModalPage.module.css +5 -1
  795. package/dist/cssm/components/ModalPage/ModalPageContext.js.map +1 -1
  796. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  797. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  798. package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -12
  799. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  800. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +1 -1
  801. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  802. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  803. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +7 -7
  804. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  805. package/dist/cssm/components/ModalRoot/types.d.ts +4 -2
  806. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  807. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  808. package/dist/cssm/components/ModalRoot/useModalRootContext.js.map +1 -1
  809. package/dist/cssm/components/ModalRoot/withModalRootContext.js +1 -1
  810. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  811. package/dist/cssm/components/NativeSelect/NativeSelect.js +2 -2
  812. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  813. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js +1 -1
  814. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  815. package/dist/cssm/components/Pagination/Pagination.js +2 -2
  816. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  817. package/dist/cssm/components/Panel/Panel.js +2 -2
  818. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  819. package/dist/cssm/components/PanelHeader/LegacyPanelHeaderContent.js +1 -1
  820. package/dist/cssm/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  821. package/dist/cssm/components/PanelHeader/PanelHeader.js +9 -9
  822. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  823. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -2
  824. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  825. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -2
  826. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  827. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  828. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  829. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +2 -2
  830. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  831. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  832. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  833. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  834. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  835. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  836. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  837. package/dist/cssm/components/PanelSpinner/PanelSpinner.js +1 -1
  838. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  839. package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
  840. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  841. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
  842. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  843. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +5 -5
  844. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  845. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +2 -2
  846. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  847. package/dist/cssm/components/Popover/Popover.js +3 -3
  848. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  849. package/dist/cssm/components/Popper/Popper.js +3 -3
  850. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  851. package/dist/cssm/components/PopperArrow/PopperArrow.js +1 -1
  852. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  853. package/dist/cssm/components/Progress/Progress.js +1 -1
  854. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  855. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -1
  856. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  857. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +6 -6
  858. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  859. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +1 -1
  860. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  861. package/dist/cssm/components/Radio/Radio.js +2 -2
  862. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  863. package/dist/cssm/components/RadioGroup/RadioGroup.js +1 -1
  864. package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
  865. package/dist/cssm/components/RangeSlider/RangeSlider.js +2 -2
  866. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  867. package/dist/cssm/components/Removable/Removable.js +4 -4
  868. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  869. package/dist/cssm/components/RichCell/RichCell.js +2 -2
  870. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  871. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +1 -1
  872. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  873. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -1
  874. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  875. package/dist/cssm/components/Root/Root.d.ts +1 -0
  876. package/dist/cssm/components/Root/Root.js +5 -5
  877. package/dist/cssm/components/Root/Root.js.map +1 -1
  878. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -1
  879. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  880. package/dist/cssm/components/ScrollArrow/ScrollArrow.js +3 -3
  881. package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
  882. package/dist/cssm/components/Search/Search.js +3 -3
  883. package/dist/cssm/components/Search/Search.js.map +1 -1
  884. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +3 -3
  885. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  886. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +3 -3
  887. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  888. package/dist/cssm/components/Select/Select.js +3 -3
  889. package/dist/cssm/components/Select/Select.js.map +1 -1
  890. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +2 -2
  891. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  892. package/dist/cssm/components/SelectTypography/SelectTypography.js +2 -2
  893. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  894. package/dist/cssm/components/Separator/Separator.js +1 -1
  895. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  896. package/dist/cssm/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  897. package/dist/cssm/components/SimpleCell/Chevron/Chevron.js +12 -0
  898. package/dist/cssm/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  899. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +6 -2
  900. package/dist/cssm/components/SimpleCell/SimpleCell.js +15 -5
  901. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  902. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +5 -6
  903. package/dist/cssm/components/Slider/Slider.js +7 -7
  904. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  905. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +2 -2
  906. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  907. package/dist/cssm/components/Slider/helpers.js.map +1 -1
  908. package/dist/cssm/components/Snackbar/Snackbar.js +4 -4
  909. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  910. package/dist/cssm/components/Spacing/Spacing.js +1 -1
  911. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  912. package/dist/cssm/components/Spinner/Spinner.d.ts +2 -1
  913. package/dist/cssm/components/Spinner/Spinner.js +19 -5
  914. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  915. package/dist/cssm/components/Spinner/Spinner.module.css +0 -19
  916. package/dist/cssm/components/SplitCol/SplitCol.js +3 -3
  917. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  918. package/dist/cssm/components/SplitCol/SplitColContext.js.map +1 -1
  919. package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
  920. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  921. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
  922. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  923. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +3 -3
  924. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  925. package/dist/cssm/components/Switch/Switch.js +3 -3
  926. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  927. package/dist/cssm/components/Tabbar/Tabbar.js +1 -1
  928. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  929. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -2
  930. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  931. package/dist/cssm/components/Tabs/Tabs.js +2 -2
  932. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  933. package/dist/cssm/components/TabsItem/TabsItem.js +3 -3
  934. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  935. package/dist/cssm/components/Tappable/Tappable.js +10 -10
  936. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  937. package/dist/cssm/components/Tappable/Tappable.module.css +2 -0
  938. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  939. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  940. package/dist/cssm/components/Textarea/Textarea.js +2 -2
  941. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  942. package/dist/cssm/components/Tooltip/Tooltip.js +5 -5
  943. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  944. package/dist/cssm/components/Tooltip/TooltipContainer.js +1 -1
  945. package/dist/cssm/components/Tooltip/TooltipContainer.js.map +1 -1
  946. package/dist/cssm/components/Touch/Touch.js +4 -4
  947. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  948. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  949. package/dist/cssm/components/Typography/Caption/Caption.js +1 -1
  950. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  951. package/dist/cssm/components/Typography/Footnote/Footnote.js +1 -1
  952. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  953. package/dist/cssm/components/Typography/Headline/Headline.js +2 -2
  954. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  955. package/dist/cssm/components/Typography/Paragraph/Paragraph.js +1 -1
  956. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
  957. package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -2
  958. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  959. package/dist/cssm/components/Typography/Text/Text.js +2 -2
  960. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  961. package/dist/cssm/components/Typography/Title/Title.js +1 -1
  962. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  963. package/dist/cssm/components/Typography/Typography.js +1 -1
  964. package/dist/cssm/components/Typography/Typography.js.map +1 -1
  965. package/dist/cssm/components/UsersStack/UsersStack.js +2 -2
  966. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  967. package/dist/cssm/components/View/View.d.ts +1 -0
  968. package/dist/cssm/components/View/View.js +3 -3
  969. package/dist/cssm/components/View/View.js.map +1 -1
  970. package/dist/cssm/components/View/ViewInfinite.js +2 -2
  971. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  972. package/dist/cssm/components/View/utils.js.map +1 -1
  973. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +1 -1
  974. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  975. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -1
  976. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  977. package/dist/cssm/components/WriteBar/WriteBar.js +1 -1
  978. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  979. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
  980. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  981. package/dist/cssm/helpers/appearance.js +1 -1
  982. package/dist/cssm/helpers/appearance.js.map +1 -1
  983. package/dist/cssm/helpers/generateVKUITokensClassName.js.map +1 -1
  984. package/dist/cssm/helpers/math.js.map +1 -1
  985. package/dist/cssm/helpers/range.js.map +1 -1
  986. package/dist/cssm/hoc/withContext.js.map +1 -1
  987. package/dist/cssm/hoc/withPlatform.js +1 -1
  988. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  989. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  990. package/dist/cssm/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  991. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  992. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +1 -1
  993. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  994. package/dist/cssm/hooks/useAdaptivityHasHover.js +1 -1
  995. package/dist/cssm/hooks/useAdaptivityHasHover.js.map +1 -1
  996. package/dist/cssm/hooks/useAdaptivityHasPointer.js +1 -1
  997. package/dist/cssm/hooks/useAdaptivityHasPointer.js.map +1 -1
  998. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +1 -1
  999. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1000. package/dist/cssm/hooks/useAppearance.js +1 -1
  1001. package/dist/cssm/hooks/useAppearance.js.map +1 -1
  1002. package/dist/cssm/hooks/useAutoDetectAppearance.js +2 -2
  1003. package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
  1004. package/dist/cssm/hooks/useBooleanState.js.map +1 -1
  1005. package/dist/cssm/hooks/useBridgeAdaptivity.js +2 -2
  1006. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -1
  1007. package/dist/cssm/hooks/useCalendar.js +1 -1
  1008. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  1009. package/dist/cssm/hooks/useChipsInput.js +1 -1
  1010. package/dist/cssm/hooks/useChipsInput.js.map +1 -1
  1011. package/dist/cssm/hooks/useChipsSelect.js +2 -2
  1012. package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
  1013. package/dist/cssm/hooks/useDateInput.js +4 -4
  1014. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  1015. package/dist/cssm/hooks/useEffectDev.js.map +1 -1
  1016. package/dist/cssm/hooks/useEnsuredControl.js +2 -2
  1017. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  1018. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  1019. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  1020. package/dist/cssm/hooks/useFocusVisible.js +1 -1
  1021. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  1022. package/dist/cssm/hooks/useFocusWithin.js +1 -1
  1023. package/dist/cssm/hooks/useFocusWithin.js.map +1 -1
  1024. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  1025. package/dist/cssm/hooks/useId.js.map +1 -1
  1026. package/dist/cssm/hooks/useInsets.js +2 -2
  1027. package/dist/cssm/hooks/useInsets.js.map +1 -1
  1028. package/dist/cssm/hooks/useIsClient.js.map +1 -1
  1029. package/dist/cssm/hooks/useKeyboard.js +2 -2
  1030. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  1031. package/dist/cssm/hooks/useKeyboardInputTracker.js +1 -1
  1032. package/dist/cssm/hooks/useKeyboardInputTracker.js.map +1 -1
  1033. package/dist/cssm/hooks/useMediaQueries.js +1 -1
  1034. package/dist/cssm/hooks/useMediaQueries.js.map +1 -1
  1035. package/dist/cssm/hooks/useObjectMemo.js.map +1 -1
  1036. package/dist/cssm/hooks/useOrientationChange.js +1 -1
  1037. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  1038. package/dist/cssm/hooks/usePagination.js +1 -1
  1039. package/dist/cssm/hooks/usePagination.js.map +1 -1
  1040. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1041. package/dist/cssm/hooks/usePlatform.js +1 -1
  1042. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  1043. package/dist/cssm/hooks/usePrevious.js.map +1 -1
  1044. package/dist/cssm/hooks/useTimeout.js +1 -1
  1045. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1046. package/dist/cssm/hooks/useTodayDate.js +1 -1
  1047. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  1048. package/dist/cssm/hooks/useWaitTransitionFinish.js +1 -1
  1049. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1050. package/dist/cssm/index.d.ts +3 -1
  1051. package/dist/cssm/index.js +1 -0
  1052. package/dist/cssm/index.js.map +1 -1
  1053. package/dist/cssm/lib/SSR.js +1 -1
  1054. package/dist/cssm/lib/SSR.js.map +1 -1
  1055. package/dist/cssm/lib/accessibility.js +2 -2
  1056. package/dist/cssm/lib/accessibility.js.map +1 -1
  1057. package/dist/cssm/lib/adaptivity/constants.js.map +1 -1
  1058. package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
  1059. package/dist/cssm/lib/animate.js +1 -1
  1060. package/dist/cssm/lib/animate.js.map +1 -1
  1061. package/dist/cssm/lib/browser.js +1 -1
  1062. package/dist/cssm/lib/browser.js.map +1 -1
  1063. package/dist/cssm/lib/calendar.js.map +1 -1
  1064. package/dist/cssm/lib/callMultiple.js.map +1 -1
  1065. package/dist/cssm/lib/date.js.map +1 -1
  1066. package/dist/cssm/lib/dom.js.map +1 -1
  1067. package/dist/cssm/lib/floating/adapters.js +1 -1
  1068. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  1069. package/dist/cssm/lib/floating/functions.js.map +1 -1
  1070. package/dist/cssm/lib/fx.js.map +1 -1
  1071. package/dist/cssm/lib/getNavId.js.map +1 -1
  1072. package/dist/cssm/lib/isRefObject.js.map +1 -1
  1073. package/dist/cssm/lib/matchMedia.js.map +1 -1
  1074. package/dist/cssm/lib/platform.js.map +1 -1
  1075. package/dist/cssm/lib/removeObjectKeys.js.map +1 -1
  1076. package/dist/cssm/lib/select.js.map +1 -1
  1077. package/dist/cssm/lib/styles.js.map +1 -1
  1078. package/dist/cssm/lib/supportEvents.js.map +1 -1
  1079. package/dist/cssm/lib/taptic.js.map +1 -1
  1080. package/dist/cssm/lib/testing.js.map +1 -1
  1081. package/dist/cssm/lib/tokensClassProvider.js +1 -1
  1082. package/dist/cssm/lib/tokensClassProvider.js.map +1 -1
  1083. package/dist/cssm/lib/touch.js.map +1 -1
  1084. package/dist/cssm/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1085. package/dist/cssm/lib/utils.js.map +1 -1
  1086. package/dist/cssm/lib/warnOnce.js.map +1 -1
  1087. package/dist/cssm/shared/breakpoints.js.map +1 -1
  1088. package/dist/cssm/styles/constants.css +3 -0
  1089. package/dist/cssm/styles/customMedias.generated.css +23 -0
  1090. package/dist/cssm/styles/themes.css +3 -3
  1091. package/dist/helpers/appearance.js.map +1 -1
  1092. package/dist/helpers/generateVKUITokensClassName.js.map +1 -1
  1093. package/dist/helpers/math.js.map +1 -1
  1094. package/dist/helpers/range.js.map +1 -1
  1095. package/dist/hoc/withContext.js.map +1 -1
  1096. package/dist/hooks/useAdaptivity.js.map +1 -1
  1097. package/dist/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  1098. package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1099. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1100. package/dist/hooks/useAdaptivityHasHover.js.map +1 -1
  1101. package/dist/hooks/useAdaptivityHasPointer.js.map +1 -1
  1102. package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1103. package/dist/hooks/useAutoDetectAppearance.js +2 -1
  1104. package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
  1105. package/dist/hooks/useBooleanState.js.map +1 -1
  1106. package/dist/hooks/useBridgeAdaptivity.js.map +1 -1
  1107. package/dist/hooks/useCalendar.js +6 -3
  1108. package/dist/hooks/useCalendar.js.map +1 -1
  1109. package/dist/hooks/useChipsInput.js +2 -1
  1110. package/dist/hooks/useChipsInput.js.map +1 -1
  1111. package/dist/hooks/useChipsSelect.js.map +1 -1
  1112. package/dist/hooks/useDateInput.js +5 -3
  1113. package/dist/hooks/useDateInput.js.map +1 -1
  1114. package/dist/hooks/useEffectDev.js.map +1 -1
  1115. package/dist/hooks/useEnsuredControl.js.map +1 -1
  1116. package/dist/hooks/useEventListener.js.map +1 -1
  1117. package/dist/hooks/useExternRef.js.map +1 -1
  1118. package/dist/hooks/useFocusVisible.js.map +1 -1
  1119. package/dist/hooks/useFocusWithin.js.map +1 -1
  1120. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  1121. package/dist/hooks/useId.js.map +1 -1
  1122. package/dist/hooks/useInsets.js.map +1 -1
  1123. package/dist/hooks/useIsClient.js.map +1 -1
  1124. package/dist/hooks/useKeyboard.js +4 -4
  1125. package/dist/hooks/useKeyboard.js.map +1 -1
  1126. package/dist/hooks/useKeyboardInputTracker.js.map +1 -1
  1127. package/dist/hooks/useMediaQueries.js.map +1 -1
  1128. package/dist/hooks/useObjectMemo.js.map +1 -1
  1129. package/dist/hooks/useOrientationChange.js +1 -1
  1130. package/dist/hooks/useOrientationChange.js.map +1 -1
  1131. package/dist/hooks/usePagination.js.map +1 -1
  1132. package/dist/hooks/usePatchChildrenRef.js +2 -1
  1133. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1134. package/dist/hooks/usePrevious.js.map +1 -1
  1135. package/dist/hooks/useTimeout.js +2 -1
  1136. package/dist/hooks/useTimeout.js.map +1 -1
  1137. package/dist/hooks/useTodayDate.js.map +1 -1
  1138. package/dist/hooks/useWaitTransitionFinish.js +4 -2
  1139. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1140. package/dist/index.d.ts +3 -1
  1141. package/dist/index.js +1 -0
  1142. package/dist/index.js.map +1 -1
  1143. package/dist/lib/SSR.js.map +1 -1
  1144. package/dist/lib/accessibility.js.map +1 -1
  1145. package/dist/lib/adaptivity/constants.js.map +1 -1
  1146. package/dist/lib/adaptivity/functions.js.map +1 -1
  1147. package/dist/lib/animate.js.map +1 -1
  1148. package/dist/lib/browser.js.map +1 -1
  1149. package/dist/lib/calendar.js.map +1 -1
  1150. package/dist/lib/callMultiple.js.map +1 -1
  1151. package/dist/lib/date.js.map +1 -1
  1152. package/dist/lib/dom.js.map +1 -1
  1153. package/dist/lib/floating/adapters.js.map +1 -1
  1154. package/dist/lib/floating/functions.js.map +1 -1
  1155. package/dist/lib/fx.js.map +1 -1
  1156. package/dist/lib/getNavId.js.map +1 -1
  1157. package/dist/lib/isRefObject.js.map +1 -1
  1158. package/dist/lib/matchMedia.js.map +1 -1
  1159. package/dist/lib/offset.js +6 -5
  1160. package/dist/lib/offset.js.map +1 -1
  1161. package/dist/lib/platform.js.map +1 -1
  1162. package/dist/lib/polyfills.js.map +1 -1
  1163. package/dist/lib/removeObjectKeys.js.map +1 -1
  1164. package/dist/lib/select.js +2 -2
  1165. package/dist/lib/select.js.map +1 -1
  1166. package/dist/lib/styles.js.map +1 -1
  1167. package/dist/lib/supportEvents.js.map +1 -1
  1168. package/dist/lib/taptic.js.map +1 -1
  1169. package/dist/lib/testing.js.map +1 -1
  1170. package/dist/lib/tokensClassProvider.js.map +1 -1
  1171. package/dist/lib/touch.js.map +1 -1
  1172. package/dist/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1173. package/dist/lib/utils.js.map +1 -1
  1174. package/dist/lib/warnOnce.js.map +1 -1
  1175. package/dist/shared/breakpoints.js.map +1 -1
  1176. package/dist/vkui.css +11 -10
  1177. package/dist/vkui.css.map +1 -1
  1178. package/dist/vkui.js.tmp +3108 -2238
  1179. package/package.json +8 -8
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  import { DOMContextInterface } from '../../lib/dom';
2
- import { HasChildren, HasPlatform } from '../../types';
3
+ import { HasPlatform } from '../../types';
3
4
  import { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';
4
5
  export declare enum ModalType {
5
6
  PAGE = "page",
@@ -60,8 +61,9 @@ export interface ModalsStateEntry extends ModalElements {
60
61
  collapsedRange?: TranslateRange;
61
62
  hiddenRange?: TranslateRange;
62
63
  }
63
- export interface ModalRootProps extends HasChildren {
64
+ export interface ModalRootProps {
64
65
  activeModal?: string | null;
66
+ children: React.ReactElement | Iterable<React.ReactElement>;
65
67
  /**
66
68
  * Будет вызвано при начале открытия активной модалки с её id
67
69
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ModalRoot/types.ts"],"sourcesContent":["import { DOMContextInterface } from '../../lib/dom';\nimport { HasChildren, HasPlatform } from '../../types';\nimport { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';\n\nexport enum ModalType {\n PAGE = 'page',\n CARD = 'card',\n}\n\nexport type TranslateRange = [number, number];\n\nexport type ModalsState = { [index: string]: ModalsStateEntry };\n\nexport interface ModalElements {\n modalElement?: HTMLElement | null;\n innerElement?: HTMLElement | null;\n headerElement?: HTMLElement | null;\n contentElement?: HTMLElement | null;\n}\n\nexport interface ModalsStateEntry extends ModalElements {\n id: string | null;\n /**\n * Событие начала открытия модалки.\n */\n onOpen?: VoidFunction;\n /**\n * Событие открытия модалки.\n */\n onOpened?: VoidFunction;\n /**\n * Событие начала закрытия модалки.\n */\n onClose?: VoidFunction;\n /**\n * Событие закрытия модалки.\n */\n onClosed?: VoidFunction;\n type?: ModalType;\n\n settlingHeight?: number;\n expandable?: boolean;\n\n /**\n * Процент текущего сдвига модалки\n */\n translateY?: number;\n /**\n * Процент сдвига модалки в изначальном состоянии\n */\n translateYFrom?: number;\n /**\n * Процент сдвига модалки во время взаимодействия с ней (потянуть, чтобы открыть или закрыть)\n */\n translateYCurrent?: number;\n\n touchStartContentScrollTop?: number;\n touchMovePositive?: boolean | null;\n touchShiftYPercent?: number;\n\n expanded?: boolean;\n collapsed?: boolean;\n hidden?: boolean;\n\n contentScrolled?: boolean;\n contentScrollStopTimeout?: ReturnType<typeof setTimeout>;\n\n expandedRange?: TranslateRange;\n collapsedRange?: TranslateRange;\n hiddenRange?: TranslateRange;\n}\n\nexport interface ModalRootProps extends HasChildren {\n activeModal?: string | null;\n\n /**\n * Будет вызвано при начале открытия активной модалки с её id\n */\n onOpen?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном открытии активной модалки с её id\n */\n onOpened?(modalId: string): void;\n\n /**\n * Будет вызвано при начале закрытия активной модалки с её id\n */\n onClose?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном закрытии активной модалки с её id\n */\n onClosed?(modalId: string): void;\n}\n\nexport interface ModalRootWithDOMProps extends HasPlatform, ModalRootProps, DOMContextInterface {\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n}\n"],"names":["ModalType","PAGE","CARD"],"mappings":";;;;;;;;;;IAIO;UAAKA,SAAS;IAATA,UACVC,UAAO;IADGD,UAEVE,UAAO;GAFGF,cAAAA"}
1
+ {"version":3,"sources":["../../../../src/components/ModalRoot/types.ts"],"sourcesContent":["import { DOMContextInterface } from '../../lib/dom';\nimport { HasPlatform } from '../../types';\nimport { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';\n\nexport enum ModalType {\n PAGE = 'page',\n CARD = 'card',\n}\n\nexport type TranslateRange = [number, number];\n\nexport type ModalsState = { [index: string]: ModalsStateEntry };\n\nexport interface ModalElements {\n modalElement?: HTMLElement | null;\n innerElement?: HTMLElement | null;\n headerElement?: HTMLElement | null;\n contentElement?: HTMLElement | null;\n}\n\nexport interface ModalsStateEntry extends ModalElements {\n id: string | null;\n /**\n * Событие начала открытия модалки.\n */\n onOpen?: VoidFunction;\n /**\n * Событие открытия модалки.\n */\n onOpened?: VoidFunction;\n /**\n * Событие начала закрытия модалки.\n */\n onClose?: VoidFunction;\n /**\n * Событие закрытия модалки.\n */\n onClosed?: VoidFunction;\n type?: ModalType;\n\n settlingHeight?: number;\n expandable?: boolean;\n\n /**\n * Процент текущего сдвига модалки\n */\n translateY?: number;\n /**\n * Процент сдвига модалки в изначальном состоянии\n */\n translateYFrom?: number;\n /**\n * Процент сдвига модалки во время взаимодействия с ней (потянуть, чтобы открыть или закрыть)\n */\n translateYCurrent?: number;\n\n touchStartContentScrollTop?: number;\n touchMovePositive?: boolean | null;\n touchShiftYPercent?: number;\n\n expanded?: boolean;\n collapsed?: boolean;\n hidden?: boolean;\n\n contentScrolled?: boolean;\n contentScrollStopTimeout?: ReturnType<typeof setTimeout>;\n\n expandedRange?: TranslateRange;\n collapsedRange?: TranslateRange;\n hiddenRange?: TranslateRange;\n}\n\nexport interface ModalRootProps {\n activeModal?: string | null;\n children: React.ReactElement | Iterable<React.ReactElement>;\n\n /**\n * Будет вызвано при начале открытия активной модалки с её id\n */\n onOpen?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном открытии активной модалки с её id\n */\n onOpened?(modalId: string): void;\n\n /**\n * Будет вызвано при начале закрытия активной модалки с её id\n */\n onClose?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном закрытии активной модалки с её id\n */\n onClosed?(modalId: string): void;\n}\n\nexport interface ModalRootWithDOMProps extends HasPlatform, ModalRootProps, DOMContextInterface {\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n}\n"],"names":["ModalType","PAGE","CARD"],"mappings":";;;;;;;;;;IAIO;UAAKA,SAAS;IAATA,UACVC,UAAO;IADGD,UAEVE,UAAO;GAFGF,cAAAA"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ModalRoot/useModalManager.tsx"],"sourcesContent":["import * as React from 'react';\nimport { isFunction, noop } from '@vkontakte/vkjs';\nimport { getNavId } from '../../lib/getNavId';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasChildren } from '../../types';\nimport { ModalsState, ModalsStateEntry, ModalType } from './types';\n\ninterface ModalTransitionState {\n activeModal?: string | null;\n enteringModal?: string | null;\n exitingModal?: string | null;\n history?: string[];\n isBack?: boolean | null;\n}\n\nexport interface ModalTransitionProps extends ModalTransitionState {\n onEnter: VoidFunction;\n onEntered: (id: string | null) => void;\n onExit: VoidFunction;\n onExited: (id: string | null) => void;\n getModalState: (id: string | undefined | null) => ModalsStateEntry | undefined;\n delayEnter: boolean;\n}\n\nfunction getModals(children: React.ReactNode | React.ReactNode[]) {\n return React.Children.toArray(children) as React.ReactElement[];\n}\n\nconst warn = warnOnce('ModalRoot');\n\nexport function modalTransitionReducer(\n state: ModalTransitionState,\n action: {\n type: 'setActive' | 'entered' | 'exited' | 'inited';\n id: string | null;\n },\n): ModalTransitionState {\n if (action.type === 'setActive' && action.id !== state.activeModal) {\n const nextModal = action.id;\n // preserve exiting modal if switching mid-transition\n const prevModal = state.exitingModal || state.activeModal;\n let history = state.history ? [...state.history] : [];\n const isBack = Boolean(nextModal && history.includes(nextModal));\n\n if (nextModal === null) {\n history = [];\n } else if (isBack) {\n history = history.splice(0, history.indexOf(nextModal) + 1);\n } else {\n history.push(nextModal);\n }\n\n return {\n activeModal: nextModal,\n // not entering yet\n enteringModal: null,\n exitingModal: prevModal,\n history,\n isBack,\n };\n }\n if (action.type === 'entered' && action.id === state.enteringModal) {\n return { ...state, enteringModal: null };\n }\n if (action.type === 'exited' && action.id === state.exitingModal) {\n return { ...state, exitingModal: null };\n }\n if (action.type === 'inited' && action.id === state.activeModal) {\n return { ...state, enteringModal: action.id };\n }\n return state;\n}\n\n/**\n * Реализует переход модалок. При смене activeModal m1 -> m2:\n * 1. activeModal: m1, exitingModal: null, enteringModal: null, триггер перехода\n * 2. activeModal: m2, exitingModal: m1, enteringModal: null, рендерим m2 чтобы прошел init, начинаем анимацию выхода\n * одновременный переход между ModalPage:\n * 3a. activeModal: m2, exitingModal: m1, enteringModal: m2\n * 4a. exitingModal и enteringModal переходят в null в порядке завершения анимации\n * ИЛИ дожидаемся скрытия ModalCard\n * 3b. activeModal: m2, exitingModal: null, enteringModal: m2\n * 4b. enteringModal переходит в null после завершения анимации\n * 5. activeModal: m2, exitingModal: null, enteringModal: null, переход закончен\n */\nexport function useModalManager(\n activeModal: string | null | undefined,\n children: React.ReactNode | React.ReactNode[],\n onOpen: (id: string) => void = noop,\n onOpened: (id: string) => void = noop,\n onClose: (id: string) => void = noop,\n onClosed: (id: string) => void = noop,\n initModal: (state: ModalsStateEntry) => void = noop,\n): ModalTransitionProps {\n const modalsState = React.useRef<ModalsState>({}).current;\n getModals(children).forEach((Modal) => {\n const modalProps = Modal.props;\n const id = getNavId(modalProps, warn);\n const state: ModalsStateEntry = (id !== undefined && modalsState[id]) || {\n id: id ?? null,\n };\n\n state.onOpen = Modal.props.onOpen;\n state.onOpened = Modal.props.onOpened;\n state.onClose = Modal.props.onClose;\n state.onClosed = Modal.props.onClosed;\n // ModalPage props\n if (typeof modalProps.settlingHeight === 'number') {\n state.settlingHeight = modalProps.settlingHeight;\n }\n\n if (state.id !== null) {\n modalsState[state.id] = state;\n }\n });\n\n const isMissing = activeModal && !modalsState[activeModal];\n const safeActiveModal = isMissing ? null : activeModal;\n const [transitionState, dispatchTransition] = React.useReducer(modalTransitionReducer, {\n activeModal: safeActiveModal,\n enteringModal: null,\n exitingModal: null,\n history: safeActiveModal ? [safeActiveModal] : [],\n isBack: false,\n });\n\n // Map props to state, render activeModal for init\n useIsomorphicLayoutEffect(() => {\n // ignore non-existent activeModal\n if (process.env.NODE_ENV === 'development' && isMissing) {\n warn(`Переход невозможен - модальное окно (страница) ${activeModal} не существует`, 'error');\n }\n dispatchTransition({ type: 'setActive', id: safeActiveModal ?? null });\n }, [activeModal]);\n\n // Init activeModal & set enteringModal\n useIsomorphicLayoutEffect(() => {\n if (transitionState.activeModal) {\n initModal(modalsState[transitionState.activeModal]);\n dispatchTransition({ type: 'inited', id: transitionState.activeModal });\n }\n }, [transitionState.activeModal]);\n\n const isCard = (id: string | null | undefined) =>\n id != null && modalsState[id]?.type === ModalType.CARD;\n const onEntered = React.useCallback(\n (id: string | null) => {\n if (id) {\n const modalState = modalsState[id];\n\n if (isFunction(modalState.onOpened)) {\n modalState.onOpened();\n } else if (isFunction(onOpened)) {\n onOpened(id);\n }\n }\n\n dispatchTransition({ type: 'entered', id });\n },\n [modalsState, onOpened],\n );\n const onExited = React.useCallback(\n (id: string | null) => {\n if (id) {\n const modalState = modalsState[id];\n\n if (isFunction(modalState.onClosed)) {\n modalState.onClosed();\n } else if (isFunction(onClosed)) {\n onClosed(id);\n }\n }\n\n dispatchTransition({ type: 'exited', id });\n },\n [modalsState, onClosed],\n );\n const delayEnter = Boolean(\n transitionState.exitingModal && (isCard(activeModal) || isCard(transitionState.exitingModal)),\n );\n const getModalState = React.useCallback(\n (id: string | undefined | null) => (id ? modalsState[id] : undefined),\n [modalsState],\n );\n\n function onEnter() {\n const modalState = transitionState.activeModal && modalsState[transitionState.activeModal];\n if (modalState) {\n if (isFunction(modalState.onOpen)) {\n modalState.onOpen();\n } else if (isFunction(onOpen) && modalState.id) {\n onOpen(modalState.id);\n }\n }\n }\n\n function onExit() {\n const modalState = transitionState.activeModal && modalsState[transitionState.activeModal];\n if (modalState) {\n if (isFunction(modalState.onClose)) {\n modalState.onClose();\n } else if (isFunction(onClose) && modalState.id) {\n onClose(modalState.id);\n }\n }\n }\n\n return {\n onEnter,\n onEntered,\n onExit,\n onExited,\n ...transitionState,\n delayEnter,\n getModalState,\n };\n}\n\ntype WithModalManager<Props extends ModalTransitionProps> = HasChildren &\n Omit<Props, keyof ModalTransitionProps> & {\n activeModal?: string | null;\n };\n\nexport function withModalManager(initModal: (a: ModalsStateEntry) => void = noop) {\n return function <Props extends ModalTransitionProps>(\n Wrapped: React.ComponentType<Props>,\n ): React.ComponentType<WithModalManager<Props>> {\n return function WithModalManager(props) {\n const transitionManager = useModalManager(\n props.activeModal,\n props.children,\n (props as any).onOpen,\n (props as any).onOpened,\n (props as any).onClose,\n (props as any).onClosed,\n initModal,\n );\n return <Wrapped {...(props as any)} {...transitionManager} />;\n };\n };\n}\n"],"names":["modalTransitionReducer","useModalManager","withModalManager","getModals","children","React","Children","toArray","warn","warnOnce","state","action","type","id","activeModal","nextModal","prevModal","exitingModal","history","isBack","Boolean","includes","splice","indexOf","push","enteringModal","onOpen","noop","onOpened","onClose","onClosed","initModal","onEnter","modalState","transitionState","modalsState","isFunction","onExit","useRef","current","forEach","Modal","modalProps","props","getNavId","undefined","settlingHeight","isMissing","safeActiveModal","useReducer","dispatchTransition","useIsomorphicLayoutEffect","process","env","NODE_ENV","isCard","ModalType","CARD","onEntered","useCallback","onExited","delayEnter","getModalState","Wrapped","WithModalManager","transitionManager"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/ModalRoot/useModalManager.tsx"],"sourcesContent":["import * as React from 'react';\nimport { isFunction, noop } from '@vkontakte/vkjs';\nimport { getNavId } from '../../lib/getNavId';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasChildren } from '../../types';\nimport { ModalsState, ModalsStateEntry, ModalType } from './types';\n\ninterface ModalTransitionState {\n activeModal?: string | null;\n enteringModal?: string | null;\n exitingModal?: string | null;\n history?: string[];\n isBack?: boolean | null;\n}\n\nexport interface ModalTransitionProps extends ModalTransitionState {\n onEnter: VoidFunction;\n onEntered: (id: string | null) => void;\n onExit: VoidFunction;\n onExited: (id: string | null) => void;\n getModalState: (id: string | undefined | null) => ModalsStateEntry | undefined;\n delayEnter: boolean;\n}\n\nfunction getModals(children: React.ReactNode | React.ReactNode[]) {\n return React.Children.toArray(children) as React.ReactElement[];\n}\n\nconst warn = warnOnce('ModalRoot');\n\nexport function modalTransitionReducer(\n state: ModalTransitionState,\n action: {\n type: 'setActive' | 'entered' | 'exited' | 'inited';\n id: string | null;\n },\n): ModalTransitionState {\n if (action.type === 'setActive' && action.id !== state.activeModal) {\n const nextModal = action.id;\n // preserve exiting modal if switching mid-transition\n const prevModal = state.exitingModal || state.activeModal;\n let history = state.history ? [...state.history] : [];\n const isBack = Boolean(nextModal && history.includes(nextModal));\n\n if (nextModal === null) {\n history = [];\n } else if (isBack) {\n history = history.splice(0, history.indexOf(nextModal) + 1);\n } else {\n history.push(nextModal);\n }\n\n return {\n activeModal: nextModal,\n // not entering yet\n enteringModal: null,\n exitingModal: prevModal,\n history,\n isBack,\n };\n }\n if (action.type === 'entered' && action.id === state.enteringModal) {\n return { ...state, enteringModal: null };\n }\n if (action.type === 'exited' && action.id === state.exitingModal) {\n return { ...state, exitingModal: null };\n }\n if (action.type === 'inited' && action.id === state.activeModal) {\n return { ...state, enteringModal: action.id };\n }\n return state;\n}\n\n/**\n * Реализует переход модалок. При смене activeModal m1 -> m2:\n * 1. activeModal: m1, exitingModal: null, enteringModal: null, триггер перехода\n * 2. activeModal: m2, exitingModal: m1, enteringModal: null, рендерим m2 чтобы прошел init, начинаем анимацию выхода\n * одновременный переход между ModalPage:\n * 3a. activeModal: m2, exitingModal: m1, enteringModal: m2\n * 4a. exitingModal и enteringModal переходят в null в порядке завершения анимации\n * ИЛИ дожидаемся скрытия ModalCard\n * 3b. activeModal: m2, exitingModal: null, enteringModal: m2\n * 4b. enteringModal переходит в null после завершения анимации\n * 5. activeModal: m2, exitingModal: null, enteringModal: null, переход закончен\n */\nexport function useModalManager(\n activeModal: string | null | undefined,\n children: React.ReactNode | React.ReactNode[],\n onOpen: (id: string) => void = noop,\n onOpened: (id: string) => void = noop,\n onClose: (id: string) => void = noop,\n onClosed: (id: string) => void = noop,\n initModal: (state: ModalsStateEntry) => void = noop,\n): ModalTransitionProps {\n const modalsState = React.useRef<ModalsState>({}).current;\n getModals(children).forEach((Modal) => {\n const modalProps = Modal.props;\n const id = getNavId(modalProps, warn);\n const state: ModalsStateEntry = (id !== undefined && modalsState[id]) || {\n id: id ?? null,\n };\n\n state.onOpen = Modal.props.onOpen;\n state.onOpened = Modal.props.onOpened;\n state.onClose = Modal.props.onClose;\n state.onClosed = Modal.props.onClosed;\n // ModalPage props\n if (typeof modalProps.settlingHeight === 'number') {\n state.settlingHeight = modalProps.settlingHeight;\n }\n\n if (state.id !== null) {\n modalsState[state.id] = state;\n }\n });\n\n const isMissing = activeModal && !modalsState[activeModal];\n const safeActiveModal = isMissing ? null : activeModal;\n const [transitionState, dispatchTransition] = React.useReducer(modalTransitionReducer, {\n activeModal: safeActiveModal,\n enteringModal: null,\n exitingModal: null,\n history: safeActiveModal ? [safeActiveModal] : [],\n isBack: false,\n });\n\n // Map props to state, render activeModal for init\n useIsomorphicLayoutEffect(() => {\n // ignore non-existent activeModal\n if (process.env.NODE_ENV === 'development' && isMissing) {\n warn(`Переход невозможен - модальное окно (страница) ${activeModal} не существует`, 'error');\n }\n dispatchTransition({ type: 'setActive', id: safeActiveModal ?? null });\n }, [activeModal]);\n\n // Init activeModal & set enteringModal\n useIsomorphicLayoutEffect(() => {\n if (transitionState.activeModal) {\n initModal(modalsState[transitionState.activeModal]);\n dispatchTransition({ type: 'inited', id: transitionState.activeModal });\n }\n }, [transitionState.activeModal]);\n\n const isCard = (id: string | null | undefined) =>\n id != null && modalsState[id]?.type === ModalType.CARD;\n const onEntered = React.useCallback(\n (id: string | null) => {\n if (id) {\n const modalState = modalsState[id];\n\n if (isFunction(modalState.onOpened)) {\n modalState.onOpened();\n } else if (isFunction(onOpened)) {\n onOpened(id);\n }\n }\n\n dispatchTransition({ type: 'entered', id });\n },\n [modalsState, onOpened],\n );\n const onExited = React.useCallback(\n (id: string | null) => {\n if (id) {\n const modalState = modalsState[id];\n\n if (isFunction(modalState.onClosed)) {\n modalState.onClosed();\n } else if (isFunction(onClosed)) {\n onClosed(id);\n }\n }\n\n dispatchTransition({ type: 'exited', id });\n },\n [modalsState, onClosed],\n );\n const delayEnter = Boolean(\n transitionState.exitingModal && (isCard(activeModal) || isCard(transitionState.exitingModal)),\n );\n const getModalState = React.useCallback(\n (id: string | undefined | null) => (id ? modalsState[id] : undefined),\n [modalsState],\n );\n\n function onEnter() {\n const modalState = transitionState.activeModal && modalsState[transitionState.activeModal];\n if (modalState) {\n if (isFunction(modalState.onOpen)) {\n modalState.onOpen();\n } else if (isFunction(onOpen) && modalState.id) {\n onOpen(modalState.id);\n }\n }\n }\n\n function onExit() {\n const modalState = transitionState.activeModal && modalsState[transitionState.activeModal];\n if (modalState) {\n if (isFunction(modalState.onClose)) {\n modalState.onClose();\n } else if (isFunction(onClose) && modalState.id) {\n onClose(modalState.id);\n }\n }\n }\n\n return {\n onEnter,\n onEntered,\n onExit,\n onExited,\n ...transitionState,\n delayEnter,\n getModalState,\n };\n}\n\ntype WithModalManager<Props extends ModalTransitionProps> = HasChildren &\n Omit<Props, keyof ModalTransitionProps> & {\n activeModal?: string | null;\n };\n\nexport function withModalManager(initModal: (a: ModalsStateEntry) => void = noop) {\n return function <Props extends ModalTransitionProps>(\n Wrapped: React.ComponentType<Props>,\n ): React.ComponentType<WithModalManager<Props>> {\n return function WithModalManager(props) {\n const transitionManager = useModalManager(\n props.activeModal,\n props.children,\n (props as any).onOpen,\n (props as any).onOpened,\n (props as any).onClose,\n (props as any).onClosed,\n initModal,\n );\n return <Wrapped {...(props as any)} {...transitionManager} />;\n };\n };\n}\n"],"names":["modalTransitionReducer","useModalManager","withModalManager","getModals","children","React","Children","toArray","warn","warnOnce","state","action","type","id","activeModal","nextModal","prevModal","exitingModal","history","isBack","Boolean","includes","splice","indexOf","push","enteringModal","onOpen","noop","onOpened","onClose","onClosed","initModal","onEnter","modalState","transitionState","modalsState","isFunction","onExit","useRef","current","forEach","Modal","modalProps","props","getNavId","undefined","settlingHeight","isMissing","safeActiveModal","useReducer","dispatchTransition","useIsomorphicLayoutEffect","process","env","NODE_ENV","isCard","ModalType","CARD","onEntered","useCallback","onExited","delayEnter","getModalState","Wrapped","WithModalManager","transitionManager"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ModalRoot/useModalRootContext.tsx"],"sourcesContent":["import React from 'react';\nimport { ModalRootContext } from './ModalRootContext';\n\nexport const useModalRootContext = () => React.useContext(ModalRootContext);\n"],"names":["useModalRootContext","React","useContext","ModalRootContext"],"mappings":";;;;+BAGaA;;;eAAAA;;;;8DAHK;gCACe;AAE1B,IAAMA,sBAAsB;WAAMC,eAAMC,WAAWC"}
1
+ {"version":3,"sources":["../../../../src/components/ModalRoot/useModalRootContext.tsx"],"sourcesContent":["import React from 'react';\nimport { ModalRootContext } from './ModalRootContext';\n\nexport const useModalRootContext = () => React.useContext(ModalRootContext);\n"],"names":["useModalRootContext","React","useContext","ModalRootContext"],"mappings":";;;;+BAGaA;;;eAAAA;;;;8DAHK;gCACe;AAE1B,IAAMA,sBAAsB;WAAMC,cAAK,CAACC,UAAU,CAACC,kCAAgB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ModalRoot/withModalRootContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\n\ntype PickedProps = Pick<ModalRootContextInterface, 'updateModalHeight'>;\n\nexport function withModalRootContext<P extends PickedProps>(\n Component: React.ComponentType<P>,\n): React.ComponentType<Omit<P, keyof PickedProps>> {\n function WithModalRootContext(props: Omit<P, keyof PickedProps>) {\n const { updateModalHeight } = React.useContext(ModalRootContext);\n\n return <Component {...(props as P)} updateModalHeight={updateModalHeight} />;\n }\n return WithModalRootContext;\n}\n"],"names":["withModalRootContext","Component","WithModalRootContext","props","updateModalHeight","React","useContext","ModalRootContext"],"mappings":";;;;+BAKgBA;;;eAAAA;;;;;;+DALO;gCACqC;AAIrD,SAASA,qBACdC,SAAiC;QAExBC,uBAAT,SAASA,qBAAqBC,KAAiC;QAC7D,IAAM,AAAEC,oBAAsBC,OAAMC,WAAWC,oCAAvCH;QAER,qBAAO,qBAACH,uDAAeE;YAAaC,mBAAmBA;;IACzD;IACA,OAAOF;AACT"}
1
+ {"version":3,"sources":["../../../../src/components/ModalRoot/withModalRootContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\n\ntype PickedProps = Pick<ModalRootContextInterface, 'updateModalHeight'>;\n\nexport function withModalRootContext<P extends PickedProps>(\n Component: React.ComponentType<P>,\n): React.ComponentType<Omit<P, keyof PickedProps>> {\n function WithModalRootContext(props: Omit<P, keyof PickedProps>) {\n const { updateModalHeight } = React.useContext(ModalRootContext);\n\n return <Component {...(props as P)} updateModalHeight={updateModalHeight} />;\n }\n return WithModalRootContext;\n}\n"],"names":["withModalRootContext","Component","WithModalRootContext","props","updateModalHeight","React","useContext","ModalRootContext"],"mappings":";;;;+BAKgBA;;;eAAAA;;;;;;+DALO;gCACqC;AAIrD,SAASA,qBACdC,SAAiC;QAExBC,uBAAT,SAASA,qBAAqBC,KAAiC;QAC7D,IAAM,AAAEC,oBAAsBC,OAAMC,UAAU,CAACC,kCAAgB,EAAvDH;QAER,qBAAO,qBAACH,uDAAeE;YAAaC,mBAAmBA;;IACzD;IACA,OAAOF;AACT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/NativeSelect/NativeSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useEnsuredControl } from '../../hooks/useEnsuredControl';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport type { SelectType } from '../Select/Select';\nimport { SelectTypography } from '../SelectTypography/SelectTypography';\nimport styles from '../Select/Select.module.css';\n\nconst sizeYClassNames = {\n none: styles['Select--sizeY-none'],\n [SizeType.COMPACT]: styles['Select--sizeY-compact'],\n};\n\nexport interface NativeSelectProps\n extends Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'multiple'>,\n HasRef<HTMLSelectElement>,\n HasRootRef<HTMLLabelElement>,\n HasAlign,\n Pick<FormFieldProps, 'before' | 'status'> {\n placeholder?: string;\n multiline?: boolean;\n selectType?: SelectType;\n /**\n * Иконка раскрывающегося списка\n */\n icon?: React.ReactNode;\n}\n\nexport interface SelectState {\n value?: React.SelectHTMLAttributes<HTMLSelectElement>['value'];\n title?: string;\n notSelected?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/NativeSelect\n */\nconst NativeSelect = ({\n style,\n defaultValue = '',\n align,\n placeholder,\n children,\n className,\n getRef,\n getRootRef,\n disabled,\n multiline,\n selectType = 'default',\n status,\n icon = <DropdownIcon />,\n before,\n onChange: onChangeProp,\n value: valueProp,\n ...restProps\n}: NativeSelectProps) => {\n const [title, setTitle] = React.useState('');\n const [empty, setEmpty] = React.useState(false);\n const [value, onChange] = useEnsuredControl({\n defaultValue,\n disabled,\n onChange: onChangeProp,\n value: valueProp,\n });\n const selectRef = useExternRef(getRef);\n const { sizeY = 'none' } = useAdaptivity();\n\n useIsomorphicLayoutEffect(() => {\n const selectedOption = selectRef.current?.options[selectRef.current.selectedIndex];\n if (selectedOption) {\n setTitle(selectedOption.text);\n setEmpty(selectedOption.value === '' && placeholder != null);\n }\n }, [value, children]);\n\n return (\n <FormField\n Component=\"label\"\n className={classNames(\n styles['Select'],\n 'vkuiInternalNativeSelect',\n before && styles['Select--hasBefore'],\n empty && styles['Select--empty'],\n multiline && styles['Select--multiline'],\n align === 'center' && styles['Select--align-center'],\n align === 'right' && styles['Select--align-right'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n style={style}\n getRootRef={getRootRef}\n disabled={disabled}\n before={before}\n after={icon}\n status={status}\n >\n <select\n {...restProps}\n disabled={disabled}\n className={styles['Select__el']}\n onChange={onChange}\n value={value}\n ref={selectRef}\n >\n {placeholder && <option value=\"\">{placeholder}</option>}\n {children}\n </select>\n <div className={styles['Select__container']} aria-hidden>\n <SelectTypography className={styles['Select__title']} selectType={selectType}>\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\nexport { NativeSelect };\n"],"names":["NativeSelect","sizeYClassNames","none","SizeType","COMPACT","style","defaultValue","align","placeholder","children","className","getRef","getRootRef","disabled","multiline","selectType","status","icon","DropdownIcon","before","onChange","onChangeProp","value","valueProp","restProps","React","useState","title","setTitle","empty","setEmpty","useEnsuredControl","selectRef","useExternRef","useAdaptivity","sizeY","useIsomorphicLayoutEffect","selectedOption","current","options","selectedIndex","text","FormField","Component","classNames","REGULAR","after","select","ref","option","div","aria-hidden","SelectTypography"],"mappings":";;;;+BA0HSA;;;eAAAA;;;;;;;;;+DA1Hc;oBACI;6BACG;iCACI;4BACL;0BACJ;yCACiB;4BAEb;yBACa;gCAET;AAGjC,IAAMC;IACJC,IAAI;GACHC,qBAASC;AAwBZ;;CAEC,GACD,IAAMJ,eAAe;QACnBK,eAAAA,oCACAC,cAAAA,gDAAe,0BACfC,eAAAA,OACAC,qBAAAA,aACAC,kBAAAA,UACAC,mBAAAA,WACAC,gBAAAA,QACAC,oBAAAA,YACAC,kBAAAA,UACAC,mBAAAA,sCACAC,YAAAA,4CAAa,+BACbC,gBAAAA,6BACAC,MAAAA,8CAAO,qBAACC,iDACRC,gBAAAA,QACAC,AAAUC,sBAAVD,UACAE,AAAOC,mBAAPD,OACGE;QAhBHnB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAE;QACAC;QACAE;;IAGA,IAA0BG,qCAAAA,OAAMC,SAAS,SAAlCC,QAAmBF,oBAAZG,WAAYH;IAC1B,IAA0BA,sCAAAA,OAAMC,SAAS,YAAlCG,QAAmBJ,qBAAZK,WAAYL;IAC1B,IAA0BM,yCAAAA,IAAAA,sCAAkB;QAC1CzB,cAAAA;QACAO,UAAAA;QACAO,UAAUC;QACVC,OAAOC;IACT,QALOD,QAAmBS,wBAAZX,WAAYW;IAM1B,IAAMC,YAAYC,IAAAA,4BAAatB;IAC/B,IAA2BuB,kBAAAA,IAAAA,wDAAAA,gBAAnBC,OAAAA,0CAAQ;IAEhBC,IAAAA,sDAA0B;YACDJ;QAAvB,IAAMK,iBAAiBL,CAAAA,qBAAAA,UAAUM,qBAAVN,gCAAAA,KAAAA,IAAAA,mBAAmBO,OAAO,CAACP,UAAUM,QAAQE,cAAc;QAClF,IAAIH,gBAAgB;YAClBT,SAASS,eAAeI;YACxBX,SAASO,eAAef,UAAU,MAAMd,eAAe;QACzD;IACF,GAAG;QAACc;QAAOb;KAAS;IAEpB,qBACE,qBAACiC;QACCC,WAAU;QACVjC,WAAWkC,IAAAA,gCAET,4BACAzB,mCACAU,8BACAf,sCACAP,UAAU,wCACVA,UAAU,sCACV4B,UAAUhC,qBAAS0C,WAAW5C,eAAe,CAACkC,MAAM,EACpDzB;QAEFL,OAAOA;QACPO,YAAYA;QACZC,UAAUA;QACVM,QAAQA;QACR2B,OAAO7B;QACPD,QAAQA;qBAER,qBAAC+B,sDACKvB;QACJX,UAAUA;QACVH,SAAS;QACTU,UAAUA;QACVE,OAAOA;QACP0B,KAAKhB;QAEJxB,6BAAe,qBAACyC;QAAO3B,OAAM;OAAId,cACjCC,yBAEH,qBAACyC;QAAIxC,SAAS;QAA+ByC,eAAAA;qBAC3C,qBAACC;QAAiB1C,SAAS;QAA2BK,YAAYA;OAC/DY;AAKX"}
1
+ {"version":3,"sources":["../../../../src/components/NativeSelect/NativeSelect.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useEnsuredControl } from '../../hooks/useEnsuredControl';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasAlign, HasRef, HasRootRef } from '../../types';\nimport { DropdownIcon } from '../DropdownIcon/DropdownIcon';\nimport { FormField, FormFieldProps } from '../FormField/FormField';\nimport type { SelectType } from '../Select/Select';\nimport { SelectTypography } from '../SelectTypography/SelectTypography';\nimport styles from '../Select/Select.module.css';\n\nconst sizeYClassNames = {\n none: styles['Select--sizeY-none'],\n [SizeType.COMPACT]: styles['Select--sizeY-compact'],\n};\n\nexport interface NativeSelectProps\n extends Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'multiple'>,\n HasRef<HTMLSelectElement>,\n HasRootRef<HTMLLabelElement>,\n HasAlign,\n Pick<FormFieldProps, 'before' | 'status'> {\n placeholder?: string;\n multiline?: boolean;\n selectType?: SelectType;\n /**\n * Иконка раскрывающегося списка\n */\n icon?: React.ReactNode;\n}\n\nexport interface SelectState {\n value?: React.SelectHTMLAttributes<HTMLSelectElement>['value'];\n title?: string;\n notSelected?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/NativeSelect\n */\nconst NativeSelect = ({\n style,\n defaultValue = '',\n align,\n placeholder,\n children,\n className,\n getRef,\n getRootRef,\n disabled,\n multiline,\n selectType = 'default',\n status,\n icon = <DropdownIcon />,\n before,\n onChange: onChangeProp,\n value: valueProp,\n ...restProps\n}: NativeSelectProps) => {\n const [title, setTitle] = React.useState('');\n const [empty, setEmpty] = React.useState(false);\n const [value, onChange] = useEnsuredControl({\n defaultValue,\n disabled,\n onChange: onChangeProp,\n value: valueProp,\n });\n const selectRef = useExternRef(getRef);\n const { sizeY = 'none' } = useAdaptivity();\n\n useIsomorphicLayoutEffect(() => {\n const selectedOption = selectRef.current?.options[selectRef.current.selectedIndex];\n if (selectedOption) {\n setTitle(selectedOption.text);\n setEmpty(selectedOption.value === '' && placeholder != null);\n }\n }, [value, children]);\n\n return (\n <FormField\n Component=\"label\"\n className={classNames(\n styles['Select'],\n 'vkuiInternalNativeSelect',\n before && styles['Select--hasBefore'],\n empty && styles['Select--empty'],\n multiline && styles['Select--multiline'],\n align === 'center' && styles['Select--align-center'],\n align === 'right' && styles['Select--align-right'],\n sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY],\n className,\n )}\n style={style}\n getRootRef={getRootRef}\n disabled={disabled}\n before={before}\n after={icon}\n status={status}\n >\n <select\n {...restProps}\n disabled={disabled}\n className={styles['Select__el']}\n onChange={onChange}\n value={value}\n ref={selectRef}\n >\n {placeholder && <option value=\"\">{placeholder}</option>}\n {children}\n </select>\n <div className={styles['Select__container']} aria-hidden>\n <SelectTypography className={styles['Select__title']} selectType={selectType}>\n {title}\n </SelectTypography>\n </div>\n </FormField>\n );\n};\n\nexport { NativeSelect };\n"],"names":["NativeSelect","sizeYClassNames","none","SizeType","COMPACT","style","defaultValue","align","placeholder","children","className","getRef","getRootRef","disabled","multiline","selectType","status","icon","DropdownIcon","before","onChange","onChangeProp","value","valueProp","restProps","React","useState","title","setTitle","empty","setEmpty","useEnsuredControl","selectRef","useExternRef","useAdaptivity","sizeY","useIsomorphicLayoutEffect","selectedOption","current","options","selectedIndex","text","FormField","Component","classNames","REGULAR","after","select","ref","option","div","aria-hidden","SelectTypography"],"mappings":";;;;+BA0HSA;;;eAAAA;;;;;;;;;+DA1Hc;oBACI;6BACG;iCACI;4BACL;0BACJ;yCACiB;4BAEb;yBACa;gCAET;AAGjC,IAAMC;IACJC,IAAI;GACHC,oBAAQ,CAACC,OAAO;AAwBnB;;CAEC,GACD,IAAMJ,eAAe;QACnBK,eAAAA,oCACAC,cAAAA,gDAAe,0BACfC,eAAAA,OACAC,qBAAAA,aACAC,kBAAAA,UACAC,mBAAAA,WACAC,gBAAAA,QACAC,oBAAAA,YACAC,kBAAAA,UACAC,mBAAAA,sCACAC,YAAAA,4CAAa,+BACbC,gBAAAA,6BACAC,MAAAA,8CAAO,qBAACC,0BAAY,uBACpBC,gBAAAA,QACAC,AAAUC,sBAAVD,UACAE,AAAOC,mBAAPD,OACGE;QAhBHnB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAE;QACAC;QACAE;;IAGA,IAA0BG,qCAAAA,OAAMC,QAAQ,CAAC,SAAlCC,QAAmBF,oBAAZG,WAAYH;IAC1B,IAA0BA,sCAAAA,OAAMC,QAAQ,CAAC,YAAlCG,QAAmBJ,qBAAZK,WAAYL;IAC1B,IAA0BM,yCAAAA,IAAAA,oCAAiB,EAAC;QAC1CzB,cAAAA;QACAO,UAAAA;QACAO,UAAUC;QACVC,OAAOC;IACT,QALOD,QAAmBS,wBAAZX,WAAYW;IAM1B,IAAMC,YAAYC,IAAAA,0BAAY,EAACtB;IAC/B,IAA2BuB,kBAAAA,IAAAA,4BAAa,4BAAbA,gBAAnBC,OAAAA,0CAAQ;IAEhBC,IAAAA,oDAAyB,EAAC;YACDJ;QAAvB,IAAMK,kBAAiBL,qBAAAA,UAAUM,OAAO,cAAjBN,yCAAAA,mBAAmBO,OAAO,CAACP,UAAUM,OAAO,CAACE,aAAa,CAAC;QAClF,IAAIH,gBAAgB;YAClBT,SAASS,eAAeI,IAAI;YAC5BX,SAASO,eAAef,KAAK,KAAK,MAAMd,eAAe;QACzD;IACF,GAAG;QAACc;QAAOb;KAAS;IAEpB,qBACE,qBAACiC,oBAAS;QACRC,WAAU;QACVjC,WAAWkC,IAAAA,gBAAU,gBAEnB,4BACAzB,mCACAU,8BACAf,sCACAP,UAAU,wCACVA,UAAU,sCACV4B,UAAUhC,oBAAQ,CAAC0C,OAAO,IAAI5C,eAAe,CAACkC,MAAM,EACpDzB;QAEFL,OAAOA;QACPO,YAAYA;QACZC,UAAUA;QACVM,QAAQA;QACR2B,OAAO7B;QACPD,QAAQA;qBAER,qBAAC+B,sDACKvB;QACJX,UAAUA;QACVH,SAAS;QACTU,UAAUA;QACVE,OAAOA;QACP0B,KAAKhB;QAEJxB,6BAAe,qBAACyC;QAAO3B,OAAM;OAAId,cACjCC,yBAEH,qBAACyC;QAAIxC,SAAS;QAA+ByC,eAAAA;qBAC3C,qBAACC,kCAAgB;QAAC1C,SAAS;QAA2BK,YAAYA;OAC/DY;AAKX"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/NavTransitionContext/NavTransitionContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\n\nexport interface TransitionContextProps {\n entering: boolean;\n}\nconst TransitionContext = React.createContext<TransitionContextProps>({\n entering: false,\n});\nexport const useNavTransition = () => React.useContext(TransitionContext);\n\nexport const NavTransitionProvider = ({\n children,\n entering,\n}: React.PropsWithChildren<TransitionContextProps>) => {\n const parentContext = useNavTransition();\n const contextValue = useObjectMemo({\n entering: parentContext.entering || entering,\n });\n return <TransitionContext.Provider value={contextValue}>{children}</TransitionContext.Provider>;\n};\n"],"names":["useNavTransition","NavTransitionProvider","TransitionContext","React","createContext","entering","useContext","children","parentContext","contextValue","useObjectMemo","Provider","value"],"mappings":";;;;;;;;;;;IASaA,gBAAgB;eAAhBA;;IAEAC,qBAAqB;eAArBA;;;;+DAXU;6BACO;AAK9B,IAAMC,kCAAoBC,OAAMC,cAAsC;IACpEC,UAAU;AACZ;AACO,IAAML,mBAAmB;WAAMG,OAAMG,WAAWJ;;AAEhD,IAAMD,wBAAwB;QACnCM,iBAAAA,UACAF,iBAAAA;IAEA,IAAMG,gBAAgBR;IACtB,IAAMS,eAAeC,IAAAA,8BAAc;QACjCL,UAAUG,cAAcH,YAAYA;IACtC;IACA,qBAAO,qBAACH,kBAAkBS;QAASC,OAAOH;OAAeF;AAC3D"}
1
+ {"version":3,"sources":["../../../../src/components/NavTransitionContext/NavTransitionContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\n\nexport interface TransitionContextProps {\n entering: boolean;\n}\nconst TransitionContext = React.createContext<TransitionContextProps>({\n entering: false,\n});\nexport const useNavTransition = () => React.useContext(TransitionContext);\n\nexport const NavTransitionProvider = ({\n children,\n entering,\n}: React.PropsWithChildren<TransitionContextProps>) => {\n const parentContext = useNavTransition();\n const contextValue = useObjectMemo({\n entering: parentContext.entering || entering,\n });\n return <TransitionContext.Provider value={contextValue}>{children}</TransitionContext.Provider>;\n};\n"],"names":["useNavTransition","NavTransitionProvider","TransitionContext","React","createContext","entering","useContext","children","parentContext","contextValue","useObjectMemo","Provider","value"],"mappings":";;;;;;;;;;;IASaA,gBAAgB;eAAhBA;;IAEAC,qBAAqB;eAArBA;;;;+DAXU;6BACO;AAK9B,IAAMC,kCAAoBC,OAAMC,aAAa,CAAyB;IACpEC,UAAU;AACZ;AACO,IAAML,mBAAmB;WAAMG,OAAMG,UAAU,CAACJ;;AAEhD,IAAMD,wBAAwB;QACnCM,iBAAAA,UACAF,iBAAAA;IAEA,IAAMG,gBAAgBR;IACtB,IAAMS,eAAeC,IAAAA,4BAAa,EAAC;QACjCL,UAAUG,cAAcH,QAAQ,IAAIA;IACtC;IACA,qBAAO,qBAACH,kBAAkBS,QAAQ;QAACC,OAAOH;OAAeF;AAC3D"}
@@ -55,8 +55,9 @@ var Pagination = function(_param) {
55
55
  onChange
56
56
  ]);
57
57
  var handleClick = _react.useCallback(function(event) {
58
+ var _onChange;
58
59
  var page = event.currentTarget.dataset.page || "1";
59
- onChange === null || onChange === void 0 ? void 0 : onChange(Number(page));
60
+ (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange(Number(page));
60
61
  }, [
61
62
  onChange
62
63
  ]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24ChevronCompactLeft, Icon24ChevronCompactRight } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { PaginationPageType, usePagination } from '../../hooks/usePagination';\nimport { SizeType } from '../../lib/adaptivity';\nimport type { HasRootRef } from '../../types';\nimport { Button } from '../Button/Button';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './Pagination.module.css';\n\nfunction getPageAriaLabelDefault(page: number, isCurrent: boolean): string {\n return isCurrent ? `${page} страница` : `Перейти на ${page} страницу`;\n}\n\nexport interface PaginationProps\n extends Omit<React.HTMLAttributes<HTMLElement>, 'onChange'>,\n HasRootRef<HTMLElement> {\n /**\n * Текущая страница.\n */\n currentPage?: number;\n /**\n * Кол-во всегда видимых страниц по краям текущей страницы.\n */\n siblingCount?: number;\n /**\n * Кол-во всегда видимых страниц в начале и в конце.\n */\n boundaryCount?: number;\n /**\n * Общее кол-во страниц.\n */\n totalPages?: number;\n /**\n * Блокировка всех кнопок.\n */\n disabled?: boolean;\n /**\n * Переопределение `aria-label` для кнопки навигации назад.\n * По умолчанию используется текст на \"ru_RU\".\n */\n prevButtonAriaLabel?: string;\n /**\n * Переопределение `aria-label` для кнопки навигации вперёд.\n * По умолчанию используется текст на \"ru_RU\".\n */\n nextButtonAriaLabel?: string;\n /**\n * Функция для переопределения и/или локализации `aria-label` атрибута.\n * По умолчанию используется текст на \"ru_RU\".\n */\n getPageAriaLabel?(page: number, isCurrent: boolean): string;\n onChange?(page: number): void;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Pagination\n */\nexport const Pagination = ({\n currentPage = 1,\n siblingCount = 1,\n boundaryCount = 1,\n totalPages = 1,\n disabled,\n getPageAriaLabel = getPageAriaLabelDefault,\n prevButtonAriaLabel = 'Перейти на предыдущую страницу',\n nextButtonAriaLabel = 'Перейти на следующую страницу',\n getRootRef,\n onChange,\n ...resetProps\n}: PaginationProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n const pages = usePagination({\n currentPage,\n totalPages,\n siblingCount,\n boundaryCount,\n });\n const isFirstPage = currentPage === 1;\n const isLastPage = currentPage === totalPages;\n\n const handlePrevClick = React.useCallback(() => {\n if (onChange && !isFirstPage) {\n onChange(currentPage - 1);\n }\n }, [currentPage, isFirstPage, onChange]);\n\n const handleClick = React.useCallback(\n (event: React.MouseEvent<HTMLElement>) => {\n const page: string = event.currentTarget.dataset.page || '1';\n onChange?.(Number(page));\n },\n [onChange],\n );\n\n const handleNextClick = React.useCallback(() => {\n if (onChange && !isLastPage) {\n onChange(currentPage + 1);\n }\n }, [currentPage, isLastPage, onChange]);\n\n const renderPages = React.useCallback(\n (page: PaginationPageType) => {\n switch (page) {\n case 'start-ellipsis':\n case 'end-ellipsis':\n return (\n <li key={page}>\n <Text\n className={classNames(\n styles['Pagination__page'],\n styles['Pagination__page--type-ellipsis'],\n sizeY === 'none' && styles['Pagination__page--sizeY-none'],\n sizeY === SizeType.COMPACT && styles['Pagination__page--sizeY-compact'],\n disabled && styles['Pagination__page--disabled'],\n )}\n >\n &#8230;\n </Text>\n </li>\n );\n default: {\n const isCurrent = page === currentPage;\n return (\n <li key={page}>\n <Tappable\n className={classNames(\n styles['Pagination__page'],\n sizeY === 'none' && styles['Pagination__page--sizeY-none'],\n sizeY === SizeType.COMPACT && styles['Pagination__page--sizeY-compact'],\n isCurrent && styles['Pagination__page--current'],\n disabled && styles['Pagination__page--disabled'],\n )}\n activeMode={styles['Pagination__page--state-active']}\n hoverMode={styles['Pagination__page--state-hover']}\n hasActive={!isCurrent}\n hasHover={!isCurrent}\n focusVisibleMode=\"outside\"\n disabled={disabled}\n data-page={page}\n aria-current={isCurrent ? true : undefined}\n aria-label={getPageAriaLabel(page, isCurrent)}\n onClick={handleClick}\n >\n <Text normalize={false}>{page}</Text>\n </Tappable>\n </li>\n );\n }\n }\n },\n [sizeY, currentPage, disabled, getPageAriaLabel, handleClick],\n );\n\n return (\n <nav role=\"navigation\" aria-label=\"Навигация по страницам\" ref={getRootRef} {...resetProps}>\n <ul className={styles['Pagination__list']}>\n <li className={styles['Pagination__prevButtonContainer']}>\n <Button\n size=\"l\"\n before={<Icon24ChevronCompactLeft width={24} />}\n appearance=\"accent\"\n mode=\"tertiary\"\n disabled={isFirstPage || disabled}\n aria-label={prevButtonAriaLabel}\n onClick={handlePrevClick}\n />\n </li>\n {pages.map(renderPages)}\n <li className={styles['Pagination__nextButtonContainer']}>\n <Button\n size=\"l\"\n after={<Icon24ChevronCompactRight width={24} />}\n appearance=\"accent\"\n mode=\"tertiary\"\n disabled={isLastPage || disabled}\n aria-label={nextButtonAriaLabel}\n onClick={handleNextClick}\n />\n </li>\n </ul>\n </nav>\n );\n};\n"],"names":["Pagination","getPageAriaLabelDefault","page","isCurrent","currentPage","siblingCount","boundaryCount","totalPages","disabled","getPageAriaLabel","prevButtonAriaLabel","nextButtonAriaLabel","getRootRef","onChange","resetProps","useAdaptivity","sizeY","pages","usePagination","isFirstPage","isLastPage","handlePrevClick","React","useCallback","handleClick","event","currentTarget","dataset","Number","handleNextClick","renderPages","li","key","Text","className","classNames","SizeType","COMPACT","Tappable","activeMode","hoverMode","hasActive","hasHover","focusVisibleMode","data-page","aria-current","undefined","aria-label","onClick","normalize","nav","role","ref","ul","Button","size","before","Icon24ChevronCompactLeft","width","appearance","mode","map","after","Icon24ChevronCompactRight"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/Pagination/Pagination.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24ChevronCompactLeft, Icon24ChevronCompactRight } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { PaginationPageType, usePagination } from '../../hooks/usePagination';\nimport { SizeType } from '../../lib/adaptivity';\nimport type { HasRootRef } from '../../types';\nimport { Button } from '../Button/Button';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './Pagination.module.css';\n\nfunction getPageAriaLabelDefault(page: number, isCurrent: boolean): string {\n return isCurrent ? `${page} страница` : `Перейти на ${page} страницу`;\n}\n\nexport interface PaginationProps\n extends Omit<React.HTMLAttributes<HTMLElement>, 'onChange'>,\n HasRootRef<HTMLElement> {\n /**\n * Текущая страница.\n */\n currentPage?: number;\n /**\n * Кол-во всегда видимых страниц по краям текущей страницы.\n */\n siblingCount?: number;\n /**\n * Кол-во всегда видимых страниц в начале и в конце.\n */\n boundaryCount?: number;\n /**\n * Общее кол-во страниц.\n */\n totalPages?: number;\n /**\n * Блокировка всех кнопок.\n */\n disabled?: boolean;\n /**\n * Переопределение `aria-label` для кнопки навигации назад.\n * По умолчанию используется текст на \"ru_RU\".\n */\n prevButtonAriaLabel?: string;\n /**\n * Переопределение `aria-label` для кнопки навигации вперёд.\n * По умолчанию используется текст на \"ru_RU\".\n */\n nextButtonAriaLabel?: string;\n /**\n * Функция для переопределения и/или локализации `aria-label` атрибута.\n * По умолчанию используется текст на \"ru_RU\".\n */\n getPageAriaLabel?(page: number, isCurrent: boolean): string;\n onChange?(page: number): void;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Pagination\n */\nexport const Pagination = ({\n currentPage = 1,\n siblingCount = 1,\n boundaryCount = 1,\n totalPages = 1,\n disabled,\n getPageAriaLabel = getPageAriaLabelDefault,\n prevButtonAriaLabel = 'Перейти на предыдущую страницу',\n nextButtonAriaLabel = 'Перейти на следующую страницу',\n getRootRef,\n onChange,\n ...resetProps\n}: PaginationProps) => {\n const { sizeY = 'none' } = useAdaptivity();\n\n const pages = usePagination({\n currentPage,\n totalPages,\n siblingCount,\n boundaryCount,\n });\n const isFirstPage = currentPage === 1;\n const isLastPage = currentPage === totalPages;\n\n const handlePrevClick = React.useCallback(() => {\n if (onChange && !isFirstPage) {\n onChange(currentPage - 1);\n }\n }, [currentPage, isFirstPage, onChange]);\n\n const handleClick = React.useCallback(\n (event: React.MouseEvent<HTMLElement>) => {\n const page: string = event.currentTarget.dataset.page || '1';\n onChange?.(Number(page));\n },\n [onChange],\n );\n\n const handleNextClick = React.useCallback(() => {\n if (onChange && !isLastPage) {\n onChange(currentPage + 1);\n }\n }, [currentPage, isLastPage, onChange]);\n\n const renderPages = React.useCallback(\n (page: PaginationPageType) => {\n switch (page) {\n case 'start-ellipsis':\n case 'end-ellipsis':\n return (\n <li key={page}>\n <Text\n className={classNames(\n styles['Pagination__page'],\n styles['Pagination__page--type-ellipsis'],\n sizeY === 'none' && styles['Pagination__page--sizeY-none'],\n sizeY === SizeType.COMPACT && styles['Pagination__page--sizeY-compact'],\n disabled && styles['Pagination__page--disabled'],\n )}\n >\n &#8230;\n </Text>\n </li>\n );\n default: {\n const isCurrent = page === currentPage;\n return (\n <li key={page}>\n <Tappable\n className={classNames(\n styles['Pagination__page'],\n sizeY === 'none' && styles['Pagination__page--sizeY-none'],\n sizeY === SizeType.COMPACT && styles['Pagination__page--sizeY-compact'],\n isCurrent && styles['Pagination__page--current'],\n disabled && styles['Pagination__page--disabled'],\n )}\n activeMode={styles['Pagination__page--state-active']}\n hoverMode={styles['Pagination__page--state-hover']}\n hasActive={!isCurrent}\n hasHover={!isCurrent}\n focusVisibleMode=\"outside\"\n disabled={disabled}\n data-page={page}\n aria-current={isCurrent ? true : undefined}\n aria-label={getPageAriaLabel(page, isCurrent)}\n onClick={handleClick}\n >\n <Text normalize={false}>{page}</Text>\n </Tappable>\n </li>\n );\n }\n }\n },\n [sizeY, currentPage, disabled, getPageAriaLabel, handleClick],\n );\n\n return (\n <nav role=\"navigation\" aria-label=\"Навигация по страницам\" ref={getRootRef} {...resetProps}>\n <ul className={styles['Pagination__list']}>\n <li className={styles['Pagination__prevButtonContainer']}>\n <Button\n size=\"l\"\n before={<Icon24ChevronCompactLeft width={24} />}\n appearance=\"accent\"\n mode=\"tertiary\"\n disabled={isFirstPage || disabled}\n aria-label={prevButtonAriaLabel}\n onClick={handlePrevClick}\n />\n </li>\n {pages.map(renderPages)}\n <li className={styles['Pagination__nextButtonContainer']}>\n <Button\n size=\"l\"\n after={<Icon24ChevronCompactRight width={24} />}\n appearance=\"accent\"\n mode=\"tertiary\"\n disabled={isLastPage || disabled}\n aria-label={nextButtonAriaLabel}\n onClick={handleNextClick}\n />\n </li>\n </ul>\n </nav>\n );\n};\n"],"names":["Pagination","getPageAriaLabelDefault","page","isCurrent","currentPage","siblingCount","boundaryCount","totalPages","disabled","getPageAriaLabel","prevButtonAriaLabel","nextButtonAriaLabel","getRootRef","onChange","resetProps","useAdaptivity","sizeY","pages","usePagination","isFirstPage","isLastPage","handlePrevClick","React","useCallback","handleClick","event","currentTarget","dataset","Number","handleNextClick","renderPages","li","key","Text","className","classNames","SizeType","COMPACT","Tappable","activeMode","hoverMode","hasActive","hasHover","focusVisibleMode","data-page","aria-current","undefined","aria-label","onClick","normalize","nav","role","ref","ul","Button","size","before","Icon24ChevronCompactLeft","width","appearance","mode","map","after","Icon24ChevronCompactRight"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Panel/Panel.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { NavIdProps } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { HasRootRef } from '../../types';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Touch } from '../Touch/Touch';\nimport styles from './Panel.module.css';\n\nconst sizeXClassNames = {\n none: styles['Panel--sizeX-none'],\n [SizeType.COMPACT]: styles['Panel--sizeX-compact'],\n [SizeType.REGULAR]: styles['Panel--sizeX-regular'],\n};\n\nexport interface PanelProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n NavIdProps {\n centered?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Panel\n */\nexport const Panel = ({\n centered = false,\n children,\n getRootRef,\n nav,\n className,\n ...restProps\n}: PanelProps) => {\n const platform = usePlatform();\n const { sizeX = 'none' } = useAdaptivity();\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n className={classNames(\n styles['Panel'],\n sizeXClassNames[sizeX],\n centered && 'vkuiInternalPanel--centered',\n className,\n )}\n >\n <Touch\n Component={TooltipContainer}\n className={classNames(styles['Panel__in'], 'vkuiInternalPanel__in')}\n >\n <div className={styles['Panel__in-before']} />\n {centered ? <div className={styles['Panel__centered']}>{children}</div> : children}\n {platform === Platform.IOS && <div className=\"vkuiInternalPanel__fade\" />}\n <div className={styles['Panel__in-after']} />\n </Touch>\n </div>\n );\n};\n"],"names":["Panel","sizeXClassNames","none","SizeType","COMPACT","REGULAR","centered","children","getRootRef","nav","className","restProps","platform","usePlatform","useAdaptivity","sizeX","div","ref","classNames","Touch","Component","TooltipContainer","Platform","IOS"],"mappings":";;;;+BA4BaA;;;eAAAA;;;;;;;;+DA5BU;oBACI;6BACG;2BACF;0BACH;wBAEA;gCAEQ;qBACX;IAGE;AAAxB,IAAMC,mBAAkB;IACtBC,IAAI;sBADkB,MAErBC,qBAASC,yDAFY,MAGrBD,qBAASE,sCAHY;AAgBjB,IAAML,QAAQ;iCACnBM,UAAAA,wCAAW,yBACXC,kBAAAA,UACAC,oBAAAA,YACAC,aAAAA,KACAC,mBAAAA,WACGC;QALHL;QACAC;QACAC;QACAC;QACAC;;IAGA,IAAME,WAAWC,IAAAA;IACjB,IAA2BC,kBAAAA,IAAAA,wDAAAA,gBAAnBC,OAAAA,0CAAQ;IAEhB,qBACE,qBAACC,mDACKL;QACJM,KAAKT;QACLE,WAAWQ,IAAAA,+BAETjB,eAAe,CAACc,MAAM,EACtBT,YAAY,+BACZI;sBAGF,qBAACS;QACCC,WAAWC;QACXX,WAAWQ,IAAAA,mCAAgC;qBAE3C,qBAACF;QAAIN,SAAS;QACbJ,yBAAW,qBAACU;QAAIN,SAAS;OAA8BH,YAAkBA,UACzEK,aAAaU,mBAASC,qBAAO,qBAACP;QAAIN,WAAU;sBAC7C,qBAACM;QAAIN,SAAS;;AAItB"}
1
+ {"version":3,"sources":["../../../../src/components/Panel/Panel.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { NavIdProps } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { HasRootRef } from '../../types';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Touch } from '../Touch/Touch';\nimport styles from './Panel.module.css';\n\nconst sizeXClassNames = {\n none: styles['Panel--sizeX-none'],\n [SizeType.COMPACT]: styles['Panel--sizeX-compact'],\n [SizeType.REGULAR]: styles['Panel--sizeX-regular'],\n};\n\nexport interface PanelProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n NavIdProps {\n centered?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Panel\n */\nexport const Panel = ({\n centered = false,\n children,\n getRootRef,\n nav,\n className,\n ...restProps\n}: PanelProps) => {\n const platform = usePlatform();\n const { sizeX = 'none' } = useAdaptivity();\n\n return (\n <div\n {...restProps}\n ref={getRootRef}\n className={classNames(\n styles['Panel'],\n sizeXClassNames[sizeX],\n centered && 'vkuiInternalPanel--centered',\n className,\n )}\n >\n <Touch\n Component={TooltipContainer}\n className={classNames(styles['Panel__in'], 'vkuiInternalPanel__in')}\n >\n <div className={styles['Panel__in-before']} />\n {centered ? <div className={styles['Panel__centered']}>{children}</div> : children}\n {platform === Platform.IOS && <div className=\"vkuiInternalPanel__fade\" />}\n <div className={styles['Panel__in-after']} />\n </Touch>\n </div>\n );\n};\n"],"names":["Panel","sizeXClassNames","none","SizeType","COMPACT","REGULAR","centered","children","getRootRef","nav","className","restProps","platform","usePlatform","useAdaptivity","sizeX","div","ref","classNames","Touch","Component","TooltipContainer","Platform","IOS"],"mappings":";;;;+BA4BaA;;;eAAAA;;;;;;;;+DA5BU;oBACI;6BACG;2BACF;0BACH;wBAEA;gCAEQ;qBACX;IAGE;AAAxB,IAAMC,mBAAkB;IACtBC,IAAI;sBADkB,MAErBC,oBAAQ,CAACC,OAAO,kDAFK,MAGrBD,oBAAQ,CAACE,OAAO,+BAHK;AAgBjB,IAAML,QAAQ;iCACnBM,UAAAA,wCAAW,yBACXC,kBAAAA,UACAC,oBAAAA,YACAC,aAAAA,KACAC,mBAAAA,WACGC;QALHL;QACAC;QACAC;QACAC;QACAC;;IAGA,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,IAA2BC,kBAAAA,IAAAA,4BAAa,4BAAbA,gBAAnBC,OAAAA,0CAAQ;IAEhB,qBACE,qBAACC,mDACKL;QACJM,KAAKT;QACLE,WAAWQ,IAAAA,gBAAU,eAEnBjB,eAAe,CAACc,MAAM,EACtBT,YAAY,+BACZI;sBAGF,qBAACS,YAAK;QACJC,WAAWC,kCAAgB;QAC3BX,WAAWQ,IAAAA,gBAAU,mBAAsB;qBAE3C,qBAACF;QAAIN,SAAS;QACbJ,yBAAW,qBAACU;QAAIN,SAAS;OAA8BH,YAAkBA,UACzEK,aAAaU,kBAAQ,CAACC,GAAG,kBAAI,qBAACP;QAAIN,WAAU;sBAC7C,qBAACM;QAAIN,SAAS;;AAItB"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeader/LegacyPanelHeaderContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasComponent } from '../../types';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeader.module.css';\n\nexport interface LegacyPanelHeaderContentProps\n extends React.HTMLAttributes<HTMLElement>,\n HasComponent {}\n\nconst warn = warnOnce('PanelHeader');\n\n/**\n * TODO [>=6]: Удалить подкомпонент\n * @deprecated\n */\nexport const LegacyPanelHeaderContent = ({\n children,\n Component = 'span',\n id,\n}: LegacyPanelHeaderContentProps) => {\n if (process.env.NODE_ENV === 'development') {\n warn(\n 'Подкомпонент PanelHeader.Content устарел и будет удалён в v6. Используйте параметр typographyProps.',\n );\n }\n\n const platform = usePlatform();\n\n return platform === Platform.VKCOM ? (\n <Text weight=\"2\" Component={Component} id={id}>\n {children}\n </Text>\n ) : (\n <Component className={styles['PanelHeader__content-in']} id={id}>\n {children}\n </Component>\n );\n};\n\nLegacyPanelHeaderContent.displayName = 'LegacyPanelHeaderContent';\n"],"names":["LegacyPanelHeaderContent","warn","warnOnce","children","Component","id","process","env","NODE_ENV","platform","usePlatform","Platform","VKCOM","Text","weight","className","displayName"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;+DAlBU;2BACK;wBACH;wBACA;oBAEJ;AAOrB,IAAMC,OAAOC,IAAAA,oBAAS;AAMf,IAAMF,2BAA2B;QACtCG,iBAAAA,mCACAC,WAAAA,0CAAY,2BACZC,WAAAA;IAEA,IAAIC,QAAQC,IAAIC,aAAa,eAAe;QAC1CP,KACE;IAEJ;IAEA,IAAMQ,WAAWC,IAAAA;IAEjB,OAAOD,aAAaE,mBAASC,sBAC3B,qBAACC;QAAKC,QAAO;QAAIV,WAAWA;QAAWC,IAAIA;OACxCF,0BAGH,qBAACC;QAAUW,SAAS;QAAqCV,IAAIA;OAC1DF;AAGP;AAEAH,yBAAyBgB,cAAc"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeader/LegacyPanelHeaderContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasComponent } from '../../types';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeader.module.css';\n\nexport interface LegacyPanelHeaderContentProps\n extends React.HTMLAttributes<HTMLElement>,\n HasComponent {}\n\nconst warn = warnOnce('PanelHeader');\n\n/**\n * TODO [>=6]: Удалить подкомпонент\n * @deprecated\n */\nexport const LegacyPanelHeaderContent = ({\n children,\n Component = 'span',\n id,\n}: LegacyPanelHeaderContentProps) => {\n if (process.env.NODE_ENV === 'development') {\n warn(\n 'Подкомпонент PanelHeader.Content устарел и будет удалён в v6. Используйте параметр typographyProps.',\n );\n }\n\n const platform = usePlatform();\n\n return platform === Platform.VKCOM ? (\n <Text weight=\"2\" Component={Component} id={id}>\n {children}\n </Text>\n ) : (\n <Component className={styles['PanelHeader__content-in']} id={id}>\n {children}\n </Component>\n );\n};\n\nLegacyPanelHeaderContent.displayName = 'LegacyPanelHeaderContent';\n"],"names":["LegacyPanelHeaderContent","warn","warnOnce","children","Component","id","process","env","NODE_ENV","platform","usePlatform","Platform","VKCOM","Text","weight","className","displayName"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;+DAlBU;2BACK;wBACH;wBACA;oBAEJ;AAOrB,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AAMf,IAAMF,2BAA2B;QACtCG,iBAAAA,mCACAC,WAAAA,0CAAY,2BACZC,WAAAA;IAEA,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1CP,KACE;IAEJ;IAEA,IAAMQ,WAAWC,IAAAA,wBAAW;IAE5B,OAAOD,aAAaE,kBAAQ,CAACC,KAAK,iBAChC,qBAACC,UAAI;QAACC,QAAO;QAAIV,WAAWA;QAAWC,IAAIA;OACxCF,0BAGH,qBAACC;QAAUW,SAAS;QAAqCV,IAAIA;OAC1DF;AAGP;AAEAH,yBAAyBgB,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeader/PanelHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { HasComponent, HasRef, HasRootRef } from '../../types';\nimport { useConfigProvider, WebviewType } from '../ConfigProvider/ConfigProviderContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { ModalRootContext } from '../ModalRoot/ModalRootContext';\nimport { Separator } from '../Separator/Separator';\nimport { Spacing } from '../Spacing/Spacing';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Text } from '../Typography/Text/Text';\nimport { LegacyPanelHeaderContent } from './LegacyPanelHeaderContent';\nimport styles from './PanelHeader.module.css';\n\nconst platformClassNames = {\n ios: classNames(styles['PanelHeader--ios'], 'vkuiInternalPanelHeader--ios'),\n android: classNames(styles['PanelHeader--android'], 'vkuiInternalPanelHeader--android'),\n vkcom: classNames(styles['PanelHeader--vkcom'], 'vkuiInternalPanelHeader--vkcom'),\n};\n\nconst sizeXClassNames = {\n none: styles['PanelHeader--sizeX-none'],\n regular: styles['PanelHeader--sizeX-regular'],\n};\n\nexport interface PanelHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n before?: React.ReactNode;\n /**\n * Добавляет элемент справа.\n *\n * При передаче нескольких элементов, расставляет отступы между ними.\n */\n after?: React.ReactNode;\n separator?: boolean;\n transparent?: boolean;\n shadow?: boolean;\n /**\n * Если `false`, то шапка будет нулевой высоты и контент панели \"залезет\" под неё\n */\n visor?: boolean;\n /**\n * Если `false`, то шапка будет в потоке. По умолчанию `true`, но если платформа vkcom, то по умолчанию `false`.\n */\n fixed?: boolean;\n /**\n * По умолчанию как `Component` используется `span`.\n */\n typographyProps?: HasComponent & React.HTMLAttributes<HTMLElement>;\n}\n\nconst PanelHeaderIn = ({\n before,\n after,\n separator,\n children,\n typographyProps = {},\n}: PanelHeaderProps) => {\n const { Component = 'span', ...restProps } = typographyProps;\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const platform = usePlatform();\n\n let typographyNode: React.ReactNode;\n\n // TODO [>=6]: Удалить условие\n if (\n React.isValidElement(children) &&\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n (children as JSX.Element).type.displayName === LegacyPanelHeaderContent.displayName\n ) {\n typographyNode = children;\n } else {\n typographyNode =\n platform === Platform.VKCOM ? (\n <Text weight=\"2\" Component={Component} {...restProps}>\n {children}\n </Text>\n ) : (\n <Component className={styles['PanelHeader__content-in']} {...restProps}>\n {children}\n </Component>\n );\n }\n\n return (\n <React.Fragment>\n <TooltipContainer fixed className={styles['PanelHeader__in']}>\n <div\n className={classNames(styles['PanelHeader__before'], 'vkuiInternalPanelHeader__before')}\n >\n {before}\n </div>\n <div className={styles['PanelHeader__content']}>{typographyNode}</div>\n <div className={classNames(styles['PanelHeader__after'], 'vkuiInternalPanelHeader__after')}>\n {(webviewType === WebviewType.INTERNAL || isInsideModal) && after}\n </div>\n </TooltipContainer>\n {separator && platform === Platform.VKCOM && (\n <Separator className={styles['PanelHeader__separator']} wide />\n )}\n </React.Fragment>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeader\n */\nexport const PanelHeader = ({\n before,\n children,\n after,\n separator = true,\n visor = true,\n transparent = false,\n shadow,\n getRef,\n getRootRef,\n fixed,\n className,\n typographyProps,\n ...restProps\n}: PanelHeaderProps) => {\n const platform = usePlatform();\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const { sizeX = 'none' } = useAdaptivity();\n const { sizeX: adaptiveSizeX } = useAdaptivityConditionalRender();\n let isFixed = fixed !== undefined ? fixed : platform !== Platform.VKCOM;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['PanelHeader'],\n 'vkuiInternalPanelHeader',\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n transparent && styles['PanelHeader--trnsp'],\n shadow && styles['PanelHeader--shadow'],\n visor && classNames(styles['PanelHeader--vis'], 'vkuiInternalPanelHeader--vis'),\n separator &&\n visor &&\n classNames(styles['PanelHeader--sep'], 'vkuiInternalPanelHeader--sep'),\n webviewType === WebviewType.VKAPPS && !isInsideModal && styles['PanelHeader--vkapps'],\n !before &&\n classNames(styles['PanelHeader--no-before'], 'vkuiInternalPanelHeader--no-before'),\n !after && styles['PanelHeader--no-after'],\n isFixed && styles['PanelHeader--fixed'],\n sizeX !== SizeType.COMPACT && sizeXClassNames[sizeX],\n className,\n )}\n ref={isFixed ? getRootRef : getRef}\n >\n {isFixed ? (\n <FixedLayout\n className={classNames(styles['PanelHeader__fixed'], 'vkuiInternalPanelHeader__fixed')}\n vertical=\"top\"\n getRootRef={getRef}\n >\n <PanelHeaderIn\n before={before}\n after={after}\n separator={separator}\n typographyProps={typographyProps}\n >\n {children}\n </PanelHeaderIn>\n </FixedLayout>\n ) : (\n <PanelHeaderIn\n before={before}\n after={after}\n separator={separator}\n typographyProps={typographyProps}\n >\n {children}\n </PanelHeaderIn>\n )}\n {separator && visor && platform !== Platform.VKCOM && (\n <React.Fragment>\n {adaptiveSizeX.compact && <Separator className={adaptiveSizeX.compact.className} />}\n {adaptiveSizeX.regular && (\n <Spacing className={adaptiveSizeX.regular.className} size={16} />\n )}\n </React.Fragment>\n )}\n </div>\n );\n};\n\nPanelHeader.Content = LegacyPanelHeaderContent;\n"],"names":["PanelHeader","platformClassNames","ios","classNames","android","vkcom","sizeXClassNames","none","regular","PanelHeaderIn","before","after","separator","children","typographyProps","Component","restProps","webviewType","useConfigProvider","isInsideModal","React","useContext","ModalRootContext","platform","usePlatform","typographyNode","isValidElement","type","displayName","LegacyPanelHeaderContent","Platform","VKCOM","Text","weight","className","Fragment","TooltipContainer","fixed","div","WebviewType","INTERNAL","Separator","wide","visor","transparent","shadow","getRef","getRootRef","useAdaptivity","sizeX","useAdaptivityConditionalRender","adaptiveSizeX","isFixed","undefined","hasOwnProperty","VKAPPS","SizeType","COMPACT","ref","FixedLayout","vertical","compact","Spacing","size","Content"],"mappings":";;;;+BAkHaA;;;eAAAA;;;;;;;+DAlHU;oBACI;6BACG;8CACiB;2BACnB;0BACH;wBACA;qCAEsB;2BACnB;gCACK;yBACP;uBACF;gCACS;oBACZ;wCACoB;AAGzC,IAAMC,qBAAqB;IACzBC,KAAKC,IAAAA,0CAAuC;IAC5CC,SAASD,IAAAA,8CAA2C;IACpDE,OAAOF,IAAAA,4CAAyC;AAClD;AAEA,IAAMG,kBAAkB;IACtBC,IAAI;IACJC,OAAO;AACT;AA8BA,IAAMC,gBAAgB;QACpBC,eAAAA,QACAC,cAAAA,OACAC,kBAAAA,WACAC,iBAAAA,yCACAC,iBAAAA,sDAAkB,CAAC;IAEnB,iCAA6CA,gBAArCC,WAAAA,oDAAY,qCAAWC,yCAAcF;QAArCC;;IACR,IAAM,AAAEE,cAAgBC,IAAAA,4CAAhBD;IACR,IAAM,AAAEE,gBAAkBC,OAAMC,WAAWC,oCAAnCH;IACR,IAAMI,WAAWC,IAAAA;IAEjB,IAAIC;IAEJ,8BAA8B;IAC9B,kBACEL,OAAMM,eAAeb,aAErB,AADA,mEAAmE;IAClEA,SAAyBc,KAAKC,gBAAgBC,mDAAyBD,aACxE;QACAH,iBAAiBZ;IACnB,OAAO;QACLY,iBACEF,aAAaO,mBAASC,sBACpB,qBAACC;YAAKC,QAAO;YAAIlB,WAAWA;WAAeC,YACxCH,0BAGH,qBAACE;YAAUmB,SAAS;WAAyClB,YAC1DH;IAGT;IAEA,qBACE,qBAACO,OAAMe,8BACL,qBAACC;QAAiBC,OAAAA;QAAMH,SAAS;qBAC/B,qBAACI;QACCJ,WAAW/B,IAAAA,6CAA0C;OAEpDO,uBAEH,qBAAC4B;QAAIJ,SAAS;OAAmCT,+BACjD,qBAACa;QAAIJ,WAAW/B,IAAAA,4CAAyC;OACtD,AAACc,CAAAA,gBAAgBsB,mCAAYC,YAAYrB,aAAY,KAAMR,SAG/DC,aAAaW,aAAaO,mBAASC,uBAClC,qBAACU;QAAUP,SAAS;QAAoCQ,MAAAA;;AAIhE;AAKO,IAAM1C,cAAc;QACzBU,gBAAAA,QACAG,kBAAAA,UACAF,eAAAA,iCACAC,WAAAA,0CAAY,+CACZ+B,OAAAA,kCAAQ,iDACRC,aAAAA,8CAAc,4BACdC,gBAAAA,QACAC,gBAAAA,QACAC,oBAAAA,YACAV,eAAAA,OACAH,mBAAAA,WACApB,yBAAAA,iBACGE;QAZHN;QACAG;QACAF;QACAC;QACA+B;QACAC;QACAC;QACAC;QACAC;QACAV;QACAH;QACApB;;IAGA,IAAMS,WAAWC,IAAAA;IACjB,IAAM,AAAEP,cAAgBC,IAAAA,4CAAhBD;IACR,IAAM,AAAEE,gBAAkBC,OAAMC,WAAWC,oCAAnCH;IACR,IAA2B6B,kBAAAA,IAAAA,wDAAAA,gBAAnBC,OAAAA,0CAAQ;IAChB,IAAiCC,mCAAAA,IAAAA,mEAAzBD,AAAOE,gBAAkBD,iCAAzBD;IACR,IAAIG,UAAUf,UAAUgB,YAAYhB,QAAQd,aAAaO,mBAASC;IAElE,qBACE,qBAACO,mDACKtB;QACJkB,WAAW/B,IAAAA,qCAET,2BACAF,mBAAmBqD,eAAe/B,YAC9BtB,kBAAkB,CAACsB,SAAS,GAC5BtB,mBAAmBG,SACvBwC,yCACAC,qCACAF,SAASxC,IAAAA,0CAAuC,iCAChDS,aACE+B,SACAxC,IAAAA,0CAAuC,iCACzCc,gBAAgBsB,mCAAYgB,UAAU,CAACpC,4CACvC,CAACT,UACCP,IAAAA,gDAA6C,uCAC/C,CAACQ,sCACDyC,qCACAH,UAAUO,qBAASC,WAAWnD,eAAe,CAAC2C,MAAM,EACpDf;QAEFwB,KAAKN,UAAUL,aAAaD;QAE3BM,wBACC,qBAACO;QACCzB,WAAW/B,IAAAA,4CAAyC;QACpDyD,UAAS;QACTb,YAAYD;qBAEZ,qBAACrC;QACCC,QAAQA;QACRC,OAAOA;QACPC,WAAWA;QACXE,iBAAiBA;OAEhBD,2BAIL,qBAACJ;QACCC,QAAQA;QACRC,OAAOA;QACPC,WAAWA;QACXE,iBAAiBA;OAEhBD,WAGJD,aAAa+B,SAASpB,aAAaO,mBAASC,uBAC3C,qBAACX,OAAMe,gBACJgB,cAAcU,yBAAW,qBAACpB;QAAUP,WAAWiB,cAAcU,QAAQ3B;QACrEiB,cAAc3C,yBACb,qBAACsD;QAAQ5B,WAAWiB,cAAc3C,QAAQ0B;QAAW6B,MAAM;;AAMvE;AAEA/D,YAAYgE,UAAUnC"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeader/PanelHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { HasComponent, HasRef, HasRootRef } from '../../types';\nimport { useConfigProvider, WebviewType } from '../ConfigProvider/ConfigProviderContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport { ModalRootContext } from '../ModalRoot/ModalRootContext';\nimport { Separator } from '../Separator/Separator';\nimport { Spacing } from '../Spacing/Spacing';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport { Text } from '../Typography/Text/Text';\nimport { LegacyPanelHeaderContent } from './LegacyPanelHeaderContent';\nimport styles from './PanelHeader.module.css';\n\nconst platformClassNames = {\n ios: classNames(styles['PanelHeader--ios'], 'vkuiInternalPanelHeader--ios'),\n android: classNames(styles['PanelHeader--android'], 'vkuiInternalPanelHeader--android'),\n vkcom: classNames(styles['PanelHeader--vkcom'], 'vkuiInternalPanelHeader--vkcom'),\n};\n\nconst sizeXClassNames = {\n none: styles['PanelHeader--sizeX-none'],\n regular: styles['PanelHeader--sizeX-regular'],\n};\n\nexport interface PanelHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRef<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n before?: React.ReactNode;\n /**\n * Добавляет элемент справа.\n *\n * При передаче нескольких элементов, расставляет отступы между ними.\n */\n after?: React.ReactNode;\n separator?: boolean;\n transparent?: boolean;\n shadow?: boolean;\n /**\n * Если `false`, то шапка будет нулевой высоты и контент панели \"залезет\" под неё\n */\n visor?: boolean;\n /**\n * Если `false`, то шапка будет в потоке. По умолчанию `true`, но если платформа vkcom, то по умолчанию `false`.\n */\n fixed?: boolean;\n /**\n * По умолчанию как `Component` используется `span`.\n */\n typographyProps?: HasComponent & React.HTMLAttributes<HTMLElement>;\n}\n\nconst PanelHeaderIn = ({\n before,\n after,\n separator,\n children,\n typographyProps = {},\n}: PanelHeaderProps) => {\n const { Component = 'span', ...restProps } = typographyProps;\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const platform = usePlatform();\n\n let typographyNode: React.ReactNode;\n\n // TODO [>=6]: Удалить условие\n if (\n React.isValidElement(children) &&\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n (children as JSX.Element).type.displayName === LegacyPanelHeaderContent.displayName\n ) {\n typographyNode = children;\n } else {\n typographyNode =\n platform === Platform.VKCOM ? (\n <Text weight=\"2\" Component={Component} {...restProps}>\n {children}\n </Text>\n ) : (\n <Component className={styles['PanelHeader__content-in']} {...restProps}>\n {children}\n </Component>\n );\n }\n\n return (\n <React.Fragment>\n <TooltipContainer fixed className={styles['PanelHeader__in']}>\n <div\n className={classNames(styles['PanelHeader__before'], 'vkuiInternalPanelHeader__before')}\n >\n {before}\n </div>\n <div className={styles['PanelHeader__content']}>{typographyNode}</div>\n <div className={classNames(styles['PanelHeader__after'], 'vkuiInternalPanelHeader__after')}>\n {(webviewType === WebviewType.INTERNAL || isInsideModal) && after}\n </div>\n </TooltipContainer>\n {separator && platform === Platform.VKCOM && (\n <Separator className={styles['PanelHeader__separator']} wide />\n )}\n </React.Fragment>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeader\n */\nexport const PanelHeader = ({\n before,\n children,\n after,\n separator = true,\n visor = true,\n transparent = false,\n shadow,\n getRef,\n getRootRef,\n fixed,\n className,\n typographyProps,\n ...restProps\n}: PanelHeaderProps) => {\n const platform = usePlatform();\n const { webviewType } = useConfigProvider();\n const { isInsideModal } = React.useContext(ModalRootContext);\n const { sizeX = 'none' } = useAdaptivity();\n const { sizeX: adaptiveSizeX } = useAdaptivityConditionalRender();\n let isFixed = fixed !== undefined ? fixed : platform !== Platform.VKCOM;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['PanelHeader'],\n 'vkuiInternalPanelHeader',\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n transparent && styles['PanelHeader--trnsp'],\n shadow && styles['PanelHeader--shadow'],\n visor && classNames(styles['PanelHeader--vis'], 'vkuiInternalPanelHeader--vis'),\n separator &&\n visor &&\n classNames(styles['PanelHeader--sep'], 'vkuiInternalPanelHeader--sep'),\n webviewType === WebviewType.VKAPPS && !isInsideModal && styles['PanelHeader--vkapps'],\n !before &&\n classNames(styles['PanelHeader--no-before'], 'vkuiInternalPanelHeader--no-before'),\n !after && styles['PanelHeader--no-after'],\n isFixed && styles['PanelHeader--fixed'],\n sizeX !== SizeType.COMPACT && sizeXClassNames[sizeX],\n className,\n )}\n ref={isFixed ? getRootRef : getRef}\n >\n {isFixed ? (\n <FixedLayout\n className={classNames(styles['PanelHeader__fixed'], 'vkuiInternalPanelHeader__fixed')}\n vertical=\"top\"\n getRootRef={getRef}\n >\n <PanelHeaderIn\n before={before}\n after={after}\n separator={separator}\n typographyProps={typographyProps}\n >\n {children}\n </PanelHeaderIn>\n </FixedLayout>\n ) : (\n <PanelHeaderIn\n before={before}\n after={after}\n separator={separator}\n typographyProps={typographyProps}\n >\n {children}\n </PanelHeaderIn>\n )}\n {separator && visor && platform !== Platform.VKCOM && (\n <React.Fragment>\n {adaptiveSizeX.compact && <Separator className={adaptiveSizeX.compact.className} />}\n {adaptiveSizeX.regular && (\n <Spacing className={adaptiveSizeX.regular.className} size={16} />\n )}\n </React.Fragment>\n )}\n </div>\n );\n};\n\nPanelHeader.Content = LegacyPanelHeaderContent;\n"],"names":["PanelHeader","platformClassNames","ios","classNames","android","vkcom","sizeXClassNames","none","regular","PanelHeaderIn","before","after","separator","children","typographyProps","Component","restProps","webviewType","useConfigProvider","isInsideModal","React","useContext","ModalRootContext","platform","usePlatform","typographyNode","isValidElement","type","displayName","LegacyPanelHeaderContent","Platform","VKCOM","Text","weight","className","Fragment","TooltipContainer","fixed","div","WebviewType","INTERNAL","Separator","wide","visor","transparent","shadow","getRef","getRootRef","useAdaptivity","sizeX","useAdaptivityConditionalRender","adaptiveSizeX","isFixed","undefined","hasOwnProperty","VKAPPS","SizeType","COMPACT","ref","FixedLayout","vertical","compact","Spacing","size","Content"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderBack/PanelHeaderBack.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon28ArrowLeftOutline,\n Icon28ChevronBack,\n Icon28ChevronLeftOutline,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\nimport styles from '../PanelHeaderButton/PanelHeaderButton.module.css';\n\nexport type PanelHeaderBackProps = PanelHeaderButtonProps & {\n 'aria-label'?: string;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderBack\n */\nexport const PanelHeaderBack = ({\n label,\n 'aria-label': ariaLabel = 'Назад',\n className,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n const { sizeX = 'none' } = useAdaptivity();\n // так-же label нужно скрывать при platform === Platform.IOS && sizeX === regular\n // https://github.com/VKCOM/VKUI/blob/master/src/components/PanelHeaderButton/PanelHeaderButton.css#L104\n const showLabel = platform === Platform.VKCOM || platform === Platform.IOS;\n\n let icon = <Icon28ArrowLeftOutline />;\n switch (platform) {\n case Platform.IOS:\n icon = <Icon28ChevronBack />;\n break;\n case Platform.VKCOM:\n icon = <Icon28ChevronLeftOutline />;\n break;\n }\n\n return (\n <PanelHeaderButton\n {...restProps}\n className={classNames(\n sizeX === SizeType.COMPACT && styles['PanelHeaderBack--sizeX-compact'],\n platform === Platform.IOS && styles['PanelHeaderBack--ios'],\n platform === Platform.VKCOM && styles['PanelHeaderBack--vkcom'],\n showLabel && !!label && styles['PanelHeaderBack--has-label'],\n className,\n )}\n label={showLabel && label}\n aria-label={ariaLabel}\n >\n {icon}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderBack","label","ariaLabel","className","restProps","platform","usePlatform","useAdaptivity","sizeX","showLabel","Platform","VKCOM","IOS","icon","Icon28ArrowLeftOutline","Icon28ChevronBack","Icon28ChevronLeftOutline","PanelHeaderButton","classNames","SizeType","COMPACT","aria-label"],"mappings":";;;;+BAqBaA;;;eAAAA;;;;;;;+DArBU;qBAKhB;oBACoB;6BACG;2BACF;0BACH;wBACA;iCACiC;AAUnD,IAAMA,kBAAkB;QAC7BC,eAAAA,OACcC,aAAd,eAAcA,YAAAA,iBAAY,UAAZA,KACdC,mBAAAA,WACGC;QAHHH;QACA;QACAE;;IAGA,IAAME,WAAWC,IAAAA;IACjB,IAA2BC,kBAAAA,IAAAA,wDAAAA,gBAAnBC,OAAAA,0CAAQ;IAChB,iFAAiF;IACjF,wGAAwG;IACxG,IAAMC,YAAYJ,aAAaK,mBAASC,SAASN,aAAaK,mBAASE;IAEvE,IAAIC,qBAAO,qBAACC;IACZ,OAAQT;QACN,KAAKK,mBAASE;YACZC,qBAAO,qBAACE;YACR;QACF,KAAKL,mBAASC;YACZE,qBAAO,qBAACG;YACR;IACJ;IAEA,qBACE,qBAACC,kFACKb;QACJD,WAAWe,IAAAA,kBACTV,UAAUW,qBAASC,iDACnBf,aAAaK,mBAASE,mCACtBP,aAAaK,mBAASC,uCACtBF,aAAa,CAAC,CAACR,2CACfE;QAEFF,OAAOQ,aAAaR;QACpBoB,cAAYnB;QAEXW;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderBack/PanelHeaderBack.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon28ArrowLeftOutline,\n Icon28ChevronBack,\n Icon28ChevronLeftOutline,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { Platform } from '../../lib/platform';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\nimport styles from '../PanelHeaderButton/PanelHeaderButton.module.css';\n\nexport type PanelHeaderBackProps = PanelHeaderButtonProps & {\n 'aria-label'?: string;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderBack\n */\nexport const PanelHeaderBack = ({\n label,\n 'aria-label': ariaLabel = 'Назад',\n className,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n const { sizeX = 'none' } = useAdaptivity();\n // так-же label нужно скрывать при platform === Platform.IOS && sizeX === regular\n // https://github.com/VKCOM/VKUI/blob/master/src/components/PanelHeaderButton/PanelHeaderButton.css#L104\n const showLabel = platform === Platform.VKCOM || platform === Platform.IOS;\n\n let icon = <Icon28ArrowLeftOutline />;\n switch (platform) {\n case Platform.IOS:\n icon = <Icon28ChevronBack />;\n break;\n case Platform.VKCOM:\n icon = <Icon28ChevronLeftOutline />;\n break;\n }\n\n return (\n <PanelHeaderButton\n {...restProps}\n className={classNames(\n sizeX === SizeType.COMPACT && styles['PanelHeaderBack--sizeX-compact'],\n platform === Platform.IOS && styles['PanelHeaderBack--ios'],\n platform === Platform.VKCOM && styles['PanelHeaderBack--vkcom'],\n showLabel && !!label && styles['PanelHeaderBack--has-label'],\n className,\n )}\n label={showLabel && label}\n aria-label={ariaLabel}\n >\n {icon}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderBack","label","ariaLabel","className","restProps","platform","usePlatform","useAdaptivity","sizeX","showLabel","Platform","VKCOM","IOS","icon","Icon28ArrowLeftOutline","Icon28ChevronBack","Icon28ChevronLeftOutline","PanelHeaderButton","classNames","SizeType","COMPACT","aria-label"],"mappings":";;;;+BAqBaA;;;eAAAA;;;;;;;+DArBU;qBAKhB;oBACoB;6BACG;2BACF;0BACH;wBACA;iCACiC;AAUnD,IAAMA,kBAAkB;QAC7BC,eAAAA,OACcC,aAAd,eAAcA,YAAAA,iBAAY,UAAZA,KACdC,mBAAAA,WACGC;QAHHH;QACA;QACAE;;IAGA,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,IAA2BC,kBAAAA,IAAAA,4BAAa,4BAAbA,gBAAnBC,OAAAA,0CAAQ;IAChB,iFAAiF;IACjF,wGAAwG;IACxG,IAAMC,YAAYJ,aAAaK,kBAAQ,CAACC,KAAK,IAAIN,aAAaK,kBAAQ,CAACE,GAAG;IAE1E,IAAIC,qBAAO,qBAACC,6BAAsB;IAClC,OAAQT;QACN,KAAKK,kBAAQ,CAACE,GAAG;YACfC,qBAAO,qBAACE,wBAAiB;YACzB;QACF,KAAKL,kBAAQ,CAACC,KAAK;YACjBE,qBAAO,qBAACG,+BAAwB;YAChC;IACJ;IAEA,qBACE,qBAACC,oCAAiB,8CACZb;QACJD,WAAWe,IAAAA,gBAAU,EACnBV,UAAUW,oBAAQ,CAACC,OAAO,0CAC1Bf,aAAaK,kBAAQ,CAACE,GAAG,gCACzBP,aAAaK,kBAAQ,CAACC,KAAK,kCAC3BF,aAAa,CAAC,CAACR,2CACfE;QAEFF,OAAOQ,aAAaR;QACpBoB,cAAYnB;QAEXW;AAGP"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderButton/PanelHeaderButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, isPrimitiveReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { Tappable, TappableProps } from '../Tappable/Tappable';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './PanelHeaderButton.module.css';\n\nconst platformClassNames = {\n ios: styles['PanelHeaderButton--ios'],\n android: styles['PanelHeaderButton--android'],\n vkcom: styles['PanelHeaderButton--vkcom'],\n};\n\nexport interface PanelHeaderButtonProps extends Omit<TappableProps, 'label'> {\n primary?: boolean;\n label?: React.ReactNode;\n}\n\ninterface ButtonTypographyProps extends React.AllHTMLAttributes<HTMLElement> {\n primary?: PanelHeaderButtonProps['primary'];\n}\n\nconst ButtonTypography = ({ primary, children }: ButtonTypographyProps) => {\n const platform = usePlatform();\n\n if (platform === Platform.IOS) {\n return (\n <Title Component=\"span\" level=\"3\" weight={primary ? '1' : '3'}>\n {children}\n </Title>\n );\n }\n\n return <Text weight={platform === Platform.VKCOM ? undefined : '2'}>{children}</Text>;\n};\n\nconst warn = warnOnce('PanelHeaderButton');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderButton\n */\nexport const PanelHeaderButton = ({\n children,\n primary = false,\n label,\n className,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const isPrimitive = isPrimitiveReactNode(children);\n const isPrimitiveLabel = isPrimitiveReactNode(label);\n const platform = usePlatform();\n\n let hoverMode;\n let activeMode;\n\n switch (platform) {\n case Platform.IOS:\n hoverMode = 'background';\n activeMode = 'opacity';\n break;\n case Platform.VKCOM:\n hoverMode = styles['PanelHeaderButton--hover'];\n activeMode = styles['PanelHeaderButton--active'];\n break;\n default:\n hoverMode = 'background';\n activeMode = 'background';\n }\n\n if (process.env.NODE_ENV === 'development') {\n const hasAccessibleName = Boolean(\n getTitleFromChildren(children) ||\n getTitleFromChildren(label) ||\n restProps['aria-label'] ||\n restProps['aria-labelledby'],\n );\n\n if (!hasAccessibleName) {\n warn(\n 'a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label.',\n 'error',\n );\n }\n }\n\n return (\n <Tappable\n Component={restProps.href ? 'a' : 'button'}\n {...restProps}\n hoverMode={hoverMode}\n activeEffectDelay={200}\n activeMode={activeMode}\n className={classNames(\n 'vkuiInternalPanelHeaderButton',\n styles['PanelHeaderButton'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n isPrimitive && styles['PanelHeaderButton--primitive'],\n !isPrimitive && !isPrimitiveLabel && styles['PanelHeaderButton--notPrimitive'],\n className,\n )}\n >\n {isPrimitive ? <ButtonTypography primary={primary}>{children}</ButtonTypography> : children}\n {isPrimitiveLabel ? (\n <ButtonTypography primary={primary} className={styles['PanelHeaderButton__label']}>\n {label}\n </ButtonTypography>\n ) : (\n label\n )}\n </Tappable>\n );\n};\n"],"names":["PanelHeaderButton","platformClassNames","ios","android","vkcom","ButtonTypography","primary","children","platform","usePlatform","Platform","IOS","Title","Component","level","weight","Text","VKCOM","undefined","warn","warnOnce","label","className","restProps","isPrimitive","isPrimitiveReactNode","isPrimitiveLabel","hoverMode","activeMode","process","env","NODE_ENV","hasAccessibleName","Boolean","getTitleFromChildren","Tappable","href","activeEffectDelay","classNames","hasOwnProperty"],"mappings":";;;;+BA6CaA;;;eAAAA;;;;;;;+DA7CU;oBAC0B;2BACrB;wBACH;qBACY;wBACZ;wBACe;oBACnB;qBACC;AAGtB,IAAMC,qBAAqB;IACzBC,GAAG;IACHC,OAAO;IACPC,KAAK;AACP;AAWA,IAAMC,mBAAmB;QAAGC,gBAAAA,SAASC,iBAAAA;IACnC,IAAMC,WAAWC,IAAAA;IAEjB,IAAID,aAAaE,mBAASC,KAAK;QAC7B,qBACE,qBAACC;YAAMC,WAAU;YAAOC,OAAM;YAAIC,QAAQT,UAAU,MAAM;WACvDC;IAGP;IAEA,qBAAO,qBAACS;QAAKD,QAAQP,aAAaE,mBAASO,QAAQC,YAAY;OAAMX;AACvE;AAEA,IAAMY,OAAOC,IAAAA,oBAAS;AAKf,IAAMpB,oBAAoB;QAC/BO,kBAAAA,kCACAD,SAAAA,sCAAU,wBACVe,eAAAA,OACAC,mBAAAA,WACGC;QAJHhB;QACAD;QACAe;QACAC;;IAGA,IAAME,cAAcC,IAAAA,4BAAqBlB;IACzC,IAAMmB,mBAAmBD,IAAAA,4BAAqBJ;IAC9C,IAAMb,WAAWC,IAAAA;IAEjB,IAAIkB;IACJ,IAAIC;IAEJ,OAAQpB;QACN,KAAKE,mBAASC;YACZgB,YAAY;YACZC,aAAa;YACb;QACF,KAAKlB,mBAASO;YACZU;YACAC;YACA;QACF;YACED,YAAY;YACZC,aAAa;IACjB;IAEA,IAAIC,QAAQC,IAAIC,aAAa,eAAe;QAC1C,IAAMC,oBAAoBC,QACxBC,IAAAA,6BAAqB3B,aACnB2B,IAAAA,6BAAqBb,UACrBE,SAAS,CAAC,aAAa,IACvBA,SAAS,CAAC,kBAAkB;QAGhC,IAAI,CAACS,mBAAmB;YACtBb,KACE,sMACA;QAEJ;IACF;IAEA,qBACE,qBAACgB;QACCtB,WAAWU,UAAUa,OAAO,MAAM;OAC9Bb;QACJI,WAAWA;QACXU,mBAAmB;QACnBT,YAAYA;QACZN,WAAWgB,IAAAA,kBACT,0DAEArC,mBAAmBsC,eAAe/B,YAC9BP,kBAAkB,CAACO,SAAS,GAC5BP,mBAAmBE,SACvBqB,mDACA,CAACA,eAAe,CAACE,2DACjBJ;QAGDE,4BAAc,qBAACnB;QAAiBC,SAASA;OAAUC,YAA+BA,UAClFmB,iCACC,qBAACrB;QAAiBC,SAASA;QAASgB,SAAS;OAC1CD,SAGHA;AAIR"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderButton/PanelHeaderButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, isPrimitiveReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { Tappable, TappableProps } from '../Tappable/Tappable';\nimport { Text } from '../Typography/Text/Text';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './PanelHeaderButton.module.css';\n\nconst platformClassNames = {\n ios: styles['PanelHeaderButton--ios'],\n android: styles['PanelHeaderButton--android'],\n vkcom: styles['PanelHeaderButton--vkcom'],\n};\n\nexport interface PanelHeaderButtonProps extends Omit<TappableProps, 'label'> {\n primary?: boolean;\n label?: React.ReactNode;\n}\n\ninterface ButtonTypographyProps extends React.AllHTMLAttributes<HTMLElement> {\n primary?: PanelHeaderButtonProps['primary'];\n}\n\nconst ButtonTypography = ({ primary, children }: ButtonTypographyProps) => {\n const platform = usePlatform();\n\n if (platform === Platform.IOS) {\n return (\n <Title Component=\"span\" level=\"3\" weight={primary ? '1' : '3'}>\n {children}\n </Title>\n );\n }\n\n return <Text weight={platform === Platform.VKCOM ? undefined : '2'}>{children}</Text>;\n};\n\nconst warn = warnOnce('PanelHeaderButton');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderButton\n */\nexport const PanelHeaderButton = ({\n children,\n primary = false,\n label,\n className,\n ...restProps\n}: PanelHeaderButtonProps) => {\n const isPrimitive = isPrimitiveReactNode(children);\n const isPrimitiveLabel = isPrimitiveReactNode(label);\n const platform = usePlatform();\n\n let hoverMode;\n let activeMode;\n\n switch (platform) {\n case Platform.IOS:\n hoverMode = 'background';\n activeMode = 'opacity';\n break;\n case Platform.VKCOM:\n hoverMode = styles['PanelHeaderButton--hover'];\n activeMode = styles['PanelHeaderButton--active'];\n break;\n default:\n hoverMode = 'background';\n activeMode = 'background';\n }\n\n if (process.env.NODE_ENV === 'development') {\n const hasAccessibleName = Boolean(\n getTitleFromChildren(children) ||\n getTitleFromChildren(label) ||\n restProps['aria-label'] ||\n restProps['aria-labelledby'],\n );\n\n if (!hasAccessibleName) {\n warn(\n 'a11y: У кнопки нет названия, которое может прочитать скринридер, и она недоступна для части пользователей. Замените содержимое на текст или добавьте описание действия с помощью пропа aria-label.',\n 'error',\n );\n }\n }\n\n return (\n <Tappable\n Component={restProps.href ? 'a' : 'button'}\n {...restProps}\n hoverMode={hoverMode}\n activeEffectDelay={200}\n activeMode={activeMode}\n className={classNames(\n 'vkuiInternalPanelHeaderButton',\n styles['PanelHeaderButton'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n isPrimitive && styles['PanelHeaderButton--primitive'],\n !isPrimitive && !isPrimitiveLabel && styles['PanelHeaderButton--notPrimitive'],\n className,\n )}\n >\n {isPrimitive ? <ButtonTypography primary={primary}>{children}</ButtonTypography> : children}\n {isPrimitiveLabel ? (\n <ButtonTypography primary={primary} className={styles['PanelHeaderButton__label']}>\n {label}\n </ButtonTypography>\n ) : (\n label\n )}\n </Tappable>\n );\n};\n"],"names":["PanelHeaderButton","platformClassNames","ios","android","vkcom","ButtonTypography","primary","children","platform","usePlatform","Platform","IOS","Title","Component","level","weight","Text","VKCOM","undefined","warn","warnOnce","label","className","restProps","isPrimitive","isPrimitiveReactNode","isPrimitiveLabel","hoverMode","activeMode","process","env","NODE_ENV","hasAccessibleName","Boolean","getTitleFromChildren","Tappable","href","activeEffectDelay","classNames","hasOwnProperty"],"mappings":";;;;+BA6CaA;;;eAAAA;;;;;;;+DA7CU;oBAC0B;2BACrB;wBACH;qBACY;wBACZ;wBACe;oBACnB;qBACC;AAGtB,IAAMC,qBAAqB;IACzBC,GAAG;IACHC,OAAO;IACPC,KAAK;AACP;AAWA,IAAMC,mBAAmB;QAAGC,gBAAAA,SAASC,iBAAAA;IACnC,IAAMC,WAAWC,IAAAA,wBAAW;IAE5B,IAAID,aAAaE,kBAAQ,CAACC,GAAG,EAAE;QAC7B,qBACE,qBAACC,YAAK;YAACC,WAAU;YAAOC,OAAM;YAAIC,QAAQT,UAAU,MAAM;WACvDC;IAGP;IAEA,qBAAO,qBAACS,UAAI;QAACD,QAAQP,aAAaE,kBAAQ,CAACO,KAAK,GAAGC,YAAY;OAAMX;AACvE;AAEA,IAAMY,OAAOC,IAAAA,kBAAQ,EAAC;AAKf,IAAMpB,oBAAoB;QAC/BO,kBAAAA,kCACAD,SAAAA,sCAAU,wBACVe,eAAAA,OACAC,mBAAAA,WACGC;QAJHhB;QACAD;QACAe;QACAC;;IAGA,IAAME,cAAcC,IAAAA,0BAAoB,EAAClB;IACzC,IAAMmB,mBAAmBD,IAAAA,0BAAoB,EAACJ;IAC9C,IAAMb,WAAWC,IAAAA,wBAAW;IAE5B,IAAIkB;IACJ,IAAIC;IAEJ,OAAQpB;QACN,KAAKE,kBAAQ,CAACC,GAAG;YACfgB,YAAY;YACZC,aAAa;YACb;QACF,KAAKlB,kBAAQ,CAACO,KAAK;YACjBU;YACAC;YACA;QACF;YACED,YAAY;YACZC,aAAa;IACjB;IAEA,IAAIC,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1C,IAAMC,oBAAoBC,QACxBC,IAAAA,2BAAoB,EAAC3B,aACnB2B,IAAAA,2BAAoB,EAACb,UACrBE,SAAS,CAAC,aAAa,IACvBA,SAAS,CAAC,kBAAkB;QAGhC,IAAI,CAACS,mBAAmB;YACtBb,KACE,sMACA;QAEJ;IACF;IAEA,qBACE,qBAACgB,kBAAQ;QACPtB,WAAWU,UAAUa,IAAI,GAAG,MAAM;OAC9Bb;QACJI,WAAWA;QACXU,mBAAmB;QACnBT,YAAYA;QACZN,WAAWgB,IAAAA,gBAAU,EACnB,0DAEArC,mBAAmBsC,cAAc,CAAC/B,YAC9BP,kBAAkB,CAACO,SAAS,GAC5BP,mBAAmBE,OAAO,EAC9BqB,mDACA,CAACA,eAAe,CAACE,2DACjBJ;QAGDE,4BAAc,qBAACnB;QAAiBC,SAASA;OAAUC,YAA+BA,UAClFmB,iCACC,qBAACrB;QAAiBC,SAASA;QAASgB,SAAS;OAC1CD,SAGHA;AAIR"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderClose/PanelHeaderClose.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28CancelOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderClose\n */\nexport const PanelHeaderClose = ({ children = 'Отмена', ...restProps }: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n return (\n <PanelHeaderButton aria-label={getTitleFromChildren(children)} {...restProps}>\n {platform === Platform.IOS ? children : <Icon28CancelOutline />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderClose","children","restProps","platform","usePlatform","PanelHeaderButton","aria-label","getTitleFromChildren","Platform","IOS","Icon28CancelOutline"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;+DAVU;qBACa;2BACR;wBACH;qBACY;iCACqB;AAKnD,IAAMA,mBAAmB;iCAAGC,UAAAA,wCAAW,4BAAaC;QAAxBD;;IACjC,IAAME,WAAWC,IAAAA;IACjB,qBACE,qBAACC;QAAkBC,cAAYC,IAAAA,6BAAqBN;OAAeC,YAChEC,aAAaK,mBAASC,MAAMR,yBAAW,qBAACS;AAG/C"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderClose/PanelHeaderClose.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28CancelOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderClose\n */\nexport const PanelHeaderClose = ({ children = 'Отмена', ...restProps }: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n return (\n <PanelHeaderButton aria-label={getTitleFromChildren(children)} {...restProps}>\n {platform === Platform.IOS ? children : <Icon28CancelOutline />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderClose","children","restProps","platform","usePlatform","PanelHeaderButton","aria-label","getTitleFromChildren","Platform","IOS","Icon28CancelOutline"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;+DAVU;qBACa;2BACR;wBACH;qBACY;iCACqB;AAKnD,IAAMA,mBAAmB;iCAAGC,UAAAA,wCAAW,4BAAaC;QAAxBD;;IACjC,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,qBACE,qBAACC,oCAAiB;QAACC,cAAYC,IAAAA,2BAAoB,EAACN;OAAeC,YAChEC,aAAaK,kBAAQ,CAACC,GAAG,GAAGR,yBAAW,qBAACS,0BAAmB;AAGlE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderContent/PanelHeaderContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasChildren } from '../../types';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeaderContent.module.css';\n\nconst platformClassNames = {\n ios: styles['PanelHeaderContent--ios'],\n android: styles['PanelHeaderContent--android'],\n vkcom: styles['PanelHeaderContent--vkcom'],\n};\n\nexport interface PanelHeaderContentProps extends React.HTMLAttributes<HTMLDivElement> {\n aside?: React.ReactNode;\n before?: React.ReactNode;\n status?: React.ReactNode;\n}\n\ninterface PanelHeaderChildrenProps extends HasChildren {\n hasStatus: boolean;\n hasBefore: boolean;\n}\n\nconst PanelHeaderChildren = ({ hasStatus, hasBefore, children }: PanelHeaderChildrenProps) => {\n const platform = usePlatform();\n if (platform === Platform.VKCOM) {\n return (\n <Text className={styles['PanelHeaderContent__childrenText']} Component=\"div\" weight=\"2\">\n {children}\n </Text>\n );\n }\n\n return hasStatus || hasBefore ? (\n <Headline className={styles['PanelHeaderContent__childrenText']} Component=\"div\" weight=\"2\">\n {children}\n </Headline>\n ) : (\n <div className={styles['PanelHeaderContent__children-in']}>{children}</div>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderContent\n */\nexport const PanelHeaderContent = ({\n className,\n style,\n aside,\n status,\n before,\n children,\n onClick,\n ...restProps\n}: PanelHeaderContentProps) => {\n const InComponent = onClick ? Tappable : 'div';\n const rootProps = onClick ? {} : restProps;\n const platform = usePlatform();\n const inProps = onClick\n ? {\n ...restProps,\n onClick,\n activeEffectDelay: 200,\n hasActive: platform === Platform.IOS,\n activeMode: 'opacity',\n }\n : {};\n\n return (\n <div\n {...rootProps}\n style={style}\n className={classNames(\n styles['PanelHeaderContent'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n className,\n )}\n >\n {hasReactNode(before) && <div className={styles['PanelHeaderContent__before']}>{before}</div>}\n <InComponent\n {...inProps}\n className={classNames(\n styles['PanelHeaderContent__in'],\n !before && platform !== Platform.ANDROID && styles['PanelHeaderContent__in--centered'],\n )}\n >\n {hasReactNode(status) && (\n <Footnote className={styles['PanelHeaderContent__status']}>{status}</Footnote>\n )}\n <div className={styles['PanelHeaderContent__children']}>\n <PanelHeaderChildren hasStatus={hasReactNode(status)} hasBefore={hasReactNode(before)}>\n {children}\n </PanelHeaderChildren>\n {hasReactNode(aside) && (\n <div className={styles['PanelHeaderContent__aside']}>{aside}</div>\n )}\n </div>\n {hasReactNode(before) && <div className={styles['PanelHeaderContent__width']} />}\n </InComponent>\n </div>\n );\n};\n"],"names":["PanelHeaderContent","platformClassNames","ios","android","vkcom","PanelHeaderChildren","hasStatus","hasBefore","children","platform","usePlatform","Platform","VKCOM","Text","className","Component","weight","Headline","div","style","aside","status","before","onClick","restProps","InComponent","Tappable","rootProps","inProps","activeEffectDelay","hasActive","IOS","activeMode","classNames","hasOwnProperty","hasReactNode","ANDROID","Footnote"],"mappings":";;;;+BAkDaA;;;eAAAA;;;;;;;+DAlDU;oBACkB;2BACb;wBACH;wBAEA;wBACA;wBACA;oBACJ;AAGrB,IAAMC,qBAAqB;IACzBC,GAAG;IACHC,OAAO;IACPC,KAAK;AACP;AAaA,IAAMC,sBAAsB;QAAGC,kBAAAA,WAAWC,kBAAAA,WAAWC,iBAAAA;IACnD,IAAMC,WAAWC,IAAAA;IACjB,IAAID,aAAaE,mBAASC,OAAO;QAC/B,qBACE,qBAACC;YAAKC,SAAS;YAA8CC,WAAU;YAAMC,QAAO;WACjFR;IAGP;IAEA,OAAOF,aAAaC,0BAClB,qBAACU;QAASH,SAAS;QAA8CC,WAAU;QAAMC,QAAO;OACrFR,0BAGH,qBAACU;QAAIJ,SAAS;OAA8CN;AAEhE;AAKO,IAAMR,qBAAqB;QAChCc,mBAAAA,WACAK,eAAAA,OACAC,eAAAA,OACAC,gBAAAA,QACAC,gBAAAA,QACAd,kBAAAA,UACAe,iBAAAA,SACGC;QAPHV;QACAK;QACAC;QACAC;QACAC;QACAd;QACAe;;IAGA,IAAME,cAAcF,UAAUG,qBAAW;IACzC,IAAMC,YAAYJ,UAAU,CAAC,IAAIC;IACjC,IAAMf,WAAWC,IAAAA;IACjB,IAAMkB,UAAUL,UACZ,4CACKC;QACHD,SAAAA;QACAM,mBAAmB;QACnBC,WAAWrB,aAAaE,mBAASoB;QACjCC,YAAY;SAEd,CAAC;IAEL,qBACE,qBAACd,mDACKS;QACJR,OAAOA;QACPL,WAAWmB,IAAAA,4CAEThC,mBAAmBiC,eAAezB,YAC9BR,kBAAkB,CAACQ,SAAS,GAC5BR,mBAAmBE,SACvBW;QAGDqB,IAAAA,oBAAab,yBAAW,qBAACJ;QAAIJ,SAAS;OAAyCQ,uBAChF,qBAACG,yDACKG;QACJd,WAAWmB,IAAAA,gDAET,CAACX,UAAUb,aAAaE,mBAASyB;QAGlCD,IAAAA,oBAAad,yBACZ,qBAACgB;QAASvB,SAAS;OAAyCO,uBAE9D,qBAACH;QAAIJ,SAAS;qBACZ,qBAACT;QAAoBC,WAAW6B,IAAAA,oBAAad;QAASd,WAAW4B,IAAAA,oBAAab;OAC3Ed,WAEF2B,IAAAA,oBAAaf,wBACZ,qBAACF;QAAIJ,SAAS;OAAwCM,SAGzDe,IAAAA,oBAAab,yBAAW,qBAACJ;QAAIJ,SAAS;;AAI/C"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderContent/PanelHeaderContent.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasChildren } from '../../types';\nimport { Tappable } from '../Tappable/Tappable';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Text } from '../Typography/Text/Text';\nimport styles from './PanelHeaderContent.module.css';\n\nconst platformClassNames = {\n ios: styles['PanelHeaderContent--ios'],\n android: styles['PanelHeaderContent--android'],\n vkcom: styles['PanelHeaderContent--vkcom'],\n};\n\nexport interface PanelHeaderContentProps extends React.HTMLAttributes<HTMLDivElement> {\n aside?: React.ReactNode;\n before?: React.ReactNode;\n status?: React.ReactNode;\n}\n\ninterface PanelHeaderChildrenProps extends HasChildren {\n hasStatus: boolean;\n hasBefore: boolean;\n}\n\nconst PanelHeaderChildren = ({ hasStatus, hasBefore, children }: PanelHeaderChildrenProps) => {\n const platform = usePlatform();\n if (platform === Platform.VKCOM) {\n return (\n <Text className={styles['PanelHeaderContent__childrenText']} Component=\"div\" weight=\"2\">\n {children}\n </Text>\n );\n }\n\n return hasStatus || hasBefore ? (\n <Headline className={styles['PanelHeaderContent__childrenText']} Component=\"div\" weight=\"2\">\n {children}\n </Headline>\n ) : (\n <div className={styles['PanelHeaderContent__children-in']}>{children}</div>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderContent\n */\nexport const PanelHeaderContent = ({\n className,\n style,\n aside,\n status,\n before,\n children,\n onClick,\n ...restProps\n}: PanelHeaderContentProps) => {\n const InComponent = onClick ? Tappable : 'div';\n const rootProps = onClick ? {} : restProps;\n const platform = usePlatform();\n const inProps = onClick\n ? {\n ...restProps,\n onClick,\n activeEffectDelay: 200,\n hasActive: platform === Platform.IOS,\n activeMode: 'opacity',\n }\n : {};\n\n return (\n <div\n {...rootProps}\n style={style}\n className={classNames(\n styles['PanelHeaderContent'],\n platformClassNames.hasOwnProperty(platform)\n ? platformClassNames[platform]\n : platformClassNames.android,\n className,\n )}\n >\n {hasReactNode(before) && <div className={styles['PanelHeaderContent__before']}>{before}</div>}\n <InComponent\n {...inProps}\n className={classNames(\n styles['PanelHeaderContent__in'],\n !before && platform !== Platform.ANDROID && styles['PanelHeaderContent__in--centered'],\n )}\n >\n {hasReactNode(status) && (\n <Footnote className={styles['PanelHeaderContent__status']}>{status}</Footnote>\n )}\n <div className={styles['PanelHeaderContent__children']}>\n <PanelHeaderChildren hasStatus={hasReactNode(status)} hasBefore={hasReactNode(before)}>\n {children}\n </PanelHeaderChildren>\n {hasReactNode(aside) && (\n <div className={styles['PanelHeaderContent__aside']}>{aside}</div>\n )}\n </div>\n {hasReactNode(before) && <div className={styles['PanelHeaderContent__width']} />}\n </InComponent>\n </div>\n );\n};\n"],"names":["PanelHeaderContent","platformClassNames","ios","android","vkcom","PanelHeaderChildren","hasStatus","hasBefore","children","platform","usePlatform","Platform","VKCOM","Text","className","Component","weight","Headline","div","style","aside","status","before","onClick","restProps","InComponent","Tappable","rootProps","inProps","activeEffectDelay","hasActive","IOS","activeMode","classNames","hasOwnProperty","hasReactNode","ANDROID","Footnote"],"mappings":";;;;+BAkDaA;;;eAAAA;;;;;;;+DAlDU;oBACkB;2BACb;wBACH;wBAEA;wBACA;wBACA;oBACJ;AAGrB,IAAMC,qBAAqB;IACzBC,GAAG;IACHC,OAAO;IACPC,KAAK;AACP;AAaA,IAAMC,sBAAsB;QAAGC,kBAAAA,WAAWC,kBAAAA,WAAWC,iBAAAA;IACnD,IAAMC,WAAWC,IAAAA,wBAAW;IAC5B,IAAID,aAAaE,kBAAQ,CAACC,KAAK,EAAE;QAC/B,qBACE,qBAACC,UAAI;YAACC,SAAS;YAA8CC,WAAU;YAAMC,QAAO;WACjFR;IAGP;IAEA,OAAOF,aAAaC,0BAClB,qBAACU,kBAAQ;QAACH,SAAS;QAA8CC,WAAU;QAAMC,QAAO;OACrFR,0BAGH,qBAACU;QAAIJ,SAAS;OAA8CN;AAEhE;AAKO,IAAMR,qBAAqB;QAChCc,mBAAAA,WACAK,eAAAA,OACAC,eAAAA,OACAC,gBAAAA,QACAC,gBAAAA,QACAd,kBAAAA,UACAe,iBAAAA,SACGC;QAPHV;QACAK;QACAC;QACAC;QACAC;QACAd;QACAe;;IAGA,IAAME,cAAcF,UAAUG,kBAAQ,GAAG;IACzC,IAAMC,YAAYJ,UAAU,CAAC,IAAIC;IACjC,IAAMf,WAAWC,IAAAA,wBAAW;IAC5B,IAAMkB,UAAUL,UACZ,4CACKC;QACHD,SAAAA;QACAM,mBAAmB;QACnBC,WAAWrB,aAAaE,kBAAQ,CAACoB,GAAG;QACpCC,YAAY;SAEd,CAAC;IAEL,qBACE,qBAACd,mDACKS;QACJR,OAAOA;QACPL,WAAWmB,IAAAA,gBAAU,4BAEnBhC,mBAAmBiC,cAAc,CAACzB,YAC9BR,kBAAkB,CAACQ,SAAS,GAC5BR,mBAAmBE,OAAO,EAC9BW;QAGDqB,IAAAA,kBAAY,EAACb,yBAAW,qBAACJ;QAAIJ,SAAS;OAAyCQ,uBAChF,qBAACG,yDACKG;QACJd,WAAWmB,IAAAA,gBAAU,gCAEnB,CAACX,UAAUb,aAAaE,kBAAQ,CAACyB,OAAO;QAGzCD,IAAAA,kBAAY,EAACd,yBACZ,qBAACgB,kBAAQ;QAACvB,SAAS;OAAyCO,uBAE9D,qBAACH;QAAIJ,SAAS;qBACZ,qBAACT;QAAoBC,WAAW6B,IAAAA,kBAAY,EAACd;QAASd,WAAW4B,IAAAA,kBAAY,EAACb;OAC3Ed,WAEF2B,IAAAA,kBAAY,EAACf,wBACZ,qBAACF;QAAIJ,SAAS;OAAwCM,SAGzDe,IAAAA,kBAAY,EAACb,yBAAW,qBAACJ;QAAIJ,SAAS;;AAI/C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderContext/PanelHeaderContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport styles from './PanelHeaderContext.module.css';\n\nconst sizeXClassNames = {\n none: styles['PanelHeaderContext--sizeX-none'],\n [SizeType.COMPACT]: styles['PanelHeaderContext--sizeX-compact'],\n [SizeType.REGULAR]: styles['PanelHeaderContext--sizeX-regular'],\n};\n\nexport interface PanelHeaderContextProps extends React.HTMLAttributes<HTMLDivElement> {\n opened: boolean;\n onClose: VoidFunction;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderContext\n */\nexport const PanelHeaderContext = ({\n children,\n onClose,\n opened = false,\n className,\n ...restProps\n}: PanelHeaderContextProps) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const [visible, setVisible] = React.useState(opened);\n const closing = visible && !opened;\n const { sizeX = 'none' } = useAdaptivity();\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n useIsomorphicLayoutEffect(() => {\n opened && setVisible(true);\n }, [opened]);\n\n useScrollLock(platform !== Platform.VKCOM && opened);\n\n // start closing on outer click\n useGlobalEventListener(\n document,\n 'click',\n opened &&\n !closing &&\n ((event) => {\n if (elementRef.current && !elementRef.current.contains(event.target as Node)) {\n event.stopPropagation();\n onClose();\n }\n }),\n { capture: true },\n );\n\n // fallback onAnimationEnd when animationend not supported\n const onAnimationEnd = () => setVisible(false);\n const animationFallback = useTimeout(onAnimationEnd, 200);\n React.useEffect(\n () => (closing ? animationFallback.set() : animationFallback.clear()),\n [animationFallback, closing],\n );\n\n return (\n <FixedLayout\n {...restProps}\n className={classNames(\n styles['PanelHeaderContext'],\n platform === Platform.IOS && styles['PanelHeaderContext--ios'],\n opened && styles['PanelHeaderContext--opened'],\n closing && styles['PanelHeaderContext--closing'],\n sizeXClassNames[sizeX],\n className,\n )}\n vertical=\"top\"\n >\n {visible && (\n <div\n onClick={(event) => {\n event.stopPropagation();\n onClose();\n }}\n className={styles['PanelHeaderContext__fade']}\n />\n )}\n <div\n className={styles['PanelHeaderContext__in']}\n ref={elementRef}\n onAnimationEnd={closing ? onAnimationEnd : undefined}\n >\n {visible && <div className={styles['PanelHeaderContext__content']}>{children}</div>}\n </div>\n </FixedLayout>\n );\n};\n"],"names":["PanelHeaderContext","sizeXClassNames","none","SizeType","COMPACT","REGULAR","children","onClose","opened","className","restProps","document","useDOM","platform","usePlatform","React","useState","visible","setVisible","closing","useAdaptivity","sizeX","elementRef","useRef","useIsomorphicLayoutEffect","useScrollLock","Platform","VKCOM","useGlobalEventListener","event","current","contains","target","stopPropagation","capture","onAnimationEnd","animationFallback","useTimeout","useEffect","set","clear","FixedLayout","classNames","IOS","vertical","div","onClick","ref","undefined"],"mappings":";;;;+BA4BaA;;;eAAAA;;;;;;;;;+DA5BU;oBACI;6BACG;sCACS;2BACX;0BACD;0BACF;mBACF;wBACE;yCACiB;6BACZ;2BACF;IAGJ;AAAxB,IAAMC,mBAAkB;IACtBC,IAAI;sBADkB,MAErBC,qBAASC,sEAFY,MAGrBD,qBAASE,mDAHY;AAcjB,IAAML,qBAAqB;QAChCM,kBAAAA,UACAC,iBAAAA,gCACAC,QAAAA,oCAAS,uBACTC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAM,AAAEE,WAAaC,IAAAA,eAAbD;IACR,IAAME,WAAWC,IAAAA;IACjB,IAA8BC,qCAAAA,OAAMC,SAASR,aAAtCS,UAAuBF,oBAAdG,aAAcH;IAC9B,IAAMI,UAAUF,WAAW,CAACT;IAC5B,IAA2BY,kBAAAA,IAAAA,wDAAAA,gBAAnBC,OAAAA,0CAAQ;IAChB,IAAMC,aAAaP,OAAMQ,OAAuB;IAEhDC,IAAAA,sDAA0B;QACxBhB,UAAUU,WAAW;IACvB,GAAG;QAACV;KAAO;IAEXiB,IAAAA,8BAAcZ,aAAaa,mBAASC,SAASnB;IAE7C,+BAA+B;IAC/BoB,IAAAA,gDACEjB,UACA,SACAH,UACE,CAACW,WACA,SAACU;QACA,IAAIP,WAAWQ,WAAW,CAACR,WAAWQ,QAAQC,SAASF,MAAMG,SAAiB;YAC5EH,MAAMI;YACN1B;QACF;IACF,GACF;QAAE2B,SAAS;IAAK;IAGlB,0DAA0D;IAC1D,IAAMC,iBAAiB;eAAMjB,WAAW;;IACxC,IAAMkB,oBAAoBC,IAAAA,wBAAWF,gBAAgB;IACrDpB,OAAMuB,UACJ;eAAOnB,UAAUiB,kBAAkBG,QAAQH,kBAAkBI;OAC7D;QAACJ;QAAmBjB;KAAQ;IAG9B,qBACE,qBAACsB,sEACK/B;QACJD,WAAWiC,IAAAA,4CAET7B,aAAaa,mBAASiB,sCACtBnC,4CACAW,8CACAlB,eAAe,CAACoB,MAAM,EACtBZ;QAEFmC,UAAS;QAER3B,yBACC,qBAAC4B;QACCC,SAAS,SAACjB;YACRA,MAAMI;YACN1B;QACF;QACAE,SAAS;sBAGb,qBAACoC;QACCpC,SAAS;QACTsC,KAAKzB;QACLa,gBAAgBhB,UAAUgB,iBAAiBa;OAE1C/B,yBAAW,qBAAC4B;QAAIpC,SAAS;OAA0CH;AAI5E"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderContext/PanelHeaderContext.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { SizeType } from '../../lib/adaptivity';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { FixedLayout } from '../FixedLayout/FixedLayout';\nimport styles from './PanelHeaderContext.module.css';\n\nconst sizeXClassNames = {\n none: styles['PanelHeaderContext--sizeX-none'],\n [SizeType.COMPACT]: styles['PanelHeaderContext--sizeX-compact'],\n [SizeType.REGULAR]: styles['PanelHeaderContext--sizeX-regular'],\n};\n\nexport interface PanelHeaderContextProps extends React.HTMLAttributes<HTMLDivElement> {\n opened: boolean;\n onClose: VoidFunction;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderContext\n */\nexport const PanelHeaderContext = ({\n children,\n onClose,\n opened = false,\n className,\n ...restProps\n}: PanelHeaderContextProps) => {\n const { document } = useDOM();\n const platform = usePlatform();\n const [visible, setVisible] = React.useState(opened);\n const closing = visible && !opened;\n const { sizeX = 'none' } = useAdaptivity();\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n useIsomorphicLayoutEffect(() => {\n opened && setVisible(true);\n }, [opened]);\n\n useScrollLock(platform !== Platform.VKCOM && opened);\n\n // start closing on outer click\n useGlobalEventListener(\n document,\n 'click',\n opened &&\n !closing &&\n ((event) => {\n if (elementRef.current && !elementRef.current.contains(event.target as Node)) {\n event.stopPropagation();\n onClose();\n }\n }),\n { capture: true },\n );\n\n // fallback onAnimationEnd when animationend not supported\n const onAnimationEnd = () => setVisible(false);\n const animationFallback = useTimeout(onAnimationEnd, 200);\n React.useEffect(\n () => (closing ? animationFallback.set() : animationFallback.clear()),\n [animationFallback, closing],\n );\n\n return (\n <FixedLayout\n {...restProps}\n className={classNames(\n styles['PanelHeaderContext'],\n platform === Platform.IOS && styles['PanelHeaderContext--ios'],\n opened && styles['PanelHeaderContext--opened'],\n closing && styles['PanelHeaderContext--closing'],\n sizeXClassNames[sizeX],\n className,\n )}\n vertical=\"top\"\n >\n {visible && (\n <div\n onClick={(event) => {\n event.stopPropagation();\n onClose();\n }}\n className={styles['PanelHeaderContext__fade']}\n />\n )}\n <div\n className={styles['PanelHeaderContext__in']}\n ref={elementRef}\n onAnimationEnd={closing ? onAnimationEnd : undefined}\n >\n {visible && <div className={styles['PanelHeaderContext__content']}>{children}</div>}\n </div>\n </FixedLayout>\n );\n};\n"],"names":["PanelHeaderContext","sizeXClassNames","none","SizeType","COMPACT","REGULAR","children","onClose","opened","className","restProps","document","useDOM","platform","usePlatform","React","useState","visible","setVisible","closing","useAdaptivity","sizeX","elementRef","useRef","useIsomorphicLayoutEffect","useScrollLock","Platform","VKCOM","useGlobalEventListener","event","current","contains","target","stopPropagation","capture","onAnimationEnd","animationFallback","useTimeout","useEffect","set","clear","FixedLayout","classNames","IOS","vertical","div","onClick","ref","undefined"],"mappings":";;;;+BA4BaA;;;eAAAA;;;;;;;;;+DA5BU;oBACI;6BACG;sCACS;2BACX;0BACD;0BACF;mBACF;wBACE;yCACiB;6BACZ;2BACF;IAGJ;AAAxB,IAAMC,mBAAkB;IACtBC,IAAI;sBADkB,MAErBC,oBAAQ,CAACC,OAAO,+DAFK,MAGrBD,oBAAQ,CAACE,OAAO,4CAHK;AAcjB,IAAML,qBAAqB;QAChCM,kBAAAA,UACAC,iBAAAA,gCACAC,QAAAA,oCAAS,uBACTC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAM,AAAEE,WAAaC,IAAAA,WAAM,IAAnBD;IACR,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,IAA8BC,qCAAAA,OAAMC,QAAQ,CAACR,aAAtCS,UAAuBF,oBAAdG,aAAcH;IAC9B,IAAMI,UAAUF,WAAW,CAACT;IAC5B,IAA2BY,kBAAAA,IAAAA,4BAAa,4BAAbA,gBAAnBC,OAAAA,0CAAQ;IAChB,IAAMC,aAAaP,OAAMQ,MAAM,CAAiB;IAEhDC,IAAAA,oDAAyB,EAAC;QACxBhB,UAAUU,WAAW;IACvB,GAAG;QAACV;KAAO;IAEXiB,IAAAA,4BAAa,EAACZ,aAAaa,kBAAQ,CAACC,KAAK,IAAInB;IAE7C,+BAA+B;IAC/BoB,IAAAA,8CAAsB,EACpBjB,UACA,SACAH,UACE,CAACW,WACA,SAACU;QACA,IAAIP,WAAWQ,OAAO,IAAI,CAACR,WAAWQ,OAAO,CAACC,QAAQ,CAACF,MAAMG,MAAM,GAAW;YAC5EH,MAAMI,eAAe;YACrB1B;QACF;IACF,GACF;QAAE2B,SAAS;IAAK;IAGlB,0DAA0D;IAC1D,IAAMC,iBAAiB;eAAMjB,WAAW;;IACxC,IAAMkB,oBAAoBC,IAAAA,sBAAU,EAACF,gBAAgB;IACrDpB,OAAMuB,SAAS,CACb;eAAOnB,UAAUiB,kBAAkBG,GAAG,KAAKH,kBAAkBI,KAAK;OAClE;QAACJ;QAAmBjB;KAAQ;IAG9B,qBACE,qBAACsB,wBAAW,8CACN/B;QACJD,WAAWiC,IAAAA,gBAAU,4BAEnB7B,aAAaa,kBAAQ,CAACiB,GAAG,mCACzBnC,4CACAW,8CACAlB,eAAe,CAACoB,MAAM,EACtBZ;QAEFmC,UAAS;QAER3B,yBACC,qBAAC4B;QACCC,SAAS,SAACjB;YACRA,MAAMI,eAAe;YACrB1B;QACF;QACAE,SAAS;sBAGb,qBAACoC;QACCpC,SAAS;QACTsC,KAAKzB;QACLa,gBAAgBhB,UAAUgB,iBAAiBa;OAE1C/B,yBAAW,qBAAC4B;QAAIpC,SAAS;OAA0CH;AAI5E"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderEdit/PanelHeaderEdit.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28DoneOutline, Icon28EditOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\nexport interface PanelHeaderEditProps extends PanelHeaderButtonProps {\n /**\n * Включен ли режим редактирования\n */\n isActive?: boolean;\n /**\n * iOS only. Текст кнопки, когда режим редактирования не активен\n */\n editLabel?: string;\n /**\n * iOS only. Текст кнопки при активном режиме редактирования для выхода из него\n */\n doneLabel?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderEdit\n */\nexport const PanelHeaderEdit = ({\n isActive = false,\n editLabel = 'Редактировать',\n doneLabel = 'Готово',\n ...restProps\n}: PanelHeaderEditProps) => {\n const iOSText = isActive ? doneLabel : editLabel;\n const AndroidIcon = isActive ? Icon28DoneOutline : Icon28EditOutline;\n const platform = usePlatform();\n\n return (\n <PanelHeaderButton aria-label={iOSText} {...restProps}>\n {platform === Platform.IOS ? iOSText : <AndroidIcon />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderEdit","isActive","editLabel","doneLabel","restProps","iOSText","AndroidIcon","Icon28DoneOutline","Icon28EditOutline","platform","usePlatform","PanelHeaderButton","aria-label","Platform","IOS"],"mappings":";;;;+BAwBaA;;;eAAAA;;;;;;+DAxBU;qBAC8B;2BACzB;wBACH;iCACiC;AAoBnD,IAAMA,kBAAkB;iCAC7BC,UAAAA,wCAAW,mDACXC,WAAAA,0CAAY,8DACZC,WAAAA,0CAAY,6BACTC;QAHHH;QACAC;QACAC;;IAGA,IAAME,UAAUJ,WAAWE,YAAYD;IACvC,IAAMI,cAAcL,WAAWM,2BAAoBC;IACnD,IAAMC,WAAWC,IAAAA;IAEjB,qBACE,qBAACC;QAAkBC,cAAYP;OAAaD,YACzCK,aAAaI,mBAASC,MAAMT,wBAAU,qBAACC;AAG9C"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderEdit/PanelHeaderEdit.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28DoneOutline, Icon28EditOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\nexport interface PanelHeaderEditProps extends PanelHeaderButtonProps {\n /**\n * Включен ли режим редактирования\n */\n isActive?: boolean;\n /**\n * iOS only. Текст кнопки, когда режим редактирования не активен\n */\n editLabel?: string;\n /**\n * iOS only. Текст кнопки при активном режиме редактирования для выхода из него\n */\n doneLabel?: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderEdit\n */\nexport const PanelHeaderEdit = ({\n isActive = false,\n editLabel = 'Редактировать',\n doneLabel = 'Готово',\n ...restProps\n}: PanelHeaderEditProps) => {\n const iOSText = isActive ? doneLabel : editLabel;\n const AndroidIcon = isActive ? Icon28DoneOutline : Icon28EditOutline;\n const platform = usePlatform();\n\n return (\n <PanelHeaderButton aria-label={iOSText} {...restProps}>\n {platform === Platform.IOS ? iOSText : <AndroidIcon />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderEdit","isActive","editLabel","doneLabel","restProps","iOSText","AndroidIcon","Icon28DoneOutline","Icon28EditOutline","platform","usePlatform","PanelHeaderButton","aria-label","Platform","IOS"],"mappings":";;;;+BAwBaA;;;eAAAA;;;;;;+DAxBU;qBAC8B;2BACzB;wBACH;iCACiC;AAoBnD,IAAMA,kBAAkB;iCAC7BC,UAAAA,wCAAW,mDACXC,WAAAA,0CAAY,8DACZC,WAAAA,0CAAY,6BACTC;QAHHH;QACAC;QACAC;;IAGA,IAAME,UAAUJ,WAAWE,YAAYD;IACvC,IAAMI,cAAcL,WAAWM,wBAAiB,GAAGC,wBAAiB;IACpE,IAAMC,WAAWC,IAAAA,wBAAW;IAE5B,qBACE,qBAACC,oCAAiB;QAACC,cAAYP;OAAaD,YACzCK,aAAaI,kBAAQ,CAACC,GAAG,GAAGT,wBAAU,qBAACC;AAG9C"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28DoneOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderSubmit\n */\nexport const PanelHeaderSubmit = ({\n children = 'Готово',\n ...restProps\n}: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n\n return (\n <PanelHeaderButton aria-label={getTitleFromChildren(children)} primary {...restProps}>\n {platform === Platform.IOS ? children : <Icon28DoneOutline />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderSubmit","children","restProps","platform","usePlatform","PanelHeaderButton","aria-label","getTitleFromChildren","primary","Platform","IOS","Icon28DoneOutline"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;+DAVU;qBACW;2BACN;wBACH;qBACY;iCACqB;AAKnD,IAAMA,oBAAoB;iCAC/BC,UAAAA,wCAAW,4BACRC;QADHD;;IAGA,IAAME,WAAWC,IAAAA;IAEjB,qBACE,qBAACC;QAAkBC,cAAYC,IAAAA,6BAAqBN;QAAWO,SAAAA;OAAYN,YACxEC,aAAaM,mBAASC,MAAMT,yBAAW,qBAACU;AAG/C"}
1
+ {"version":3,"sources":["../../../../src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon28DoneOutline } from '@vkontakte/icons';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { getTitleFromChildren } from '../../lib/utils';\nimport { PanelHeaderButton, PanelHeaderButtonProps } from '../PanelHeaderButton/PanelHeaderButton';\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelHeaderSubmit\n */\nexport const PanelHeaderSubmit = ({\n children = 'Готово',\n ...restProps\n}: PanelHeaderButtonProps) => {\n const platform = usePlatform();\n\n return (\n <PanelHeaderButton aria-label={getTitleFromChildren(children)} primary {...restProps}>\n {platform === Platform.IOS ? children : <Icon28DoneOutline />}\n </PanelHeaderButton>\n );\n};\n"],"names":["PanelHeaderSubmit","children","restProps","platform","usePlatform","PanelHeaderButton","aria-label","getTitleFromChildren","primary","Platform","IOS","Icon28DoneOutline"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;+DAVU;qBACW;2BACN;wBACH;qBACY;iCACqB;AAKnD,IAAMA,oBAAoB;iCAC/BC,UAAAA,wCAAW,4BACRC;QADHD;;IAGA,IAAME,WAAWC,IAAAA,wBAAW;IAE5B,qBACE,qBAACC,oCAAiB;QAACC,cAAYC,IAAAA,2BAAoB,EAACN;QAAWO,SAAAA;OAAYN,YACxEC,aAAaM,kBAAQ,CAACC,GAAG,GAAGT,yBAAW,qBAACU,wBAAiB;AAGhE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PanelSpinner/PanelSpinner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Spinner, SpinnerProps } from '../Spinner/Spinner';\n\nexport interface PanelSpinnerProps extends SpinnerProps {\n height?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelSpinner\n */\nexport const PanelSpinner = React.memo(\n ({ height = 96, style, ...restProps }: PanelSpinnerProps) => (\n <Spinner size=\"regular\" {...restProps} style={{ height, ...style }} />\n ),\n);\n\nPanelSpinner.displayName = 'PanelSpinner';\n"],"names":["PanelSpinner","React","memo","height","style","restProps","Spinner","size","displayName"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;;+DAVU;uBACe;AAS/B,IAAMA,6BAAeC,OAAMC,KAChC;+BAAGC,QAAAA,oCAAS,oBAAIC,eAAAA,OAAUC;QAAvBF;QAAaC;;WACd,qBAACE;QAAQC,MAAK;OAAcF;QAAWD,OAAO;YAAED,QAAAA;WAAWC;;AAAU;AAIzEJ,aAAaQ,cAAc"}
1
+ {"version":3,"sources":["../../../../src/components/PanelSpinner/PanelSpinner.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Spinner, SpinnerProps } from '../Spinner/Spinner';\n\nexport interface PanelSpinnerProps extends SpinnerProps {\n height?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/PanelSpinner\n */\nexport const PanelSpinner = React.memo(\n ({ height = 96, style, ...restProps }: PanelSpinnerProps) => (\n <Spinner size=\"regular\" {...restProps} style={{ height, ...style }} />\n ),\n);\n\nPanelSpinner.displayName = 'PanelSpinner';\n"],"names":["PanelSpinner","React","memo","height","style","restProps","Spinner","size","displayName"],"mappings":";;;;+BAUaA;;;eAAAA;;;;;;;+DAVU;uBACe;AAS/B,IAAMA,6BAAeC,OAAMC,IAAI,CACpC;+BAAGC,QAAAA,oCAAS,oBAAIC,eAAAA,OAAUC;QAAvBF;QAAaC;;WACd,qBAACE,gBAAO;QAACC,MAAK;OAAcF;QAAWD,OAAO;YAAED,QAAAA;WAAWC;;AAAU;AAIzEJ,aAAaQ,WAAW,GAAG"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Placeholder/Placeholder.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { HasRootRef } from '../../types';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './Placeholder.module.css';\n\nexport interface PlaceholderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка\n */\n icon?: React.ReactNode;\n /**\n * Заголовок плейсхолдера\n */\n header?: React.ReactNode;\n /**\n * Кнопка действия\n */\n action?: React.ReactNode;\n /**\n * Растягивает плейсхолдер на весь экран, но в таком случае на экране должен быть только плейсхолдер\n */\n stretched?: boolean;\n /**\n * Добавляет отступы к компоненту\n */\n withPadding?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Placeholder\n */\nexport const Placeholder = ({\n icon,\n header,\n action,\n children,\n stretched,\n getRootRef,\n className,\n withPadding = true,\n ...restProps\n}: PlaceholderProps) => (\n <div\n {...restProps}\n ref={getRootRef}\n className={classNames(\n styles['Placeholder'],\n stretched && styles['Placeholder--stretched'],\n withPadding && styles['Placeholder--withPadding'],\n className,\n )}\n >\n {hasReactNode(icon) && <div className={styles['Placeholder__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['Placeholder__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(children) && (\n <Headline weight=\"3\" className={styles['Placeholder__text']}>\n {children}\n </Headline>\n )}\n {hasReactNode(action) && <div className={styles['Placeholder__action']}>{action}</div>}\n </div>\n);\n"],"names":["Placeholder","icon","header","action","children","stretched","getRootRef","className","withPadding","restProps","div","ref","classNames","hasReactNode","Title","level","weight","Headline"],"mappings":";;;;+BAmCaA;;;eAAAA;;;;;;;+DAnCU;oBACkB;wBAEhB;qBACH;AA+Bf,IAAMA,cAAc;QACzBC,cAAAA,MACAC,gBAAAA,QACAC,gBAAAA,QACAC,kBAAAA,UACAC,mBAAAA,WACAC,oBAAAA,YACAC,mBAAAA,uCACAC,aAAAA,8CAAc,2BACXC;QARHR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;WAGA,qBAACE,mDACKD;QACJE,KAAKL;QACLC,WAAWK,IAAAA,qCAETP,2CACAG,+CACAD;QAGDM,IAAAA,oBAAaZ,uBAAS,qBAACS;QAAIH,SAAS;OAAgCN,OACpEY,IAAAA,oBAAaX,yBACZ,qBAACY;QAAMC,OAAM;QAAIC,QAAO;QAAIT,SAAS;OAClCL,SAGJW,IAAAA,oBAAaT,2BACZ,qBAACa;QAASD,QAAO;QAAIT,SAAS;OAC3BH,WAGJS,IAAAA,oBAAaV,yBAAW,qBAACO;QAAIH,SAAS;OAAkCJ;AACtE"}
1
+ {"version":3,"sources":["../../../../src/components/Placeholder/Placeholder.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { HasRootRef } from '../../types';\nimport { Headline } from '../Typography/Headline/Headline';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './Placeholder.module.css';\n\nexport interface PlaceholderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка\n */\n icon?: React.ReactNode;\n /**\n * Заголовок плейсхолдера\n */\n header?: React.ReactNode;\n /**\n * Кнопка действия\n */\n action?: React.ReactNode;\n /**\n * Растягивает плейсхолдер на весь экран, но в таком случае на экране должен быть только плейсхолдер\n */\n stretched?: boolean;\n /**\n * Добавляет отступы к компоненту\n */\n withPadding?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Placeholder\n */\nexport const Placeholder = ({\n icon,\n header,\n action,\n children,\n stretched,\n getRootRef,\n className,\n withPadding = true,\n ...restProps\n}: PlaceholderProps) => (\n <div\n {...restProps}\n ref={getRootRef}\n className={classNames(\n styles['Placeholder'],\n stretched && styles['Placeholder--stretched'],\n withPadding && styles['Placeholder--withPadding'],\n className,\n )}\n >\n {hasReactNode(icon) && <div className={styles['Placeholder__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['Placeholder__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(children) && (\n <Headline weight=\"3\" className={styles['Placeholder__text']}>\n {children}\n </Headline>\n )}\n {hasReactNode(action) && <div className={styles['Placeholder__action']}>{action}</div>}\n </div>\n);\n"],"names":["Placeholder","icon","header","action","children","stretched","getRootRef","className","withPadding","restProps","div","ref","classNames","hasReactNode","Title","level","weight","Headline"],"mappings":";;;;+BAmCaA;;;eAAAA;;;;;;;+DAnCU;oBACkB;wBAEhB;qBACH;AA+Bf,IAAMA,cAAc;QACzBC,cAAAA,MACAC,gBAAAA,QACAC,gBAAAA,QACAC,kBAAAA,UACAC,mBAAAA,WACAC,oBAAAA,YACAC,mBAAAA,uCACAC,aAAAA,8CAAc,2BACXC;QARHR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;WAGA,qBAACE,mDACKD;QACJE,KAAKL;QACLC,WAAWK,IAAAA,gBAAU,qBAEnBP,2CACAG,+CACAD;QAGDM,IAAAA,kBAAY,EAACZ,uBAAS,qBAACS;QAAIH,SAAS;OAAgCN,OACpEY,IAAAA,kBAAY,EAACX,yBACZ,qBAACY,YAAK;QAACC,OAAM;QAAIC,QAAO;QAAIT,SAAS;OAClCL,SAGJW,IAAAA,kBAAY,EAACT,2BACZ,qBAACa,kBAAQ;QAACD,QAAO;QAAIT,SAAS;OAC3BH,WAGJS,IAAAA,kBAAY,EAACV,yBAAW,qBAACO;QAAIH,SAAS;OAAkCJ;AACtE"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PlatformProvider/PlatformProvider.tsx"],"sourcesContent":["import React from 'react';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { PlatformType } from '../../lib/platform';\nimport { TokensClassProvider } from '../../lib/tokensClassProvider';\nimport { ConfigProviderOverride } from '../ConfigProvider/ConfigProviderOverride';\n\nexport interface PlatformProviderProps {\n /**\n * Платформа\n */\n value: PlatformType;\n children: React.ReactNode;\n}\n\n/**\n * Компонент, позволяющий переопределить платформу для части приложения\n *\n * @since 5.1.0\n * @see https://vkcom.github.io/VKUI/#/PlatformProvider\n */\nexport function PlatformProvider({ value, children }: PlatformProviderProps) {\n const appearance = useAppearance();\n\n return (\n <ConfigProviderOverride platform={value}>\n <TokensClassProvider platform={value} appearance={appearance}>\n {children}\n </TokensClassProvider>\n </ConfigProviderOverride>\n );\n}\n"],"names":["PlatformProvider","value","children","appearance","useAppearance","ConfigProviderOverride","platform","TokensClassProvider"],"mappings":";;;;+BAoBgBA;;;eAAAA;;;;8DApBE;6BACY;mCAEM;sCACG;AAgBhC,SAASA,iBAAiB,KAA0C;QAAxCC,QAAF,MAAEA,OAAOC,WAAT,MAASA;IACxC,IAAMC,aAAaC,IAAAA;IAEnB,qBACE,6BAACC;QAAuBC,UAAUL;qBAChC,6BAACM;QAAoBD,UAAUL;QAAOE,YAAYA;OAC/CD;AAIT"}
1
+ {"version":3,"sources":["../../../../src/components/PlatformProvider/PlatformProvider.tsx"],"sourcesContent":["import React from 'react';\nimport { useAppearance } from '../../hooks/useAppearance';\nimport { PlatformType } from '../../lib/platform';\nimport { TokensClassProvider } from '../../lib/tokensClassProvider';\nimport { ConfigProviderOverride } from '../ConfigProvider/ConfigProviderOverride';\n\nexport interface PlatformProviderProps {\n /**\n * Платформа\n */\n value: PlatformType;\n children: React.ReactNode;\n}\n\n/**\n * Компонент, позволяющий переопределить платформу для части приложения\n *\n * @since 5.1.0\n * @see https://vkcom.github.io/VKUI/#/PlatformProvider\n */\nexport function PlatformProvider({ value, children }: PlatformProviderProps) {\n const appearance = useAppearance();\n\n return (\n <ConfigProviderOverride platform={value}>\n <TokensClassProvider platform={value} appearance={appearance}>\n {children}\n </TokensClassProvider>\n </ConfigProviderOverride>\n );\n}\n"],"names":["PlatformProvider","value","children","appearance","useAppearance","ConfigProviderOverride","platform","TokensClassProvider"],"mappings":";;;;+BAoBgBA;;;eAAAA;;;;8DApBE;6BACY;mCAEM;sCACG;AAgBhC,SAASA,iBAAiB,KAA0C;QAAxCC,QAAF,MAAEA,OAAOC,WAAT,MAASA;IACxC,IAAMC,aAAaC,IAAAA,4BAAa;IAEhC,qBACE,6BAACC,8CAAsB;QAACC,UAAUL;qBAChC,6BAACM,wCAAmB;QAACD,UAAUL;QAAOE,YAAYA;OAC/CD;AAIT"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/PopoutRoot/PopoutRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { blurActiveElement, useDOM } from '../../lib/dom';\nimport { HasRootRef } from '../../types';\nimport { AppRootPortal } from '../AppRoot/AppRootPortal';\nimport styles from './PopoutRoot.module.css';\n\ninterface PopoutRootPopoutProps {\n children: React.ReactNode;\n}\n\nconst PopoutRootPopout = ({ children }: PopoutRootPopoutProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['PopoutRoot__popout'],\n isDesktop && styles['PopoutRoot__popout--absolute'],\n )}\n >\n {children}\n </div>\n );\n};\n\ninterface PopoutRootModalProps {\n children: React.ReactNode;\n}\n\nconst PopoutRootModal = ({ children }: PopoutRootModalProps) => {\n return <div className={styles['PopoutRoot__modal']}>{children}</div>;\n};\n\nexport interface PopoutRootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n popout?: React.ReactNode;\n modal?: React.ReactNode;\n}\n\nexport const PopoutRoot = ({\n popout,\n modal,\n children,\n getRootRef,\n className,\n ...restProps\n}: PopoutRootProps) => {\n const { document } = useDOM();\n\n React.useEffect(() => {\n popout && blurActiveElement(document);\n }, [document, popout]);\n\n return (\n <div {...restProps} className={classNames(styles['PopoutRoot'], className)} ref={getRootRef}>\n {children}\n <AppRootPortal>\n {!!popout && <PopoutRootPopout>{popout}</PopoutRootPopout>}\n {!!modal && <PopoutRootModal>{modal}</PopoutRootModal>}\n </AppRootPortal>\n </div>\n );\n};\n"],"names":["PopoutRoot","PopoutRootPopout","children","isDesktop","useAdaptivityWithJSMediaQueries","div","className","classNames","PopoutRootModal","popout","modal","getRootRef","restProps","document","useDOM","React","useEffect","blurActiveElement","ref","AppRootPortal"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;;;+DA1CU;oBACI;+CACqB;mBACN;6BAEZ;AAO9B,IAAMC,mBAAmB;QAAGC,iBAAAA;IAC1B,IAAM,AAAEC,YAAcC,IAAAA,oEAAdD;IAER,qBACE,qBAACE;QACCC,WAAWC,IAAAA,4CAETJ;OAGDD;AAGP;AAMA,IAAMM,kBAAkB;QAAGN,iBAAAA;IACzB,qBAAO,qBAACG;QAAIC,SAAS;OAAgCJ;AACvD;AASO,IAAMF,aAAa;QACxBS,gBAAAA,QACAC,eAAAA,OACAR,kBAAAA,UACAS,oBAAAA,YACAL,mBAAAA,WACGM;QALHH;QACAC;QACAR;QACAS;QACAL;;IAGA,IAAM,AAAEO,WAAaC,IAAAA,eAAbD;IAERE,OAAMC,UAAU;QACdP,UAAUQ,IAAAA,wBAAkBJ;IAC9B,GAAG;QAACA;QAAUJ;KAAO;IAErB,qBACE,qBAACJ,mDAAQO;QAAWN,WAAWC,IAAAA,oCAAiCD;QAAYY,KAAKP;QAC9ET,wBACD,qBAACiB,oCACE,CAAC,CAACV,wBAAU,qBAACR,wBAAkBQ,SAC/B,CAAC,CAACC,uBAAS,qBAACF,uBAAiBE;AAItC"}
1
+ {"version":3,"sources":["../../../../src/components/PopoutRoot/PopoutRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { blurActiveElement, useDOM } from '../../lib/dom';\nimport { HasRootRef } from '../../types';\nimport { AppRootPortal } from '../AppRoot/AppRootPortal';\nimport styles from './PopoutRoot.module.css';\n\ninterface PopoutRootPopoutProps {\n children: React.ReactNode;\n}\n\nconst PopoutRootPopout = ({ children }: PopoutRootPopoutProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['PopoutRoot__popout'],\n isDesktop && styles['PopoutRoot__popout--absolute'],\n )}\n >\n {children}\n </div>\n );\n};\n\ninterface PopoutRootModalProps {\n children: React.ReactNode;\n}\n\nconst PopoutRootModal = ({ children }: PopoutRootModalProps) => {\n return <div className={styles['PopoutRoot__modal']}>{children}</div>;\n};\n\nexport interface PopoutRootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n popout?: React.ReactNode;\n modal?: React.ReactNode;\n}\n\nexport const PopoutRoot = ({\n popout,\n modal,\n children,\n getRootRef,\n className,\n ...restProps\n}: PopoutRootProps) => {\n const { document } = useDOM();\n\n React.useEffect(() => {\n popout && blurActiveElement(document);\n }, [document, popout]);\n\n return (\n <div {...restProps} className={classNames(styles['PopoutRoot'], className)} ref={getRootRef}>\n {children}\n <AppRootPortal>\n {!!popout && <PopoutRootPopout>{popout}</PopoutRootPopout>}\n {!!modal && <PopoutRootModal>{modal}</PopoutRootModal>}\n </AppRootPortal>\n </div>\n );\n};\n"],"names":["PopoutRoot","PopoutRootPopout","children","isDesktop","useAdaptivityWithJSMediaQueries","div","className","classNames","PopoutRootModal","popout","modal","getRootRef","restProps","document","useDOM","React","useEffect","blurActiveElement","ref","AppRootPortal"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;;;+DA1CU;oBACI;+CACqB;mBACN;6BAEZ;AAO9B,IAAMC,mBAAmB;QAAGC,iBAAAA;IAC1B,IAAM,AAAEC,YAAcC,IAAAA,gEAA+B,IAA7CD;IAER,qBACE,qBAACE;QACCC,WAAWC,IAAAA,gBAAU,4BAEnBJ;OAGDD;AAGP;AAMA,IAAMM,kBAAkB;QAAGN,iBAAAA;IACzB,qBAAO,qBAACG;QAAIC,SAAS;OAAgCJ;AACvD;AASO,IAAMF,aAAa;QACxBS,gBAAAA,QACAC,eAAAA,OACAR,kBAAAA,UACAS,oBAAAA,YACAL,mBAAAA,WACGM;QALHH;QACAC;QACAR;QACAS;QACAL;;IAGA,IAAM,AAAEO,WAAaC,IAAAA,WAAM,IAAnBD;IAERE,OAAMC,SAAS,CAAC;QACdP,UAAUQ,IAAAA,sBAAiB,EAACJ;IAC9B,GAAG;QAACA;QAAUJ;KAAO;IAErB,qBACE,qBAACJ,mDAAQO;QAAWN,WAAWC,IAAAA,gBAAU,oBAAuBD;QAAYY,KAAKP;QAC9ET,wBACD,qBAACiB,4BAAa,QACX,CAAC,CAACV,wBAAU,qBAACR,wBAAkBQ,SAC/B,CAAC,CAACC,uBAAS,qBAACF,uBAAiBE;AAItC"}