@vkontakte/vkui 7.1.2 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1173) 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 +7 -2
  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.map +1 -1
  66. package/dist/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
  67. package/dist/components/CalendarHeader/CalendarHeader.js +1 -3
  68. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  69. package/dist/components/CalendarRange/CalendarRange.d.ts +3 -2
  70. package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
  71. package/dist/components/CalendarRange/CalendarRange.js +102 -108
  72. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  73. package/dist/components/CalendarTime/CalendarTime.d.ts.map +1 -1
  74. package/dist/components/Card/Card.d.ts.map +1 -1
  75. package/dist/components/CardGrid/CardGrid.d.ts.map +1 -1
  76. package/dist/components/CardScroll/CardScroll.d.ts +5 -1
  77. package/dist/components/CardScroll/CardScroll.d.ts.map +1 -1
  78. package/dist/components/CardScroll/CardScroll.js +32 -29
  79. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  80. package/dist/components/CarouselBase/CarouselBase.d.ts.map +1 -1
  81. package/dist/components/CarouselBase/CarouselBase.js +72 -50
  82. package/dist/components/CarouselBase/CarouselBase.js.map +1 -1
  83. package/dist/components/CarouselBase/ScrollArrows.d.ts.map +1 -1
  84. package/dist/components/CarouselBase/helpers.d.ts +20 -5
  85. package/dist/components/CarouselBase/helpers.d.ts.map +1 -1
  86. package/dist/components/CarouselBase/helpers.js +70 -44
  87. package/dist/components/CarouselBase/helpers.js.map +1 -1
  88. package/dist/components/Cell/CellCheckbox/CellCheckbox.d.ts.map +1 -1
  89. package/dist/components/Cell/CellDragger/CellDragger.d.ts.map +1 -1
  90. package/dist/components/CellButton/CellButton.d.ts.map +1 -1
  91. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts +300 -0
  92. package/dist/components/CellButtonGroup/CellButtonGroup.d.ts.map +1 -0
  93. package/dist/components/CellButtonGroup/CellButtonGroup.js +20 -0
  94. package/dist/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
  95. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts +8 -0
  96. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts.map +1 -0
  97. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +20 -0
  98. package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
  99. package/dist/components/ChipsInput/ChipsInput.d.ts.map +1 -1
  100. package/dist/components/ChipsInput/useChipsInput.d.ts.map +1 -1
  101. package/dist/components/ChipsInputBase/Chip/Chip.d.ts.map +1 -1
  102. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts.map +1 -1
  103. package/dist/components/ChipsInputBase/helpers.d.ts.map +1 -1
  104. package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
  105. package/dist/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
  106. package/dist/components/ChipsSelect/ChipsSelect.js +3 -1
  107. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  108. package/dist/components/ChipsSelect/constants.d.ts.map +1 -1
  109. package/dist/components/ChipsSelect/useChipsSelect.d.ts +3 -2
  110. package/dist/components/ChipsSelect/useChipsSelect.d.ts.map +1 -1
  111. package/dist/components/ChipsSelect/useChipsSelect.js +9 -3
  112. package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
  113. package/dist/components/Clickable/Clickable.d.ts +1 -1
  114. package/dist/components/Clickable/Clickable.d.ts.map +1 -1
  115. package/dist/components/Clickable/Clickable.js +28 -28
  116. package/dist/components/Clickable/Clickable.js.map +1 -1
  117. package/dist/components/Clickable/RealClickable.d.ts.map +1 -1
  118. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.d.ts.map +1 -1
  119. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
  120. package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
  121. package/dist/components/ConfigProvider/ConfigProvider.d.ts.map +1 -1
  122. package/dist/components/ConfigProvider/ConfigProvider.js +5 -2
  123. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  124. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +11 -1
  125. package/dist/components/ConfigProvider/ConfigProviderContext.d.ts.map +1 -1
  126. package/dist/components/ConfigProvider/ConfigProviderContext.js +12 -7
  127. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  128. package/dist/components/ContentCard/ContentCard.d.ts +6 -1
  129. package/dist/components/ContentCard/ContentCard.d.ts.map +1 -1
  130. package/dist/components/ContentCard/ContentCard.js +6 -4
  131. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  132. package/dist/components/Counter/Counter.d.ts.map +1 -1
  133. package/dist/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
  134. package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
  135. package/dist/components/CustomSelect/CustomSelect.js +105 -69
  136. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  137. package/dist/components/CustomSelect/CustomSelectClearButton.d.ts.map +1 -1
  138. package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.d.ts.map +1 -1
  139. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts.map +1 -1
  140. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -1
  141. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  142. package/dist/components/CustomSelectOption/CustomSelectOption.d.ts.map +1 -1
  143. package/dist/components/DateInput/DateInput.d.ts +11 -2
  144. package/dist/components/DateInput/DateInput.d.ts.map +1 -1
  145. package/dist/components/DateInput/DateInput.js +108 -82
  146. package/dist/components/DateInput/DateInput.js.map +1 -1
  147. package/dist/components/DateInput/hooks.d.ts +15 -0
  148. package/dist/components/DateInput/hooks.d.ts.map +1 -0
  149. package/dist/components/DateInput/hooks.js +54 -0
  150. package/dist/components/DateInput/hooks.js.map +1 -0
  151. package/dist/components/DateRangeInput/DateRangeInput.d.ts +2 -2
  152. package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
  153. package/dist/components/DateRangeInput/DateRangeInput.js +100 -82
  154. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  155. package/dist/components/DirectionProvider/DirectionProvider.d.ts +13 -0
  156. package/dist/components/DirectionProvider/DirectionProvider.d.ts.map +1 -0
  157. package/dist/components/DirectionProvider/DirectionProvider.js +15 -0
  158. package/dist/components/DirectionProvider/DirectionProvider.js.map +1 -0
  159. package/dist/components/Div/Div.d.ts.map +1 -1
  160. package/dist/components/DropdownIcon/DropdownIcon.d.ts.map +1 -1
  161. package/dist/components/Epic/Epic.d.ts.map +1 -1
  162. package/dist/components/Epic/ScrollSaver.d.ts.map +1 -1
  163. package/dist/components/File/File.d.ts.map +1 -1
  164. package/dist/components/FixedLayout/FixedLayout.d.ts.map +1 -1
  165. package/dist/components/Flex/Flex.d.ts.map +1 -1
  166. package/dist/components/Flex/Flex.js +3 -5
  167. package/dist/components/Flex/Flex.js.map +1 -1
  168. package/dist/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
  169. package/dist/components/FloatingArrow/DefaultIcon.d.ts.map +1 -1
  170. package/dist/components/FloatingArrow/FloatingArrow.d.ts.map +1 -1
  171. package/dist/components/FocusTrap/FocusTrap.d.ts.map +1 -1
  172. package/dist/components/Footer/Footer.d.ts.map +1 -1
  173. package/dist/components/FormField/FormField.d.ts.map +1 -1
  174. package/dist/components/FormFieldClearButton/FormFieldClearButton.d.ts.map +1 -1
  175. package/dist/components/FormItem/FormItem.d.ts.map +1 -1
  176. package/dist/components/FormItem/FormItem.js +1 -0
  177. package/dist/components/FormItem/FormItem.js.map +1 -1
  178. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts.map +1 -1
  179. package/dist/components/FormStatus/FormStatus.d.ts.map +1 -1
  180. package/dist/components/Gallery/Gallery.d.ts.map +1 -1
  181. package/dist/components/Gradient/Gradient.d.ts.map +1 -1
  182. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.d.ts.map +1 -1
  183. package/dist/components/Header/Header.d.ts.map +1 -1
  184. package/dist/components/HorizontalCell/HorizontalCell.d.ts.map +1 -1
  185. package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.d.ts.map +1 -1
  186. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +13 -1
  187. package/dist/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
  188. package/dist/components/HorizontalScroll/HorizontalScroll.js +46 -39
  189. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  190. package/dist/components/IconButton/IconButton.d.ts.map +1 -1
  191. package/dist/components/ImageBase/ImageBase.d.ts +5 -0
  192. package/dist/components/ImageBase/ImageBase.d.ts.map +1 -1
  193. package/dist/components/ImageBase/ImageBase.js +6 -4
  194. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  195. package/dist/components/ImageBase/ImageBaseFloatElement/helpers.d.ts.map +1 -1
  196. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.d.ts.map +1 -1
  197. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
  198. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  199. package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts +1 -0
  200. package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts.map +1 -1
  201. package/dist/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
  202. package/dist/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
  203. package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts +4 -0
  204. package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts.map +1 -1
  205. package/dist/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
  206. package/dist/components/InfoRow/InfoRow.d.ts.map +1 -1
  207. package/dist/components/Input/Input.d.ts.map +1 -1
  208. package/dist/components/InputLike/InputLikeDivider.d.ts.map +1 -1
  209. package/dist/components/Link/Link.d.ts.map +1 -1
  210. package/dist/components/List/List.d.ts.map +1 -1
  211. package/dist/components/Mark/Mark.d.ts.map +1 -1
  212. package/dist/components/MiniInfoCell/MiniInfoCell.d.ts.map +1 -1
  213. package/dist/components/ModalCard/ModalCard.d.ts.map +1 -1
  214. package/dist/components/ModalCard/ModalCard.js +2 -1
  215. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  216. package/dist/components/ModalCard/ModalCardInternal.d.ts +1 -1
  217. package/dist/components/ModalCard/ModalCardInternal.d.ts.map +1 -1
  218. package/dist/components/ModalCard/ModalCardInternal.js +6 -3
  219. package/dist/components/ModalCard/ModalCardInternal.js.map +1 -1
  220. package/dist/components/ModalCard/types.d.ts +8 -1
  221. package/dist/components/ModalCard/types.d.ts.map +1 -1
  222. package/dist/components/ModalCard/types.js.map +1 -1
  223. package/dist/components/ModalCardBase/ModalCardBase.d.ts +9 -1
  224. package/dist/components/ModalCardBase/ModalCardBase.d.ts.map +1 -1
  225. package/dist/components/ModalCardBase/ModalCardBase.js +33 -8
  226. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  227. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +5 -3
  228. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts.map +1 -1
  229. package/dist/components/ModalDismissButton/ModalDismissButton.js +7 -7
  230. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  231. package/dist/components/ModalOutlet/ModalOutlet.d.ts.map +1 -1
  232. package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts +17 -0
  233. package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts.map +1 -0
  234. package/dist/components/ModalOutsideButton/ModalOutsideButton.js +30 -0
  235. package/dist/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
  236. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts +6 -0
  237. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts.map +1 -0
  238. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js +22 -0
  239. package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
  240. package/dist/components/ModalOverlay/ModalOverlay.d.ts.map +1 -1
  241. package/dist/components/ModalPage/ModalPage.d.ts.map +1 -1
  242. package/dist/components/ModalPage/ModalPageBase.d.ts +8 -0
  243. package/dist/components/ModalPage/ModalPageBase.d.ts.map +1 -0
  244. package/dist/components/ModalPage/ModalPageBase.js +66 -0
  245. package/dist/components/ModalPage/ModalPageBase.js.map +1 -0
  246. package/dist/components/ModalPage/ModalPageInternal.d.ts +1 -1
  247. package/dist/components/ModalPage/ModalPageInternal.d.ts.map +1 -1
  248. package/dist/components/ModalPage/ModalPageInternal.js +27 -34
  249. package/dist/components/ModalPage/ModalPageInternal.js.map +1 -1
  250. package/dist/components/ModalPage/types.d.ts +19 -1
  251. package/dist/components/ModalPage/types.d.ts.map +1 -1
  252. package/dist/components/ModalPage/types.js.map +1 -1
  253. package/dist/components/ModalPageContent/ModalPageContent.d.ts.map +1 -1
  254. package/dist/components/ModalPageFooter/ModalPageFooter.d.ts.map +1 -1
  255. package/dist/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
  256. package/dist/components/ModalRoot/ModalRoot.d.ts.map +1 -1
  257. package/dist/components/ModalRoot/VisuallyHiddenModalOverlay/VisuallyHiddenModalOverlay.d.ts.map +1 -1
  258. package/dist/components/ModalRoot/useModalManager.d.ts.map +1 -1
  259. package/dist/components/NativeSelect/NativeSelect.d.ts.map +1 -1
  260. package/dist/components/NavTransitionContext/NavTransitionContext.d.ts.map +1 -1
  261. package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts.map +1 -1
  262. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts +8 -3
  263. package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
  264. package/dist/components/OnboardingTooltip/OnboardingTooltip.js +52 -19
  265. package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  266. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
  267. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js +12 -3
  268. package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
  269. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts +7 -0
  270. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts.map +1 -0
  271. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
  272. package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
  273. package/dist/components/Pagination/Pagination.d.ts +6 -0
  274. package/dist/components/Pagination/Pagination.d.ts.map +1 -1
  275. package/dist/components/Pagination/Pagination.js +10 -5
  276. package/dist/components/Pagination/Pagination.js.map +1 -1
  277. package/dist/components/Pagination/PaginationNavigationButton/PaginationNavigationButton.d.ts.map +1 -1
  278. package/dist/components/Pagination/PaginationPage/PaginationPageButton.d.ts.map +1 -1
  279. package/dist/components/Pagination/PaginationPage/PaginationPageButton.js +4 -4
  280. package/dist/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -1
  281. package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts.map +1 -1
  282. package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts.map +1 -1
  283. package/dist/components/Panel/Panel.d.ts.map +1 -1
  284. package/dist/components/PanelHeader/PanelHeader.d.ts.map +1 -1
  285. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts.map +1 -1
  286. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
  287. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  288. package/dist/components/PanelHeaderButton/PanelHeaderButton.d.ts.map +1 -1
  289. package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts.map +1 -1
  290. package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts.map +1 -1
  291. package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts.map +1 -1
  292. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts.map +1 -1
  293. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts.map +1 -1
  294. package/dist/components/Placeholder/Placeholder.d.ts.map +1 -1
  295. package/dist/components/PlatformProvider/PlatformProvider.js +1 -1
  296. package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
  297. package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +15 -2
  298. package/dist/components/PopoutWrapper/PopoutWrapper.d.ts.map +1 -1
  299. package/dist/components/PopoutWrapper/PopoutWrapper.js +10 -2
  300. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  301. package/dist/components/Popover/Popover.d.ts +1 -1
  302. package/dist/components/Popover/Popover.d.ts.map +1 -1
  303. package/dist/components/Popover/Popover.js +4 -4
  304. package/dist/components/Popover/Popover.js.map +1 -1
  305. package/dist/components/Popover/usePopover.d.ts +1 -1
  306. package/dist/components/Popover/usePopover.d.ts.map +1 -1
  307. package/dist/components/Popover/usePopover.js +69 -44
  308. package/dist/components/Popover/usePopover.js.map +1 -1
  309. package/dist/components/Popper/Popper.d.ts +2 -2
  310. package/dist/components/Popper/Popper.d.ts.map +1 -1
  311. package/dist/components/Popper/Popper.js +18 -5
  312. package/dist/components/Popper/Popper.js.map +1 -1
  313. package/dist/components/Progress/Progress.d.ts +7 -3
  314. package/dist/components/Progress/Progress.d.ts.map +1 -1
  315. package/dist/components/Progress/Progress.js +30 -11
  316. package/dist/components/Progress/Progress.js.map +1 -1
  317. package/dist/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
  318. package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts.map +1 -1
  319. package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
  320. package/dist/components/Removable/Removable.d.ts +5 -1
  321. package/dist/components/Removable/Removable.d.ts.map +1 -1
  322. package/dist/components/Removable/Removable.js +12 -7
  323. package/dist/components/Removable/Removable.js.map +1 -1
  324. package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts.map +1 -1
  325. package/dist/components/Root/Root.d.ts.map +1 -1
  326. package/dist/components/RootComponent/RootComponent.d.ts.map +1 -1
  327. package/dist/components/ScreenSpinner/Icon48CancelCircle.d.ts.map +1 -1
  328. package/dist/components/ScreenSpinner/Icon48DoneOutline.d.ts.map +1 -1
  329. package/dist/components/ScreenSpinner/ScreenSpinner.js +1 -0
  330. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  331. package/dist/components/ScrollArrow/ScrollArrow.d.ts.map +1 -1
  332. package/dist/components/ScrollArrow/ScrollArrow.js +4 -1
  333. package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
  334. package/dist/components/Search/Search.d.ts +9 -1
  335. package/dist/components/Search/Search.d.ts.map +1 -1
  336. package/dist/components/Search/Search.js +9 -2
  337. package/dist/components/Search/Search.js.map +1 -1
  338. package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
  339. package/dist/components/SegmentedControl/SegmentedControl.js +10 -7
  340. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  341. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts.map +1 -1
  342. package/dist/components/Select/Select.d.ts.map +1 -1
  343. package/dist/components/SelectMimicry/SelectMimicry.d.ts.map +1 -1
  344. package/dist/components/SelectTypography/SelectTypography.d.ts.map +1 -1
  345. package/dist/components/Separator/Separator.d.ts.map +1 -1
  346. package/dist/components/SimpleCell/Chevron/Chevron.d.ts.map +1 -1
  347. package/dist/components/SimpleCell/SimpleCell.d.ts.map +1 -1
  348. package/dist/components/SimpleGrid/SimpleGrid.d.ts.map +1 -1
  349. package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
  350. package/dist/components/Slider/Slider.d.ts +1 -1
  351. package/dist/components/Slider/Slider.d.ts.map +1 -1
  352. package/dist/components/Slider/Slider.js +22 -18
  353. package/dist/components/Slider/Slider.js.map +1 -1
  354. package/dist/components/Slider/SliderThumb/SliderThumb.d.ts.map +1 -1
  355. package/dist/components/Slider/SliderThumb/SliderThumb.js +5 -1
  356. package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  357. package/dist/components/Slider/helpers.d.ts.map +1 -1
  358. package/dist/components/Snackbar/Snackbar.d.ts.map +1 -1
  359. package/dist/components/Snackbar/Snackbar.js +6 -3
  360. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  361. package/dist/components/Snackbar/utils.d.ts +3 -2
  362. package/dist/components/Snackbar/utils.d.ts.map +1 -1
  363. package/dist/components/Snackbar/utils.js +11 -8
  364. package/dist/components/Snackbar/utils.js.map +1 -1
  365. package/dist/components/Spacing/Spacing.d.ts.map +1 -1
  366. package/dist/components/SplitCol/SplitCol.d.ts.map +1 -1
  367. package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -1
  368. package/dist/components/SubnavigationBar/SubnavigationBar.d.ts.map +1 -1
  369. package/dist/components/SubnavigationButton/SubnavigationButton.d.ts.map +1 -1
  370. package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -1
  371. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  372. package/dist/components/Switch/Switch.d.ts.map +1 -1
  373. package/dist/components/Switch/Switch.js +4 -1
  374. package/dist/components/Switch/Switch.js.map +1 -1
  375. package/dist/components/Tabbar/Tabbar.d.ts.map +1 -1
  376. package/dist/components/TabbarItem/TabbarItem.d.ts +1 -1
  377. package/dist/components/TabbarItem/TabbarItem.d.ts.map +1 -1
  378. package/dist/components/TabbarItem/TabbarItem.js +16 -4
  379. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  380. package/dist/components/Tabs/Tabs.d.ts.map +1 -1
  381. package/dist/components/Tabs/Tabs.js +3 -1
  382. package/dist/components/Tabs/Tabs.js.map +1 -1
  383. package/dist/components/TabsItem/TabsItem.d.ts.map +1 -1
  384. package/dist/components/Tappable/Ripple.d.ts.map +1 -1
  385. package/dist/components/Tappable/Tappable.d.ts.map +1 -1
  386. package/dist/components/Textarea/Textarea.d.ts.map +1 -1
  387. package/dist/components/ToolButton/ToolButton.d.ts.map +1 -1
  388. package/dist/components/Tooltip/Tooltip.d.ts +2 -2
  389. package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
  390. package/dist/components/Tooltip/Tooltip.js +8 -101
  391. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  392. package/dist/components/Tooltip/useTooltip.d.ts +14 -0
  393. package/dist/components/Tooltip/useTooltip.d.ts.map +1 -0
  394. package/dist/components/Tooltip/useTooltip.js +126 -0
  395. package/dist/components/Tooltip/useTooltip.js.map +1 -0
  396. package/dist/components/TooltipBase/TooltipBase.d.ts +6 -1
  397. package/dist/components/TooltipBase/TooltipBase.d.ts.map +1 -1
  398. package/dist/components/TooltipBase/TooltipBase.js +3 -1
  399. package/dist/components/TooltipBase/TooltipBase.js.map +1 -1
  400. package/dist/components/Touch/Touch.d.ts.map +1 -1
  401. package/dist/components/Typography/Caption/Caption.d.ts.map +1 -1
  402. package/dist/components/Typography/DisplayTitle/DisplayTitle.d.ts.map +1 -1
  403. package/dist/components/Typography/EllipsisText/EllipsisText.d.ts.map +1 -1
  404. package/dist/components/Typography/Footnote/Footnote.d.ts.map +1 -1
  405. package/dist/components/Typography/Headline/Headline.d.ts.map +1 -1
  406. package/dist/components/Typography/Paragraph/Paragraph.d.ts.map +1 -1
  407. package/dist/components/Typography/Subhead/Subhead.d.ts.map +1 -1
  408. package/dist/components/Typography/Text/Text.d.ts.map +1 -1
  409. package/dist/components/Typography/Title/Title.d.ts.map +1 -1
  410. package/dist/components/Typography/Typography.d.ts.map +1 -1
  411. package/dist/components/UnstyledTextField/UnstyledTextField.d.ts.map +1 -1
  412. package/dist/components/UsersStack/UsersStack.d.ts +1 -1
  413. package/dist/components/UsersStack/UsersStack.d.ts.map +1 -1
  414. package/dist/components/UsersStack/UsersStack.js +5 -9
  415. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  416. package/dist/components/View/View.d.ts.map +1 -1
  417. package/dist/components/View/utils.d.ts.map +1 -1
  418. package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
  419. package/dist/components/WriteBar/WriteBar.d.ts.map +1 -1
  420. package/dist/components/WriteBarIcon/WriteBarIcon.d.ts.map +1 -1
  421. package/dist/components.css +1 -1
  422. package/dist/components.css.map +1 -1
  423. package/dist/context/CalendarDirectionContext.d.ts +1 -1
  424. package/dist/context/CalendarDirectionContext.d.ts.map +1 -1
  425. package/dist/context/CalendarDirectionContext.js.map +1 -1
  426. package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
  427. package/dist/cssm/components/Accordion/Accordion.module.css +6 -6
  428. package/dist/cssm/components/ActionSheet/ActionSheet.js +1 -1
  429. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  430. package/dist/cssm/components/ActionSheet/ActionSheet.module.css +9 -9
  431. package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js +7 -3
  432. package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js.map +1 -1
  433. package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js +7 -3
  434. package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js.map +1 -1
  435. package/dist/cssm/components/ActionSheet/types.js.map +1 -1
  436. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.module.css +18 -18
  437. package/dist/cssm/components/Alert/Alert.js +12 -92
  438. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  439. package/dist/cssm/components/Alert/Alert.module.css +27 -29
  440. package/dist/cssm/components/Alert/AlertBase.js +111 -0
  441. package/dist/cssm/components/Alert/AlertBase.js.map +1 -0
  442. package/dist/cssm/components/Alert/AlertTypography.js.map +1 -1
  443. package/dist/cssm/components/AppRoot/AppRoot.module.css +2 -2
  444. package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js +1 -1
  445. package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js.map +1 -1
  446. package/dist/cssm/components/AppRoot/ScrollContext.js +129 -37
  447. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  448. package/dist/cssm/components/AspectRatio/AspectRatio.module.css +2 -2
  449. package/dist/cssm/components/Avatar/Avatar.module.css +1 -1
  450. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
  451. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +4 -1
  452. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  453. package/dist/cssm/components/Banner/Banner.module.css +19 -19
  454. package/dist/cssm/components/Button/Button.module.css +11 -11
  455. package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -0
  456. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  457. package/dist/cssm/components/Calendar/Calendar.js +96 -92
  458. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  459. package/dist/cssm/components/Calendar/Calendar.module.css +8 -8
  460. package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -3
  461. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  462. package/dist/cssm/components/CalendarDay/CalendarDay.module.css +11 -11
  463. package/dist/cssm/components/CalendarDays/CalendarDays.module.css +7 -7
  464. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +1 -3
  465. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  466. package/dist/cssm/components/CalendarHeader/CalendarHeader.module.css +4 -4
  467. package/dist/cssm/components/CalendarRange/CalendarRange.js +103 -110
  468. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  469. package/dist/cssm/components/CalendarRange/CalendarRange.module.css +5 -5
  470. package/dist/cssm/components/CalendarTime/CalendarTime.module.css +1 -1
  471. package/dist/cssm/components/Card/Card.module.css +7 -7
  472. package/dist/cssm/components/CardGrid/CardGrid.module.css +3 -3
  473. package/dist/cssm/components/CardScroll/CardScroll.js +30 -28
  474. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  475. package/dist/cssm/components/CardScroll/CardScroll.module.css +16 -16
  476. package/dist/cssm/components/CarouselBase/CarouselBase.js +72 -48
  477. package/dist/cssm/components/CarouselBase/CarouselBase.js.map +1 -1
  478. package/dist/cssm/components/CarouselBase/CarouselBase.module.css +11 -11
  479. package/dist/cssm/components/CarouselBase/helpers.js +70 -44
  480. package/dist/cssm/components/CarouselBase/helpers.js.map +1 -1
  481. package/dist/cssm/components/Cell/Cell.module.css +18 -2
  482. package/dist/cssm/components/Cell/CellDragger/CellDragger.module.css +2 -2
  483. package/dist/cssm/components/CellButton/CellButton.module.css +8 -8
  484. package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js +20 -0
  485. package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
  486. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +15 -0
  487. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
  488. package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
  489. package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
  490. package/dist/cssm/components/ChipsInputBase/Chip/Chip.module.css +16 -16
  491. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +12 -12
  492. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +2 -1
  493. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  494. package/dist/cssm/components/ChipsSelect/ChipsSelect.module.css +1 -1
  495. package/dist/cssm/components/ChipsSelect/useChipsSelect.js +9 -3
  496. package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
  497. package/dist/cssm/components/Clickable/Clickable.js +29 -22
  498. package/dist/cssm/components/Clickable/Clickable.js.map +1 -1
  499. package/dist/cssm/components/Clickable/Clickable.module.css +1 -1
  500. package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
  501. package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
  502. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -2
  503. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  504. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +12 -7
  505. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  506. package/dist/cssm/components/ContentBadge/ContentBadge.module.css +7 -7
  507. package/dist/cssm/components/ContentCard/ContentCard.js +5 -4
  508. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  509. package/dist/cssm/components/ContentCard/ContentCard.module.css +6 -6
  510. package/dist/cssm/components/Counter/Counter.module.css +4 -4
  511. package/dist/cssm/components/CustomScrollView/CustomScrollView.module.css +2 -2
  512. package/dist/cssm/components/CustomSelect/CustomSelect.js +105 -69
  513. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  514. package/dist/cssm/components/CustomSelect/CustomSelect.module.css +2 -2
  515. package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +13 -13
  516. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +1 -0
  517. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  518. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
  519. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +9 -9
  520. package/dist/cssm/components/DateInput/DateInput.js +104 -81
  521. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  522. package/dist/cssm/components/DateInput/DateInput.module.css +40 -6
  523. package/dist/cssm/components/DateInput/hooks.js +54 -0
  524. package/dist/cssm/components/DateInput/hooks.js.map +1 -0
  525. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +99 -82
  526. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  527. package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +3 -3
  528. package/dist/cssm/components/DirectionProvider/DirectionProvider.js +15 -0
  529. package/dist/cssm/components/DirectionProvider/DirectionProvider.js.map +1 -0
  530. package/dist/cssm/components/DropZone/DropZone.module.css +2 -2
  531. package/dist/cssm/components/FixedLayout/FixedLayout.module.css +3 -3
  532. package/dist/cssm/components/Flex/Flex.js +3 -5
  533. package/dist/cssm/components/Flex/Flex.js.map +1 -1
  534. package/dist/cssm/components/Flex/Flex.module.css +40 -23
  535. package/dist/cssm/components/FloatingArrow/FloatingArrow.module.css +1 -1
  536. package/dist/cssm/components/Footer/Footer.module.css +1 -1
  537. package/dist/cssm/components/FormField/FormField.module.css +24 -24
  538. package/dist/cssm/components/FormItem/FormItem.js +1 -0
  539. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  540. package/dist/cssm/components/FormItem/FormItem.module.css +10 -10
  541. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
  542. package/dist/cssm/components/GridAvatar/GridAvatar.module.css +2 -2
  543. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
  544. package/dist/cssm/components/Group/Group.module.css +16 -16
  545. package/dist/cssm/components/Header/Header.module.css +6 -6
  546. package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +3 -3
  547. package/dist/cssm/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +3 -2
  548. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +45 -36
  549. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  550. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
  551. package/dist/cssm/components/IconButton/IconButton.module.css +17 -11
  552. package/dist/cssm/components/ImageBase/ImageBase.js +5 -4
  553. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  554. package/dist/cssm/components/ImageBase/ImageBase.module.css +15 -6
  555. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
  556. package/dist/cssm/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
  557. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
  558. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  559. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
  560. package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
  561. package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
  562. package/dist/cssm/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
  563. package/dist/cssm/components/InfoRow/InfoRow.module.css +3 -3
  564. package/dist/cssm/components/Input/Input.module.css +5 -5
  565. package/dist/cssm/components/InputLike/InputLike.module.css +3 -3
  566. package/dist/cssm/components/Link/Link.module.css +6 -6
  567. package/dist/cssm/components/Mark/Mark.module.css +2 -2
  568. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
  569. package/dist/cssm/components/ModalCard/ModalCard.js +1 -0
  570. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  571. package/dist/cssm/components/ModalCard/ModalCard.module.css +4 -4
  572. package/dist/cssm/components/ModalCard/ModalCardInternal.js +3 -2
  573. package/dist/cssm/components/ModalCard/ModalCardInternal.js.map +1 -1
  574. package/dist/cssm/components/ModalCard/types.js.map +1 -1
  575. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +30 -7
  576. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  577. package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +7 -7
  578. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +5 -6
  579. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  580. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.module.css +0 -29
  581. package/dist/cssm/components/ModalOutlet/ModalOutlet.module.css +1 -1
  582. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js +24 -0
  583. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
  584. package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.module.css +31 -0
  585. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js +16 -0
  586. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
  587. package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
  588. package/dist/cssm/components/ModalOverlay/ModalOverlay.module.css +2 -2
  589. package/dist/cssm/components/ModalPage/ModalPage.module.css +15 -16
  590. package/dist/cssm/components/ModalPage/ModalPageBase.js +49 -0
  591. package/dist/cssm/components/ModalPage/ModalPageBase.js.map +1 -0
  592. package/dist/cssm/components/ModalPage/ModalPageInternal.js +22 -33
  593. package/dist/cssm/components/ModalPage/ModalPageInternal.js.map +1 -1
  594. package/dist/cssm/components/ModalPage/types.js.map +1 -1
  595. package/dist/cssm/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
  596. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
  597. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +40 -13
  598. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
  599. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.module.css +16 -1
  600. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js +13 -4
  601. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
  602. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
  603. package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
  604. package/dist/cssm/components/Pagination/Pagination.js +9 -4
  605. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  606. package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
  607. package/dist/cssm/components/Pagination/PaginationPage/PaginationPage.module.css +9 -9
  608. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js +4 -4
  609. package/dist/cssm/components/Pagination/PaginationPage/PaginationPageButton.js.map +1 -1
  610. package/dist/cssm/components/Panel/Panel.module.css +3 -3
  611. package/dist/cssm/components/PanelHeader/PanelHeader.module.css +30 -30
  612. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
  613. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  614. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +22 -8
  615. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
  616. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
  617. package/dist/cssm/components/Placeholder/Placeholder.module.css +3 -3
  618. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
  619. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  620. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +9 -2
  621. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  622. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
  623. package/dist/cssm/components/Popover/Popover.js +4 -4
  624. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  625. package/dist/cssm/components/Popover/Popover.module.css +1 -1
  626. package/dist/cssm/components/Popover/usePopover.js +62 -44
  627. package/dist/cssm/components/Popover/usePopover.js.map +1 -1
  628. package/dist/cssm/components/Popper/Popper.js +15 -5
  629. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  630. package/dist/cssm/components/Progress/Progress.js +29 -9
  631. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  632. package/dist/cssm/components/Progress/Progress.module.css +20 -9
  633. package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +14 -14
  634. package/dist/cssm/components/Radio/Radio.module.css +1 -1
  635. package/dist/cssm/components/Radio/RadioInput/RadioInput.module.css +1 -1
  636. package/dist/cssm/components/RadioGroup/RadioGroup.module.css +1 -1
  637. package/dist/cssm/components/Removable/Removable.js +10 -6
  638. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  639. package/dist/cssm/components/Removable/Removable.module.css +22 -6
  640. package/dist/cssm/components/RichCell/RichCell.module.css +10 -10
  641. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
  642. package/dist/cssm/components/Root/Root.module.css +10 -10
  643. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -0
  644. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  645. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.module.css +12 -12
  646. package/dist/cssm/components/ScrollArrow/ScrollArrow.js +4 -1
  647. package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
  648. package/dist/cssm/components/ScrollArrow/ScrollArrow.module.css +15 -14
  649. package/dist/cssm/components/Search/Search.js +7 -2
  650. package/dist/cssm/components/Search/Search.js.map +1 -1
  651. package/dist/cssm/components/Search/Search.module.css +45 -32
  652. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +10 -7
  653. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  654. package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +16 -7
  655. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +14 -14
  656. package/dist/cssm/components/Select/Select.module.css +15 -15
  657. package/dist/cssm/components/SelectionControl/SelectionControl.module.css +2 -2
  658. package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
  659. package/dist/cssm/components/Separator/Separator.module.css +3 -3
  660. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +20 -16
  661. package/dist/cssm/components/SimpleGrid/SimpleGrid.module.css +2 -2
  662. package/dist/cssm/components/Skeleton/Skeleton.module.css +8 -8
  663. package/dist/cssm/components/Slider/Slider.js +20 -17
  664. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  665. package/dist/cssm/components/Slider/Slider.module.css +25 -4
  666. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +5 -1
  667. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  668. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.module.css +8 -8
  669. package/dist/cssm/components/Snackbar/Snackbar.js +6 -3
  670. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  671. package/dist/cssm/components/Snackbar/Snackbar.module.css +23 -6
  672. package/dist/cssm/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
  673. package/dist/cssm/components/Snackbar/utils.js +11 -8
  674. package/dist/cssm/components/Snackbar/utils.js.map +1 -1
  675. package/dist/cssm/components/Spacing/Spacing.module.css +1 -1
  676. package/dist/cssm/components/Spinner/Spinner.module.css +2 -2
  677. package/dist/cssm/components/SplitCol/SplitCol.module.css +9 -9
  678. package/dist/cssm/components/SplitLayout/SplitLayout.module.css +2 -2
  679. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
  680. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -1
  681. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  682. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +11 -6
  683. package/dist/cssm/components/Switch/Switch.js +4 -1
  684. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  685. package/dist/cssm/components/Switch/Switch.module.css +25 -17
  686. package/dist/cssm/components/Tabbar/Tabbar.module.css +5 -5
  687. package/dist/cssm/components/TabbarItem/TabbarItem.js +13 -3
  688. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  689. package/dist/cssm/components/TabbarItem/TabbarItem.module.css +16 -16
  690. package/dist/cssm/components/Tabs/Tabs.js +3 -1
  691. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  692. package/dist/cssm/components/Tabs/Tabs.module.css +1 -1
  693. package/dist/cssm/components/TabsItem/TabsItem.module.css +21 -20
  694. package/dist/cssm/components/Tappable/Tappable.module.css +6 -6
  695. package/dist/cssm/components/Textarea/Textarea.module.css +7 -3
  696. package/dist/cssm/components/ToolButton/ToolButton.module.css +7 -7
  697. package/dist/cssm/components/Tooltip/Tooltip.js +7 -80
  698. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  699. package/dist/cssm/components/Tooltip/useTooltip.js +97 -0
  700. package/dist/cssm/components/Tooltip/useTooltip.js.map +1 -0
  701. package/dist/cssm/components/TooltipBase/TooltipBase.js +2 -1
  702. package/dist/cssm/components/TooltipBase/TooltipBase.js.map +1 -1
  703. package/dist/cssm/components/TooltipBase/TooltipBase.module.css +10 -9
  704. package/dist/cssm/components/Typography/Caption/Caption.module.css +96 -96
  705. package/dist/cssm/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
  706. package/dist/cssm/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
  707. package/dist/cssm/components/Typography/Footnote/Footnote.module.css +32 -32
  708. package/dist/cssm/components/Typography/Headline/Headline.module.css +20 -20
  709. package/dist/cssm/components/Typography/Paragraph/Paragraph.module.css +16 -16
  710. package/dist/cssm/components/Typography/Subhead/Subhead.module.css +16 -16
  711. package/dist/cssm/components/Typography/Text/Text.module.css +16 -16
  712. package/dist/cssm/components/Typography/Title/Title.module.css +48 -48
  713. package/dist/cssm/components/Typography/Typography.module.css +1 -1
  714. package/dist/cssm/components/UnstyledTextField/UnstyledTextField.module.css +5 -5
  715. package/dist/cssm/components/UsersStack/UsersStack.js +4 -7
  716. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  717. package/dist/cssm/components/UsersStack/UsersStack.module.css +4 -4
  718. package/dist/cssm/components/View/View.module.css +8 -8
  719. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.module.css +10 -10
  720. package/dist/cssm/components/WriteBar/WriteBar.module.css +10 -11
  721. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
  722. package/dist/cssm/context/CalendarDirectionContext.js.map +1 -1
  723. package/dist/cssm/helpers/getValueByKey.js +17 -0
  724. package/dist/cssm/helpers/getValueByKey.js.map +1 -0
  725. package/dist/cssm/hooks/useAutoDetectDirection.js +21 -0
  726. package/dist/cssm/hooks/useAutoDetectDirection.js.map +1 -0
  727. package/dist/cssm/hooks/useConfigDirection.js +7 -0
  728. package/dist/cssm/hooks/useConfigDirection.js.map +1 -0
  729. package/dist/cssm/hooks/useFloatingElement.js +70 -0
  730. package/dist/cssm/hooks/useFloatingElement.js.map +1 -0
  731. package/dist/cssm/hooks/useFocusTrap.js +1 -1
  732. package/dist/cssm/hooks/useFocusTrap.js.map +1 -1
  733. package/dist/cssm/hooks/useFocusVisible.js +10 -1
  734. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  735. package/dist/cssm/hooks/useReferenceElement.js +13 -0
  736. package/dist/cssm/hooks/useReferenceElement.js.map +1 -0
  737. package/dist/cssm/hooks/useTabsNavigation.js +3 -3
  738. package/dist/cssm/hooks/useTabsNavigation.js.map +1 -1
  739. package/dist/cssm/hooks/useTodayDate.js +4 -4
  740. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  741. package/dist/cssm/index.js +6 -1
  742. package/dist/cssm/index.js.map +1 -1
  743. package/dist/cssm/lib/SSR.js +2 -1
  744. package/dist/cssm/lib/SSR.js.map +1 -1
  745. package/dist/cssm/lib/date.js +15 -0
  746. package/dist/cssm/lib/date.js.map +1 -1
  747. package/dist/cssm/lib/direction/index.js +3 -0
  748. package/dist/cssm/lib/direction/index.js.map +1 -0
  749. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  750. package/dist/cssm/lib/floating/customResizeObserver.js +2 -5
  751. package/dist/cssm/lib/floating/customResizeObserver.js.map +1 -1
  752. package/dist/cssm/lib/floating/functions.js +1 -1
  753. package/dist/cssm/lib/floating/functions.js.map +1 -1
  754. package/dist/cssm/lib/floating/types/component.js.map +1 -1
  755. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
  756. package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  757. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
  758. package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  759. package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
  760. package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
  761. package/dist/cssm/lib/object.js +9 -0
  762. package/dist/cssm/lib/object.js.map +1 -0
  763. package/dist/cssm/lib/select.js.map +1 -1
  764. package/dist/cssm/lib/sheet/controllers/BottomSheetController.js +13 -23
  765. package/dist/cssm/lib/sheet/controllers/BottomSheetController.js.map +1 -1
  766. package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js +4 -5
  767. package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
  768. package/dist/cssm/lib/tokens/TokensClassProvider.module.css +1 -1
  769. package/dist/cssm/styles/common.css +2 -2
  770. package/dist/cssm/styles/themes.css +22 -5
  771. package/dist/cssm/types.js.map +1 -1
  772. package/dist/helpers/getMergedSameEventsByProps.d.ts.map +1 -1
  773. package/dist/helpers/getValueByKey.d.ts +5 -0
  774. package/dist/helpers/getValueByKey.d.ts.map +1 -0
  775. package/dist/helpers/getValueByKey.js +17 -0
  776. package/dist/helpers/getValueByKey.js.map +1 -0
  777. package/dist/helpers/math.d.ts.map +1 -1
  778. package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts.map +1 -1
  779. package/dist/hooks/useAutoDetectColorScheme.d.ts.map +1 -1
  780. package/dist/hooks/useAutoDetectDirection.d.ts +3 -0
  781. package/dist/hooks/useAutoDetectDirection.d.ts.map +1 -0
  782. package/dist/hooks/useAutoDetectDirection.js +21 -0
  783. package/dist/hooks/useAutoDetectDirection.js.map +1 -0
  784. package/dist/hooks/useBooleanState.d.ts.map +1 -1
  785. package/dist/hooks/useConfigDirection.d.ts +3 -0
  786. package/dist/hooks/useConfigDirection.d.ts.map +1 -0
  787. package/dist/hooks/useConfigDirection.js +7 -0
  788. package/dist/hooks/useConfigDirection.js.map +1 -0
  789. package/dist/hooks/useDraggableWithDomApi/autoScroll.d.ts.map +1 -1
  790. package/dist/hooks/useDraggableWithDomApi/useDraggableWithDomApi.d.ts.map +1 -1
  791. package/dist/hooks/useDraggableWithDomApi/utils.d.ts.map +1 -1
  792. package/dist/hooks/useFloatingElement.d.ts +26 -0
  793. package/dist/hooks/useFloatingElement.d.ts.map +1 -0
  794. package/dist/hooks/useFloatingElement.js +71 -0
  795. package/dist/hooks/useFloatingElement.js.map +1 -0
  796. package/dist/hooks/useFocusTrap.d.ts.map +1 -1
  797. package/dist/hooks/useFocusTrap.js +1 -1
  798. package/dist/hooks/useFocusTrap.js.map +1 -1
  799. package/dist/hooks/useFocusVisible.d.ts +9 -1
  800. package/dist/hooks/useFocusVisible.d.ts.map +1 -1
  801. package/dist/hooks/useFocusVisible.js +10 -1
  802. package/dist/hooks/useFocusVisible.js.map +1 -1
  803. package/dist/hooks/useGlobalEscKeyDown.d.ts.map +1 -1
  804. package/dist/hooks/useGlobalOnClickOutside.d.ts.map +1 -1
  805. package/dist/hooks/useMutationObserver.d.ts.map +1 -1
  806. package/dist/hooks/useNativeFormResetListener.d.ts.map +1 -1
  807. package/dist/hooks/usePagination.d.ts.map +1 -1
  808. package/dist/hooks/usePatchChildren.d.ts.map +1 -1
  809. package/dist/hooks/useReferenceElement.d.ts +3 -0
  810. package/dist/hooks/useReferenceElement.d.ts.map +1 -0
  811. package/dist/hooks/useReferenceElement.js +13 -0
  812. package/dist/hooks/useReferenceElement.js.map +1 -0
  813. package/dist/hooks/useTabsNavigation.d.ts +1 -1
  814. package/dist/hooks/useTabsNavigation.d.ts.map +1 -1
  815. package/dist/hooks/useTabsNavigation.js +3 -3
  816. package/dist/hooks/useTabsNavigation.js.map +1 -1
  817. package/dist/hooks/useTodayDate.d.ts.map +1 -1
  818. package/dist/hooks/useTodayDate.js +4 -4
  819. package/dist/hooks/useTodayDate.js.map +1 -1
  820. package/dist/index.d.ts +9 -2
  821. package/dist/index.d.ts.map +1 -1
  822. package/dist/index.js +6 -1
  823. package/dist/index.js.map +1 -1
  824. package/dist/lib/SSR.d.ts +2 -0
  825. package/dist/lib/SSR.d.ts.map +1 -1
  826. package/dist/lib/SSR.js +2 -1
  827. package/dist/lib/SSR.js.map +1 -1
  828. package/dist/lib/accessibility.d.ts.map +1 -1
  829. package/dist/lib/animation/useCSSKeyframesAnimationController.d.ts.map +1 -1
  830. package/dist/lib/animation/useCSSTransition.d.ts.map +1 -1
  831. package/dist/lib/calendar.d.ts.map +1 -1
  832. package/dist/lib/callMultiple.d.ts.map +1 -1
  833. package/dist/lib/children.d.ts.map +1 -1
  834. package/dist/lib/createPortal.d.ts.map +1 -1
  835. package/dist/lib/date.d.ts +2 -0
  836. package/dist/lib/date.d.ts.map +1 -1
  837. package/dist/lib/date.js +15 -0
  838. package/dist/lib/date.js.map +1 -1
  839. package/dist/lib/direction/index.d.ts +2 -0
  840. package/dist/lib/direction/index.d.ts.map +1 -0
  841. package/dist/lib/direction/index.js +3 -0
  842. package/dist/lib/direction/index.js.map +1 -0
  843. package/dist/lib/dom.d.ts.map +1 -1
  844. package/dist/lib/floating/adapters.d.ts +1 -0
  845. package/dist/lib/floating/adapters.d.ts.map +1 -1
  846. package/dist/lib/floating/adapters.js.map +1 -1
  847. package/dist/lib/floating/customResizeObserver.d.ts +1 -1
  848. package/dist/lib/floating/customResizeObserver.d.ts.map +1 -1
  849. package/dist/lib/floating/customResizeObserver.js +2 -5
  850. package/dist/lib/floating/customResizeObserver.js.map +1 -1
  851. package/dist/lib/floating/functions.d.ts +8 -1
  852. package/dist/lib/floating/functions.d.ts.map +1 -1
  853. package/dist/lib/floating/functions.js +1 -1
  854. package/dist/lib/floating/functions.js.map +1 -1
  855. package/dist/lib/floating/types/component.d.ts +10 -0
  856. package/dist/lib/floating/types/component.d.ts.map +1 -1
  857. package/dist/lib/floating/types/component.js.map +1 -1
  858. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts +3 -1
  859. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts.map +1 -1
  860. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
  861. package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
  862. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
  863. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
  864. package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
  865. package/dist/lib/floating/useFloatingWithInteractions/useResolveTriggerType.d.ts.map +1 -1
  866. package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts +4 -0
  867. package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts.map +1 -0
  868. package/dist/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
  869. package/dist/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
  870. package/dist/lib/fx.d.ts.map +1 -1
  871. package/dist/lib/isRefObject.d.ts.map +1 -1
  872. package/dist/lib/object.d.ts +2 -0
  873. package/dist/lib/object.d.ts.map +1 -0
  874. package/dist/lib/object.js +9 -0
  875. package/dist/lib/object.js.map +1 -0
  876. package/dist/lib/rafSchd.d.ts.map +1 -1
  877. package/dist/lib/react/simulateReactInput.d.ts.map +1 -1
  878. package/dist/lib/select.d.ts +1 -0
  879. package/dist/lib/select.d.ts.map +1 -1
  880. package/dist/lib/select.js.map +1 -1
  881. package/dist/lib/sheet/controllers/BottomSheetController.d.ts.map +1 -1
  882. package/dist/lib/sheet/controllers/BottomSheetController.js +13 -23
  883. package/dist/lib/sheet/controllers/BottomSheetController.js.map +1 -1
  884. package/dist/lib/sheet/controllers/CSSTransitionController.d.ts.map +1 -1
  885. package/dist/lib/sheet/controllers/CSSTransitionController.js +4 -5
  886. package/dist/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
  887. package/dist/lib/sheet/useBottomSheet.d.ts.map +1 -1
  888. package/dist/lib/touch/functions.d.ts.map +1 -1
  889. package/dist/lib/utils.d.ts.map +1 -1
  890. package/dist/types.d.ts +1 -1
  891. package/dist/types.d.ts.map +1 -1
  892. package/dist/types.js.map +1 -1
  893. package/dist/vkui.css +1 -1
  894. package/dist/vkui.css.map +1 -1
  895. package/package.json +5 -4
  896. package/src/components/Accordion/Accordion.module.css +6 -6
  897. package/src/components/Accordion/Accordion.tsx +2 -2
  898. package/src/components/ActionSheet/ActionSheet.module.css +9 -9
  899. package/src/components/ActionSheet/ActionSheet.tsx +5 -2
  900. package/src/components/ActionSheet/ActionSheetDropdownMenu.tsx +11 -3
  901. package/src/components/ActionSheet/ActionSheetDropdownSheet.tsx +11 -3
  902. package/src/components/ActionSheet/types.ts +4 -0
  903. package/src/components/ActionSheetItem/ActionSheetItem.module.css +17 -17
  904. package/src/components/Alert/Alert.module.css +25 -25
  905. package/src/components/Alert/Alert.tsx +33 -118
  906. package/src/components/Alert/AlertBase.tsx +156 -0
  907. package/src/components/Alert/AlertTypography.tsx +2 -1
  908. package/src/components/AppRoot/AppRoot.module.css +2 -2
  909. package/src/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.tsx +1 -1
  910. package/src/components/AppRoot/ScrollContext.tsx +162 -50
  911. package/src/components/AspectRatio/AspectRatio.module.css +2 -2
  912. package/src/components/Avatar/Avatar.module.css +1 -1
  913. package/src/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
  914. package/src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx +4 -1
  915. package/src/components/Banner/Banner.module.css +17 -17
  916. package/src/components/Button/Button.module.css +11 -11
  917. package/src/components/ButtonGroup/ButtonGroup.tsx +2 -0
  918. package/src/components/Calendar/Calendar.module.css +7 -7
  919. package/src/components/Calendar/Calendar.tsx +108 -98
  920. package/src/components/CalendarDay/CalendarDay.module.css +11 -11
  921. package/src/components/CalendarDay/CalendarDay.tsx +1 -3
  922. package/src/components/CalendarDays/CalendarDays.module.css +7 -7
  923. package/src/components/CalendarHeader/CalendarHeader.module.css +4 -4
  924. package/src/components/CalendarHeader/CalendarHeader.tsx +1 -3
  925. package/src/components/CalendarRange/CalendarRange.module.css +5 -5
  926. package/src/components/CalendarRange/CalendarRange.tsx +97 -106
  927. package/src/components/CalendarTime/CalendarTime.module.css +1 -1
  928. package/src/components/Card/Card.module.css +7 -7
  929. package/src/components/CardGrid/CardGrid.module.css +3 -3
  930. package/src/components/CardScroll/CardScroll.module.css +16 -16
  931. package/src/components/CardScroll/CardScroll.tsx +49 -29
  932. package/src/components/CarouselBase/CarouselBase.module.css +11 -11
  933. package/src/components/CarouselBase/CarouselBase.tsx +108 -50
  934. package/src/components/CarouselBase/helpers.ts +108 -46
  935. package/src/components/Cell/Cell.module.css +16 -2
  936. package/src/components/Cell/CellDragger/CellDragger.module.css +2 -2
  937. package/src/components/CellButton/CellButton.module.css +7 -7
  938. package/src/components/CellButtonGroup/CellButtonGroup.tsx +20 -0
  939. package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
  940. package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.tsx +21 -0
  941. package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
  942. package/src/components/ChipsInputBase/Chip/Chip.module.css +16 -16
  943. package/src/components/ChipsInputBase/ChipsInputBase.module.css +10 -10
  944. package/src/components/ChipsSelect/ChipsSelect.module.css +1 -1
  945. package/src/components/ChipsSelect/ChipsSelect.tsx +2 -0
  946. package/src/components/ChipsSelect/useChipsSelect.ts +12 -1
  947. package/src/components/Clickable/Clickable.module.css +1 -1
  948. package/src/components/Clickable/Clickable.tsx +37 -25
  949. package/src/components/ColorSchemeProvider/ColorSchemeProvider.tsx +1 -1
  950. package/src/components/ConfigProvider/ConfigProvider.tsx +4 -1
  951. package/src/components/ConfigProvider/ConfigProviderContext.tsx +29 -15
  952. package/src/components/ContentBadge/ContentBadge.module.css +7 -7
  953. package/src/components/ContentCard/ContentCard.module.css +6 -6
  954. package/src/components/ContentCard/ContentCard.tsx +9 -3
  955. package/src/components/Counter/Counter.module.css +4 -4
  956. package/src/components/CustomScrollView/CustomScrollView.module.css +2 -2
  957. package/src/components/CustomSelect/CustomSelect.module.css +2 -2
  958. package/src/components/CustomSelect/CustomSelect.tsx +151 -93
  959. package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +12 -12
  960. package/src/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
  961. package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +1 -0
  962. package/src/components/CustomSelectOption/CustomSelectOption.module.css +8 -8
  963. package/src/components/DateInput/DateInput.module.css +38 -5
  964. package/src/components/DateInput/DateInput.tsx +123 -87
  965. package/src/components/DateInput/hooks.ts +84 -0
  966. package/src/components/DateRangeInput/DateRangeInput.module.css +3 -3
  967. package/src/components/DateRangeInput/DateRangeInput.tsx +104 -81
  968. package/src/components/DirectionProvider/DirectionProvider.tsx +17 -0
  969. package/src/components/DropZone/DropZone.module.css +2 -2
  970. package/src/components/FixedLayout/FixedLayout.module.css +3 -3
  971. package/src/components/Flex/Flex.module.css +26 -14
  972. package/src/components/Flex/Flex.tsx +3 -6
  973. package/src/components/FloatingArrow/FloatingArrow.module.css +1 -1
  974. package/src/components/Footer/Footer.module.css +1 -1
  975. package/src/components/FormField/FormField.module.css +24 -24
  976. package/src/components/FormItem/FormItem.module.css +10 -10
  977. package/src/components/FormItem/FormItem.tsx +1 -0
  978. package/src/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
  979. package/src/components/GridAvatar/GridAvatar.module.css +2 -2
  980. package/src/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
  981. package/src/components/Group/Group.module.css +16 -16
  982. package/src/components/Header/Header.module.css +5 -5
  983. package/src/components/HorizontalCell/HorizontalCell.module.css +3 -3
  984. package/src/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +3 -2
  985. package/src/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
  986. package/src/components/HorizontalScroll/HorizontalScroll.tsx +68 -34
  987. package/src/components/IconButton/IconButton.module.css +14 -9
  988. package/src/components/ImageBase/ImageBase.module.css +15 -6
  989. package/src/components/ImageBase/ImageBase.tsx +16 -5
  990. package/src/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
  991. package/src/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
  992. package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
  993. package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.tsx +5 -4
  994. package/src/components/ImageBase/ImageBaseOverlay/hooks.ts +31 -0
  995. package/src/components/ImageBase/ImageBaseOverlay/types.ts +4 -0
  996. package/src/components/InfoRow/InfoRow.module.css +3 -3
  997. package/src/components/Input/Input.module.css +5 -5
  998. package/src/components/InputLike/InputLike.module.css +3 -3
  999. package/src/components/Link/Link.module.css +6 -6
  1000. package/src/components/Mark/Mark.module.css +2 -2
  1001. package/src/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
  1002. package/src/components/ModalCard/ModalCard.module.css +4 -4
  1003. package/src/components/ModalCard/ModalCard.tsx +1 -0
  1004. package/src/components/ModalCard/ModalCardInternal.tsx +7 -1
  1005. package/src/components/ModalCard/types.ts +9 -1
  1006. package/src/components/ModalCardBase/ModalCardBase.module.css +7 -7
  1007. package/src/components/ModalCardBase/ModalCardBase.tsx +50 -10
  1008. package/src/components/ModalDismissButton/ModalDismissButton.module.css +0 -28
  1009. package/src/components/ModalDismissButton/ModalDismissButton.tsx +11 -9
  1010. package/src/components/ModalOutlet/ModalOutlet.module.css +1 -1
  1011. package/src/components/ModalOutsideButton/ModalOutsideButton.module.css +30 -0
  1012. package/src/components/ModalOutsideButton/ModalOutsideButton.tsx +38 -0
  1013. package/src/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
  1014. package/src/components/ModalOutsideButtons/ModalOutsideButtons.tsx +14 -0
  1015. package/src/components/ModalOverlay/ModalOverlay.module.css +2 -2
  1016. package/src/components/ModalPage/ModalPage.module.css +15 -16
  1017. package/src/components/ModalPage/ModalPageBase.tsx +92 -0
  1018. package/src/components/ModalPage/ModalPageInternal.tsx +25 -43
  1019. package/src/components/ModalPage/types.ts +19 -0
  1020. package/src/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
  1021. package/src/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
  1022. package/src/components/OnboardingTooltip/OnboardingTooltip.module.css +14 -1
  1023. package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +57 -20
  1024. package/src/components/OnboardingTooltip/OnboardingTooltipContainer.tsx +10 -1
  1025. package/src/components/OnboardingTooltip/OnboardingTooltipContext.tsx +11 -0
  1026. package/src/components/Pagination/Pagination.module.css +1 -1
  1027. package/src/components/Pagination/Pagination.tsx +24 -7
  1028. package/src/components/Pagination/PaginationPage/PaginationPage.module.css +8 -8
  1029. package/src/components/Pagination/PaginationPage/PaginationPageButton.tsx +3 -3
  1030. package/src/components/Panel/Panel.module.css +3 -3
  1031. package/src/components/PanelHeader/PanelHeader.module.css +27 -27
  1032. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +3 -0
  1033. package/src/components/PanelHeaderButton/PanelHeaderButton.module.css +19 -8
  1034. package/src/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
  1035. package/src/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
  1036. package/src/components/Placeholder/Placeholder.module.css +3 -3
  1037. package/src/components/PlatformProvider/PlatformProvider.tsx +1 -1
  1038. package/src/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
  1039. package/src/components/PopoutWrapper/PopoutWrapper.tsx +25 -2
  1040. package/src/components/Popover/Popover.module.css +1 -1
  1041. package/src/components/Popover/Popover.tsx +6 -4
  1042. package/src/components/Popover/usePopover.tsx +106 -85
  1043. package/src/components/Popper/Popper.tsx +17 -6
  1044. package/src/components/Progress/Progress.module.css +20 -9
  1045. package/src/components/Progress/Progress.tsx +38 -9
  1046. package/src/components/PullToRefresh/PullToRefresh.module.css +14 -14
  1047. package/src/components/Radio/Radio.module.css +1 -1
  1048. package/src/components/Radio/RadioInput/RadioInput.module.css +1 -1
  1049. package/src/components/RadioGroup/RadioGroup.module.css +1 -1
  1050. package/src/components/Removable/Removable.module.css +22 -6
  1051. package/src/components/Removable/Removable.tsx +22 -4
  1052. package/src/components/RichCell/RichCell.module.css +10 -10
  1053. package/src/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
  1054. package/src/components/Root/Root.module.css +10 -10
  1055. package/src/components/ScreenSpinner/ScreenSpinner.module.css +11 -11
  1056. package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -1
  1057. package/src/components/ScrollArrow/ScrollArrow.module.css +15 -14
  1058. package/src/components/ScrollArrow/ScrollArrow.tsx +10 -1
  1059. package/src/components/Search/Search.module.css +41 -28
  1060. package/src/components/Search/Search.tsx +16 -0
  1061. package/src/components/SegmentedControl/SegmentedControl.module.css +16 -7
  1062. package/src/components/SegmentedControl/SegmentedControl.tsx +11 -13
  1063. package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +11 -11
  1064. package/src/components/Select/Select.module.css +14 -14
  1065. package/src/components/SelectionControl/SelectionControl.module.css +2 -2
  1066. package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
  1067. package/src/components/Separator/Separator.module.css +3 -3
  1068. package/src/components/SimpleCell/SimpleCell.module.css +20 -16
  1069. package/src/components/SimpleGrid/SimpleGrid.module.css +2 -2
  1070. package/src/components/Skeleton/Skeleton.module.css +8 -8
  1071. package/src/components/Slider/Slider.module.css +25 -4
  1072. package/src/components/Slider/Slider.tsx +23 -15
  1073. package/src/components/Slider/SliderThumb/SliderThumb.module.css +7 -7
  1074. package/src/components/Slider/SliderThumb/SliderThumb.tsx +5 -5
  1075. package/src/components/Snackbar/Snackbar.module.css +23 -6
  1076. package/src/components/Snackbar/Snackbar.tsx +7 -0
  1077. package/src/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
  1078. package/src/components/Snackbar/utils.ts +24 -6
  1079. package/src/components/Spacing/Spacing.module.css +1 -1
  1080. package/src/components/Spinner/Spinner.module.css +2 -2
  1081. package/src/components/SplitCol/SplitCol.module.css +9 -9
  1082. package/src/components/SplitLayout/SplitLayout.module.css +2 -2
  1083. package/src/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
  1084. package/src/components/SubnavigationButton/SubnavigationButton.module.css +10 -5
  1085. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -0
  1086. package/src/components/Switch/Switch.module.css +25 -17
  1087. package/src/components/Switch/Switch.tsx +4 -0
  1088. package/src/components/Tabbar/Tabbar.module.css +5 -5
  1089. package/src/components/TabbarItem/TabbarItem.module.css +16 -16
  1090. package/src/components/TabbarItem/TabbarItem.tsx +18 -1
  1091. package/src/components/Tabs/Tabs.module.css +1 -1
  1092. package/src/components/Tabs/Tabs.tsx +3 -1
  1093. package/src/components/TabsItem/TabsItem.module.css +21 -20
  1094. package/src/components/Tappable/Tappable.module.css +6 -6
  1095. package/src/components/Textarea/Textarea.module.css +7 -3
  1096. package/src/components/ToolButton/ToolButton.module.css +7 -7
  1097. package/src/components/Tooltip/Tooltip.tsx +9 -142
  1098. package/src/components/Tooltip/useTooltip.tsx +168 -0
  1099. package/src/components/TooltipBase/TooltipBase.module.css +10 -9
  1100. package/src/components/TooltipBase/TooltipBase.tsx +7 -1
  1101. package/src/components/Typography/Caption/Caption.module.css +96 -96
  1102. package/src/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
  1103. package/src/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
  1104. package/src/components/Typography/Footnote/Footnote.module.css +32 -32
  1105. package/src/components/Typography/Headline/Headline.module.css +20 -20
  1106. package/src/components/Typography/Paragraph/Paragraph.module.css +16 -16
  1107. package/src/components/Typography/Subhead/Subhead.module.css +16 -16
  1108. package/src/components/Typography/Text/Text.module.css +16 -16
  1109. package/src/components/Typography/Title/Title.module.css +48 -48
  1110. package/src/components/Typography/Typography.module.css +1 -1
  1111. package/src/components/UnstyledTextField/UnstyledTextField.module.css +4 -4
  1112. package/src/components/UsersStack/UsersStack.module.css +4 -4
  1113. package/src/components/UsersStack/UsersStack.tsx +3 -7
  1114. package/src/components/View/View.module.css +8 -8
  1115. package/src/components/VisuallyHidden/VisuallyHidden.module.css +8 -8
  1116. package/src/components/WriteBar/WriteBar.module.css +10 -10
  1117. package/src/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
  1118. package/src/context/CalendarDirectionContext.ts +1 -1
  1119. package/src/helpers/getValueByKey.ts +25 -0
  1120. package/src/hooks/useAutoDetectDirection.ts +18 -0
  1121. package/src/hooks/useConfigDirection.ts +8 -0
  1122. package/src/hooks/useFloatingElement.tsx +172 -0
  1123. package/src/hooks/useFocusTrap.ts +1 -1
  1124. package/src/hooks/useFocusVisible.ts +12 -1
  1125. package/src/hooks/useReferenceElement.tsx +13 -0
  1126. package/src/hooks/useTabsNavigation.ts +5 -3
  1127. package/src/hooks/useTodayDate.ts +34 -31
  1128. package/src/index.ts +9 -2
  1129. package/src/lib/SSR.tsx +11 -2
  1130. package/src/lib/date.ts +23 -0
  1131. package/src/lib/direction/index.ts +1 -0
  1132. package/src/lib/floating/adapters.ts +2 -0
  1133. package/src/lib/floating/customResizeObserver.ts +2 -1
  1134. package/src/lib/floating/functions.ts +15 -7
  1135. package/src/lib/floating/types/component.ts +10 -0
  1136. package/src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts +6 -1
  1137. package/src/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.ts +2 -3
  1138. package/src/lib/floating/useReferenceHiddenChangeCallback.ts +26 -0
  1139. package/src/lib/object.ts +14 -0
  1140. package/src/lib/select.ts +2 -0
  1141. package/src/lib/sheet/controllers/BottomSheetController.ts +4 -1
  1142. package/src/lib/sheet/controllers/CSSTransitionController.ts +7 -4
  1143. package/src/lib/tokens/TokensClassProvider.module.css +1 -1
  1144. package/src/styles/common.css +2 -2
  1145. package/src/types.ts +2 -1
  1146. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts +0 -10
  1147. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts.map +0 -1
  1148. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -38
  1149. package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
  1150. package/dist/components/Pagination/utils.d.ts +0 -2
  1151. package/dist/components/Pagination/utils.d.ts.map +0 -1
  1152. package/dist/components/Pagination/utils.js +0 -5
  1153. package/dist/components/Pagination/utils.js.map +0 -1
  1154. package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -39
  1155. package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
  1156. package/dist/cssm/components/Pagination/utils.js +0 -5
  1157. package/dist/cssm/components/Pagination/utils.js.map +0 -1
  1158. package/dist/cssm/hooks/useDirection.js +0 -55
  1159. package/dist/cssm/hooks/useDirection.js.map +0 -1
  1160. package/dist/cssm/lib/tokens/index.js +0 -5
  1161. package/dist/cssm/lib/tokens/index.js.map +0 -1
  1162. package/dist/hooks/useDirection.d.ts +0 -39
  1163. package/dist/hooks/useDirection.d.ts.map +0 -1
  1164. package/dist/hooks/useDirection.js +0 -55
  1165. package/dist/hooks/useDirection.js.map +0 -1
  1166. package/dist/lib/tokens/index.d.ts +0 -5
  1167. package/dist/lib/tokens/index.d.ts.map +0 -1
  1168. package/dist/lib/tokens/index.js +0 -5
  1169. package/dist/lib/tokens/index.js.map +0 -1
  1170. package/src/components/ModalCardBase/ModalCardBaseCloseButton.tsx +0 -51
  1171. package/src/components/Pagination/utils.ts +0 -3
  1172. package/src/hooks/useDirection.ts +0 -63
  1173. package/src/lib/tokens/index.ts +0 -11
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/CustomSelectDropdown/CustomSelectDropdown.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport type { Placement } from '../../lib/floating';\nimport type { HasDataAttribute, HTMLAttributesWithRootRef } from '../../types';\nimport { CustomScrollView, type CustomScrollViewProps } from '../CustomScrollView/CustomScrollView';\nimport { Popper } from '../Popper/Popper';\nimport { Spinner } from '../Spinner/Spinner';\nimport styles from './CustomSelectDropdown.module.css';\n\nexport interface CustomSelectDropdownProps\n extends HTMLAttributesWithRootRef<HTMLDivElement>,\n Pick<CustomScrollViewProps, 'overscrollBehavior'>,\n HasDataAttribute {\n targetRef: React.RefObject<HTMLElement | null>;\n placement?: Placement;\n scrollBoxRef?: React.Ref<HTMLDivElement>;\n fetching?: boolean;\n offsetDistance?: number;\n /**\n * Ширина раскрывающегося списка зависит от контента\n */\n autoWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (placement: Placement) => void;\n /**\n * Отключает максимальную высоту по умолчанию\n */\n noMaxHeight?: boolean;\n}\n\nexport const CustomSelectDropdown = ({\n children,\n targetRef,\n scrollBoxRef,\n placement = 'bottom',\n fetching,\n offsetDistance = 0,\n autoWidth = false,\n forcePortal = true,\n className,\n noMaxHeight = false,\n // CustomScrollView\n overscrollBehavior,\n ...restProps\n}: CustomSelectDropdownProps): React.ReactNode => {\n return (\n <Popper\n targetRef={targetRef}\n offsetByMainAxis={offsetDistance}\n sameWidth={!autoWidth}\n placement={placement}\n className={classNames(\n styles.host,\n 'vkuiInternalCustomSelectDropdown',\n offsetDistance === 0 && (placement.includes('top') ? styles.top : styles.bottom),\n autoWidth && classNames(styles.wide, 'vkuiInternalCustomSelectDropdown--wide'),\n className,\n )}\n usePortal={forcePortal}\n autoUpdateOnTargetResize\n {...restProps}\n >\n <CustomScrollView\n getRootRef={scrollBoxRef}\n className={noMaxHeight ? undefined : styles.inWithMaxHeight}\n overscrollBehavior={overscrollBehavior}\n >\n {fetching ? (\n <div className={styles.fetching}>\n <Spinner size=\"s\" />\n </div>\n ) : (\n children\n )}\n </CustomScrollView>\n </Popper>\n );\n};\n"],"names":["React","classNames","CustomScrollView","Popper","Spinner","CustomSelectDropdown","children","targetRef","scrollBoxRef","placement","fetching","offsetDistance","autoWidth","forcePortal","className","noMaxHeight","overscrollBehavior","restProps","offsetByMainAxis","sameWidth","includes","usePortal","autoUpdateOnTargetResize","getRootRef","undefined","div","size"],"mappings":";;;;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAG7C,SAASC,gBAAgB,QAAoC,0CAAuC;AACpG,SAASC,MAAM,QAAQ,sBAAmB;AAC1C,SAASC,OAAO,QAAQ,wBAAqB;AAwB7C,OAAO,MAAMC,uBAAuB;QAAC,EACnCC,QAAQ,EACRC,SAAS,EACTC,YAAY,EACZC,YAAY,QAAQ,EACpBC,QAAQ,EACRC,iBAAiB,CAAC,EAClBC,YAAY,KAAK,EACjBC,cAAc,IAAI,EAClBC,SAAS,EACTC,cAAc,KAAK,EACnB,mBAAmB;IACnBC,kBAAkB,EAEQ,WADvBC;QAZHX;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QAEAC;;IAGA,qBACE,KAACb;QACCI,WAAWA;QACXW,kBAAkBP;QAClBQ,WAAW,CAACP;QACZH,WAAWA;QACXK,WAAWb,6CAET,oCACAU,mBAAmB,KAAMF,CAAAA,UAAUW,QAAQ,CAAC,6EAAkC,GAC9ER,aAAaX,6CAAwB,2CACrCa;QAEFO,WAAWR;QACXS,wBAAwB;OACpBL;kBAEJ,cAAA,KAACf;YACCqB,YAAYf;YACZM,WAAWC,cAAcS;YACzBR,oBAAoBA;sBAEnBN,yBACC,KAACe;gBAAIX,SAAS;0BACZ,cAAA,KAACV;oBAAQsB,MAAK;;iBAGhBpB;;;AAKV,EAAE"}
1
+ {"version":3,"sources":["../../../src/components/CustomSelectDropdown/CustomSelectDropdown.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport type { Placement } from '../../lib/floating';\nimport type { HasDataAttribute, HTMLAttributesWithRootRef } from '../../types';\nimport { CustomScrollView, type CustomScrollViewProps } from '../CustomScrollView/CustomScrollView';\nimport { Popper } from '../Popper/Popper';\nimport { Spinner } from '../Spinner/Spinner';\nimport styles from './CustomSelectDropdown.module.css';\n\nexport interface CustomSelectDropdownProps\n extends HTMLAttributesWithRootRef<HTMLDivElement>,\n Pick<CustomScrollViewProps, 'overscrollBehavior'>,\n HasDataAttribute {\n targetRef: React.RefObject<HTMLElement | null>;\n placement?: Placement;\n scrollBoxRef?: React.Ref<HTMLDivElement>;\n fetching?: boolean;\n offsetDistance?: number;\n /**\n * Ширина раскрывающегося списка зависит от контента\n */\n autoWidth?: boolean;\n forcePortal?: boolean;\n onPlacementChange?: (placement: Placement) => void;\n /**\n * Отключает максимальную высоту по умолчанию\n */\n noMaxHeight?: boolean;\n}\n\nexport const CustomSelectDropdown = ({\n children,\n targetRef,\n scrollBoxRef,\n placement = 'bottom',\n fetching,\n offsetDistance = 0,\n autoWidth = false,\n forcePortal = true,\n className,\n noMaxHeight = false,\n // CustomScrollView\n overscrollBehavior,\n ...restProps\n}: CustomSelectDropdownProps): React.ReactNode => {\n return (\n <Popper\n targetRef={targetRef}\n offsetByMainAxis={offsetDistance}\n sameWidth={!autoWidth}\n placement={placement}\n className={classNames(\n styles.host,\n 'vkuiInternalCustomSelectDropdown',\n offsetDistance === 0 && (placement.includes('top') ? styles.top : styles.bottom),\n autoWidth && classNames(styles.wide, 'vkuiInternalCustomSelectDropdown--wide'),\n className,\n )}\n usePortal={forcePortal}\n autoUpdateOnTargetResize\n flipMiddlewareFallbackAxisSideDirection=\"none\"\n {...restProps}\n >\n <CustomScrollView\n getRootRef={scrollBoxRef}\n className={noMaxHeight ? undefined : styles.inWithMaxHeight}\n overscrollBehavior={overscrollBehavior}\n >\n {fetching ? (\n <div className={styles.fetching}>\n <Spinner size=\"s\" />\n </div>\n ) : (\n children\n )}\n </CustomScrollView>\n </Popper>\n );\n};\n"],"names":["React","classNames","CustomScrollView","Popper","Spinner","CustomSelectDropdown","children","targetRef","scrollBoxRef","placement","fetching","offsetDistance","autoWidth","forcePortal","className","noMaxHeight","overscrollBehavior","restProps","offsetByMainAxis","sameWidth","includes","usePortal","autoUpdateOnTargetResize","flipMiddlewareFallbackAxisSideDirection","getRootRef","undefined","div","size"],"mappings":";;;;AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,UAAU,QAAQ,kBAAkB;AAG7C,SAASC,gBAAgB,QAAoC,0CAAuC;AACpG,SAASC,MAAM,QAAQ,sBAAmB;AAC1C,SAASC,OAAO,QAAQ,wBAAqB;AAwB7C,OAAO,MAAMC,uBAAuB;QAAC,EACnCC,QAAQ,EACRC,SAAS,EACTC,YAAY,EACZC,YAAY,QAAQ,EACpBC,QAAQ,EACRC,iBAAiB,CAAC,EAClBC,YAAY,KAAK,EACjBC,cAAc,IAAI,EAClBC,SAAS,EACTC,cAAc,KAAK,EACnB,mBAAmB;IACnBC,kBAAkB,EAEQ,WADvBC;QAZHX;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QAEAC;;IAGA,qBACE,KAACb;QACCI,WAAWA;QACXW,kBAAkBP;QAClBQ,WAAW,CAACP;QACZH,WAAWA;QACXK,WAAWb,6CAET,oCACAU,mBAAmB,KAAMF,CAAAA,UAAUW,QAAQ,CAAC,6EAAkC,GAC9ER,aAAaX,6CAAwB,2CACrCa;QAEFO,WAAWR;QACXS,wBAAwB;QACxBC,yCAAwC;OACpCN;kBAEJ,cAAA,KAACf;YACCsB,YAAYhB;YACZM,WAAWC,cAAcU;YACzBT,oBAAoBA;sBAEnBN,yBACC,KAACgB;gBAAIZ,SAAS;0BACZ,cAAA,KAACV;oBAAQuB,MAAK;;iBAGhBrB;;;AAKV,EAAE"}
@@ -1 +1 @@
1
- {"version":3,"file":"CustomSelectOption.d.ts","sourceRoot":"","sources":["../../../src/components/CustomSelectOption/CustomSelectOption.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAuB,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAWlF,MAAM,WAAW,uBAAwB,SAAQ,yBAAyB,CAAC,cAAc,CAAC;IACxF;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,sJAa5B,uBAAuB,KAAG,KAAK,CAAC,SAgDlC,CAAC"}
1
+ {"version":3,"file":"CustomSelectOption.d.ts","sourceRoot":"","sources":["../../../src/components/CustomSelectOption/CustomSelectOption.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAK/B,OAAO,KAAK,EAAuB,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAWlF,MAAM,WAAW,uBAAwB,SAAQ,yBAAyB,CAAC,cAAc,CAAC;IACxF;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC9B;;;OAGG;IACH,MAAM,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;;;;OAMG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,GAAI,mJAahC,uBAAuB,KAAG,KAAK,CAAC,SAgDlC,CAAC"}
@@ -26,7 +26,7 @@ export type DateInputPropsTestsProps = {
26
26
  */
27
27
  minuteFieldTestId?: string;
28
28
  };
29
- export interface DateInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'onChange' | 'size'>, Pick<CalendarProps, 'disablePast' | 'disableFuture' | 'enableTime' | 'shouldDisableDate' | 'onChange' | 'value' | 'doneButtonText' | 'DoneButton' | 'weekStartsOn' | 'disablePickers' | 'changeHoursLabel' | 'changeMinutesLabel' | 'prevMonthLabel' | 'nextMonthLabel' | 'changeMonthLabel' | 'changeYearLabel' | 'changeDayLabel' | 'showNeighboringMonth' | 'size' | 'viewDate' | 'onHeaderChange' | 'onNextMonth' | 'onPrevMonth' | 'prevMonthIcon' | 'nextMonthIcon' | 'minDateTime' | 'maxDateTime' | 'renderDayContent'>, HasRootRef<HTMLDivElement>, Omit<FormFieldProps, 'maxHeight'>, DateInputPropsTestsProps {
29
+ export interface DateInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange' | 'size'>, Pick<CalendarProps, 'disablePast' | 'disableFuture' | 'enableTime' | 'shouldDisableDate' | 'onChange' | 'value' | 'defaultValue' | 'doneButtonText' | 'DoneButton' | 'weekStartsOn' | 'disablePickers' | 'changeHoursLabel' | 'changeMinutesLabel' | 'prevMonthLabel' | 'nextMonthLabel' | 'changeMonthLabel' | 'changeYearLabel' | 'changeDayLabel' | 'showNeighboringMonth' | 'size' | 'viewDate' | 'onHeaderChange' | 'onNextMonth' | 'onPrevMonth' | 'prevMonthIcon' | 'nextMonthIcon' | 'minDateTime' | 'maxDateTime' | 'renderDayContent'>, HasRootRef<HTMLDivElement>, Omit<FormFieldProps, 'maxHeight'>, DateInputPropsTestsProps {
30
30
  /**
31
31
  * Передает атрибуты `data-testid` для интерактивных элементов в календаре
32
32
  */
@@ -41,9 +41,18 @@ export interface DateInputProps extends Omit<React.InputHTMLAttributes<HTMLDivEl
41
41
  * Колбэк срабатывающий при нажатии на кнопку "Done". Используется совместно с флагом `enableTime`.
42
42
  */
43
43
  onApply?: (value?: Date) => void;
44
+ /**
45
+ * Функция для кастомного форматирования отображаемого значения даты.
46
+ * Позволяет переопределить стандартное отображение даты и вернуть собственное представление.
47
+ */
48
+ renderCustomValue?: (date: Date | undefined) => React.ReactNode;
49
+ /**
50
+ * Свойство для отображения времени в нужной таймзоне
51
+ */
52
+ timezone?: string;
44
53
  }
45
54
  /**
46
55
  * @see https://vkcom.github.io/VKUI/#/DateInput
47
56
  */
48
- export declare const DateInput: ({ enableTime, shouldDisableDate, disableFuture, disablePast, minDateTime, maxDateTime, value: valueProp, onChange, calendarPlacement, style, className, doneButtonText, DoneButton, closeOnChange, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel, nextMonthLabel, showNeighboringMonth, size, changeMonthLabel, changeYearLabel, changeDayLabel, changeHoursLabel, changeMinutesLabel, clearFieldLabel, showCalendarLabel, viewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, disableCalendar, renderDayContent, onCalendarOpenChanged, calendarTestsProps, dayFieldTestId, monthFieldTestId, yearFieldTestId, hourFieldTestId, minuteFieldTestId, id, onApply, ...props }: DateInputProps) => React.ReactNode;
57
+ export declare const DateInput: ({ enableTime, shouldDisableDate, disableFuture, disablePast, minDateTime, maxDateTime, value: valueProp, defaultValue, onChange, calendarPlacement: calendarPlacementProp, style, className, doneButtonText, DoneButton, closeOnChange, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel, nextMonthLabel, showNeighboringMonth, size, changeMonthLabel, changeYearLabel, changeDayLabel, changeHoursLabel, changeMinutesLabel, clearFieldLabel, showCalendarLabel, viewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, disableCalendar, renderDayContent, onCalendarOpenChanged, calendarTestsProps, dayFieldTestId, monthFieldTestId, yearFieldTestId, hourFieldTestId, minuteFieldTestId, id, onApply, renderCustomValue, timezone, ...props }: DateInputProps) => React.ReactNode;
49
58
  //# sourceMappingURL=DateInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/components/DateInput/DateInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAY,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAOxE,OAAO,mCAAmC,CAAC;AAQ3C,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,cACf,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,MAAM,CAAC,EACpF,IAAI,CACF,aAAa,EACX,aAAa,GACb,eAAe,GACf,YAAY,GACZ,mBAAmB,GACnB,UAAU,GACV,OAAO,GACP,gBAAgB,GAChB,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,sBAAsB,GACtB,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,aAAa,GACb,aAAa,GACb,eAAe,GACf,eAAe,GACf,aAAa,GACb,aAAa,GACb,kBAAkB,CACrB,EACD,UAAU,CAAC,cAAc,CAAC,EAC1B,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,EACjC,wBAAwB;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;CAClC;AA0CD;;GAEG;AACH,eAAO,MAAM,SAAS,wtBAmDnB,cAAc,KAAG,KAAK,CAAC,SA4OzB,CAAC"}
1
+ {"version":3,"file":"DateInput.d.ts","sourceRoot":"","sources":["../../../src/components/DateInput/DateInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAY,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAQxE,OAAO,mCAAmC,CAAC;AAQ3C,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,cACf,SAAQ,IAAI,CACR,KAAK,CAAC,mBAAmB,CAAC,cAAc,CAAC,EACzC,OAAO,GAAG,cAAc,GAAG,UAAU,GAAG,MAAM,CAC/C,EACD,IAAI,CACF,aAAa,EACX,aAAa,GACb,eAAe,GACf,YAAY,GACZ,mBAAmB,GACnB,UAAU,GACV,OAAO,GACP,cAAc,GACd,gBAAgB,GAChB,YAAY,GACZ,cAAc,GACd,gBAAgB,GAChB,kBAAkB,GAClB,oBAAoB,GACpB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,sBAAsB,GACtB,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,aAAa,GACb,aAAa,GACb,eAAe,GACf,eAAe,GACf,aAAa,GACb,aAAa,GACb,kBAAkB,CACrB,EACD,UAAU,CAAC,cAAc,CAAC,EAC1B,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,EACjC,wBAAwB;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,kBAAkB,CAAC;IACxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD;;OAEG;IACH,OAAO,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IACjC;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,GAAG,SAAS,KAAK,KAAK,CAAC,SAAS,CAAC;IAChE;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AA0CD;;GAEG;AACH,eAAO,MAAM,SAAS,GAAI,uxBAsDvB,cAAc,KAAG,KAAK,CAAC,SA+PzB,CAAC"}
@@ -21,6 +21,7 @@ import { InputLikeDivider } from "../InputLike/InputLikeDivider.js";
21
21
  import { Popper } from "../Popper/Popper.js";
22
22
  import { Text } from "../Typography/Text/Text.js";
23
23
  import { VisuallyHidden } from "../VisuallyHidden/VisuallyHidden.js";
24
+ import { useDateInputValue } from "./hooks.js";
24
25
  const sizeYClassNames = {
25
26
  none: "vkuiDateInput__sizeYNone",
26
27
  compact: "vkuiDateInput__sizeYCompact"
@@ -74,7 +75,7 @@ const getInternalValue = (value)=>{
74
75
  /**
75
76
  * @see https://vkcom.github.io/VKUI/#/DateInput
76
77
  */ export const DateInput = (_param)=>{
77
- var { enableTime, shouldDisableDate, disableFuture, disablePast, minDateTime, maxDateTime, value: valueProp, onChange, calendarPlacement = 'bottom-start', style, className, doneButtonText, DoneButton, closeOnChange = true, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel = 'Предыдущий месяц', nextMonthLabel = 'Следующий месяц', showNeighboringMonth, size, changeMonthLabel = 'Изменить месяц', changeYearLabel = 'Изменить год', changeDayLabel = 'Изменить день', changeHoursLabel = 'Изменить час', changeMinutesLabel = 'Изменить минуту', clearFieldLabel = 'Очистить поле', showCalendarLabel = 'Показать календарь', viewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, disableCalendar = false, renderDayContent, onCalendarOpenChanged, calendarTestsProps, dayFieldTestId, monthFieldTestId, yearFieldTestId, hourFieldTestId, minuteFieldTestId, id, onApply } = _param, props = _object_without_properties(_param, [
78
+ var { enableTime, shouldDisableDate, disableFuture, disablePast, minDateTime, maxDateTime, value: valueProp, defaultValue, onChange, calendarPlacement: calendarPlacementProp = 'bottom-start', style, className, doneButtonText, DoneButton, closeOnChange = true, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel = 'Предыдущий месяц', nextMonthLabel = 'Следующий месяц', showNeighboringMonth, size, changeMonthLabel = 'Изменить месяц', changeYearLabel = 'Изменить год', changeDayLabel = 'Изменить день', changeHoursLabel = 'Изменить час', changeMinutesLabel = 'Изменить минуту', clearFieldLabel = 'Очистить поле', showCalendarLabel = 'Показать календарь', viewDate, onHeaderChange, onNextMonth, onPrevMonth, prevMonthIcon, nextMonthIcon, disableCalendar = false, renderDayContent, onCalendarOpenChanged, calendarTestsProps, dayFieldTestId, monthFieldTestId, yearFieldTestId, hourFieldTestId, minuteFieldTestId, id, onApply, renderCustomValue, timezone } = _param, props = _object_without_properties(_param, [
78
79
  "enableTime",
79
80
  "shouldDisableDate",
80
81
  "disableFuture",
@@ -82,6 +83,7 @@ const getInternalValue = (value)=>{
82
83
  "minDateTime",
83
84
  "maxDateTime",
84
85
  "value",
86
+ "defaultValue",
85
87
  "onChange",
86
88
  "calendarPlacement",
87
89
  "style",
@@ -123,20 +125,22 @@ const getInternalValue = (value)=>{
123
125
  "hourFieldTestId",
124
126
  "minuteFieldTestId",
125
127
  "id",
126
- "onApply"
128
+ "onApply",
129
+ "renderCustomValue",
130
+ "timezone"
127
131
  ]);
128
132
  const daysRef = React.useRef(null);
129
133
  const monthsRef = React.useRef(null);
130
134
  const yearsRef = React.useRef(null);
131
135
  const hoursRef = React.useRef(null);
132
136
  const minutesRef = React.useRef(null);
133
- const [value, setValue] = React.useState(valueProp);
137
+ const { value, updateValue, setInternalValue, getLastUpdatedValue } = useDateInputValue({
138
+ value: valueProp,
139
+ defaultValue,
140
+ onChange,
141
+ timezone
142
+ });
134
143
  const maxElement = enableTime ? 4 : 2;
135
- useIsomorphicLayoutEffect(function updateLocalValue() {
136
- setValue(valueProp);
137
- }, [
138
- valueProp
139
- ]);
140
144
  const onInternalValueChange = React.useCallback((internalValue)=>{
141
145
  for(let i = 0; i <= maxElement; i += 1){
142
146
  if (internalValue[i].length < elementsConfig(i).length) {
@@ -151,12 +155,12 @@ const getInternalValue = (value)=>{
151
155
  }
152
156
  if (isMatch(formattedValue, mask)) {
153
157
  const now = new Date();
154
- onChange === null || onChange === void 0 ? void 0 : onChange(parse(formattedValue, mask, value !== null && value !== void 0 ? value : enableTime ? startOfMinute(now) : startOfDay(now)));
158
+ updateValue(parse(formattedValue, mask, value !== null && value !== void 0 ? value : enableTime ? startOfMinute(now) : startOfDay(now)));
155
159
  }
156
160
  }, [
157
161
  enableTime,
158
162
  maxElement,
159
- onChange,
163
+ updateValue,
160
164
  value
161
165
  ]);
162
166
  const refs = React.useMemo(()=>[
@@ -178,7 +182,7 @@ const getInternalValue = (value)=>{
178
182
  autoFocus,
179
183
  disabled,
180
184
  elementsConfig,
181
- onChange,
185
+ onChange: updateValue,
182
186
  onInternalValueChange,
183
187
  getInternalValue,
184
188
  value,
@@ -188,37 +192,48 @@ const getInternalValue = (value)=>{
188
192
  const handleRootRef = useExternRef(rootRef, getRootRef);
189
193
  useIsomorphicLayoutEffect(function resetValueOnCloseCalendar() {
190
194
  if (!open) {
191
- setValue(valueProp);
195
+ setInternalValue(getLastUpdatedValue());
192
196
  }
193
197
  }, [
194
198
  open,
195
- valueProp
199
+ getLastUpdatedValue
196
200
  ]);
197
201
  const onCalendarChange = React.useCallback((value)=>{
198
202
  if (enableTime) {
199
- setValue(value);
203
+ setInternalValue(value);
200
204
  return;
201
205
  }
202
- onChange === null || onChange === void 0 ? void 0 : onChange(value);
206
+ updateValue(value);
203
207
  if (closeOnChange) {
204
208
  removeFocusFromField();
205
209
  }
206
210
  }, [
207
- onChange,
208
- removeFocusFromField,
211
+ enableTime,
212
+ updateValue,
209
213
  closeOnChange,
210
- enableTime
214
+ setInternalValue,
215
+ removeFocusFromField
211
216
  ]);
212
217
  const onDoneButtonClick = React.useCallback(()=>{
213
- onApply === null || onApply === void 0 ? void 0 : onApply(value);
214
- onChange === null || onChange === void 0 ? void 0 : onChange(value);
218
+ const newValue = updateValue(value);
219
+ onApply === null || onApply === void 0 ? void 0 : onApply(newValue);
215
220
  removeFocusFromField();
216
221
  }, [
217
222
  onApply,
218
- onChange,
219
223
  removeFocusFromField,
224
+ updateValue,
225
+ value
226
+ ]);
227
+ const customValue = React.useMemo(()=>!open && (renderCustomValue === null || renderCustomValue === void 0 ? void 0 : renderCustomValue(value)), [
228
+ open,
229
+ renderCustomValue,
220
230
  value
221
231
  ]);
232
+ // при переключении месяцев высота календаря может меняться,
233
+ // чтобы календарь не прыгал при переключении месяцев каждый раз на
234
+ // лучшую позицию мы запоминаем последнюю удачную, чтобы календарь оставался
235
+ // на ней, пока помещается.
236
+ const [calendarPlacement, setCalendarPlacement] = React.useState(calendarPlacementProp);
222
237
  return /*#__PURE__*/ _jsxs(FormField, _object_spread_props(_object_spread({
223
238
  style: style,
224
239
  className: classNames(sizeY !== 'regular' && sizeYClassNames[sizeY], className),
@@ -239,82 +254,92 @@ const getInternalValue = (value)=>{
239
254
  onFocus: callMultiple(handleFieldEnter, onFocus)
240
255
  }, props), {
241
256
  children: [
242
- /*#__PURE__*/ _jsx(VisuallyHidden, {
243
- id: id,
244
- Component: "input",
245
- name: name,
246
- value: value ? format(value, enableTime ? "dd.MM.yyyy'T'HH:mm" : 'dd.MM.yyyy') : ''
247
- }),
248
- /*#__PURE__*/ _jsxs(Text, {
249
- className: "vkuiDateInput__input",
250
- onKeyDown: handleKeyDown,
251
- // Инцидент: в PR https://github.com/VKCOM/VKUI/pull/6649 стабильно ломается порядок стилей
252
- // из-за чего `.Typography--normalize` перебивает стили.
253
- normalize: false,
254
- Component: "span" // для <span> нормализация не нужна
255
- ,
257
+ /*#__PURE__*/ _jsxs("div", {
258
+ className: "vkuiDateInput__wrapper",
256
259
  children: [
257
- /*#__PURE__*/ _jsx(InputLike, {
258
- length: 2,
259
- getRootRef: daysRef,
260
- index: 0,
261
- onElementSelect: setFocusedElement,
262
- value: internalValue[0],
263
- label: changeDayLabel,
264
- "data-testid": dayFieldTestId
265
- }),
266
- /*#__PURE__*/ _jsx(InputLikeDivider, {
267
- children: "."
268
- }),
269
- /*#__PURE__*/ _jsx(InputLike, {
270
- length: 2,
271
- getRootRef: monthsRef,
272
- index: 1,
273
- onElementSelect: setFocusedElement,
274
- value: internalValue[1],
275
- label: changeMonthLabel,
276
- "data-testid": monthFieldTestId
260
+ /*#__PURE__*/ _jsx(VisuallyHidden, {
261
+ id: id,
262
+ Component: "input",
263
+ name: name,
264
+ value: value ? format(value, enableTime ? "dd.MM.yyyy'T'HH:mm" : 'dd.MM.yyyy') : ''
277
265
  }),
278
- /*#__PURE__*/ _jsx(InputLikeDivider, {
279
- children: "."
280
- }),
281
- /*#__PURE__*/ _jsx(InputLike, {
282
- length: 4,
283
- getRootRef: yearsRef,
284
- index: 2,
285
- onElementSelect: setFocusedElement,
286
- value: internalValue[2],
287
- label: changeYearLabel,
288
- "data-testid": yearFieldTestId
289
- }),
290
- enableTime && /*#__PURE__*/ _jsxs(React.Fragment, {
266
+ /*#__PURE__*/ _jsxs(Text, {
267
+ className: classNames("vkuiDateInput__input", customValue && "vkuiDateInput__hidden"),
268
+ onKeyDown: handleKeyDown,
269
+ // Инцидент: в PR https://github.com/VKCOM/VKUI/pull/6649 стабильно ломается порядок стилей
270
+ // из-за чего `.Typography--normalize` перебивает стили.
271
+ normalize: false,
272
+ Component: "span" // для <span> нормализация не нужна
273
+ ,
291
274
  children: [
275
+ /*#__PURE__*/ _jsx(InputLike, {
276
+ length: 2,
277
+ getRootRef: daysRef,
278
+ index: 0,
279
+ onElementSelect: setFocusedElement,
280
+ value: internalValue[0],
281
+ label: changeDayLabel,
282
+ "data-testid": dayFieldTestId
283
+ }),
292
284
  /*#__PURE__*/ _jsx(InputLikeDivider, {
293
- className: "vkuiDateInput__inputTimeDivider",
294
- children: " "
285
+ children: "."
295
286
  }),
296
287
  /*#__PURE__*/ _jsx(InputLike, {
297
288
  length: 2,
298
- getRootRef: hoursRef,
299
- index: 3,
289
+ getRootRef: monthsRef,
290
+ index: 1,
300
291
  onElementSelect: setFocusedElement,
301
- value: internalValue[3],
302
- label: changeHoursLabel,
303
- "data-testid": hourFieldTestId
292
+ value: internalValue[1],
293
+ label: changeMonthLabel,
294
+ "data-testid": monthFieldTestId
304
295
  }),
305
296
  /*#__PURE__*/ _jsx(InputLikeDivider, {
306
- children: ":"
297
+ children: "."
307
298
  }),
308
299
  /*#__PURE__*/ _jsx(InputLike, {
309
- length: 2,
310
- getRootRef: minutesRef,
311
- index: 4,
300
+ length: 4,
301
+ getRootRef: yearsRef,
302
+ index: 2,
312
303
  onElementSelect: setFocusedElement,
313
- value: internalValue[4],
314
- label: changeMinutesLabel,
315
- "data-testid": minuteFieldTestId
304
+ value: internalValue[2],
305
+ label: changeYearLabel,
306
+ "data-testid": yearFieldTestId
307
+ }),
308
+ enableTime && /*#__PURE__*/ _jsxs(React.Fragment, {
309
+ children: [
310
+ /*#__PURE__*/ _jsx(InputLikeDivider, {
311
+ className: "vkuiDateInput__inputTimeDivider",
312
+ children: " "
313
+ }),
314
+ /*#__PURE__*/ _jsx(InputLike, {
315
+ length: 2,
316
+ getRootRef: hoursRef,
317
+ index: 3,
318
+ onElementSelect: setFocusedElement,
319
+ value: internalValue[3],
320
+ label: changeHoursLabel,
321
+ "data-testid": hourFieldTestId
322
+ }),
323
+ /*#__PURE__*/ _jsx(InputLikeDivider, {
324
+ children: ":"
325
+ }),
326
+ /*#__PURE__*/ _jsx(InputLike, {
327
+ length: 2,
328
+ getRootRef: minutesRef,
329
+ index: 4,
330
+ onElementSelect: setFocusedElement,
331
+ value: internalValue[4],
332
+ label: changeMinutesLabel,
333
+ "data-testid": minuteFieldTestId
334
+ })
335
+ ]
316
336
  })
317
337
  ]
338
+ }),
339
+ customValue && /*#__PURE__*/ _jsx(Text, {
340
+ className: "vkuiDateInput__customValue",
341
+ "aria-hidden": true,
342
+ children: customValue
318
343
  })
319
344
  ]
320
345
  }),
@@ -322,6 +347,7 @@ const getInternalValue = (value)=>{
322
347
  targetRef: rootRef,
323
348
  offsetByMainAxis: 8,
324
349
  placement: calendarPlacement,
350
+ onPlacementChange: setCalendarPlacement,
325
351
  autoUpdateOnTargetResize: true,
326
352
  children: /*#__PURE__*/ _jsx(Calendar, _object_spread({
327
353
  value: value,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/DateInput/DateInput.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { startOfDay, startOfMinute } from 'date-fns';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport type { HasRootRef } from '../../types';\nimport { Calendar, type CalendarProps, type CalendarTestsProps } from '../Calendar/Calendar';\nimport { FormField, type FormFieldProps } from '../FormField/FormField';\nimport { IconButton } from '../IconButton/IconButton';\nimport { InputLike } from '../InputLike/InputLike';\nimport { InputLikeDivider } from '../InputLike/InputLikeDivider';\nimport { Popper } from '../Popper/Popper';\nimport { Text } from '../Typography/Text/Text';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport '../InputLike/InputLike.module.css'; // Reorder css\nimport styles from './DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles.sizeYNone,\n compact: styles.sizeYCompact,\n};\n\nexport type DateInputPropsTestsProps = {\n /**\n * Передает атрибут `data-testid` для поля ввода дня\n */\n dayFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода месяца\n */\n monthFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода года\n */\n yearFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода часа\n */\n hourFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода минут\n */\n minuteFieldTestId?: string;\n};\n\nexport interface DateInputProps\n extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'onChange' | 'size'>,\n Pick<\n CalendarProps,\n | 'disablePast'\n | 'disableFuture'\n | 'enableTime'\n | 'shouldDisableDate'\n | 'onChange'\n | 'value'\n | 'doneButtonText'\n | 'DoneButton'\n | 'weekStartsOn'\n | 'disablePickers'\n | 'changeHoursLabel'\n | 'changeMinutesLabel'\n | 'prevMonthLabel'\n | 'nextMonthLabel'\n | 'changeMonthLabel'\n | 'changeYearLabel'\n | 'changeDayLabel'\n | 'showNeighboringMonth'\n | 'size'\n | 'viewDate'\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n | 'minDateTime'\n | 'maxDateTime'\n | 'renderDayContent'\n >,\n HasRootRef<HTMLDivElement>,\n Omit<FormFieldProps, 'maxHeight'>,\n DateInputPropsTestsProps {\n /**\n * Передает атрибуты `data-testid` для интерактивных элементов в календаре\n */\n calendarTestsProps?: CalendarTestsProps;\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldLabel?: string;\n showCalendarLabel?: string;\n disableCalendar?: boolean;\n onCalendarOpenChanged?: (opened: boolean) => void;\n /**\n * Колбэк срабатывающий при нажатии на кнопку \"Done\". Используется совместно с флагом `enableTime`.\n */\n onApply?: (value?: Date) => void;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n max = 31;\n break;\n case 1:\n max = 12;\n break;\n case 2:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n case 3:\n max = 23;\n break;\n case 4:\n max = 59;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarProps['value']) => {\n const newValue = ['', '', '', '', ''];\n if (value) {\n newValue[0] = String(value.getDate()).padStart(2, '0');\n newValue[1] = String(value.getMonth() + 1).padStart(2, '0');\n newValue[2] = String(value.getFullYear()).padStart(4, '0');\n newValue[3] = String(value.getHours()).padStart(2, '0');\n newValue[4] = String(value.getMinutes()).padStart(2, '0');\n }\n return newValue;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DateInput\n */\nexport const DateInput = ({\n enableTime,\n shouldDisableDate,\n disableFuture,\n disablePast,\n minDateTime,\n maxDateTime,\n value: valueProp,\n onChange,\n calendarPlacement = 'bottom-start',\n style,\n className,\n doneButtonText,\n DoneButton,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthLabel = 'Предыдущий месяц',\n nextMonthLabel = 'Следующий месяц',\n showNeighboringMonth,\n size,\n changeMonthLabel = 'Изменить месяц',\n changeYearLabel = 'Изменить год',\n changeDayLabel = 'Изменить день',\n changeHoursLabel = 'Изменить час',\n changeMinutesLabel = 'Изменить минуту',\n clearFieldLabel = 'Очистить поле',\n showCalendarLabel = 'Показать календарь',\n viewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n renderDayContent,\n onCalendarOpenChanged,\n calendarTestsProps,\n dayFieldTestId,\n monthFieldTestId,\n yearFieldTestId,\n hourFieldTestId,\n minuteFieldTestId,\n id,\n onApply,\n ...props\n}: DateInputProps): React.ReactNode => {\n const daysRef = React.useRef<HTMLSpanElement>(null);\n const monthsRef = React.useRef<HTMLSpanElement>(null);\n const yearsRef = React.useRef<HTMLSpanElement>(null);\n const hoursRef = React.useRef<HTMLSpanElement>(null);\n const minutesRef = React.useRef<HTMLSpanElement>(null);\n const [value, setValue] = React.useState<Date | undefined>(valueProp);\n\n const maxElement = enableTime ? 4 : 2;\n\n useIsomorphicLayoutEffect(\n function updateLocalValue() {\n setValue(valueProp);\n },\n [valueProp],\n );\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n for (let i = 0; i <= maxElement; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n return;\n }\n }\n\n let formattedValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n let mask = 'dd.MM.yyyy';\n if (enableTime) {\n formattedValue += ` ${internalValue[3]}:${internalValue[4]}`;\n mask += ' HH:mm';\n }\n\n if (isMatch(formattedValue, mask)) {\n const now = new Date();\n onChange?.(\n parse(formattedValue, mask, value ?? (enableTime ? startOfMinute(now) : startOfDay(now))),\n );\n }\n },\n [enableTime, maxElement, onChange, value],\n );\n\n const refs = React.useMemo(\n () => [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n onCalendarOpenChanged,\n });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n useIsomorphicLayoutEffect(\n function resetValueOnCloseCalendar() {\n if (!open) {\n setValue(valueProp);\n }\n },\n [open, valueProp],\n );\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n if (enableTime) {\n setValue(value);\n return;\n }\n onChange?.(value);\n if (closeOnChange) {\n removeFocusFromField();\n }\n },\n [onChange, removeFocusFromField, closeOnChange, enableTime],\n );\n\n const onDoneButtonClick = React.useCallback(() => {\n onApply?.(value);\n onChange?.(value);\n removeFocusFromField();\n }, [onApply, onChange, removeFocusFromField, value]);\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== 'regular' && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" label={clearFieldLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" label={showCalendarLabel} onClick={openCalendar}>\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <VisuallyHidden\n id={id}\n Component=\"input\"\n name={name}\n value={value ? format(value, enableTime ? \"dd.MM.yyyy'T'HH:mm\" : 'dd.MM.yyyy') : ''}\n />\n <Text\n className={styles.input}\n onKeyDown={handleKeyDown}\n // Инцидент: в PR https://github.com/VKCOM/VKUI/pull/6649 стабильно ломается порядок стилей\n // из-за чего `.Typography--normalize` перебивает стили.\n normalize={false}\n Component=\"span\" // для <span> нормализация не нужна\n >\n <InputLike\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n label={changeDayLabel}\n data-testid={dayFieldTestId}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n label={changeMonthLabel}\n data-testid={monthFieldTestId}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n label={changeYearLabel}\n data-testid={yearFieldTestId}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider className={styles.inputTimeDivider}> </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n label={changeHoursLabel}\n data-testid={hourFieldTestId}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n label={changeMinutesLabel}\n data-testid={minuteFieldTestId}\n />\n </React.Fragment>\n )}\n </Text>\n {open && !disableCalendar && (\n <Popper\n targetRef={rootRef}\n offsetByMainAxis={8}\n placement={calendarPlacement}\n autoUpdateOnTargetResize\n >\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onDoneButtonClick={onDoneButtonClick}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n DoneButton={DoneButton}\n disablePickers={disablePickers}\n changeHoursLabel={changeHoursLabel}\n changeMinutesLabel={changeMinutesLabel}\n prevMonthLabel={prevMonthLabel}\n nextMonthLabel={nextMonthLabel}\n changeMonthLabel={changeMonthLabel}\n changeYearLabel={changeYearLabel}\n changeDayLabel={changeDayLabel}\n showNeighboringMonth={showNeighboringMonth}\n renderDayContent={renderDayContent}\n size={size}\n viewDate={viewDate}\n onHeaderChange={onHeaderChange}\n onNextMonth={onNextMonth}\n onPrevMonth={onPrevMonth}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n minDateTime={minDateTime}\n maxDateTime={maxDateTime}\n {...calendarTestsProps}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["React","Icon16Clear","Icon20CalendarOutline","classNames","startOfDay","startOfMinute","useAdaptivity","useDateInput","useExternRef","callMultiple","format","isMatch","parse","useIsomorphicLayoutEffect","Calendar","FormField","IconButton","InputLike","InputLikeDivider","Popper","Text","VisuallyHidden","sizeYClassNames","none","compact","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","DateInput","enableTime","shouldDisableDate","disableFuture","disablePast","minDateTime","maxDateTime","valueProp","onChange","calendarPlacement","style","className","doneButtonText","DoneButton","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthLabel","nextMonthLabel","showNeighboringMonth","size","changeMonthLabel","changeYearLabel","changeDayLabel","changeHoursLabel","changeMinutesLabel","clearFieldLabel","showCalendarLabel","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","disableCalendar","renderDayContent","onCalendarOpenChanged","calendarTestsProps","dayFieldTestId","monthFieldTestId","yearFieldTestId","hourFieldTestId","minuteFieldTestId","id","onApply","props","daysRef","useRef","monthsRef","yearsRef","hoursRef","minutesRef","setValue","useState","maxElement","updateLocalValue","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","now","Date","refs","useMemo","rootRef","calendarRef","open","openCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","handleRootRef","resetValueOnCloseCalendar","onCalendarChange","onDoneButtonClick","after","hoverMode","label","Component","onKeyDown","normalize","onElementSelect","data-testid","Fragment","targetRef","offsetByMainAxis","placement","autoUpdateOnTargetResize"],"mappings":"AAAA;;;;;AAEA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,WAAW,EAAEC,qBAAqB,QAAQ,mBAAmB;AACtE,SAASC,UAAU,QAAQ,kBAAkB;AAC7C,SAASC,UAAU,EAAEC,aAAa,QAAQ,WAAW;AACrD,SAASC,aAAa,QAAQ,+BAA4B;AAC1D,SAASC,YAAY,QAAQ,8BAA2B;AACxD,SAASC,YAAY,QAAQ,8BAA2B;AACxD,SAASC,YAAY,QAAQ,4BAAyB;AACtD,SAASC,MAAM,EAAEC,OAAO,EAAEC,KAAK,QAAQ,oBAAiB;AAExD,SAASC,yBAAyB,QAAQ,yCAAsC;AAEhF,SAASC,QAAQ,QAAqD,0BAAuB;AAC7F,SAASC,SAAS,QAA6B,4BAAyB;AACxE,SAASC,UAAU,QAAQ,8BAA2B;AACtD,SAASC,SAAS,QAAQ,4BAAyB;AACnD,SAASC,gBAAgB,QAAQ,mCAAgC;AACjE,SAASC,MAAM,QAAQ,sBAAmB;AAC1C,SAASC,IAAI,QAAQ,6BAA0B;AAC/C,SAASC,cAAc,QAAQ,sCAAmC;AAIlE,MAAMC,kBAAkB;IACtBC,IAAI;IACJC,OAAO;AACT;AA6EA,MAAMC,iBAAiB,CAACC;IACtB,IAAIC,SAAS;IACb,IAAIC,MAAM;IACV,IAAIC,MAAM;IAEV,OAAQH;QACN,KAAK;YACHG,MAAM;YACN;QACF,KAAK;YACHA,MAAM;YACN;QACF,KAAK;YACHA,MAAM;YACND,MAAM;YACND,SAAS;YACT;QACF,KAAK;YACHE,MAAM;YACN;QACF,KAAK;YACHA,MAAM;YACN;IACJ;IAEA,OAAO;QAAEF;QAAQC;QAAKC;IAAI;AAC5B;AAEA,MAAMC,mBAAmB,CAACC;IACxB,MAAMC,WAAW;QAAC;QAAI;QAAI;QAAI;QAAI;KAAG;IACrC,IAAID,OAAO;QACTC,QAAQ,CAAC,EAAE,GAAGC,OAAOF,MAAMG,OAAO,IAAIC,QAAQ,CAAC,GAAG;QAClDH,QAAQ,CAAC,EAAE,GAAGC,OAAOF,MAAMK,QAAQ,KAAK,GAAGD,QAAQ,CAAC,GAAG;QACvDH,QAAQ,CAAC,EAAE,GAAGC,OAAOF,MAAMM,WAAW,IAAIF,QAAQ,CAAC,GAAG;QACtDH,QAAQ,CAAC,EAAE,GAAGC,OAAOF,MAAMO,QAAQ,IAAIH,QAAQ,CAAC,GAAG;QACnDH,QAAQ,CAAC,EAAE,GAAGC,OAAOF,MAAMQ,UAAU,IAAIJ,QAAQ,CAAC,GAAG;IACvD;IACA,OAAOH;AACT;AAEA;;CAEC,GACD,OAAO,MAAMQ,YAAY;QAAC,EACxBC,UAAU,EACVC,iBAAiB,EACjBC,aAAa,EACbC,WAAW,EACXC,WAAW,EACXC,WAAW,EACXf,OAAOgB,SAAS,EAChBC,QAAQ,EACRC,oBAAoB,cAAc,EAClCC,KAAK,EACLC,SAAS,EACTC,cAAc,EACdC,UAAU,EACVC,gBAAgB,IAAI,EACpBC,cAAc,EACdC,UAAU,EACVC,IAAI,EACJC,SAAS,EACTC,QAAQ,EACRC,OAAO,EACPC,OAAO,EACPC,iBAAiB,kBAAkB,EACnCC,iBAAiB,iBAAiB,EAClCC,oBAAoB,EACpBC,IAAI,EACJC,mBAAmB,gBAAgB,EACnCC,kBAAkB,cAAc,EAChCC,iBAAiB,eAAe,EAChCC,mBAAmB,cAAc,EACjCC,qBAAqB,iBAAiB,EACtCC,kBAAkB,eAAe,EACjCC,oBAAoB,oBAAoB,EACxCC,QAAQ,EACRC,cAAc,EACdC,WAAW,EACXC,WAAW,EACXC,aAAa,EACbC,aAAa,EACbC,kBAAkB,KAAK,EACvBC,gBAAgB,EAChBC,qBAAqB,EACrBC,kBAAkB,EAClBC,cAAc,EACdC,gBAAgB,EAChBC,eAAe,EACfC,eAAe,EACfC,iBAAiB,EACjBC,EAAE,EACFC,OAAO,EAEQ,WADZC;QAjDHjD;QACAC;QACAC;QACAC;QACAC;QACAC;QACAf;QACAiB;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,MAAME,UAAU3F,MAAM4F,MAAM,CAAkB;IAC9C,MAAMC,YAAY7F,MAAM4F,MAAM,CAAkB;IAChD,MAAME,WAAW9F,MAAM4F,MAAM,CAAkB;IAC/C,MAAMG,WAAW/F,MAAM4F,MAAM,CAAkB;IAC/C,MAAMI,aAAahG,MAAM4F,MAAM,CAAkB;IACjD,MAAM,CAAC7D,OAAOkE,SAAS,GAAGjG,MAAMkG,QAAQ,CAAmBnD;IAE3D,MAAMoD,aAAa1D,aAAa,IAAI;IAEpC5B,0BACE,SAASuF;QACPH,SAASlD;IACX,GACA;QAACA;KAAU;IAGb,MAAMsD,wBAAwBrG,MAAMsG,WAAW,CAC7C,CAACC;QACC,IAAK,IAAIC,IAAI,GAAGA,KAAKL,YAAYK,KAAK,EAAG;YACvC,IAAID,aAAa,CAACC,EAAE,CAAC7E,MAAM,GAAGF,eAAe+E,GAAG7E,MAAM,EAAE;gBACtD;YACF;QACF;QAEA,IAAI8E,iBAAiB,GAAGF,aAAa,CAAC,EAAE,CAAC,CAAC,EAAEA,aAAa,CAAC,EAAE,CAAC,CAAC,EAAEA,aAAa,CAAC,EAAE,EAAE;QAClF,IAAIG,OAAO;QACX,IAAIjE,YAAY;YACdgE,kBAAkB,CAAC,CAAC,EAAEF,aAAa,CAAC,EAAE,CAAC,CAAC,EAAEA,aAAa,CAAC,EAAE,EAAE;YAC5DG,QAAQ;QACV;QAEA,IAAI/F,QAAQ8F,gBAAgBC,OAAO;YACjC,MAAMC,MAAM,IAAIC;YAChB5D,qBAAAA,+BAAAA,SACEpC,MAAM6F,gBAAgBC,MAAM3E,kBAAAA,mBAAAA,QAAUU,aAAapC,cAAcsG,OAAOvG,WAAWuG;QAEvF;IACF,GACA;QAAClE;QAAY0D;QAAYnD;QAAUjB;KAAM;IAG3C,MAAM8E,OAAO7G,MAAM8G,OAAO,CACxB,IAAM;YAACnB;YAASE;YAAWC;YAAUC;YAAUC;SAAW,EAC1D;QAACL;QAASE;QAAWC;QAAUC;QAAUC;KAAW;IAGtD,MAAM,EACJe,OAAO,EACPC,WAAW,EACXC,IAAI,EACJC,YAAY,EACZX,aAAa,EACbY,aAAa,EACbC,iBAAiB,EACjBC,gBAAgB,EAChBC,KAAK,EACLC,oBAAoB,EACrB,GAAGhH,aAAa;QACf4F;QACAU;QACAnD;QACAC;QACAlC;QACAuB;QACAqD;QACAvE;QACAC;QACAkD;IACF;IAEA,MAAM,EAAEuC,QAAQ,MAAM,EAAE,GAAGlH;IAE3B,MAAMmH,gBAAgBjH,aAAauG,SAASvD;IAE5C3C,0BACE,SAAS6G;QACP,IAAI,CAACT,MAAM;YACThB,SAASlD;QACX;IACF,GACA;QAACkE;QAAMlE;KAAU;IAGnB,MAAM4E,mBAAmB3H,MAAMsG,WAAW,CACxC,CAACvE;QACC,IAAIU,YAAY;YACdwD,SAASlE;YACT;QACF;QACAiB,qBAAAA,+BAAAA,SAAWjB;QACX,IAAIuB,eAAe;YACjBiE;QACF;IACF,GACA;QAACvE;QAAUuE;QAAsBjE;QAAeb;KAAW;IAG7D,MAAMmF,oBAAoB5H,MAAMsG,WAAW,CAAC;QAC1Cb,oBAAAA,8BAAAA,QAAU1D;QACViB,qBAAAA,+BAAAA,SAAWjB;QACXwF;IACF,GAAG;QAAC9B;QAASzC;QAAUuE;QAAsBxF;KAAM;IAEnD,qBACE,MAAChB;QACCmC,OAAOA;QACPC,WAAWhD,WAAWqH,UAAU,aAAalG,eAAe,CAACkG,MAAM,EAAErE;QACrEK,YAAYiE;QACZI,OACE9F,sBACE,KAACf;YAAW8G,WAAU;YAAUC,OAAOxD;YAAiBX,SAAS0D;sBAC/D,cAAA,KAACrH;2BAGH,KAACe;YAAW8G,WAAU;YAAUC,OAAOvD;YAAmBZ,SAASsD;sBACjE,cAAA,KAAChH;;QAIPyD,UAAUA;QACVC,SAASnD,aAAa4G,kBAAkBzD;QACxCC,SAASpD,aAAa4G,kBAAkBxD;OACpC6B;;0BAEJ,KAACrE;gBACCmE,IAAIA;gBACJwC,WAAU;gBACVvE,MAAMA;gBACN1B,OAAOA,QAAQrB,OAAOqB,OAAOU,aAAa,uBAAuB,gBAAgB;;0BAEnF,MAACrB;gBACC+B,SAAS;gBACT8E,WAAWd;gBACX,2FAA2F;gBAC3F,wDAAwD;gBACxDe,WAAW;gBACXF,WAAU,OAAO,mCAAmC;;;kCAEpD,KAAC/G;wBACCU,QAAQ;wBACR6B,YAAYmC;wBACZjE,OAAO;wBACPyG,iBAAiBf;wBACjBrF,OAAOwE,aAAa,CAAC,EAAE;wBACvBwB,OAAO3D;wBACPgE,eAAajD;;kCAEf,KAACjE;kCAAiB;;kCAClB,KAACD;wBACCU,QAAQ;wBACR6B,YAAYqC;wBACZnE,OAAO;wBACPyG,iBAAiBf;wBACjBrF,OAAOwE,aAAa,CAAC,EAAE;wBACvBwB,OAAO7D;wBACPkE,eAAahD;;kCAEf,KAAClE;kCAAiB;;kCAClB,KAACD;wBACCU,QAAQ;wBACR6B,YAAYsC;wBACZpE,OAAO;wBACPyG,iBAAiBf;wBACjBrF,OAAOwE,aAAa,CAAC,EAAE;wBACvBwB,OAAO5D;wBACPiE,eAAa/C;;oBAEd5C,4BACC,MAACzC,MAAMqI,QAAQ;;0CACb,KAACnH;gCAAiBiC,SAAS;0CAA2B;;0CACtD,KAAClC;gCACCU,QAAQ;gCACR6B,YAAYuC;gCACZrE,OAAO;gCACPyG,iBAAiBf;gCACjBrF,OAAOwE,aAAa,CAAC,EAAE;gCACvBwB,OAAO1D;gCACP+D,eAAa9C;;0CAEf,KAACpE;0CAAiB;;0CAClB,KAACD;gCACCU,QAAQ;gCACR6B,YAAYwC;gCACZtE,OAAO;gCACPyG,iBAAiBf;gCACjBrF,OAAOwE,aAAa,CAAC,EAAE;gCACvBwB,OAAOzD;gCACP8D,eAAa7C;;;;;;YAKpB0B,QAAQ,CAAClC,iCACR,KAAC5D;gBACCmH,WAAWvB;gBACXwB,kBAAkB;gBAClBC,WAAWvF;gBACXwF,wBAAwB;0BAExB,cAAA,KAAC3H;oBACCiB,OAAOA;oBACPiB,UAAU2E;oBACVlF,YAAYA;oBACZG,aAAaA;oBACbD,eAAeA;oBACfD,mBAAmBA;oBACnBkF,mBAAmBA;oBACnBpE,YAAYwD;oBACZ5D,gBAAgBA;oBAChBC,YAAYA;oBACZE,gBAAgBA;oBAChBc,kBAAkBA;oBAClBC,oBAAoBA;oBACpBR,gBAAgBA;oBAChBC,gBAAgBA;oBAChBG,kBAAkBA;oBAClBC,iBAAiBA;oBACjBC,gBAAgBA;oBAChBJ,sBAAsBA;oBACtBgB,kBAAkBA;oBAClBf,MAAMA;oBACNQ,UAAUA;oBACVC,gBAAgBA;oBAChBC,aAAaA;oBACbC,aAAaA;oBACbC,eAAeA;oBACfC,eAAeA;oBACfjC,aAAaA;oBACbC,aAAaA;mBACToC;;;;AAMhB,EAAE"}
1
+ {"version":3,"sources":["../../../src/components/DateInput/DateInput.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { startOfDay, startOfMinute } from 'date-fns';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport type { HasRootRef } from '../../types';\nimport { Calendar, type CalendarProps, type CalendarTestsProps } from '../Calendar/Calendar';\nimport { FormField, type FormFieldProps } from '../FormField/FormField';\nimport { IconButton } from '../IconButton/IconButton';\nimport { InputLike } from '../InputLike/InputLike';\nimport { InputLikeDivider } from '../InputLike/InputLikeDivider';\nimport { Popper } from '../Popper/Popper';\nimport { Text } from '../Typography/Text/Text';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\nimport { useDateInputValue } from './hooks';\nimport '../InputLike/InputLike.module.css'; // Reorder css\nimport styles from './DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles.sizeYNone,\n compact: styles.sizeYCompact,\n};\n\nexport type DateInputPropsTestsProps = {\n /**\n * Передает атрибут `data-testid` для поля ввода дня\n */\n dayFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода месяца\n */\n monthFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода года\n */\n yearFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода часа\n */\n hourFieldTestId?: string;\n /**\n * Передает атрибут `data-testid` для поля ввода минут\n */\n minuteFieldTestId?: string;\n};\n\nexport interface DateInputProps\n extends Omit<\n React.InputHTMLAttributes<HTMLDivElement>,\n 'value' | 'defaultValue' | 'onChange' | 'size'\n >,\n Pick<\n CalendarProps,\n | 'disablePast'\n | 'disableFuture'\n | 'enableTime'\n | 'shouldDisableDate'\n | 'onChange'\n | 'value'\n | 'defaultValue'\n | 'doneButtonText'\n | 'DoneButton'\n | 'weekStartsOn'\n | 'disablePickers'\n | 'changeHoursLabel'\n | 'changeMinutesLabel'\n | 'prevMonthLabel'\n | 'nextMonthLabel'\n | 'changeMonthLabel'\n | 'changeYearLabel'\n | 'changeDayLabel'\n | 'showNeighboringMonth'\n | 'size'\n | 'viewDate'\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n | 'minDateTime'\n | 'maxDateTime'\n | 'renderDayContent'\n >,\n HasRootRef<HTMLDivElement>,\n Omit<FormFieldProps, 'maxHeight'>,\n DateInputPropsTestsProps {\n /**\n * Передает атрибуты `data-testid` для интерактивных элементов в календаре\n */\n calendarTestsProps?: CalendarTestsProps;\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldLabel?: string;\n showCalendarLabel?: string;\n disableCalendar?: boolean;\n onCalendarOpenChanged?: (opened: boolean) => void;\n /**\n * Колбэк срабатывающий при нажатии на кнопку \"Done\". Используется совместно с флагом `enableTime`.\n */\n onApply?: (value?: Date) => void;\n /**\n * Функция для кастомного форматирования отображаемого значения даты.\n * Позволяет переопределить стандартное отображение даты и вернуть собственное представление.\n */\n renderCustomValue?: (date: Date | undefined) => React.ReactNode;\n /**\n * Свойство для отображения времени в нужной таймзоне\n */\n timezone?: string;\n}\n\nconst elementsConfig = (index: number) => {\n let length = 2;\n let min = 1;\n let max = 0;\n\n switch (index) {\n case 0:\n max = 31;\n break;\n case 1:\n max = 12;\n break;\n case 2:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n case 3:\n max = 23;\n break;\n case 4:\n max = 59;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarProps['value']) => {\n const newValue = ['', '', '', '', ''];\n if (value) {\n newValue[0] = String(value.getDate()).padStart(2, '0');\n newValue[1] = String(value.getMonth() + 1).padStart(2, '0');\n newValue[2] = String(value.getFullYear()).padStart(4, '0');\n newValue[3] = String(value.getHours()).padStart(2, '0');\n newValue[4] = String(value.getMinutes()).padStart(2, '0');\n }\n return newValue;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DateInput\n */\nexport const DateInput = ({\n enableTime,\n shouldDisableDate,\n disableFuture,\n disablePast,\n minDateTime,\n maxDateTime,\n value: valueProp,\n defaultValue,\n onChange,\n calendarPlacement: calendarPlacementProp = 'bottom-start',\n style,\n className,\n doneButtonText,\n DoneButton,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthLabel = 'Предыдущий месяц',\n nextMonthLabel = 'Следующий месяц',\n showNeighboringMonth,\n size,\n changeMonthLabel = 'Изменить месяц',\n changeYearLabel = 'Изменить год',\n changeDayLabel = 'Изменить день',\n changeHoursLabel = 'Изменить час',\n changeMinutesLabel = 'Изменить минуту',\n clearFieldLabel = 'Очистить поле',\n showCalendarLabel = 'Показать календарь',\n viewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n renderDayContent,\n onCalendarOpenChanged,\n calendarTestsProps,\n dayFieldTestId,\n monthFieldTestId,\n yearFieldTestId,\n hourFieldTestId,\n minuteFieldTestId,\n id,\n onApply,\n renderCustomValue,\n timezone,\n ...props\n}: DateInputProps): React.ReactNode => {\n const daysRef = React.useRef<HTMLSpanElement>(null);\n const monthsRef = React.useRef<HTMLSpanElement>(null);\n const yearsRef = React.useRef<HTMLSpanElement>(null);\n const hoursRef = React.useRef<HTMLSpanElement>(null);\n const minutesRef = React.useRef<HTMLSpanElement>(null);\n\n const { value, updateValue, setInternalValue, getLastUpdatedValue } = useDateInputValue({\n value: valueProp,\n defaultValue,\n onChange,\n timezone,\n });\n\n const maxElement = enableTime ? 4 : 2;\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n for (let i = 0; i <= maxElement; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n return;\n }\n }\n\n let formattedValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n let mask = 'dd.MM.yyyy';\n if (enableTime) {\n formattedValue += ` ${internalValue[3]}:${internalValue[4]}`;\n mask += ' HH:mm';\n }\n\n if (isMatch(formattedValue, mask)) {\n const now = new Date();\n updateValue(\n parse(formattedValue, mask, value ?? (enableTime ? startOfMinute(now) : startOfDay(now))),\n );\n }\n },\n [enableTime, maxElement, updateValue, value],\n );\n\n const refs = React.useMemo(\n () => [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n [daysRef, monthsRef, yearsRef, hoursRef, minutesRef],\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange: updateValue,\n onInternalValueChange,\n getInternalValue,\n value,\n onCalendarOpenChanged,\n });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n useIsomorphicLayoutEffect(\n function resetValueOnCloseCalendar() {\n if (!open) {\n setInternalValue(getLastUpdatedValue());\n }\n },\n [open, getLastUpdatedValue],\n );\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n if (enableTime) {\n setInternalValue(value);\n return;\n }\n updateValue(value);\n if (closeOnChange) {\n removeFocusFromField();\n }\n },\n [enableTime, updateValue, closeOnChange, setInternalValue, removeFocusFromField],\n );\n\n const onDoneButtonClick = React.useCallback(() => {\n const newValue = updateValue(value);\n onApply?.(newValue);\n removeFocusFromField();\n }, [onApply, removeFocusFromField, updateValue, value]);\n\n const customValue = React.useMemo(\n () => !open && renderCustomValue?.(value),\n [open, renderCustomValue, value],\n );\n\n // при переключении месяцев высота календаря может меняться,\n // чтобы календарь не прыгал при переключении месяцев каждый раз на\n // лучшую позицию мы запоминаем последнюю удачную, чтобы календарь оставался\n // на ней, пока помещается.\n const [calendarPlacement, setCalendarPlacement] =\n React.useState<PlacementWithAuto>(calendarPlacementProp);\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== 'regular' && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" label={clearFieldLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" label={showCalendarLabel} onClick={openCalendar}>\n <Icon20CalendarOutline />\n </IconButton>\n )\n }\n disabled={disabled}\n onClick={callMultiple(handleFieldEnter, onClick)}\n onFocus={callMultiple(handleFieldEnter, onFocus)}\n {...props}\n >\n <div className={styles.wrapper}>\n <VisuallyHidden\n id={id}\n Component=\"input\"\n name={name}\n value={value ? format(value, enableTime ? \"dd.MM.yyyy'T'HH:mm\" : 'dd.MM.yyyy') : ''}\n />\n <Text\n className={classNames(styles.input, customValue && styles.hidden)}\n onKeyDown={handleKeyDown}\n // Инцидент: в PR https://github.com/VKCOM/VKUI/pull/6649 стабильно ломается порядок стилей\n // из-за чего `.Typography--normalize` перебивает стили.\n normalize={false}\n Component=\"span\" // для <span> нормализация не нужна\n >\n <InputLike\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n label={changeDayLabel}\n data-testid={dayFieldTestId}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n label={changeMonthLabel}\n data-testid={monthFieldTestId}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n label={changeYearLabel}\n data-testid={yearFieldTestId}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider className={styles.inputTimeDivider}> </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n label={changeHoursLabel}\n data-testid={hourFieldTestId}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n label={changeMinutesLabel}\n data-testid={minuteFieldTestId}\n />\n </React.Fragment>\n )}\n </Text>\n {customValue && (\n <Text className={styles.customValue} aria-hidden>\n {customValue}\n </Text>\n )}\n </div>\n {open && !disableCalendar && (\n <Popper\n targetRef={rootRef}\n offsetByMainAxis={8}\n placement={calendarPlacement}\n onPlacementChange={setCalendarPlacement}\n autoUpdateOnTargetResize\n >\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onDoneButtonClick={onDoneButtonClick}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n DoneButton={DoneButton}\n disablePickers={disablePickers}\n changeHoursLabel={changeHoursLabel}\n changeMinutesLabel={changeMinutesLabel}\n prevMonthLabel={prevMonthLabel}\n nextMonthLabel={nextMonthLabel}\n changeMonthLabel={changeMonthLabel}\n changeYearLabel={changeYearLabel}\n changeDayLabel={changeDayLabel}\n showNeighboringMonth={showNeighboringMonth}\n renderDayContent={renderDayContent}\n size={size}\n viewDate={viewDate}\n onHeaderChange={onHeaderChange}\n onNextMonth={onNextMonth}\n onPrevMonth={onPrevMonth}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n minDateTime={minDateTime}\n maxDateTime={maxDateTime}\n {...calendarTestsProps}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["React","Icon16Clear","Icon20CalendarOutline","classNames","startOfDay","startOfMinute","useAdaptivity","useDateInput","useExternRef","callMultiple","format","isMatch","parse","useIsomorphicLayoutEffect","Calendar","FormField","IconButton","InputLike","InputLikeDivider","Popper","Text","VisuallyHidden","useDateInputValue","sizeYClassNames","none","compact","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","DateInput","enableTime","shouldDisableDate","disableFuture","disablePast","minDateTime","maxDateTime","valueProp","defaultValue","onChange","calendarPlacement","calendarPlacementProp","style","className","doneButtonText","DoneButton","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthLabel","nextMonthLabel","showNeighboringMonth","size","changeMonthLabel","changeYearLabel","changeDayLabel","changeHoursLabel","changeMinutesLabel","clearFieldLabel","showCalendarLabel","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","disableCalendar","renderDayContent","onCalendarOpenChanged","calendarTestsProps","dayFieldTestId","monthFieldTestId","yearFieldTestId","hourFieldTestId","minuteFieldTestId","id","onApply","renderCustomValue","timezone","props","daysRef","useRef","monthsRef","yearsRef","hoursRef","minutesRef","updateValue","setInternalValue","getLastUpdatedValue","maxElement","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","now","Date","refs","useMemo","rootRef","calendarRef","open","openCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","sizeY","handleRootRef","resetValueOnCloseCalendar","onCalendarChange","onDoneButtonClick","customValue","setCalendarPlacement","useState","after","hoverMode","label","div","Component","onKeyDown","normalize","onElementSelect","data-testid","Fragment","aria-hidden","targetRef","offsetByMainAxis","placement","onPlacementChange","autoUpdateOnTargetResize"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ interface UseDateInputValueOptions {
2
+ value?: Date;
3
+ defaultValue?: Date;
4
+ onChange?: (value?: Date) => void;
5
+ timezone?: string;
6
+ }
7
+ export interface UseDateInputValueReturn {
8
+ value?: Date;
9
+ updateValue: (v?: Date) => Date | undefined;
10
+ setInternalValue: (v?: Date) => void;
11
+ getLastUpdatedValue: () => Date | undefined;
12
+ }
13
+ export declare const useDateInputValue: ({ value, defaultValue, onChange, timezone, }: UseDateInputValueOptions) => UseDateInputValueReturn;
14
+ export {};
15
+ //# sourceMappingURL=hooks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../../src/components/DateInput/hooks.ts"],"names":[],"mappings":"AAGA,UAAU,wBAAwB;IAChC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IAClC,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,uBAAuB;IACtC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,GAAG,SAAS,CAAC;IAC5C,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,IAAI,CAAC;IACrC,mBAAmB,EAAE,MAAM,IAAI,GAAG,SAAS,CAAC;CAC7C;AAyBD,eAAO,MAAM,iBAAiB,GAAI,8CAK/B,wBAAwB,KAAG,uBAsC7B,CAAC"}
@@ -0,0 +1,54 @@
1
+ import * as React from "react";
2
+ import { convertDateFromTimeZone, convertDateToTimeZone } from "../../lib/date.js";
3
+ const _convertDateToTimeZone = (date, timezone)=>{
4
+ return convertDateToTimeZone(date, timezone) || undefined;
5
+ };
6
+ const _convertDateFromTimeZone = (date, timezone)=>{
7
+ return convertDateFromTimeZone(date, timezone) || undefined;
8
+ };
9
+ const getStateValue = (defaultStateValue, value, defaultValue, timezone)=>{
10
+ if (value !== undefined) {
11
+ return _convertDateToTimeZone(value, timezone);
12
+ }
13
+ if (defaultValue !== undefined) {
14
+ return _convertDateToTimeZone(defaultValue, timezone);
15
+ }
16
+ return _convertDateToTimeZone(defaultStateValue, timezone);
17
+ };
18
+ export const useDateInputValue = ({ value, defaultValue, onChange, timezone })=>{
19
+ const isControlled = value !== undefined;
20
+ const [internalValue, setInternalValue] = React.useState(getStateValue(undefined, value, defaultValue, timezone));
21
+ const lastUpdatedValueRef = React.useRef(getStateValue(undefined, value, defaultValue, timezone));
22
+ React.useEffect(()=>{
23
+ if (isControlled) {
24
+ setInternalValue(_convertDateToTimeZone(value, timezone));
25
+ lastUpdatedValueRef.current = _convertDateToTimeZone(value, timezone);
26
+ }
27
+ }, [
28
+ isControlled,
29
+ timezone,
30
+ value
31
+ ]);
32
+ const getLastUpdatedValue = React.useCallback(()=>lastUpdatedValueRef.current, []);
33
+ const updateValue = React.useCallback((newValue)=>{
34
+ if (!isControlled) {
35
+ setInternalValue(newValue);
36
+ lastUpdatedValueRef.current = newValue;
37
+ }
38
+ const originalTimezoneValue = _convertDateFromTimeZone(newValue, timezone);
39
+ onChange === null || onChange === void 0 ? void 0 : onChange(originalTimezoneValue);
40
+ return originalTimezoneValue;
41
+ }, [
42
+ isControlled,
43
+ onChange,
44
+ timezone
45
+ ]);
46
+ return {
47
+ value: internalValue,
48
+ updateValue,
49
+ setInternalValue,
50
+ getLastUpdatedValue
51
+ };
52
+ };
53
+
54
+ //# sourceMappingURL=hooks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/components/DateInput/hooks.ts"],"sourcesContent":["import * as React from 'react';\nimport { convertDateFromTimeZone, convertDateToTimeZone } from '../../lib/date';\n\ninterface UseDateInputValueOptions {\n value?: Date;\n defaultValue?: Date;\n onChange?: (value?: Date) => void;\n timezone?: string;\n}\n\nexport interface UseDateInputValueReturn {\n value?: Date;\n updateValue: (v?: Date) => Date | undefined;\n setInternalValue: (v?: Date) => void;\n getLastUpdatedValue: () => Date | undefined;\n}\n\nconst _convertDateToTimeZone = (date?: Date, timezone?: string): Date | undefined => {\n return convertDateToTimeZone(date, timezone) || undefined;\n};\n\nconst _convertDateFromTimeZone = (date?: Date, timezone?: string): Date | undefined => {\n return convertDateFromTimeZone(date, timezone) || undefined;\n};\n\nconst getStateValue = (\n defaultStateValue?: Date,\n value?: Date,\n defaultValue?: Date,\n timezone?: string,\n): Date | undefined => {\n if (value !== undefined) {\n return _convertDateToTimeZone(value, timezone);\n }\n if (defaultValue !== undefined) {\n return _convertDateToTimeZone(defaultValue, timezone);\n }\n return _convertDateToTimeZone(defaultStateValue, timezone);\n};\n\nexport const useDateInputValue = ({\n value,\n defaultValue,\n onChange,\n timezone,\n}: UseDateInputValueOptions): UseDateInputValueReturn => {\n const isControlled = value !== undefined;\n\n const [internalValue, setInternalValue] = React.useState<Date | undefined>(\n getStateValue(undefined, value, defaultValue, timezone),\n );\n const lastUpdatedValueRef = React.useRef<Date | undefined>(\n getStateValue(undefined, value, defaultValue, timezone),\n );\n\n React.useEffect(() => {\n if (isControlled) {\n setInternalValue(_convertDateToTimeZone(value, timezone));\n lastUpdatedValueRef.current = _convertDateToTimeZone(value, timezone);\n }\n }, [isControlled, timezone, value]);\n\n const getLastUpdatedValue = React.useCallback(() => lastUpdatedValueRef.current, []);\n\n const updateValue = React.useCallback(\n (newValue?: Date) => {\n if (!isControlled) {\n setInternalValue(newValue);\n lastUpdatedValueRef.current = newValue;\n }\n const originalTimezoneValue = _convertDateFromTimeZone(newValue, timezone);\n onChange?.(originalTimezoneValue);\n return originalTimezoneValue;\n },\n [isControlled, onChange, timezone],\n );\n\n return {\n value: internalValue,\n updateValue,\n setInternalValue,\n getLastUpdatedValue,\n };\n};\n"],"names":["React","convertDateFromTimeZone","convertDateToTimeZone","_convertDateToTimeZone","date","timezone","undefined","_convertDateFromTimeZone","getStateValue","defaultStateValue","value","defaultValue","useDateInputValue","onChange","isControlled","internalValue","setInternalValue","useState","lastUpdatedValueRef","useRef","useEffect","current","getLastUpdatedValue","useCallback","updateValue","newValue","originalTimezoneValue"],"mappings":"AAAA,YAAYA,WAAW,QAAQ;AAC/B,SAASC,uBAAuB,EAAEC,qBAAqB,QAAQ,oBAAiB;AAgBhF,MAAMC,yBAAyB,CAACC,MAAaC;IAC3C,OAAOH,sBAAsBE,MAAMC,aAAaC;AAClD;AAEA,MAAMC,2BAA2B,CAACH,MAAaC;IAC7C,OAAOJ,wBAAwBG,MAAMC,aAAaC;AACpD;AAEA,MAAME,gBAAgB,CACpBC,mBACAC,OACAC,cACAN;IAEA,IAAIK,UAAUJ,WAAW;QACvB,OAAOH,uBAAuBO,OAAOL;IACvC;IACA,IAAIM,iBAAiBL,WAAW;QAC9B,OAAOH,uBAAuBQ,cAAcN;IAC9C;IACA,OAAOF,uBAAuBM,mBAAmBJ;AACnD;AAEA,OAAO,MAAMO,oBAAoB,CAAC,EAChCF,KAAK,EACLC,YAAY,EACZE,QAAQ,EACRR,QAAQ,EACiB;IACzB,MAAMS,eAAeJ,UAAUJ;IAE/B,MAAM,CAACS,eAAeC,iBAAiB,GAAGhB,MAAMiB,QAAQ,CACtDT,cAAcF,WAAWI,OAAOC,cAAcN;IAEhD,MAAMa,sBAAsBlB,MAAMmB,MAAM,CACtCX,cAAcF,WAAWI,OAAOC,cAAcN;IAGhDL,MAAMoB,SAAS,CAAC;QACd,IAAIN,cAAc;YAChBE,iBAAiBb,uBAAuBO,OAAOL;YAC/Ca,oBAAoBG,OAAO,GAAGlB,uBAAuBO,OAAOL;QAC9D;IACF,GAAG;QAACS;QAAcT;QAAUK;KAAM;IAElC,MAAMY,sBAAsBtB,MAAMuB,WAAW,CAAC,IAAML,oBAAoBG,OAAO,EAAE,EAAE;IAEnF,MAAMG,cAAcxB,MAAMuB,WAAW,CACnC,CAACE;QACC,IAAI,CAACX,cAAc;YACjBE,iBAAiBS;YACjBP,oBAAoBG,OAAO,GAAGI;QAChC;QACA,MAAMC,wBAAwBnB,yBAAyBkB,UAAUpB;QACjEQ,qBAAAA,+BAAAA,SAAWa;QACX,OAAOA;IACT,GACA;QAACZ;QAAcD;QAAUR;KAAS;IAGpC,OAAO;QACLK,OAAOK;QACPS;QACAR;QACAM;IACF;AACF,EAAE"}
@@ -27,7 +27,7 @@ export type DateRangeInputTestsProps = {
27
27
  */
28
28
  endDateTestsProps?: DateTestsProps;
29
29
  };
30
- export interface DateRangeInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'onChange'>, Pick<CalendarRangeProps, 'disablePast' | 'disableFuture' | 'shouldDisableDate' | 'onChange' | 'value' | 'weekStartsOn' | 'disablePickers' | 'prevMonthLabel' | 'nextMonthLabel' | 'changeMonthLabel' | 'changeYearLabel' | 'changeDayLabel' | 'prevMonthIcon' | 'nextMonthIcon' | 'renderDayContent'>, HasRootRef<HTMLDivElement>, Omit<FormFieldProps, 'maxHeight'>, DateRangeInputTestsProps {
30
+ export interface DateRangeInputProps extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'defaultValue' | 'onChange'>, Pick<CalendarRangeProps, 'disablePast' | 'disableFuture' | 'shouldDisableDate' | 'onChange' | 'value' | 'defaultValue' | 'weekStartsOn' | 'disablePickers' | 'prevMonthLabel' | 'nextMonthLabel' | 'changeMonthLabel' | 'changeYearLabel' | 'changeDayLabel' | 'prevMonthIcon' | 'nextMonthIcon' | 'renderDayContent'>, HasRootRef<HTMLDivElement>, Omit<FormFieldProps, 'maxHeight'>, DateRangeInputTestsProps {
31
31
  /**
32
32
  * Передает атрибуты `data-testid` для интерактивных элементов в календаре
33
33
  */
@@ -48,6 +48,6 @@ export interface DateRangeInputProps extends Omit<React.InputHTMLAttributes<HTML
48
48
  /**
49
49
  * @see https://vkcom.github.io/VKUI/#/DateRangeInput
50
50
  */
51
- export declare const DateRangeInput: ({ shouldDisableDate, disableFuture, disablePast, value, onChange, calendarPlacement, style, className, closeOnChange, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel, nextMonthLabel, changeDayLabel, changeMonthLabel, changeYearLabel, changeStartDayLabel, changeStartMonthLabel, changeStartYearLabel, changeEndDayLabel, changeEndMonthLabel, changeEndYearLabel, clearFieldLabel, showCalendarLabel, prevMonthIcon, nextMonthIcon, disableCalendar, onCalendarOpenChanged, renderDayContent, calendarTestsProps, startDateTestsProps, endDateTestsProps, id, ...props }: DateRangeInputProps) => React.ReactNode;
51
+ export declare const DateRangeInput: ({ shouldDisableDate, disableFuture, disablePast, value: valueProp, defaultValue, onChange, calendarPlacement: calendarPlacementProp, style, className, closeOnChange, disablePickers, getRootRef, name, autoFocus, disabled, onClick, onFocus, prevMonthLabel, nextMonthLabel, changeDayLabel, changeMonthLabel, changeYearLabel, changeStartDayLabel, changeStartMonthLabel, changeStartYearLabel, changeEndDayLabel, changeEndMonthLabel, changeEndYearLabel, clearFieldLabel, showCalendarLabel, prevMonthIcon, nextMonthIcon, disableCalendar, onCalendarOpenChanged, renderDayContent, calendarTestsProps, startDateTestsProps, endDateTestsProps, id, ...props }: DateRangeInputProps) => React.ReactNode;
52
52
  export {};
53
53
  //# sourceMappingURL=DateRangeInput.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateRangeInput.d.ts","sourceRoot":"","sources":["../../../src/components/DateRangeInput/DateRangeInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAE7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAexE,KAAK,cAAc,GAAG;IACpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,mBAAmB,CAAC,EAAE,cAAc,CAAC;IACrC;;OAEG;IACH,iBAAiB,CAAC,EAAE,cAAc,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,mBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC,EAC3E,IAAI,CACF,kBAAkB,EAChB,aAAa,GACb,eAAe,GACf,mBAAmB,GACnB,UAAU,GACV,OAAO,GACP,cAAc,GACd,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,eAAe,GACf,kBAAkB,CACrB,EACD,UAAU,CAAC,cAAc,CAAC,EAC1B,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,EACjC,wBAAwB;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA0CD;;GAEG;AACH,eAAO,MAAM,cAAc,2lBAwCxB,mBAAmB,KAAG,KAAK,CAAC,SAyN9B,CAAC"}
1
+ {"version":3,"file":"DateRangeInput.d.ts","sourceRoot":"","sources":["../../../src/components/DateRangeInput/DateRangeInput.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAU/B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,uBAAuB,EAE7B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAa,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAexE,KAAK,cAAc,GAAG;IACpB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC;;OAEG;IACH,mBAAmB,CAAC,EAAE,cAAc,CAAC;IACrC;;OAEG;IACH,iBAAiB,CAAC,EAAE,cAAc,CAAC;CACpC,CAAC;AAEF,MAAM,WAAW,mBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,cAAc,GAAG,UAAU,CAAC,EAC5F,IAAI,CACF,kBAAkB,EAChB,aAAa,GACb,eAAe,GACf,mBAAmB,GACnB,UAAU,GACV,OAAO,GACP,cAAc,GACd,cAAc,GACd,gBAAgB,GAChB,gBAAgB,GAChB,gBAAgB,GAChB,kBAAkB,GAClB,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,GACf,eAAe,GACf,kBAAkB,CACrB,EACD,UAAU,CAAC,cAAc,CAAC,EAC1B,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,EACjC,wBAAwB;IAC1B;;OAEG;IACH,kBAAkB,CAAC,EAAE,uBAAuB,CAAC;IAC7C,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,qBAAqB,CAAC,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IAClD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AA0CD;;GAEG;AACH,eAAO,MAAM,cAAc,GAAI,woBAyC5B,mBAAmB,KAAG,KAAK,CAAC,SA6O9B,CAAC"}