@vkontakte/vkui 7.1.3 → 7.2.1

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 (1202) hide show
  1. package/dist/components/Accordion/Accordion.d.ts +2 -2
  2. package/dist/components/Accordion/Accordion.d.ts.map +1 -1
  3. package/dist/components/Accordion/Accordion.js.map +1 -1
  4. package/dist/components/ActionSheet/ActionSheet.d.ts +1 -1
  5. package/dist/components/ActionSheet/ActionSheet.d.ts.map +1 -1
  6. package/dist/components/ActionSheet/ActionSheet.js +1 -1
  7. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  8. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts.map +1 -1
  9. package/dist/components/ActionSheet/ActionSheetDropdownMenu.d.ts +1 -1
  10. package/dist/components/ActionSheet/ActionSheetDropdownMenu.d.ts.map +1 -1
  11. package/dist/components/ActionSheet/ActionSheetDropdownMenu.js +10 -4
  12. package/dist/components/ActionSheet/ActionSheetDropdownMenu.js.map +1 -1
  13. package/dist/components/ActionSheet/ActionSheetDropdownSheet.d.ts +1 -1
  14. package/dist/components/ActionSheet/ActionSheetDropdownSheet.d.ts.map +1 -1
  15. package/dist/components/ActionSheet/ActionSheetDropdownSheet.js +10 -4
  16. package/dist/components/ActionSheet/ActionSheetDropdownSheet.js.map +1 -1
  17. package/dist/components/ActionSheet/types.d.ts +4 -0
  18. package/dist/components/ActionSheet/types.d.ts.map +1 -1
  19. package/dist/components/ActionSheet/types.js.map +1 -1
  20. package/dist/components/ActionSheetItem/ActionSheetItem.d.ts.map +1 -1
  21. package/dist/components/ActionSheetItem/helpers.d.ts.map +1 -1
  22. package/dist/components/ActionSheetItem/subcomponents/Radio/Radio.d.ts.map +1 -1
  23. package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts.map +1 -1
  24. package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts.map +1 -1
  25. package/dist/components/Alert/Alert.d.ts +14 -2
  26. package/dist/components/Alert/Alert.d.ts.map +1 -1
  27. package/dist/components/Alert/Alert.js +15 -104
  28. package/dist/components/Alert/Alert.js.map +1 -1
  29. package/dist/components/Alert/AlertAction.d.ts.map +1 -1
  30. package/dist/components/Alert/AlertActions.d.ts.map +1 -1
  31. package/dist/components/Alert/AlertBase.d.ts +7 -0
  32. package/dist/components/Alert/AlertBase.d.ts.map +1 -0
  33. package/dist/components/Alert/AlertBase.js +131 -0
  34. package/dist/components/Alert/AlertBase.js.map +1 -0
  35. package/dist/components/Alert/AlertTypography.d.ts +2 -1
  36. package/dist/components/Alert/AlertTypography.d.ts.map +1 -1
  37. package/dist/components/Alert/AlertTypography.js.map +1 -1
  38. package/dist/components/AppRoot/AppRoot.d.ts.map +1 -1
  39. package/dist/components/AppRoot/AppRootPortal.d.ts.map +1 -1
  40. package/dist/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js +1 -1
  41. package/dist/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js.map +1 -1
  42. package/dist/components/AppRoot/ScrollContext.d.ts +1 -0
  43. package/dist/components/AppRoot/ScrollContext.d.ts.map +1 -1
  44. package/dist/components/AppRoot/ScrollContext.js +127 -39
  45. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  46. package/dist/components/AppRoot/helpers.d.ts.map +1 -1
  47. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.d.ts.map +1 -1
  48. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +4 -1
  49. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  50. package/dist/components/Avatar/AvatarBadge/icons.d.ts.map +1 -1
  51. package/dist/components/Badge/Badge.d.ts.map +1 -1
  52. package/dist/components/Banner/Banner.d.ts.map +1 -1
  53. package/dist/components/Button/Button.d.ts.map +1 -1
  54. package/dist/components/ButtonGroup/ButtonGroup.d.ts +4 -1
  55. package/dist/components/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  56. package/dist/components/ButtonGroup/ButtonGroup.js +1 -0
  57. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  58. package/dist/components/Calendar/Calendar.d.ts +8 -3
  59. package/dist/components/Calendar/Calendar.d.ts.map +1 -1
  60. package/dist/components/Calendar/Calendar.js +98 -92
  61. package/dist/components/Calendar/Calendar.js.map +1 -1
  62. package/dist/components/CalendarDay/CalendarDay.d.ts.map +1 -1
  63. package/dist/components/CalendarDay/CalendarDay.js +1 -3
  64. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  65. package/dist/components/CalendarDays/CalendarDays.d.ts +1 -1
  66. package/dist/components/CalendarDays/CalendarDays.d.ts.map +1 -1
  67. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  68. package/dist/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  69. package/dist/components/CalendarHeader/CalendarHeader.js +1 -3
  70. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  71. package/dist/components/CalendarRange/CalendarRange.d.ts +4 -3
  72. package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  73. package/dist/components/CalendarRange/CalendarRange.js +105 -108
  74. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  75. package/dist/components/CalendarTime/CalendarTime.d.ts.map +1 -1
  76. package/dist/components/CalendarTime/CalendarTime.js +16 -13
  77. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  78. package/dist/components/Card/Card.d.ts.map +1 -1
  79. package/dist/components/CardGrid/CardGrid.d.ts.map +1 -1
  80. package/dist/components/CardScroll/CardScroll.d.ts +5 -1
  81. package/dist/components/CardScroll/CardScroll.d.ts.map +1 -1
  82. package/dist/components/CardScroll/CardScroll.js +32 -29
  83. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  84. package/dist/components/CarouselBase/CarouselBase.d.ts.map +1 -1
  85. package/dist/components/CarouselBase/CarouselBase.js +71 -46
  86. package/dist/components/CarouselBase/CarouselBase.js.map +1 -1
  87. package/dist/components/CarouselBase/ScrollArrows.d.ts.map +1 -1
  88. package/dist/components/CarouselBase/helpers.d.ts +20 -5
  89. package/dist/components/CarouselBase/helpers.d.ts.map +1 -1
  90. package/dist/components/CarouselBase/helpers.js +70 -44
  91. package/dist/components/CarouselBase/helpers.js.map +1 -1
  92. package/dist/components/Cell/CellCheckbox/CellCheckbox.d.ts.map +1 -1
  93. package/dist/components/Cell/CellDragger/CellDragger.d.ts.map +1 -1
  94. package/dist/components/CellButton/CellButton.d.ts.map +1 -1
  95. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts +300 -0
  96. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts.map +1 -0
  97. package/dist/components/CellButtonGroup/CellButtonGroup.js +20 -0
  98. package/dist/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
  99. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts +8 -0
  100. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts.map +1 -0
  101. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +20 -0
  102. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
  103. package/dist/components/ChipsInput/ChipsInput.d.ts.map +1 -1
  104. package/dist/components/ChipsInput/useChipsInput.d.ts.map +1 -1
  105. package/dist/components/ChipsInputBase/Chip/Chip.d.ts.map +1 -1
  106. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts.map +1 -1
  107. package/dist/components/ChipsInputBase/ChipsInputBase.js +1 -0
  108. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  109. package/dist/components/ChipsInputBase/helpers.d.ts +1 -1
  110. package/dist/components/ChipsInputBase/helpers.d.ts.map +1 -1
  111. package/dist/components/ChipsInputBase/helpers.js +4 -0
  112. package/dist/components/ChipsInputBase/helpers.js.map +1 -1
  113. package/dist/components/ChipsInputBase/types.d.ts +1 -1
  114. package/dist/components/ChipsInputBase/types.d.ts.map +1 -1
  115. package/dist/components/ChipsInputBase/types.js.map +1 -1
  116. package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  117. package/dist/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
  118. package/dist/components/ChipsSelect/ChipsSelect.js +9 -2
  119. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  120. package/dist/components/ChipsSelect/constants.d.ts.map +1 -1
  121. package/dist/components/ChipsSelect/useChipsSelect.d.ts +3 -2
  122. package/dist/components/ChipsSelect/useChipsSelect.d.ts.map +1 -1
  123. package/dist/components/ChipsSelect/useChipsSelect.js +9 -3
  124. package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
  125. package/dist/components/Clickable/Clickable.d.ts +1 -1
  126. package/dist/components/Clickable/Clickable.d.ts.map +1 -1
  127. package/dist/components/Clickable/Clickable.js +28 -28
  128. package/dist/components/Clickable/Clickable.js.map +1 -1
  129. package/dist/components/Clickable/RealClickable.d.ts.map +1 -1
  130. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.d.ts.map +1 -1
  131. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
  132. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
  133. package/dist/components/ConfigProvider/ConfigProvider.d.ts.map +1 -1
  134. package/dist/components/ConfigProvider/ConfigProvider.js +5 -2
  135. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  136. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +11 -1
  137. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts.map +1 -1
  138. package/dist/components/ConfigProvider/ConfigProviderContext.js +12 -7
  139. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  140. package/dist/components/ContentCard/ContentCard.d.ts +6 -1
  141. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -1
  142. package/dist/components/ContentCard/ContentCard.js +6 -4
  143. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  144. package/dist/components/Counter/Counter.d.ts.map +1 -1
  145. package/dist/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
  146. package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  147. package/dist/components/CustomSelect/CustomSelect.js +108 -71
  148. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  149. package/dist/components/CustomSelect/CustomSelectClearButton.d.ts.map +1 -1
  150. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.d.ts.map +1 -1
  151. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts.map +1 -1
  152. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +3 -1
  153. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  154. package/dist/components/CustomSelectOption/CustomSelectOption.d.ts.map +1 -1
  155. package/dist/components/DateInput/DateInput.d.ts +19 -2
  156. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  157. package/dist/components/DateInput/DateInput.js +118 -82
  158. package/dist/components/DateInput/DateInput.js.map +1 -1
  159. package/dist/components/DateInput/hooks.d.ts +16 -0
  160. package/dist/components/DateInput/hooks.d.ts.map +1 -0
  161. package/dist/components/DateInput/hooks.js +61 -0
  162. package/dist/components/DateInput/hooks.js.map +1 -0
  163. package/dist/components/DateRangeInput/DateRangeInput.d.ts +10 -2
  164. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  165. package/dist/components/DateRangeInput/DateRangeInput.js +110 -82
  166. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  167. package/dist/components/DirectionProvider/DirectionProvider.d.ts +13 -0
  168. package/dist/components/DirectionProvider/DirectionProvider.d.ts.map +1 -0
  169. package/dist/components/DirectionProvider/DirectionProvider.js +15 -0
  170. package/dist/components/DirectionProvider/DirectionProvider.js.map +1 -0
  171. package/dist/components/Div/Div.d.ts.map +1 -1
  172. package/dist/components/DropdownIcon/DropdownIcon.d.ts.map +1 -1
  173. package/dist/components/Epic/Epic.d.ts.map +1 -1
  174. package/dist/components/Epic/ScrollSaver.d.ts.map +1 -1
  175. package/dist/components/File/File.d.ts.map +1 -1
  176. package/dist/components/FixedLayout/FixedLayout.d.ts.map +1 -1
  177. package/dist/components/Flex/Flex.d.ts.map +1 -1
  178. package/dist/components/Flex/Flex.js +3 -5
  179. package/dist/components/Flex/Flex.js.map +1 -1
  180. package/dist/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
  181. package/dist/components/FloatingArrow/DefaultIcon.d.ts.map +1 -1
  182. package/dist/components/FloatingArrow/FloatingArrow.d.ts.map +1 -1
  183. package/dist/components/FocusTrap/FocusTrap.d.ts.map +1 -1
  184. package/dist/components/Footer/Footer.d.ts.map +1 -1
  185. package/dist/components/FormField/FormField.d.ts.map +1 -1
  186. package/dist/components/FormFieldClearButton/FormFieldClearButton.d.ts.map +1 -1
  187. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts.map +1 -1
  188. package/dist/components/FormStatus/FormStatus.d.ts.map +1 -1
  189. package/dist/components/Gallery/Gallery.d.ts.map +1 -1
  190. package/dist/components/Gradient/Gradient.d.ts.map +1 -1
  191. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.d.ts.map +1 -1
  192. package/dist/components/Header/Header.d.ts.map +1 -1
  193. package/dist/components/HorizontalCell/HorizontalCell.d.ts.map +1 -1
  194. package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.d.ts.map +1 -1
  195. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +13 -1
  196. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  197. package/dist/components/HorizontalScroll/HorizontalScroll.js +32 -24
  198. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  199. package/dist/components/IconButton/IconButton.d.ts.map +1 -1
  200. package/dist/components/ImageBase/ImageBase.d.ts +5 -0
  201. package/dist/components/ImageBase/ImageBase.d.ts.map +1 -1
  202. package/dist/components/ImageBase/ImageBase.js +6 -4
  203. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  204. package/dist/components/ImageBase/ImageBaseFloatElement/helpers.d.ts.map +1 -1
  205. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.d.ts.map +1 -1
  206. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
  207. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  208. package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts +1 -0
  209. package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts.map +1 -1
  210. package/dist/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
  211. package/dist/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
  212. package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts +4 -0
  213. package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts.map +1 -1
  214. package/dist/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
  215. package/dist/components/InfoRow/InfoRow.d.ts.map +1 -1
  216. package/dist/components/Input/Input.d.ts.map +1 -1
  217. package/dist/components/InputLike/InputLikeDivider.d.ts.map +1 -1
  218. package/dist/components/Link/Link.d.ts.map +1 -1
  219. package/dist/components/List/List.d.ts.map +1 -1
  220. package/dist/components/Mark/Mark.d.ts.map +1 -1
  221. package/dist/components/MiniInfoCell/MiniInfoCell.d.ts.map +1 -1
  222. package/dist/components/ModalCard/ModalCard.d.ts.map +1 -1
  223. package/dist/components/ModalCard/ModalCard.js +6 -13
  224. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  225. package/dist/components/ModalCard/ModalCardInternal.d.ts +1 -1
  226. package/dist/components/ModalCard/ModalCardInternal.d.ts.map +1 -1
  227. package/dist/components/ModalCard/ModalCardInternal.js +4 -2
  228. package/dist/components/ModalCard/ModalCardInternal.js.map +1 -1
  229. package/dist/components/ModalCard/types.d.ts +1 -1
  230. package/dist/components/ModalCard/types.d.ts.map +1 -1
  231. package/dist/components/ModalCard/types.js.map +1 -1
  232. package/dist/components/ModalCardBase/ModalCardBase.d.ts +9 -1
  233. package/dist/components/ModalCardBase/ModalCardBase.d.ts.map +1 -1
  234. package/dist/components/ModalCardBase/ModalCardBase.js +33 -8
  235. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  236. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +5 -3
  237. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts.map +1 -1
  238. package/dist/components/ModalDismissButton/ModalDismissButton.js +7 -7
  239. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  240. package/dist/components/ModalOutlet/ModalOutlet.d.ts.map +1 -1
  241. package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts +17 -0
  242. package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts.map +1 -0
  243. package/dist/components/ModalOutsideButton/ModalOutsideButton.js +30 -0
  244. package/dist/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
  245. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts +6 -0
  246. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts.map +1 -0
  247. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js +22 -0
  248. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
  249. package/dist/components/ModalOverlay/ModalOverlay.d.ts.map +1 -1
  250. package/dist/components/ModalPage/ModalPage.d.ts.map +1 -1
  251. package/dist/components/ModalPage/ModalPage.js +5 -12
  252. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  253. package/dist/components/ModalPage/ModalPageBase.d.ts +8 -0
  254. package/dist/components/ModalPage/ModalPageBase.d.ts.map +1 -0
  255. package/dist/components/ModalPage/ModalPageBase.js +66 -0
  256. package/dist/components/ModalPage/ModalPageBase.js.map +1 -0
  257. package/dist/components/ModalPage/ModalPageInternal.d.ts +1 -1
  258. package/dist/components/ModalPage/ModalPageInternal.d.ts.map +1 -1
  259. package/dist/components/ModalPage/ModalPageInternal.js +24 -32
  260. package/dist/components/ModalPage/ModalPageInternal.js.map +1 -1
  261. package/dist/components/ModalPage/types.d.ts +12 -1
  262. package/dist/components/ModalPage/types.d.ts.map +1 -1
  263. package/dist/components/ModalPage/types.js.map +1 -1
  264. package/dist/components/ModalPageContent/ModalPageContent.d.ts.map +1 -1
  265. package/dist/components/ModalPageFooter/ModalPageFooter.d.ts.map +1 -1
  266. package/dist/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
  267. package/dist/components/ModalRoot/ModalRoot.d.ts.map +1 -1
  268. package/dist/components/ModalRoot/VisuallyHiddenModalOverlay/VisuallyHiddenModalOverlay.d.ts.map +1 -1
  269. package/dist/components/ModalRoot/types.d.ts +1 -0
  270. package/dist/components/ModalRoot/types.d.ts.map +1 -1
  271. package/dist/components/ModalRoot/types.js.map +1 -1
  272. package/dist/components/ModalRoot/useModalManager.d.ts +4 -2
  273. package/dist/components/ModalRoot/useModalManager.d.ts.map +1 -1
  274. package/dist/components/ModalRoot/useModalManager.js +12 -3
  275. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  276. package/dist/components/ModalRoot/useModalRootContext.js +1 -0
  277. package/dist/components/ModalRoot/useModalRootContext.js.map +1 -1
  278. package/dist/components/NativeSelect/NativeSelect.d.ts.map +1 -1
  279. package/dist/components/NavTransitionContext/NavTransitionContext.d.ts.map +1 -1
  280. package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts.map +1 -1
  281. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts +2 -2
  282. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
  283. package/dist/components/OnboardingTooltip/OnboardingTooltip.js +22 -8
  284. package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  285. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
  286. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js +12 -3
  287. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
  288. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts +7 -0
  289. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts.map +1 -0
  290. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
  291. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
  292. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  293. package/dist/components/Pagination/Pagination.js +5 -2
  294. package/dist/components/Pagination/Pagination.js.map +1 -1
  295. package/dist/components/Pagination/PaginationNavigationButton/PaginationNavigationButton.d.ts.map +1 -1
  296. package/dist/components/Pagination/PaginationPage/PaginationPageButton.d.ts.map +1 -1
  297. package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts.map +1 -1
  298. package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts.map +1 -1
  299. package/dist/components/Panel/Panel.d.ts.map +1 -1
  300. package/dist/components/PanelHeader/PanelHeader.d.ts.map +1 -1
  301. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts.map +1 -1
  302. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
  303. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  304. package/dist/components/PanelHeaderButton/PanelHeaderButton.d.ts.map +1 -1
  305. package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts.map +1 -1
  306. package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts.map +1 -1
  307. package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts.map +1 -1
  308. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts.map +1 -1
  309. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts.map +1 -1
  310. package/dist/components/Placeholder/Placeholder.d.ts.map +1 -1
  311. package/dist/components/PlatformProvider/PlatformProvider.js +1 -1
  312. package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
  313. package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +15 -2
  314. package/dist/components/PopoutWrapper/PopoutWrapper.d.ts.map +1 -1
  315. package/dist/components/PopoutWrapper/PopoutWrapper.js +10 -2
  316. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  317. package/dist/components/Popover/Popover.d.ts +1 -1
  318. package/dist/components/Popover/Popover.d.ts.map +1 -1
  319. package/dist/components/Popover/Popover.js +4 -4
  320. package/dist/components/Popover/Popover.js.map +1 -1
  321. package/dist/components/Popover/usePopover.d.ts +1 -1
  322. package/dist/components/Popover/usePopover.d.ts.map +1 -1
  323. package/dist/components/Popover/usePopover.js +69 -44
  324. package/dist/components/Popover/usePopover.js.map +1 -1
  325. package/dist/components/Popper/Popper.d.ts +2 -2
  326. package/dist/components/Popper/Popper.d.ts.map +1 -1
  327. package/dist/components/Popper/Popper.js +18 -5
  328. package/dist/components/Popper/Popper.js.map +1 -1
  329. package/dist/components/Progress/Progress.d.ts +7 -3
  330. package/dist/components/Progress/Progress.d.ts.map +1 -1
  331. package/dist/components/Progress/Progress.js +30 -11
  332. package/dist/components/Progress/Progress.js.map +1 -1
  333. package/dist/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
  334. package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts.map +1 -1
  335. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  336. package/dist/components/Removable/Removable.d.ts.map +1 -1
  337. package/dist/components/Removable/Removable.js +8 -4
  338. package/dist/components/Removable/Removable.js.map +1 -1
  339. package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts.map +1 -1
  340. package/dist/components/Root/Root.d.ts.map +1 -1
  341. package/dist/components/RootComponent/RootComponent.d.ts.map +1 -1
  342. package/dist/components/ScreenSpinner/Icon48CancelCircle.d.ts.map +1 -1
  343. package/dist/components/ScreenSpinner/Icon48DoneOutline.d.ts.map +1 -1
  344. package/dist/components/ScreenSpinner/ScreenSpinner.js +1 -0
  345. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  346. package/dist/components/ScrollArrow/ScrollArrow.d.ts.map +1 -1
  347. package/dist/components/ScrollArrow/ScrollArrow.js +4 -1
  348. package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
  349. package/dist/components/Search/Search.d.ts +9 -1
  350. package/dist/components/Search/Search.d.ts.map +1 -1
  351. package/dist/components/Search/Search.js +9 -2
  352. package/dist/components/Search/Search.js.map +1 -1
  353. package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  354. package/dist/components/SegmentedControl/SegmentedControl.js +10 -7
  355. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  356. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts.map +1 -1
  357. package/dist/components/Select/Select.d.ts.map +1 -1
  358. package/dist/components/SelectMimicry/SelectMimicry.d.ts.map +1 -1
  359. package/dist/components/SelectTypography/SelectTypography.d.ts.map +1 -1
  360. package/dist/components/Separator/Separator.d.ts.map +1 -1
  361. package/dist/components/SimpleCell/Chevron/Chevron.d.ts.map +1 -1
  362. package/dist/components/SimpleCell/SimpleCell.d.ts.map +1 -1
  363. package/dist/components/SimpleGrid/SimpleGrid.d.ts.map +1 -1
  364. package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
  365. package/dist/components/Slider/Slider.d.ts +1 -1
  366. package/dist/components/Slider/Slider.d.ts.map +1 -1
  367. package/dist/components/Slider/Slider.js +22 -18
  368. package/dist/components/Slider/Slider.js.map +1 -1
  369. package/dist/components/Slider/SliderThumb/SliderThumb.d.ts.map +1 -1
  370. package/dist/components/Slider/SliderThumb/SliderThumb.js +5 -1
  371. package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  372. package/dist/components/Slider/helpers.d.ts.map +1 -1
  373. package/dist/components/Snackbar/Snackbar.d.ts.map +1 -1
  374. package/dist/components/Snackbar/Snackbar.js +6 -3
  375. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  376. package/dist/components/Snackbar/utils.d.ts +3 -2
  377. package/dist/components/Snackbar/utils.d.ts.map +1 -1
  378. package/dist/components/Snackbar/utils.js +11 -8
  379. package/dist/components/Snackbar/utils.js.map +1 -1
  380. package/dist/components/Spacing/Spacing.d.ts.map +1 -1
  381. package/dist/components/SplitCol/SplitCol.d.ts.map +1 -1
  382. package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -1
  383. package/dist/components/SubnavigationBar/SubnavigationBar.d.ts.map +1 -1
  384. package/dist/components/SubnavigationButton/SubnavigationButton.d.ts.map +1 -1
  385. package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -1
  386. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  387. package/dist/components/Switch/Switch.d.ts.map +1 -1
  388. package/dist/components/Switch/Switch.js +4 -1
  389. package/dist/components/Switch/Switch.js.map +1 -1
  390. package/dist/components/Tabbar/Tabbar.d.ts.map +1 -1
  391. package/dist/components/TabbarItem/TabbarItem.d.ts.map +1 -1
  392. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  393. package/dist/components/Tabs/Tabs.js +3 -1
  394. package/dist/components/Tabs/Tabs.js.map +1 -1
  395. package/dist/components/TabsItem/TabsItem.d.ts.map +1 -1
  396. package/dist/components/Tappable/Ripple.d.ts.map +1 -1
  397. package/dist/components/Tappable/Tappable.d.ts.map +1 -1
  398. package/dist/components/Textarea/Textarea.d.ts.map +1 -1
  399. package/dist/components/ToolButton/ToolButton.d.ts.map +1 -1
  400. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  401. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  402. package/dist/components/Tooltip/Tooltip.js +8 -101
  403. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  404. package/dist/components/Tooltip/useTooltip.d.ts +14 -0
  405. package/dist/components/Tooltip/useTooltip.d.ts.map +1 -0
  406. package/dist/components/Tooltip/useTooltip.js +126 -0
  407. package/dist/components/Tooltip/useTooltip.js.map +1 -0
  408. package/dist/components/TooltipBase/TooltipBase.d.ts.map +1 -1
  409. package/dist/components/Touch/Touch.d.ts.map +1 -1
  410. package/dist/components/Touch/Touch.js +2 -2
  411. package/dist/components/Touch/Touch.js.map +1 -1
  412. package/dist/components/Typography/Caption/Caption.d.ts.map +1 -1
  413. package/dist/components/Typography/DisplayTitle/DisplayTitle.d.ts.map +1 -1
  414. package/dist/components/Typography/EllipsisText/EllipsisText.d.ts.map +1 -1
  415. package/dist/components/Typography/Footnote/Footnote.d.ts.map +1 -1
  416. package/dist/components/Typography/Headline/Headline.d.ts.map +1 -1
  417. package/dist/components/Typography/Paragraph/Paragraph.d.ts.map +1 -1
  418. package/dist/components/Typography/Subhead/Subhead.d.ts.map +1 -1
  419. package/dist/components/Typography/Text/Text.d.ts.map +1 -1
  420. package/dist/components/Typography/Title/Title.d.ts.map +1 -1
  421. package/dist/components/Typography/Typography.d.ts.map +1 -1
  422. package/dist/components/UnstyledTextField/UnstyledTextField.d.ts.map +1 -1
  423. package/dist/components/UsersStack/UsersStack.d.ts +1 -1
  424. package/dist/components/UsersStack/UsersStack.d.ts.map +1 -1
  425. package/dist/components/UsersStack/UsersStack.js +5 -9
  426. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  427. package/dist/components/View/View.d.ts.map +1 -1
  428. package/dist/components/View/utils.d.ts.map +1 -1
  429. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  430. package/dist/components/WriteBar/WriteBar.d.ts.map +1 -1
  431. package/dist/components/WriteBarIcon/WriteBarIcon.d.ts.map +1 -1
  432. package/dist/components.css +1 -1
  433. package/dist/components.css.map +1 -1
  434. package/dist/context/CalendarDirectionContext.d.ts +1 -1
  435. package/dist/context/CalendarDirectionContext.d.ts.map +1 -1
  436. package/dist/context/CalendarDirectionContext.js.map +1 -1
  437. package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
  438. package/dist/cssm/components/Accordion/Accordion.module.css +6 -6
  439. package/dist/cssm/components/ActionSheet/ActionSheet.js +1 -1
  440. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  441. package/dist/cssm/components/ActionSheet/ActionSheet.module.css +9 -9
  442. package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js +7 -3
  443. package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js.map +1 -1
  444. package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js +7 -3
  445. package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js.map +1 -1
  446. package/dist/cssm/components/ActionSheet/types.js.map +1 -1
  447. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.module.css +18 -18
  448. package/dist/cssm/components/Alert/Alert.js +12 -92
  449. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  450. package/dist/cssm/components/Alert/Alert.module.css +27 -29
  451. package/dist/cssm/components/Alert/AlertBase.js +111 -0
  452. package/dist/cssm/components/Alert/AlertBase.js.map +1 -0
  453. package/dist/cssm/components/Alert/AlertTypography.js.map +1 -1
  454. package/dist/cssm/components/AppRoot/AppRoot.module.css +2 -2
  455. package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js +1 -1
  456. package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js.map +1 -1
  457. package/dist/cssm/components/AppRoot/ScrollContext.js +129 -37
  458. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  459. package/dist/cssm/components/AspectRatio/AspectRatio.module.css +2 -2
  460. package/dist/cssm/components/Avatar/Avatar.module.css +1 -1
  461. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
  462. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +4 -1
  463. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  464. package/dist/cssm/components/Banner/Banner.module.css +19 -19
  465. package/dist/cssm/components/Button/Button.module.css +11 -11
  466. package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -0
  467. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  468. package/dist/cssm/components/Calendar/Calendar.js +96 -92
  469. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  470. package/dist/cssm/components/Calendar/Calendar.module.css +8 -8
  471. package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -3
  472. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  473. package/dist/cssm/components/CalendarDay/CalendarDay.module.css +11 -11
  474. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  475. package/dist/cssm/components/CalendarDays/CalendarDays.module.css +7 -7
  476. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +1 -3
  477. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  478. package/dist/cssm/components/CalendarHeader/CalendarHeader.module.css +4 -4
  479. package/dist/cssm/components/CalendarRange/CalendarRange.js +106 -110
  480. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  481. package/dist/cssm/components/CalendarRange/CalendarRange.module.css +5 -5
  482. package/dist/cssm/components/CalendarTime/CalendarTime.js +16 -13
  483. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  484. package/dist/cssm/components/CalendarTime/CalendarTime.module.css +1 -1
  485. package/dist/cssm/components/Card/Card.module.css +7 -7
  486. package/dist/cssm/components/CardGrid/CardGrid.module.css +3 -3
  487. package/dist/cssm/components/CardScroll/CardScroll.js +30 -28
  488. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  489. package/dist/cssm/components/CardScroll/CardScroll.module.css +16 -16
  490. package/dist/cssm/components/CarouselBase/CarouselBase.js +71 -44
  491. package/dist/cssm/components/CarouselBase/CarouselBase.js.map +1 -1
  492. package/dist/cssm/components/CarouselBase/CarouselBase.module.css +11 -11
  493. package/dist/cssm/components/CarouselBase/helpers.js +70 -44
  494. package/dist/cssm/components/CarouselBase/helpers.js.map +1 -1
  495. package/dist/cssm/components/Cell/Cell.module.css +18 -2
  496. package/dist/cssm/components/Cell/CellDragger/CellDragger.module.css +2 -2
  497. package/dist/cssm/components/CellButton/CellButton.module.css +8 -8
  498. package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js +20 -0
  499. package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
  500. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +15 -0
  501. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
  502. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
  503. package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
  504. package/dist/cssm/components/ChipsInputBase/Chip/Chip.module.css +16 -16
  505. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +1 -0
  506. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  507. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +12 -12
  508. package/dist/cssm/components/ChipsInputBase/helpers.js +4 -0
  509. package/dist/cssm/components/ChipsInputBase/helpers.js.map +1 -1
  510. package/dist/cssm/components/ChipsInputBase/types.js.map +1 -1
  511. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +8 -2
  512. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  513. package/dist/cssm/components/ChipsSelect/ChipsSelect.module.css +1 -1
  514. package/dist/cssm/components/ChipsSelect/useChipsSelect.js +9 -3
  515. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
  516. package/dist/cssm/components/Clickable/Clickable.js +29 -22
  517. package/dist/cssm/components/Clickable/Clickable.js.map +1 -1
  518. package/dist/cssm/components/Clickable/Clickable.module.css +1 -1
  519. package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
  520. package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
  521. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -2
  522. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  523. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +12 -7
  524. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  525. package/dist/cssm/components/ContentBadge/ContentBadge.module.css +7 -7
  526. package/dist/cssm/components/ContentCard/ContentCard.js +5 -4
  527. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  528. package/dist/cssm/components/ContentCard/ContentCard.module.css +6 -6
  529. package/dist/cssm/components/Counter/Counter.module.css +4 -4
  530. package/dist/cssm/components/CustomScrollView/CustomScrollView.module.css +2 -2
  531. package/dist/cssm/components/CustomSelect/CustomSelect.js +108 -70
  532. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  533. package/dist/cssm/components/CustomSelect/CustomSelect.module.css +2 -2
  534. package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +13 -13
  535. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -0
  536. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  537. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
  538. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +9 -9
  539. package/dist/cssm/components/DateInput/DateInput.js +112 -81
  540. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  541. package/dist/cssm/components/DateInput/DateInput.module.css +40 -6
  542. package/dist/cssm/components/DateInput/hooks.js +61 -0
  543. package/dist/cssm/components/DateInput/hooks.js.map +1 -0
  544. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +107 -82
  545. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  546. package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +3 -3
  547. package/dist/cssm/components/DirectionProvider/DirectionProvider.js +15 -0
  548. package/dist/cssm/components/DirectionProvider/DirectionProvider.js.map +1 -0
  549. package/dist/cssm/components/DropZone/DropZone.module.css +2 -2
  550. package/dist/cssm/components/FixedLayout/FixedLayout.module.css +3 -3
  551. package/dist/cssm/components/Flex/Flex.js +3 -5
  552. package/dist/cssm/components/Flex/Flex.js.map +1 -1
  553. package/dist/cssm/components/Flex/Flex.module.css +40 -23
  554. package/dist/cssm/components/FloatingArrow/FloatingArrow.module.css +1 -1
  555. package/dist/cssm/components/Footer/Footer.module.css +1 -1
  556. package/dist/cssm/components/FormField/FormField.module.css +24 -24
  557. package/dist/cssm/components/FormItem/FormItem.module.css +11 -10
  558. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
  559. package/dist/cssm/components/GridAvatar/GridAvatar.module.css +2 -2
  560. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
  561. package/dist/cssm/components/Group/Group.module.css +16 -16
  562. package/dist/cssm/components/Header/Header.module.css +6 -6
  563. package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +3 -3
  564. package/dist/cssm/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +2 -2
  565. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +28 -23
  566. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  567. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
  568. package/dist/cssm/components/IconButton/IconButton.module.css +11 -11
  569. package/dist/cssm/components/ImageBase/ImageBase.js +5 -4
  570. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  571. package/dist/cssm/components/ImageBase/ImageBase.module.css +15 -6
  572. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
  573. package/dist/cssm/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
  574. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
  575. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  576. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
  577. package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
  578. package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
  579. package/dist/cssm/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
  580. package/dist/cssm/components/InfoRow/InfoRow.module.css +3 -3
  581. package/dist/cssm/components/Input/Input.module.css +5 -5
  582. package/dist/cssm/components/InputLike/InputLike.module.css +3 -3
  583. package/dist/cssm/components/Link/Link.module.css +6 -6
  584. package/dist/cssm/components/Mark/Mark.module.css +2 -2
  585. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
  586. package/dist/cssm/components/ModalCard/ModalCard.js +3 -11
  587. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  588. package/dist/cssm/components/ModalCard/ModalCard.module.css +4 -4
  589. package/dist/cssm/components/ModalCard/ModalCardInternal.js +3 -2
  590. package/dist/cssm/components/ModalCard/ModalCardInternal.js.map +1 -1
  591. package/dist/cssm/components/ModalCard/types.js.map +1 -1
  592. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +30 -7
  593. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  594. package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +7 -7
  595. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +5 -6
  596. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  597. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.module.css +0 -29
  598. package/dist/cssm/components/ModalOutlet/ModalOutlet.module.css +1 -1
  599. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js +24 -0
  600. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
  601. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.module.css +31 -0
  602. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js +16 -0
  603. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
  604. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
  605. package/dist/cssm/components/ModalOverlay/ModalOverlay.module.css +2 -2
  606. package/dist/cssm/components/ModalPage/ModalPage.js +3 -11
  607. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  608. package/dist/cssm/components/ModalPage/ModalPage.module.css +15 -16
  609. package/dist/cssm/components/ModalPage/ModalPageBase.js +49 -0
  610. package/dist/cssm/components/ModalPage/ModalPageBase.js.map +1 -0
  611. package/dist/cssm/components/ModalPage/ModalPageInternal.js +21 -32
  612. package/dist/cssm/components/ModalPage/ModalPageInternal.js.map +1 -1
  613. package/dist/cssm/components/ModalPage/types.js.map +1 -1
  614. package/dist/cssm/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
  615. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
  616. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  617. package/dist/cssm/components/ModalRoot/useModalManager.js +12 -3
  618. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  619. package/dist/cssm/components/ModalRoot/useModalRootContext.js +1 -0
  620. package/dist/cssm/components/ModalRoot/useModalRootContext.js.map +1 -1
  621. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +20 -7
  622. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  623. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.module.css +1 -1
  624. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js +13 -4
  625. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
  626. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
  627. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
  628. package/dist/cssm/components/Pagination/Pagination.js +5 -2
  629. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  630. package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
  631. package/dist/cssm/components/Pagination/PaginationPage/PaginationPage.module.css +9 -9
  632. package/dist/cssm/components/Panel/Panel.module.css +3 -3
  633. package/dist/cssm/components/PanelHeader/PanelHeader.module.css +30 -30
  634. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
  635. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  636. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +16 -8
  637. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
  638. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
  639. package/dist/cssm/components/Placeholder/Placeholder.module.css +3 -3
  640. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
  641. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  642. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +9 -2
  643. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  644. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
  645. package/dist/cssm/components/Popover/Popover.js +4 -4
  646. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  647. package/dist/cssm/components/Popover/Popover.module.css +1 -1
  648. package/dist/cssm/components/Popover/usePopover.js +62 -44
  649. package/dist/cssm/components/Popover/usePopover.js.map +1 -1
  650. package/dist/cssm/components/Popper/Popper.js +15 -5
  651. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  652. package/dist/cssm/components/Progress/Progress.js +29 -9
  653. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  654. package/dist/cssm/components/Progress/Progress.module.css +20 -9
  655. package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +14 -14
  656. package/dist/cssm/components/Radio/Radio.module.css +1 -1
  657. package/dist/cssm/components/Radio/RadioInput/RadioInput.module.css +1 -1
  658. package/dist/cssm/components/RadioGroup/RadioGroup.module.css +1 -1
  659. package/dist/cssm/components/Removable/Removable.js +8 -4
  660. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  661. package/dist/cssm/components/Removable/Removable.module.css +19 -6
  662. package/dist/cssm/components/RichCell/RichCell.module.css +10 -10
  663. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
  664. package/dist/cssm/components/Root/Root.module.css +10 -10
  665. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -0
  666. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  667. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.module.css +12 -12
  668. package/dist/cssm/components/ScrollArrow/ScrollArrow.js +4 -1
  669. package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
  670. package/dist/cssm/components/ScrollArrow/ScrollArrow.module.css +15 -14
  671. package/dist/cssm/components/Search/Search.js +7 -2
  672. package/dist/cssm/components/Search/Search.js.map +1 -1
  673. package/dist/cssm/components/Search/Search.module.css +44 -32
  674. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +10 -7
  675. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  676. package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +16 -7
  677. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +14 -14
  678. package/dist/cssm/components/Select/Select.module.css +15 -15
  679. package/dist/cssm/components/SelectionControl/SelectionControl.module.css +2 -2
  680. package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
  681. package/dist/cssm/components/Separator/Separator.module.css +3 -3
  682. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +18 -16
  683. package/dist/cssm/components/SimpleGrid/SimpleGrid.module.css +2 -2
  684. package/dist/cssm/components/Skeleton/Skeleton.module.css +8 -8
  685. package/dist/cssm/components/Slider/Slider.js +20 -17
  686. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  687. package/dist/cssm/components/Slider/Slider.module.css +25 -4
  688. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +5 -1
  689. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  690. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.module.css +8 -8
  691. package/dist/cssm/components/Snackbar/Snackbar.js +6 -3
  692. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  693. package/dist/cssm/components/Snackbar/Snackbar.module.css +23 -6
  694. package/dist/cssm/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
  695. package/dist/cssm/components/Snackbar/utils.js +11 -8
  696. package/dist/cssm/components/Snackbar/utils.js.map +1 -1
  697. package/dist/cssm/components/Spacing/Spacing.module.css +1 -1
  698. package/dist/cssm/components/Spinner/Spinner.module.css +2 -2
  699. package/dist/cssm/components/SplitCol/SplitCol.module.css +9 -9
  700. package/dist/cssm/components/SplitLayout/SplitLayout.module.css +2 -2
  701. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
  702. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -1
  703. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  704. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +10 -6
  705. package/dist/cssm/components/Switch/Switch.js +4 -1
  706. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  707. package/dist/cssm/components/Switch/Switch.module.css +25 -17
  708. package/dist/cssm/components/Tabbar/Tabbar.module.css +5 -5
  709. package/dist/cssm/components/TabbarItem/TabbarItem.module.css +16 -16
  710. package/dist/cssm/components/Tabs/Tabs.js +3 -1
  711. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  712. package/dist/cssm/components/Tabs/Tabs.module.css +1 -1
  713. package/dist/cssm/components/TabsItem/TabsItem.module.css +21 -20
  714. package/dist/cssm/components/Tappable/Tappable.module.css +7 -7
  715. package/dist/cssm/components/Textarea/Textarea.module.css +7 -3
  716. package/dist/cssm/components/ToolButton/ToolButton.module.css +7 -7
  717. package/dist/cssm/components/Tooltip/Tooltip.js +7 -80
  718. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  719. package/dist/cssm/components/Tooltip/useTooltip.js +97 -0
  720. package/dist/cssm/components/Tooltip/useTooltip.js.map +1 -0
  721. package/dist/cssm/components/TooltipBase/TooltipBase.module.css +9 -9
  722. package/dist/cssm/components/Touch/Touch.js +2 -2
  723. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  724. package/dist/cssm/components/Typography/Caption/Caption.module.css +96 -96
  725. package/dist/cssm/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
  726. package/dist/cssm/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
  727. package/dist/cssm/components/Typography/Footnote/Footnote.module.css +32 -32
  728. package/dist/cssm/components/Typography/Headline/Headline.module.css +20 -20
  729. package/dist/cssm/components/Typography/Paragraph/Paragraph.module.css +16 -16
  730. package/dist/cssm/components/Typography/Subhead/Subhead.module.css +16 -16
  731. package/dist/cssm/components/Typography/Text/Text.module.css +16 -16
  732. package/dist/cssm/components/Typography/Title/Title.module.css +48 -48
  733. package/dist/cssm/components/Typography/Typography.module.css +1 -1
  734. package/dist/cssm/components/UnstyledTextField/UnstyledTextField.module.css +5 -5
  735. package/dist/cssm/components/UsersStack/UsersStack.js +4 -7
  736. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  737. package/dist/cssm/components/UsersStack/UsersStack.module.css +4 -4
  738. package/dist/cssm/components/View/View.module.css +8 -8
  739. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.module.css +10 -10
  740. package/dist/cssm/components/WriteBar/WriteBar.module.css +10 -11
  741. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
  742. package/dist/cssm/context/CalendarDirectionContext.js.map +1 -1
  743. package/dist/cssm/helpers/getValueByKey.js +17 -0
  744. package/dist/cssm/helpers/getValueByKey.js.map +1 -0
  745. package/dist/cssm/hooks/useAutoDetectDirection.js +21 -0
  746. package/dist/cssm/hooks/useAutoDetectDirection.js.map +1 -0
  747. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  748. package/dist/cssm/hooks/useConfigDirection.js +7 -0
  749. package/dist/cssm/hooks/useConfigDirection.js.map +1 -0
  750. package/dist/cssm/hooks/useDateInput.js +3 -3
  751. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  752. package/dist/cssm/hooks/useFloatingElement.js +70 -0
  753. package/dist/cssm/hooks/useFloatingElement.js.map +1 -0
  754. package/dist/cssm/hooks/useFocusVisible.js +10 -1
  755. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  756. package/dist/cssm/hooks/useReferenceElement.js +13 -0
  757. package/dist/cssm/hooks/useReferenceElement.js.map +1 -0
  758. package/dist/cssm/hooks/useTabsNavigation.js +3 -3
  759. package/dist/cssm/hooks/useTabsNavigation.js.map +1 -1
  760. package/dist/cssm/hooks/useTodayDate.js +4 -4
  761. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  762. package/dist/cssm/index.js +6 -1
  763. package/dist/cssm/index.js.map +1 -1
  764. package/dist/cssm/lib/SSR.js +2 -1
  765. package/dist/cssm/lib/SSR.js.map +1 -1
  766. package/dist/cssm/lib/date.js +21 -0
  767. package/dist/cssm/lib/date.js.map +1 -1
  768. package/dist/cssm/lib/direction/index.js +3 -0
  769. package/dist/cssm/lib/direction/index.js.map +1 -0
  770. package/dist/cssm/lib/dom.js +6 -0
  771. package/dist/cssm/lib/dom.js.map +1 -1
  772. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  773. package/dist/cssm/lib/floating/customResizeObserver.js +2 -5
  774. package/dist/cssm/lib/floating/customResizeObserver.js.map +1 -1
  775. package/dist/cssm/lib/floating/functions.js +1 -1
  776. package/dist/cssm/lib/floating/functions.js.map +1 -1
  777. package/dist/cssm/lib/floating/types/component.js.map +1 -1
  778. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
  779. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  780. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
  781. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  782. package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
  783. package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
  784. package/dist/cssm/lib/object.js +9 -0
  785. package/dist/cssm/lib/object.js.map +1 -0
  786. package/dist/cssm/lib/select.js.map +1 -1
  787. package/dist/cssm/lib/sheet/controllers/BottomSheetController.js +13 -23
  788. package/dist/cssm/lib/sheet/controllers/BottomSheetController.js.map +1 -1
  789. package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js +4 -5
  790. package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
  791. package/dist/cssm/lib/tokens/TokensClassProvider.module.css +1 -1
  792. package/dist/cssm/styles/common.css +2 -2
  793. package/dist/cssm/styles/constants.css +2 -2
  794. package/dist/cssm/styles/themes.css +22 -5
  795. package/dist/helpers/getMergedSameEventsByProps.d.ts.map +1 -1
  796. package/dist/helpers/getValueByKey.d.ts +5 -0
  797. package/dist/helpers/getValueByKey.d.ts.map +1 -0
  798. package/dist/helpers/getValueByKey.js +17 -0
  799. package/dist/helpers/getValueByKey.js.map +1 -0
  800. package/dist/helpers/math.d.ts.map +1 -1
  801. package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts.map +1 -1
  802. package/dist/hooks/useAutoDetectColorScheme.d.ts.map +1 -1
  803. package/dist/hooks/useAutoDetectDirection.d.ts +3 -0
  804. package/dist/hooks/useAutoDetectDirection.d.ts.map +1 -0
  805. package/dist/hooks/useAutoDetectDirection.js +21 -0
  806. package/dist/hooks/useAutoDetectDirection.js.map +1 -0
  807. package/dist/hooks/useBooleanState.d.ts.map +1 -1
  808. package/dist/hooks/useCalendar.d.ts +1 -1
  809. package/dist/hooks/useCalendar.d.ts.map +1 -1
  810. package/dist/hooks/useCalendar.js.map +1 -1
  811. package/dist/hooks/useConfigDirection.d.ts +3 -0
  812. package/dist/hooks/useConfigDirection.d.ts.map +1 -0
  813. package/dist/hooks/useConfigDirection.js +7 -0
  814. package/dist/hooks/useConfigDirection.js.map +1 -0
  815. package/dist/hooks/useDateInput.d.ts +4 -4
  816. package/dist/hooks/useDateInput.d.ts.map +1 -1
  817. package/dist/hooks/useDateInput.js +3 -3
  818. package/dist/hooks/useDateInput.js.map +1 -1
  819. package/dist/hooks/useDraggableWithDomApi/autoScroll.d.ts.map +1 -1
  820. package/dist/hooks/useDraggableWithDomApi/useDraggableWithDomApi.d.ts.map +1 -1
  821. package/dist/hooks/useDraggableWithDomApi/utils.d.ts.map +1 -1
  822. package/dist/hooks/useFloatingElement.d.ts +26 -0
  823. package/dist/hooks/useFloatingElement.d.ts.map +1 -0
  824. package/dist/hooks/useFloatingElement.js +71 -0
  825. package/dist/hooks/useFloatingElement.js.map +1 -0
  826. package/dist/hooks/useFocusTrap.d.ts.map +1 -1
  827. package/dist/hooks/useFocusVisible.d.ts +9 -1
  828. package/dist/hooks/useFocusVisible.d.ts.map +1 -1
  829. package/dist/hooks/useFocusVisible.js +10 -1
  830. package/dist/hooks/useFocusVisible.js.map +1 -1
  831. package/dist/hooks/useGlobalEscKeyDown.d.ts.map +1 -1
  832. package/dist/hooks/useGlobalOnClickOutside.d.ts.map +1 -1
  833. package/dist/hooks/useMutationObserver.d.ts.map +1 -1
  834. package/dist/hooks/useNativeFormResetListener.d.ts.map +1 -1
  835. package/dist/hooks/usePagination.d.ts.map +1 -1
  836. package/dist/hooks/usePatchChildren.d.ts.map +1 -1
  837. package/dist/hooks/useReferenceElement.d.ts +3 -0
  838. package/dist/hooks/useReferenceElement.d.ts.map +1 -0
  839. package/dist/hooks/useReferenceElement.js +13 -0
  840. package/dist/hooks/useReferenceElement.js.map +1 -0
  841. package/dist/hooks/useTabsNavigation.d.ts +1 -1
  842. package/dist/hooks/useTabsNavigation.d.ts.map +1 -1
  843. package/dist/hooks/useTabsNavigation.js +3 -3
  844. package/dist/hooks/useTabsNavigation.js.map +1 -1
  845. package/dist/hooks/useTodayDate.d.ts.map +1 -1
  846. package/dist/hooks/useTodayDate.js +4 -4
  847. package/dist/hooks/useTodayDate.js.map +1 -1
  848. package/dist/index.d.ts +9 -2
  849. package/dist/index.d.ts.map +1 -1
  850. package/dist/index.js +6 -1
  851. package/dist/index.js.map +1 -1
  852. package/dist/lib/SSR.d.ts +2 -0
  853. package/dist/lib/SSR.d.ts.map +1 -1
  854. package/dist/lib/SSR.js +2 -1
  855. package/dist/lib/SSR.js.map +1 -1
  856. package/dist/lib/accessibility.d.ts.map +1 -1
  857. package/dist/lib/animation/useCSSKeyframesAnimationController.d.ts.map +1 -1
  858. package/dist/lib/animation/useCSSTransition.d.ts.map +1 -1
  859. package/dist/lib/calendar.d.ts.map +1 -1
  860. package/dist/lib/callMultiple.d.ts.map +1 -1
  861. package/dist/lib/children.d.ts.map +1 -1
  862. package/dist/lib/createPortal.d.ts.map +1 -1
  863. package/dist/lib/date.d.ts +2 -0
  864. package/dist/lib/date.d.ts.map +1 -1
  865. package/dist/lib/date.js +21 -0
  866. package/dist/lib/date.js.map +1 -1
  867. package/dist/lib/direction/index.d.ts +2 -0
  868. package/dist/lib/direction/index.d.ts.map +1 -0
  869. package/dist/lib/direction/index.js +3 -0
  870. package/dist/lib/direction/index.js.map +1 -0
  871. package/dist/lib/dom.d.ts +1 -0
  872. package/dist/lib/dom.d.ts.map +1 -1
  873. package/dist/lib/dom.js +6 -0
  874. package/dist/lib/dom.js.map +1 -1
  875. package/dist/lib/floating/adapters.d.ts +1 -0
  876. package/dist/lib/floating/adapters.d.ts.map +1 -1
  877. package/dist/lib/floating/adapters.js.map +1 -1
  878. package/dist/lib/floating/customResizeObserver.d.ts +1 -1
  879. package/dist/lib/floating/customResizeObserver.d.ts.map +1 -1
  880. package/dist/lib/floating/customResizeObserver.js +2 -5
  881. package/dist/lib/floating/customResizeObserver.js.map +1 -1
  882. package/dist/lib/floating/functions.d.ts +8 -1
  883. package/dist/lib/floating/functions.d.ts.map +1 -1
  884. package/dist/lib/floating/functions.js +1 -1
  885. package/dist/lib/floating/functions.js.map +1 -1
  886. package/dist/lib/floating/types/component.d.ts +10 -0
  887. package/dist/lib/floating/types/component.d.ts.map +1 -1
  888. package/dist/lib/floating/types/component.js.map +1 -1
  889. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts +3 -1
  890. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts.map +1 -1
  891. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
  892. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  893. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
  894. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
  895. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  896. package/dist/lib/floating/useFloatingWithInteractions/useResolveTriggerType.d.ts.map +1 -1
  897. package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts +4 -0
  898. package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts.map +1 -0
  899. package/dist/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
  900. package/dist/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
  901. package/dist/lib/fx.d.ts.map +1 -1
  902. package/dist/lib/isRefObject.d.ts.map +1 -1
  903. package/dist/lib/object.d.ts +2 -0
  904. package/dist/lib/object.d.ts.map +1 -0
  905. package/dist/lib/object.js +9 -0
  906. package/dist/lib/object.js.map +1 -0
  907. package/dist/lib/rafSchd.d.ts.map +1 -1
  908. package/dist/lib/react/simulateReactInput.d.ts.map +1 -1
  909. package/dist/lib/select.d.ts +1 -0
  910. package/dist/lib/select.d.ts.map +1 -1
  911. package/dist/lib/select.js.map +1 -1
  912. package/dist/lib/sheet/controllers/BottomSheetController.d.ts.map +1 -1
  913. package/dist/lib/sheet/controllers/BottomSheetController.js +13 -23
  914. package/dist/lib/sheet/controllers/BottomSheetController.js.map +1 -1
  915. package/dist/lib/sheet/controllers/CSSTransitionController.d.ts.map +1 -1
  916. package/dist/lib/sheet/controllers/CSSTransitionController.js +4 -5
  917. package/dist/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
  918. package/dist/lib/sheet/useBottomSheet.d.ts.map +1 -1
  919. package/dist/lib/touch/functions.d.ts.map +1 -1
  920. package/dist/lib/utils.d.ts.map +1 -1
  921. package/dist/vkui.css +1 -1
  922. package/dist/vkui.css.map +1 -1
  923. package/package.json +5 -4
  924. package/src/components/Accordion/Accordion.module.css +6 -6
  925. package/src/components/Accordion/Accordion.tsx +2 -2
  926. package/src/components/ActionSheet/ActionSheet.module.css +9 -9
  927. package/src/components/ActionSheet/ActionSheet.tsx +5 -2
  928. package/src/components/ActionSheet/ActionSheetDropdownMenu.tsx +11 -3
  929. package/src/components/ActionSheet/ActionSheetDropdownSheet.tsx +11 -3
  930. package/src/components/ActionSheet/types.ts +4 -0
  931. package/src/components/ActionSheetItem/ActionSheetItem.module.css +17 -17
  932. package/src/components/Alert/Alert.module.css +25 -25
  933. package/src/components/Alert/Alert.tsx +33 -118
  934. package/src/components/Alert/AlertBase.tsx +156 -0
  935. package/src/components/Alert/AlertTypography.tsx +2 -1
  936. package/src/components/AppRoot/AppRoot.module.css +2 -2
  937. package/src/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.tsx +1 -1
  938. package/src/components/AppRoot/ScrollContext.tsx +162 -50
  939. package/src/components/AspectRatio/AspectRatio.module.css +2 -2
  940. package/src/components/Avatar/Avatar.module.css +1 -1
  941. package/src/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
  942. package/src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx +4 -1
  943. package/src/components/Banner/Banner.module.css +17 -17
  944. package/src/components/Button/Button.module.css +11 -11
  945. package/src/components/ButtonGroup/ButtonGroup.tsx +2 -0
  946. package/src/components/Calendar/Calendar.module.css +7 -7
  947. package/src/components/Calendar/Calendar.tsx +110 -100
  948. package/src/components/CalendarDay/CalendarDay.module.css +11 -11
  949. package/src/components/CalendarDay/CalendarDay.tsx +1 -3
  950. package/src/components/CalendarDays/CalendarDays.module.css +7 -7
  951. package/src/components/CalendarDays/CalendarDays.tsx +1 -1
  952. package/src/components/CalendarHeader/CalendarHeader.module.css +4 -4
  953. package/src/components/CalendarHeader/CalendarHeader.tsx +1 -3
  954. package/src/components/CalendarRange/CalendarRange.module.css +5 -5
  955. package/src/components/CalendarRange/CalendarRange.tsx +105 -109
  956. package/src/components/CalendarTime/CalendarTime.module.css +1 -1
  957. package/src/components/CalendarTime/CalendarTime.tsx +17 -9
  958. package/src/components/Card/Card.module.css +7 -7
  959. package/src/components/CardGrid/CardGrid.module.css +3 -3
  960. package/src/components/CardScroll/CardScroll.module.css +16 -16
  961. package/src/components/CardScroll/CardScroll.tsx +49 -29
  962. package/src/components/CarouselBase/CarouselBase.module.css +11 -11
  963. package/src/components/CarouselBase/CarouselBase.tsx +107 -44
  964. package/src/components/CarouselBase/helpers.ts +108 -46
  965. package/src/components/Cell/Cell.module.css +16 -2
  966. package/src/components/Cell/CellDragger/CellDragger.module.css +2 -2
  967. package/src/components/CellButton/CellButton.module.css +7 -7
  968. package/src/components/CellButtonGroup/CellButtonGroup.tsx +20 -0
  969. package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
  970. package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.tsx +21 -0
  971. package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
  972. package/src/components/ChipsInputBase/Chip/Chip.module.css +16 -16
  973. package/src/components/ChipsInputBase/ChipsInputBase.module.css +10 -10
  974. package/src/components/ChipsInputBase/ChipsInputBase.tsx +1 -0
  975. package/src/components/ChipsInputBase/helpers.ts +5 -1
  976. package/src/components/ChipsInputBase/types.ts +1 -1
  977. package/src/components/ChipsSelect/ChipsSelect.module.css +1 -1
  978. package/src/components/ChipsSelect/ChipsSelect.tsx +8 -1
  979. package/src/components/ChipsSelect/useChipsSelect.ts +12 -1
  980. package/src/components/Clickable/Clickable.module.css +1 -1
  981. package/src/components/Clickable/Clickable.tsx +37 -25
  982. package/src/components/ColorSchemeProvider/ColorSchemeProvider.tsx +1 -1
  983. package/src/components/ConfigProvider/ConfigProvider.tsx +4 -1
  984. package/src/components/ConfigProvider/ConfigProviderContext.tsx +29 -15
  985. package/src/components/ContentBadge/ContentBadge.module.css +7 -7
  986. package/src/components/ContentCard/ContentCard.module.css +6 -6
  987. package/src/components/ContentCard/ContentCard.tsx +9 -3
  988. package/src/components/Counter/Counter.module.css +4 -4
  989. package/src/components/CustomScrollView/CustomScrollView.module.css +2 -2
  990. package/src/components/CustomSelect/CustomSelect.module.css +2 -2
  991. package/src/components/CustomSelect/CustomSelect.tsx +153 -93
  992. package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +12 -12
  993. package/src/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
  994. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -0
  995. package/src/components/CustomSelectOption/CustomSelectOption.module.css +8 -8
  996. package/src/components/DateInput/DateInput.module.css +38 -5
  997. package/src/components/DateInput/DateInput.tsx +152 -89
  998. package/src/components/DateInput/hooks.ts +93 -0
  999. package/src/components/DateRangeInput/DateRangeInput.module.css +3 -3
  1000. package/src/components/DateRangeInput/DateRangeInput.tsx +127 -83
  1001. package/src/components/DirectionProvider/DirectionProvider.tsx +17 -0
  1002. package/src/components/DropZone/DropZone.module.css +2 -2
  1003. package/src/components/FixedLayout/FixedLayout.module.css +3 -3
  1004. package/src/components/Flex/Flex.module.css +26 -14
  1005. package/src/components/Flex/Flex.tsx +3 -6
  1006. package/src/components/FloatingArrow/FloatingArrow.module.css +1 -1
  1007. package/src/components/Footer/Footer.module.css +1 -1
  1008. package/src/components/FormField/FormField.module.css +24 -24
  1009. package/src/components/FormItem/FormItem.module.css +11 -10
  1010. package/src/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
  1011. package/src/components/GridAvatar/GridAvatar.module.css +2 -2
  1012. package/src/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
  1013. package/src/components/Group/Group.module.css +16 -16
  1014. package/src/components/Header/Header.module.css +5 -5
  1015. package/src/components/HorizontalCell/HorizontalCell.module.css +3 -3
  1016. package/src/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +2 -2
  1017. package/src/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
  1018. package/src/components/HorizontalScroll/HorizontalScroll.tsx +47 -19
  1019. package/src/components/IconButton/IconButton.module.css +9 -9
  1020. package/src/components/ImageBase/ImageBase.module.css +15 -6
  1021. package/src/components/ImageBase/ImageBase.tsx +16 -5
  1022. package/src/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
  1023. package/src/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
  1024. package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
  1025. package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.tsx +5 -4
  1026. package/src/components/ImageBase/ImageBaseOverlay/hooks.ts +31 -0
  1027. package/src/components/ImageBase/ImageBaseOverlay/types.ts +4 -0
  1028. package/src/components/InfoRow/InfoRow.module.css +3 -3
  1029. package/src/components/Input/Input.module.css +5 -5
  1030. package/src/components/InputLike/InputLike.module.css +3 -3
  1031. package/src/components/Link/Link.module.css +6 -6
  1032. package/src/components/Mark/Mark.module.css +2 -2
  1033. package/src/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
  1034. package/src/components/ModalCard/ModalCard.module.css +4 -4
  1035. package/src/components/ModalCard/ModalCard.tsx +3 -9
  1036. package/src/components/ModalCard/ModalCardInternal.tsx +2 -0
  1037. package/src/components/ModalCard/types.ts +2 -1
  1038. package/src/components/ModalCardBase/ModalCardBase.module.css +7 -7
  1039. package/src/components/ModalCardBase/ModalCardBase.tsx +50 -10
  1040. package/src/components/ModalDismissButton/ModalDismissButton.module.css +0 -28
  1041. package/src/components/ModalDismissButton/ModalDismissButton.tsx +11 -9
  1042. package/src/components/ModalOutlet/ModalOutlet.module.css +1 -1
  1043. package/src/components/ModalOutsideButton/ModalOutsideButton.module.css +30 -0
  1044. package/src/components/ModalOutsideButton/ModalOutsideButton.tsx +38 -0
  1045. package/src/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
  1046. package/src/components/ModalOutsideButtons/ModalOutsideButtons.tsx +14 -0
  1047. package/src/components/ModalOverlay/ModalOverlay.module.css +2 -2
  1048. package/src/components/ModalPage/ModalPage.module.css +15 -16
  1049. package/src/components/ModalPage/ModalPage.tsx +3 -10
  1050. package/src/components/ModalPage/ModalPageBase.tsx +92 -0
  1051. package/src/components/ModalPage/ModalPageInternal.tsx +23 -42
  1052. package/src/components/ModalPage/types.ts +12 -0
  1053. package/src/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
  1054. package/src/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
  1055. package/src/components/ModalRoot/types.ts +1 -0
  1056. package/src/components/ModalRoot/useModalManager.tsx +12 -5
  1057. package/src/components/ModalRoot/useModalRootContext.ts +1 -1
  1058. package/src/components/OnboardingTooltip/OnboardingTooltip.module.css +1 -1
  1059. package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +21 -12
  1060. package/src/components/OnboardingTooltip/OnboardingTooltipContainer.tsx +10 -1
  1061. package/src/components/OnboardingTooltip/OnboardingTooltipContext.tsx +11 -0
  1062. package/src/components/Pagination/Pagination.module.css +1 -1
  1063. package/src/components/Pagination/Pagination.tsx +5 -2
  1064. package/src/components/Pagination/PaginationPage/PaginationPage.module.css +8 -8
  1065. package/src/components/Panel/Panel.module.css +3 -3
  1066. package/src/components/PanelHeader/PanelHeader.module.css +27 -27
  1067. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +3 -0
  1068. package/src/components/PanelHeaderButton/PanelHeaderButton.module.css +14 -8
  1069. package/src/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
  1070. package/src/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
  1071. package/src/components/Placeholder/Placeholder.module.css +3 -3
  1072. package/src/components/PlatformProvider/PlatformProvider.tsx +1 -1
  1073. package/src/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
  1074. package/src/components/PopoutWrapper/PopoutWrapper.tsx +25 -2
  1075. package/src/components/Popover/Popover.module.css +1 -1
  1076. package/src/components/Popover/Popover.tsx +6 -4
  1077. package/src/components/Popover/usePopover.tsx +106 -85
  1078. package/src/components/Popper/Popper.tsx +17 -6
  1079. package/src/components/Progress/Progress.module.css +20 -9
  1080. package/src/components/Progress/Progress.tsx +38 -9
  1081. package/src/components/PullToRefresh/PullToRefresh.module.css +14 -14
  1082. package/src/components/Radio/Radio.module.css +1 -1
  1083. package/src/components/Radio/RadioInput/RadioInput.module.css +1 -1
  1084. package/src/components/RadioGroup/RadioGroup.module.css +1 -1
  1085. package/src/components/Removable/Removable.module.css +19 -6
  1086. package/src/components/Removable/Removable.tsx +10 -3
  1087. package/src/components/RichCell/RichCell.module.css +10 -10
  1088. package/src/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
  1089. package/src/components/Root/Root.module.css +10 -10
  1090. package/src/components/ScreenSpinner/ScreenSpinner.module.css +11 -11
  1091. package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -1
  1092. package/src/components/ScrollArrow/ScrollArrow.module.css +15 -14
  1093. package/src/components/ScrollArrow/ScrollArrow.tsx +10 -1
  1094. package/src/components/Search/Search.module.css +40 -28
  1095. package/src/components/Search/Search.tsx +16 -0
  1096. package/src/components/SegmentedControl/SegmentedControl.module.css +16 -7
  1097. package/src/components/SegmentedControl/SegmentedControl.tsx +11 -13
  1098. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +11 -11
  1099. package/src/components/Select/Select.module.css +14 -14
  1100. package/src/components/SelectionControl/SelectionControl.module.css +2 -2
  1101. package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
  1102. package/src/components/Separator/Separator.module.css +3 -3
  1103. package/src/components/SimpleCell/SimpleCell.module.css +18 -16
  1104. package/src/components/SimpleGrid/SimpleGrid.module.css +2 -2
  1105. package/src/components/Skeleton/Skeleton.module.css +8 -8
  1106. package/src/components/Slider/Slider.module.css +25 -4
  1107. package/src/components/Slider/Slider.tsx +23 -15
  1108. package/src/components/Slider/SliderThumb/SliderThumb.module.css +7 -7
  1109. package/src/components/Slider/SliderThumb/SliderThumb.tsx +5 -5
  1110. package/src/components/Snackbar/Snackbar.module.css +23 -6
  1111. package/src/components/Snackbar/Snackbar.tsx +7 -0
  1112. package/src/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
  1113. package/src/components/Snackbar/utils.ts +24 -6
  1114. package/src/components/Spacing/Spacing.module.css +1 -1
  1115. package/src/components/Spinner/Spinner.module.css +2 -2
  1116. package/src/components/SplitCol/SplitCol.module.css +9 -9
  1117. package/src/components/SplitLayout/SplitLayout.module.css +2 -2
  1118. package/src/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
  1119. package/src/components/SubnavigationButton/SubnavigationButton.module.css +9 -5
  1120. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -0
  1121. package/src/components/Switch/Switch.module.css +25 -17
  1122. package/src/components/Switch/Switch.tsx +4 -0
  1123. package/src/components/Tabbar/Tabbar.module.css +5 -5
  1124. package/src/components/TabbarItem/TabbarItem.module.css +16 -16
  1125. package/src/components/Tabs/Tabs.module.css +1 -1
  1126. package/src/components/Tabs/Tabs.tsx +3 -1
  1127. package/src/components/TabsItem/TabsItem.module.css +21 -20
  1128. package/src/components/Tappable/Tappable.module.css +7 -7
  1129. package/src/components/Textarea/Textarea.module.css +7 -3
  1130. package/src/components/ToolButton/ToolButton.module.css +7 -7
  1131. package/src/components/Tooltip/Tooltip.tsx +9 -142
  1132. package/src/components/Tooltip/useTooltip.tsx +168 -0
  1133. package/src/components/TooltipBase/TooltipBase.module.css +9 -9
  1134. package/src/components/Touch/Touch.tsx +35 -3
  1135. package/src/components/Typography/Caption/Caption.module.css +96 -96
  1136. package/src/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
  1137. package/src/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
  1138. package/src/components/Typography/Footnote/Footnote.module.css +32 -32
  1139. package/src/components/Typography/Headline/Headline.module.css +20 -20
  1140. package/src/components/Typography/Paragraph/Paragraph.module.css +16 -16
  1141. package/src/components/Typography/Subhead/Subhead.module.css +16 -16
  1142. package/src/components/Typography/Text/Text.module.css +16 -16
  1143. package/src/components/Typography/Title/Title.module.css +48 -48
  1144. package/src/components/Typography/Typography.module.css +1 -1
  1145. package/src/components/UnstyledTextField/UnstyledTextField.module.css +4 -4
  1146. package/src/components/UsersStack/UsersStack.module.css +4 -4
  1147. package/src/components/UsersStack/UsersStack.tsx +3 -7
  1148. package/src/components/View/View.module.css +8 -8
  1149. package/src/components/VisuallyHidden/VisuallyHidden.module.css +8 -8
  1150. package/src/components/WriteBar/WriteBar.module.css +10 -10
  1151. package/src/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
  1152. package/src/context/CalendarDirectionContext.ts +1 -1
  1153. package/src/helpers/getValueByKey.ts +25 -0
  1154. package/src/hooks/useAutoDetectDirection.ts +18 -0
  1155. package/src/hooks/useCalendar.ts +1 -1
  1156. package/src/hooks/useConfigDirection.ts +8 -0
  1157. package/src/hooks/useDateInput.ts +6 -6
  1158. package/src/hooks/useFloatingElement.tsx +172 -0
  1159. package/src/hooks/useFocusVisible.ts +12 -1
  1160. package/src/hooks/useReferenceElement.tsx +13 -0
  1161. package/src/hooks/useTabsNavigation.ts +5 -3
  1162. package/src/hooks/useTodayDate.ts +34 -31
  1163. package/src/index.ts +9 -2
  1164. package/src/lib/SSR.tsx +11 -2
  1165. package/src/lib/date.ts +29 -0
  1166. package/src/lib/direction/index.ts +1 -0
  1167. package/src/lib/dom.tsx +8 -0
  1168. package/src/lib/floating/adapters.ts +2 -0
  1169. package/src/lib/floating/customResizeObserver.ts +2 -1
  1170. package/src/lib/floating/functions.ts +15 -7
  1171. package/src/lib/floating/types/component.ts +10 -0
  1172. package/src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts +6 -1
  1173. package/src/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.ts +2 -3
  1174. package/src/lib/floating/useReferenceHiddenChangeCallback.ts +26 -0
  1175. package/src/lib/object.ts +14 -0
  1176. package/src/lib/select.ts +2 -0
  1177. package/src/lib/sheet/controllers/BottomSheetController.ts +4 -1
  1178. package/src/lib/sheet/controllers/CSSTransitionController.ts +7 -4
  1179. package/src/lib/tokens/TokensClassProvider.module.css +1 -1
  1180. package/src/styles/common.css +2 -2
  1181. package/src/styles/constants.css +2 -2
  1182. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts +0 -10
  1183. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts.map +0 -1
  1184. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -38
  1185. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
  1186. package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -39
  1187. package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
  1188. package/dist/cssm/hooks/useDirection.js +0 -55
  1189. package/dist/cssm/hooks/useDirection.js.map +0 -1
  1190. package/dist/cssm/lib/tokens/index.js +0 -5
  1191. package/dist/cssm/lib/tokens/index.js.map +0 -1
  1192. package/dist/hooks/useDirection.d.ts +0 -39
  1193. package/dist/hooks/useDirection.d.ts.map +0 -1
  1194. package/dist/hooks/useDirection.js +0 -55
  1195. package/dist/hooks/useDirection.js.map +0 -1
  1196. package/dist/lib/tokens/index.d.ts +0 -5
  1197. package/dist/lib/tokens/index.d.ts.map +0 -1
  1198. package/dist/lib/tokens/index.js +0 -5
  1199. package/dist/lib/tokens/index.js.map +0 -1
  1200. package/src/components/ModalCardBase/ModalCardBaseCloseButton.tsx +0 -51
  1201. package/src/hooks/useDirection.ts +0 -63
  1202. package/src/lib/tokens/index.ts +0 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/AppRoot/ScrollContext.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useDOM } from '../../lib/dom';\nimport type { HasChildren } from '../../types';\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: '',\n top: '',\n left: '',\n right: '',\n overscrollBehavior: '',\n overflowY: '',\n overflowX: '',\n });\n};\n\nconst getPageYOffsetWithoutKeyboardHeight = (window: Window) => {\n // Note: здесь расчёт на то, что `clientHeight` равен `window.innerHeight`.\n // Это достигается тем, что тегу `html` задали`height: 100%` и у него нет отступов сверху и снизу. Если есть отступы,\n // то надо задать `box-sizing: border-box`, чтобы они не учитывались.\n const diffOfClientHeightAndViewportHeight =\n window.document.documentElement.clientHeight - window.innerHeight;\n return window.pageYOffset - diffOfClientHeightAndViewportHeight;\n};\n\nexport type GetScrollOptions = {\n compensateKeyboardHeight?: boolean;\n};\n\nexport interface ScrollContextInterface {\n getScroll: (this: void, options?: GetScrollOptions) => { x: number; y: number };\n scrollTo: (this: void, x?: number, y?: number) => void;\n /**\n * Увеличивает счетчик блокировки прокрутки\n */\n incrementScrollLockCounter: (this: void) => void;\n /**\n * Уменьшает счетчик блокировки прокрутки\n */\n decrementScrollLockCounter: (this: void) => void;\n beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;\n}\n\nexport const ScrollContext: React.Context<ScrollContextInterface> =\n React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n incrementScrollLockCounter: noop,\n decrementScrollLockCounter: noop,\n });\n\nexport const useScroll = (): ScrollContextInterface => React.useContext(ScrollContext);\n\n/**\n * Управляет блокировкой окна в зависимости от внутреннего счетчика.\n * Если счетчик больше нуля, требуется заблокировать прокрутку\n */\nfunction useScrollLockController(enableScrollLock: () => void, disableScrollLock: () => void) {\n const countRef = React.useRef(0);\n\n const updateScrollLock = React.useCallback(() => {\n if (countRef.current > 0) {\n enableScrollLock();\n } else {\n disableScrollLock();\n }\n }, [enableScrollLock, disableScrollLock]);\n\n const incrementScrollLockCounter = React.useCallback(() => {\n countRef.current += 1;\n updateScrollLock();\n }, [updateScrollLock]);\n\n const decrementScrollLockCounter = React.useCallback(() => {\n countRef.current -= 1;\n updateScrollLock();\n }, [updateScrollLock]);\n\n return [incrementScrollLockCounter, decrementScrollLockCounter];\n}\n\nexport interface ScrollControllerProps extends HasChildren {\n elRef: React.RefObject<HTMLElement | null>;\n}\n\nexport const GlobalScrollController = ({ children }: ScrollControllerProps): React.ReactNode => {\n const { window, document } = useDOM();\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n (options = { compensateKeyboardHeight: true }) => ({\n x: window!.pageXOffset,\n y: options.compensateKeyboardHeight\n ? getPageYOffsetWithoutKeyboardHeight(window!)\n : window!.pageYOffset,\n }),\n [window],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n // Some iOS versions do not normalize scroll — do it manually.\n window!.scrollTo(\n x ? clamp(x, 0, document!.body.scrollWidth - window!.innerWidth) : 0,\n y ? clamp(y, 0, document!.body.scrollHeight - window!.innerHeight) : 0,\n );\n },\n [document, window],\n );\n\n const enableScrollLock = React.useCallback(() => {\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = window!.pageYOffset;\n const scrollX = window!.pageXOffset;\n const overflowY = window!.innerWidth > document!.documentElement.clientWidth ? 'scroll' : '';\n const overflowX = window!.innerHeight > document!.documentElement.clientHeight ? 'scroll' : '';\n\n Object.assign(document!.documentElement.style, { overscrollBehavior: 'none' });\n Object.assign(document!.body.style, {\n position: 'fixed',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overscrollBehavior: 'none',\n overflowY,\n overflowX,\n });\n }, [document, window]);\n\n const disableScrollLock = React.useCallback(() => {\n const scrollY = document!.body.style.top;\n const scrollX = document!.body.style.left;\n\n Object.assign(document!.documentElement.style, { overscrollBehavior: '' });\n clearDisableScrollStyle(document!.body);\n window!.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n }, [document, window]);\n\n const [incrementScrollLockCounter, decrementScrollLockCounter] = useScrollLockController(\n enableScrollLock,\n disableScrollLock,\n );\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n incrementScrollLockCounter,\n decrementScrollLockCounter,\n beforeScrollLockFnSetRef: beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, incrementScrollLockCounter, decrementScrollLockCounter],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\nexport const ElementScrollController = ({\n elRef,\n children,\n}: ScrollControllerProps): React.ReactNode => {\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n () => ({\n x: elRef.current?.scrollLeft ?? 0,\n y: elRef.current?.scrollTop ?? 0,\n }),\n [elRef],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n const el = elRef.current;\n // Some iOS versions do not normalize scroll — do it manually.\n el?.scrollTo(\n x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0,\n y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0,\n );\n },\n [elRef],\n );\n\n const enableScrollLock = React.useCallback(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = el.scrollTop;\n const scrollX = el.scrollLeft;\n const overflowY = el.scrollWidth > el.clientWidth ? 'scroll' : '';\n const overflowX = el.scrollHeight > el.clientHeight ? 'scroll' : '';\n\n Object.assign(el.style, {\n position: 'absolute',\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: '0',\n overflowY,\n overflowX,\n });\n }, [elRef]);\n\n const disableScrollLock = React.useCallback(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollY = el.style.top;\n const scrollX = el.style.left;\n\n clearDisableScrollStyle(el);\n el.scrollTo(-parseInt(scrollX || '0'), -parseInt(scrollY || '0'));\n }, [elRef]);\n\n const [incrementScrollLockCounter, decrementScrollLockCounter] = useScrollLockController(\n enableScrollLock,\n disableScrollLock,\n );\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n incrementScrollLockCounter,\n decrementScrollLockCounter,\n beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, incrementScrollLockCounter, decrementScrollLockCounter],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\n/**\n * Блокирует прокрутку окна\n *\n * @param enabled - если false то не будет блокировать\n */\nexport const useScrollLock = (enabled = true): void => {\n const { incrementScrollLockCounter, decrementScrollLockCounter } = useScroll();\n\n React.useEffect(() => {\n if (enabled) {\n incrementScrollLockCounter();\n return decrementScrollLockCounter;\n }\n\n return noop;\n }, [enabled, incrementScrollLockCounter, decrementScrollLockCounter]);\n};\n"],"names":["React","noop","clamp","useDOM","clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overscrollBehavior","overflowY","overflowX","getPageYOffsetWithoutKeyboardHeight","window","diffOfClientHeightAndViewportHeight","document","documentElement","clientHeight","innerHeight","pageYOffset","ScrollContext","createContext","getScroll","x","y","scrollTo","incrementScrollLockCounter","decrementScrollLockCounter","useScroll","useContext","useScrollLockController","enableScrollLock","disableScrollLock","countRef","useRef","updateScrollLock","useCallback","current","GlobalScrollController","children","beforeScrollLockFnSetRef","Set","options","compensateKeyboardHeight","pageXOffset","body","scrollWidth","innerWidth","scrollHeight","forEach","fn","scrollY","scrollX","clientWidth","parseInt","scrollController","useMemo","Provider","value","ElementScrollController","elRef","scrollLeft","scrollTop","el","useScrollLock","enabled","useEffect"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/AppRoot/ScrollContext.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useDOM } from '../../lib/dom';\nimport type { HasChildren } from '../../types';\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: '',\n top: '',\n left: '',\n right: '',\n overscrollBehavior: '',\n overflowY: '',\n overflowX: '',\n });\n};\n\nconst getPageYOffsetWithoutKeyboardHeight = (window: Window, scrollTop: number) => {\n // Note: здесь расчёт на то, что `clientHeight` равен `window.innerHeight`.\n // Это достигается тем, что тегу `html` задали`height: 100%` и у него нет отступов сверху и снизу. Если есть отступы,\n // то надо задать `box-sizing: border-box`, чтобы они не учитывались.\n const diffOfClientHeightAndViewportHeight =\n window.document.documentElement.clientHeight - window.innerHeight;\n return scrollTop - diffOfClientHeightAndViewportHeight;\n};\n\nexport type GetScrollOptions = {\n compensateKeyboardHeight?: boolean;\n};\n\nexport interface ScrollContextInterface {\n getScroll: (this: void, options?: GetScrollOptions) => { x: number; y: number };\n scrollTo: (this: void, x?: number, y?: number) => void;\n /**\n * Увеличивает счетчик блокировки прокрутки\n */\n incrementScrollLockCounter: (this: void) => void;\n /**\n * Уменьшает счетчик блокировки прокрутки\n */\n decrementScrollLockCounter: (this: void) => void;\n beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;\n}\n\nexport const ScrollContext: React.Context<ScrollContextInterface> =\n React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n incrementScrollLockCounter: noop,\n decrementScrollLockCounter: noop,\n });\n\nexport const useScroll = (): ScrollContextInterface => React.useContext(ScrollContext);\n\n/**\n * Управляет блокировкой окна в зависимости от внутреннего счетчика.\n * Если счетчик больше нуля, требуется заблокировать прокрутку\n */\nfunction useScrollLockController(enableScrollLock: () => void, disableScrollLock: () => void) {\n const countRef = React.useRef(0);\n\n const updateScrollLock = React.useCallback(() => {\n if (countRef.current > 0) {\n enableScrollLock();\n } else {\n disableScrollLock();\n }\n }, [enableScrollLock, disableScrollLock]);\n\n const incrementScrollLockCounter = React.useCallback(() => {\n countRef.current += 1;\n updateScrollLock();\n }, [updateScrollLock]);\n\n const decrementScrollLockCounter = React.useCallback(() => {\n countRef.current -= 1;\n updateScrollLock();\n }, [updateScrollLock]);\n\n return [incrementScrollLockCounter, decrementScrollLockCounter];\n}\n\nexport function useManualScroll(): Pick<ScrollContextInterface, 'scrollTo' | 'getScroll'> {\n const { scrollTo, getScroll } = React.useContext(ScrollContext);\n return React.useMemo(\n () => ({\n scrollTo,\n getScroll,\n }),\n [getScroll, scrollTo],\n );\n}\n\nexport interface ScrollControllerProps extends HasChildren {\n elRef: React.RefObject<HTMLElement | null>;\n}\n\nconst _scrollTo = ({\n x,\n y,\n scrollWidth,\n clientWidth,\n scrollHeight,\n clientHeight,\n scrollLockEnabled,\n lockedElement,\n elementToScroll,\n}: {\n x: number;\n y: number;\n scrollWidth: number;\n clientWidth: number;\n scrollHeight: number;\n clientHeight: number;\n scrollLockEnabled: boolean;\n lockedElement: HTMLElement;\n elementToScroll: Window | HTMLElement;\n}) => {\n // Some iOS versions do not normalize scroll — do it manually.\n const left = x ? clamp(x, 0, scrollWidth - clientWidth) : 0;\n const top = y ? clamp(y, 0, scrollHeight - clientHeight) : 0;\n\n if (scrollLockEnabled) {\n Object.assign(lockedElement.style, {\n left: `-${left}px`,\n top: `-${top}px`,\n });\n } else {\n elementToScroll.scrollTo({\n left,\n top,\n });\n }\n};\n\nconst _getScroll = ({\n xOffset,\n yOffset,\n element,\n scrollLockEnabled,\n customCalcY = (v) => v,\n}: {\n xOffset: number;\n yOffset: number;\n element: HTMLElement;\n scrollLockEnabled: boolean;\n customCalcY?: (scrollTop: number) => number;\n}) => {\n const elementStyles = element.style;\n const [scrollLeft, scrollTop] = scrollLockEnabled\n ? [-parseFloat(elementStyles.left || '0'), -parseFloat(elementStyles.top || '0')]\n : [xOffset, yOffset];\n return {\n x: scrollLeft,\n y: customCalcY(scrollTop),\n };\n};\n\nexport const GlobalScrollController = ({ children }: ScrollControllerProps): React.ReactNode => {\n const { window, document } = useDOM();\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n const scrollLockEnabledRef = React.useRef(false);\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(\n (options = { compensateKeyboardHeight: true }) => {\n if (!window || !document) {\n return { x: 0, y: 0 };\n }\n return _getScroll({\n xOffset: window.pageXOffset,\n yOffset: window.pageYOffset,\n element: document.documentElement,\n scrollLockEnabled: scrollLockEnabledRef.current,\n customCalcY: (scrollTop) =>\n options.compensateKeyboardHeight\n ? getPageYOffsetWithoutKeyboardHeight(window, scrollTop)\n : scrollTop,\n });\n },\n [document, window],\n );\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n if (!window || !document) {\n return;\n }\n _scrollTo({\n x,\n y,\n\n scrollWidth: document.body.scrollWidth,\n clientWidth: window.innerWidth,\n\n scrollHeight: document.body.scrollHeight,\n clientHeight: window.innerHeight,\n\n scrollLockEnabled: scrollLockEnabledRef.current,\n lockedElement: document.documentElement,\n elementToScroll: window,\n });\n },\n [document, window],\n );\n\n const enableScrollLock = React.useCallback(() => {\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n const { x: scrollX, y: scrollY } = getScroll({ compensateKeyboardHeight: false });\n const overflowY = window!.innerWidth > document!.documentElement.clientWidth ? 'scroll' : '';\n const overflowX = window!.innerHeight > document!.documentElement.clientHeight ? 'scroll' : '';\n\n Object.assign(document!.documentElement.style, {\n position: 'fixed',\n right: '0',\n overscrollBehavior: 'none',\n overflowY,\n overflowX,\n });\n\n scrollLockEnabledRef.current = true;\n\n scrollTo(scrollX, scrollY);\n }, [document, getScroll, scrollTo, window]);\n\n const disableScrollLock = React.useCallback(() => {\n const scrollData = getScroll({ compensateKeyboardHeight: false });\n clearDisableScrollStyle(document!.documentElement);\n scrollLockEnabledRef.current = false;\n\n scrollTo(scrollData.x, scrollData.y);\n }, [document, getScroll, scrollTo]);\n\n const [incrementScrollLockCounter, decrementScrollLockCounter] = useScrollLockController(\n enableScrollLock,\n disableScrollLock,\n );\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n incrementScrollLockCounter,\n decrementScrollLockCounter,\n beforeScrollLockFnSetRef: beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, incrementScrollLockCounter, decrementScrollLockCounter],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\nexport const ElementScrollController = ({\n elRef,\n children,\n}: ScrollControllerProps): React.ReactNode => {\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n const scrollLockEnabledRef = React.useRef(false);\n\n const getScroll = React.useCallback<ScrollContextInterface['getScroll']>(() => {\n const element = elRef.current;\n if (!element) {\n return { x: 0, y: 0 };\n }\n return _getScroll({\n xOffset: element.scrollLeft,\n yOffset: element.scrollTop,\n element: element,\n scrollLockEnabled: scrollLockEnabledRef.current,\n });\n }, [elRef]);\n\n const scrollTo = React.useCallback<ScrollContextInterface['scrollTo']>(\n (x = 0, y = 0) => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n _scrollTo({\n x,\n y,\n\n scrollWidth: el.scrollWidth,\n clientWidth: el.clientWidth,\n\n scrollHeight: el.scrollHeight,\n clientHeight: el.clientHeight,\n\n scrollLockEnabled: scrollLockEnabledRef.current,\n lockedElement: el,\n elementToScroll: el,\n });\n },\n [elRef],\n );\n\n const enableScrollLock = React.useCallback(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const { x: scrollX, y: scrollY } = getScroll();\n\n const overflowY = el.scrollWidth > el.clientWidth ? 'scroll' : '';\n const overflowX = el.scrollHeight > el.clientHeight ? 'scroll' : '';\n\n Object.assign(el.style, {\n position: 'absolute',\n right: '0',\n overflowY,\n overflowX,\n });\n scrollLockEnabledRef.current = true;\n\n scrollTo(scrollX, scrollY);\n }, [elRef, getScroll, scrollTo]);\n\n const disableScrollLock = React.useCallback(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollData = getScroll();\n clearDisableScrollStyle(el);\n scrollLockEnabledRef.current = false;\n\n scrollTo(scrollData.x, scrollData.y);\n }, [elRef, getScroll, scrollTo]);\n\n const [incrementScrollLockCounter, decrementScrollLockCounter] = useScrollLockController(\n enableScrollLock,\n disableScrollLock,\n );\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n incrementScrollLockCounter,\n decrementScrollLockCounter,\n beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, incrementScrollLockCounter, decrementScrollLockCounter],\n );\n\n return <ScrollContext.Provider value={scrollController}>{children}</ScrollContext.Provider>;\n};\n\n/**\n * Блокирует прокрутку окна\n *\n * @param enabled - если false то не будет блокировать\n */\nexport const useScrollLock = (enabled = true): void => {\n const { incrementScrollLockCounter, decrementScrollLockCounter } = useScroll();\n\n React.useEffect(() => {\n if (enabled) {\n incrementScrollLockCounter();\n return decrementScrollLockCounter;\n }\n\n return noop;\n }, [enabled, incrementScrollLockCounter, decrementScrollLockCounter]);\n};\n"],"names":["React","noop","clamp","useDOM","clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overscrollBehavior","overflowY","overflowX","getPageYOffsetWithoutKeyboardHeight","window","scrollTop","diffOfClientHeightAndViewportHeight","document","documentElement","clientHeight","innerHeight","ScrollContext","createContext","getScroll","x","y","scrollTo","incrementScrollLockCounter","decrementScrollLockCounter","useScroll","useContext","useScrollLockController","enableScrollLock","disableScrollLock","countRef","useRef","updateScrollLock","useCallback","current","useManualScroll","useMemo","_scrollTo","scrollWidth","clientWidth","scrollHeight","scrollLockEnabled","lockedElement","elementToScroll","_getScroll","xOffset","yOffset","element","customCalcY","v","elementStyles","scrollLeft","parseFloat","GlobalScrollController","children","beforeScrollLockFnSetRef","Set","scrollLockEnabledRef","options","compensateKeyboardHeight","pageXOffset","pageYOffset","body","innerWidth","forEach","fn","scrollX","scrollY","scrollData","scrollController","Provider","value","ElementScrollController","elRef","el","useScrollLock","enabled","useEffect"],"mappings":"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"}
@@ -6,11 +6,11 @@
6
6
  }
