@vkontakte/vkui 5.5.4 → 5.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1179) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
  3. package/dist/cjs/components/Accordion/AccordionSummary.js.map +1 -1
  4. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  5. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  6. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  7. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  8. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -2
  9. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  10. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  11. package/dist/cjs/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  12. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  13. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  14. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  15. package/dist/cjs/components/AppRoot/AppRoot.js +6 -5
  16. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  17. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  18. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  19. package/dist/cjs/components/AppRoot/ScrollContext.js +5 -3
  20. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  21. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  22. package/dist/cjs/components/AspectRatio/AspectRatio.js.map +1 -1
  23. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  24. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  25. package/dist/cjs/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  26. package/dist/cjs/components/Avatar/AvatarBadge/icons.js.map +1 -1
  27. package/dist/cjs/components/Avatar/helpers.js.map +1 -1
  28. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  29. package/dist/cjs/components/Banner/Banner.d.ts +5 -1
  30. package/dist/cjs/components/Banner/Banner.js +4 -3
  31. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  32. package/dist/cjs/components/BaseGallery/BaseGallery.js +15 -9
  33. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  34. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  35. package/dist/cjs/components/Button/Button.d.ts +2 -1
  36. package/dist/cjs/components/Button/Button.js +5 -3
  37. package/dist/cjs/components/Button/Button.js.map +1 -1
  38. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  39. package/dist/cjs/components/Calendar/Calendar.js +2 -1
  40. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  41. package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -2
  42. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  43. package/dist/cjs/components/CalendarDays/CalendarDays.js +6 -5
  44. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  45. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  46. package/dist/cjs/components/CalendarRange/CalendarRange.js +16 -8
  47. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  48. package/dist/cjs/components/CalendarTime/CalendarTime.js +4 -2
  49. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  50. package/dist/cjs/components/Card/Card.js.map +1 -1
  51. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  52. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  53. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  54. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  55. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  56. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  57. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  58. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  59. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  60. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  61. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  62. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +10 -4
  63. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  64. package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  65. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +20 -9
  66. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  67. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  68. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  69. package/dist/cjs/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  70. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  71. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  72. package/dist/cjs/components/CustomScrollView/CustomScrollView.js +2 -1
  73. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  74. package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  75. package/dist/cjs/components/CustomSelect/CustomSelect.js +15 -8
  76. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  77. package/dist/cjs/components/CustomSelect/CustomSelectClearButton.js.map +1 -1
  78. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -2
  79. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  80. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  81. package/dist/cjs/components/DateInput/DateInput.js +4 -2
  82. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  83. package/dist/cjs/components/DatePicker/DatePicker.js +8 -5
  84. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  85. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +11 -7
  86. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  87. package/dist/cjs/components/Div/Div.js.map +1 -1
  88. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  89. package/dist/cjs/components/Epic/Epic.d.ts +1 -0
  90. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  91. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  92. package/dist/cjs/components/File/File.js.map +1 -1
  93. package/dist/cjs/components/FixedLayout/FixedLayout.js +2 -1
  94. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  95. package/dist/cjs/components/FocusTrap/FocusTrap.js +4 -3
  96. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  97. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  98. package/dist/cjs/components/Footer/Footer.js.map +1 -1
  99. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  100. package/dist/cjs/components/FormItem/FormItem.js +2 -1
  101. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  102. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  103. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  104. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  105. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  106. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  107. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  108. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  109. package/dist/cjs/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  110. package/dist/cjs/components/Group/Group.d.ts +8 -8
  111. package/dist/cjs/components/Group/Group.js +1 -1
  112. package/dist/cjs/components/Group/Group.js.map +1 -1
  113. package/dist/cjs/components/Header/Header.js.map +1 -1
  114. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  115. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  116. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.js +56 -0
  117. package/dist/cjs/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  118. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +2 -2
  119. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  120. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  121. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  122. package/dist/cjs/components/Image/Image.js.map +1 -1
  123. package/dist/cjs/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  124. package/dist/cjs/components/ImageBase/ImageBase.js +4 -2
  125. package/dist/cjs/components/ImageBase/ImageBase.js.map +1 -1
  126. package/dist/cjs/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  127. package/dist/cjs/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  128. package/dist/cjs/components/ImageBase/context.js.map +1 -1
  129. package/dist/cjs/components/ImageBase/helpers.js.map +1 -1
  130. package/dist/cjs/components/ImageBase/validators.js +3 -4
  131. package/dist/cjs/components/ImageBase/validators.js.map +1 -1
  132. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  133. package/dist/cjs/components/Input/Input.js.map +1 -1
  134. package/dist/cjs/components/InputLike/InputLike.js +6 -4
  135. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  136. package/dist/cjs/components/InputLike/InputLikeDivider.js.map +1 -1
  137. package/dist/cjs/components/Link/Link.js.map +1 -1
  138. package/dist/cjs/components/List/List.js.map +1 -1
  139. package/dist/cjs/components/List/ListContext.js.map +1 -1
  140. package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
  141. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  142. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  143. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +9 -8
  144. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  145. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  146. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  147. package/dist/cjs/components/ModalPage/ModalPageContext.js.map +1 -1
  148. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  149. package/dist/cjs/components/ModalRoot/ModalRoot.js +21 -15
  150. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  151. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  152. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  153. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +12 -6
  154. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  155. package/dist/cjs/components/ModalRoot/types.d.ts +4 -2
  156. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  157. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  158. package/dist/cjs/components/ModalRoot/useModalRootContext.js.map +1 -1
  159. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  160. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  161. package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  162. package/dist/cjs/components/Pagination/Pagination.js +2 -1
  163. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  164. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  165. package/dist/cjs/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  166. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  167. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  168. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  169. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  170. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  171. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  172. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  173. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  174. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  175. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  176. package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
  177. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  178. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  179. package/dist/cjs/components/Popover/Popover.js.map +1 -1
  180. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  181. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  182. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  183. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  184. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -1
  185. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  186. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  187. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  188. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  189. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  190. package/dist/cjs/components/Removable/Removable.js +2 -2
  191. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  192. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  193. package/dist/cjs/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  194. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  195. package/dist/cjs/components/Root/Root.d.ts +1 -0
  196. package/dist/cjs/components/Root/Root.js.map +1 -1
  197. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  198. package/dist/cjs/components/ScrollArrow/ScrollArrow.js.map +1 -1
  199. package/dist/cjs/components/Search/Search.js +2 -2
  200. package/dist/cjs/components/Search/Search.js.map +1 -1
  201. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  202. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  203. package/dist/cjs/components/Select/Select.js.map +1 -1
  204. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  205. package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
  206. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  207. package/dist/cjs/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  208. package/dist/cjs/components/SimpleCell/Chevron/Chevron.js +27 -0
  209. package/dist/cjs/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  210. package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +6 -2
  211. package/dist/cjs/components/SimpleCell/SimpleCell.js +16 -5
  212. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  213. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  214. package/dist/cjs/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  215. package/dist/cjs/components/Slider/helpers.js.map +1 -1
  216. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  217. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  218. package/dist/cjs/components/Spinner/Spinner.d.ts +2 -1
  219. package/dist/cjs/components/Spinner/Spinner.js +19 -4
  220. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  221. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  222. package/dist/cjs/components/SplitCol/SplitColContext.js.map +1 -1
  223. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  224. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  225. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  226. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  227. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  228. package/dist/cjs/components/TabbarItem/TabbarItem.js +1 -1
  229. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  230. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  231. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  232. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  233. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  234. package/dist/cjs/components/Textarea/Textarea.js +2 -1
  235. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  236. package/dist/cjs/components/Tooltip/Tooltip.js +4 -2
  237. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  238. package/dist/cjs/components/Tooltip/TooltipContainer.js.map +1 -1
  239. package/dist/cjs/components/Touch/Touch.js +1 -1
  240. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  241. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  242. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  243. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  244. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  245. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
  246. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  247. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  248. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  249. package/dist/cjs/components/Typography/Typography.js.map +1 -1
  250. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  251. package/dist/cjs/components/View/View.d.ts +1 -0
  252. package/dist/cjs/components/View/View.js +16 -8
  253. package/dist/cjs/components/View/View.js.map +1 -1
  254. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  255. package/dist/cjs/components/View/utils.js +2 -2
  256. package/dist/cjs/components/View/utils.js.map +1 -1
  257. package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  258. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  259. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  260. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  261. package/dist/cjs/helpers/appearance.js.map +1 -1
  262. package/dist/cjs/helpers/generateVKUITokensClassName.js.map +1 -1
  263. package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
  264. package/dist/cjs/helpers/math.js.map +1 -1
  265. package/dist/cjs/helpers/range.js.map +1 -1
  266. package/dist/cjs/hoc/withContext.js.map +1 -1
  267. package/dist/cjs/hoc/withInsets.js.map +1 -1
  268. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  269. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  270. package/dist/cjs/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  271. package/dist/cjs/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  272. package/dist/cjs/hooks/useAdaptivityConditionalRender/index.js.map +1 -1
  273. package/dist/cjs/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  274. package/dist/cjs/hooks/useAdaptivityHasHover.js.map +1 -1
  275. package/dist/cjs/hooks/useAdaptivityHasPointer.js.map +1 -1
  276. package/dist/cjs/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  277. package/dist/cjs/hooks/useAppearance.js.map +1 -1
  278. package/dist/cjs/hooks/useAutoDetectAppearance.js +2 -1
  279. package/dist/cjs/hooks/useAutoDetectAppearance.js.map +1 -1
  280. package/dist/cjs/hooks/useBooleanState.js.map +1 -1
  281. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -1
  282. package/dist/cjs/hooks/useCalendar.js +6 -3
  283. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  284. package/dist/cjs/hooks/useChipsInput.js +2 -1
  285. package/dist/cjs/hooks/useChipsInput.js.map +1 -1
  286. package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
  287. package/dist/cjs/hooks/useDateInput.js +5 -3
  288. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  289. package/dist/cjs/hooks/useEffectDev.js.map +1 -1
  290. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  291. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  292. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  293. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  294. package/dist/cjs/hooks/useFocusWithin.js.map +1 -1
  295. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  296. package/dist/cjs/hooks/useId.js.map +1 -1
  297. package/dist/cjs/hooks/useInsets.js.map +1 -1
  298. package/dist/cjs/hooks/useIsClient.js.map +1 -1
  299. package/dist/cjs/hooks/useKeyboard.js +4 -4
  300. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  301. package/dist/cjs/hooks/useKeyboardInputTracker.js.map +1 -1
  302. package/dist/cjs/hooks/useMediaQueries.js.map +1 -1
  303. package/dist/cjs/hooks/useObjectMemo.js.map +1 -1
  304. package/dist/cjs/hooks/useOrientationChange.js +1 -1
  305. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  306. package/dist/cjs/hooks/usePagination.js.map +1 -1
  307. package/dist/cjs/hooks/usePatchChildrenRef.js +2 -1
  308. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  309. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  310. package/dist/cjs/hooks/usePrevious.js.map +1 -1
  311. package/dist/cjs/hooks/useTimeout.js +2 -1
  312. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  313. package/dist/cjs/hooks/useTodayDate.js.map +1 -1
  314. package/dist/cjs/hooks/useWaitTransitionFinish.js +4 -2
  315. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  316. package/dist/cjs/index.d.ts +3 -1
  317. package/dist/cjs/index.js +4 -0
  318. package/dist/cjs/index.js.map +1 -1
  319. package/dist/cjs/lib/SSR.js.map +1 -1
  320. package/dist/cjs/lib/accessibility.js.map +1 -1
  321. package/dist/cjs/lib/adaptivity/constants.js.map +1 -1
  322. package/dist/cjs/lib/adaptivity/functions.js.map +1 -1
  323. package/dist/cjs/lib/animate.js.map +1 -1
  324. package/dist/cjs/lib/browser.js.map +1 -1
  325. package/dist/cjs/lib/calendar.js.map +1 -1
  326. package/dist/cjs/lib/callMultiple.js.map +1 -1
  327. package/dist/cjs/lib/date.js.map +1 -1
  328. package/dist/cjs/lib/dom.js.map +1 -1
  329. package/dist/cjs/lib/floating/adapters.js.map +1 -1
  330. package/dist/cjs/lib/floating/functions.js.map +1 -1
  331. package/dist/cjs/lib/floating/index.js.map +1 -1
  332. package/dist/cjs/lib/fx.js.map +1 -1
  333. package/dist/cjs/lib/getNavId.js.map +1 -1
  334. package/dist/cjs/lib/isRefObject.js.map +1 -1
  335. package/dist/cjs/lib/matchMedia.js.map +1 -1
  336. package/dist/cjs/lib/offset.js +6 -5
  337. package/dist/cjs/lib/offset.js.map +1 -1
  338. package/dist/cjs/lib/platform.js.map +1 -1
  339. package/dist/cjs/lib/polyfills.js.map +1 -1
  340. package/dist/cjs/lib/removeObjectKeys.js.map +1 -1
  341. package/dist/cjs/lib/select.js +2 -2
  342. package/dist/cjs/lib/select.js.map +1 -1
  343. package/dist/cjs/lib/styles.js.map +1 -1
  344. package/dist/cjs/lib/supportEvents.js.map +1 -1
  345. package/dist/cjs/lib/taptic.js.map +1 -1
  346. package/dist/cjs/lib/testing.js.map +1 -1
  347. package/dist/cjs/lib/tokensClassProvider.js.map +1 -1
  348. package/dist/cjs/lib/touch.js.map +1 -1
  349. package/dist/cjs/lib/useIsomorphicLayoutEffect.js.map +1 -1
  350. package/dist/cjs/lib/utils.js.map +1 -1
  351. package/dist/cjs/lib/warnOnce.js.map +1 -1
  352. package/dist/cjs/shared/breakpoints.js.map +1 -1
  353. package/dist/components/Accordion/Accordion.js.map +1 -1
  354. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  355. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  356. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  357. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -2
  358. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  359. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  360. package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  361. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  362. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  363. package/dist/components/Alert/Alert.js.map +1 -1
  364. package/dist/components/AppRoot/AppRoot.js +6 -5
  365. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  366. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  367. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  368. package/dist/components/AppRoot/ScrollContext.js +5 -3
  369. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  370. package/dist/components/Avatar/Avatar.js.map +1 -1
  371. package/dist/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  372. package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  373. package/dist/components/Avatar/helpers.js.map +1 -1
  374. package/dist/components/Banner/Banner.d.ts +5 -1
  375. package/dist/components/Banner/Banner.js +4 -3
  376. package/dist/components/Banner/Banner.js.map +1 -1
  377. package/dist/components/BaseGallery/BaseGallery.js +15 -9
  378. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  379. package/dist/components/BaseGallery/helpers.js.map +1 -1
  380. package/dist/components/Button/Button.d.ts +2 -1
  381. package/dist/components/Button/Button.js +5 -3
  382. package/dist/components/Button/Button.js.map +1 -1
  383. package/dist/components/Calendar/Calendar.js +2 -1
  384. package/dist/components/Calendar/Calendar.js.map +1 -1
  385. package/dist/components/CalendarDay/CalendarDay.js +4 -2
  386. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  387. package/dist/components/CalendarDays/CalendarDays.js +6 -5
  388. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  389. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  390. package/dist/components/CalendarRange/CalendarRange.js +16 -8
  391. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  392. package/dist/components/CalendarTime/CalendarTime.js +4 -2
  393. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  394. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  395. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  396. package/dist/components/Cell/Cell.js.map +1 -1
  397. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  398. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  399. package/dist/components/Cell/useDraggable.js.map +1 -1
  400. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  401. package/dist/components/Chip/Chip.js.map +1 -1
  402. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  403. package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  404. package/dist/components/ChipsInputBase/ChipsInputBase.js +10 -4
  405. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  406. package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  407. package/dist/components/ChipsSelect/ChipsSelect.js +20 -9
  408. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  409. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  410. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  411. package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  412. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  413. package/dist/components/Counter/Counter.js.map +1 -1
  414. package/dist/components/CustomScrollView/CustomScrollView.js +2 -1
  415. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  416. package/dist/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  417. package/dist/components/CustomSelect/CustomSelect.js +15 -8
  418. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  419. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -2
  420. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  421. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  422. package/dist/components/DateInput/DateInput.js +4 -2
  423. package/dist/components/DateInput/DateInput.js.map +1 -1
  424. package/dist/components/DatePicker/DatePicker.js +8 -5
  425. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  426. package/dist/components/DateRangeInput/DateRangeInput.js +11 -7
  427. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  428. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  429. package/dist/components/Epic/Epic.d.ts +1 -0
  430. package/dist/components/Epic/Epic.js.map +1 -1
  431. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  432. package/dist/components/File/File.js.map +1 -1
  433. package/dist/components/FixedLayout/FixedLayout.js +2 -1
  434. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  435. package/dist/components/FocusTrap/FocusTrap.js +4 -3
  436. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  437. package/dist/components/FormField/FormField.js.map +1 -1
  438. package/dist/components/FormItem/FormItem.js +2 -1
  439. package/dist/components/FormItem/FormItem.js.map +1 -1
  440. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  441. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
  442. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  443. package/dist/components/Gallery/Gallery.js.map +1 -1
  444. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  445. package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  446. package/dist/components/Group/Group.d.ts +8 -8
  447. package/dist/components/Group/Group.js +1 -1
  448. package/dist/components/Group/Group.js.map +1 -1
  449. package/dist/components/Header/Header.js.map +1 -1
  450. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  451. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.js +45 -0
  452. package/dist/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  453. package/dist/components/HorizontalScroll/HorizontalScroll.js +2 -2
  454. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  455. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  456. package/dist/components/IconButton/IconButton.js.map +1 -1
  457. package/dist/components/Image/Image.js.map +1 -1
  458. package/dist/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  459. package/dist/components/ImageBase/ImageBase.js +4 -2
  460. package/dist/components/ImageBase/ImageBase.js.map +1 -1
  461. package/dist/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  462. package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  463. package/dist/components/ImageBase/context.js.map +1 -1
  464. package/dist/components/ImageBase/helpers.js.map +1 -1
  465. package/dist/components/ImageBase/validators.js +3 -4
  466. package/dist/components/ImageBase/validators.js.map +1 -1
  467. package/dist/components/Input/Input.js.map +1 -1
  468. package/dist/components/InputLike/InputLike.js +6 -4
  469. package/dist/components/InputLike/InputLike.js.map +1 -1
  470. package/dist/components/Link/Link.js.map +1 -1
  471. package/dist/components/List/List.js.map +1 -1
  472. package/dist/components/List/ListContext.js.map +1 -1
  473. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  474. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  475. package/dist/components/ModalCardBase/ModalCardBase.js +9 -8
  476. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  477. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  478. package/dist/components/ModalPage/ModalPageContext.js.map +1 -1
  479. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  480. package/dist/components/ModalRoot/ModalRoot.js +21 -15
  481. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  482. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  483. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  484. package/dist/components/ModalRoot/ModalRootDesktop.js +12 -6
  485. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  486. package/dist/components/ModalRoot/types.d.ts +4 -2
  487. package/dist/components/ModalRoot/types.js.map +1 -1
  488. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  489. package/dist/components/ModalRoot/useModalRootContext.js.map +1 -1
  490. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  491. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  492. package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  493. package/dist/components/Pagination/Pagination.js +2 -1
  494. package/dist/components/Pagination/Pagination.js.map +1 -1
  495. package/dist/components/Panel/Panel.js.map +1 -1
  496. package/dist/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  497. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  498. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  499. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  500. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  501. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  502. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  503. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  504. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  505. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  506. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  507. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  508. package/dist/components/Popover/Popover.js.map +1 -1
  509. package/dist/components/Popper/Popper.js.map +1 -1
  510. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  511. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  512. package/dist/components/PullToRefresh/PullToRefresh.js +2 -1
  513. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  514. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  515. package/dist/components/Radio/Radio.js.map +1 -1
  516. package/dist/components/Removable/Removable.js +2 -2
  517. package/dist/components/Removable/Removable.js.map +1 -1
  518. package/dist/components/RichCell/RichCell.js.map +1 -1
  519. package/dist/components/Root/Root.d.ts +1 -0
  520. package/dist/components/Root/Root.js.map +1 -1
  521. package/dist/components/Search/Search.js +2 -2
  522. package/dist/components/Search/Search.js.map +1 -1
  523. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  524. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  525. package/dist/components/Select/Select.js.map +1 -1
  526. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  527. package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
  528. package/dist/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  529. package/dist/components/SimpleCell/Chevron/Chevron.js +16 -0
  530. package/dist/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  531. package/dist/components/SimpleCell/SimpleCell.d.ts +6 -2
  532. package/dist/components/SimpleCell/SimpleCell.js +16 -5
  533. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  534. package/dist/components/Slider/Slider.js.map +1 -1
  535. package/dist/components/Slider/helpers.js.map +1 -1
  536. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  537. package/dist/components/Spinner/Spinner.d.ts +2 -1
  538. package/dist/components/Spinner/Spinner.js +19 -4
  539. package/dist/components/Spinner/Spinner.js.map +1 -1
  540. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  541. package/dist/components/SplitCol/SplitColContext.js.map +1 -1
  542. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  543. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  544. package/dist/components/Switch/Switch.js.map +1 -1
  545. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  546. package/dist/components/TabbarItem/TabbarItem.js +1 -1
  547. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  548. package/dist/components/Tabs/Tabs.js.map +1 -1
  549. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  550. package/dist/components/Tappable/Tappable.js.map +1 -1
  551. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  552. package/dist/components/Textarea/Textarea.js +2 -1
  553. package/dist/components/Textarea/Textarea.js.map +1 -1
  554. package/dist/components/Tooltip/Tooltip.js +4 -2
  555. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  556. package/dist/components/Tooltip/TooltipContainer.js.map +1 -1
  557. package/dist/components/Touch/Touch.js +1 -1
  558. package/dist/components/Touch/Touch.js.map +1 -1
  559. package/dist/components/Touch/TouchContext.js.map +1 -1
  560. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  561. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  562. package/dist/components/Typography/Text/Text.js.map +1 -1
  563. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  564. package/dist/components/View/View.d.ts +1 -0
  565. package/dist/components/View/View.js +16 -8
  566. package/dist/components/View/View.js.map +1 -1
  567. package/dist/components/View/ViewInfinite.js.map +1 -1
  568. package/dist/components/View/utils.js +2 -2
  569. package/dist/components/View/utils.js.map +1 -1
  570. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  571. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  572. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  573. package/dist/components.css +10 -9
  574. package/dist/components.css.map +1 -1
  575. package/dist/components.js.tmp +3108 -2238
  576. package/dist/cssm/components/Accordion/Accordion.js +1 -1
  577. package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
  578. package/dist/cssm/components/Accordion/AccordionSummary.js +1 -1
  579. package/dist/cssm/components/Accordion/AccordionSummary.js.map +1 -1
  580. package/dist/cssm/components/ActionSheet/ActionSheet.js +2 -2
  581. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  582. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  583. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +3 -3
  584. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  585. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
  586. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  587. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +3 -3
  588. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  589. package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js +2 -2
  590. package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -1
  591. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  592. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +3 -3
  593. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  594. package/dist/cssm/components/Alert/Alert.js +6 -6
  595. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  596. package/dist/cssm/components/AppRoot/AppRoot.js +3 -3
  597. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  598. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  599. package/dist/cssm/components/AppRoot/AppRootPortal.js +2 -2
  600. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  601. package/dist/cssm/components/AppRoot/ScrollContext.js +5 -5
  602. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  603. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +1 -1
  604. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  605. package/dist/cssm/components/AspectRatio/AspectRatio.js +1 -1
  606. package/dist/cssm/components/AspectRatio/AspectRatio.js.map +1 -1
  607. package/dist/cssm/components/Avatar/Avatar.js +1 -1
  608. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  609. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js +2 -2
  610. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.js.map +1 -1
  611. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +2 -2
  612. package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
  613. package/dist/cssm/components/Avatar/AvatarBadge/icons.js +2 -2
  614. package/dist/cssm/components/Avatar/AvatarBadge/icons.js.map +1 -1
  615. package/dist/cssm/components/Avatar/helpers.js.map +1 -1
  616. package/dist/cssm/components/Badge/Badge.js +1 -1
  617. package/dist/cssm/components/Badge/Badge.js.map +1 -1
  618. package/dist/cssm/components/Banner/Banner.d.ts +5 -1
  619. package/dist/cssm/components/Banner/Banner.js +2 -2
  620. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  621. package/dist/cssm/components/Banner/Banner.module.css +6 -1
  622. package/dist/cssm/components/BaseGallery/BaseGallery.js +3 -3
  623. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  624. package/dist/cssm/components/BaseGallery/helpers.js +4 -4
  625. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  626. package/dist/cssm/components/Button/Button.d.ts +2 -1
  627. package/dist/cssm/components/Button/Button.js +4 -3
  628. package/dist/cssm/components/Button/Button.js.map +1 -1
  629. package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -1
  630. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  631. package/dist/cssm/components/Calendar/Calendar.js +2 -2
  632. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  633. package/dist/cssm/components/CalendarDay/CalendarDay.js +2 -2
  634. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  635. package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -2
  636. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  637. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +7 -7
  638. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  639. package/dist/cssm/components/CalendarRange/CalendarRange.js +2 -2
  640. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  641. package/dist/cssm/components/CalendarTime/CalendarTime.js +1 -1
  642. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  643. package/dist/cssm/components/Card/Card.js +1 -1
  644. package/dist/cssm/components/Card/Card.js.map +1 -1
  645. package/dist/cssm/components/CardGrid/CardGrid.js +2 -2
  646. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  647. package/dist/cssm/components/CardScroll/CardScroll.js +2 -2
  648. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  649. package/dist/cssm/components/Cell/Cell.js +3 -3
  650. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  651. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +1 -1
  652. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  653. package/dist/cssm/components/Cell/CellDragger/CellDragger.js +1 -1
  654. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  655. package/dist/cssm/components/Cell/useDraggable.js +1 -1
  656. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  657. package/dist/cssm/components/CellButton/CellButton.js +1 -1
  658. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  659. package/dist/cssm/components/Checkbox/Checkbox.js +3 -3
  660. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  661. package/dist/cssm/components/Chip/Chip.js +2 -2
  662. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  663. package/dist/cssm/components/ChipsInput/ChipsInput.js +1 -1
  664. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  665. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +4 -0
  666. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +9 -5
  667. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  668. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -0
  669. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +13 -5
  670. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  671. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +2 -2
  672. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  673. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  674. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +1 -1
  675. package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
  676. package/dist/cssm/components/ContentCard/ContentCard.js +3 -3
  677. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  678. package/dist/cssm/components/Counter/Counter.js +1 -1
  679. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  680. package/dist/cssm/components/CustomScrollView/CustomScrollView.js +3 -3
  681. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  682. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js +1 -1
  683. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  684. package/dist/cssm/components/CustomSelect/CustomSelect.js +4 -4
  685. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  686. package/dist/cssm/components/CustomSelect/CustomSelectClearButton.js +1 -1
  687. package/dist/cssm/components/CustomSelect/CustomSelectClearButton.js.map +1 -1
  688. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -2
  689. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  690. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +2 -2
  691. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  692. package/dist/cssm/components/DateInput/DateInput.js +3 -3
  693. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  694. package/dist/cssm/components/DatePicker/DatePicker.js +8 -8
  695. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  696. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +3 -3
  697. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  698. package/dist/cssm/components/Div/Div.js +1 -1
  699. package/dist/cssm/components/Div/Div.js.map +1 -1
  700. package/dist/cssm/components/DropdownIcon/DropdownIcon.js +2 -2
  701. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  702. package/dist/cssm/components/Epic/Epic.d.ts +1 -0
  703. package/dist/cssm/components/Epic/Epic.js +1 -1
  704. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  705. package/dist/cssm/components/Epic/ScrollSaver.js +2 -2
  706. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  707. package/dist/cssm/components/File/File.js +1 -1
  708. package/dist/cssm/components/File/File.js.map +1 -1
  709. package/dist/cssm/components/FixedLayout/FixedLayout.js +3 -3
  710. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  711. package/dist/cssm/components/FocusTrap/FocusTrap.js +4 -4
  712. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  713. package/dist/cssm/components/FocusVisible/FocusVisible.js +1 -1
  714. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  715. package/dist/cssm/components/Footer/Footer.js +1 -1
  716. package/dist/cssm/components/Footer/Footer.js.map +1 -1
  717. package/dist/cssm/components/FormField/FormField.js +2 -2
  718. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  719. package/dist/cssm/components/FormItem/FormItem.js +2 -2
  720. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  721. package/dist/cssm/components/FormLayout/FormLayout.js +1 -1
  722. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  723. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -2
  724. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  725. package/dist/cssm/components/FormStatus/FormStatus.js +1 -1
  726. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  727. package/dist/cssm/components/Gallery/Gallery.js +1 -1
  728. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  729. package/dist/cssm/components/Gradient/Gradient.js +1 -1
  730. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  731. package/dist/cssm/components/GridAvatar/GridAvatar.js +1 -1
  732. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  733. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js +2 -2
  734. package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.js.map +1 -1
  735. package/dist/cssm/components/Group/Group.d.ts +8 -8
  736. package/dist/cssm/components/Group/Group.js +4 -4
  737. package/dist/cssm/components/Group/Group.js.map +1 -1
  738. package/dist/cssm/components/Group/Group.module.css +2 -0
  739. package/dist/cssm/components/Header/Header.js +2 -2
  740. package/dist/cssm/components/Header/Header.js.map +1 -1
  741. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -3
  742. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  743. package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +0 -5
  744. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.d.ts +35 -0
  745. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.js +35 -0
  746. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.js.map +1 -0
  747. package/dist/cssm/components/HorizontalCellShowMore/HorizontalCellShowMore.module.css +47 -0
  748. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +2 -2
  749. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  750. package/dist/cssm/components/HoverPopper/HoverPopper.js +1 -1
  751. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  752. package/dist/cssm/components/IconButton/IconButton.js +2 -2
  753. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  754. package/dist/cssm/components/Image/Image.js +1 -1
  755. package/dist/cssm/components/Image/Image.js.map +1 -1
  756. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js +2 -2
  757. package/dist/cssm/components/Image/ImageBadge/ImageBadge.js.map +1 -1
  758. package/dist/cssm/components/ImageBase/ImageBase.js +1 -1
  759. package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
  760. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js +2 -2
  761. package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.js.map +1 -1
  762. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +2 -2
  763. package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
  764. package/dist/cssm/components/ImageBase/context.js.map +1 -1
  765. package/dist/cssm/components/ImageBase/helpers.js.map +1 -1
  766. package/dist/cssm/components/ImageBase/validators.js +3 -4
  767. package/dist/cssm/components/ImageBase/validators.js.map +1 -1
  768. package/dist/cssm/components/InfoRow/InfoRow.js +1 -1
  769. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  770. package/dist/cssm/components/Input/Input.js +2 -2
  771. package/dist/cssm/components/Input/Input.js.map +1 -1
  772. package/dist/cssm/components/InputLike/InputLike.js +1 -1
  773. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  774. package/dist/cssm/components/InputLike/InputLikeDivider.js +1 -1
  775. package/dist/cssm/components/InputLike/InputLikeDivider.js.map +1 -1
  776. package/dist/cssm/components/Link/Link.js +1 -1
  777. package/dist/cssm/components/Link/Link.js.map +1 -1
  778. package/dist/cssm/components/List/List.js +1 -1
  779. package/dist/cssm/components/List/List.js.map +1 -1
  780. package/dist/cssm/components/List/ListContext.js.map +1 -1
  781. package/dist/cssm/components/LocaleProvider/LocaleProvider.js +1 -1
  782. package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
  783. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
  784. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  785. package/dist/cssm/components/ModalCard/ModalCard.js +3 -3
  786. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  787. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +11 -10
  788. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  789. package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +4 -5
  790. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -1
  791. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  792. package/dist/cssm/components/ModalPage/ModalPage.js +4 -4
  793. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  794. package/dist/cssm/components/ModalPage/ModalPage.module.css +5 -1
  795. package/dist/cssm/components/ModalPage/ModalPageContext.js.map +1 -1
  796. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
  797. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  798. package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -12
  799. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  800. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +1 -1
  801. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  802. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  803. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +7 -7
  804. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  805. package/dist/cssm/components/ModalRoot/types.d.ts +4 -2
  806. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  807. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  808. package/dist/cssm/components/ModalRoot/useModalRootContext.js.map +1 -1
  809. package/dist/cssm/components/ModalRoot/withModalRootContext.js +1 -1
  810. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  811. package/dist/cssm/components/NativeSelect/NativeSelect.js +2 -2
  812. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  813. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js +1 -1
  814. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  815. package/dist/cssm/components/Pagination/Pagination.js +2 -2
  816. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  817. package/dist/cssm/components/Panel/Panel.js +2 -2
  818. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  819. package/dist/cssm/components/PanelHeader/LegacyPanelHeaderContent.js +1 -1
  820. package/dist/cssm/components/PanelHeader/LegacyPanelHeaderContent.js.map +1 -1
  821. package/dist/cssm/components/PanelHeader/PanelHeader.js +9 -9
  822. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  823. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -2
  824. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  825. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -2
  826. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  827. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
  828. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  829. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +2 -2
  830. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  831. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
  832. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  833. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
  834. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  835. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
  836. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  837. package/dist/cssm/components/PanelSpinner/PanelSpinner.js +1 -1
  838. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  839. package/dist/cssm/components/Placeholder/Placeholder.js +1 -1
  840. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  841. package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
  842. package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
  843. package/dist/cssm/components/PopoutRoot/PopoutRoot.js +5 -5
  844. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  845. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +2 -2
  846. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  847. package/dist/cssm/components/Popover/Popover.js +3 -3
  848. package/dist/cssm/components/Popover/Popover.js.map +1 -1
  849. package/dist/cssm/components/Popper/Popper.js +3 -3
  850. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  851. package/dist/cssm/components/PopperArrow/PopperArrow.js +1 -1
  852. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  853. package/dist/cssm/components/Progress/Progress.js +1 -1
  854. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  855. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -1
  856. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  857. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +6 -6
  858. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  859. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +1 -1
  860. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  861. package/dist/cssm/components/Radio/Radio.js +2 -2
  862. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  863. package/dist/cssm/components/RadioGroup/RadioGroup.js +1 -1
  864. package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
  865. package/dist/cssm/components/RangeSlider/RangeSlider.js +2 -2
  866. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  867. package/dist/cssm/components/Removable/Removable.js +4 -4
  868. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  869. package/dist/cssm/components/RichCell/RichCell.js +2 -2
  870. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  871. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js +1 -1
  872. package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.js.map +1 -1
  873. package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -1
  874. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  875. package/dist/cssm/components/Root/Root.d.ts +1 -0
  876. package/dist/cssm/components/Root/Root.js +5 -5
  877. package/dist/cssm/components/Root/Root.js.map +1 -1
  878. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -1
  879. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  880. package/dist/cssm/components/ScrollArrow/ScrollArrow.js +3 -3
  881. package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
  882. package/dist/cssm/components/Search/Search.js +3 -3
  883. package/dist/cssm/components/Search/Search.js.map +1 -1
  884. package/dist/cssm/components/SegmentedControl/SegmentedControl.js +3 -3
  885. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  886. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +3 -3
  887. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  888. package/dist/cssm/components/Select/Select.js +3 -3
  889. package/dist/cssm/components/Select/Select.js.map +1 -1
  890. package/dist/cssm/components/SelectMimicry/SelectMimicry.js +2 -2
  891. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  892. package/dist/cssm/components/SelectTypography/SelectTypography.js +2 -2
  893. package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
  894. package/dist/cssm/components/Separator/Separator.js +1 -1
  895. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  896. package/dist/cssm/components/SimpleCell/Chevron/Chevron.d.ts +5 -0
  897. package/dist/cssm/components/SimpleCell/Chevron/Chevron.js +12 -0
  898. package/dist/cssm/components/SimpleCell/Chevron/Chevron.js.map +1 -0
  899. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +6 -2
  900. package/dist/cssm/components/SimpleCell/SimpleCell.js +15 -5
  901. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  902. package/dist/cssm/components/SimpleCell/SimpleCell.module.css +5 -6
  903. package/dist/cssm/components/Slider/Slider.js +7 -7
  904. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  905. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +2 -2
  906. package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
  907. package/dist/cssm/components/Slider/helpers.js.map +1 -1
  908. package/dist/cssm/components/Snackbar/Snackbar.js +4 -4
  909. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  910. package/dist/cssm/components/Spacing/Spacing.js +1 -1
  911. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  912. package/dist/cssm/components/Spinner/Spinner.d.ts +2 -1
  913. package/dist/cssm/components/Spinner/Spinner.js +19 -5
  914. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  915. package/dist/cssm/components/Spinner/Spinner.module.css +0 -19
  916. package/dist/cssm/components/SplitCol/SplitCol.js +3 -3
  917. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  918. package/dist/cssm/components/SplitCol/SplitColContext.js.map +1 -1
  919. package/dist/cssm/components/SplitLayout/SplitLayout.js +1 -1
  920. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  921. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -1
  922. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  923. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +3 -3
  924. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  925. package/dist/cssm/components/Switch/Switch.js +3 -3
  926. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  927. package/dist/cssm/components/Tabbar/Tabbar.js +1 -1
  928. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  929. package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -2
  930. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  931. package/dist/cssm/components/Tabs/Tabs.js +2 -2
  932. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  933. package/dist/cssm/components/TabsItem/TabsItem.js +3 -3
  934. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  935. package/dist/cssm/components/Tappable/Tappable.js +10 -10
  936. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  937. package/dist/cssm/components/Tappable/Tappable.module.css +2 -0
  938. package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -1
  939. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  940. package/dist/cssm/components/Textarea/Textarea.js +2 -2
  941. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  942. package/dist/cssm/components/Tooltip/Tooltip.js +5 -5
  943. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  944. package/dist/cssm/components/Tooltip/TooltipContainer.js +1 -1
  945. package/dist/cssm/components/Tooltip/TooltipContainer.js.map +1 -1
  946. package/dist/cssm/components/Touch/Touch.js +4 -4
  947. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  948. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  949. package/dist/cssm/components/Typography/Caption/Caption.js +1 -1
  950. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  951. package/dist/cssm/components/Typography/Footnote/Footnote.js +1 -1
  952. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  953. package/dist/cssm/components/Typography/Headline/Headline.js +2 -2
  954. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  955. package/dist/cssm/components/Typography/Paragraph/Paragraph.js +1 -1
  956. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
  957. package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -2
  958. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  959. package/dist/cssm/components/Typography/Text/Text.js +2 -2
  960. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  961. package/dist/cssm/components/Typography/Title/Title.js +1 -1
  962. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  963. package/dist/cssm/components/Typography/Typography.js +1 -1
  964. package/dist/cssm/components/Typography/Typography.js.map +1 -1
  965. package/dist/cssm/components/UsersStack/UsersStack.js +2 -2
  966. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  967. package/dist/cssm/components/View/View.d.ts +1 -0
  968. package/dist/cssm/components/View/View.js +3 -3
  969. package/dist/cssm/components/View/View.js.map +1 -1
  970. package/dist/cssm/components/View/ViewInfinite.js +2 -2
  971. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  972. package/dist/cssm/components/View/utils.js.map +1 -1
  973. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +1 -1
  974. package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
  975. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -1
  976. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  977. package/dist/cssm/components/WriteBar/WriteBar.js +1 -1
  978. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  979. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
  980. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  981. package/dist/cssm/helpers/appearance.js +1 -1
  982. package/dist/cssm/helpers/appearance.js.map +1 -1
  983. package/dist/cssm/helpers/generateVKUITokensClassName.js.map +1 -1
  984. package/dist/cssm/helpers/math.js.map +1 -1
  985. package/dist/cssm/helpers/range.js.map +1 -1
  986. package/dist/cssm/hoc/withContext.js.map +1 -1
  987. package/dist/cssm/hoc/withPlatform.js +1 -1
  988. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  989. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  990. package/dist/cssm/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  991. package/dist/cssm/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  992. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js +1 -1
  993. package/dist/cssm/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  994. package/dist/cssm/hooks/useAdaptivityHasHover.js +1 -1
  995. package/dist/cssm/hooks/useAdaptivityHasHover.js.map +1 -1
  996. package/dist/cssm/hooks/useAdaptivityHasPointer.js +1 -1
  997. package/dist/cssm/hooks/useAdaptivityHasPointer.js.map +1 -1
  998. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js +1 -1
  999. package/dist/cssm/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1000. package/dist/cssm/hooks/useAppearance.js +1 -1
  1001. package/dist/cssm/hooks/useAppearance.js.map +1 -1
  1002. package/dist/cssm/hooks/useAutoDetectAppearance.js +2 -2
  1003. package/dist/cssm/hooks/useAutoDetectAppearance.js.map +1 -1
  1004. package/dist/cssm/hooks/useBooleanState.js.map +1 -1
  1005. package/dist/cssm/hooks/useBridgeAdaptivity.js +2 -2
  1006. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -1
  1007. package/dist/cssm/hooks/useCalendar.js +1 -1
  1008. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  1009. package/dist/cssm/hooks/useChipsInput.js +1 -1
  1010. package/dist/cssm/hooks/useChipsInput.js.map +1 -1
  1011. package/dist/cssm/hooks/useChipsSelect.js +2 -2
  1012. package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
  1013. package/dist/cssm/hooks/useDateInput.js +4 -4
  1014. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  1015. package/dist/cssm/hooks/useEffectDev.js.map +1 -1
  1016. package/dist/cssm/hooks/useEnsuredControl.js +2 -2
  1017. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  1018. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  1019. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  1020. package/dist/cssm/hooks/useFocusVisible.js +1 -1
  1021. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  1022. package/dist/cssm/hooks/useFocusWithin.js +1 -1
  1023. package/dist/cssm/hooks/useFocusWithin.js.map +1 -1
  1024. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  1025. package/dist/cssm/hooks/useId.js.map +1 -1
  1026. package/dist/cssm/hooks/useInsets.js +2 -2
  1027. package/dist/cssm/hooks/useInsets.js.map +1 -1
  1028. package/dist/cssm/hooks/useIsClient.js.map +1 -1
  1029. package/dist/cssm/hooks/useKeyboard.js +2 -2
  1030. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  1031. package/dist/cssm/hooks/useKeyboardInputTracker.js +1 -1
  1032. package/dist/cssm/hooks/useKeyboardInputTracker.js.map +1 -1
  1033. package/dist/cssm/hooks/useMediaQueries.js +1 -1
  1034. package/dist/cssm/hooks/useMediaQueries.js.map +1 -1
  1035. package/dist/cssm/hooks/useObjectMemo.js.map +1 -1
  1036. package/dist/cssm/hooks/useOrientationChange.js +1 -1
  1037. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  1038. package/dist/cssm/hooks/usePagination.js +1 -1
  1039. package/dist/cssm/hooks/usePagination.js.map +1 -1
  1040. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  1041. package/dist/cssm/hooks/usePlatform.js +1 -1
  1042. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  1043. package/dist/cssm/hooks/usePrevious.js.map +1 -1
  1044. package/dist/cssm/hooks/useTimeout.js +1 -1
  1045. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  1046. package/dist/cssm/hooks/useTodayDate.js +1 -1
  1047. package/dist/cssm/hooks/useTodayDate.js.map +1 -1
  1048. package/dist/cssm/hooks/useWaitTransitionFinish.js +1 -1
  1049. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  1050. package/dist/cssm/index.d.ts +3 -1
  1051. package/dist/cssm/index.js +1 -0
  1052. package/dist/cssm/index.js.map +1 -1
  1053. package/dist/cssm/lib/SSR.js +1 -1
  1054. package/dist/cssm/lib/SSR.js.map +1 -1
  1055. package/dist/cssm/lib/accessibility.js +2 -2
  1056. package/dist/cssm/lib/accessibility.js.map +1 -1
  1057. package/dist/cssm/lib/adaptivity/constants.js.map +1 -1
  1058. package/dist/cssm/lib/adaptivity/functions.js.map +1 -1
  1059. package/dist/cssm/lib/animate.js +1 -1
  1060. package/dist/cssm/lib/animate.js.map +1 -1
  1061. package/dist/cssm/lib/browser.js +1 -1
  1062. package/dist/cssm/lib/browser.js.map +1 -1
  1063. package/dist/cssm/lib/calendar.js.map +1 -1
  1064. package/dist/cssm/lib/callMultiple.js.map +1 -1
  1065. package/dist/cssm/lib/date.js.map +1 -1
  1066. package/dist/cssm/lib/dom.js.map +1 -1
  1067. package/dist/cssm/lib/floating/adapters.js +1 -1
  1068. package/dist/cssm/lib/floating/adapters.js.map +1 -1
  1069. package/dist/cssm/lib/floating/functions.js.map +1 -1
  1070. package/dist/cssm/lib/fx.js.map +1 -1
  1071. package/dist/cssm/lib/getNavId.js.map +1 -1
  1072. package/dist/cssm/lib/isRefObject.js.map +1 -1
  1073. package/dist/cssm/lib/matchMedia.js.map +1 -1
  1074. package/dist/cssm/lib/platform.js.map +1 -1
  1075. package/dist/cssm/lib/removeObjectKeys.js.map +1 -1
  1076. package/dist/cssm/lib/select.js.map +1 -1
  1077. package/dist/cssm/lib/styles.js.map +1 -1
  1078. package/dist/cssm/lib/supportEvents.js.map +1 -1
  1079. package/dist/cssm/lib/taptic.js.map +1 -1
  1080. package/dist/cssm/lib/testing.js.map +1 -1
  1081. package/dist/cssm/lib/tokensClassProvider.js +1 -1
  1082. package/dist/cssm/lib/tokensClassProvider.js.map +1 -1
  1083. package/dist/cssm/lib/touch.js.map +1 -1
  1084. package/dist/cssm/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1085. package/dist/cssm/lib/utils.js.map +1 -1
  1086. package/dist/cssm/lib/warnOnce.js.map +1 -1
  1087. package/dist/cssm/shared/breakpoints.js.map +1 -1
  1088. package/dist/cssm/styles/constants.css +3 -0
  1089. package/dist/cssm/styles/customMedias.generated.css +23 -0
  1090. package/dist/cssm/styles/themes.css +3 -3
  1091. package/dist/helpers/appearance.js.map +1 -1
  1092. package/dist/helpers/generateVKUITokensClassName.js.map +1 -1
  1093. package/dist/helpers/math.js.map +1 -1
  1094. package/dist/helpers/range.js.map +1 -1
  1095. package/dist/hoc/withContext.js.map +1 -1
  1096. package/dist/hooks/useAdaptivity.js.map +1 -1
  1097. package/dist/hooks/useAdaptivityConditionalRender/constants.js.map +1 -1
  1098. package/dist/hooks/useAdaptivityConditionalRender/helpers.js.map +1 -1
  1099. package/dist/hooks/useAdaptivityConditionalRender/useAdaptivityConditionalRender.js.map +1 -1
  1100. package/dist/hooks/useAdaptivityHasHover.js.map +1 -1
  1101. package/dist/hooks/useAdaptivityHasPointer.js.map +1 -1
  1102. package/dist/hooks/useAdaptivityWithJSMediaQueries.js.map +1 -1
  1103. package/dist/hooks/useAutoDetectAppearance.js +2 -1
  1104. package/dist/hooks/useAutoDetectAppearance.js.map +1 -1
  1105. package/dist/hooks/useBooleanState.js.map +1 -1
  1106. package/dist/hooks/useBridgeAdaptivity.js.map +1 -1
  1107. package/dist/hooks/useCalendar.js +6 -3
  1108. package/dist/hooks/useCalendar.js.map +1 -1
  1109. package/dist/hooks/useChipsInput.js +2 -1
  1110. package/dist/hooks/useChipsInput.js.map +1 -1
  1111. package/dist/hooks/useChipsSelect.js.map +1 -1
  1112. package/dist/hooks/useDateInput.js +5 -3
  1113. package/dist/hooks/useDateInput.js.map +1 -1
  1114. package/dist/hooks/useEffectDev.js.map +1 -1
  1115. package/dist/hooks/useEnsuredControl.js.map +1 -1
  1116. package/dist/hooks/useEventListener.js.map +1 -1
  1117. package/dist/hooks/useExternRef.js.map +1 -1
  1118. package/dist/hooks/useFocusVisible.js.map +1 -1
  1119. package/dist/hooks/useFocusWithin.js.map +1 -1
  1120. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  1121. package/dist/hooks/useId.js.map +1 -1
  1122. package/dist/hooks/useInsets.js.map +1 -1
  1123. package/dist/hooks/useIsClient.js.map +1 -1
  1124. package/dist/hooks/useKeyboard.js +4 -4
  1125. package/dist/hooks/useKeyboard.js.map +1 -1
  1126. package/dist/hooks/useKeyboardInputTracker.js.map +1 -1
  1127. package/dist/hooks/useMediaQueries.js.map +1 -1
  1128. package/dist/hooks/useObjectMemo.js.map +1 -1
  1129. package/dist/hooks/useOrientationChange.js +1 -1
  1130. package/dist/hooks/useOrientationChange.js.map +1 -1
  1131. package/dist/hooks/usePagination.js.map +1 -1
  1132. package/dist/hooks/usePatchChildrenRef.js +2 -1
  1133. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  1134. package/dist/hooks/usePrevious.js.map +1 -1
  1135. package/dist/hooks/useTimeout.js +2 -1
  1136. package/dist/hooks/useTimeout.js.map +1 -1
  1137. package/dist/hooks/useTodayDate.js.map +1 -1
  1138. package/dist/hooks/useWaitTransitionFinish.js +4 -2
  1139. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  1140. package/dist/index.d.ts +3 -1
  1141. package/dist/index.js +1 -0
  1142. package/dist/index.js.map +1 -1
  1143. package/dist/lib/SSR.js.map +1 -1
  1144. package/dist/lib/accessibility.js.map +1 -1
  1145. package/dist/lib/adaptivity/constants.js.map +1 -1
  1146. package/dist/lib/adaptivity/functions.js.map +1 -1
  1147. package/dist/lib/animate.js.map +1 -1
  1148. package/dist/lib/browser.js.map +1 -1
  1149. package/dist/lib/calendar.js.map +1 -1
  1150. package/dist/lib/callMultiple.js.map +1 -1
  1151. package/dist/lib/date.js.map +1 -1
  1152. package/dist/lib/dom.js.map +1 -1
  1153. package/dist/lib/floating/adapters.js.map +1 -1
  1154. package/dist/lib/floating/functions.js.map +1 -1
  1155. package/dist/lib/fx.js.map +1 -1
  1156. package/dist/lib/getNavId.js.map +1 -1
  1157. package/dist/lib/isRefObject.js.map +1 -1
  1158. package/dist/lib/matchMedia.js.map +1 -1
  1159. package/dist/lib/offset.js +6 -5
  1160. package/dist/lib/offset.js.map +1 -1
  1161. package/dist/lib/platform.js.map +1 -1
  1162. package/dist/lib/polyfills.js.map +1 -1
  1163. package/dist/lib/removeObjectKeys.js.map +1 -1
  1164. package/dist/lib/select.js +2 -2
  1165. package/dist/lib/select.js.map +1 -1
  1166. package/dist/lib/styles.js.map +1 -1
  1167. package/dist/lib/supportEvents.js.map +1 -1
  1168. package/dist/lib/taptic.js.map +1 -1
  1169. package/dist/lib/testing.js.map +1 -1
  1170. package/dist/lib/tokensClassProvider.js.map +1 -1
  1171. package/dist/lib/touch.js.map +1 -1
  1172. package/dist/lib/useIsomorphicLayoutEffect.js.map +1 -1
  1173. package/dist/lib/utils.js.map +1 -1
  1174. package/dist/lib/warnOnce.js.map +1 -1
  1175. package/dist/shared/breakpoints.js.map +1 -1
  1176. package/dist/vkui.css +11 -10
  1177. package/dist/vkui.css.map +1 -1
  1178. package/dist/vkui.js.tmp +3108 -2238
  1179. package/package.json +8 -8
