@vkontakte/vkui 5.2.0 → 5.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1184) hide show
  1. package/README.md +6 -1
  2. package/dist/cjs/components/ActionSheet/ActionSheet.js +8 -8
  3. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  4. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +4 -4
  5. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  6. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  7. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  8. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +8 -8
  9. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  10. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  11. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  12. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  13. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  14. package/dist/cjs/components/Alert/Alert.d.ts +1 -1
  15. package/dist/cjs/components/Alert/Alert.js +13 -15
  16. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  17. package/dist/cjs/components/AppRoot/AppRoot.js +20 -12
  18. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  19. package/dist/cjs/components/AppRoot/AppRootPortal.js +2 -2
  20. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  21. package/dist/cjs/components/AppRoot/ScrollContext.js +1 -1
  22. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  23. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
  24. package/dist/cjs/components/Avatar/Avatar.js +1 -1
  25. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  26. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  27. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  28. package/dist/cjs/components/Banner/Banner.js +2 -2
  29. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  30. package/dist/cjs/components/BaseGallery/BaseGallery.js +4 -4
  31. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  32. package/dist/cjs/components/BaseGallery/helpers.d.ts +1 -1
  33. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  34. package/dist/cjs/components/BaseGallery/types.d.ts +1 -1
  35. package/dist/cjs/components/BaseGallery/types.js.map +1 -1
  36. package/dist/cjs/components/Button/Button.d.ts +2 -2
  37. package/dist/cjs/components/Button/Button.js +15 -11
  38. package/dist/cjs/components/Button/Button.js.map +1 -1
  39. package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  40. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  41. package/dist/cjs/components/Calendar/Calendar.d.ts +2 -2
  42. package/dist/cjs/components/Calendar/Calendar.js +6 -6
  43. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  44. package/dist/cjs/components/CalendarDay/CalendarDay.js +1 -1
  45. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  46. package/dist/cjs/components/CalendarDays/CalendarDays.js +3 -3
  47. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  48. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +4 -4
  49. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  50. package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +2 -2
  51. package/dist/cjs/components/CalendarRange/CalendarRange.js +3 -3
  52. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  53. package/dist/cjs/components/CalendarTime/CalendarTime.js +3 -3
  54. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  55. package/dist/cjs/components/CardGrid/CardGrid.js +8 -3
  56. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  57. package/dist/cjs/components/CardScroll/CardScroll.js +2 -6
  58. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  59. package/dist/cjs/components/Cell/Cell.d.ts +1 -1
  60. package/dist/cjs/components/Cell/Cell.js +6 -6
  61. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  62. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  63. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  64. package/dist/cjs/components/Cell/CellDragger/CellDragger.js +1 -1
  65. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  66. package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
  67. package/dist/cjs/components/Checkbox/Checkbox.js +16 -10
  68. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  69. package/dist/cjs/components/Chip/Chip.js +11 -6
  70. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  71. package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -1
  72. package/dist/cjs/components/ChipsInput/ChipsInput.js +1 -1
  73. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  74. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +4 -4
  75. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  76. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +5 -5
  77. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  78. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +5 -5
  79. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  80. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  81. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  82. package/dist/cjs/components/ContentCard/ContentCard.d.ts +1 -1
  83. package/dist/cjs/components/ContentCard/ContentCard.js +2 -2
  84. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  85. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +4 -4
  86. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  87. package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +2 -2
  88. package/dist/cjs/components/CustomSelect/CustomSelect.js +8 -8
  89. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  90. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  91. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  92. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  93. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +10 -5
  94. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  95. package/dist/cjs/components/DateInput/DateInput.d.ts +2 -2
  96. package/dist/cjs/components/DateInput/DateInput.js +15 -10
  97. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  98. package/dist/cjs/components/DatePicker/DatePicker.js +2 -2
  99. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  100. package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  101. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +15 -10
  102. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  103. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  104. package/dist/cjs/components/Epic/Epic.js +1 -1
  105. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  106. package/dist/cjs/components/Epic/ScrollSaver.js +1 -1
  107. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  108. package/dist/cjs/components/File/File.d.ts +1 -1
  109. package/dist/cjs/components/File/File.js +2 -2
  110. package/dist/cjs/components/File/File.js.map +1 -1
  111. package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -5
  112. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  113. package/dist/cjs/components/FormField/FormField.js +8 -3
  114. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  115. package/dist/cjs/components/FormItem/FormItem.js +11 -6
  116. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  117. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  118. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  119. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  120. package/dist/cjs/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  121. package/dist/cjs/components/Group/Group.js +14 -8
  122. package/dist/cjs/components/Group/Group.js.map +1 -1
  123. package/dist/cjs/components/Header/Header.js +3 -3
  124. package/dist/cjs/components/Header/Header.js.map +1 -1
  125. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +3 -3
  126. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  127. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +3 -3
  128. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  129. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  130. package/dist/cjs/components/HoverPopper/HoverPopper.js +2 -2
  131. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  132. package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
  133. package/dist/cjs/components/IconButton/IconButton.js +13 -10
  134. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  135. package/dist/cjs/components/Image/Image.d.ts +1 -1
  136. package/dist/cjs/components/Image/Image.js.map +1 -1
  137. package/dist/cjs/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  138. package/dist/cjs/components/ImageBase/ImageBase.d.ts +1 -1
  139. package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
  140. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  141. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  142. package/dist/cjs/components/ImageBase/validators.js +1 -1
  143. package/dist/cjs/components/ImageBase/validators.js.map +1 -1
  144. package/dist/cjs/components/InfoRow/InfoRow.js +1 -1
  145. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  146. package/dist/cjs/components/Input/Input.d.ts +2 -2
  147. package/dist/cjs/components/Input/Input.js +12 -5
  148. package/dist/cjs/components/Input/Input.js.map +1 -1
  149. package/dist/cjs/components/InputLike/InputLike.js +1 -1
  150. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  151. package/dist/cjs/components/Link/Link.js.map +1 -1
  152. package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
  153. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
  154. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  155. package/dist/cjs/components/ModalCard/ModalCard.js +5 -5
  156. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  157. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +6 -6
  158. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  159. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -1
  160. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  161. package/dist/cjs/components/ModalPage/ModalPage.js +9 -12
  162. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  163. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +4 -4
  164. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  165. package/dist/cjs/components/ModalRoot/ModalRoot.js +12 -12
  166. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  167. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +2 -2
  168. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  169. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +6 -6
  170. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  171. package/dist/cjs/components/ModalRoot/useModalManager.js +3 -3
  172. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  173. package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +1 -1
  174. package/dist/cjs/components/NativeSelect/NativeSelect.js +12 -9
  175. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  176. package/dist/cjs/components/Pagination/Pagination.js +12 -6
  177. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  178. package/dist/cjs/components/Panel/Panel.d.ts +1 -1
  179. package/dist/cjs/components/Panel/Panel.js +13 -7
  180. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  181. package/dist/cjs/components/PanelHeader/PanelHeader.js +12 -11
  182. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  183. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +7 -6
  184. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  185. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  186. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  187. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  188. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  189. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  190. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  191. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  192. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  193. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
  194. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  195. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  196. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  197. package/dist/cjs/components/Placeholder/Placeholder.js +1 -1
  198. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  199. package/dist/cjs/components/PlatformProvider/PlatformProvider.js +2 -2
  200. package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
  201. package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
  202. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  203. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
  204. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  205. package/dist/cjs/components/Popover/Popover.js +5 -5
  206. package/dist/cjs/components/Popover/Popover.js.map +1 -1
  207. package/dist/cjs/components/Popper/Popper.d.ts +1 -1
  208. package/dist/cjs/components/Popper/Popper.js +3 -3
  209. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  210. package/dist/cjs/components/PopperArrow/PopperArrow.d.ts +1 -1
  211. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  212. package/dist/cjs/components/Progress/Progress.js +1 -1
  213. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  214. package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -2
  215. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  216. package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  217. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +8 -8
  218. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  219. package/dist/cjs/components/Radio/Radio.js +12 -7
  220. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  221. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  222. package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
  223. package/dist/cjs/components/RangeSlider/UniversalSlider.js +10 -5
  224. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  225. package/dist/cjs/components/Removable/Removable.js +4 -8
  226. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  227. package/dist/cjs/components/RichCell/RichCell.d.ts +5 -2
  228. package/dist/cjs/components/RichCell/RichCell.js +11 -4
  229. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  230. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  231. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js +23 -0
  232. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  233. package/dist/cjs/components/RichTooltip/RichTooltip.js +1 -1
  234. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  235. package/dist/cjs/components/Root/Root.js +8 -8
  236. package/dist/cjs/components/Root/Root.js.map +1 -1
  237. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +5 -5
  238. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  239. package/dist/cjs/components/Search/Search.d.ts +1 -1
  240. package/dist/cjs/components/Search/Search.js +13 -8
  241. package/dist/cjs/components/Search/Search.js.map +1 -1
  242. package/dist/cjs/components/SegmentedControl/SegmentedControl.js +18 -18
  243. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  244. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  245. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  246. package/dist/cjs/components/Select/Select.js +3 -3
  247. package/dist/cjs/components/Select/Select.js.map +1 -1
  248. package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  249. package/dist/cjs/components/SelectMimicry/SelectMimicry.js +12 -9
  250. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  251. package/dist/cjs/components/SelectTypography/SelectTypography.js +4 -4
  252. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  253. package/dist/cjs/components/SimpleCell/SimpleCell.js +13 -7
  254. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  255. package/dist/cjs/components/Snackbar/Snackbar.d.ts +5 -2
  256. package/dist/cjs/components/Snackbar/Snackbar.js +8 -8
  257. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  258. package/dist/cjs/components/Spinner/Spinner.js +1 -1
  259. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  260. package/dist/cjs/components/SplitCol/SplitCol.js +9 -7
  261. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  262. package/dist/cjs/components/SplitLayout/SplitLayout.js +1 -1
  263. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  264. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +10 -5
  265. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  266. package/dist/cjs/components/Switch/Switch.js +12 -7
  267. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  268. package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -2
  269. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  270. package/dist/cjs/components/Tabs/Tabs.js +3 -3
  271. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  272. package/dist/cjs/components/TabsItem/TabsItem.js +10 -5
  273. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  274. package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
  275. package/dist/cjs/components/Tappable/Tappable.js +14 -14
  276. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  277. package/dist/cjs/components/TextTooltip/TextTooltip.js +1 -1
  278. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  279. package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
  280. package/dist/cjs/components/Textarea/Textarea.js +10 -5
  281. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  282. package/dist/cjs/components/Tooltip/Tooltip.js +6 -6
  283. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  284. package/dist/cjs/components/Touch/Touch.js +3 -3
  285. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  286. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  287. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  288. package/dist/cjs/components/Typography/Headline/Headline.js +9 -4
  289. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  290. package/dist/cjs/components/Typography/Subhead/Subhead.js +8 -3
  291. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  292. package/dist/cjs/components/Typography/Text/Text.js +9 -4
  293. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  294. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  295. package/dist/cjs/components/UsersStack/UsersStack.js +2 -2
  296. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  297. package/dist/cjs/components/View/View.js +12 -12
  298. package/dist/cjs/components/View/View.js.map +1 -1
  299. package/dist/cjs/components/View/ViewInfinite.d.ts +2 -2
  300. package/dist/cjs/components/View/ViewInfinite.js +9 -9
  301. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  302. package/dist/cjs/components/WriteBar/WriteBar.js +4 -4
  303. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  304. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +17 -7
  305. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  306. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  307. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js +22 -0
  308. package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  309. package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
  310. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  311. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  312. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  313. package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  314. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js +1 -1
  315. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  316. package/dist/cjs/hooks/useAutoDetectAppearance.js +1 -1
  317. package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
  318. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  319. package/dist/cjs/hooks/useChipsSelect.d.ts +1 -1
  320. package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
  321. package/dist/cjs/hooks/useDateInput.js +1 -1
  322. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  323. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  324. package/dist/cjs/hooks/useMediaQueries.js.map +1 -1
  325. package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
  326. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  327. package/dist/cjs/hooks/useTimeout.js +1 -1
  328. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  329. package/dist/cjs/hooks/useTodayDate.js.map +1 -1
  330. package/dist/cjs/hooks/useWaitTransitionFinish.js +1 -1
  331. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  332. package/dist/cjs/lib/SSR.js +3 -3
  333. package/dist/cjs/lib/SSR.js.map +1 -1
  334. package/dist/cjs/lib/adaptivity/constants.d.ts +7 -0
  335. package/dist/cjs/lib/adaptivity/constants.js +6 -1
  336. package/dist/cjs/lib/adaptivity/constants.js.map +1 -1
  337. package/dist/cjs/lib/adaptivity/functions.d.ts +9 -1
  338. package/dist/cjs/lib/adaptivity/functions.js +43 -0
  339. package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
  340. package/dist/cjs/lib/adaptivity/types.d.ts +2 -1
  341. package/dist/cjs/lib/adaptivity/types.js.map +1 -1
  342. package/dist/cjs/lib/calendar.js.map +1 -1
  343. package/dist/cjs/lib/floating/adapters.d.ts +1 -1
  344. package/dist/cjs/lib/floating/adapters.js.map +1 -1
  345. package/dist/cjs/lib/floating/functions.d.ts +1 -1
  346. package/dist/cjs/lib/floating/functions.js.map +1 -1
  347. package/dist/cjs/lib/platform.js +1 -1
  348. package/dist/cjs/lib/platform.js.map +1 -1
  349. package/dist/cjs/lib/select.js.map +1 -1
  350. package/dist/cjs/shared/breakpoints.d.ts +44 -0
  351. package/dist/cjs/shared/breakpoints.js +79 -13
  352. package/dist/cjs/shared/breakpoints.js.map +1 -1
  353. package/dist/cjs/types.d.ts +9 -1
  354. package/dist/cjs/types.js.map +1 -1
  355. package/dist/components/ActionSheet/ActionSheet.js +8 -8
  356. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  357. package/dist/components/ActionSheet/ActionSheetDropdown.js +4 -4
  358. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  359. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  360. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  361. package/dist/components/ActionSheetItem/ActionSheetItem.js +8 -8
  362. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  363. package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  364. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  365. package/dist/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  366. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  367. package/dist/components/Alert/Alert.d.ts +1 -1
  368. package/dist/components/Alert/Alert.js +13 -15
  369. package/dist/components/Alert/Alert.js.map +1 -1
  370. package/dist/components/AppRoot/AppRoot.js +20 -12
  371. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  372. package/dist/components/AppRoot/AppRootPortal.js +2 -2
  373. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  374. package/dist/components/AppRoot/ScrollContext.js +1 -1
  375. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  376. package/dist/components/Avatar/Avatar.d.ts +1 -1
  377. package/dist/components/Avatar/Avatar.js +1 -1
  378. package/dist/components/Avatar/Avatar.js.map +1 -1
  379. package/dist/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  380. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
  381. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  382. package/dist/components/Banner/Banner.js +2 -2
  383. package/dist/components/Banner/Banner.js.map +1 -1
  384. package/dist/components/BaseGallery/BaseGallery.js +4 -4
  385. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  386. package/dist/components/BaseGallery/helpers.d.ts +1 -1
  387. package/dist/components/BaseGallery/helpers.js.map +1 -1
  388. package/dist/components/BaseGallery/types.d.ts +1 -1
  389. package/dist/components/BaseGallery/types.js.map +1 -1
  390. package/dist/components/Button/Button.d.ts +2 -2
  391. package/dist/components/Button/Button.js +15 -11
  392. package/dist/components/Button/Button.js.map +1 -1
  393. package/dist/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  394. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  395. package/dist/components/Calendar/Calendar.d.ts +2 -2
  396. package/dist/components/Calendar/Calendar.js +7 -7
  397. package/dist/components/Calendar/Calendar.js.map +1 -1
  398. package/dist/components/CalendarDay/CalendarDay.js +1 -1
  399. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  400. package/dist/components/CalendarDays/CalendarDays.js +3 -3
  401. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  402. package/dist/components/CalendarHeader/CalendarHeader.js +5 -5
  403. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  404. package/dist/components/CalendarRange/CalendarRange.d.ts +2 -2
  405. package/dist/components/CalendarRange/CalendarRange.js +4 -4
  406. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  407. package/dist/components/CalendarTime/CalendarTime.js +3 -3
  408. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  409. package/dist/components/CardGrid/CardGrid.js +8 -3
  410. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  411. package/dist/components/CardScroll/CardScroll.js +2 -6
  412. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  413. package/dist/components/Cell/Cell.d.ts +1 -1
  414. package/dist/components/Cell/Cell.js +6 -6
  415. package/dist/components/Cell/Cell.js.map +1 -1
  416. package/dist/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  417. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  418. package/dist/components/Cell/CellDragger/CellDragger.js +1 -1
  419. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  420. package/dist/components/Checkbox/Checkbox.d.ts +1 -1
  421. package/dist/components/Checkbox/Checkbox.js +16 -10
  422. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  423. package/dist/components/Chip/Chip.js +11 -6
  424. package/dist/components/Chip/Chip.js.map +1 -1
  425. package/dist/components/ChipsInput/ChipsInput.d.ts +1 -1
  426. package/dist/components/ChipsInput/ChipsInput.js +1 -1
  427. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  428. package/dist/components/ChipsInputBase/ChipsInputBase.js +4 -4
  429. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  430. package/dist/components/ChipsSelect/ChipsSelect.js +5 -5
  431. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  432. package/dist/components/ConfigProvider/ConfigProvider.js +5 -5
  433. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  434. package/dist/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  435. package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  436. package/dist/components/ContentCard/ContentCard.d.ts +1 -1
  437. package/dist/components/ContentCard/ContentCard.js +2 -2
  438. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  439. package/dist/components/CustomScrollView/CustomScrollView.js +4 -4
  440. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  441. package/dist/components/CustomSelect/CustomSelect.d.ts +2 -2
  442. package/dist/components/CustomSelect/CustomSelect.js +8 -8
  443. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  444. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  445. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  446. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  447. package/dist/components/CustomSelectOption/CustomSelectOption.js +10 -5
  448. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  449. package/dist/components/DateInput/DateInput.d.ts +2 -2
  450. package/dist/components/DateInput/DateInput.js +15 -10
  451. package/dist/components/DateInput/DateInput.js.map +1 -1
  452. package/dist/components/DatePicker/DatePicker.js +2 -2
  453. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  454. package/dist/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  455. package/dist/components/DateRangeInput/DateRangeInput.js +15 -10
  456. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  457. package/dist/components/DropdownIcon/DropdownIcon.js +1 -1
  458. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  459. package/dist/components/Epic/Epic.js +1 -1
  460. package/dist/components/Epic/Epic.js.map +1 -1
  461. package/dist/components/Epic/ScrollSaver.js +1 -1
  462. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  463. package/dist/components/File/File.d.ts +1 -1
  464. package/dist/components/File/File.js +2 -2
  465. package/dist/components/File/File.js.map +1 -1
  466. package/dist/components/FixedLayout/FixedLayout.js +5 -5
  467. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  468. package/dist/components/FormField/FormField.js +8 -3
  469. package/dist/components/FormField/FormField.js.map +1 -1
  470. package/dist/components/FormItem/FormItem.js +11 -6
  471. package/dist/components/FormItem/FormItem.js.map +1 -1
  472. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  473. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  474. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  475. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  476. package/dist/components/Group/Group.js +14 -8
  477. package/dist/components/Group/Group.js.map +1 -1
  478. package/dist/components/Header/Header.js +3 -3
  479. package/dist/components/Header/Header.js.map +1 -1
  480. package/dist/components/HorizontalCell/HorizontalCell.js +3 -3
  481. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  482. package/dist/components/HorizontalScroll/HorizontalScroll.js +3 -3
  483. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  484. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  485. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  486. package/dist/components/HoverPopper/HoverPopper.js +2 -2
  487. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  488. package/dist/components/IconButton/IconButton.d.ts +1 -1
  489. package/dist/components/IconButton/IconButton.js +13 -10
  490. package/dist/components/IconButton/IconButton.js.map +1 -1
  491. package/dist/components/Image/Image.d.ts +1 -1
  492. package/dist/components/Image/Image.js.map +1 -1
  493. package/dist/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  494. package/dist/components/ImageBase/ImageBase.d.ts +1 -1
  495. package/dist/components/ImageBase/ImageBase.js +1 -1
  496. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  497. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  498. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  499. package/dist/components/ImageBase/validators.js +1 -1
  500. package/dist/components/ImageBase/validators.js.map +1 -1
  501. package/dist/components/InfoRow/InfoRow.js +1 -1
  502. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  503. package/dist/components/Input/Input.d.ts +2 -2
  504. package/dist/components/Input/Input.js +12 -5
  505. package/dist/components/Input/Input.js.map +1 -1
  506. package/dist/components/InputLike/InputLike.js +1 -1
  507. package/dist/components/InputLike/InputLike.js.map +1 -1
  508. package/dist/components/Link/Link.js.map +1 -1
  509. package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -1
  510. package/dist/components/MiniInfoCell/MiniInfoCell.js +2 -2
  511. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  512. package/dist/components/ModalCard/ModalCard.js +5 -5
  513. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  514. package/dist/components/ModalCardBase/ModalCardBase.js +6 -6
  515. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  516. package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -1
  517. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  518. package/dist/components/ModalPage/ModalPage.js +9 -12
  519. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  520. package/dist/components/ModalPageHeader/ModalPageHeader.js +4 -4
  521. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  522. package/dist/components/ModalRoot/ModalRoot.js +12 -12
  523. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  524. package/dist/components/ModalRoot/ModalRootAdaptive.js +2 -2
  525. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  526. package/dist/components/ModalRoot/ModalRootDesktop.js +6 -6
  527. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  528. package/dist/components/ModalRoot/useModalManager.js +3 -3
  529. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  530. package/dist/components/NativeSelect/NativeSelect.d.ts +1 -1
  531. package/dist/components/NativeSelect/NativeSelect.js +12 -9
  532. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  533. package/dist/components/Pagination/Pagination.js +12 -6
  534. package/dist/components/Pagination/Pagination.js.map +1 -1
  535. package/dist/components/Panel/Panel.d.ts +1 -1
  536. package/dist/components/Panel/Panel.js +13 -7
  537. package/dist/components/Panel/Panel.js.map +1 -1
  538. package/dist/components/PanelHeader/PanelHeader.js +12 -11
  539. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  540. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
  541. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  542. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  543. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  544. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  545. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  546. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  547. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  548. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  549. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  550. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
  551. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  552. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  553. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  554. package/dist/components/Placeholder/Placeholder.js +1 -1
  555. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  556. package/dist/components/PlatformProvider/PlatformProvider.js +2 -2
  557. package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
  558. package/dist/components/PopoutRoot/PopoutRoot.js +2 -2
  559. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  560. package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
  561. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  562. package/dist/components/Popover/Popover.js +5 -5
  563. package/dist/components/Popover/Popover.js.map +1 -1
  564. package/dist/components/Popper/Popper.d.ts +1 -1
  565. package/dist/components/Popper/Popper.js +4 -4
  566. package/dist/components/Popper/Popper.js.map +1 -1
  567. package/dist/components/PopperArrow/PopperArrow.d.ts +1 -1
  568. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  569. package/dist/components/Progress/Progress.js +1 -1
  570. package/dist/components/Progress/Progress.js.map +1 -1
  571. package/dist/components/PromoBanner/PromoBanner.js +2 -2
  572. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  573. package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  574. package/dist/components/PullToRefresh/PullToRefresh.js +8 -8
  575. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  576. package/dist/components/Radio/Radio.js +12 -7
  577. package/dist/components/Radio/Radio.js.map +1 -1
  578. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  579. package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
  580. package/dist/components/RangeSlider/UniversalSlider.js +10 -5
  581. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  582. package/dist/components/Removable/Removable.js +4 -8
  583. package/dist/components/Removable/Removable.js.map +1 -1
  584. package/dist/components/RichCell/RichCell.d.ts +5 -2
  585. package/dist/components/RichCell/RichCell.js +11 -4
  586. package/dist/components/RichCell/RichCell.js.map +1 -1
  587. package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  588. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js +14 -0
  589. package/dist/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  590. package/dist/components/RichTooltip/RichTooltip.js +1 -1
  591. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  592. package/dist/components/Root/Root.js +8 -8
  593. package/dist/components/Root/Root.js.map +1 -1
  594. package/dist/components/ScreenSpinner/ScreenSpinner.js +5 -5
  595. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  596. package/dist/components/Search/Search.d.ts +1 -1
  597. package/dist/components/Search/Search.js +13 -8
  598. package/dist/components/Search/Search.js.map +1 -1
  599. package/dist/components/SegmentedControl/SegmentedControl.js +18 -18
  600. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  601. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  602. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  603. package/dist/components/Select/Select.js +3 -3
  604. package/dist/components/Select/Select.js.map +1 -1
  605. package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  606. package/dist/components/SelectMimicry/SelectMimicry.js +12 -9
  607. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  608. package/dist/components/SelectTypography/SelectTypography.js +4 -4
  609. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  610. package/dist/components/SimpleCell/SimpleCell.js +13 -7
  611. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  612. package/dist/components/Snackbar/Snackbar.d.ts +5 -2
  613. package/dist/components/Snackbar/Snackbar.js +8 -8
  614. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  615. package/dist/components/Spinner/Spinner.js +1 -1
  616. package/dist/components/Spinner/Spinner.js.map +1 -1
  617. package/dist/components/SplitCol/SplitCol.js +9 -7
  618. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  619. package/dist/components/SplitLayout/SplitLayout.js +1 -1
  620. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  621. package/dist/components/SubnavigationButton/SubnavigationButton.js +10 -5
  622. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  623. package/dist/components/Switch/Switch.js +12 -7
  624. package/dist/components/Switch/Switch.js.map +1 -1
  625. package/dist/components/TabbarItem/TabbarItem.js +2 -2
  626. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  627. package/dist/components/Tabs/Tabs.js +3 -3
  628. package/dist/components/Tabs/Tabs.js.map +1 -1
  629. package/dist/components/TabsItem/TabsItem.js +10 -5
  630. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  631. package/dist/components/Tappable/Tappable.d.ts +1 -1
  632. package/dist/components/Tappable/Tappable.js +14 -14
  633. package/dist/components/Tappable/Tappable.js.map +1 -1
  634. package/dist/components/TextTooltip/TextTooltip.js +1 -1
  635. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  636. package/dist/components/Textarea/Textarea.d.ts +1 -1
  637. package/dist/components/Textarea/Textarea.js +10 -5
  638. package/dist/components/Textarea/Textarea.js.map +1 -1
  639. package/dist/components/Tooltip/Tooltip.js +6 -6
  640. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  641. package/dist/components/Touch/Touch.js +3 -3
  642. package/dist/components/Touch/Touch.js.map +1 -1
  643. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  644. package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
  645. package/dist/components/Typography/Headline/Headline.js +9 -4
  646. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  647. package/dist/components/Typography/Subhead/Subhead.js +8 -3
  648. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  649. package/dist/components/Typography/Text/Text.js +9 -4
  650. package/dist/components/Typography/Text/Text.js.map +1 -1
  651. package/dist/components/Typography/Title/Title.js.map +1 -1
  652. package/dist/components/UsersStack/UsersStack.js +2 -2
  653. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  654. package/dist/components/View/View.js +12 -12
  655. package/dist/components/View/View.js.map +1 -1
  656. package/dist/components/View/ViewInfinite.d.ts +2 -2
  657. package/dist/components/View/ViewInfinite.js +9 -9
  658. package/dist/components/View/ViewInfinite.js.map +1 -1
  659. package/dist/components/WriteBar/WriteBar.js +4 -4
  660. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  661. package/dist/components/WriteBarIcon/WriteBarIcon.js +18 -8
  662. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  663. package/dist/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  664. package/dist/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
  665. package/dist/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  666. package/dist/components.css +45 -44
  667. package/dist/components.css.map +1 -1
  668. package/dist/components.js.tmp +3177 -2863
  669. package/dist/cssm/components/ActionSheet/ActionSheet.js +8 -8
  670. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  671. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +4 -4
  672. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  673. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +7 -7
  674. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  675. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +8 -8
  676. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  677. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.d.ts +1 -1
  678. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  679. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +1 -1
  680. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  681. package/dist/cssm/components/Alert/Alert.d.ts +1 -1
  682. package/dist/cssm/components/Alert/Alert.js +13 -15
  683. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  684. package/dist/cssm/components/AppRoot/AppRoot.js +20 -12
  685. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  686. package/dist/cssm/components/AppRoot/AppRootPortal.js +2 -2
  687. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  688. package/dist/cssm/components/AppRoot/ScrollContext.js +1 -1
  689. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  690. package/dist/cssm/components/Avatar/Avatar.d.ts +1 -1
  691. package/dist/cssm/components/Avatar/Avatar.js +1 -1
  692. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  693. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  694. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +1 -1
  695. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  696. package/dist/cssm/components/Banner/Banner.js +2 -2
  697. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  698. package/dist/cssm/components/BaseGallery/BaseGallery.js +4 -4
  699. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  700. package/dist/cssm/components/BaseGallery/helpers.d.ts +1 -1
  701. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  702. package/dist/cssm/components/BaseGallery/types.d.ts +1 -1
  703. package/dist/cssm/components/BaseGallery/types.js.map +1 -1
  704. package/dist/cssm/components/Button/Button.d.ts +2 -2
  705. package/dist/cssm/components/Button/Button.js +15 -11
  706. package/dist/cssm/components/Button/Button.js.map +1 -1
  707. package/dist/cssm/components/Button/Button.module.css +1 -1
  708. package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +1 -1
  709. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  710. package/dist/cssm/components/Calendar/Calendar.d.ts +2 -2
  711. package/dist/cssm/components/Calendar/Calendar.js +7 -7
  712. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  713. package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -1
  714. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  715. package/dist/cssm/components/CalendarDays/CalendarDays.js +3 -3
  716. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  717. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +5 -5
  718. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  719. package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +2 -2
  720. package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -4
  721. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  722. package/dist/cssm/components/CalendarTime/CalendarTime.js +3 -3
  723. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  724. package/dist/cssm/components/CardGrid/CardGrid.js +8 -3
  725. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  726. package/dist/cssm/components/CardGrid/CardGrid.module.css +1 -1
  727. package/dist/cssm/components/CardScroll/CardScroll.js +2 -6
  728. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  729. package/dist/cssm/components/Cell/Cell.d.ts +1 -1
  730. package/dist/cssm/components/Cell/Cell.js +6 -6
  731. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  732. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  733. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  734. package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -1
  735. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  736. package/dist/cssm/components/Checkbox/Checkbox.d.ts +1 -1
  737. package/dist/cssm/components/Checkbox/Checkbox.js +16 -10
  738. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  739. package/dist/cssm/components/Checkbox/Checkbox.module.css +1 -1
  740. package/dist/cssm/components/Chip/Chip.js +11 -6
  741. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  742. package/dist/cssm/components/Chip/Chip.module.css +1 -1
  743. package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +1 -1
  744. package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
  745. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  746. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +4 -4
  747. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  748. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -5
  749. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  750. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -5
  751. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  752. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  753. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  754. package/dist/cssm/components/ContentCard/ContentCard.d.ts +1 -1
  755. package/dist/cssm/components/ContentCard/ContentCard.js +2 -2
  756. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  757. package/dist/cssm/components/Counter/Counter.module.css +1 -1
  758. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +4 -4
  759. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  760. package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +2 -2
  761. package/dist/cssm/components/CustomSelect/CustomSelect.js +8 -8
  762. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  763. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
  764. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -1
  765. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  766. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +10 -5
  767. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  768. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +1 -1
  769. package/dist/cssm/components/DateInput/DateInput.d.ts +2 -2
  770. package/dist/cssm/components/DateInput/DateInput.js +15 -10
  771. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  772. package/dist/cssm/components/DateInput/DateInput.module.css +1 -1
  773. package/dist/cssm/components/DatePicker/DatePicker.js +2 -2
  774. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  775. package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  776. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +15 -10
  777. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  778. package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +1 -1
  779. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +1 -1
  780. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  781. package/dist/cssm/components/Epic/Epic.js +1 -1
  782. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  783. package/dist/cssm/components/Epic/ScrollSaver.js +1 -1
  784. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  785. package/dist/cssm/components/File/File.d.ts +1 -1
  786. package/dist/cssm/components/File/File.js +2 -2
  787. package/dist/cssm/components/File/File.js.map +1 -1
  788. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -5
  789. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  790. package/dist/cssm/components/FormField/FormField.js +8 -3
  791. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  792. package/dist/cssm/components/FormField/FormField.module.css +1 -1
  793. package/dist/cssm/components/FormItem/FormItem.js +11 -6
  794. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  795. package/dist/cssm/components/FormItem/FormItem.module.css +1 -1
  796. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -4
  797. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  798. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +1 -1
  799. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  800. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  801. package/dist/cssm/components/Group/Group.js +14 -8
  802. package/dist/cssm/components/Group/Group.js.map +1 -1
  803. package/dist/cssm/components/Group/Group.module.css +1 -1
  804. package/dist/cssm/components/Header/Header.js +3 -3
  805. package/dist/cssm/components/Header/Header.js.map +1 -1
  806. package/dist/cssm/components/Header/Header.module.css +1 -1
  807. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -3
  808. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  809. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +3 -3
  810. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  811. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  812. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  813. package/dist/cssm/components/HoverPopper/HoverPopper.js +2 -2
  814. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  815. package/dist/cssm/components/IconButton/IconButton.d.ts +1 -1
  816. package/dist/cssm/components/IconButton/IconButton.js +13 -10
  817. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  818. package/dist/cssm/components/IconButton/IconButton.module.css +1 -1
  819. package/dist/cssm/components/Image/Image.d.ts +1 -1
  820. package/dist/cssm/components/Image/Image.js.map +1 -1
  821. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  822. package/dist/cssm/components/ImageBase/ImageBase.d.ts +1 -1
  823. package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
  824. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  825. package/dist/cssm/components/ImageBase/ImageBase.module.css +1 -1
  826. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +1 -1
  827. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  828. package/dist/cssm/components/ImageBase/validators.js +1 -1
  829. package/dist/cssm/components/ImageBase/validators.js.map +1 -1
  830. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  831. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  832. package/dist/cssm/components/Input/Input.d.ts +2 -2
  833. package/dist/cssm/components/Input/Input.js +12 -5
  834. package/dist/cssm/components/Input/Input.js.map +1 -1
  835. package/dist/cssm/components/Input/Input.module.css +1 -1
  836. package/dist/cssm/components/InputLike/InputLike.js +1 -1
  837. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  838. package/dist/cssm/components/Link/Link.js.map +1 -1
  839. package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
  840. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +2 -2
  841. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  842. package/dist/cssm/components/ModalCard/ModalCard.js +5 -5
  843. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  844. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +6 -6
  845. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  846. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
  847. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  848. package/dist/cssm/components/ModalPage/ModalPage.js +9 -12
  849. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  850. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +4 -4
  851. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  852. package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -12
  853. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  854. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +2 -2
  855. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  856. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +6 -6
  857. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  858. package/dist/cssm/components/ModalRoot/useModalManager.js +3 -3
  859. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  860. package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +1 -1
  861. package/dist/cssm/components/NativeSelect/NativeSelect.js +12 -9
  862. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  863. package/dist/cssm/components/Pagination/Pagination.js +12 -6
  864. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  865. package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
  866. package/dist/cssm/components/Panel/Panel.d.ts +1 -1
  867. package/dist/cssm/components/Panel/Panel.js +13 -7
  868. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  869. package/dist/cssm/components/Panel/Panel.module.css +1 -1
  870. package/dist/cssm/components/PanelHeader/PanelHeader.js +12 -11
  871. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  872. package/dist/cssm/components/PanelHeader/PanelHeader.module.css +1 -1
  873. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +8 -7
  874. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  875. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +6 -5
  876. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  877. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +1 -1
  878. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
  879. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  880. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +3 -3
  881. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  882. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +13 -7
  883. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  884. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +1 -1
  885. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -3
  886. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  887. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
  888. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  889. package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
  890. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  891. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +2 -2
  892. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  893. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +2 -2
  894. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  895. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
  896. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  897. package/dist/cssm/components/Popover/Popover.js +5 -5
  898. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  899. package/dist/cssm/components/Popper/Popper.d.ts +1 -1
  900. package/dist/cssm/components/Popper/Popper.js +4 -4
  901. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  902. package/dist/cssm/components/PopperArrow/PopperArrow.d.ts +1 -1
  903. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  904. package/dist/cssm/components/Progress/Progress.js +1 -1
  905. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  906. package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -2
  907. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  908. package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +1 -1
  909. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +8 -8
  910. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  911. package/dist/cssm/components/Radio/Radio.js +12 -7
  912. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  913. package/dist/cssm/components/Radio/Radio.module.css +1 -1
  914. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  915. package/dist/cssm/components/RangeSlider/UniversalSlider.d.ts +1 -1
  916. package/dist/cssm/components/RangeSlider/UniversalSlider.js +10 -5
  917. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  918. package/dist/cssm/components/Removable/Removable.js +4 -8
  919. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  920. package/dist/cssm/components/Removable/Removable.module.css +1 -1
  921. package/dist/cssm/components/RichCell/RichCell.d.ts +5 -2
  922. package/dist/cssm/components/RichCell/RichCell.js +11 -4
  923. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  924. package/dist/cssm/components/RichCell/RichCell.module.css +1 -1
  925. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.d.ts +2 -0
  926. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +15 -0
  927. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -0
  928. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +1 -0
  929. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -1
  930. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  931. package/dist/cssm/components/Root/Root.js +8 -8
  932. package/dist/cssm/components/Root/Root.js.map +1 -1
  933. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +5 -5
  934. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  935. package/dist/cssm/components/Search/Search.d.ts +1 -1
  936. package/dist/cssm/components/Search/Search.js +13 -8
  937. package/dist/cssm/components/Search/Search.js.map +1 -1
  938. package/dist/cssm/components/Search/Search.module.css +1 -1
  939. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +18 -18
  940. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  941. package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +1 -1
  942. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +10 -4
  943. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  944. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +1 -1
  945. package/dist/cssm/components/Select/Select.js +3 -3
  946. package/dist/cssm/components/Select/Select.js.map +1 -1
  947. package/dist/cssm/components/Select/Select.module.css +1 -1
  948. package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +1 -1
  949. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +12 -9
  950. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  951. package/dist/cssm/components/SelectTypography/SelectTypography.js +4 -4
  952. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  953. package/dist/cssm/components/SelectTypography/SelectTypography.module.css +1 -1
  954. package/dist/cssm/components/SimpleCell/SimpleCell.js +13 -7
  955. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  956. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +1 -1
  957. package/dist/cssm/components/Slider/Slider.module.css +1 -1
  958. package/dist/cssm/components/Snackbar/Snackbar.d.ts +5 -2
  959. package/dist/cssm/components/Snackbar/Snackbar.js +8 -8
  960. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  961. package/dist/cssm/components/Snackbar/Snackbar.module.css +1 -1
  962. package/dist/cssm/components/Spinner/Spinner.js +1 -1
  963. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  964. package/dist/cssm/components/SplitCol/SplitCol.js +9 -7
  965. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  966. package/dist/cssm/components/SplitCol/SplitCol.module.css +1 -1
  967. package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
  968. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  969. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +10 -5
  970. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  971. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +1 -1
  972. package/dist/cssm/components/Switch/Switch.js +12 -7
  973. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  974. package/dist/cssm/components/Switch/Switch.module.css +1 -1
  975. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -2
  976. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  977. package/dist/cssm/components/Tabs/Tabs.js +3 -3
  978. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  979. package/dist/cssm/components/TabsItem/TabsItem.js +10 -5
  980. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  981. package/dist/cssm/components/TabsItem/TabsItem.module.css +1 -1
  982. package/dist/cssm/components/Tappable/Tappable.d.ts +1 -1
  983. package/dist/cssm/components/Tappable/Tappable.js +14 -14
  984. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  985. package/dist/cssm/components/Tappable/Tappable.module.css +1 -1
  986. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  987. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  988. package/dist/cssm/components/Textarea/Textarea.d.ts +1 -1
  989. package/dist/cssm/components/Textarea/Textarea.js +10 -5
  990. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  991. package/dist/cssm/components/Textarea/Textarea.module.css +1 -1
  992. package/dist/cssm/components/Tooltip/Tooltip.js +6 -6
  993. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  994. package/dist/cssm/components/Touch/Touch.js +3 -3
  995. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  996. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  997. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  998. package/dist/cssm/components/Typography/Headline/Headline.js +9 -4
  999. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  1000. package/dist/cssm/components/Typography/Headline/Headline.module.css +1 -1
  1001. package/dist/cssm/components/Typography/Subhead/Subhead.js +8 -3
  1002. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  1003. package/dist/cssm/components/Typography/Subhead/Subhead.module.css +1 -1
  1004. package/dist/cssm/components/Typography/Text/Text.js +9 -4
  1005. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  1006. package/dist/cssm/components/Typography/Text/Text.module.css +1 -1
  1007. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  1008. package/dist/cssm/components/UsersStack/UsersStack.js +2 -2
  1009. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  1010. package/dist/cssm/components/UsersStack/UsersStack.module.css +1 -1
  1011. package/dist/cssm/components/View/View.js +12 -12
  1012. package/dist/cssm/components/View/View.js.map +1 -1
  1013. package/dist/cssm/components/View/ViewInfinite.d.ts +2 -2
  1014. package/dist/cssm/components/View/ViewInfinite.js +9 -9
  1015. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  1016. package/dist/cssm/components/WriteBar/WriteBar.js +4 -4
  1017. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  1018. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +18 -8
  1019. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  1020. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +1 -1
  1021. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.d.ts +10 -0
  1022. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js +14 -0
  1023. package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js.map +1 -0
  1024. package/dist/cssm/helpers/getPlatformClassName.js.map +1 -1
  1025. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  1026. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  1027. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
  1028. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1029. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
  1030. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1031. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
  1032. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1033. package/dist/cssm/hooks/useAutoDetectAppearance.js +1 -1
  1034. package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
  1035. package/dist/cssm/hooks/useCalendar.js +1 -1
  1036. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  1037. package/dist/cssm/hooks/useChipsSelect.d.ts +1 -1
  1038. package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
  1039. package/dist/cssm/hooks/useDateInput.js +1 -1
  1040. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  1041. package/dist/cssm/hooks/useFocusVisible.js +1 -1
  1042. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  1043. package/dist/cssm/hooks/useMediaQueries.js.map +1 -1
  1044. package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
  1045. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1046. package/dist/cssm/hooks/useTimeout.js +1 -1
  1047. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1048. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  1049. package/dist/cssm/hooks/useWaitTransitionFinish.js +1 -1
  1050. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1051. package/dist/cssm/lib/SSR.js +3 -3
  1052. package/dist/cssm/lib/SSR.js.map +1 -1
  1053. package/dist/cssm/lib/adaptivity/constants.d.ts +7 -0
  1054. package/dist/cssm/lib/adaptivity/constants.js +3 -0
  1055. package/dist/cssm/lib/adaptivity/constants.js.map +1 -1
  1056. package/dist/cssm/lib/adaptivity/functions.d.ts +9 -1
  1057. package/dist/cssm/lib/adaptivity/functions.js +43 -1
  1058. package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
  1059. package/dist/cssm/lib/adaptivity/types.d.ts +2 -1
  1060. package/dist/cssm/lib/adaptivity/types.js.map +1 -1
  1061. package/dist/cssm/lib/calendar.js +1 -1
  1062. package/dist/cssm/lib/calendar.js.map +1 -1
  1063. package/dist/cssm/lib/floating/adapters.d.ts +1 -1
  1064. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  1065. package/dist/cssm/lib/floating/functions.d.ts +1 -1
  1066. package/dist/cssm/lib/floating/functions.js.map +1 -1
  1067. package/dist/cssm/lib/platform.js +1 -1
  1068. package/dist/cssm/lib/platform.js.map +1 -1
  1069. package/dist/cssm/lib/select.js.map +1 -1
  1070. package/dist/cssm/shared/breakpoints.d.ts +44 -0
  1071. package/dist/cssm/shared/breakpoints.js +79 -13
  1072. package/dist/cssm/shared/breakpoints.js.map +1 -1
  1073. package/dist/cssm/styles/adaptivity.module.css +1 -1
  1074. package/dist/cssm/types.d.ts +9 -1
  1075. package/dist/cssm/types.js.map +1 -1
  1076. package/dist/helpers/getPlatformClassName.js.map +1 -1
  1077. package/dist/hoc/withPlatform.js.map +1 -1
  1078. package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts +2 -2
  1079. package/dist/hooks/useAdaptivityConditionalRender/helpers.js +1 -1
  1080. package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1081. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +2 -2
  1082. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1083. package/dist/hooks/useAdaptivityWithJSMediaQueries.js +3 -3
  1084. package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1085. package/dist/hooks/useAutoDetectAppearance.js +1 -1
  1086. package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
  1087. package/dist/hooks/useCalendar.js +1 -1
  1088. package/dist/hooks/useCalendar.js.map +1 -1
  1089. package/dist/hooks/useChipsSelect.d.ts +1 -1
  1090. package/dist/hooks/useChipsSelect.js.map +1 -1
  1091. package/dist/hooks/useDateInput.js +1 -1
  1092. package/dist/hooks/useDateInput.js.map +1 -1
  1093. package/dist/hooks/useFocusVisible.js +1 -1
  1094. package/dist/hooks/useFocusVisible.js.map +1 -1
  1095. package/dist/hooks/useMediaQueries.js.map +1 -1
  1096. package/dist/hooks/usePatchChildrenRef.js +1 -1
  1097. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1098. package/dist/hooks/useTimeout.js +1 -1
  1099. package/dist/hooks/useTimeout.js.map +1 -1
  1100. package/dist/hooks/useTodayDate.js.map +1 -1
  1101. package/dist/hooks/useWaitTransitionFinish.js +1 -1
  1102. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1103. package/dist/lib/SSR.js +3 -3
  1104. package/dist/lib/SSR.js.map +1 -1
  1105. package/dist/lib/adaptivity/constants.d.ts +7 -0
  1106. package/dist/lib/adaptivity/constants.js +3 -0
  1107. package/dist/lib/adaptivity/constants.js.map +1 -1
  1108. package/dist/lib/adaptivity/functions.d.ts +9 -1
  1109. package/dist/lib/adaptivity/functions.js +43 -1
  1110. package/dist/lib/adaptivity/functions.js.map +1 -1
  1111. package/dist/lib/adaptivity/types.d.ts +2 -1
  1112. package/dist/lib/adaptivity/types.js.map +1 -1
  1113. package/dist/lib/calendar.js +1 -1
  1114. package/dist/lib/calendar.js.map +1 -1
  1115. package/dist/lib/floating/adapters.d.ts +1 -1
  1116. package/dist/lib/floating/adapters.js.map +1 -1
  1117. package/dist/lib/floating/functions.d.ts +1 -1
  1118. package/dist/lib/floating/functions.js.map +1 -1
  1119. package/dist/lib/platform.js +1 -1
  1120. package/dist/lib/platform.js.map +1 -1
  1121. package/dist/lib/select.js.map +1 -1
  1122. package/dist/shared/breakpoints.d.ts +44 -0
  1123. package/dist/shared/breakpoints.js +79 -13
  1124. package/dist/shared/breakpoints.js.map +1 -1
  1125. package/dist/types.d.ts +9 -1
  1126. package/dist/types.js.map +1 -1
  1127. package/dist/vkui.css +45 -44
  1128. package/dist/vkui.css.map +1 -1
  1129. package/dist/vkui.js.tmp +3177 -2863
  1130. package/package.json +1 -1
  1131. package/dist/cjs/helpers/getHoverClassName.d.ts +0 -2
  1132. package/dist/cjs/helpers/getHoverClassName.js +0 -22
  1133. package/dist/cjs/helpers/getHoverClassName.js.map +0 -1
  1134. package/dist/cjs/helpers/getPointerClassName.d.ts +0 -2
  1135. package/dist/cjs/helpers/getPointerClassName.js +0 -22
  1136. package/dist/cjs/helpers/getPointerClassName.js.map +0 -1
  1137. package/dist/cjs/helpers/getSizeXClassName.d.ts +0 -5
  1138. package/dist/cjs/helpers/getSizeXClassName.js +0 -18
  1139. package/dist/cjs/helpers/getSizeXClassName.js.map +0 -1
  1140. package/dist/cjs/helpers/getSizeYClassName.d.ts +0 -5
  1141. package/dist/cjs/helpers/getSizeYClassName.js +0 -18
  1142. package/dist/cjs/helpers/getSizeYClassName.js.map +0 -1
  1143. package/dist/cjs/helpers/getViewHeightClassName.d.ts +0 -3
  1144. package/dist/cjs/helpers/getViewHeightClassName.js +0 -31
  1145. package/dist/cjs/helpers/getViewHeightClassName.js.map +0 -1
  1146. package/dist/cjs/helpers/getViewWidthClassName.d.ts +0 -3
  1147. package/dist/cjs/helpers/getViewWidthClassName.js +0 -52
  1148. package/dist/cjs/helpers/getViewWidthClassName.js.map +0 -1
  1149. package/dist/cssm/helpers/getHoverClassName.d.ts +0 -2
  1150. package/dist/cssm/helpers/getHoverClassName.js +0 -16
  1151. package/dist/cssm/helpers/getHoverClassName.js.map +0 -1
  1152. package/dist/cssm/helpers/getPointerClassName.d.ts +0 -2
  1153. package/dist/cssm/helpers/getPointerClassName.js +0 -16
  1154. package/dist/cssm/helpers/getPointerClassName.js.map +0 -1
  1155. package/dist/cssm/helpers/getSizeXClassName.d.ts +0 -5
  1156. package/dist/cssm/helpers/getSizeXClassName.js +0 -12
  1157. package/dist/cssm/helpers/getSizeXClassName.js.map +0 -1
  1158. package/dist/cssm/helpers/getSizeYClassName.d.ts +0 -5
  1159. package/dist/cssm/helpers/getSizeYClassName.js +0 -12
  1160. package/dist/cssm/helpers/getSizeYClassName.js.map +0 -1
  1161. package/dist/cssm/helpers/getViewHeightClassName.d.ts +0 -3
  1162. package/dist/cssm/helpers/getViewHeightClassName.js +0 -25
  1163. package/dist/cssm/helpers/getViewHeightClassName.js.map +0 -1
  1164. package/dist/cssm/helpers/getViewWidthClassName.d.ts +0 -3
  1165. package/dist/cssm/helpers/getViewWidthClassName.js +0 -46
  1166. package/dist/cssm/helpers/getViewWidthClassName.js.map +0 -1
  1167. package/dist/helpers/getHoverClassName.d.ts +0 -2
  1168. package/dist/helpers/getHoverClassName.js +0 -16
  1169. package/dist/helpers/getHoverClassName.js.map +0 -1
  1170. package/dist/helpers/getPointerClassName.d.ts +0 -2
  1171. package/dist/helpers/getPointerClassName.js +0 -16
  1172. package/dist/helpers/getPointerClassName.js.map +0 -1
  1173. package/dist/helpers/getSizeXClassName.d.ts +0 -5
  1174. package/dist/helpers/getSizeXClassName.js +0 -12
  1175. package/dist/helpers/getSizeXClassName.js.map +0 -1
  1176. package/dist/helpers/getSizeYClassName.d.ts +0 -5
  1177. package/dist/helpers/getSizeYClassName.js +0 -12
  1178. package/dist/helpers/getSizeYClassName.js.map +0 -1
  1179. package/dist/helpers/getViewHeightClassName.d.ts +0 -3
  1180. package/dist/helpers/getViewHeightClassName.js +0 -25
  1181. package/dist/helpers/getViewHeightClassName.js.map +0 -1
  1182. package/dist/helpers/getViewWidthClassName.d.ts +0 -3
  1183. package/dist/helpers/getViewWidthClassName.js +0 -46
  1184. package/dist/helpers/getViewWidthClassName.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"ModalCardBase.js","names":["React","Title","Subhead","classNames","hasReactNode","getPlatformClassName","usePlatform","PanelHeaderButton","Platform","ModalDismissButton","Icon24Dismiss","useKeyboard","useAdaptivityWithJSMediaQueries","ModalCardBase","getRootRef","icon","header","subheader","children","actions","onClose","dismissLabel","className","style","sizeProp","size","restProps","platform","isDesktop","isSoftwareKeyboardOpened","isOpened","canShowCloseButtonIOS","IOS","undefined","maxWidth"],"sources":["../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Title } from '../Typography/Title/Title';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { HasRootRef } from '../../types';\nimport { PanelHeaderButton } from '../PanelHeaderButton/PanelHeaderButton';\nimport { Platform } from '../../lib/platform';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { useKeyboard } from '../../hooks/useKeyboard';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport styles from './ModalCardBase.module.css';\n\nexport interface ModalCardBaseProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки\n */\n header?: React.ReactNode;\n\n /**\n * Подзаголовок\n */\n subheader?: React.ReactNode;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `size=\"l\" mode=\"primary\" stretched`\n * - `size=\"l\" mode=\"secondary\" stretched`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"s\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n\n onClose?: VoidFunction;\n\n /**\n * `aria-label` для кнопки закрытия. Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCardBase\n */\nexport const ModalCardBase = ({\n getRootRef,\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n dismissLabel = 'Скрыть',\n className,\n style,\n size: sizeProp,\n ...restProps\n}: ModalCardBaseProps) => {\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const isSoftwareKeyboardOpened = useKeyboard().isOpened;\n\n const canShowCloseButtonIOS = platform === Platform.IOS && !isDesktop;\n\n const size = isDesktop ? sizeProp : undefined;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['ModalCardBase'],\n getPlatformClassName(styles['ModalCardBase'], platform),\n isDesktop && styles['ModalCardBase--desktop'],\n className,\n )}\n ref={getRootRef}\n style={{\n ...style,\n maxWidth: size,\n }}\n >\n <div\n className={classNames(\n styles['ModalCardBase__container'],\n isSoftwareKeyboardOpened && styles['ModalCardBase__container--softwareKeyboardOpened'],\n )}\n >\n {hasReactNode(icon) && <div className={styles['ModalCardBase__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['ModalCardBase__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(subheader) && (\n <Subhead className={styles['ModalCardBase__subheader']}>{subheader}</Subhead>\n )}\n\n {children}\n\n {hasReactNode(actions) && <div className={styles['ModalCardBase__actions']}>{actions}</div>}\n\n {isDesktop && <ModalDismissButton onClick={onClose} />}\n {canShowCloseButtonIOS && (\n <PanelHeaderButton\n aria-label={dismissLabel}\n className={styles['ModalCardBase__dismiss']}\n onClick={onClose}\n >\n <Icon24Dismiss />\n </PanelHeaderButton>\n )}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,KAAK,QAAQ,2BAA2B;AACjD,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SAASC,oBAAoB,QAAQ,oCAAoC;AACzE,SAASC,WAAW,QAAQ,yBAAyB;AAErD,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,kBAAkB,QAAQ,0CAA0C;AAC7E,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,+BAA+B,QAAQ,6CAA6C;AAiD7F;AACA;AACA;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAa,OAaA;EAAA,IAZxBC,UAAU,QAAVA,UAAU;IACVC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IAAA,yBACPC,YAAY;IAAZA,YAAY,kCAAG,QAAQ;IACvBC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACCC,QAAQ,QAAdC,IAAI;IACDC,SAAS;EAEZ,IAAMC,QAAQ,GAAGrB,WAAW,EAAE;EAC9B,4BAAsBM,+BAA+B,EAAE;IAA/CgB,SAAS,yBAATA,SAAS;EACjB,IAAMC,wBAAwB,GAAGlB,WAAW,EAAE,CAACmB,QAAQ;EAEvD,IAAMC,qBAAqB,GAAGJ,QAAQ,KAAKnB,QAAQ,CAACwB,GAAG,IAAI,CAACJ,SAAS;EAErE,IAAMH,IAAI,GAAGG,SAAS,GAAGJ,QAAQ,GAAGS,SAAS;EAE7C,oBACE,wCACMP,SAAS;IACb,SAAS,EAAEvB,UAAU,sBAEnBE,oBAAoB,sBAA0BsB,QAAQ,CAAC,EACvDC,SAAS,gCAAoC,EAC7CN,SAAS,CACT;IACF,GAAG,EAAER,UAAW;IAChB,KAAK,kCACAS,KAAK;MACRW,QAAQ,EAAET;IAAI;EACd,iBAEF;IACE,SAAS,EAAEtB,UAAU,iCAEnB0B,wBAAwB,0DAA8D;EACtF,GAEDzB,YAAY,CAACW,IAAI,CAAC,iBAAI;IAAK,SAAS;EAAgC,GAAEA,IAAI,CAAO,EACjFX,YAAY,CAACY,MAAM,CAAC,iBACnB,oBAAC,KAAK;IAAC,KAAK,EAAC,GAAG;IAAC,MAAM,EAAC,GAAG;IAAC,SAAS;EAAkC,GACpEA,MAAM,CAEV,EACAZ,YAAY,CAACa,SAAS,CAAC,iBACtB,oBAAC,OAAO;IAAC,SAAS;EAAqC,GAAEA,SAAS,CACnE,EAEAC,QAAQ,EAERd,YAAY,CAACe,OAAO,CAAC,iBAAI;IAAK,SAAS;EAAmC,GAAEA,OAAO,CAAO,EAE1FS,SAAS,iBAAI,oBAAC,kBAAkB;IAAC,OAAO,EAAER;EAAQ,EAAG,EACrDW,qBAAqB,iBACpB,oBAAC,iBAAiB;IAChB,cAAYV,YAAa;IACzB,SAAS,8BAAmC;IAC5C,OAAO,EAAED;EAAQ,gBAEjB,oBAAC,aAAa,OAAG,CAEpB,CACG,CACF;AAEV,CAAC"}
1
+ {"version":3,"file":"ModalCardBase.js","names":["React","Icon24Dismiss","classNames","hasReactNode","getPlatformClassName","useAdaptivityWithJSMediaQueries","useKeyboard","usePlatform","Platform","ModalDismissButton","PanelHeaderButton","Subhead","Title","ModalCardBase","getRootRef","icon","header","subheader","children","actions","onClose","dismissLabel","className","style","sizeProp","size","restProps","platform","isDesktop","isSoftwareKeyboardOpened","isOpened","canShowCloseButtonIOS","IOS","undefined","maxWidth"],"sources":["../../../src/components/ModalCardBase/ModalCardBase.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon24Dismiss } from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useKeyboard } from '../../hooks/useKeyboard';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRootRef } from '../../types';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { PanelHeaderButton } from '../PanelHeaderButton/PanelHeaderButton';\nimport { Subhead } from '../Typography/Subhead/Subhead';\nimport { Title } from '../Typography/Title/Title';\nimport styles from './ModalCardBase.module.css';\n\nexport interface ModalCardBaseProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Иконка.\n *\n * Может быть компонентом иконки, например, `<Icon56MoneyTransferOutline />`, или `<Avatar size={72} src=\"\" />`\n */\n icon?: React.ReactNode;\n\n /**\n * Заголовок карточки\n */\n header?: React.ReactNode;\n\n /**\n * Подзаголовок\n */\n subheader?: React.ReactNode;\n\n /**\n * Кнопки-действия. Принимает [`Button`](https://vkcom.github.io/VKUI/#/Button) с параметрами:\n *\n * - `size=\"l\" mode=\"primary\" stretched`\n * - `size=\"l\" mode=\"secondary\" stretched`\n *\n * Для набора кнопок используйте [`ButtonGroup`](https://vkcom.github.io/VKUI/#/ButtonGroup) с параметрами:\n *\n * - `gap=\"s\" mode=\"horizontal\" stretched`\n * - `gap=\"m\" mode=\"vertical\" stretched`\n */\n actions?: React.ReactNode;\n\n onClose?: VoidFunction;\n\n /**\n * `aria-label` для кнопки закрытия. Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: number;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalCardBase\n */\nexport const ModalCardBase = ({\n getRootRef,\n icon,\n header,\n subheader,\n children,\n actions,\n onClose,\n dismissLabel = 'Скрыть',\n className,\n style,\n size: sizeProp,\n ...restProps\n}: ModalCardBaseProps) => {\n const platform = usePlatform();\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n const isSoftwareKeyboardOpened = useKeyboard().isOpened;\n\n const canShowCloseButtonIOS = platform === Platform.IOS && !isDesktop;\n\n const size = isDesktop ? sizeProp : undefined;\n\n return (\n <div\n {...restProps}\n className={classNames(\n styles['ModalCardBase'],\n getPlatformClassName(styles['ModalCardBase'], platform),\n isDesktop && styles['ModalCardBase--desktop'],\n className,\n )}\n ref={getRootRef}\n style={{\n ...style,\n maxWidth: size,\n }}\n >\n <div\n className={classNames(\n styles['ModalCardBase__container'],\n isSoftwareKeyboardOpened && styles['ModalCardBase__container--softwareKeyboardOpened'],\n )}\n >\n {hasReactNode(icon) && <div className={styles['ModalCardBase__icon']}>{icon}</div>}\n {hasReactNode(header) && (\n <Title level=\"2\" weight=\"2\" className={styles['ModalCardBase__header']}>\n {header}\n </Title>\n )}\n {hasReactNode(subheader) && (\n <Subhead className={styles['ModalCardBase__subheader']}>{subheader}</Subhead>\n )}\n\n {children}\n\n {hasReactNode(actions) && <div className={styles['ModalCardBase__actions']}>{actions}</div>}\n\n {isDesktop && <ModalDismissButton onClick={onClose} />}\n {canShowCloseButtonIOS && (\n <PanelHeaderButton\n aria-label={dismissLabel}\n className={styles['ModalCardBase__dismiss']}\n onClick={onClose}\n >\n <Icon24Dismiss />\n </PanelHeaderButton>\n )}\n </div>\n </div>\n );\n};\n"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,aAAa,QAAQ,kBAAkB;AAChD,SAASC,UAAU,EAAEC,YAAY,QAAQ,iBAAiB;AAC1D,SAASC,oBAAoB,QAAQ,oCAAoC;AACzE,SAASC,+BAA+B,QAAQ,6CAA6C;AAC7F,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,QAAQ,QAAQ,oBAAoB;AAE7C,SAASC,kBAAkB,QAAQ,0CAA0C;AAC7E,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,OAAO,QAAQ,+BAA+B;AACvD,SAASC,KAAK,QAAQ,2BAA2B;AAiDjD;AACA;AACA;AACA,OAAO,IAAMC,aAAa,GAAG,SAAhBA,aAAa,OAaA;EAAA,IAZxBC,UAAU,QAAVA,UAAU;IACVC,IAAI,QAAJA,IAAI;IACJC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACTC,QAAQ,QAARA,QAAQ;IACRC,OAAO,QAAPA,OAAO;IACPC,OAAO,QAAPA,OAAO;IAAA,yBACPC,YAAY;IAAZA,YAAY,kCAAG,QAAQ;IACvBC,SAAS,QAATA,SAAS;IACTC,KAAK,QAALA,KAAK;IACCC,QAAQ,QAAdC,IAAI;IACDC,SAAS;EAEZ,IAAMC,QAAQ,GAAGpB,WAAW,EAAE;EAC9B,4BAAsBF,+BAA+B,EAAE;IAA/CuB,SAAS,yBAATA,SAAS;EACjB,IAAMC,wBAAwB,GAAGvB,WAAW,EAAE,CAACwB,QAAQ;EAEvD,IAAMC,qBAAqB,GAAGJ,QAAQ,KAAKnB,QAAQ,CAACwB,GAAG,IAAI,CAACJ,SAAS;EAErE,IAAMH,IAAI,GAAGG,SAAS,GAAGJ,QAAQ,GAAGS,SAAS;EAE7C,oBACE,wCACMP,SAAS;IACb,SAAS,EAAExB,UAAU,sBAEnBE,oBAAoB,sBAA0BuB,QAAQ,CAAC,EACvDC,SAAS,gCAAoC,EAC7CN,SAAS,CACT;IACF,GAAG,EAAER,UAAW;IAChB,KAAK,kCACAS,KAAK;MACRW,QAAQ,EAAET;IAAI;EACd,iBAEF;IACE,SAAS,EAAEvB,UAAU,iCAEnB2B,wBAAwB,0DAA8D;EACtF,GAED1B,YAAY,CAACY,IAAI,CAAC,iBAAI;IAAK,SAAS;EAAgC,GAAEA,IAAI,CAAO,EACjFZ,YAAY,CAACa,MAAM,CAAC,iBACnB,oBAAC,KAAK;IAAC,KAAK,EAAC,GAAG;IAAC,MAAM,EAAC,GAAG;IAAC,SAAS;EAAkC,GACpEA,MAAM,CAEV,EACAb,YAAY,CAACc,SAAS,CAAC,iBACtB,oBAAC,OAAO;IAAC,SAAS;EAAqC,GAAEA,SAAS,CACnE,EAEAC,QAAQ,EAERf,YAAY,CAACgB,OAAO,CAAC,iBAAI;IAAK,SAAS;EAAmC,GAAEA,OAAO,CAAO,EAE1FS,SAAS,iBAAI,oBAAC,kBAAkB;IAAC,OAAO,EAAER;EAAQ,EAAG,EACrDW,qBAAqB,iBACpB,oBAAC,iBAAiB;IAChB,cAAYV,YAAa;IACzB,SAAS,8BAAmC;IAC5C,OAAO,EAAED;EAAQ,gBAEjB,oBAAC,aAAa,OAAG,CAEpB,CACG,CACF;AAEV,CAAC"}
@@ -2,8 +2,8 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  var _excluded = ["aria-label", "className"];
4
4
  import * as React from 'react';
5
- import { classNames } from '@vkontakte/vkjs';
6
5
  import { Icon20Cancel } from '@vkontakte/icons';
6
+ import { classNames } from '@vkontakte/vkjs';
7
7
  import { Tappable } from '../Tappable/Tappable';
8
8
  /**
9
9
  * @see https://vkcom.github.io/VKUI/#/ModalDismissButton
@@ -1 +1 @@
1
- {"version":3,"file":"ModalDismissButton.js","names":["React","classNames","Icon20Cancel","Tappable","ModalDismissButton","ariaLabel","className","restProps"],"sources":["../../../src/components/ModalDismissButton/ModalDismissButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './ModalDismissButton.module.css';\n\nexport type ModalDismissButtonProps = React.HTMLAttributes<HTMLButtonElement>;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalDismissButton\n */\nexport const ModalDismissButton = ({\n 'aria-label': ariaLabel = 'Закрыть',\n className,\n ...restProps\n}: ModalDismissButtonProps) => {\n return (\n <Tappable\n className={classNames(styles['ModalDismissButton'], className)}\n {...restProps}\n aria-label={ariaLabel}\n activeMode={styles['ModalDismissButton--active']}\n hoverMode={styles['ModalDismissButton--hover']}\n >\n <Icon20Cancel />\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,QAAQ,QAAQ,sBAAsB;AAK/C;AACA;AACA;AACA,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAIA;EAAA,0BAH7B,YAAY;IAAEC,SAAS,+BAAG,SAAS;IACnCC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,oBACE,oBAAC,QAAQ;IACP,SAAS,EAAEN,UAAU,2BAA+BK,SAAS;EAAE,GAC3DC,SAAS;IACb,cAAYF,SAAU;IACtB,UAAU,kCAAuC;IACjD,SAAS;EAAsC,iBAE/C,oBAAC,YAAY,OAAG,CACP;AAEf,CAAC"}
1
+ {"version":3,"file":"ModalDismissButton.js","names":["React","Icon20Cancel","classNames","Tappable","ModalDismissButton","ariaLabel","className","restProps"],"sources":["../../../src/components/ModalDismissButton/ModalDismissButton.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon20Cancel } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './ModalDismissButton.module.css';\n\nexport type ModalDismissButtonProps = React.HTMLAttributes<HTMLButtonElement>;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalDismissButton\n */\nexport const ModalDismissButton = ({\n 'aria-label': ariaLabel = 'Закрыть',\n className,\n ...restProps\n}: ModalDismissButtonProps) => {\n return (\n <Tappable\n className={classNames(styles['ModalDismissButton'], className)}\n {...restProps}\n aria-label={ariaLabel}\n activeMode={styles['ModalDismissButton--active']}\n hoverMode={styles['ModalDismissButton--hover']}\n >\n <Icon20Cancel />\n </Tappable>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,QAAQ,QAAQ,sBAAsB;AAK/C;AACA;AACA;AACA,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAkB,OAIA;EAAA,0BAH7B,YAAY;IAAEC,SAAS,+BAAG,SAAS;IACnCC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,oBACE,oBAAC,QAAQ;IACP,SAAS,EAAEL,UAAU,2BAA+BI,SAAS;EAAE,GAC3DC,SAAS;IACb,cAAYF,SAAU;IACtB,UAAU,kCAAuC;IACjD,SAAS;EAAsC,iBAE/C,oBAAC,YAAY,OAAG,CACP;AAEf,CAAC"}
@@ -3,20 +3,17 @@ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProper
3
3
  var _excluded = ["children", "header", "size", "onOpen", "onOpened", "onClose", "onClosed", "settlingHeight", "dynamicContentHeight", "getModalContentRef", "nav", "id", "hideCloseButton", "className"];
4
4
  import * as React from 'react';
5
5
  import { classNames } from '@vkontakte/vkjs';
6
- import { Platform } from '../../lib/platform';
7
- import { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';
8
- import { usePlatform } from '../../hooks/usePlatform';
6
+ import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
9
7
  import { useOrientationChange } from '../../hooks/useOrientationChange';
10
- import { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';
11
- import { multiRef } from '../../lib/utils';
12
- import { ModalType } from '../ModalRoot/types';
8
+ import { usePlatform } from '../../hooks/usePlatform';
9
+ import { SizeType } from '../../lib/adaptivity';
13
10
  import { getNavId } from '../../lib/getNavId';
11
+ import { Platform } from '../../lib/platform';
12
+ import { multiRef } from '../../lib/utils';
14
13
  import { warnOnce } from '../../lib/warnOnce';
15
- import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
16
- var sizeXClassNames = {
17
- regular: "vkuiModalPage--sizeX-regular",
18
- compact: ''
19
- };
14
+ import { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';
15
+ import { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';
16
+ import { ModalType } from '../ModalRoot/types';
20
17
  var sizeClassName = {
21
18
  s: "vkuiModalPage--size-s",
22
19
  m: "vkuiModalPage--size-m",
@@ -63,7 +60,7 @@ export var ModalPage = function ModalPage(_ref) {
63
60
  refs = _useModalRegistry.refs;
64
61
  return /*#__PURE__*/React.createElement("div", _extends({}, restProps, {
65
62
  id: id,
66
- className: classNames("vkuiModalPage", platform === Platform.IOS && "vkuiModalPage--ios", isDesktop && "vkuiModalPage--desktop", sizeXClassNames[sizeX], typeof size === 'string' && sizeClassName[size], className)
63
+ className: classNames("vkuiModalPage", platform === Platform.IOS && "vkuiModalPage--ios", isDesktop && "vkuiModalPage--desktop", sizeX === SizeType.REGULAR && "vkuiModalPage--sizeX-regular", typeof size === 'string' && sizeClassName[size], className)
67
64
  }), /*#__PURE__*/React.createElement("div", {
68
65
  className: "vkuiModalPage__in-wrap",
69
66
  style: {
@@ -1 +1 @@
1
- {"version":3,"file":"ModalPage.js","names":["React","classNames","Platform","ModalRootContext","useModalRegistry","usePlatform","useOrientationChange","ModalDismissButton","multiRef","ModalType","getNavId","warnOnce","useAdaptivityWithJSMediaQueries","sizeXClassNames","regular","compact","sizeClassName","s","m","l","warn","ModalPage","children","header","size","sizeProp","onOpen","onOpened","onClose","onClosed","settlingHeight","dynamicContentHeight","getModalContentRef","nav","id","hideCloseButton","className","restProps","useContext","updateModalHeight","platform","orientation","sizeX","isDesktop","useEffect","isCloseButtonShown","modalContext","PAGE","refs","IOS","maxWidth","undefined","innerElement","headerElement","contentElement"],"sources":["../../../src/components/ModalPage/ModalPage.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { Platform } from '../../lib/platform';\nimport { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useOrientationChange } from '../../hooks/useOrientationChange';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { multiRef } from '../../lib/utils';\nimport { ModalType } from '../ModalRoot/types';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport styles from './ModalPage.module.css';\n\nconst sizeXClassNames = {\n regular: styles['ModalPage--sizeX-regular'],\n compact: '',\n};\n\nconst sizeClassName = {\n s: styles[`ModalPage--size-s`],\n m: styles[`ModalPage--size-m`],\n l: styles[`ModalPage--size-l`],\n};\n\nexport interface ModalPageProps extends React.HTMLAttributes<HTMLDivElement>, NavIdProps {\n /**\n * Шапка модальной страницы, `<ModalPageHeader />`\n */\n header?: React.ReactNode;\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: 's' | 'm' | 'l' | number;\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 /**\n * Процент, на который изначально будет открыта модальная страница. При `settlingHeight={100}` модальная страница раскрывается на всю высоту.\n */\n settlingHeight?: number;\n /**\n * Если высота контента в модальной странице может поменяться, нужно установить это свойство\n */\n dynamicContentHeight?: boolean;\n getModalContentRef?: React.Ref<HTMLDivElement>;\n /**\n * Скрывает кнопку закрытия (актуально для iOS, т.к. можно отрисовать кнопку закрытия внутри модалки)\n */\n hideCloseButton?: boolean;\n}\n\nconst warn = warnOnce('ModalPage');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPage\n */\nexport const ModalPage = ({\n children,\n header,\n size: sizeProp = 's',\n onOpen,\n onOpened,\n onClose,\n onClosed,\n settlingHeight, // 75\n dynamicContentHeight,\n getModalContentRef,\n nav,\n id,\n hideCloseButton = false,\n className,\n ...restProps\n}: ModalPageProps) => {\n const { updateModalHeight } = React.useContext(ModalRootContext);\n\n const platform = usePlatform();\n const orientation = useOrientationChange();\n const { sizeX, isDesktop } = useAdaptivityWithJSMediaQueries();\n\n React.useEffect(updateModalHeight, [children, orientation, updateModalHeight]);\n\n const isCloseButtonShown = !hideCloseButton && isDesktop;\n const size = isDesktop ? sizeProp : 's';\n\n const modalContext = React.useContext(ModalRootContext);\n const { refs } = useModalRegistry(getNavId({ nav, id }, warn), ModalType.PAGE);\n\n return (\n <div\n {...restProps}\n id={id}\n className={classNames(\n styles['ModalPage'],\n platform === Platform.IOS && styles['ModalPage--ios'],\n isDesktop && styles['ModalPage--desktop'],\n sizeXClassNames[sizeX],\n typeof size === 'string' && sizeClassName[size],\n className,\n )}\n >\n <div\n className={styles['ModalPage__in-wrap']}\n style={{\n maxWidth: typeof size === 'number' ? size : undefined,\n }}\n ref={refs.innerElement}\n >\n <div className={styles['ModalPage__in']}>\n <div className={styles['ModalPage__header']} ref={refs.headerElement}>\n {header}\n </div>\n\n <div className={styles['ModalPage__content-wrap']}>\n <div\n className={styles['ModalPage__content']}\n ref={multiRef<HTMLDivElement>(refs.contentElement, getModalContentRef)}\n >\n <div className={styles['ModalPage__content-in']}>{children}</div>\n </div>\n </div>\n {isCloseButtonShown && <ModalDismissButton onClick={onClose || modalContext.onClose} />}\n </div>\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
1
+ {"version":3,"file":"ModalPage.js","names":["React","classNames","useAdaptivityWithJSMediaQueries","useOrientationChange","usePlatform","SizeType","getNavId","Platform","multiRef","warnOnce","ModalDismissButton","ModalRootContext","useModalRegistry","ModalType","sizeClassName","s","m","l","warn","ModalPage","children","header","size","sizeProp","onOpen","onOpened","onClose","onClosed","settlingHeight","dynamicContentHeight","getModalContentRef","nav","id","hideCloseButton","className","restProps","useContext","updateModalHeight","platform","orientation","sizeX","isDesktop","useEffect","isCloseButtonShown","modalContext","PAGE","refs","IOS","REGULAR","maxWidth","undefined","innerElement","headerElement","contentElement"],"sources":["../../../src/components/ModalPage/ModalPage.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useOrientationChange } from '../../hooks/useOrientationChange';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { SizeType } from '../../lib/adaptivity';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { multiRef } from '../../lib/utils';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { ModalDismissButton } from '../ModalDismissButton/ModalDismissButton';\nimport { ModalRootContext, useModalRegistry } from '../ModalRoot/ModalRootContext';\nimport { ModalType } from '../ModalRoot/types';\nimport styles from './ModalPage.module.css';\n\nconst sizeClassName = {\n s: styles[`ModalPage--size-s`],\n m: styles[`ModalPage--size-m`],\n l: styles[`ModalPage--size-l`],\n};\n\nexport interface ModalPageProps extends React.HTMLAttributes<HTMLDivElement>, NavIdProps {\n /**\n * Шапка модальной страницы, `<ModalPageHeader />`\n */\n header?: React.ReactNode;\n /**\n * Задаёт контенту максимальную ширину для десктопной версии.\n */\n size?: 's' | 'm' | 'l' | number;\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 /**\n * Процент, на который изначально будет открыта модальная страница. При `settlingHeight={100}` модальная страница раскрывается на всю высоту.\n */\n settlingHeight?: number;\n /**\n * Если высота контента в модальной странице может поменяться, нужно установить это свойство\n */\n dynamicContentHeight?: boolean;\n getModalContentRef?: React.Ref<HTMLDivElement>;\n /**\n * Скрывает кнопку закрытия (актуально для iOS, т.к. можно отрисовать кнопку закрытия внутри модалки)\n */\n hideCloseButton?: boolean;\n}\n\nconst warn = warnOnce('ModalPage');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPage\n */\nexport const ModalPage = ({\n children,\n header,\n size: sizeProp = 's',\n onOpen,\n onOpened,\n onClose,\n onClosed,\n settlingHeight, // 75\n dynamicContentHeight,\n getModalContentRef,\n nav,\n id,\n hideCloseButton = false,\n className,\n ...restProps\n}: ModalPageProps) => {\n const { updateModalHeight } = React.useContext(ModalRootContext);\n\n const platform = usePlatform();\n const orientation = useOrientationChange();\n const { sizeX, isDesktop } = useAdaptivityWithJSMediaQueries();\n\n React.useEffect(updateModalHeight, [children, orientation, updateModalHeight]);\n\n const isCloseButtonShown = !hideCloseButton && isDesktop;\n const size = isDesktop ? sizeProp : 's';\n\n const modalContext = React.useContext(ModalRootContext);\n const { refs } = useModalRegistry(getNavId({ nav, id }, warn), ModalType.PAGE);\n\n return (\n <div\n {...restProps}\n id={id}\n className={classNames(\n styles['ModalPage'],\n platform === Platform.IOS && styles['ModalPage--ios'],\n isDesktop && styles['ModalPage--desktop'],\n sizeX === SizeType.REGULAR && styles['ModalPage--sizeX-regular'],\n typeof size === 'string' && sizeClassName[size],\n className,\n )}\n >\n <div\n className={styles['ModalPage__in-wrap']}\n style={{\n maxWidth: typeof size === 'number' ? size : undefined,\n }}\n ref={refs.innerElement}\n >\n <div className={styles['ModalPage__in']}>\n <div className={styles['ModalPage__header']} ref={refs.headerElement}>\n {header}\n </div>\n\n <div className={styles['ModalPage__content-wrap']}>\n <div\n className={styles['ModalPage__content']}\n ref={multiRef<HTMLDivElement>(refs.contentElement, getModalContentRef)}\n >\n <div className={styles['ModalPage__content-in']}>{children}</div>\n </div>\n </div>\n {isCloseButtonShown && <ModalDismissButton onClick={onClose || modalContext.onClose} />}\n </div>\n </div>\n </div>\n );\n};\n"],"mappings":"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"}
@@ -2,13 +2,13 @@ import _extends from "@babel/runtime/helpers/extends";
2
2
  import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
3
3
  var _excluded = ["children", "separator", "getRef", "className"];
4
4
  import * as React from 'react';
5
- import { usePlatform } from '../../hooks/usePlatform';
5
+ import { classNames } from '@vkontakte/vkjs';
6
+ import { getPlatformClassName } from '../../helpers/getPlatformClassName';
6
7
  import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
8
+ import { usePlatform } from '../../hooks/usePlatform';
7
9
  import { Platform } from '../../lib/platform';
8
- import { Separator } from '../Separator/Separator';
9
10
  import { PanelHeader } from '../PanelHeader/PanelHeader';
10
- import { classNames } from '@vkontakte/vkjs';
11
- import { getPlatformClassName } from '../../helpers/getPlatformClassName';
11
+ import { Separator } from '../Separator/Separator';
12
12
  /**
13
13
  * @see https://vkcom.github.io/VKUI/#/ModalPageHeader
14
14
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ModalPageHeader.js","names":["React","usePlatform","useAdaptivityWithJSMediaQueries","Platform","Separator","PanelHeader","classNames","getPlatformClassName","ModalPageHeader","children","separator","getRef","className","restProps","platform","hasSeparator","VKCOM","isDesktop"],"sources":["../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { HasRef } from '../../types';\nimport { Platform } from '../../lib/platform';\nimport { Separator } from '../Separator/Separator';\nimport { PanelHeader, PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow'>,\n HasRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPageHeader\n */\nexport const ModalPageHeader = ({\n children,\n separator = true,\n getRef,\n className,\n ...restProps\n}: ModalPageHeaderProps) => {\n const platform = usePlatform();\n const hasSeparator = separator && platform === Platform.VKCOM;\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['ModalPageHeader'],\n getPlatformClassName(styles['ModalPageHeader'], platform),\n platform !== Platform.VKCOM && styles['ModalPageHeader--withGaps'],\n isDesktop && styles['ModalPageHeader--desktop'],\n )}\n ref={getRef}\n >\n <PanelHeader\n className={classNames(styles['ModalPageHeader__in'], className)}\n {...restProps}\n fixed={false}\n separator={false}\n transparent\n >\n {children}\n </PanelHeader>\n {hasSeparator && <Separator wide />}\n </div>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,+BAA+B,QAAQ,6CAA6C;AAE7F,SAASC,QAAQ,QAAQ,oBAAoB;AAC7C,SAASC,SAAS,QAAQ,wBAAwB;AAClD,SAASC,WAAW,QAA0B,4BAA4B;AAC1E,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,oBAAoB,QAAQ,oCAAoC;AAQzE;AACA;AACA;AACA,OAAO,IAAMC,eAAe,GAAG,SAAlBA,eAAe,OAMA;EAAA,IAL1BC,QAAQ,QAARA,QAAQ;IAAA,sBACRC,SAAS;IAATA,SAAS,+BAAG,IAAI;IAChBC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAGb,WAAW,EAAE;EAC9B,IAAMc,YAAY,GAAGL,SAAS,IAAII,QAAQ,KAAKX,QAAQ,CAACa,KAAK;EAC7D,4BAAsBd,+BAA+B,EAAE;IAA/Ce,SAAS,yBAATA,SAAS;EAEjB,oBACE;IACE,SAAS,EAAEX,UAAU,wBAEnBC,oBAAoB,wBAA4BO,QAAQ,CAAC,EACzDA,QAAQ,KAAKX,QAAQ,CAACa,KAAK,mCAAuC,EAClEC,SAAS,kCAAsC,CAC/C;IACF,GAAG,EAAEN;EAAO,gBAEZ,oBAAC,WAAW;IACV,SAAS,EAAEL,UAAU,4BAAgCM,SAAS;EAAE,GAC5DC,SAAS;IACb,KAAK,EAAE,KAAM;IACb,SAAS,EAAE,KAAM;IACjB,WAAW;EAAA,IAEVJ,QAAQ,CACG,EACbM,YAAY,iBAAI,oBAAC,SAAS;IAAC,IAAI;EAAA,EAAG,CAC/B;AAEV,CAAC"}
1
+ {"version":3,"file":"ModalPageHeader.js","names":["React","classNames","getPlatformClassName","useAdaptivityWithJSMediaQueries","usePlatform","Platform","PanelHeader","Separator","ModalPageHeader","children","separator","getRef","className","restProps","platform","hasSeparator","VKCOM","isDesktop"],"sources":["../../../src/components/ModalPageHeader/ModalPageHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getPlatformClassName } from '../../helpers/getPlatformClassName';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { HasRef } from '../../types';\nimport { PanelHeader, PanelHeaderProps } from '../PanelHeader/PanelHeader';\nimport { Separator } from '../Separator/Separator';\nimport styles from './ModalPageHeader.module.css';\n\nexport interface ModalPageHeaderProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Omit<PanelHeaderProps, 'fixed' | 'shadow'>,\n HasRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalPageHeader\n */\nexport const ModalPageHeader = ({\n children,\n separator = true,\n getRef,\n className,\n ...restProps\n}: ModalPageHeaderProps) => {\n const platform = usePlatform();\n const hasSeparator = separator && platform === Platform.VKCOM;\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n return (\n <div\n className={classNames(\n styles['ModalPageHeader'],\n getPlatformClassName(styles['ModalPageHeader'], platform),\n platform !== Platform.VKCOM && styles['ModalPageHeader--withGaps'],\n isDesktop && styles['ModalPageHeader--desktop'],\n )}\n ref={getRef}\n >\n <PanelHeader\n className={classNames(styles['ModalPageHeader__in'], className)}\n {...restProps}\n fixed={false}\n separator={false}\n transparent\n >\n {children}\n </PanelHeader>\n {hasSeparator && <Separator wide />}\n </div>\n );\n};\n"],"mappings":";;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,UAAU,QAAQ,iBAAiB;AAC5C,SAASC,oBAAoB,QAAQ,oCAAoC;AACzE,SAASC,+BAA+B,QAAQ,6CAA6C;AAC7F,SAASC,WAAW,QAAQ,yBAAyB;AACrD,SAASC,QAAQ,QAAQ,oBAAoB;AAE7C,SAASC,WAAW,QAA0B,4BAA4B;AAC1E,SAASC,SAAS,QAAQ,wBAAwB;AAQlD;AACA;AACA;AACA,OAAO,IAAMC,eAAe,GAAG,SAAlBA,eAAe,OAMA;EAAA,IAL1BC,QAAQ,QAARA,QAAQ;IAAA,sBACRC,SAAS;IAATA,SAAS,+BAAG,IAAI;IAChBC,MAAM,QAANA,MAAM;IACNC,SAAS,QAATA,SAAS;IACNC,SAAS;EAEZ,IAAMC,QAAQ,GAAGV,WAAW,EAAE;EAC9B,IAAMW,YAAY,GAAGL,SAAS,IAAII,QAAQ,KAAKT,QAAQ,CAACW,KAAK;EAC7D,4BAAsBb,+BAA+B,EAAE;IAA/Cc,SAAS,yBAATA,SAAS;EAEjB,oBACE;IACE,SAAS,EAAEhB,UAAU,wBAEnBC,oBAAoB,wBAA4BY,QAAQ,CAAC,EACzDA,QAAQ,KAAKT,QAAQ,CAACW,KAAK,mCAAuC,EAClEC,SAAS,kCAAsC,CAC/C;IACF,GAAG,EAAEN;EAAO,gBAEZ,oBAAC,WAAW;IACV,SAAS,EAAEV,UAAU,4BAAgCW,SAAS;EAAE,GAC5DC,SAAS;IACb,KAAK,EAAE,KAAM;IACb,SAAS,EAAE,KAAM;IACjB,WAAW;EAAA,IAEVJ,QAAQ,CACG,EACbM,YAAY,iBAAI,oBAAC,SAAS;IAAC,IAAI;EAAA,EAAG,CAC/B;AAEV,CAAC"}
@@ -8,25 +8,25 @@ import _createSuper from "@babel/runtime/helpers/createSuper";
8
8
  import _defineProperty from "@babel/runtime/helpers/defineProperty";
9
9
  var _excluded = ["id"];
10
10
  import * as React from 'react';
11
- import { Touch } from '../Touch/Touch';
12
- import TouchRootContext from '../Touch/TouchContext';
13
11
  import { classNames } from '@vkontakte/vkjs';
14
- import { setTransformStyle } from '../../lib/styles';
15
- import { rubber } from '../../lib/touch';
16
- import { Platform } from '../../lib/platform';
17
- import { transitionEvent } from '../../lib/supportEvents';
18
- import { withPlatform } from '../../hoc/withPlatform';
12
+ import { clamp } from '../../helpers/math';
19
13
  import { withContext } from '../../hoc/withContext';
20
- import { ModalRootContext } from './ModalRootContext';
21
- import { ConfigProviderContext, WebviewType } from '../ConfigProvider/ConfigProviderContext';
22
- import { ModalType } from './types';
23
- import { MODAL_PAGE_DEFAULT_PERCENT_HEIGHT } from './constants';
14
+ import { withPlatform } from '../../hoc/withPlatform';
24
15
  import { withDOM } from '../../lib/dom';
25
16
  import { getNavId } from '../../lib/getNavId';
17
+ import { Platform } from '../../lib/platform';
18
+ import { setTransformStyle } from '../../lib/styles';
19
+ import { transitionEvent } from '../../lib/supportEvents';
20
+ import { rubber } from '../../lib/touch';
26
21
  import { warnOnce } from '../../lib/warnOnce';
22
+ import { ConfigProviderContext, WebviewType } from '../ConfigProvider/ConfigProviderContext';
27
23
  import { FocusTrap } from '../FocusTrap/FocusTrap';
24
+ import { Touch } from '../Touch/Touch';
25
+ import TouchRootContext from '../Touch/TouchContext';
26
+ import { ModalRootContext } from './ModalRootContext';
27
+ import { MODAL_PAGE_DEFAULT_PERCENT_HEIGHT } from './constants';
28
+ import { ModalType } from './types';
28
29
  import { withModalManager } from './useModalManager';
29
- import { clamp } from '../../helpers/math';
30
30
  var warn = warnOnce('ModalRoot');
31
31
  function numberInRange(number, range) {
32
32
  if (!range) {
@@ -1 +1 @@
1
- {"version":3,"file":"ModalRoot.js","names":["React","Touch","TouchRootContext","classNames","setTransformStyle","rubber","Platform","transitionEvent","withPlatform","withContext","ModalRootContext","ConfigProviderContext","WebviewType","ModalType","MODAL_PAGE_DEFAULT_PERCENT_HEIGHT","withDOM","getNavId","warnOnce","FocusTrap","withModalManager","clamp","warn","numberInRange","number","range","rangeTranslate","ModalRootTouchComponent","props","createRef","undefined","event","originalEvent","preventDefault","modalState","getModalState","activeModal","animateTranslate","translateY","type","PAGE","dynamicContentHeight","enteringModal","waitTransitionFinish","requestAnimationFrame","checkPageContentHeight","e","exitingModal","onPageTouchMove","CARD","onCardTouchMove","onPageTouchEnd","onCardTouchEnd","target","contentElement","contains","contentScrolled","contentScrollStopTimeout","clearTimeout","setTimeout","state","touchDown","dragging","maskElementRef","modalRootContext","updateModalHeight","registerModal","id","data","Object","assign","onClose","onExit","isInsideModal","frameIds","platform","IOS","document","window","Children","toArray","children","addEventListener","updateModalTranslate","toggleDocumentScrolling","removeEventListener","prevProps","closeModal","enteringState","onEnter","innerElement","style","transitionDelay","onEntered","delayEnter","timeout","restoreFocusTo","activeElement","focus","enabled","documentScrolling","preventTouch","passive","modalElement","prevModalState","initPageModal","currentModalState","needAnimate","expandable","translateYFrom","setState","nextModalState","nextIsPage","prevIsPage","onExited","exitTranslate","isBack","setMaskOpacity","shiftY","isY","viewportRef","current","stopPropagation","collapsed","expanded","touchStartContentScrollTop","scrollTop","touchMovePositive","headerElement","shiftYPercent","innerHeight","shiftYCurrent","touchShiftYPercent","translateYCurrent","offsetHeight","Math","max","startY","setStateCallback","shiftYEndPercent","expectTranslateY","duration","settlingHeight","expandedRange","collapsedRange","hiddenRange","hidden","eventHandler","supported","onceHandler","name","percent","frameId","cancelAnimationFrame","forceOpacity","history","maskAnimationFrame","opacity","toString","configProvider","webviewType","VKAPPS","onTouchMove","onTouchEnd","onScroll","getModals","map","Modal","modalId","_modalState","isPage","key","Component","ModalRootTouch","initModal","initCardModal","process","env","NODE_ENV","contentHeight","firstElementChild","prevTranslateY","clientHeight","shiftHalf","visiblePart","headerHeight","height","parentElement"],"sources":["../../../src/components/ModalRoot/ModalRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { classNames } from '@vkontakte/vkjs';\nimport { setTransformStyle } from '../../lib/styles';\nimport { rubber } from '../../lib/touch';\nimport { Platform } from '../../lib/platform';\nimport { transitionEvent } from '../../lib/supportEvents';\nimport { HasPlatform } from '../../types';\nimport { withPlatform } from '../../hoc/withPlatform';\nimport { withContext } from '../../hoc/withContext';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n WebviewType,\n} from '../ConfigProvider/ConfigProviderContext';\nimport { ModalsStateEntry, ModalType, TranslateRange } from './types';\nimport { MODAL_PAGE_DEFAULT_PERCENT_HEIGHT } from './constants';\nimport { DOMProps, withDOM } from '../../lib/dom';\nimport { getNavId } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { ModalTransitionProps, withModalManager } from './useModalManager';\nimport { clamp } from '../../helpers/math';\nimport styles from './ModalRoot.module.css';\n\nconst warn = warnOnce('ModalRoot');\n\nfunction numberInRange(number: number, range: TranslateRange | undefined) {\n if (!range) {\n return false;\n }\n return number >= range[0] && number <= range[1];\n}\n\nfunction rangeTranslate(number: number) {\n return clamp(number, 0, 98);\n}\n\nexport interface ModalRootProps extends HasPlatform {\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 /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n children?: React.ReactNode;\n}\n\ninterface ModalRootState {\n touchDown?: boolean;\n dragging?: boolean;\n}\n\nclass ModalRootTouchComponent extends React.Component<\n ModalRootProps & DOMProps & ModalTransitionProps,\n ModalRootState\n> {\n constructor(props: ModalRootProps & ModalTransitionProps) {\n super(props);\n this.state = {\n touchDown: false,\n dragging: false,\n };\n\n this.maskElementRef = React.createRef();\n\n this.modalRootContext = {\n updateModalHeight: this.updateModalHeight,\n registerModal: ({ id, ...data }) => Object.assign(this.getModalState(id) ?? {}, data),\n onClose: () => this.props.onExit(),\n isInsideModal: true,\n };\n\n this.frameIds = {};\n }\n\n private documentScrolling = false;\n private readonly maskElementRef: React.RefObject<HTMLDivElement>;\n private readonly viewportRef = React.createRef<HTMLDivElement>();\n private maskAnimationFrame: number | undefined = undefined;\n private readonly modalRootContext: ModalRootContextInterface;\n private readonly frameIds: {\n [index: string]: number;\n };\n private restoreFocusTo: HTMLElement | undefined | null = undefined;\n\n get timeout(): number {\n return this.props.platform === Platform.IOS ? 400 : 320;\n }\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n getModalState(id: string | undefined | null) {\n if (!id) {\n return undefined;\n }\n return this.props.getModalState(id);\n }\n\n getModals() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n componentDidMount() {\n // Отслеживаем изменение размеров viewport (Необходимо для iOS)\n if (this.props.platform === Platform.IOS) {\n this.window?.addEventListener('resize', this.updateModalTranslate, false);\n }\n }\n\n componentWillUnmount() {\n this.toggleDocumentScrolling(true);\n this.window!.removeEventListener('resize', this.updateModalTranslate, false);\n }\n\n componentDidUpdate(prevProps: ModalRootProps & ModalTransitionProps) {\n // transition phase 2: animate exiting modal\n if (this.props.exitingModal && this.props.exitingModal !== prevProps.exitingModal) {\n this.closeModal(this.props.exitingModal);\n }\n\n // transition phase 3: animate entering modal\n if (this.props.enteringModal && this.props.enteringModal !== prevProps.enteringModal) {\n const { enteringModal } = this.props;\n const enteringState = this.getModalState(enteringModal);\n this.props.onEnter();\n this.waitTransitionFinish(enteringState, () => {\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transitionDelay = '';\n }\n this.props.onEntered(enteringModal);\n });\n\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transitionDelay = this.props.delayEnter\n ? `${this.timeout}ms`\n : '';\n this.animateTranslate(enteringState, enteringState.translateY);\n }\n }\n\n // focus restoration\n if (this.props.activeModal && !prevProps.activeModal) {\n this.restoreFocusTo = this.document!.activeElement as HTMLElement;\n }\n if (!this.props.activeModal && !this.props.exitingModal && this.restoreFocusTo) {\n this.restoreFocusTo.focus();\n this.restoreFocusTo = null;\n }\n\n this.toggleDocumentScrolling(!this.props.activeModal && !this.props.exitingModal);\n }\n\n /* Отключает скролл документа */\n toggleDocumentScrolling(enabled: boolean) {\n if (this.documentScrolling === enabled) {\n return;\n }\n this.documentScrolling = enabled;\n\n if (enabled) {\n // Здесь нужен последний аргумент с такими же параметрами, потому что\n // некоторые браузеры на странных вендорах типа Meizu не удаляют обработчик.\n // https://github.com/VKCOM/VKUI/issues/444\n this.window!.removeEventListener('touchmove', this.preventTouch, {\n // @ts-expect-error: TS2769 В интерфейсе EventListenerOptions нет поля passive\n passive: false,\n });\n } else {\n this.window!.addEventListener('touchmove', this.preventTouch, {\n passive: false,\n });\n }\n }\n\n preventTouch = (event: any) => {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault) {\n event.preventDefault();\n }\n return false;\n };\n\n updateModalTranslate = () => {\n const modalState = this.getModalState(this.props.activeModal);\n modalState && this.animateTranslate(modalState, modalState.translateY);\n };\n\n checkPageContentHeight() {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState?.type === ModalType.PAGE && modalState?.modalElement) {\n const prevModalState = { ...modalState };\n initPageModal(modalState);\n const currentModalState = { ...modalState };\n\n let needAnimate = false;\n\n if (prevModalState.expandable === currentModalState.expandable) {\n if (prevModalState.translateYFrom !== currentModalState.translateYFrom) {\n needAnimate = true;\n }\n } else {\n needAnimate = true;\n }\n\n if (needAnimate) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n }\n }\n\n updateModalHeight = () => {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState && modalState.type === ModalType.PAGE && modalState.dynamicContentHeight) {\n if (this.props.enteringModal) {\n this.waitTransitionFinish(modalState, () => {\n requestAnimationFrame(() => this.checkPageContentHeight());\n });\n } else {\n requestAnimationFrame(() => this.checkPageContentHeight());\n }\n }\n };\n\n closeModal(id: string) {\n // Сбрасываем состояния, которые могут помешать закрытию модального окна\n this.setState({ touchDown: false });\n\n const prevModalState = this.getModalState(id);\n\n if (!prevModalState) {\n id && warn(`closeActiveModal: модальное окно (страница) ${id} не существует`, 'error');\n return;\n }\n\n const nextModalState = this.getModalState(this.props.activeModal);\n const nextIsPage = !!nextModalState && nextModalState.type === ModalType.PAGE;\n\n const prevIsPage = !!prevModalState && prevModalState.type === ModalType.PAGE;\n this.waitTransitionFinish(prevModalState, () => this.props.onExited(id));\n const exitTranslate =\n prevIsPage &&\n nextIsPage &&\n (prevModalState.translateY ?? 0) <= (nextModalState?.translateYFrom ?? 0) &&\n !this.props.isBack\n ? (nextModalState?.translateYFrom ?? 0) + 10\n : 100;\n this.animateTranslate(prevModalState, exitTranslate);\n\n if (!nextModalState) {\n // NOTE: was only for clean exit\n this.setMaskOpacity(prevModalState, 0);\n }\n }\n\n onTouchMove = (e: TouchEvent) => {\n if (this.props.exitingModal) {\n return;\n }\n const modalState = this.getModalState(this.props.activeModal);\n if (!modalState) {\n return;\n }\n\n if (modalState.type === ModalType.PAGE) {\n return this.onPageTouchMove(e, modalState);\n }\n\n if (modalState.type === ModalType.CARD) {\n return this.onCardTouchMove(e, modalState);\n }\n };\n\n onPageTouchMove(event: TouchEvent, modalState: ModalsStateEntry) {\n const { shiftY, originalEvent } = event;\n const target = originalEvent.target as HTMLElement;\n\n if (!event.isY) {\n if (this.viewportRef.current?.contains(target)) {\n originalEvent.preventDefault();\n }\n return;\n }\n\n if (!modalState.innerElement?.contains(target)) {\n return originalEvent.preventDefault();\n }\n\n originalEvent.stopPropagation();\n\n const { expandable, contentScrolled, collapsed, expanded } = modalState;\n\n if (!this.state.touchDown) {\n modalState.touchStartContentScrollTop = modalState.contentElement?.scrollTop ?? 0;\n this.setState({ touchDown: true });\n }\n\n if (contentScrolled) {\n return;\n }\n\n if (modalState.touchMovePositive === null) {\n modalState.touchMovePositive = shiftY > 0;\n }\n\n if (\n !modalState.expandable ||\n collapsed ||\n (expanded && modalState.touchMovePositive && modalState.touchStartContentScrollTop === 0) ||\n modalState.headerElement?.contains(target)\n ) {\n originalEvent.preventDefault();\n\n if ((!expandable && shiftY < 0) || !this.window) {\n return;\n }\n\n !this.state.dragging && this.setState({ dragging: true });\n\n const shiftYPercent = (shiftY / this.window.innerHeight) * 100;\n const shiftYCurrent = rubber(shiftYPercent, 72, 0.8, this.props.platform !== Platform.IOS);\n\n modalState.touchShiftYPercent = shiftYPercent;\n modalState.translateYCurrent = rangeTranslate((modalState.translateY ?? 0) + shiftYCurrent);\n\n this.animateTranslate(modalState, modalState.translateYCurrent);\n this.setMaskOpacity(modalState);\n }\n }\n\n onCardTouchMove(event: TouchEvent, modalState: ModalsStateEntry) {\n const { originalEvent, shiftY } = event;\n const target = originalEvent.target as HTMLElement;\n if (modalState.innerElement?.contains(target)) {\n if (!this.state.touchDown) {\n this.setState({ touchDown: true, dragging: true });\n }\n\n const shiftYPercent = (shiftY / modalState.innerElement.offsetHeight) * 100;\n const shiftYCurrent = rubber(shiftYPercent, 72, 1.2, this.props.platform !== Platform.IOS);\n\n modalState.touchShiftYPercent = shiftYPercent;\n modalState.translateYCurrent = Math.max(0, (modalState.translateY ?? 0) + shiftYCurrent);\n\n this.animateTranslate(modalState, modalState.translateYCurrent);\n this.setMaskOpacity(modalState);\n }\n }\n\n onTouchEnd = (e: TouchEvent) => {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState?.type === ModalType.PAGE) {\n return this.onPageTouchEnd(e, modalState);\n }\n\n if (modalState?.type === ModalType.CARD) {\n return this.onCardTouchEnd(e, modalState);\n }\n };\n\n onPageTouchEnd(event: TouchEvent, modalState: ModalsStateEntry) {\n const { startY, shiftY } = event;\n\n modalState.contentScrolled = false;\n modalState.touchMovePositive = null;\n\n let setStateCallback;\n\n if (this.state.dragging && this.window) {\n const shiftYEndPercent = ((startY + shiftY) / this.window.innerHeight) * 100;\n\n let translateY = modalState.translateYCurrent ?? 0;\n const expectTranslateY =\n (translateY / event.duration) *\n 240 *\n 0.6 *\n ((modalState.touchShiftYPercent ?? 0) < 0 ? -1 : 1);\n translateY = rangeTranslate(translateY + expectTranslateY);\n\n if (modalState.settlingHeight !== 100) {\n if (numberInRange(translateY, modalState.expandedRange)) {\n translateY = modalState.expandedRange?.[0] ?? 0;\n } else if (numberInRange(translateY, modalState.collapsedRange)) {\n translateY = modalState.translateYFrom ?? 0;\n } else if (numberInRange(translateY, modalState.hiddenRange)) {\n translateY = 100;\n } else {\n translateY = modalState.translateYFrom ?? 0;\n }\n } else {\n if (numberInRange(translateY, [0, 25])) {\n translateY = 0;\n } else {\n translateY = 100;\n }\n }\n\n if (translateY !== 100 && shiftYEndPercent >= 75) {\n translateY = 100;\n }\n\n modalState.translateY = translateY;\n modalState.translateYCurrent = translateY;\n modalState.collapsed = translateY > 0 && translateY < shiftYEndPercent;\n modalState.expanded = translateY === 0;\n modalState.hidden = translateY === 100;\n\n if (modalState.hidden) {\n this.props.onExit();\n }\n\n setStateCallback = () => {\n if (!modalState.hidden) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n\n this.setMaskOpacity(modalState);\n };\n }\n\n this.setState(\n {\n touchDown: false,\n dragging: false,\n },\n setStateCallback,\n );\n }\n\n onCardTouchEnd({ duration }: TouchEvent, modalState: ModalsStateEntry) {\n let setStateCallback;\n\n if (this.state.dragging) {\n let translateY = modalState.translateYCurrent ?? 0;\n\n const expectTranslateY =\n (translateY / duration) * 240 * 0.6 * ((modalState.touchShiftYPercent ?? 0) < 0 ? -1 : 1);\n translateY = Math.max(0, translateY + expectTranslateY);\n\n if (translateY >= 30) {\n translateY = 100;\n } else {\n translateY = 0;\n }\n\n modalState.translateY = translateY;\n modalState.hidden = translateY === 100;\n\n if (modalState.hidden) {\n this.props.onExit();\n }\n\n setStateCallback = () => {\n if (!modalState.hidden) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n\n this.setMaskOpacity(modalState);\n };\n }\n\n this.setState(\n {\n touchDown: false,\n dragging: false,\n },\n setStateCallback,\n );\n }\n\n onScroll = (e: React.SyntheticEvent) => {\n const activeModal = this.props.activeModal;\n\n const target = e.target as HTMLElement;\n\n if (!activeModal) {\n return;\n }\n const modalState = this.getModalState(activeModal);\n if (modalState?.type === ModalType.PAGE && modalState?.contentElement?.contains(target)) {\n modalState.contentScrolled = true;\n\n if (modalState.contentScrollStopTimeout) {\n clearTimeout(modalState.contentScrollStopTimeout);\n }\n\n modalState.contentScrollStopTimeout = setTimeout(() => {\n if (modalState.contentScrolled) {\n modalState.contentScrolled = false;\n }\n }, 250);\n }\n };\n\n waitTransitionFinish(modalState: ModalsStateEntry | undefined, eventHandler: () => void) {\n if (transitionEvent.supported) {\n const onceHandler = () => {\n modalState?.innerElement?.removeEventListener(transitionEvent.name as string, onceHandler);\n eventHandler();\n };\n\n modalState?.innerElement?.addEventListener(transitionEvent.name as string, onceHandler);\n } else {\n setTimeout(eventHandler, this.timeout);\n }\n }\n\n /**\n * Анимирует сдвиг модалки\n *\n * @param {ModalsStateEntry} modalState\n * @param {number} percent Процент сдвига: 0 – полностью открыта, 100 – полностью закрыта\n */\n animateTranslate(modalState: ModalsStateEntry, percent: number | undefined) {\n const frameId = `animateTranslateFrame${modalState.id}`;\n\n cancelAnimationFrame(this.frameIds[frameId]);\n\n this.frameIds[frameId] = requestAnimationFrame(() => {\n setTransformStyle(modalState.innerElement, `translate3d(0, ${percent}%, 0)`);\n });\n }\n\n /* Устанавливает прозрачность для полупрозрачной подложки */\n setMaskOpacity(modalState: ModalsStateEntry, forceOpacity: number | null = null) {\n if (forceOpacity === null && this.props.history?.[0] !== modalState.id) {\n return;\n }\n if (this.maskAnimationFrame) {\n cancelAnimationFrame(this.maskAnimationFrame);\n }\n this.maskAnimationFrame = requestAnimationFrame(() => {\n if (this.maskElementRef.current) {\n const { translateY = 0, translateYCurrent = 0 } = modalState;\n\n const opacity =\n forceOpacity === null\n ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0\n : forceOpacity;\n this.maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();\n }\n });\n }\n\n render() {\n const { activeModal, exitingModal, enteringModal } = this.props;\n const { touchDown, dragging } = this.state;\n\n if (!activeModal && !exitingModal) {\n return null;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <ModalRootContext.Provider value={this.modalRootContext}>\n <Touch\n className={classNames(\n styles['ModalRoot'],\n this.props.configProvider?.webviewType === WebviewType.VKAPPS &&\n styles['ModalRoot--vkapps'],\n touchDown && styles['ModalRoot--touched'],\n !!(enteringModal || exitingModal) && styles['ModalRoot--switching'],\n )}\n onMove={this.onTouchMove}\n onEnd={this.onTouchEnd}\n onScroll={this.onScroll}\n >\n <div\n className={styles['ModalRoot__mask']}\n onClick={this.props.onExit}\n ref={this.maskElementRef}\n />\n <div className={styles['ModalRoot__viewport']} ref={this.viewportRef}>\n {this.getModals().map((Modal) => {\n const modalId = getNavId(Modal.props, warn);\n const _modalState = this.getModalState(modalId);\n if ((modalId !== activeModal && modalId !== exitingModal) || !_modalState) {\n return null;\n }\n const modalState = { ..._modalState };\n\n const isPage = modalState.type === ModalType.PAGE;\n const key = `modal-${modalId}`;\n\n return (\n <FocusTrap\n key={key}\n getRootRef={(e) => {\n const modalState = this.getModalState(modalId);\n if (modalState) {\n modalState.modalElement = e;\n }\n }}\n onClose={this.props.onExit}\n timeout={this.timeout}\n className={classNames(\n styles['ModalRoot__modal'],\n\n dragging && styles['ModalRoot__modal--dragging'],\n\n isPage && modalState.expandable && styles['ModalRoot__modal--expandable'],\n isPage && modalState.collapsed && styles['ModalRoot__modal--collapsed'],\n )}\n restoreFocus={false}\n >\n {Modal}\n </FocusTrap>\n );\n })}\n </div>\n </Touch>\n </ModalRootContext.Provider>\n </TouchRootContext.Provider>\n );\n }\n}\n\nexport const ModalRootTouch = withContext(\n withPlatform(withDOM<ModalRootProps>(withModalManager(initModal)(ModalRootTouchComponent))),\n ConfigProviderContext,\n 'configProvider',\n);\n\n/**\n * Инициализирует модалку перед анимацией открытия\n */\nfunction initModal(modalState: ModalsStateEntry) {\n switch (modalState.type) {\n case ModalType.PAGE:\n modalState.settlingHeight = modalState.settlingHeight || MODAL_PAGE_DEFAULT_PERCENT_HEIGHT;\n return initPageModal(modalState);\n case ModalType.CARD:\n return initCardModal(modalState);\n default:\n process.env.NODE_ENV === 'development' &&\n warn(`initActiveModal: modalState.type=\"${modalState.type}\" не поддерживается`, 'error');\n }\n}\n\nfunction initPageModal(modalState: ModalsStateEntry) {\n const { contentElement } = modalState;\n const contentHeight = (contentElement?.firstElementChild as HTMLElement).offsetHeight;\n\n let prevTranslateY = modalState.translateY;\n\n modalState.expandable =\n contentHeight > (contentElement?.clientHeight ?? 0) || modalState.settlingHeight === 100;\n\n let collapsed = false;\n let expanded = false;\n let translateYFrom;\n let translateY;\n let expandedRange: TranslateRange;\n let collapsedRange: TranslateRange;\n let hiddenRange: TranslateRange;\n\n if (modalState.expandable) {\n translateYFrom = 100 - (modalState.settlingHeight ?? 0);\n\n const shiftHalf = translateYFrom / 2;\n const visiblePart = 100 - translateYFrom;\n\n expandedRange = [0, shiftHalf];\n collapsedRange = [shiftHalf, translateYFrom + visiblePart / 4];\n hiddenRange = [translateYFrom + visiblePart / 4, 100];\n\n collapsed = translateYFrom > 0;\n expanded = translateYFrom <= 0;\n translateY = translateYFrom;\n } else {\n const headerHeight = modalState.headerElement?.offsetHeight ?? 0;\n const height = contentHeight + headerHeight;\n\n translateYFrom =\n 100 - (height / (modalState.innerElement?.parentElement?.offsetHeight ?? 0)) * 100;\n translateY = translateYFrom;\n\n expandedRange = [translateY, translateY + 25];\n collapsedRange = [translateY + 25, translateY + 25];\n hiddenRange = [translateY + 25, translateY + 100];\n }\n\n // Если модалка может открываться на весь экран, и новый сдвиг больше предыдущего, то откроем её на весь экран\n if (\n (modalState.expandable && translateY > (prevTranslateY ?? 100)) ||\n modalState.settlingHeight === 100\n ) {\n translateY = 0;\n }\n\n // Если модалка уже раскрыта обновляем состояния\n if (translateY === 0) {\n expanded = true;\n collapsed = false;\n }\n\n modalState.expandedRange = expandedRange;\n modalState.collapsedRange = collapsedRange;\n modalState.hiddenRange = hiddenRange;\n modalState.translateY = translateY;\n modalState.translateYFrom = translateYFrom;\n modalState.collapsed = collapsed;\n modalState.expanded = expanded;\n}\n\nfunction initCardModal(modalState: ModalsStateEntry) {\n modalState.translateY = 0;\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"ModalRoot.js","names":["React","classNames","clamp","withContext","withPlatform","withDOM","getNavId","Platform","setTransformStyle","transitionEvent","rubber","warnOnce","ConfigProviderContext","WebviewType","FocusTrap","Touch","TouchRootContext","ModalRootContext","MODAL_PAGE_DEFAULT_PERCENT_HEIGHT","ModalType","withModalManager","warn","numberInRange","number","range","rangeTranslate","ModalRootTouchComponent","props","createRef","undefined","event","originalEvent","preventDefault","modalState","getModalState","activeModal","animateTranslate","translateY","type","PAGE","dynamicContentHeight","enteringModal","waitTransitionFinish","requestAnimationFrame","checkPageContentHeight","e","exitingModal","onPageTouchMove","CARD","onCardTouchMove","onPageTouchEnd","onCardTouchEnd","target","contentElement","contains","contentScrolled","contentScrollStopTimeout","clearTimeout","setTimeout","state","touchDown","dragging","maskElementRef","modalRootContext","updateModalHeight","registerModal","id","data","Object","assign","onClose","onExit","isInsideModal","frameIds","platform","IOS","document","window","Children","toArray","children","addEventListener","updateModalTranslate","toggleDocumentScrolling","removeEventListener","prevProps","closeModal","enteringState","onEnter","innerElement","style","transitionDelay","onEntered","delayEnter","timeout","restoreFocusTo","activeElement","focus","enabled","documentScrolling","preventTouch","passive","modalElement","prevModalState","initPageModal","currentModalState","needAnimate","expandable","translateYFrom","setState","nextModalState","nextIsPage","prevIsPage","onExited","exitTranslate","isBack","setMaskOpacity","shiftY","isY","viewportRef","current","stopPropagation","collapsed","expanded","touchStartContentScrollTop","scrollTop","touchMovePositive","headerElement","shiftYPercent","innerHeight","shiftYCurrent","touchShiftYPercent","translateYCurrent","offsetHeight","Math","max","startY","setStateCallback","shiftYEndPercent","expectTranslateY","duration","settlingHeight","expandedRange","collapsedRange","hiddenRange","hidden","eventHandler","supported","onceHandler","name","percent","frameId","cancelAnimationFrame","forceOpacity","history","maskAnimationFrame","opacity","toString","configProvider","webviewType","VKAPPS","onTouchMove","onTouchEnd","onScroll","getModals","map","Modal","modalId","_modalState","isPage","key","Component","ModalRootTouch","initModal","initCardModal","process","env","NODE_ENV","contentHeight","firstElementChild","prevTranslateY","clientHeight","shiftHalf","visiblePart","headerHeight","height","parentElement"],"sources":["../../../src/components/ModalRoot/ModalRoot.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { withContext } from '../../hoc/withContext';\nimport { withPlatform } from '../../hoc/withPlatform';\nimport { DOMProps, withDOM } from '../../lib/dom';\nimport { getNavId } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { setTransformStyle } from '../../lib/styles';\nimport { transitionEvent } from '../../lib/supportEvents';\nimport { rubber } from '../../lib/touch';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasPlatform } from '../../types';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n WebviewType,\n} from '../ConfigProvider/ConfigProviderContext';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport TouchRootContext from '../Touch/TouchContext';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\nimport { MODAL_PAGE_DEFAULT_PERCENT_HEIGHT } from './constants';\nimport { ModalsStateEntry, ModalType, TranslateRange } from './types';\nimport { ModalTransitionProps, withModalManager } from './useModalManager';\nimport styles from './ModalRoot.module.css';\n\nconst warn = warnOnce('ModalRoot');\n\nfunction numberInRange(number: number, range: TranslateRange | undefined) {\n if (!range) {\n return false;\n }\n return number >= range[0] && number <= range[1];\n}\n\nfunction rangeTranslate(number: number) {\n return clamp(number, 0, 98);\n}\n\nexport interface ModalRootProps extends HasPlatform {\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 /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n children?: React.ReactNode;\n}\n\ninterface ModalRootState {\n touchDown?: boolean;\n dragging?: boolean;\n}\n\nclass ModalRootTouchComponent extends React.Component<\n ModalRootProps & DOMProps & ModalTransitionProps,\n ModalRootState\n> {\n constructor(props: ModalRootProps & ModalTransitionProps) {\n super(props);\n this.state = {\n touchDown: false,\n dragging: false,\n };\n\n this.maskElementRef = React.createRef();\n\n this.modalRootContext = {\n updateModalHeight: this.updateModalHeight,\n registerModal: ({ id, ...data }) => Object.assign(this.getModalState(id) ?? {}, data),\n onClose: () => this.props.onExit(),\n isInsideModal: true,\n };\n\n this.frameIds = {};\n }\n\n private documentScrolling = false;\n private readonly maskElementRef: React.RefObject<HTMLDivElement>;\n private readonly viewportRef = React.createRef<HTMLDivElement>();\n private maskAnimationFrame: number | undefined = undefined;\n private readonly modalRootContext: ModalRootContextInterface;\n private readonly frameIds: {\n [index: string]: number;\n };\n private restoreFocusTo: HTMLElement | undefined | null = undefined;\n\n get timeout(): number {\n return this.props.platform === Platform.IOS ? 400 : 320;\n }\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n getModalState(id: string | undefined | null) {\n if (!id) {\n return undefined;\n }\n return this.props.getModalState(id);\n }\n\n getModals() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n componentDidMount() {\n // Отслеживаем изменение размеров viewport (Необходимо для iOS)\n if (this.props.platform === Platform.IOS) {\n this.window?.addEventListener('resize', this.updateModalTranslate, false);\n }\n }\n\n componentWillUnmount() {\n this.toggleDocumentScrolling(true);\n this.window!.removeEventListener('resize', this.updateModalTranslate, false);\n }\n\n componentDidUpdate(prevProps: ModalRootProps & ModalTransitionProps) {\n // transition phase 2: animate exiting modal\n if (this.props.exitingModal && this.props.exitingModal !== prevProps.exitingModal) {\n this.closeModal(this.props.exitingModal);\n }\n\n // transition phase 3: animate entering modal\n if (this.props.enteringModal && this.props.enteringModal !== prevProps.enteringModal) {\n const { enteringModal } = this.props;\n const enteringState = this.getModalState(enteringModal);\n this.props.onEnter();\n this.waitTransitionFinish(enteringState, () => {\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transitionDelay = '';\n }\n this.props.onEntered(enteringModal);\n });\n\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transitionDelay = this.props.delayEnter\n ? `${this.timeout}ms`\n : '';\n this.animateTranslate(enteringState, enteringState.translateY);\n }\n }\n\n // focus restoration\n if (this.props.activeModal && !prevProps.activeModal) {\n this.restoreFocusTo = this.document!.activeElement as HTMLElement;\n }\n if (!this.props.activeModal && !this.props.exitingModal && this.restoreFocusTo) {\n this.restoreFocusTo.focus();\n this.restoreFocusTo = null;\n }\n\n this.toggleDocumentScrolling(!this.props.activeModal && !this.props.exitingModal);\n }\n\n /* Отключает скролл документа */\n toggleDocumentScrolling(enabled: boolean) {\n if (this.documentScrolling === enabled) {\n return;\n }\n this.documentScrolling = enabled;\n\n if (enabled) {\n // Здесь нужен последний аргумент с такими же параметрами, потому что\n // некоторые браузеры на странных вендорах типа Meizu не удаляют обработчик.\n // https://github.com/VKCOM/VKUI/issues/444\n this.window!.removeEventListener('touchmove', this.preventTouch, {\n // @ts-expect-error: TS2769 В интерфейсе EventListenerOptions нет поля passive\n passive: false,\n });\n } else {\n this.window!.addEventListener('touchmove', this.preventTouch, {\n passive: false,\n });\n }\n }\n\n preventTouch = (event: any) => {\n if (!event) {\n return false;\n }\n while (event.originalEvent) {\n event = event.originalEvent;\n }\n if (event.preventDefault) {\n event.preventDefault();\n }\n return false;\n };\n\n updateModalTranslate = () => {\n const modalState = this.getModalState(this.props.activeModal);\n modalState && this.animateTranslate(modalState, modalState.translateY);\n };\n\n checkPageContentHeight() {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState?.type === ModalType.PAGE && modalState?.modalElement) {\n const prevModalState = { ...modalState };\n initPageModal(modalState);\n const currentModalState = { ...modalState };\n\n let needAnimate = false;\n\n if (prevModalState.expandable === currentModalState.expandable) {\n if (prevModalState.translateYFrom !== currentModalState.translateYFrom) {\n needAnimate = true;\n }\n } else {\n needAnimate = true;\n }\n\n if (needAnimate) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n }\n }\n\n updateModalHeight = () => {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState && modalState.type === ModalType.PAGE && modalState.dynamicContentHeight) {\n if (this.props.enteringModal) {\n this.waitTransitionFinish(modalState, () => {\n requestAnimationFrame(() => this.checkPageContentHeight());\n });\n } else {\n requestAnimationFrame(() => this.checkPageContentHeight());\n }\n }\n };\n\n closeModal(id: string) {\n // Сбрасываем состояния, которые могут помешать закрытию модального окна\n this.setState({ touchDown: false });\n\n const prevModalState = this.getModalState(id);\n\n if (!prevModalState) {\n id && warn(`closeActiveModal: модальное окно (страница) ${id} не существует`, 'error');\n return;\n }\n\n const nextModalState = this.getModalState(this.props.activeModal);\n const nextIsPage = !!nextModalState && nextModalState.type === ModalType.PAGE;\n\n const prevIsPage = !!prevModalState && prevModalState.type === ModalType.PAGE;\n this.waitTransitionFinish(prevModalState, () => this.props.onExited(id));\n const exitTranslate =\n prevIsPage &&\n nextIsPage &&\n (prevModalState.translateY ?? 0) <= (nextModalState?.translateYFrom ?? 0) &&\n !this.props.isBack\n ? (nextModalState?.translateYFrom ?? 0) + 10\n : 100;\n this.animateTranslate(prevModalState, exitTranslate);\n\n if (!nextModalState) {\n // NOTE: was only for clean exit\n this.setMaskOpacity(prevModalState, 0);\n }\n }\n\n onTouchMove = (e: TouchEvent) => {\n if (this.props.exitingModal) {\n return;\n }\n const modalState = this.getModalState(this.props.activeModal);\n if (!modalState) {\n return;\n }\n\n if (modalState.type === ModalType.PAGE) {\n return this.onPageTouchMove(e, modalState);\n }\n\n if (modalState.type === ModalType.CARD) {\n return this.onCardTouchMove(e, modalState);\n }\n };\n\n onPageTouchMove(event: TouchEvent, modalState: ModalsStateEntry) {\n const { shiftY, originalEvent } = event;\n const target = originalEvent.target as HTMLElement;\n\n if (!event.isY) {\n if (this.viewportRef.current?.contains(target)) {\n originalEvent.preventDefault();\n }\n return;\n }\n\n if (!modalState.innerElement?.contains(target)) {\n return originalEvent.preventDefault();\n }\n\n originalEvent.stopPropagation();\n\n const { expandable, contentScrolled, collapsed, expanded } = modalState;\n\n if (!this.state.touchDown) {\n modalState.touchStartContentScrollTop = modalState.contentElement?.scrollTop ?? 0;\n this.setState({ touchDown: true });\n }\n\n if (contentScrolled) {\n return;\n }\n\n if (modalState.touchMovePositive === null) {\n modalState.touchMovePositive = shiftY > 0;\n }\n\n if (\n !modalState.expandable ||\n collapsed ||\n (expanded && modalState.touchMovePositive && modalState.touchStartContentScrollTop === 0) ||\n modalState.headerElement?.contains(target)\n ) {\n originalEvent.preventDefault();\n\n if ((!expandable && shiftY < 0) || !this.window) {\n return;\n }\n\n !this.state.dragging && this.setState({ dragging: true });\n\n const shiftYPercent = (shiftY / this.window.innerHeight) * 100;\n const shiftYCurrent = rubber(shiftYPercent, 72, 0.8, this.props.platform !== Platform.IOS);\n\n modalState.touchShiftYPercent = shiftYPercent;\n modalState.translateYCurrent = rangeTranslate((modalState.translateY ?? 0) + shiftYCurrent);\n\n this.animateTranslate(modalState, modalState.translateYCurrent);\n this.setMaskOpacity(modalState);\n }\n }\n\n onCardTouchMove(event: TouchEvent, modalState: ModalsStateEntry) {\n const { originalEvent, shiftY } = event;\n const target = originalEvent.target as HTMLElement;\n if (modalState.innerElement?.contains(target)) {\n if (!this.state.touchDown) {\n this.setState({ touchDown: true, dragging: true });\n }\n\n const shiftYPercent = (shiftY / modalState.innerElement.offsetHeight) * 100;\n const shiftYCurrent = rubber(shiftYPercent, 72, 1.2, this.props.platform !== Platform.IOS);\n\n modalState.touchShiftYPercent = shiftYPercent;\n modalState.translateYCurrent = Math.max(0, (modalState.translateY ?? 0) + shiftYCurrent);\n\n this.animateTranslate(modalState, modalState.translateYCurrent);\n this.setMaskOpacity(modalState);\n }\n }\n\n onTouchEnd = (e: TouchEvent) => {\n const modalState = this.getModalState(this.props.activeModal);\n\n if (modalState?.type === ModalType.PAGE) {\n return this.onPageTouchEnd(e, modalState);\n }\n\n if (modalState?.type === ModalType.CARD) {\n return this.onCardTouchEnd(e, modalState);\n }\n };\n\n onPageTouchEnd(event: TouchEvent, modalState: ModalsStateEntry) {\n const { startY, shiftY } = event;\n\n modalState.contentScrolled = false;\n modalState.touchMovePositive = null;\n\n let setStateCallback;\n\n if (this.state.dragging && this.window) {\n const shiftYEndPercent = ((startY + shiftY) / this.window.innerHeight) * 100;\n\n let translateY = modalState.translateYCurrent ?? 0;\n const expectTranslateY =\n (translateY / event.duration) *\n 240 *\n 0.6 *\n ((modalState.touchShiftYPercent ?? 0) < 0 ? -1 : 1);\n translateY = rangeTranslate(translateY + expectTranslateY);\n\n if (modalState.settlingHeight !== 100) {\n if (numberInRange(translateY, modalState.expandedRange)) {\n translateY = modalState.expandedRange?.[0] ?? 0;\n } else if (numberInRange(translateY, modalState.collapsedRange)) {\n translateY = modalState.translateYFrom ?? 0;\n } else if (numberInRange(translateY, modalState.hiddenRange)) {\n translateY = 100;\n } else {\n translateY = modalState.translateYFrom ?? 0;\n }\n } else {\n if (numberInRange(translateY, [0, 25])) {\n translateY = 0;\n } else {\n translateY = 100;\n }\n }\n\n if (translateY !== 100 && shiftYEndPercent >= 75) {\n translateY = 100;\n }\n\n modalState.translateY = translateY;\n modalState.translateYCurrent = translateY;\n modalState.collapsed = translateY > 0 && translateY < shiftYEndPercent;\n modalState.expanded = translateY === 0;\n modalState.hidden = translateY === 100;\n\n if (modalState.hidden) {\n this.props.onExit();\n }\n\n setStateCallback = () => {\n if (!modalState.hidden) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n\n this.setMaskOpacity(modalState);\n };\n }\n\n this.setState(\n {\n touchDown: false,\n dragging: false,\n },\n setStateCallback,\n );\n }\n\n onCardTouchEnd({ duration }: TouchEvent, modalState: ModalsStateEntry) {\n let setStateCallback;\n\n if (this.state.dragging) {\n let translateY = modalState.translateYCurrent ?? 0;\n\n const expectTranslateY =\n (translateY / duration) * 240 * 0.6 * ((modalState.touchShiftYPercent ?? 0) < 0 ? -1 : 1);\n translateY = Math.max(0, translateY + expectTranslateY);\n\n if (translateY >= 30) {\n translateY = 100;\n } else {\n translateY = 0;\n }\n\n modalState.translateY = translateY;\n modalState.hidden = translateY === 100;\n\n if (modalState.hidden) {\n this.props.onExit();\n }\n\n setStateCallback = () => {\n if (!modalState.hidden) {\n this.animateTranslate(modalState, modalState.translateY);\n }\n\n this.setMaskOpacity(modalState);\n };\n }\n\n this.setState(\n {\n touchDown: false,\n dragging: false,\n },\n setStateCallback,\n );\n }\n\n onScroll = (e: React.SyntheticEvent) => {\n const activeModal = this.props.activeModal;\n\n const target = e.target as HTMLElement;\n\n if (!activeModal) {\n return;\n }\n const modalState = this.getModalState(activeModal);\n if (modalState?.type === ModalType.PAGE && modalState?.contentElement?.contains(target)) {\n modalState.contentScrolled = true;\n\n if (modalState.contentScrollStopTimeout) {\n clearTimeout(modalState.contentScrollStopTimeout);\n }\n\n modalState.contentScrollStopTimeout = setTimeout(() => {\n if (modalState.contentScrolled) {\n modalState.contentScrolled = false;\n }\n }, 250);\n }\n };\n\n waitTransitionFinish(modalState: ModalsStateEntry | undefined, eventHandler: () => void) {\n if (transitionEvent.supported) {\n const onceHandler = () => {\n modalState?.innerElement?.removeEventListener(transitionEvent.name as string, onceHandler);\n eventHandler();\n };\n\n modalState?.innerElement?.addEventListener(transitionEvent.name as string, onceHandler);\n } else {\n setTimeout(eventHandler, this.timeout);\n }\n }\n\n /**\n * Анимирует сдвиг модалки\n *\n * @param {ModalsStateEntry} modalState\n * @param {number} percent Процент сдвига: 0 – полностью открыта, 100 – полностью закрыта\n */\n animateTranslate(modalState: ModalsStateEntry, percent: number | undefined) {\n const frameId = `animateTranslateFrame${modalState.id}`;\n\n cancelAnimationFrame(this.frameIds[frameId]);\n\n this.frameIds[frameId] = requestAnimationFrame(() => {\n setTransformStyle(modalState.innerElement, `translate3d(0, ${percent}%, 0)`);\n });\n }\n\n /* Устанавливает прозрачность для полупрозрачной подложки */\n setMaskOpacity(modalState: ModalsStateEntry, forceOpacity: number | null = null) {\n if (forceOpacity === null && this.props.history?.[0] !== modalState.id) {\n return;\n }\n if (this.maskAnimationFrame) {\n cancelAnimationFrame(this.maskAnimationFrame);\n }\n this.maskAnimationFrame = requestAnimationFrame(() => {\n if (this.maskElementRef.current) {\n const { translateY = 0, translateYCurrent = 0 } = modalState;\n\n const opacity =\n forceOpacity === null\n ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0\n : forceOpacity;\n this.maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();\n }\n });\n }\n\n render() {\n const { activeModal, exitingModal, enteringModal } = this.props;\n const { touchDown, dragging } = this.state;\n\n if (!activeModal && !exitingModal) {\n return null;\n }\n\n return (\n <TouchRootContext.Provider value={true}>\n <ModalRootContext.Provider value={this.modalRootContext}>\n <Touch\n className={classNames(\n styles['ModalRoot'],\n this.props.configProvider?.webviewType === WebviewType.VKAPPS &&\n styles['ModalRoot--vkapps'],\n touchDown && styles['ModalRoot--touched'],\n !!(enteringModal || exitingModal) && styles['ModalRoot--switching'],\n )}\n onMove={this.onTouchMove}\n onEnd={this.onTouchEnd}\n onScroll={this.onScroll}\n >\n <div\n className={styles['ModalRoot__mask']}\n onClick={this.props.onExit}\n ref={this.maskElementRef}\n />\n <div className={styles['ModalRoot__viewport']} ref={this.viewportRef}>\n {this.getModals().map((Modal) => {\n const modalId = getNavId(Modal.props, warn);\n const _modalState = this.getModalState(modalId);\n if ((modalId !== activeModal && modalId !== exitingModal) || !_modalState) {\n return null;\n }\n const modalState = { ..._modalState };\n\n const isPage = modalState.type === ModalType.PAGE;\n const key = `modal-${modalId}`;\n\n return (\n <FocusTrap\n key={key}\n getRootRef={(e) => {\n const modalState = this.getModalState(modalId);\n if (modalState) {\n modalState.modalElement = e;\n }\n }}\n onClose={this.props.onExit}\n timeout={this.timeout}\n className={classNames(\n styles['ModalRoot__modal'],\n\n dragging && styles['ModalRoot__modal--dragging'],\n\n isPage && modalState.expandable && styles['ModalRoot__modal--expandable'],\n isPage && modalState.collapsed && styles['ModalRoot__modal--collapsed'],\n )}\n restoreFocus={false}\n >\n {Modal}\n </FocusTrap>\n );\n })}\n </div>\n </Touch>\n </ModalRootContext.Provider>\n </TouchRootContext.Provider>\n );\n }\n}\n\nexport const ModalRootTouch = withContext(\n withPlatform(withDOM<ModalRootProps>(withModalManager(initModal)(ModalRootTouchComponent))),\n ConfigProviderContext,\n 'configProvider',\n);\n\n/**\n * Инициализирует модалку перед анимацией открытия\n */\nfunction initModal(modalState: ModalsStateEntry) {\n switch (modalState.type) {\n case ModalType.PAGE:\n modalState.settlingHeight = modalState.settlingHeight || MODAL_PAGE_DEFAULT_PERCENT_HEIGHT;\n return initPageModal(modalState);\n case ModalType.CARD:\n return initCardModal(modalState);\n default:\n process.env.NODE_ENV === 'development' &&\n warn(`initActiveModal: modalState.type=\"${modalState.type}\" не поддерживается`, 'error');\n }\n}\n\nfunction initPageModal(modalState: ModalsStateEntry) {\n const { contentElement } = modalState;\n const contentHeight = (contentElement?.firstElementChild as HTMLElement).offsetHeight;\n\n let prevTranslateY = modalState.translateY;\n\n modalState.expandable =\n contentHeight > (contentElement?.clientHeight ?? 0) || modalState.settlingHeight === 100;\n\n let collapsed = false;\n let expanded = false;\n let translateYFrom;\n let translateY;\n let expandedRange: TranslateRange;\n let collapsedRange: TranslateRange;\n let hiddenRange: TranslateRange;\n\n if (modalState.expandable) {\n translateYFrom = 100 - (modalState.settlingHeight ?? 0);\n\n const shiftHalf = translateYFrom / 2;\n const visiblePart = 100 - translateYFrom;\n\n expandedRange = [0, shiftHalf];\n collapsedRange = [shiftHalf, translateYFrom + visiblePart / 4];\n hiddenRange = [translateYFrom + visiblePart / 4, 100];\n\n collapsed = translateYFrom > 0;\n expanded = translateYFrom <= 0;\n translateY = translateYFrom;\n } else {\n const headerHeight = modalState.headerElement?.offsetHeight ?? 0;\n const height = contentHeight + headerHeight;\n\n translateYFrom =\n 100 - (height / (modalState.innerElement?.parentElement?.offsetHeight ?? 0)) * 100;\n translateY = translateYFrom;\n\n expandedRange = [translateY, translateY + 25];\n collapsedRange = [translateY + 25, translateY + 25];\n hiddenRange = [translateY + 25, translateY + 100];\n }\n\n // Если модалка может открываться на весь экран, и новый сдвиг больше предыдущего, то откроем её на весь экран\n if (\n (modalState.expandable && translateY > (prevTranslateY ?? 100)) ||\n modalState.settlingHeight === 100\n ) {\n translateY = 0;\n }\n\n // Если модалка уже раскрыта обновляем состояния\n if (translateY === 0) {\n expanded = true;\n collapsed = false;\n }\n\n modalState.expandedRange = expandedRange;\n modalState.collapsedRange = collapsedRange;\n modalState.hiddenRange = hiddenRange;\n modalState.translateY = translateY;\n modalState.translateYFrom = translateYFrom;\n modalState.collapsed = collapsed;\n modalState.expanded = expanded;\n}\n\nfunction initCardModal(modalState: ModalsStateEntry) {\n modalState.translateY = 0;\n}\n"],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import * as React from 'react';
2
+ import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
3
+ import { useScrollLock } from '../AppRoot/ScrollContext';
2
4
  import { ModalRootTouch } from './ModalRoot';
3
5
  import { ModalRootDesktop } from './ModalRootDesktop';
4
- import { useScrollLock } from '../AppRoot/ScrollContext';
5
- import { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';
6
6
  /**
7
7
  * @see https://vkcom.github.io/VKUI/#/ModalRoot
8
8
  */
@@ -1 +1 @@
1
- {"version":3,"file":"ModalRootAdaptive.js","names":["React","ModalRootTouch","ModalRootDesktop","useScrollLock","useAdaptivityWithJSMediaQueries","ModalRoot","props","isDesktop","activeModal","RootComponent"],"sources":["../../../src/components/ModalRoot/ModalRootAdaptive.tsx"],"sourcesContent":["import * as React from 'react';\nimport { ModalRootTouch } from './ModalRoot';\nimport { ModalRootDesktop } from './ModalRootDesktop';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\n\nexport interface ModalRootProps {\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 children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalRoot\n */\nexport const ModalRoot = (props: ModalRootProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n useScrollLock(!!props.activeModal);\n\n const RootComponent = isDesktop ? ModalRootDesktop : ModalRootTouch;\n\n return <RootComponent {...props} />;\n};\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,cAAc,QAAQ,aAAa;AAC5C,SAASC,gBAAgB,QAAQ,oBAAoB;AACrD,SAASC,aAAa,QAAQ,0BAA0B;AACxD,SAASC,+BAA+B,QAAQ,6CAA6C;AA2B7F;AACA;AACA;AACA,OAAO,IAAMC,SAAS,GAAG,SAAZA,SAAS,CAAIC,KAAqB,EAAK;EAClD,4BAAsBF,+BAA+B,EAAE;IAA/CG,SAAS,yBAATA,SAAS;EAEjBJ,aAAa,CAAC,CAAC,CAACG,KAAK,CAACE,WAAW,CAAC;EAElC,IAAMC,aAAa,GAAGF,SAAS,GAAGL,gBAAgB,GAAGD,cAAc;EAEnE,oBAAO,oBAAC,aAAa,EAAKK,KAAK,CAAI;AACrC,CAAC"}
1
+ {"version":3,"file":"ModalRootAdaptive.js","names":["React","useAdaptivityWithJSMediaQueries","useScrollLock","ModalRootTouch","ModalRootDesktop","ModalRoot","props","isDesktop","activeModal","RootComponent"],"sources":["../../../src/components/ModalRoot/ModalRootAdaptive.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useAdaptivityWithJSMediaQueries } from '../../hooks/useAdaptivityWithJSMediaQueries';\nimport { useScrollLock } from '../AppRoot/ScrollContext';\nimport { ModalRootTouch } from './ModalRoot';\nimport { ModalRootDesktop } from './ModalRootDesktop';\n\nexport interface ModalRootProps {\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 children?: React.ReactNode;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ModalRoot\n */\nexport const ModalRoot = (props: ModalRootProps) => {\n const { isDesktop } = useAdaptivityWithJSMediaQueries();\n\n useScrollLock(!!props.activeModal);\n\n const RootComponent = isDesktop ? ModalRootDesktop : ModalRootTouch;\n\n return <RootComponent {...props} />;\n};\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,+BAA+B,QAAQ,6CAA6C;AAC7F,SAASC,aAAa,QAAQ,0BAA0B;AACxD,SAASC,cAAc,QAAQ,aAAa;AAC5C,SAASC,gBAAgB,QAAQ,oBAAoB;AA2BrD;AACA;AACA;AACA,OAAO,IAAMC,SAAS,GAAG,SAAZA,SAAS,CAAIC,KAAqB,EAAK;EAClD,4BAAsBL,+BAA+B,EAAE;IAA/CM,SAAS,yBAATA,SAAS;EAEjBL,aAAa,CAAC,CAAC,CAACI,KAAK,CAACE,WAAW,CAAC;EAElC,IAAMC,aAAa,GAAGF,SAAS,GAAGH,gBAAgB,GAAGD,cAAc;EAEnE,oBAAO,oBAAC,aAAa,EAAKG,KAAK,CAAI;AACrC,CAAC"}
@@ -8,18 +8,18 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
8
8
  var _excluded = ["id"];
9
9
  import * as React from 'react';
10
10
  import { classNames } from '@vkontakte/vkjs';
11
- import { transitionEvent } from '../../lib/supportEvents';
12
- import { withPlatform } from '../../hoc/withPlatform';
11
+ import { clamp } from '../../helpers/math';
13
12
  import { withContext } from '../../hoc/withContext';
14
- import { ModalRootContext } from './ModalRootContext';
15
- import { ConfigProviderContext, WebviewType } from '../ConfigProvider/ConfigProviderContext';
16
- import { Platform } from '../../lib/platform';
13
+ import { withPlatform } from '../../hoc/withPlatform';
17
14
  import { withDOM } from '../../lib/dom';
18
15
  import { getNavId } from '../../lib/getNavId';
16
+ import { Platform } from '../../lib/platform';
17
+ import { transitionEvent } from '../../lib/supportEvents';
19
18
  import { warnOnce } from '../../lib/warnOnce';
19
+ import { ConfigProviderContext, WebviewType } from '../ConfigProvider/ConfigProviderContext';
20
20
  import { FocusTrap } from '../FocusTrap/FocusTrap';
21
+ import { ModalRootContext } from './ModalRootContext';
21
22
  import { withModalManager } from './useModalManager';
22
- import { clamp } from '../../helpers/math';
23
23
  var warn = warnOnce('ModalRoot');
24
24
  var ModalRootDesktopComponent = /*#__PURE__*/function (_React$Component) {
25
25
  _inherits(ModalRootDesktopComponent, _React$Component);