7
7
 
8
8
  .host::before {
9
- content: '';
10
- block-size: 0;
11
9
  display: block;
10
+ block-size: 0;
12
11
  -webkit-padding-after: calc((1 / var(--vkui_internal--aspect_ratio, 1)) * 100%);
13
12
  padding-block-end: calc((1 / var(--vkui_internal--aspect_ratio, 1)) * 100%);
13
+ content: '';
14
14
  }
15
15
 
16
16
  /* stylelint-disable-next-line selector-max-universal */
@@ -50,6 +50,6 @@
50
50
  font-family: var(--vkui--font_family_accent);
51
51
  font-weight: 600;
52
52
  line-height: 1;
53
- text-transform: uppercase;
54
53
  text-align: center;
54
+ text-transform: uppercase;
55
55
  }
@@ -1,21 +1,26 @@
1
1
  .host {
2
- inset-inline-end: 0;
3
2
  inset-block-end: 0;
3
+ inset-inline-end: 0;
4
4
  }
5
5
 
6
6
  .shifted {
7
- inset-inline-end: -2px;
8
7
  inset-block-end: -2px;
8
+ inset-inline-end: -2px;
9
9
  }
10
10
 
11
11
  .presetOnline,
12
12
  .presetOnlineMobile {
13
- inset-inline-end: 14%;
14
13
  inset-block-end: 14%;
14
+ inset-inline-end: 14%;
15
15
  color: var(--vkui--color_accent_green);
16
16
  transform: translate(50%, 50%);
17
17
  }