@@ -134,7 +134,8 @@ var DateInput = function(_param) {
134
134
  mask += " HH:mm";
135
135
  }
136
136
  if ((0, _date.isMatch)(formattedValue, mask)) {
137
- onChange === null || onChange === void 0 ? void 0 : onChange((0, _date.parse)(formattedValue, mask, value !== null && value !== void 0 ? value : new Date()));
137
+ var _onChange;
138
+ (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange((0, _date.parse)(formattedValue, mask, value !== null && value !== void 0 ? value : new Date()));
138
139
  }
139
140
  }, [
140
141
  enableTime,
@@ -171,7 +172,8 @@ var DateInput = function(_param) {
171
172
  var _useAdaptivity1 = (0, _useAdaptivity.useAdaptivity)(), _useAdaptivity_sizeY = _useAdaptivity1.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? "none" : _useAdaptivity_sizeY;
172
173
  var handleRootRef = (0, _useExternRef.useExternRef)(rootRef, getRootRef);
173
174
  var onCalendarChange = _react.useCallback(function(value) {
174
- onChange === null || onChange === void 0 ? void 0 : onChange(value);
175
+ var _onChange;
176
+ (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange(value);
175
177
  if (closeOnChange && !enableTime) {
176
178
  removeFocusFromField();
177
179
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DateInput/DateInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { HasRootRef } from '../../types';\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\nimport { FormField, 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 '../InputLike/InputLike.module.css'; // Reorder css\nimport styles from './DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles['DateInput--sizeY-none'],\n [SizeType.COMPACT]: styles['DateInput--sizeY-compact'],\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 | 'weekStartsOn'\n | 'disablePickers'\n | 'changeHoursAriaLabel'\n | 'changeMinutesAriaLabel'\n | 'prevMonthAriaLabel'\n | 'nextMonthAriaLabel'\n | 'changeMonthAriaLabel'\n | 'changeYearAriaLabel'\n | 'changeDayAriaLabel'\n | 'showNeighboringMonth'\n | 'size'\n | 'viewDate'\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n >,\n HasRootRef<HTMLDivElement>,\n FormFieldProps {\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n disableCalendar?: boolean;\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 value,\n onChange,\n calendarPlacement = 'bottom-start',\n style,\n className,\n doneButtonText,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n showNeighboringMonth,\n size,\n changeMonthAriaLabel = 'Изменить месяц',\n changeYearAriaLabel = 'Изменить год',\n changeDayAriaLabel = 'Изменить день',\n changeHoursAriaLabel = 'Изменить час',\n changeMinutesAriaLabel = 'Изменить минуту',\n clearFieldAriaLabel = 'Очистить поле',\n showCalendarAriaLabel = 'Показать календарь',\n viewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n ...props\n}: DateInputProps) => {\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 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 onChange?.(parse(formattedValue, mask, value ?? new Date()));\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 closeCalendar,\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 });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n onChange?.(value);\n if (closeOnChange && !enableTime) {\n removeFocusFromField();\n }\n },\n [onChange, removeFocusFromField, closeOnChange, enableTime],\n );\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" aria-label={clearFieldAriaLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" aria-label={showCalendarAriaLabel} 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 <input\n type=\"hidden\"\n name={name}\n value={value ? format(value, enableTime ? 'DD.MM.YYYYTHH:mm' : 'DD.MM.YYYY') : ''}\n />\n <span className={styles['DateInput__input']} onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeYearAriaLabel}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider className={styles['DateInput__input--time-divider']}>\n {' '}\n </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeHoursAriaLabel}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeMinutesAriaLabel}\n />\n </React.Fragment>\n )}\n </span>\n {open && !disableCalendar && (\n <Popper targetRef={rootRef} offsetDistance={8} placement={calendarPlacement}>\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n disablePickers={disablePickers}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n viewDate={viewDate}\n onHeaderChange={onHeaderChange}\n onNextMonth={onNextMonth}\n onPrevMonth={onPrevMonth}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["DateInput","sizeYClassNames","none","SizeType","COMPACT","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","enableTime","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","doneButtonText","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","showNeighboringMonth","size","changeMonthAriaLabel","changeYearAriaLabel","changeDayAriaLabel","changeHoursAriaLabel","changeMinutesAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","disableCalendar","props","daysRef","React","useRef","monthsRef","yearsRef","hoursRef","minutesRef","maxElement","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","isMatch","parse","Date","refs","useMemo","useDateInput","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","useAdaptivity","sizeY","handleRootRef","useExternRef","onCalendarChange","FormField","classNames","REGULAR","after","IconButton","hoverMode","aria-label","Icon16Clear","Icon20CalendarOutline","callMultiple","input","type","format","span","onKeyDown","InputLike","onElementSelect","InputLikeDivider","Fragment","Popper","targetRef","offsetDistance","placement","Calendar","onClose"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/DateInput/DateInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { HasRootRef } from '../../types';\nimport { Calendar, CalendarProps } from '../Calendar/Calendar';\nimport { FormField, 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 '../InputLike/InputLike.module.css'; // Reorder css\nimport styles from './DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles['DateInput--sizeY-none'],\n [SizeType.COMPACT]: styles['DateInput--sizeY-compact'],\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 | 'weekStartsOn'\n | 'disablePickers'\n | 'changeHoursAriaLabel'\n | 'changeMinutesAriaLabel'\n | 'prevMonthAriaLabel'\n | 'nextMonthAriaLabel'\n | 'changeMonthAriaLabel'\n | 'changeYearAriaLabel'\n | 'changeDayAriaLabel'\n | 'showNeighboringMonth'\n | 'size'\n | 'viewDate'\n | 'onHeaderChange'\n | 'onNextMonth'\n | 'onPrevMonth'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n >,\n HasRootRef<HTMLDivElement>,\n FormFieldProps {\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n disableCalendar?: boolean;\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 value,\n onChange,\n calendarPlacement = 'bottom-start',\n style,\n className,\n doneButtonText,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n showNeighboringMonth,\n size,\n changeMonthAriaLabel = 'Изменить месяц',\n changeYearAriaLabel = 'Изменить год',\n changeDayAriaLabel = 'Изменить день',\n changeHoursAriaLabel = 'Изменить час',\n changeMinutesAriaLabel = 'Изменить минуту',\n clearFieldAriaLabel = 'Очистить поле',\n showCalendarAriaLabel = 'Показать календарь',\n viewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n ...props\n}: DateInputProps) => {\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 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 onChange?.(parse(formattedValue, mask, value ?? new Date()));\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 closeCalendar,\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 });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n const onCalendarChange = React.useCallback(\n (value?: Date | undefined) => {\n onChange?.(value);\n if (closeOnChange && !enableTime) {\n removeFocusFromField();\n }\n },\n [onChange, removeFocusFromField, closeOnChange, enableTime],\n );\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" aria-label={clearFieldAriaLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" aria-label={showCalendarAriaLabel} 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 <input\n type=\"hidden\"\n name={name}\n value={value ? format(value, enableTime ? 'DD.MM.YYYYTHH:mm' : 'DD.MM.YYYY') : ''}\n />\n <span className={styles['DateInput__input']} onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeYearAriaLabel}\n />\n {enableTime && (\n <React.Fragment>\n <InputLikeDivider className={styles['DateInput__input--time-divider']}>\n {' '}\n </InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={hoursRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeHoursAriaLabel}\n />\n <InputLikeDivider>:</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={minutesRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeMinutesAriaLabel}\n />\n </React.Fragment>\n )}\n </span>\n {open && !disableCalendar && (\n <Popper targetRef={rootRef} offsetDistance={8} placement={calendarPlacement}>\n <Calendar\n value={value}\n onChange={onCalendarChange}\n enableTime={enableTime}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n doneButtonText={doneButtonText}\n disablePickers={disablePickers}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n viewDate={viewDate}\n onHeaderChange={onHeaderChange}\n onNextMonth={onNextMonth}\n onPrevMonth={onPrevMonth}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["DateInput","sizeYClassNames","none","SizeType","COMPACT","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","getHours","getMinutes","enableTime","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","doneButtonText","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","showNeighboringMonth","size","changeMonthAriaLabel","changeYearAriaLabel","changeDayAriaLabel","changeHoursAriaLabel","changeMinutesAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","disableCalendar","props","daysRef","React","useRef","monthsRef","yearsRef","hoursRef","minutesRef","maxElement","onInternalValueChange","useCallback","internalValue","i","formattedValue","mask","isMatch","parse","Date","refs","useMemo","useDateInput","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","useAdaptivity","sizeY","handleRootRef","useExternRef","onCalendarChange","FormField","classNames","REGULAR","after","IconButton","hoverMode","aria-label","Icon16Clear","Icon20CalendarOutline","callMultiple","input","type","format","span","onKeyDown","InputLike","onElementSelect","InputLikeDivider","Fragment","Popper","targetRef","offsetDistance","placement","Calendar","onClose"],"mappings":"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"}
@@ -78,7 +78,8 @@ var DatePickerCustom = function(_param) {
78
78
  "className"
79
79
  ]);
80
80
  var onSelectChange = function(e) {
81
- onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(_define_property._({
81
+ var _onDateChange;
82
+ (_onDateChange = onDateChange) === null || _onDateChange === void 0 ? void 0 : _onDateChange(_define_property._({
82
83
  day: day,
83
84
  month: month,
84
85
  year: year
@@ -177,7 +178,8 @@ var DatePickerNative = function(_param) {
177
178
  })
178
179
  } : {};
179
180
  var onStringChange = _react.useCallback(function(e) {
180
- onDateChange === null || onDateChange === void 0 ? void 0 : onDateChange(parseInputDate(e.currentTarget.value));
181
+ var _onDateChange;
182
+ (_onDateChange = onDateChange) === null || _onDateChange === void 0 ? void 0 : _onDateChange(parseInputDate(e.currentTarget.value));
181
183
  }, [
182
184
  onDateChange
183
185
  ]);
@@ -194,10 +196,11 @@ var DatePicker = function(_param) {
194
196
  ]);
195
197
  var hasPointer = (0, _useAdaptivityHasPointer.useAdaptivityHasPointer)();
196
198
  var _React_useState = _sliced_to_array._(_react.useState(function() {
199
+ var _defaultValue, _defaultValue1, _defaultValue2;
197
200
  return {
198
- day: (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.day) || 0,
199
- month: (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.month) || 0,
200
- year: (defaultValue === null || defaultValue === void 0 ? void 0 : defaultValue.year) || 0
201
+ day: ((_defaultValue = defaultValue) === null || _defaultValue === void 0 ? void 0 : _defaultValue.day) || 0,
202
+ month: ((_defaultValue1 = defaultValue) === null || _defaultValue1 === void 0 ? void 0 : _defaultValue1.month) || 0,
203
+ year: ((_defaultValue2 = defaultValue) === null || _defaultValue2 === void 0 ? void 0 : _defaultValue2.year) || 0
201
204
  };
202
205
  }), 2), value = _React_useState[0], setValue = _React_useState[1];
203
206
  var onDateChange = _react.useCallback(function(update) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, leadingZero } from '@vkontakte/vkjs';\nimport { range } from '../../helpers/range';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { CustomSelect } from '../CustomSelect/CustomSelect';\nimport { Input } from '../Input/Input';\nimport styles from './DatePicker.module.css';\n\nconst DefaultMonths: string[] = [\n 'Января',\n 'Февраля',\n 'Марта',\n 'Апреля',\n 'Мая',\n 'Июня',\n 'Июля',\n 'Августа',\n 'Сентября',\n 'Октября',\n 'Ноября',\n 'Декабря',\n];\n\nexport type DatePickerDateFormat = {\n day: number;\n month: number;\n year: number;\n};\n\nexport interface DatePickerProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'min' | 'max'> {\n min?: DatePickerDateFormat;\n max?: DatePickerDateFormat;\n name?: string;\n defaultValue?: DatePickerDateFormat;\n popupDirection?: 'top' | 'bottom';\n monthNames?: string[];\n dayPlaceholder?: string;\n monthPlaceholder?: string;\n yearPlaceholder?: string;\n onDateChange?: (value: DatePickerDateFormat) => void;\n disabled?: boolean;\n}\n\n// Переводим state к формату гг-мм-дд\nfunction convertToInputFormat({ day = 0, month = 0, year = 0 }: Partial<DatePickerDateFormat>) {\n return `${year}-${leadingZero(month)}-${leadingZero(day)}`;\n}\n\n// Переводим дату формата гг-мм-дд к объекту\nfunction parseInputDate(date: string): DatePickerDateFormat {\n const splited = date.split('-');\n\n return {\n day: Number(splited[2]),\n month: Number(splited[1]),\n year: Number(splited[0]),\n };\n}\n\nfunction getMonthMaxDay(month?: number, year?: number) {\n return month ? new Date(year || 2016, month, 0).getDate() : 31;\n}\n\nconst DatePickerCustom = ({\n name,\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n monthNames,\n day = 0,\n month = 0,\n year = 0,\n onDateChange,\n disabled,\n className,\n ...restProps\n}: DatePickerProps & Partial<DatePickerDateFormat>) => {\n const onSelectChange: React.ChangeEventHandler<HTMLSelectElement> = (e) => {\n onDateChange?.({\n day,\n month,\n year,\n [e.target.name]: Number(e.target.value),\n });\n };\n const dayOptions = range(1, getMonthMaxDay(month, year)).map((value) => ({\n label: String(value),\n value,\n }));\n const monthOptions = (monthNames || DefaultMonths).map((name, index) => ({\n label: name,\n value: index + 1,\n }));\n const yearOptions = range(max.year, min.year).map((value) => ({\n label: String(value),\n value: value,\n }));\n return (\n <div className={classNames(styles['DatePicker'], className)} {...restProps}>\n <div className={styles['DatePicker__container']}>\n <div className={styles['DatePicker__day']}>\n <CustomSelect\n name=\"day\"\n value={day}\n options={dayOptions}\n placeholder={dayPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div className={styles['DatePicker__month']}>\n <CustomSelect\n className={styles['DatePicker__monthSelect']}\n name=\"month\"\n value={month}\n options={monthOptions}\n placeholder={monthPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div className={styles['DatePicker__year']}>\n <CustomSelect\n name=\"year\"\n value={year}\n options={yearOptions}\n placeholder={yearPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n </div>\n <input type=\"hidden\" name={name} value={convertToInputFormat({ day, month, year })} />\n </div>\n );\n};\n\nconst DatePickerNative = ({\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n day,\n month,\n year,\n onDateChange,\n ...restProps\n}: DatePickerProps & Partial<DatePickerDateFormat>) => {\n const defProps =\n day && month && year ? { defaultValue: convertToInputFormat({ day, month, year }) } : {};\n const onStringChange: React.ChangeEventHandler<HTMLInputElement> = React.useCallback(\n (e) => {\n onDateChange?.(parseInputDate(e.currentTarget.value));\n },\n [onDateChange],\n );\n return (\n <Input\n {...restProps}\n type=\"date\"\n onChange={onStringChange}\n min={convertToInputFormat(min)}\n max={convertToInputFormat(max)}\n {...defProps}\n />\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DatePicker\n */\nexport const DatePicker = ({ defaultValue, ...props }: DatePickerProps) => {\n const hasPointer = useAdaptivityHasPointer();\n const [value, setValue] = React.useState<Partial<DatePickerDateFormat>>(() => ({\n day: defaultValue?.day || 0,\n month: defaultValue?.month || 0,\n year: defaultValue?.year || 0,\n }));\n\n const onDateChange = React.useCallback(\n (update: DatePickerDateFormat) => {\n setValue(update);\n props.onDateChange && props.onDateChange({ ...update });\n },\n [props],\n );\n\n const Cmp = hasPointer ? DatePickerCustom : DatePickerNative;\n return <Cmp {...props} {...value} onDateChange={onDateChange} />;\n};\n"],"names":["DatePicker","DefaultMonths","convertToInputFormat","day","month","year","leadingZero","parseInputDate","date","splited","split","Number","getMonthMaxDay","Date","getDate","DatePickerCustom","name","min","max","dayPlaceholder","monthPlaceholder","yearPlaceholder","popupDirection","defaultValue","monthNames","onDateChange","disabled","className","restProps","onSelectChange","e","target","value","dayOptions","range","map","label","String","monthOptions","index","yearOptions","div","classNames","CustomSelect","options","placeholder","onChange","input","type","DatePickerNative","defProps","onStringChange","React","useCallback","currentTarget","Input","props","hasPointer","useAdaptivityHasPointer","useState","setValue","update","Cmp"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/DatePicker/DatePicker.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, leadingZero } from '@vkontakte/vkjs';\nimport { range } from '../../helpers/range';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { CustomSelect } from '../CustomSelect/CustomSelect';\nimport { Input } from '../Input/Input';\nimport styles from './DatePicker.module.css';\n\nconst DefaultMonths: string[] = [\n 'Января',\n 'Февраля',\n 'Марта',\n 'Апреля',\n 'Мая',\n 'Июня',\n 'Июля',\n 'Августа',\n 'Сентября',\n 'Октября',\n 'Ноября',\n 'Декабря',\n];\n\nexport type DatePickerDateFormat = {\n day: number;\n month: number;\n year: number;\n};\n\nexport interface DatePickerProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, 'defaultValue' | 'min' | 'max'> {\n min?: DatePickerDateFormat;\n max?: DatePickerDateFormat;\n name?: string;\n defaultValue?: DatePickerDateFormat;\n popupDirection?: 'top' | 'bottom';\n monthNames?: string[];\n dayPlaceholder?: string;\n monthPlaceholder?: string;\n yearPlaceholder?: string;\n onDateChange?: (value: DatePickerDateFormat) => void;\n disabled?: boolean;\n}\n\n// Переводим state к формату гг-мм-дд\nfunction convertToInputFormat({ day = 0, month = 0, year = 0 }: Partial<DatePickerDateFormat>) {\n return `${year}-${leadingZero(month)}-${leadingZero(day)}`;\n}\n\n// Переводим дату формата гг-мм-дд к объекту\nfunction parseInputDate(date: string): DatePickerDateFormat {\n const splited = date.split('-');\n\n return {\n day: Number(splited[2]),\n month: Number(splited[1]),\n year: Number(splited[0]),\n };\n}\n\nfunction getMonthMaxDay(month?: number, year?: number) {\n return month ? new Date(year || 2016, month, 0).getDate() : 31;\n}\n\nconst DatePickerCustom = ({\n name,\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n monthNames,\n day = 0,\n month = 0,\n year = 0,\n onDateChange,\n disabled,\n className,\n ...restProps\n}: DatePickerProps & Partial<DatePickerDateFormat>) => {\n const onSelectChange: React.ChangeEventHandler<HTMLSelectElement> = (e) => {\n onDateChange?.({\n day,\n month,\n year,\n [e.target.name]: Number(e.target.value),\n });\n };\n const dayOptions = range(1, getMonthMaxDay(month, year)).map((value) => ({\n label: String(value),\n value,\n }));\n const monthOptions = (monthNames || DefaultMonths).map((name, index) => ({\n label: name,\n value: index + 1,\n }));\n const yearOptions = range(max.year, min.year).map((value) => ({\n label: String(value),\n value: value,\n }));\n return (\n <div className={classNames(styles['DatePicker'], className)} {...restProps}>\n <div className={styles['DatePicker__container']}>\n <div className={styles['DatePicker__day']}>\n <CustomSelect\n name=\"day\"\n value={day}\n options={dayOptions}\n placeholder={dayPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div className={styles['DatePicker__month']}>\n <CustomSelect\n className={styles['DatePicker__monthSelect']}\n name=\"month\"\n value={month}\n options={monthOptions}\n placeholder={monthPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n <div className={styles['DatePicker__year']}>\n <CustomSelect\n name=\"year\"\n value={year}\n options={yearOptions}\n placeholder={yearPlaceholder}\n popupDirection={popupDirection}\n onChange={onSelectChange}\n disabled={disabled}\n />\n </div>\n </div>\n <input type=\"hidden\" name={name} value={convertToInputFormat({ day, month, year })} />\n </div>\n );\n};\n\nconst DatePickerNative = ({\n min = { day: 0, month: 0, year: 0 },\n max = { day: 31, month: 12, year: 2100 },\n dayPlaceholder,\n monthPlaceholder,\n yearPlaceholder,\n popupDirection,\n defaultValue,\n day,\n month,\n year,\n onDateChange,\n ...restProps\n}: DatePickerProps & Partial<DatePickerDateFormat>) => {\n const defProps =\n day && month && year ? { defaultValue: convertToInputFormat({ day, month, year }) } : {};\n const onStringChange: React.ChangeEventHandler<HTMLInputElement> = React.useCallback(\n (e) => {\n onDateChange?.(parseInputDate(e.currentTarget.value));\n },\n [onDateChange],\n );\n return (\n <Input\n {...restProps}\n type=\"date\"\n onChange={onStringChange}\n min={convertToInputFormat(min)}\n max={convertToInputFormat(max)}\n {...defProps}\n />\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DatePicker\n */\nexport const DatePicker = ({ defaultValue, ...props }: DatePickerProps) => {\n const hasPointer = useAdaptivityHasPointer();\n const [value, setValue] = React.useState<Partial<DatePickerDateFormat>>(() => ({\n day: defaultValue?.day || 0,\n month: defaultValue?.month || 0,\n year: defaultValue?.year || 0,\n }));\n\n const onDateChange = React.useCallback(\n (update: DatePickerDateFormat) => {\n setValue(update);\n props.onDateChange && props.onDateChange({ ...update });\n },\n [props],\n );\n\n const Cmp = hasPointer ? DatePickerCustom : DatePickerNative;\n return <Cmp {...props} {...value} onDateChange={onDateChange} />;\n};\n"],"names":["DatePicker","DefaultMonths","convertToInputFormat","day","month","year","leadingZero","parseInputDate","date","splited","split","Number","getMonthMaxDay","Date","getDate","DatePickerCustom","name","min","max","dayPlaceholder","monthPlaceholder","yearPlaceholder","popupDirection","defaultValue","monthNames","onDateChange","disabled","className","restProps","onSelectChange","e","target","value","dayOptions","range","map","label","String","monthOptions","index","yearOptions","div","classNames","CustomSelect","options","placeholder","onChange","input","type","DatePickerNative","defProps","onStringChange","React","useCallback","currentTarget","Input","props","hasPointer","useAdaptivityHasPointer","useState","setValue","update","Cmp"],"mappings":"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"}
@@ -57,6 +57,7 @@ var elementsConfig = function(index) {
57
57
  };
58
58
  };
59
59
  var getInternalValue = function(value) {
60
+ var _value, _value1;
60
61
  var newValue = [
61
62
  "",
62
63
  "",
@@ -65,12 +66,12 @@ var getInternalValue = function(value) {
65
66
  "",
66
67
  ""
67
68
  ];
68
- if (value === null || value === void 0 ? void 0 : value[0]) {
69
+ if ((_value = value) === null || _value === void 0 ? void 0 : _value[0]) {
69
70
  newValue[0] = String(value[0].getDate()).padStart(2, "0");
70
71
  newValue[1] = String(value[0].getMonth() + 1).padStart(2, "0");
71
72
  newValue[2] = String(value[0].getFullYear()).padStart(4, "0");
72
73
  }
73
- if (value === null || value === void 0 ? void 0 : value[1]) {
74
+ if ((_value1 = value) === null || _value1 === void 0 ? void 0 : _value1[1]) {
74
75
  newValue[3] = String(value[1].getDate()).padStart(2, "0");
75
76
  newValue[4] = String(value[1].getMonth() + 1).padStart(2, "0");
76
77
  newValue[5] = String(value[1].getFullYear()).padStart(4, "0");
@@ -119,6 +120,7 @@ var DateRangeInput = function(_param) {
119
120
  var monthsEndRef = _react.useRef(null);
120
121
  var yearsEndRef = _react.useRef(null);
121
122
  var onInternalValueChange = _react.useCallback(function(internalValue) {
123
+ var _value, _value1;
122
124
  var isStartValid = true;
123
125
  var isEndValid = true;
124
126
  for(var i = 0; i <= 2; i += 1){
@@ -145,10 +147,11 @@ var DateRangeInput = function(_param) {
145
147
  }
146
148
  var valueExists = Array.isArray(value);
147
149
  var now = new Date();
148
- var start = isStartValid ? (0, _date.parse)(formattedStartValue, mask, valueExists && (value === null || value === void 0 ? void 0 : value[0]) || now) : null;
149
- var end = isEndValid ? (0, _date.parse)(formattedEndValue, mask, valueExists && (value === null || value === void 0 ? void 0 : value[1]) || now) : null;
150
+ var start = isStartValid ? (0, _date.parse)(formattedStartValue, mask, valueExists && ((_value = value) === null || _value === void 0 ? void 0 : _value[0]) || now) : null;
151
+ var end = isEndValid ? (0, _date.parse)(formattedEndValue, mask, valueExists && ((_value1 = value) === null || _value1 === void 0 ? void 0 : _value1[1]) || now) : null;
150
152
  if (start && end && (0, _date.isAfter)(end, start)) {
151
- onChange === null || onChange === void 0 ? void 0 : onChange([
153
+ var _onChange;
154
+ (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange([
152
155
  start,
153
156
  end
154
157
  ]);
@@ -188,8 +191,9 @@ var DateRangeInput = function(_param) {
188
191
  var _useAdaptivity1 = (0, _useAdaptivity.useAdaptivity)(), _useAdaptivity_sizeY = _useAdaptivity1.sizeY, sizeY = _useAdaptivity_sizeY === void 0 ? "none" : _useAdaptivity_sizeY;
189
192
  var handleRootRef = (0, _useExternRef.useExternRef)(rootRef, getRootRef);
190
193
  var onCalendarChange = _react.useCallback(function(newValue) {
191
- onChange === null || onChange === void 0 ? void 0 : onChange(newValue);
192
- if (closeOnChange && (newValue === null || newValue === void 0 ? void 0 : newValue[1]) && newValue[1] !== (value === null || value === void 0 ? void 0 : value[1])) {
194
+ var _onChange, _newValue, _value;
195
+ (_onChange = onChange) === null || _onChange === void 0 ? void 0 : _onChange(newValue);
196
+ if (closeOnChange && ((_newValue = newValue) === null || _newValue === void 0 ? void 0 : _newValue[1]) && newValue[1] !== ((_value = value) === null || _value === void 0 ? void 0 : _value[1])) {
193
197
  removeFocusFromField();
194
198
  }
195
199
  }, [
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DateRangeInput/DateRangeInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isAfter, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { HasRootRef } from '../../types';\nimport { CalendarRange, CalendarRangeProps } from '../CalendarRange/CalendarRange';\nimport { FormField, 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 styles from './DateRangeInput.module.css';\nimport dateInputStyles from '../DateInput/DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles['DateRangeInput--sizeY-none'],\n [SizeType.COMPACT]: styles['DateRangeInput--sizeY-compact'],\n};\n\nexport interface DateRangeInputProps\n extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'onChange'>,\n Pick<\n CalendarRangeProps,\n | 'disablePast'\n | 'disableFuture'\n | 'shouldDisableDate'\n | 'onChange'\n | 'value'\n | 'weekStartsOn'\n | 'disablePickers'\n | 'prevMonthAriaLabel'\n | 'nextMonthAriaLabel'\n | 'changeMonthAriaLabel'\n | 'changeYearAriaLabel'\n | 'changeDayAriaLabel'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n >,\n HasRootRef<HTMLDivElement>,\n FormFieldProps {\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n changeStartDayAriaLabel?: string;\n changeStartMonthAriaLabel?: string;\n changeStartYearAriaLabel?: string;\n changeEndDayAriaLabel?: string;\n changeEndMonthAriaLabel?: string;\n changeEndYearAriaLabel?: string;\n disableCalendar?: boolean;\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 case 3:\n max = 31;\n break;\n case 1:\n case 4:\n max = 12;\n break;\n case 2:\n case 5:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarRangeProps['value']) => {\n const newValue = ['', '', '', '', '', ''];\n if (value?.[0]) {\n newValue[0] = String(value[0].getDate()).padStart(2, '0');\n newValue[1] = String(value[0].getMonth() + 1).padStart(2, '0');\n newValue[2] = String(value[0].getFullYear()).padStart(4, '0');\n }\n if (value?.[1]) {\n newValue[3] = String(value[1].getDate()).padStart(2, '0');\n newValue[4] = String(value[1].getMonth() + 1).padStart(2, '0');\n newValue[5] = String(value[1].getFullYear()).padStart(4, '0');\n }\n return newValue;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DateRangeInput\n */\nexport const DateRangeInput = ({\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = 'bottom-start',\n style,\n className,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeDayAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n changeStartDayAriaLabel = 'Изменить день начала',\n changeStartMonthAriaLabel = 'Изменить месяц начала',\n changeStartYearAriaLabel = 'Изменить год начала',\n changeEndDayAriaLabel = 'Изменить день окончания',\n changeEndMonthAriaLabel = 'Изменить месяц окончания',\n changeEndYearAriaLabel = 'Изменить год окончания',\n clearFieldAriaLabel = 'Очистить поле',\n showCalendarAriaLabel = 'Показать календарь',\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n ...props\n}: DateRangeInputProps) => {\n const daysStartRef = React.useRef<HTMLSpanElement>(null);\n const monthsStartRef = React.useRef<HTMLSpanElement>(null);\n const yearsStartRef = React.useRef<HTMLSpanElement>(null);\n const daysEndRef = React.useRef<HTMLSpanElement>(null);\n const monthsEndRef = React.useRef<HTMLSpanElement>(null);\n const yearsEndRef = React.useRef<HTMLSpanElement>(null);\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n let isStartValid = true;\n let isEndValid = true;\n for (let i = 0; i <= 2; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isStartValid = false;\n }\n }\n for (let i = 3; i <= 5; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isEndValid = false;\n }\n }\n const formattedStartValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n const formattedEndValue = `${internalValue[3]}.${internalValue[4]}.${internalValue[5]}`;\n const mask = 'DD.MM.YYYY';\n\n if (!isMatch(formattedStartValue, mask)) {\n isStartValid = false;\n }\n if (!isMatch(formattedEndValue, mask)) {\n isEndValid = false;\n }\n\n if (!isStartValid && !isEndValid) {\n return;\n }\n\n const valueExists = Array.isArray(value);\n const now = new Date();\n const start = isStartValid\n ? parse(formattedStartValue, mask, (valueExists && value?.[0]) || now)\n : null;\n const end = isEndValid\n ? parse(formattedEndValue, mask, (valueExists && value?.[1]) || now)\n : null;\n if (start && end && isAfter(end, start)) {\n onChange?.([start, end]);\n }\n },\n [onChange, value],\n );\n\n const refs = React.useMemo(\n () => [daysStartRef, monthsStartRef, yearsStartRef, daysEndRef, monthsEndRef, yearsEndRef],\n [daysStartRef, monthsStartRef, yearsStartRef, daysEndRef, monthsEndRef, yearsEndRef],\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement: 5,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n const onCalendarChange = React.useCallback(\n (newValue?: Array<Date | null> | undefined) => {\n onChange?.(newValue);\n if (closeOnChange && newValue?.[1] && newValue[1] !== value?.[1]) {\n removeFocusFromField();\n }\n },\n [onChange, closeOnChange, value, removeFocusFromField],\n );\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" aria-label={clearFieldAriaLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" aria-label={showCalendarAriaLabel} 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 <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? `${value[0] ? format(value[0], 'DD.MM.YYYY') : ''} - ${\n value[1] ? format(value[1], 'DD.MM.YYYY') : ''\n }`\n : ''\n }\n />\n <span className={dateInputStyles['DateInput__input']} onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysStartRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeStartDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsStartRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeStartMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsStartRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeStartYearAriaLabel}\n />\n <InputLikeDivider>{' — '}</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={daysEndRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeEndDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsEndRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeEndMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsEndRef}\n index={5}\n onElementSelect={setFocusedElement}\n value={internalValue[5]}\n aria-label={changeEndYearAriaLabel}\n />\n </span>\n {open && !disableCalendar && (\n <Popper targetRef={rootRef} offsetDistance={8} placement={calendarPlacement}>\n <CalendarRange\n value={value}\n onChange={onCalendarChange}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n disablePickers={disablePickers}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["DateRangeInput","sizeYClassNames","none","SizeType","COMPACT","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","changeDayAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","changeStartDayAriaLabel","changeStartMonthAriaLabel","changeStartYearAriaLabel","changeEndDayAriaLabel","changeEndMonthAriaLabel","changeEndYearAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","prevMonthIcon","nextMonthIcon","disableCalendar","props","daysStartRef","React","useRef","monthsStartRef","yearsStartRef","daysEndRef","monthsEndRef","yearsEndRef","onInternalValueChange","useCallback","internalValue","isStartValid","isEndValid","i","formattedStartValue","formattedEndValue","mask","isMatch","valueExists","Array","isArray","now","Date","start","parse","end","isAfter","refs","useMemo","useDateInput","maxElement","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","useAdaptivity","sizeY","handleRootRef","useExternRef","onCalendarChange","FormField","classNames","REGULAR","after","IconButton","hoverMode","aria-label","Icon16Clear","Icon20CalendarOutline","callMultiple","input","type","format","span","onKeyDown","InputLike","onElementSelect","InputLikeDivider","Popper","targetRef","offsetDistance","placement","CalendarRange","onClose"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/DateRangeInput/DateRangeInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Icon16Clear, Icon20CalendarOutline } from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivity } from '../../hooks/useAdaptivity';\nimport { useDateInput } from '../../hooks/useDateInput';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { SizeType } from '../../lib/adaptivity';\nimport { callMultiple } from '../../lib/callMultiple';\nimport { format, isAfter, isMatch, parse } from '../../lib/date';\nimport type { PlacementWithAuto } from '../../lib/floating';\nimport { HasRootRef } from '../../types';\nimport { CalendarRange, CalendarRangeProps } from '../CalendarRange/CalendarRange';\nimport { FormField, 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 styles from './DateRangeInput.module.css';\nimport dateInputStyles from '../DateInput/DateInput.module.css';\n\nconst sizeYClassNames = {\n none: styles['DateRangeInput--sizeY-none'],\n [SizeType.COMPACT]: styles['DateRangeInput--sizeY-compact'],\n};\n\nexport interface DateRangeInputProps\n extends Omit<React.InputHTMLAttributes<HTMLDivElement>, 'value' | 'onChange'>,\n Pick<\n CalendarRangeProps,\n | 'disablePast'\n | 'disableFuture'\n | 'shouldDisableDate'\n | 'onChange'\n | 'value'\n | 'weekStartsOn'\n | 'disablePickers'\n | 'prevMonthAriaLabel'\n | 'nextMonthAriaLabel'\n | 'changeMonthAriaLabel'\n | 'changeYearAriaLabel'\n | 'changeDayAriaLabel'\n | 'prevMonthIcon'\n | 'nextMonthIcon'\n >,\n HasRootRef<HTMLDivElement>,\n FormFieldProps {\n calendarPlacement?: PlacementWithAuto;\n closeOnChange?: boolean;\n clearFieldAriaLabel?: string;\n showCalendarAriaLabel?: string;\n changeStartDayAriaLabel?: string;\n changeStartMonthAriaLabel?: string;\n changeStartYearAriaLabel?: string;\n changeEndDayAriaLabel?: string;\n changeEndMonthAriaLabel?: string;\n changeEndYearAriaLabel?: string;\n disableCalendar?: boolean;\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 case 3:\n max = 31;\n break;\n case 1:\n case 4:\n max = 12;\n break;\n case 2:\n case 5:\n max = 2100;\n min = 1900;\n length = 4;\n break;\n }\n\n return { length, min, max };\n};\n\nconst getInternalValue = (value: CalendarRangeProps['value']) => {\n const newValue = ['', '', '', '', '', ''];\n if (value?.[0]) {\n newValue[0] = String(value[0].getDate()).padStart(2, '0');\n newValue[1] = String(value[0].getMonth() + 1).padStart(2, '0');\n newValue[2] = String(value[0].getFullYear()).padStart(4, '0');\n }\n if (value?.[1]) {\n newValue[3] = String(value[1].getDate()).padStart(2, '0');\n newValue[4] = String(value[1].getMonth() + 1).padStart(2, '0');\n newValue[5] = String(value[1].getFullYear()).padStart(4, '0');\n }\n return newValue;\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/DateRangeInput\n */\nexport const DateRangeInput = ({\n shouldDisableDate,\n disableFuture,\n disablePast,\n value,\n onChange,\n calendarPlacement = 'bottom-start',\n style,\n className,\n closeOnChange = true,\n disablePickers,\n getRootRef,\n name,\n autoFocus,\n disabled,\n onClick,\n onFocus,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeDayAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n changeStartDayAriaLabel = 'Изменить день начала',\n changeStartMonthAriaLabel = 'Изменить месяц начала',\n changeStartYearAriaLabel = 'Изменить год начала',\n changeEndDayAriaLabel = 'Изменить день окончания',\n changeEndMonthAriaLabel = 'Изменить месяц окончания',\n changeEndYearAriaLabel = 'Изменить год окончания',\n clearFieldAriaLabel = 'Очистить поле',\n showCalendarAriaLabel = 'Показать календарь',\n prevMonthIcon,\n nextMonthIcon,\n disableCalendar = false,\n ...props\n}: DateRangeInputProps) => {\n const daysStartRef = React.useRef<HTMLSpanElement>(null);\n const monthsStartRef = React.useRef<HTMLSpanElement>(null);\n const yearsStartRef = React.useRef<HTMLSpanElement>(null);\n const daysEndRef = React.useRef<HTMLSpanElement>(null);\n const monthsEndRef = React.useRef<HTMLSpanElement>(null);\n const yearsEndRef = React.useRef<HTMLSpanElement>(null);\n\n const onInternalValueChange = React.useCallback(\n (internalValue: string[]) => {\n let isStartValid = true;\n let isEndValid = true;\n for (let i = 0; i <= 2; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isStartValid = false;\n }\n }\n for (let i = 3; i <= 5; i += 1) {\n if (internalValue[i].length < elementsConfig(i).length) {\n isEndValid = false;\n }\n }\n const formattedStartValue = `${internalValue[0]}.${internalValue[1]}.${internalValue[2]}`;\n const formattedEndValue = `${internalValue[3]}.${internalValue[4]}.${internalValue[5]}`;\n const mask = 'DD.MM.YYYY';\n\n if (!isMatch(formattedStartValue, mask)) {\n isStartValid = false;\n }\n if (!isMatch(formattedEndValue, mask)) {\n isEndValid = false;\n }\n\n if (!isStartValid && !isEndValid) {\n return;\n }\n\n const valueExists = Array.isArray(value);\n const now = new Date();\n const start = isStartValid\n ? parse(formattedStartValue, mask, (valueExists && value?.[0]) || now)\n : null;\n const end = isEndValid\n ? parse(formattedEndValue, mask, (valueExists && value?.[1]) || now)\n : null;\n if (start && end && isAfter(end, start)) {\n onChange?.([start, end]);\n }\n },\n [onChange, value],\n );\n\n const refs = React.useMemo(\n () => [daysStartRef, monthsStartRef, yearsStartRef, daysEndRef, monthsEndRef, yearsEndRef],\n [daysStartRef, monthsStartRef, yearsStartRef, daysEndRef, monthsEndRef, yearsEndRef],\n );\n\n const {\n rootRef,\n calendarRef,\n open,\n openCalendar,\n closeCalendar,\n internalValue,\n handleKeyDown,\n setFocusedElement,\n handleFieldEnter,\n clear,\n removeFocusFromField,\n } = useDateInput({\n maxElement: 5,\n refs,\n autoFocus,\n disabled,\n elementsConfig,\n onChange,\n onInternalValueChange,\n getInternalValue,\n value,\n });\n\n const { sizeY = 'none' } = useAdaptivity();\n\n const handleRootRef = useExternRef(rootRef, getRootRef);\n\n const onCalendarChange = React.useCallback(\n (newValue?: Array<Date | null> | undefined) => {\n onChange?.(newValue);\n if (closeOnChange && newValue?.[1] && newValue[1] !== value?.[1]) {\n removeFocusFromField();\n }\n },\n [onChange, closeOnChange, value, removeFocusFromField],\n );\n\n return (\n <FormField\n style={style}\n className={classNames(sizeY !== SizeType.REGULAR && sizeYClassNames[sizeY], className)}\n getRootRef={handleRootRef}\n after={\n value ? (\n <IconButton hoverMode=\"opacity\" aria-label={clearFieldAriaLabel} onClick={clear}>\n <Icon16Clear />\n </IconButton>\n ) : (\n <IconButton hoverMode=\"opacity\" aria-label={showCalendarAriaLabel} 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 <input\n type=\"hidden\"\n name={name}\n value={\n value\n ? `${value[0] ? format(value[0], 'DD.MM.YYYY') : ''} - ${\n value[1] ? format(value[1], 'DD.MM.YYYY') : ''\n }`\n : ''\n }\n />\n <span className={dateInputStyles['DateInput__input']} onKeyDown={handleKeyDown}>\n <InputLike\n length={2}\n getRootRef={daysStartRef}\n index={0}\n onElementSelect={setFocusedElement}\n value={internalValue[0]}\n aria-label={changeStartDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsStartRef}\n index={1}\n onElementSelect={setFocusedElement}\n value={internalValue[1]}\n aria-label={changeStartMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsStartRef}\n index={2}\n onElementSelect={setFocusedElement}\n value={internalValue[2]}\n aria-label={changeStartYearAriaLabel}\n />\n <InputLikeDivider>{' — '}</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={daysEndRef}\n index={3}\n onElementSelect={setFocusedElement}\n value={internalValue[3]}\n aria-label={changeEndDayAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={2}\n getRootRef={monthsEndRef}\n index={4}\n onElementSelect={setFocusedElement}\n value={internalValue[4]}\n aria-label={changeEndMonthAriaLabel}\n />\n <InputLikeDivider>.</InputLikeDivider>\n <InputLike\n length={4}\n getRootRef={yearsEndRef}\n index={5}\n onElementSelect={setFocusedElement}\n value={internalValue[5]}\n aria-label={changeEndYearAriaLabel}\n />\n </span>\n {open && !disableCalendar && (\n <Popper targetRef={rootRef} offsetDistance={8} placement={calendarPlacement}>\n <CalendarRange\n value={value}\n onChange={onCalendarChange}\n disablePast={disablePast}\n disableFuture={disableFuture}\n shouldDisableDate={shouldDisableDate}\n onClose={closeCalendar}\n getRootRef={calendarRef}\n disablePickers={disablePickers}\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n changeDayAriaLabel={changeDayAriaLabel}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n />\n </Popper>\n )}\n </FormField>\n );\n};\n"],"names":["DateRangeInput","sizeYClassNames","none","SizeType","COMPACT","elementsConfig","index","length","min","max","getInternalValue","value","newValue","String","getDate","padStart","getMonth","getFullYear","shouldDisableDate","disableFuture","disablePast","onChange","calendarPlacement","style","className","closeOnChange","disablePickers","getRootRef","name","autoFocus","disabled","onClick","onFocus","prevMonthAriaLabel","nextMonthAriaLabel","changeDayAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","changeStartDayAriaLabel","changeStartMonthAriaLabel","changeStartYearAriaLabel","changeEndDayAriaLabel","changeEndMonthAriaLabel","changeEndYearAriaLabel","clearFieldAriaLabel","showCalendarAriaLabel","prevMonthIcon","nextMonthIcon","disableCalendar","props","daysStartRef","React","useRef","monthsStartRef","yearsStartRef","daysEndRef","monthsEndRef","yearsEndRef","onInternalValueChange","useCallback","internalValue","isStartValid","isEndValid","i","formattedStartValue","formattedEndValue","mask","isMatch","valueExists","Array","isArray","now","Date","start","parse","end","isAfter","refs","useMemo","useDateInput","maxElement","rootRef","calendarRef","open","openCalendar","closeCalendar","handleKeyDown","setFocusedElement","handleFieldEnter","clear","removeFocusFromField","useAdaptivity","sizeY","handleRootRef","useExternRef","onCalendarChange","FormField","classNames","REGULAR","after","IconButton","hoverMode","aria-label","Icon16Clear","Icon20CalendarOutline","callMultiple","input","type","format","span","onKeyDown","InputLike","onElementSelect","InputLikeDivider","Popper","targetRef","offsetDistance","placement","CalendarRange","onClose"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Div/Div.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasRootRef } from '../../types';\nimport styles from './Div.module.css';\n\nexport interface DivProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Div\n */\nexport const Div = ({ children, getRootRef, className, ...restProps }: DivProps) => {\n return (\n <div {...restProps} ref={getRootRef} className={classNames(styles['Div'], className)}>\n {children}\n </div>\n );\n};\n"],"names":["Div","children","getRootRef","className","restProps","div","ref","classNames"],"mappings":";;;;+BAYaA;;;eAAAA;;;;;;;+DAZU;oBACI;AAWpB,IAAMA,MAAM;QAAGC,kBAAAA,UAAUC,oBAAAA,YAAYC,mBAAAA,WAAcC;QAApCH;QAAUC;QAAYC;;IAC1C,qBACE,qBAACE,mDAAQD;QAAWE,KAAKJ;QAAYC,WAAWI,IAAAA,6BAA0BJ;QACvEF;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/Div/Div.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasRootRef } from '../../types';\nimport styles from './Div.module.css';\n\nexport interface DivProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Div\n */\nexport const Div = ({ children, getRootRef, className, ...restProps }: DivProps) => {\n return (\n <div {...restProps} ref={getRootRef} className={classNames(styles['Div'], className)}>\n {children}\n </div>\n );\n};\n"],"names":["Div","children","getRootRef","className","restProps","div","ref","classNames"],"mappings":";;;;+BAYaA;;;eAAAA;;;;;;;+DAZU;oBACI;AAWpB,IAAMA,MAAM;QAAGC,kBAAAA,UAAUC,oBAAAA,YAAYC,mBAAAA,WAAcC;QAApCH;QAAUC;QAAYC;;IAC1C,qBACE,qBAACE,mDAAQD;QAAWE,KAAKJ;QAAYC,WAAWI,IAAAA,gBAAU,aAAgBJ;QACvEF;AAGP"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/DropdownIcon/DropdownIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon20ChevronUp,\n Icon20Dropdown,\n Icon24ChevronDown,\n Icon24ChevronUp,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\n\nexport interface DropdownIconProps extends React.HTMLAttributes<SVGSVGElement> {\n opened?: boolean;\n}\n\nexport const DropdownIcon = ({ opened = false, className, ...restProps }: DropdownIconProps) => {\n const { sizeY } = useAdaptivityConditionalRender();\n const IconCompact = opened ? Icon20ChevronUp : Icon20Dropdown;\n const IconRegular = opened ? Icon24ChevronUp : Icon24ChevronDown;\n\n return (\n <React.Fragment>\n {sizeY.compact && (\n <IconCompact className={classNames(sizeY.compact.className, className)} {...restProps} />\n )}\n {sizeY.regular && (\n <IconRegular className={classNames(sizeY.regular.className, className)} {...restProps} />\n )}\n </React.Fragment>\n );\n};\n"],"names":["DropdownIcon","opened","className","restProps","sizeY","useAdaptivityConditionalRender","IconCompact","Icon20ChevronUp","Icon20Dropdown","IconRegular","Icon24ChevronUp","Icon24ChevronDown","React","Fragment","compact","classNames","regular"],"mappings":";;;;+BAcaA;;;eAAAA;;;;;;+DAdU;qBAMhB;oBACoB;8CACoB;AAMxC,IAAMA,eAAe;+BAAGC,QAAAA,oCAAS,uBAAOC,mBAAAA,WAAcC;QAA9BF;QAAgBC;;IAC7C,IAAM,AAAEE,QAAUC,IAAAA,kEAAVD;IACR,IAAME,cAAcL,SAASM,yBAAkBC;IAC/C,IAAMC,cAAcR,SAASS,yBAAkBC;IAE/C,qBACE,qBAACC,OAAMC,gBACJT,MAAMU,yBACL,qBAACR;QAAYJ,WAAWa,IAAAA,kBAAWX,MAAMU,QAAQZ,WAAWA;OAAgBC,aAE7EC,MAAMY,yBACL,qBAACP;QAAYP,WAAWa,IAAAA,kBAAWX,MAAMY,QAAQd,WAAWA;OAAgBC;AAIpF"}
1
+ {"version":3,"sources":["../../../../src/components/DropdownIcon/DropdownIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon20ChevronUp,\n Icon20Dropdown,\n Icon24ChevronDown,\n Icon24ChevronUp,\n} from '@vkontakte/icons';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityConditionalRender } from '../../hooks/useAdaptivityConditionalRender';\n\nexport interface DropdownIconProps extends React.HTMLAttributes<SVGSVGElement> {\n opened?: boolean;\n}\n\nexport const DropdownIcon = ({ opened = false, className, ...restProps }: DropdownIconProps) => {\n const { sizeY } = useAdaptivityConditionalRender();\n const IconCompact = opened ? Icon20ChevronUp : Icon20Dropdown;\n const IconRegular = opened ? Icon24ChevronUp : Icon24ChevronDown;\n\n return (\n <React.Fragment>\n {sizeY.compact && (\n <IconCompact className={classNames(sizeY.compact.className, className)} {...restProps} />\n )}\n {sizeY.regular && (\n <IconRegular className={classNames(sizeY.regular.className, className)} {...restProps} />\n )}\n </React.Fragment>\n );\n};\n"],"names":["DropdownIcon","opened","className","restProps","sizeY","useAdaptivityConditionalRender","IconCompact","Icon20ChevronUp","Icon20Dropdown","IconRegular","Icon24ChevronUp","Icon24ChevronDown","React","Fragment","compact","classNames","regular"],"mappings":";;;;+BAcaA;;;eAAAA;;;;;;+DAdU;qBAMhB;oBACoB;8CACoB;AAMxC,IAAMA,eAAe;+BAAGC,QAAAA,oCAAS,uBAAOC,mBAAAA,WAAcC;QAA9BF;QAAgBC;;IAC7C,IAAM,AAAEE,QAAUC,IAAAA,8DAA8B,IAAxCD;IACR,IAAME,cAAcL,SAASM,sBAAe,GAAGC,qBAAc;IAC7D,IAAMC,cAAcR,SAASS,sBAAe,GAAGC,wBAAiB;IAEhE,qBACE,qBAACC,OAAMC,QAAQ,QACZT,MAAMU,OAAO,kBACZ,qBAACR;QAAYJ,WAAWa,IAAAA,gBAAU,EAACX,MAAMU,OAAO,CAACZ,SAAS,EAAEA;OAAgBC,aAE7EC,MAAMY,OAAO,kBACZ,qBAACP;QAAYP,WAAWa,IAAAA,gBAAU,EAACX,MAAMY,OAAO,CAACd,SAAS,EAAEA;OAAgBC;AAIpF"}
@@ -2,6 +2,7 @@ import * as React from 'react';
2
2
  export interface EpicProps extends React.HTMLAttributes<HTMLDivElement> {
3
3
  tabbar?: React.ReactNode;
4
4
  activeStory: string;
5
+ children: React.ReactElement | Iterable<React.ReactElement>;
5
6
  }
6
7
  /**
7
8
  * @see https://vkcom.github.io/VKUI/#/Epic
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Epic/Epic.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getNavId } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { ScrollSaver } from './ScrollSaver';\nimport styles from './Epic.module.css';\n\nexport interface EpicProps extends React.HTMLAttributes<HTMLDivElement> {\n tabbar?: React.ReactNode;\n activeStory: string;\n}\n\nconst warn = warnOnce('Epic');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Epic\n */\nexport const Epic = (props: EpicProps) => {\n const scroll = React.useRef<{ [key: string]: number }>({}).current;\n const { activeStory, tabbar, children, className, ...restProps } = props;\n\n const story =\n (React.Children.toArray(children).find(\n (story) => React.isValidElement(story) && getNavId(story.props, warn) === activeStory,\n ) as React.ReactElement | undefined) ?? null;\n\n return (\n <div\n {...restProps}\n className={classNames(styles['Epic'], tabbar && 'vkuiInternalEpic--hasTabbar', className)}\n >\n <ScrollSaver\n key={activeStory}\n initialScroll={scroll[activeStory] || 0}\n saveScroll={(value) => (scroll[activeStory] = value)}\n >\n {story}\n </ScrollSaver>\n {tabbar}\n </div>\n );\n};\n"],"names":["Epic","warn","warnOnce","props","scroll","React","useRef","current","activeStory","tabbar","children","className","restProps","story","Children","toArray","find","isValidElement","getNavId","div","classNames","ScrollSaver","key","initialScroll","saveScroll","value"],"mappings":";;;;+BAiBaA;;;eAAAA;;;;;;;+DAjBU;oBACI;wBACF;wBACA;2BACG;AAQ5B,IAAMC,OAAOC,IAAAA,oBAAS;AAKf,IAAMF,OAAO,SAACG;IACnB,IAAMC,SAASC,OAAMC,OAAkC,CAAC,GAAGC;IAC3D,IAAQC,cAA2DL,MAA3DK,aAAaC,SAA8CN,MAA9CM,QAAQC,WAAsCP,MAAtCO,UAAUC,YAA4BR,MAA5BQ,WAAcC,yCAAcT;QAA3DK;QAAaC;QAAQC;QAAUC;;QAGpCN;IADH,IAAMQ,QACJ,CAACR,+BAAAA,OAAMS,SAASC,QAAQL,UAAUM,KAChC,SAACH;6BAAUR,OAAMY,eAAeJ,UAAUK,IAAAA,oBAASL,MAAMV,OAAOF,UAAUO;oBAD3EH,0CAAAA,+BAEuC;IAE1C,qBACE,qBAACc,mDACKP;QACJD,WAAWS,IAAAA,8BAA2BX,UAAU,+BAA+BE;sBAE/E,qBAACU;QACCC,KAAKd;QACLe,eAAenB,MAAM,CAACI,YAAY,IAAI;QACtCgB,YAAY,SAACC;mBAAWrB,MAAM,CAACI,YAAY,GAAGiB;;OAE7CZ,QAEFJ;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/Epic/Epic.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { getNavId } from '../../lib/getNavId';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { ScrollSaver } from './ScrollSaver';\nimport styles from './Epic.module.css';\n\nexport interface EpicProps extends React.HTMLAttributes<HTMLDivElement> {\n tabbar?: React.ReactNode;\n activeStory: string;\n children: React.ReactElement | Iterable<React.ReactElement>;\n}\n\nconst warn = warnOnce('Epic');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Epic\n */\nexport const Epic = (props: EpicProps) => {\n const scroll = React.useRef<{ [key: string]: number }>({}).current;\n const { activeStory, tabbar, children, className, ...restProps } = props;\n\n const story =\n (React.Children.toArray(children).find(\n (story) => React.isValidElement(story) && getNavId(story.props, warn) === activeStory,\n ) as React.ReactElement | undefined) ?? null;\n\n return (\n <div\n {...restProps}\n className={classNames(styles['Epic'], tabbar && 'vkuiInternalEpic--hasTabbar', className)}\n >\n <ScrollSaver\n key={activeStory}\n initialScroll={scroll[activeStory] || 0}\n saveScroll={(value) => (scroll[activeStory] = value)}\n >\n {story}\n </ScrollSaver>\n {tabbar}\n </div>\n );\n};\n"],"names":["Epic","warn","warnOnce","props","scroll","React","useRef","current","activeStory","tabbar","children","className","restProps","story","Children","toArray","find","isValidElement","getNavId","div","classNames","ScrollSaver","key","initialScroll","saveScroll","value"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;;;;+DAlBU;oBACI;wBACF;wBACA;2BACG;AAS5B,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AAKf,IAAMF,OAAO,SAACG;IACnB,IAAMC,SAASC,OAAMC,MAAM,CAA4B,CAAC,GAAGC,OAAO;IAClE,IAAQC,cAA2DL,MAA3DK,aAAaC,SAA8CN,MAA9CM,QAAQC,WAAsCP,MAAtCO,UAAUC,YAA4BR,MAA5BQ,WAAcC,yCAAcT;QAA3DK;QAAaC;QAAQC;QAAUC;;QAGpCN;IADH,IAAMQ,QACJ,CAACR,+BAAAA,OAAMS,QAAQ,CAACC,OAAO,CAACL,UAAUM,IAAI,CACpC,SAACH;6BAAUR,OAAMY,cAAc,CAACJ,UAAUK,IAAAA,kBAAQ,EAACL,MAAMV,KAAK,EAAEF,UAAUO;oBAD3EH,0CAAAA,+BAEuC;IAE1C,qBACE,qBAACc,mDACKP;QACJD,WAAWS,IAAAA,gBAAU,cAAiBX,UAAU,+BAA+BE;sBAE/E,qBAACU,wBAAW;QACVC,KAAKd;QACLe,eAAenB,MAAM,CAACI,YAAY,IAAI;QACtCgB,YAAY,SAACC;mBAAWrB,MAAM,CAACI,YAAY,GAAGiB;;OAE7CZ,QAEFJ;AAGP"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Epic/ScrollSaver.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasChildren } from '../../types';\nimport { ScrollContext } from '../AppRoot/ScrollContext';\n\nexport interface ScrollSaverProps extends HasChildren {\n initialScroll?: number;\n saveScroll: (this: void, scroll: number) => any;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ScrollSaver\n */\nexport const ScrollSaver = ({ children, initialScroll, saveScroll }: ScrollSaverProps) => {\n const { getScroll, scrollTo } = React.useContext(ScrollContext);\n useIsomorphicLayoutEffect(() => {\n if (typeof initialScroll === 'number') {\n scrollTo(0, initialScroll);\n }\n return () => saveScroll(getScroll().y);\n }, []);\n return <React.Fragment>{children}</React.Fragment>;\n};\n"],"names":["ScrollSaver","children","initialScroll","saveScroll","React","useContext","ScrollContext","getScroll","scrollTo","useIsomorphicLayoutEffect","y","Fragment"],"mappings":";;;;+BAaaA;;;eAAAA;;;;+DAbU;yCACmB;6BAEZ;AAUvB,IAAMA,cAAc;QAAGC,iBAAAA,UAAUC,sBAAAA,eAAeC,mBAAAA;IACrD,IAAgCC,oBAAAA,OAAMC,WAAWC,+BAAzCC,YAAwBH,kBAAxBG,WAAWC,WAAaJ,kBAAbI;IACnBC,IAAAA,sDAA0B;QACxB,IAAI,OAAOP,kBAAkB,UAAU;YACrCM,SAAS,GAAGN;QACd;QACA,OAAO;mBAAMC,WAAWI,YAAYG;;IACtC,GAAG,EAAE;IACL,qBAAO,qBAACN,OAAMO,gBAAUV;AAC1B"}
1
+ {"version":3,"sources":["../../../../src/components/Epic/ScrollSaver.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasChildren } from '../../types';\nimport { ScrollContext } from '../AppRoot/ScrollContext';\n\nexport interface ScrollSaverProps extends HasChildren {\n initialScroll?: number;\n saveScroll: (this: void, scroll: number) => any;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ScrollSaver\n */\nexport const ScrollSaver = ({ children, initialScroll, saveScroll }: ScrollSaverProps) => {\n const { getScroll, scrollTo } = React.useContext(ScrollContext);\n useIsomorphicLayoutEffect(() => {\n if (typeof initialScroll === 'number') {\n scrollTo(0, initialScroll);\n }\n return () => saveScroll(getScroll().y);\n }, []);\n return <React.Fragment>{children}</React.Fragment>;\n};\n"],"names":["ScrollSaver","children","initialScroll","saveScroll","React","useContext","ScrollContext","getScroll","scrollTo","useIsomorphicLayoutEffect","y","Fragment"],"mappings":";;;;+BAaaA;;;eAAAA;;;;+DAbU;yCACmB;6BAEZ;AAUvB,IAAMA,cAAc;QAAGC,iBAAAA,UAAUC,sBAAAA,eAAeC,mBAAAA;IACrD,IAAgCC,oBAAAA,OAAMC,UAAU,CAACC,4BAAa,GAAtDC,YAAwBH,kBAAxBG,WAAWC,WAAaJ,kBAAbI;IACnBC,IAAAA,oDAAyB,EAAC;QACxB,IAAI,OAAOP,kBAAkB,UAAU;YACrCM,SAAS,GAAGN;QACd;QACA,OAAO;mBAAMC,WAAWI,YAAYG,CAAC;;IACvC,GAAG,EAAE;IACL,qBAAO,qBAACN,OAAMO,QAAQ,QAAEV;AAC1B"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/File/File.tsx"],"sourcesContent":["import * as React from 'react';\nimport { HasRef, HasRootRef } from '../../types';\nimport { Button, VKUIButtonProps } from '../Button/Button';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\n\nexport interface FileProps\n extends Omit<VKUIButtonProps, 'type'>,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/File\n */\nexport const File = ({\n children = 'Выберите файл',\n align = 'left',\n size,\n mode,\n stretched,\n before,\n after,\n loading,\n className,\n style,\n getRef,\n getRootRef,\n appearance,\n ...restProps\n}: FileProps) => {\n return (\n <Button\n Component=\"label\"\n align={align}\n className={className}\n stretched={stretched}\n mode={mode}\n appearance={appearance}\n size={size}\n before={before}\n after={after}\n loading={loading}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <VisuallyHidden {...restProps} Component=\"input\" type=\"file\" getRootRef={getRef} />\n {children}\n </Button>\n );\n};\n"],"names":["File","children","align","size","mode","stretched","before","after","loading","className","style","getRef","getRootRef","appearance","restProps","Button","Component","disabled","VisuallyHidden","type"],"mappings":";;;;+BAcaA;;;eAAAA;;;;;;;+DAdU;sBAEiB;8BACT;AAWxB,IAAMA,OAAO;iCAClBC,UAAAA,wCAAW,yDACXC,OAAAA,kCAAQ,uBACRC,cAAAA,MACAC,cAAAA,MACAC,mBAAAA,WACAC,gBAAAA,QACAC,eAAAA,OACAC,iBAAAA,SACAC,mBAAAA,WACAC,eAAAA,OACAC,gBAAAA,QACAC,oBAAAA,YACAC,oBAAAA,YACGC;QAbHb;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,qBACE,qBAACE;QACCC,WAAU;QACVd,OAAOA;QACPO,WAAWA;QACXJ,WAAWA;QACXD,MAAMA;QACNS,YAAYA;QACZV,MAAMA;QACNG,QAAQA;QACRC,OAAOA;QACPC,SAASA;QACTE,OAAOA;QACPE,YAAYA;QACZK,UAAUH,UAAUG;qBAEpB,qBAACC,4EAAmBJ;QAAWE,WAAU;QAAQG,MAAK;QAAOP,YAAYD;SACxEV;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/File/File.tsx"],"sourcesContent":["import * as React from 'react';\nimport { HasRef, HasRootRef } from '../../types';\nimport { Button, VKUIButtonProps } from '../Button/Button';\nimport { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';\n\nexport interface FileProps\n extends Omit<VKUIButtonProps, 'type'>,\n Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size'>,\n HasRef<HTMLInputElement>,\n HasRootRef<HTMLElement> {}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/File\n */\nexport const File = ({\n children = 'Выберите файл',\n align = 'left',\n size,\n mode,\n stretched,\n before,\n after,\n loading,\n className,\n style,\n getRef,\n getRootRef,\n appearance,\n ...restProps\n}: FileProps) => {\n return (\n <Button\n Component=\"label\"\n align={align}\n className={className}\n stretched={stretched}\n mode={mode}\n appearance={appearance}\n size={size}\n before={before}\n after={after}\n loading={loading}\n style={style}\n getRootRef={getRootRef}\n disabled={restProps.disabled}\n >\n <VisuallyHidden {...restProps} Component=\"input\" type=\"file\" getRootRef={getRef} />\n {children}\n </Button>\n );\n};\n"],"names":["File","children","align","size","mode","stretched","before","after","loading","className","style","getRef","getRootRef","appearance","restProps","Button","Component","disabled","VisuallyHidden","type"],"mappings":";;;;+BAcaA;;;eAAAA;;;;;;;+DAdU;sBAEiB;8BACT;AAWxB,IAAMA,OAAO;iCAClBC,UAAAA,wCAAW,yDACXC,OAAAA,kCAAQ,uBACRC,cAAAA,MACAC,cAAAA,MACAC,mBAAAA,WACAC,gBAAAA,QACAC,eAAAA,OACAC,iBAAAA,SACAC,mBAAAA,WACAC,eAAAA,OACAC,gBAAAA,QACAC,oBAAAA,YACAC,oBAAAA,YACGC;QAbHb;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,qBACE,qBAACE,cAAM;QACLC,WAAU;QACVd,OAAOA;QACPO,WAAWA;QACXJ,WAAWA;QACXD,MAAMA;QACNS,YAAYA;QACZV,MAAMA;QACNG,QAAQA;QACRC,OAAOA;QACPC,SAASA;QACTE,OAAOA;QACPE,YAAYA;QACZK,UAAUH,UAAUG,QAAQ;qBAE5B,qBAACC,8BAAc,8CAAKJ;QAAWE,WAAU;QAAQG,MAAK;QAAOP,YAAYD;SACxEV;AAGP"}
@@ -39,11 +39,12 @@ var FixedLayout = function(_param) {
39
39
  var window = (0, _dom.useDOM)().window;
40
40
  var colRef = _react.useContext(_SplitColContext.SplitColContext).colRef;
41
41
  var doResize = function() {
42
+ var _colRef;
42
43
  if (useParentWidth && ref.current) {
43
44
  var _ref_current_parentElement;
44
45
  var parentWidth = (_ref_current_parentElement = ref.current.parentElement) === null || _ref_current_parentElement === void 0 ? void 0 : _ref_current_parentElement.getBoundingClientRect().width;
45
46
  setWidth(parentWidth ? "".concat(parentWidth, "px") : undefined);
46
- } else if (colRef === null || colRef === void 0 ? void 0 : colRef.current) {
47
+ } else if ((_colRef = colRef) === null || _colRef === void 0 ? void 0 : _colRef.current) {
47
48
  var computedStyle = getComputedStyle(colRef.current);
48
49
  setWidth("".concat(colRef.current.clientWidth - parseFloat(computedStyle.paddingLeft) - parseFloat(computedStyle.paddingRight), "px"));
49
50
  } else {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/FixedLayout/FixedLayout.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { SplitColContext } from '../SplitCol/SplitColContext';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport styles from './FixedLayout.module.css';\n\nexport interface FixedLayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n vertical?: 'top' | 'bottom';\n /**\n * Это свойство определяет, будет ли фон компонента окрашен в цвет фона контента.\n * Это часто необходимо для фиксированных кнопок в нижней части экрана.\n */\n filled?: boolean;\n /**\n * Всегда соответствовать ширине родителя.\n * Ширина пересчитывается по событию `window` `resize`.\n */\n useParentWidth?: boolean;\n}\n\nexport interface FixedLayoutState {\n position: 'absolute' | null;\n top: number;\n bottom: number;\n width: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FixedLayout\n */\nexport const FixedLayout = ({\n children,\n style,\n vertical,\n getRootRef,\n getRef,\n filled,\n className,\n useParentWidth,\n ...restProps\n}: FixedLayoutProps) => {\n const platform = usePlatform();\n const ref = useExternRef(getRootRef, getRef); // TODO [>=6]: удалить getRef\n const [width, setWidth] = React.useState<string | undefined>(undefined);\n const { window } = useDOM();\n const { colRef } = React.useContext(SplitColContext);\n\n const doResize = () => {\n if (useParentWidth && ref.current) {\n const parentWidth = ref.current.parentElement?.getBoundingClientRect().width;\n setWidth(parentWidth ? `${parentWidth}px` : undefined);\n } else if (colRef?.current) {\n const computedStyle = getComputedStyle(colRef.current);\n\n setWidth(\n `${\n colRef.current.clientWidth -\n parseFloat(computedStyle.paddingLeft) -\n parseFloat(computedStyle.paddingRight)\n }px`,\n );\n } else {\n setWidth(undefined);\n }\n };\n React.useEffect(doResize, [colRef, platform, ref, useParentWidth]);\n useGlobalEventListener(window, 'resize', doResize);\n\n return (\n <TooltipContainer\n {...restProps}\n fixed\n ref={ref}\n className={classNames(\n styles['FixedLayout'],\n platform === Platform.IOS && 'vkuiInternalFixedLayout--ios',\n filled && styles['FixedLayout--filled'],\n vertical &&\n {\n top: styles['FixedLayout--vertical-top'],\n bottom: classNames(\n styles['FixedLayout--vertical-bottom'],\n 'vkuiInternalFixedLayout--vertical-bottom',\n ),\n }[vertical],\n className,\n )}\n style={{ ...style, width }}\n >\n {children}\n </TooltipContainer>\n );\n};\n"],"names":["FixedLayout","children","style","vertical","getRootRef","getRef","filled","className","useParentWidth","restProps","platform","usePlatform","ref","useExternRef","React","useState","undefined","width","setWidth","window","useDOM","colRef","useContext","SplitColContext","doResize","current","parentWidth","parentElement","getBoundingClientRect","computedStyle","getComputedStyle","clientWidth","parseFloat","paddingLeft","paddingRight","useEffect","useGlobalEventListener","TooltipContainer","fixed","classNames","Platform","IOS","top","bottom"],"mappings":";;;;+BAuCaA;;;eAAAA;;;;;;;;+DAvCU;oBACI;4BACE;sCACU;2BACX;mBACL;wBACE;+BAEO;gCACC;AA8B1B,IAAMA,cAAc;QACzBC,kBAAAA,UACAC,eAAAA,OACAC,kBAAAA,UACAC,oBAAAA,YACAC,gBAAAA,QACAC,gBAAAA,QACAC,mBAAAA,WACAC,wBAAAA,gBACGC;QARHR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,IAAME,WAAWC,IAAAA;IACjB,IAAMC,MAAMC,IAAAA,4BAAaT,YAAYC,SAAS,6BAA6B;IAC3E,IAA0BS,qCAAAA,OAAMC,SAA6BC,gBAAtDC,QAAmBH,oBAAZI,WAAYJ;IAC1B,IAAM,AAAEK,SAAWC,IAAAA,eAAXD;IACR,IAAM,AAAEE,SAAWP,OAAMQ,WAAWC,kCAA5BF;IAER,IAAMG,WAAW;QACf,IAAIhB,kBAAkBI,IAAIa,SAAS;gBACbb;YAApB,IAAMc,cAAcd,CAAAA,6BAAAA,IAAIa,QAAQE,2BAAZf,wCAAAA,KAAAA,IAAAA,2BAA2BgB,wBAAwBX;YACvEC,SAASQ,cAAc,AAAC,GAAc,OAAZA,aAAY,QAAMV;QAC9C,OAAO,IAAIK,mBAAAA,oBAAAA,KAAAA,IAAAA,OAAQI,SAAS;YAC1B,IAAMI,gBAAgBC,iBAAiBT,OAAOI;YAE9CP,SACE,AAAC,GAIA,OAHCG,OAAOI,QAAQM,cACfC,WAAWH,cAAcI,eACzBD,WAAWH,cAAcK,eAC1B;QAEL,OAAO;YACLhB,SAASF;QACX;IACF;IACAF,OAAMqB,UAAUX,UAAU;QAACH;QAAQX;QAAUE;QAAKJ;KAAe;IACjE4B,IAAAA,gDAAuBjB,QAAQ,UAAUK;IAEzC,qBACE,qBAACa,gFACK5B;QACJ6B,OAAAA;QACA1B,KAAKA;QACLL,WAAWgC,IAAAA,qCAET7B,aAAa8B,mBAASC,OAAO,gCAC7BnC,qCACAH,YACE,CAAA;YACEuC,GAAG;YACHC,QAAQJ,IAAAA,sDAEN;QAEJ,CAAA,CAAC,CAACpC,SAAS,EACbI;QAEFL,OAAO,4CAAKA;YAAOe,OAAAA;;QAElBhB;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/FixedLayout/FixedLayout.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { useDOM } from '../../lib/dom';\nimport { Platform } from '../../lib/platform';\nimport { HasRef, HasRootRef } from '../../types';\nimport { SplitColContext } from '../SplitCol/SplitColContext';\nimport { TooltipContainer } from '../Tooltip/TooltipContainer';\nimport styles from './FixedLayout.module.css';\n\nexport interface FixedLayoutProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLDivElement> {\n vertical?: 'top' | 'bottom';\n /**\n * Это свойство определяет, будет ли фон компонента окрашен в цвет фона контента.\n * Это часто необходимо для фиксированных кнопок в нижней части экрана.\n */\n filled?: boolean;\n /**\n * Всегда соответствовать ширине родителя.\n * Ширина пересчитывается по событию `window` `resize`.\n */\n useParentWidth?: boolean;\n}\n\nexport interface FixedLayoutState {\n position: 'absolute' | null;\n top: number;\n bottom: number;\n width: string;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FixedLayout\n */\nexport const FixedLayout = ({\n children,\n style,\n vertical,\n getRootRef,\n getRef,\n filled,\n className,\n useParentWidth,\n ...restProps\n}: FixedLayoutProps) => {\n const platform = usePlatform();\n const ref = useExternRef(getRootRef, getRef); // TODO [>=6]: удалить getRef\n const [width, setWidth] = React.useState<string | undefined>(undefined);\n const { window } = useDOM();\n const { colRef } = React.useContext(SplitColContext);\n\n const doResize = () => {\n if (useParentWidth && ref.current) {\n const parentWidth = ref.current.parentElement?.getBoundingClientRect().width;\n setWidth(parentWidth ? `${parentWidth}px` : undefined);\n } else if (colRef?.current) {\n const computedStyle = getComputedStyle(colRef.current);\n\n setWidth(\n `${\n colRef.current.clientWidth -\n parseFloat(computedStyle.paddingLeft) -\n parseFloat(computedStyle.paddingRight)\n }px`,\n );\n } else {\n setWidth(undefined);\n }\n };\n React.useEffect(doResize, [colRef, platform, ref, useParentWidth]);\n useGlobalEventListener(window, 'resize', doResize);\n\n return (\n <TooltipContainer\n {...restProps}\n fixed\n ref={ref}\n className={classNames(\n styles['FixedLayout'],\n platform === Platform.IOS && 'vkuiInternalFixedLayout--ios',\n filled && styles['FixedLayout--filled'],\n vertical &&\n {\n top: styles['FixedLayout--vertical-top'],\n bottom: classNames(\n styles['FixedLayout--vertical-bottom'],\n 'vkuiInternalFixedLayout--vertical-bottom',\n ),\n }[vertical],\n className,\n )}\n style={{ ...style, width }}\n >\n {children}\n </TooltipContainer>\n );\n};\n"],"names":["FixedLayout","children","style","vertical","getRootRef","getRef","filled","className","useParentWidth","restProps","platform","usePlatform","ref","useExternRef","React","useState","undefined","width","setWidth","window","useDOM","colRef","useContext","SplitColContext","doResize","current","parentWidth","parentElement","getBoundingClientRect","computedStyle","getComputedStyle","clientWidth","parseFloat","paddingLeft","paddingRight","useEffect","useGlobalEventListener","TooltipContainer","fixed","classNames","Platform","IOS","top","bottom"],"mappings":";;;;+BAuCaA;;;eAAAA;;;;;;;;+DAvCU;oBACI;4BACE;sCACU;2BACX;mBACL;wBACE;+BAEO;gCACC;AA8B1B,IAAMA,cAAc;QACzBC,kBAAAA,UACAC,eAAAA,OACAC,kBAAAA,UACAC,oBAAAA,YACAC,gBAAAA,QACAC,gBAAAA,QACAC,mBAAAA,WACAC,wBAAAA,gBACGC;QARHR;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;;IAGA,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,IAAMC,MAAMC,IAAAA,0BAAY,EAACT,YAAYC,SAAS,6BAA6B;IAC3E,IAA0BS,qCAAAA,OAAMC,QAAQ,CAAqBC,gBAAtDC,QAAmBH,oBAAZI,WAAYJ;IAC1B,IAAM,AAAEK,SAAWC,IAAAA,WAAM,IAAjBD;IACR,IAAM,AAAEE,SAAWP,OAAMQ,UAAU,CAACC,gCAAe,EAA3CF;IAER,IAAMG,WAAW;YAIJH;QAHX,IAAIb,kBAAkBI,IAAIa,OAAO,EAAE;gBACbb;YAApB,IAAMc,eAAcd,6BAAAA,IAAIa,OAAO,CAACE,aAAa,cAAzBf,iDAAAA,2BAA2BgB,qBAAqB,GAAGX,KAAK;YAC5EC,SAASQ,cAAc,AAAC,GAAc,OAAZA,aAAY,QAAMV;QAC9C,OAAO,KAAIK,UAAAA,oBAAAA,8BAAAA,QAAQI,OAAO,EAAE;YAC1B,IAAMI,gBAAgBC,iBAAiBT,OAAOI,OAAO;YAErDP,SACE,AAAC,GAIA,OAHCG,OAAOI,OAAO,CAACM,WAAW,GAC1BC,WAAWH,cAAcI,WAAW,IACpCD,WAAWH,cAAcK,YAAY,GACtC;QAEL,OAAO;YACLhB,SAASF;QACX;IACF;IACAF,OAAMqB,SAAS,CAACX,UAAU;QAACH;QAAQX;QAAUE;QAAKJ;KAAe;IACjE4B,IAAAA,8CAAsB,EAACjB,QAAQ,UAAUK;IAEzC,qBACE,qBAACa,kCAAgB,8CACX5B;QACJ6B,OAAAA;QACA1B,KAAKA;QACLL,WAAWgC,IAAAA,gBAAU,qBAEnB7B,aAAa8B,kBAAQ,CAACC,GAAG,IAAI,gCAC7BnC,qCACAH,YACE,CAAA;YACEuC,GAAG;YACHC,QAAQJ,IAAAA,gBAAU,sCAEhB;QAEJ,CAAA,CAAC,CAACpC,SAAS,EACbI;QAEFL,OAAO,4CAAKA;YAAOe,OAAAA;;QAElBhB;AAGP"}
@@ -37,8 +37,8 @@ var FocusTrap = function(_param) {
37
37
  // HANDLE TRAP MOUNT
38
38
  var keyboardInput = _react.useContext(_AppRootContext.AppRootContext).keyboardInput;
39
39
  var focusOnTrapMount = (0, _useTimeout.useTimeout)(function() {
40
- var _ref_current;
41
- if (keyboardInput && !((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(document.activeElement)) && (focusableNodes === null || focusableNodes === void 0 ? void 0 : focusableNodes.length)) {
40
+ var _ref_current, _focusableNodes;
41
+ if (keyboardInput && !((_ref_current = ref.current) === null || _ref_current === void 0 ? void 0 : _ref_current.contains(document.activeElement)) && ((_focusableNodes = focusableNodes) === null || _focusableNodes === void 0 ? void 0 : _focusableNodes.length)) {
42
42
  focusableNodes[0].focus();
43
43
  }
44
44
  }, timeout);
@@ -84,7 +84,8 @@ var FocusTrap = function(_param) {
84
84
  restoreFocus
85
85
  ]);
86
86
  var onDocumentKeydown = function(e) {
87
- if ((0, _accessibility.pressedKey)(e) === _accessibility.Keys.TAB && (focusableNodes === null || focusableNodes === void 0 ? void 0 : focusableNodes.length)) {
87
+ var _focusableNodes;
88
+ if ((0, _accessibility.pressedKey)(e) === _accessibility.Keys.TAB && ((_focusableNodes = focusableNodes) === null || _focusableNodes === void 0 ? void 0 : _focusableNodes.length)) {
88
89
  var lastIdx = focusableNodes.length - 1;
89
90
  var targetIdx = focusableNodes.findIndex(function(node) {
90
91
  return node === e.target;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/FocusTrap/FocusTrap.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { FOCUSABLE_ELEMENTS_LIST, Keys, pressedKey } from '../../lib/accessibility';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasComponent, HasRootRef } from '../../types';\nimport { AppRootContext } from '../AppRoot/AppRootContext';\n\nconst FOCUSABLE_ELEMENTS: string = FOCUSABLE_ELEMENTS_LIST.join();\nexport interface FocusTrapProps\n extends React.AllHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLElement>,\n HasComponent {\n restoreFocus?: boolean;\n timeout?: number;\n onClose?(): void;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FocusTrap\n */\nexport const FocusTrap = ({\n Component = 'div',\n onClose,\n restoreFocus = true,\n timeout = 0,\n getRootRef,\n children,\n ...restProps\n}: FocusTrapProps) => {\n const ref = useExternRef<HTMLElement>(getRootRef);\n\n const { document, window } = useDOM();\n\n const [focusableNodes, setFocusableNodes] = React.useState<HTMLElement[] | null>(null);\n const [restoreFocusTo, setRestoreFocusTo] = React.useState<HTMLElement | null>(null);\n\n // HANDLE TRAP MOUNT\n\n const { keyboardInput } = React.useContext(AppRootContext);\n const focusOnTrapMount = useTimeout(() => {\n if (\n keyboardInput &&\n !ref.current?.contains(document!.activeElement) &&\n focusableNodes?.length\n ) {\n focusableNodes[0].focus();\n }\n }, timeout);\n useIsomorphicLayoutEffect(() => {\n focusOnTrapMount.set();\n }, []);\n\n // HANDLE FOCUSABLE NODES\n\n useIsomorphicLayoutEffect(() => {\n if (!ref.current) {\n return;\n }\n\n const nodes: HTMLElement[] = [];\n Array.prototype.forEach.call(\n // eslint-disable-next-line no-restricted-properties\n ref.current.querySelectorAll(FOCUSABLE_ELEMENTS),\n (focusableEl: Element) => {\n const { display, visibility } = window!.getComputedStyle(focusableEl);\n\n if (display !== 'none' && visibility !== 'hidden') {\n nodes.push(focusableEl as HTMLElement);\n }\n },\n );\n\n if (nodes.length === 0) {\n // Чтобы фокус был хотя бы на родителе\n nodes.push(ref.current);\n }\n\n setFocusableNodes(nodes);\n }, [children]);\n\n // HANDLE TRAP UNMOUNT\n\n const focusOnTrapUnmount = useTimeout(() => {\n if (restoreFocusTo) {\n restoreFocusTo.focus();\n }\n }, timeout);\n useIsomorphicLayoutEffect(() => {\n if (restoreFocus && document!.activeElement) {\n setRestoreFocusTo(document!.activeElement as HTMLElement);\n\n return () => {\n focusOnTrapUnmount.set();\n };\n }\n\n return;\n }, [restoreFocus]);\n\n const onDocumentKeydown = (e: KeyboardEvent) => {\n if (pressedKey(e) === Keys.TAB && focusableNodes?.length) {\n const lastIdx = focusableNodes.length - 1;\n const targetIdx = focusableNodes.findIndex((node) => node === e.target);\n\n const shouldFocusFirstNode = targetIdx === -1 || (targetIdx === lastIdx && !e.shiftKey);\n\n if (shouldFocusFirstNode || (targetIdx === 0 && e.shiftKey)) {\n e.preventDefault();\n\n const node = focusableNodes[shouldFocusFirstNode ? 0 : lastIdx];\n\n if (node !== document!.activeElement) {\n node.focus();\n }\n\n return false;\n }\n }\n\n if (onClose && pressedKey(e) === Keys.ESCAPE) {\n onClose();\n }\n\n return true;\n };\n useGlobalEventListener(document, 'keydown', onDocumentKeydown, {\n capture: true,\n });\n\n return (\n <Component tabIndex={-1} ref={ref} {...restProps}>\n {children}\n </Component>\n );\n};\n"],"names":["FocusTrap","FOCUSABLE_ELEMENTS","FOCUSABLE_ELEMENTS_LIST","join","Component","onClose","restoreFocus","timeout","getRootRef","children","restProps","ref","useExternRef","useDOM","document","window","React","useState","focusableNodes","setFocusableNodes","restoreFocusTo","setRestoreFocusTo","keyboardInput","useContext","AppRootContext","focusOnTrapMount","useTimeout","current","contains","activeElement","length","focus","useIsomorphicLayoutEffect","set","nodes","Array","prototype","forEach","call","querySelectorAll","focusableEl","getComputedStyle","display","visibility","push","focusOnTrapUnmount","onDocumentKeydown","e","pressedKey","Keys","TAB","lastIdx","targetIdx","findIndex","node","target","shouldFocusFirstNode","shiftKey","preventDefault","ESCAPE","useGlobalEventListener","capture","tabIndex"],"mappings":"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"}
1
+ {"version":3,"sources":["../../../../src/components/FocusTrap/FocusTrap.tsx"],"sourcesContent":["import * as React from 'react';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useGlobalEventListener } from '../../hooks/useGlobalEventListener';\nimport { useTimeout } from '../../hooks/useTimeout';\nimport { FOCUSABLE_ELEMENTS_LIST, Keys, pressedKey } from '../../lib/accessibility';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { HasComponent, HasRootRef } from '../../types';\nimport { AppRootContext } from '../AppRoot/AppRootContext';\n\nconst FOCUSABLE_ELEMENTS: string = FOCUSABLE_ELEMENTS_LIST.join();\nexport interface FocusTrapProps\n extends React.AllHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLElement>,\n HasComponent {\n restoreFocus?: boolean;\n timeout?: number;\n onClose?(): void;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FocusTrap\n */\nexport const FocusTrap = ({\n Component = 'div',\n onClose,\n restoreFocus = true,\n timeout = 0,\n getRootRef,\n children,\n ...restProps\n}: FocusTrapProps) => {\n const ref = useExternRef<HTMLElement>(getRootRef);\n\n const { document, window } = useDOM();\n\n const [focusableNodes, setFocusableNodes] = React.useState<HTMLElement[] | null>(null);\n const [restoreFocusTo, setRestoreFocusTo] = React.useState<HTMLElement | null>(null);\n\n // HANDLE TRAP MOUNT\n\n const { keyboardInput } = React.useContext(AppRootContext);\n const focusOnTrapMount = useTimeout(() => {\n if (\n keyboardInput &&\n !ref.current?.contains(document!.activeElement) &&\n focusableNodes?.length\n ) {\n focusableNodes[0].focus();\n }\n }, timeout);\n useIsomorphicLayoutEffect(() => {\n focusOnTrapMount.set();\n }, []);\n\n // HANDLE FOCUSABLE NODES\n\n useIsomorphicLayoutEffect(() => {\n if (!ref.current) {\n return;\n }\n\n const nodes: HTMLElement[] = [];\n Array.prototype.forEach.call(\n // eslint-disable-next-line no-restricted-properties\n ref.current.querySelectorAll(FOCUSABLE_ELEMENTS),\n (focusableEl: Element) => {\n const { display, visibility } = window!.getComputedStyle(focusableEl);\n\n if (display !== 'none' && visibility !== 'hidden') {\n nodes.push(focusableEl as HTMLElement);\n }\n },\n );\n\n if (nodes.length === 0) {\n // Чтобы фокус был хотя бы на родителе\n nodes.push(ref.current);\n }\n\n setFocusableNodes(nodes);\n }, [children]);\n\n // HANDLE TRAP UNMOUNT\n\n const focusOnTrapUnmount = useTimeout(() => {\n if (restoreFocusTo) {\n restoreFocusTo.focus();\n }\n }, timeout);\n useIsomorphicLayoutEffect(() => {\n if (restoreFocus && document!.activeElement) {\n setRestoreFocusTo(document!.activeElement as HTMLElement);\n\n return () => {\n focusOnTrapUnmount.set();\n };\n }\n\n return;\n }, [restoreFocus]);\n\n const onDocumentKeydown = (e: KeyboardEvent) => {\n if (pressedKey(e) === Keys.TAB && focusableNodes?.length) {\n const lastIdx = focusableNodes.length - 1;\n const targetIdx = focusableNodes.findIndex((node) => node === e.target);\n\n const shouldFocusFirstNode = targetIdx === -1 || (targetIdx === lastIdx && !e.shiftKey);\n\n if (shouldFocusFirstNode || (targetIdx === 0 && e.shiftKey)) {\n e.preventDefault();\n\n const node = focusableNodes[shouldFocusFirstNode ? 0 : lastIdx];\n\n if (node !== document!.activeElement) {\n node.focus();\n }\n\n return false;\n }\n }\n\n if (onClose && pressedKey(e) === Keys.ESCAPE) {\n onClose();\n }\n\n return true;\n };\n useGlobalEventListener(document, 'keydown', onDocumentKeydown, {\n capture: true,\n });\n\n return (\n <Component tabIndex={-1} ref={ref} {...restProps}>\n {children}\n </Component>\n );\n};\n"],"names":["FocusTrap","FOCUSABLE_ELEMENTS","FOCUSABLE_ELEMENTS_LIST","join","Component","onClose","restoreFocus","timeout","getRootRef","children","restProps","ref","useExternRef","useDOM","document","window","React","useState","focusableNodes","setFocusableNodes","restoreFocusTo","setRestoreFocusTo","keyboardInput","useContext","AppRootContext","focusOnTrapMount","useTimeout","current","contains","activeElement","length","focus","useIsomorphicLayoutEffect","set","nodes","Array","prototype","forEach","call","querySelectorAll","focusableEl","getComputedStyle","display","visibility","push","focusOnTrapUnmount","onDocumentKeydown","e","pressedKey","Keys","TAB","lastIdx","targetIdx","findIndex","node","target","shouldFocusFirstNode","shiftKey","preventDefault","ESCAPE","useGlobalEventListener","capture","tabIndex"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/FocusVisible/FocusVisible.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './FocusVisible.module.css';\n\nexport type FocusVisibleMode = 'inside' | 'outside' | 'outline';\n\nexport interface FocusVisibleProps {\n visible: boolean | undefined;\n mode: FocusVisibleMode;\n thin?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FocusVisible\n */\nexport const FocusVisible = ({ visible, mode, thin, ...restProps }: FocusVisibleProps) => (\n <span\n {...restProps}\n aria-hidden\n className={classNames(\n styles['FocusVisible'],\n visible && styles['FocusVisible--visible'],\n thin && styles['FocusVisible--thin'],\n {\n inside: styles['FocusVisible--mode-inside'],\n outside: styles['FocusVisible--mode-outside'],\n outline: styles['FocusVisible--mode-outline'],\n }[mode],\n )}\n />\n);\n"],"names":["FocusVisible","visible","mode","thin","restProps","span","aria-hidden","className","classNames","inside","outside","outline"],"mappings":";;;;+BAeaA;;;eAAAA;;;;;;;+DAfU;oBACI;AAcpB,IAAMA,eAAe;QAAGC,iBAAAA,SAASC,cAAAA,MAAMC,cAAAA,MAASC;QAAxBH;QAASC;QAAMC;;WAC5C,qBAACE,oDACKD;QACJE,eAAAA;QACAC,WAAWC,IAAAA,sCAETP,wCACAE,kCACA;YACEM,MAAM;YACNC,OAAO;YACPC,OAAO;QACT,CAAC,CAACT,KAAK;;AAEV"}
1
+ {"version":3,"sources":["../../../../src/components/FocusVisible/FocusVisible.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport styles from './FocusVisible.module.css';\n\nexport type FocusVisibleMode = 'inside' | 'outside' | 'outline';\n\nexport interface FocusVisibleProps {\n visible: boolean | undefined;\n mode: FocusVisibleMode;\n thin?: boolean;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/FocusVisible\n */\nexport const FocusVisible = ({ visible, mode, thin, ...restProps }: FocusVisibleProps) => (\n <span\n {...restProps}\n aria-hidden\n className={classNames(\n styles['FocusVisible'],\n visible && styles['FocusVisible--visible'],\n thin && styles['FocusVisible--thin'],\n {\n inside: styles['FocusVisible--mode-inside'],\n outside: styles['FocusVisible--mode-outside'],\n outline: styles['FocusVisible--mode-outline'],\n }[mode],\n )}\n />\n);\n"],"names":["FocusVisible","visible","mode","thin","restProps","span","aria-hidden","className","classNames","inside","outside","outline"],"mappings":";;;;+BAeaA;;;eAAAA;;;;;;;+DAfU;oBACI;AAcpB,IAAMA,eAAe;QAAGC,iBAAAA,SAASC,cAAAA,MAAMC,cAAAA,MAASC;QAAxBH;QAASC;QAAMC;;WAC5C,qBAACE,oDACKD;QACJE,eAAAA;QACAC,WAAWC,IAAAA,gBAAU,sBAEnBP,wCACAE,kCACA;YACEM,MAAM;YACNC,OAAO;YACPC,OAAO;QACT,CAAC,CAACT,KAAK;;AAEV"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasComponent } from '../../types';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './Footer.module.css';\n\nexport type FooterProps = React.AllHTMLAttributes<HTMLElement> & HasComponent;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Footer\n */\nexport const Footer = ({ children, className, ...restProps }: FooterProps) => {\n return (\n <Footnote Component=\"footer\" {...restProps} className={classNames(styles['Footer'], className)}>\n {children}\n </Footnote>\n );\n};\n"],"names":["Footer","children","className","restProps","Footnote","Component","classNames"],"mappings":";;;;+BAWaA;;;eAAAA;;;;;;;+DAXU;oBACI;wBAEF;AAQlB,IAAMA,SAAS;QAAGC,kBAAAA,UAAUC,mBAAAA,WAAcC;QAAxBF;QAAUC;;IACjC,qBACE,qBAACE;QAASC,WAAU;OAAaF;QAAWD,WAAWI,IAAAA,gCAA6BJ;QACjFD;AAGP"}
1
+ {"version":3,"sources":["../../../../src/components/Footer/Footer.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasComponent } from '../../types';\nimport { Footnote } from '../Typography/Footnote/Footnote';\nimport styles from './Footer.module.css';\n\nexport type FooterProps = React.AllHTMLAttributes<HTMLElement> & HasComponent;\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Footer\n */\nexport const Footer = ({ children, className, ...restProps }: FooterProps) => {\n return (\n <Footnote Component=\"footer\" {...restProps} className={classNames(styles['Footer'], className)}>\n {children}\n </Footnote>\n );\n};\n"],"names":["Footer","children","className","restProps","Footnote","Component","classNames"],"mappings":";;;;+BAWaA;;;eAAAA;;;;;;;+DAXU;oBACI;wBAEF;AAQlB,IAAMA,SAAS;QAAGC,kBAAAA,UAAUC,mBAAAA,WAAcC;QAAxBF;QAAUC;;IACjC,qBACE,qBAACE,kBAAQ;QAACC,WAAU;OAAaF;QAAWD,WAAWI,IAAAA,gBAAU,gBAAmBJ;QACjFD;AAGP"}