18
18
 
19
+ .rtl.presetOnline,
20
+ .rtl.presetOnlineMobile {
21
+ transform: translate(-50%, 50%);
22
+ }
23
+
19
24
  /**
20
25
  * Перебиваем свойства `ImageBaseBadge` для этих кейсов
21
26
  */
@@ -2,10 +2,13 @@
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
  import { classNames } from "@vkontakte/vkjs";
5
+ import { useConfigDirection } from "../../../hooks/useConfigDirection.js";
5
6
  import { getBadgeIconSizeByImageBaseSize, ImageBase, ImageBaseContext } from "../../ImageBase/ImageBase.js";
6
7
  import { Icon12Circle, Icon12OnlineMobile } from "./icons.js";
7
8
  import styles from "./AvatarBadge.module.css";
8
9
  export const AvatarBadgeWithPreset = ({ preset = 'online', className, ...restProps })=>{
10
+ const direction = useConfigDirection();
11
+ const isRtl = direction === 'rtl';
9
12
  const { size } = React.useContext(ImageBaseContext);
10
13
  const badgeSize = getBadgeIconSizeByImageBaseSize(size);
11
14
  const isOnlinePreset = preset === 'online';
@@ -13,7 +16,7 @@ export const AvatarBadgeWithPreset = ({ preset = 'online', className, ...restPro
13
16
  const Icon = isOnlinePreset ? Icon12Circle : Icon12OnlineMobile;
14
17
  return /*#__PURE__*/ _jsx(ImageBase.Badge, {
15
18
  background: "stroke",
16
- className: classNames(styles.host, presetClassName, className),
19
+ className: classNames(styles.host, isRtl && styles.rtl, presetClassName, className),
17
20
  ...restProps,
18
21
  children: /*#__PURE__*/ _jsx(Icon, {
19
22
  width: badgeSize,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport {\n getBadgeIconSizeByImageBaseSize,\n ImageBase,\n type ImageBaseBadgeProps,\n ImageBaseContext,\n} from '../../ImageBase/ImageBase';\nimport { Icon12Circle, Icon12OnlineMobile } from './icons';\nimport styles from './AvatarBadge.module.css';\n\nexport interface AvatarBadgeWithPresetProps\n extends Omit<ImageBaseBadgeProps, 'background' | 'children'> {\n /**\n * Использует предзаданные настройки.\n *\n * За каждым пресетом закреплена своя иконка и стили.\n */\n preset?: 'online' | 'online-mobile';\n}\n\nexport const AvatarBadgeWithPreset: React.FC<AvatarBadgeWithPresetProps> = ({\n preset = 'online',\n className,\n ...restProps\n}: AvatarBadgeWithPresetProps) => {\n const { size } = React.useContext(ImageBaseContext);\n const badgeSize = getBadgeIconSizeByImageBaseSize(size);\n const isOnlinePreset = preset === 'online';\n const presetClassName = isOnlinePreset ? styles.presetOnline : styles.presetOnlineMobile;\n const Icon = isOnlinePreset ? Icon12Circle : Icon12OnlineMobile;\n\n return (\n <ImageBase.Badge\n background=\"stroke\"\n className={classNames(styles.host, presetClassName, className)}\n {...restProps}\n >\n <Icon width={badgeSize} height={badgeSize} />\n </ImageBase.Badge>\n );\n};\n\nAvatarBadgeWithPreset.displayName = 'Avatar.BadgeWithPreset';\n"],"names":["React","classNames","getBadgeIconSizeByImageBaseSize","ImageBase","ImageBaseContext","Icon12Circle","Icon12OnlineMobile","styles","AvatarBadgeWithPreset","preset","className","restProps","size","useContext","badgeSize","isOnlinePreset","presetClassName","presetOnline","presetOnlineMobile","Icon","Badge","background","host","width","height","displayName"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SACEC,+BAA+B,EAC/BC,SAAS,EAETC,gBAAgB,QACX,+BAA4B;AACnC,SAASC,YAAY,EAAEC,kBAAkB,QAAQ,aAAU;AAC3D,OAAOC,YAAY,2BAA2B;AAY9C,OAAO,MAAMC,wBAA8D,CAAC,EAC1EC,SAAS,QAAQ,EACjBC,SAAS,EACT,GAAGC,WACwB;IAC3B,MAAM,EAAEC,IAAI,EAAE,GAAGZ,MAAMa,UAAU,CAACT;IAClC,MAAMU,YAAYZ,gCAAgCU;IAClD,MAAMG,iBAAiBN,WAAW;IAClC,MAAMO,kBAAkBD,iBAAiBR,OAAOU,YAAY,GAAGV,OAAOW,kBAAkB;IACxF,MAAMC,OAAOJ,iBAAiBV,eAAeC;IAE7C,qBACE,KAACH,UAAUiB,KAAK;QACdC,YAAW;QACXX,WAAWT,WAAWM,OAAOe,IAAI,EAAEN,iBAAiBN;QACnD,GAAGC,SAAS;kBAEb,cAAA,KAACQ;YAAKI,OAAOT;YAAWU,QAAQV;;;AAGtC,EAAE;AAEFN,sBAAsBiB,WAAW,GAAG"}
1
+ {"version":3,"sources":["../../../../../src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useConfigDirection } from '../../../hooks/useConfigDirection';\nimport {\n getBadgeIconSizeByImageBaseSize,\n ImageBase,\n type ImageBaseBadgeProps,\n ImageBaseContext,\n} from '../../ImageBase/ImageBase';\nimport { Icon12Circle, Icon12OnlineMobile } from './icons';\nimport styles from './AvatarBadge.module.css';\n\nexport interface AvatarBadgeWithPresetProps\n extends Omit<ImageBaseBadgeProps, 'background' | 'children'> {\n /**\n * Использует предзаданные настройки.\n *\n * За каждым пресетом закреплена своя иконка и стили.\n */\n preset?: 'online' | 'online-mobile';\n}\n\nexport const AvatarBadgeWithPreset: React.FC<AvatarBadgeWithPresetProps> = ({\n preset = 'online',\n className,\n ...restProps\n}: AvatarBadgeWithPresetProps) => {\n const direction = useConfigDirection();\n const isRtl = direction === 'rtl';\n const { size } = React.useContext(ImageBaseContext);\n const badgeSize = getBadgeIconSizeByImageBaseSize(size);\n const isOnlinePreset = preset === 'online';\n const presetClassName = isOnlinePreset ? styles.presetOnline : styles.presetOnlineMobile;\n const Icon = isOnlinePreset ? Icon12Circle : Icon12OnlineMobile;\n\n return (\n <ImageBase.Badge\n background=\"stroke\"\n className={classNames(styles.host, isRtl && styles.rtl, presetClassName, className)}\n {...restProps}\n >\n <Icon width={badgeSize} height={badgeSize} />\n </ImageBase.Badge>\n );\n};\n\nAvatarBadgeWithPreset.displayName = 'Avatar.BadgeWithPreset';\n"],"names":["React","classNames","useConfigDirection","getBadgeIconSizeByImageBaseSize","ImageBase","ImageBaseContext","Icon12Circle","Icon12OnlineMobile","styles","AvatarBadgeWithPreset","preset","className","restProps","direction","isRtl","size","useContext","badgeSize","isOnlinePreset","presetClassName","presetOnline","presetOnlineMobile","Icon","Badge","background","host","rtl","width","height","displayName"],"mappings":"AAAA;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,kBAAkB,QAAQ,uCAAoC;AACvE,SACEC,+BAA+B,EAC/BC,SAAS,EAETC,gBAAgB,QACX,+BAA4B;AACnC,SAASC,YAAY,EAAEC,kBAAkB,QAAQ,aAAU;AAC3D,OAAOC,YAAY,2BAA2B;AAY9C,OAAO,MAAMC,wBAA8D,CAAC,EAC1EC,SAAS,QAAQ,EACjBC,SAAS,EACT,GAAGC,WACwB;IAC3B,MAAMC,YAAYX;IAClB,MAAMY,QAAQD,cAAc;IAC5B,MAAM,EAAEE,IAAI,EAAE,GAAGf,MAAMgB,UAAU,CAACX;IAClC,MAAMY,YAAYd,gCAAgCY;IAClD,MAAMG,iBAAiBR,WAAW;IAClC,MAAMS,kBAAkBD,iBAAiBV,OAAOY,YAAY,GAAGZ,OAAOa,kBAAkB;IACxF,MAAMC,OAAOJ,iBAAiBZ,eAAeC;IAE7C,qBACE,KAACH,UAAUmB,KAAK;QACdC,YAAW;QACXb,WAAWV,WAAWO,OAAOiB,IAAI,EAAEX,SAASN,OAAOkB,GAAG,EAAEP,iBAAiBR;QACxE,GAAGC,SAAS;kBAEb,cAAA,KAACU;YAAKK,OAAOV;YAAWW,QAAQX;;;AAGtC,EAAE;AAEFR,sBAAsBoB,WAAW,GAAG"}
@@ -1,48 +1,48 @@
1
1
  .host {
2
- isolation: isolate;
3
- color: var(--vkui--color_text_primary);
4
2
  position: relative;
5
3
  display: flex;
6
4
  flex-flow: row nowrap;
7
5
  align-items: stretch;
8
6
  padding: var(--vkui_internal--banner-padding);
7
+ overflow: hidden;
8
+ color: var(--vkui--color_text_primary);
9
9
  background-color: var(--vkui--color_background_secondary);
10
10
  border-radius: var(--vkui--size_border_radius--regular);
11
- overflow: hidden;
11
+ isolation: isolate;
12
12
 
13
13
  --vkui_internal--banner-padding: 12px;
14
14
  }
15
15
 
16
16
  .host::before {
17
- content: '';
18
17
  position: absolute;
19
- inset-inline-start: 0;
20
18
  inset-block-start: 0;
19
+ inset-inline-start: 0;
20
+ z-index: var(--vkui_internal--z_index_banner_content);
21
+ box-sizing: border-box;
21
22
  display: block;
22
23
  inline-size: 100%;
23
24
  block-size: 100%;
25
+ pointer-events: none;
26
+ content: '';
24
27
  border: var(--vkui--size_border--regular) solid var(--vkui--color_image_border_alpha);
25
28
  border-radius: inherit;
26
- pointer-events: none;
27
- box-sizing: border-box;
28
- z-index: var(--vkui_internal--z_index_banner_content);
29
29
  }
30
30
 
31
31
  .before {
32
32
  position: relative;
33
+ z-index: var(--vkui_internal--z_index_banner_content);
33
34
  -webkit-margin-end: 12px;
34
35
  margin-inline-end: 12px;
35
- z-index: var(--vkui_internal--z_index_banner_content);
36
36
  }
37
37
 
38
38
  .content {
39
39
  position: relative;
40
- flex: 1;
40
+ z-index: var(--vkui_internal--z_index_banner_content);
41
41
  display: flex;
42
- justify-content: center;
42
+ flex: 1;
43
43
  flex-direction: column;
44
+ justify-content: center;
44
45
  min-inline-size: 0;
45
- z-index: var(--vkui_internal--z_index_banner_content);
46
46
  }
47
47
 
48
48
  .subtitle,
@@ -52,8 +52,8 @@
52
52
 
53
53
  .bg {
54
54
  position: absolute;
55
- inset-inline-start: 0;
56
55
  inset-block-start: 0;
56
+ inset-inline-start: 0;
57
57
  z-index: var(--vkui_internal--z_index_banner_background);
58
58
  }
59
59
 
@@ -78,18 +78,18 @@
78
78
  }
79
79
 
80
80
  .dismiss {
81
- -webkit-margin-before: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
82
- margin-block-start: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
83
- -webkit-margin-end: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
84
- margin-inline-end: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
85
- align-self: flex-start;
81
+ z-index: var(--vkui_internal--z_index_banner_hover);
86
82
  display: flex;
87
83
  flex-flow: row nowrap;
88
84
  align-content: center;
89
85
  align-items: center;
86
+ align-self: flex-start;
90
87
  justify-content: center;
88
+ -webkit-margin-before: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
89
+ margin-block-start: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
90
+ -webkit-margin-end: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
91
+ margin-inline-end: calc(-1 * (var(--vkui_internal--banner-padding) - 2px));
91
92
  color: var(--vkui--color_icon_secondary);
92
- z-index: var(--vkui_internal--z_index_banner_hover);
93
93
  }
94
94
 
95
95
  .actions {
@@ -1,14 +1,14 @@
1
1
  .host {
2
2
  position: relative;
3
- display: inline-block;
4
3
  box-sizing: border-box;
5
- border: 0;
4
+ display: inline-block;
5
+ min-inline-size: var(--vkui--size_button_minimum_width--regular);
6
+ max-inline-size: 100%;
6
7
  min-block-size: var(--vkui--size_button_small_height--compact);
7
- margin: 0;
8
8
  padding: 0;
9
+ margin: 0;
10
+ border: 0;
9
11
  border-radius: var(--vkui--size_border_radius--regular);
10
- max-inline-size: 100%;
11
- min-inline-size: var(--vkui--size_button_minimum_width--regular);
12
12
  transition:
13
13
  background-color 0.15s ease-out,
14
14
  color 0.15s ease-out;
@@ -40,19 +40,19 @@
40
40
 
41
41
  .stretched {
42
42
  display: block;
43
- inline-size: 100%;
44
43
  flex-grow: 1;
45
44
  flex-basis: 0;
45
+ inline-size: 100%;
46
46
  }
47
47
 
48
48
  .in {
49
+ box-sizing: border-box;
49
50
  display: flex;
50
51
  align-items: center;
51
52
  justify-content: center;
52
53
  inline-size: 100%;
53
54
  min-block-size: inherit;
54
55
  text-align: center;
55
- box-sizing: border-box;
56
56
  }
57
57
 
58
58
  .alignLeft .in {
@@ -77,10 +77,10 @@
77
77
  }
78
78
 
79
79
  .content {
80
- white-space: nowrap;
81
- text-overflow: ellipsis;
82
80
  overflow: hidden;
81
+ text-overflow: ellipsis;
83
82
  font-weight: var(--vkui--font_weight_accent2);
83
+ white-space: nowrap;
84
84
  }
85
85
 
86
86
  .sizeS .content:first-child {
@@ -183,13 +183,13 @@
183
183
  .singleIcon .before,
184
184
  .modeTertiary.singleIcon .after,
185
185
  .modeTertiary.singleIcon .before {
186
- margin-inline: auto;
187
186
  padding-inline: 0;
187
+ margin-inline: auto;
188
188
  }
189
189
 
190
190
  .modeLink {
191
- background: none;
192
191
  min-inline-size: initial;
192
+ background: none;
193
193
  }
194
194
 
195
195
  .modeLink .after,
@@ -25,5 +25,6 @@ const stylesAlign = {
25
25
  ...restProps
26
26
  });
27
27
  };
28
+ ButtonGroup.displayName = 'ButtonGroup';
28
29
 
29
30
  //# sourceMappingURL=ButtonGroup.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import { classNames } from '@vkontakte/vkjs';\nimport type { AlignType, HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './ButtonGroup.module.css';\n\nconst stylesMode = {\n vertical: styles.modeVertical,\n horizontal: styles.modeHorizontal,\n};\n\nconst stylesGap = {\n space: styles.gapSpace,\n s: styles.gapS,\n m: styles.gapM,\n};\n\nconst stylesAlign = {\n left: styles.alignLeft,\n center: styles.alignCenter,\n right: styles.alignRight,\n};\n\nexport interface ButtonGroupProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: 'vertical' | 'horizontal';\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: 'none' | 'space' | 's' | 'm';\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n /**\n * Горизонтальное выравнивание элементов внутри группы.\n */\n align?: AlignType;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = 'horizontal',\n gap = 'm',\n stretched = false,\n align = 'left' /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n ...restProps\n}: ButtonGroupProps): React.ReactNode => {\n return (\n <RootComponent\n baseClassName={classNames(\n styles.host,\n stylesMode[mode],\n gap !== 'none' && stylesGap[gap],\n stretched && styles.stretched,\n stylesAlign[align],\n )}\n role=\"group\"\n {...restProps}\n />\n );\n};\n"],"names":["classNames","RootComponent","styles","stylesMode","vertical","modeVertical","horizontal","modeHorizontal","stylesGap","space","gapSpace","s","gapS","m","gapM","stylesAlign","left","alignLeft","center","alignCenter","right","alignRight","ButtonGroup","mode","gap","stretched","align","restProps","baseClassName","host","role"],"mappings":";AAAA,SAASA,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,aAAa,QAAQ,oCAAiC;AAC/D,OAAOC,YAAY,2BAA2B;AAE9C,MAAMC,aAAa;IACjBC,UAAUF,OAAOG,YAAY;IAC7BC,YAAYJ,OAAOK,cAAc;AACnC;AAEA,MAAMC,YAAY;IAChBC,OAAOP,OAAOQ,QAAQ;IACtBC,GAAGT,OAAOU,IAAI;IACdC,GAAGX,OAAOY,IAAI;AAChB;AAEA,MAAMC,cAAc;IAClBC,MAAMd,OAAOe,SAAS;IACtBC,QAAQhB,OAAOiB,WAAW;IAC1BC,OAAOlB,OAAOmB,UAAU;AAC1B;AAuBA;;CAEC,GACD,OAAO,MAAMC,cAAc,CAAC,EAC1BC,OAAO,YAAY,EACnBC,MAAM,GAAG,EACTC,YAAY,KAAK,EACjBC,QAAQ,OAAO,4EAA4E,GAA7E,EACd,GAAGC,WACc;IACjB,qBACE,KAAC1B;QACC2B,eAAe5B,WACbE,OAAO2B,IAAI,EACX1B,UAAU,CAACoB,KAAK,EAChBC,QAAQ,UAAUhB,SAAS,CAACgB,IAAI,EAChCC,aAAavB,OAAOuB,SAAS,EAC7BV,WAAW,CAACW,MAAM;QAEpBI,MAAK;QACJ,GAAGH,SAAS;;AAGnB,EAAE"}
1
+ {"version":3,"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import { classNames } from '@vkontakte/vkjs';\nimport type { AlignType, HTMLAttributesWithRootRef } from '../../types';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport styles from './ButtonGroup.module.css';\n\nconst stylesMode = {\n vertical: styles.modeVertical,\n horizontal: styles.modeHorizontal,\n};\n\nconst stylesGap = {\n space: styles.gapSpace,\n s: styles.gapS,\n m: styles.gapM,\n};\n\nconst stylesAlign = {\n left: styles.alignLeft,\n center: styles.alignCenter,\n right: styles.alignRight,\n};\n\nexport interface ButtonGroupProps extends HTMLAttributesWithRootRef<HTMLDivElement> {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: 'vertical' | 'horizontal';\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: 'none' | 'space' | 's' | 'm';\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n /**\n * Горизонтальное выравнивание элементов внутри группы.\n */\n align?: AlignType;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = 'horizontal',\n gap = 'm',\n stretched = false,\n align = 'left' /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n ...restProps\n}: ButtonGroupProps): React.ReactNode => {\n return (\n <RootComponent\n baseClassName={classNames(\n styles.host,\n stylesMode[mode],\n gap !== 'none' && stylesGap[gap],\n stretched && styles.stretched,\n stylesAlign[align],\n )}\n role=\"group\"\n {...restProps}\n />\n );\n};\n\nButtonGroup.displayName = 'ButtonGroup';\n"],"names":["classNames","RootComponent","styles","stylesMode","vertical","modeVertical","horizontal","modeHorizontal","stylesGap","space","gapSpace","s","gapS","m","gapM","stylesAlign","left","alignLeft","center","alignCenter","right","alignRight","ButtonGroup","mode","gap","stretched","align","restProps","baseClassName","host","role","displayName"],"mappings":";AAAA,SAASA,UAAU,QAAQ,kBAAkB;AAE7C,SAASC,aAAa,QAAQ,oCAAiC;AAC/D,OAAOC,YAAY,2BAA2B;AAE9C,MAAMC,aAAa;IACjBC,UAAUF,OAAOG,YAAY;IAC7BC,YAAYJ,OAAOK,cAAc;AACnC;AAEA,MAAMC,YAAY;IAChBC,OAAOP,OAAOQ,QAAQ;IACtBC,GAAGT,OAAOU,IAAI;IACdC,GAAGX,OAAOY,IAAI;AAChB;AAEA,MAAMC,cAAc;IAClBC,MAAMd,OAAOe,SAAS;IACtBC,QAAQhB,OAAOiB,WAAW;IAC1BC,OAAOlB,OAAOmB,UAAU;AAC1B;AAuBA;;CAEC,GACD,OAAO,MAAMC,cAAc,CAAC,EAC1BC,OAAO,YAAY,EACnBC,MAAM,GAAG,EACTC,YAAY,KAAK,EACjBC,QAAQ,OAAO,4EAA4E,GAA7E,EACd,GAAGC,WACc;IACjB,qBACE,KAAC1B;QACC2B,eAAe5B,WACbE,OAAO2B,IAAI,EACX1B,UAAU,CAACoB,KAAK,EAChBC,QAAQ,UAAUhB,SAAS,CAACgB,IAAI,EAChCC,aAAavB,OAAOuB,SAAS,EAC7BV,WAAW,CAACW,MAAM;QAEpBI,MAAK;QACJ,GAAGH,SAAS;;AAGnB,EAAE;AAEFL,YAAYS,WAAW,GAAG"}
@@ -3,11 +3,10 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import * as React from "react";
4
4
  import { classNames } from "@vkontakte/vkjs";
5
5
  import { isSameDay, isSameMonth } from "date-fns";
6
- import { CalendarDirectionContext } from "../../context/CalendarDirectionContext.js";
7
6
  import { useCalendar } from "../../hooks/useCalendar.js";
8
- import { useDirection } from "../../hooks/useDirection.js";
9
- import { useExternRef } from "../../hooks/useExternRef.js";
7
+ import { useCustomEnsuredControl } from "../../hooks/useEnsuredControl.js";
10
8
  import { clamp, isFirstDay, isLastDay, navigateDate, setTimeEqual } from "../../lib/calendar.js";
9
+ import { convertDateFromTimeZone, convertDateToTimeZone } from "../../lib/date.js";
11
10
  import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect.js";
12
11
  import { warnOnce } from "../../lib/warnOnce.js";
13
12
  import { CalendarDays } from "../CalendarDays/CalendarDays.js";
@@ -18,9 +17,24 @@ import styles from "./Calendar.module.css";
18
17
  const warn = warnOnce('Calendar');
19
18
  /**
20
19
  * @see https://vkcom.github.io/VKUI/#/Calendar
21
- */ export const Calendar = ({ getRootRef, value, onChange, disablePast, disableFuture, shouldDisableDate, onDoneButtonClick, enableTime = false, doneButtonText, doneButtonDisabled, doneButtonShow, DoneButton, weekStartsOn = 1, disablePickers, changeHoursLabel = 'Изменить час', changeMinutesLabel = 'Изменить минуту', prevMonthLabel = 'Предыдущий месяц', nextMonthLabel = 'Следующий месяц', changeMonthLabel = 'Изменить месяц', changeYearLabel = 'Изменить год', showNeighboringMonth, changeDayLabel = 'Изменить день', size = 'm', viewDate: externalViewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, prevMonthProps, nextMonthProps, dayProps, listenDayChangesForUpdate, renderDayContent, minDateTime, maxDateTime, minutesTestId, hoursTestId, doneButtonTestId, prevMonthButtonTestId, nextMonthButtonTestId, monthDropdownTestId, yearDropdownTestId, dayTestId, ...props })=>{
20
+ */ export const Calendar = ({ getRootRef, value: valueProp, defaultValue, onChange, disablePast, disableFuture, shouldDisableDate, onDoneButtonClick, enableTime = false, doneButtonText, doneButtonDisabled, doneButtonShow, DoneButton, weekStartsOn = 1, disablePickers, changeHoursLabel = 'Изменить час', changeMinutesLabel = 'Изменить минуту', prevMonthLabel = 'Предыдущий месяц', nextMonthLabel = 'Следующий месяц', changeMonthLabel = 'Изменить месяц', changeYearLabel = 'Изменить год', showNeighboringMonth, changeDayLabel = 'Изменить день', size = 'm', viewDate: externalViewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, prevMonthProps, nextMonthProps, dayProps, listenDayChangesForUpdate, renderDayContent, minDateTime, maxDateTime, timezone, minutesTestId, hoursTestId, doneButtonTestId, prevMonthButtonTestId, nextMonthButtonTestId, monthDropdownTestId, yearDropdownTestId, dayTestId, ...props })=>{
21
+ const _onChange = React.useCallback((date)=>{
22
+ onChange?.(convertDateFromTimeZone(date, timezone) || undefined);
23
+ }, [
24
+ onChange,
25
+ timezone
26
+ ]);
27
+ const [value, updateValue] = useCustomEnsuredControl({
28
+ value: valueProp,
29
+ defaultValue,
30
+ onChange: _onChange
31
+ });
32
+ const timeZonedValue = React.useMemo(()=>convertDateToTimeZone(value, timezone), [
33
+ timezone,
34
+ value
35
+ ]);
22
36
  const { viewDate, setViewDate, setPrevMonth, setNextMonth, focusedDay, setFocusedDay, isDayFocused, isDayDisabled, resetSelectedDay, isMonthDisabled, isYearDisabled } = useCalendar({
23
- value,
37
+ value: timeZonedValue,
24
38
  disableFuture,
25
39
  disablePast,
26
40
  shouldDisableDate,
@@ -30,14 +44,12 @@ const warn = warnOnce('Calendar');
30
44
  minDateTime,
31
45
  maxDateTime
32
46
  });
33
- const [directionRef, textDirection = 'ltr'] = useDirection();
34
- const rootRef = useExternRef(directionRef, getRootRef);
35
47
  useIsomorphicLayoutEffect(()=>{
36
- if (value) {
37
- setViewDate(value);
48
+ if (timeZonedValue) {
49
+ setViewDate(timeZonedValue);
38
50
  }
39
51
  }, [
40
- value
52
+ timeZonedValue
41
53
  ]);
42
54
  if (process.env.NODE_ENV === 'development' && !disablePickers && size === 's') {
43
55
  warn("Нельзя включить селекты выбора месяца/года, если размер календаря 's'", 'error');
@@ -54,7 +66,7 @@ const warn = warnOnce('Calendar');
54
66
  ].includes(event.key)) {
55
67
  event.preventDefault();
56
68
  }
57
- const newFocusedDay = navigateDate(focusedDay ?? value, event.key);
69
+ const newFocusedDay = navigateDate(focusedDay ?? timeZonedValue, event.key);
58
70
  if (newFocusedDay && !isSameMonth(newFocusedDay, viewDate)) {
59
71
  setViewDate(newFocusedDay);
60
72
  }
@@ -63,102 +75,94 @@ const warn = warnOnce('Calendar');
63
75
  focusedDay,
64
76
  setFocusedDay,
65
77
  setViewDate,
66
- value,
78
+ timeZonedValue,
67
79
  viewDate
68
80
  ]);
69
81
  const onDayChange = React.useCallback((date)=>{
70
- let actualDate = setTimeEqual(date, value);
82
+ let actualDate = setTimeEqual(date, timeZonedValue);
71
83
  if (minDateTime || maxDateTime) {
72
84
  actualDate = clamp(actualDate, {
73
85
  min: minDateTime,
74
86
  max: maxDateTime
75
87
  });
76
88
  }
77
- onChange?.(actualDate);
89
+ updateValue(actualDate);
78
90
  }, [
79
- value,
80
- onChange,
91
+ timeZonedValue,
92
+ updateValue,
81
93
  maxDateTime,
82
94
  minDateTime
83
95
  ]);
84
- const isDayActive = React.useCallback((day)=>Boolean(value && isSameDay(day, value)), [
85
- value
86
- ]);
87
- const directionContextValue = React.useMemo(()=>({
88
- direction: textDirection
89
- }), [
90
- textDirection
96
+ const isDayActive = React.useCallback((day)=>Boolean(timeZonedValue && isSameDay(day, timeZonedValue)), [
97
+ timeZonedValue
91
98
  ]);
92
- return /*#__PURE__*/ _jsx(CalendarDirectionContext.Provider, {
93
- value: directionContextValue,
94
- children: /*#__PURE__*/ _jsxs(RootComponent, {
95
- ...props,
96
- baseClassName: classNames(styles.host, size === 's' && styles.sizeS),
97
- getRootRef: rootRef,
98
- children: [
99
- /*#__PURE__*/ _jsx(CalendarHeader, {
100
- viewDate: externalViewDate || viewDate,
101
- onChange: setViewDate,
102
- onNextMonth: setNextMonth,
103
- onPrevMonth: setPrevMonth,
104
- disablePickers: disablePickers || size === 's',
105
- className: styles.header,
106
- prevMonthLabel: prevMonthLabel,
107
- nextMonthLabel: nextMonthLabel,
108
- changeMonthLabel: changeMonthLabel,
109
- changeYearLabel: changeYearLabel,
110
- prevMonthIcon: prevMonthIcon,
111
- nextMonthIcon: nextMonthIcon,
112
- prevMonthProps: prevMonthProps,
113
- nextMonthProps: nextMonthProps,
114
- isMonthDisabled: isMonthDisabled,
115
- isYearDisabled: isYearDisabled,
116
- nextMonthButtonTestId: nextMonthButtonTestId,
117
- prevMonthButtonTestId: prevMonthButtonTestId,
118
- monthDropdownTestId: monthDropdownTestId,
119
- yearDropdownTestId: yearDropdownTestId
120
- }),
121
- /*#__PURE__*/ _jsx(CalendarDays, {
122
- viewDate: externalViewDate || viewDate,
123
- value: value,
124
- weekStartsOn: weekStartsOn,
125
- isDayFocused: isDayFocused,
126
- tabIndex: 0,
127
- "aria-label": changeDayLabel,
128
- onKeyDown: handleKeyDown,
129
- onDayChange: onDayChange,
130
- isDayActive: isDayActive,
131
- isDaySelectionStart: isFirstDay,
132
- isDaySelectionEnd: isLastDay,
133
- isDayDisabled: isDayDisabled,
134
- onBlur: resetSelectedDay,
135
- showNeighboringMonth: showNeighboringMonth,
136
- size: size,
137
- dayProps: dayProps,
138
- listenDayChangesForUpdate: listenDayChangesForUpdate,
139
- renderDayContent: renderDayContent,
140
- dayTestId: dayTestId
141
- }),
142
- enableTime && value && size !== 's' && /*#__PURE__*/ _jsx("div", {
143
- className: styles.time,
144
- children: /*#__PURE__*/ _jsx(CalendarTime, {
145
- value: value,
146
- onChange: onChange,
147
- onDoneButtonClick: onDoneButtonClick,
148
- doneButtonText: doneButtonText,
149
- doneButtonDisabled: doneButtonDisabled,
150
- doneButtonShow: doneButtonShow,
151
- DoneButton: DoneButton,
152
- changeHoursLabel: changeHoursLabel,
153
- changeMinutesLabel: changeMinutesLabel,
154
- isDayDisabled: minDateTime || maxDateTime ? isDayDisabled : undefined,
155
- minutesTestId: minutesTestId,
156
- hoursTestId: hoursTestId,
157
- doneButtonTestId: doneButtonTestId
158
- })
99
+ return /*#__PURE__*/ _jsxs(RootComponent, {
100
+ ...props,
101
+ baseClassName: classNames(styles.host, size === 's' && styles.sizeS),
102
+ getRootRef: getRootRef,
103
+ children: [
104
+ /*#__PURE__*/ _jsx(CalendarHeader, {
105
+ viewDate: externalViewDate || viewDate,
106
+ onChange: setViewDate,
107
+ onNextMonth: setNextMonth,
108
+ onPrevMonth: setPrevMonth,
109
+ disablePickers: disablePickers || size === 's',
110
+ className: styles.header,
111
+ prevMonthLabel: prevMonthLabel,
112
+ nextMonthLabel: nextMonthLabel,
113
+ changeMonthLabel: changeMonthLabel,
114
+ changeYearLabel: changeYearLabel,
115
+ prevMonthIcon: prevMonthIcon,
116
+ nextMonthIcon: nextMonthIcon,
117
+ prevMonthProps: prevMonthProps,
118
+ nextMonthProps: nextMonthProps,
119
+ isMonthDisabled: isMonthDisabled,
120
+ isYearDisabled: isYearDisabled,
121
+ nextMonthButtonTestId: nextMonthButtonTestId,
122
+ prevMonthButtonTestId: prevMonthButtonTestId,
123
+ monthDropdownTestId: monthDropdownTestId,
124
+ yearDropdownTestId: yearDropdownTestId
125
+ }),
126
+ /*#__PURE__*/ _jsx(CalendarDays, {
127
+ viewDate: externalViewDate || viewDate,
128
+ value: timeZonedValue,
129
+ weekStartsOn: weekStartsOn,
130
+ isDayFocused: isDayFocused,
131
+ tabIndex: 0,
132
+ "aria-label": changeDayLabel,
133
+ onKeyDown: handleKeyDown,
134
+ onDayChange: onDayChange,
135
+ isDayActive: isDayActive,
136
+ isDaySelectionStart: isFirstDay,
137
+ isDaySelectionEnd: isLastDay,
138
+ isDayDisabled: isDayDisabled,
139
+ onBlur: resetSelectedDay,
140
+ showNeighboringMonth: showNeighboringMonth,
141
+ size: size,
142
+ dayProps: dayProps,
143
+ listenDayChangesForUpdate: listenDayChangesForUpdate,
144
+ renderDayContent: renderDayContent,
145
+ dayTestId: dayTestId
146
+ }),
147
+ enableTime && timeZonedValue && size !== 's' && /*#__PURE__*/ _jsx("div", {
148
+ className: styles.time,
149
+ children: /*#__PURE__*/ _jsx(CalendarTime, {
150
+ value: timeZonedValue,
151
+ onChange: updateValue,
152
+ onDoneButtonClick: onDoneButtonClick,
153
+ doneButtonText: doneButtonText,
154
+ doneButtonDisabled: doneButtonDisabled,
155
+ doneButtonShow: doneButtonShow,
156
+ DoneButton: DoneButton,
157
+ changeHoursLabel: changeHoursLabel,
158
+ changeMinutesLabel: changeMinutesLabel,
159
+ isDayDisabled: minDateTime || maxDateTime ? isDayDisabled : undefined,
160
+ minutesTestId: minutesTestId,
161
+ hoursTestId: hoursTestId,
162
+ doneButtonTestId: doneButtonTestId
159
163
  })
160
- ]
161
- })
164
+ })
165
+ ]
162
166
  });
163
167
  };
164
168