@vkontakte/vkui 4.36.1 → 4.37.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 (888) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +221 -262
  4. package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -1
  5. package/.cache/ts/src/components/Calendar/Calendar.d.ts +3 -2
  6. package/.cache/ts/src/components/CalendarDay/CalendarDay.d.ts +4 -2
  7. package/.cache/ts/src/components/CalendarDays/CalendarDays.d.ts +3 -1
  8. package/.cache/ts/src/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  9. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +1 -1
  10. package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +2 -0
  11. package/.cache/ts/src/components/Group/Group.d.ts +5 -1
  12. package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
  13. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +34 -1
  14. package/.cache/ts/src/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  15. package/.cache/ts/src/components/Tappable/Tappable.d.ts +2 -1
  16. package/.cache/ts/src/components/UsersStack/UsersStack.d.ts +7 -1
  17. package/.cache/ts/src/index.d.ts +2 -0
  18. package/.cache/ts/src/tokenized/index.d.ts +2 -0
  19. package/.eslintrc.json +2 -1
  20. package/dist/appearance/constants.js.map +1 -1
  21. package/dist/cjs/appearance/constants.js.map +1 -1
  22. package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
  23. package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
  24. package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  25. package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  26. package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  27. package/dist/cjs/components/ActionSheet/types.js.map +1 -1
  28. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  29. package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  30. package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  31. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  32. package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
  33. package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
  34. package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
  35. package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
  36. package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  37. package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  38. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  39. package/dist/cjs/components/Badge/Badge.js.map +1 -1
  40. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  41. package/dist/cjs/components/BaseGallery/BaseGallery.js +11 -10
  42. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -1
  43. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -1
  44. package/dist/cjs/components/BaseGallery/types.js.map +1 -1
  45. package/dist/cjs/components/Button/Button.js.map +1 -1
  46. package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
  47. package/dist/cjs/components/Calendar/Calendar.js +9 -3
  48. package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
  49. package/dist/cjs/components/CalendarDay/CalendarDay.js +11 -3
  50. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  51. package/dist/cjs/components/CalendarDays/CalendarDays.js +4 -3
  52. package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
  53. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +10 -4
  54. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  55. package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
  56. package/dist/cjs/components/CalendarTime/CalendarTime.js.map +1 -1
  57. package/dist/cjs/components/Card/Card.js.map +1 -1
  58. package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
  59. package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
  60. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  61. package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  62. package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -1
  63. package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
  64. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  65. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  66. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  67. package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
  68. package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  69. package/dist/cjs/components/ChipsSelect/ChipsSelect.js +6 -2
  70. package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
  71. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  72. package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  73. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  74. package/dist/cjs/components/Counter/Counter.js.map +1 -1
  75. package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
  76. package/dist/cjs/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  77. package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
  78. package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  79. package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  80. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  81. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  82. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  83. package/dist/cjs/components/Div/Div.js.map +1 -1
  84. package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
  85. package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
  86. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  87. package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
  88. package/dist/cjs/components/File/File.js.map +1 -1
  89. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  90. package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
  91. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  92. package/dist/cjs/components/Footer/Footer.js.map +1 -1
  93. package/dist/cjs/components/FormField/FormField.js.map +1 -1
  94. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  95. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  96. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  97. package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
  98. package/dist/cjs/components/Gallery/Gallery.js +2 -0
  99. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  100. package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
  101. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  102. package/dist/cjs/components/Group/Group.js +4 -2
  103. package/dist/cjs/components/Group/Group.js.map +1 -1
  104. package/dist/cjs/components/Header/Header.js.map +1 -1
  105. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  106. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  107. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  108. package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
  109. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  110. package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
  111. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  112. package/dist/cjs/components/Input/Input.js.map +1 -1
  113. package/dist/cjs/components/InputLike/InputLike.js.map +1 -1
  114. package/dist/cjs/components/InputLike/InputLikeDivider.js.map +1 -1
  115. package/dist/cjs/components/Link/Link.js.map +1 -1
  116. package/dist/cjs/components/List/List.js.map +1 -1
  117. package/dist/cjs/components/List/ListContext.js.map +1 -1
  118. package/dist/cjs/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  119. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  120. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  121. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  122. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  123. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  124. package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  125. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  126. package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  127. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  128. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  129. package/dist/cjs/components/ModalRoot/constants.js.map +1 -1
  130. package/dist/cjs/components/ModalRoot/types.js.map +1 -1
  131. package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
  132. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  133. package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
  134. package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  135. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  136. package/dist/cjs/components/Panel/Panel.js.map +1 -1
  137. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  138. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  139. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  140. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  141. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  142. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  143. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  144. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  145. package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
  146. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  147. package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
  148. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  149. package/dist/cjs/components/Popper/Popper.js.map +1 -1
  150. package/dist/cjs/components/PopperArrow/PopperArrow.js.map +1 -1
  151. package/dist/cjs/components/Progress/Progress.js.map +1 -1
  152. package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -1
  153. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  154. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  155. package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  156. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  157. package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
  158. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  159. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  160. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  161. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  162. package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
  163. package/dist/cjs/components/Root/Root.js.map +1 -1
  164. package/dist/cjs/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  165. package/dist/cjs/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  166. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  167. package/dist/cjs/components/Search/Search.js.map +1 -1
  168. package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
  169. package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  170. package/dist/cjs/components/Select/Select.js.map +1 -1
  171. package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
  172. package/dist/cjs/components/Separator/Separator.js.map +1 -1
  173. package/dist/cjs/components/SimpleCell/SimpleCell.js +30 -8
  174. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  175. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  176. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  177. package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
  178. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  179. package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
  180. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  181. package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
  182. package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
  183. package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
  184. package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  185. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +16 -12
  186. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  187. package/dist/cjs/components/Switch/Switch.js.map +1 -1
  188. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  189. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  190. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  191. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  192. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  193. package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
  194. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  195. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  196. package/dist/cjs/components/Tooltip/TooltipContainer.js.map +1 -1
  197. package/dist/cjs/components/Touch/Touch.js.map +1 -1
  198. package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
  199. package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
  200. package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
  201. package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
  202. package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
  203. package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
  204. package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
  205. package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
  206. package/dist/cjs/components/UsersStack/UsersStack.js +5 -4
  207. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  208. package/dist/cjs/components/View/View.js.map +1 -1
  209. package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
  210. package/dist/cjs/components/View/utils.js.map +1 -1
  211. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -4
  212. package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  213. package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
  214. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  215. package/dist/cjs/helpers/avatar.js.map +1 -1
  216. package/dist/cjs/helpers/getClassName.js.map +1 -1
  217. package/dist/cjs/helpers/getScheme.js.map +1 -1
  218. package/dist/cjs/helpers/math.js.map +1 -1
  219. package/dist/cjs/helpers/scheme.js.map +1 -1
  220. package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
  221. package/dist/cjs/hoc/withContext.js.map +1 -1
  222. package/dist/cjs/hoc/withInsets.js.map +1 -1
  223. package/dist/cjs/hoc/withPlatform.js.map +1 -1
  224. package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
  225. package/dist/cjs/hooks/useAppearance.js.map +1 -1
  226. package/dist/cjs/hooks/useBooleanState.js.map +1 -1
  227. package/dist/cjs/hooks/useBridgeAdaptivity.js.map +1 -1
  228. package/dist/cjs/hooks/useBrowserInfo.js.map +1 -1
  229. package/dist/cjs/hooks/useCalendar.js.map +1 -1
  230. package/dist/cjs/hooks/useChipsInput.js.map +1 -1
  231. package/dist/cjs/hooks/useChipsSelect.js.map +1 -1
  232. package/dist/cjs/hooks/useDateInput.js.map +1 -1
  233. package/dist/cjs/hooks/useEffectDev.js.map +1 -1
  234. package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
  235. package/dist/cjs/hooks/useEventListener.js.map +1 -1
  236. package/dist/cjs/hooks/useExternRef.js.map +1 -1
  237. package/dist/cjs/hooks/useFocusVisible.js.map +1 -1
  238. package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
  239. package/dist/cjs/hooks/useInsets.js.map +1 -1
  240. package/dist/cjs/hooks/useKeyboard.js.map +1 -1
  241. package/dist/cjs/hooks/useKeyboardInputTracker.js.map +1 -1
  242. package/dist/cjs/hooks/useObjectMemo.js.map +1 -1
  243. package/dist/cjs/hooks/useOrientationChange.js.map +1 -1
  244. package/dist/cjs/hooks/usePagination.js.map +1 -1
  245. package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
  246. package/dist/cjs/hooks/usePlatform.js.map +1 -1
  247. package/dist/cjs/hooks/usePrevious.js.map +1 -1
  248. package/dist/cjs/hooks/useTimeout.js.map +1 -1
  249. package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
  250. package/dist/cjs/index.js +8 -0
  251. package/dist/cjs/index.js.map +1 -1
  252. package/dist/cjs/lib/SSR.js.map +1 -1
  253. package/dist/cjs/lib/accessibility.js.map +1 -1
  254. package/dist/cjs/lib/animate.js.map +1 -1
  255. package/dist/cjs/lib/browser.js.map +1 -1
  256. package/dist/cjs/lib/calendar.js.map +1 -1
  257. package/dist/cjs/lib/callMultiple.js.map +1 -1
  258. package/dist/cjs/lib/classNames.js.map +1 -1
  259. package/dist/cjs/lib/classScopingMode.js.map +1 -1
  260. package/dist/cjs/lib/date.js.map +1 -1
  261. package/dist/cjs/lib/dom.js.map +1 -1
  262. package/dist/cjs/lib/fx.js.map +1 -1
  263. package/dist/cjs/lib/getNavId.js.map +1 -1
  264. package/dist/cjs/lib/is.js.map +1 -1
  265. package/dist/cjs/lib/isRefObject.js.map +1 -1
  266. package/dist/cjs/lib/jsxRuntime.d.js.map +1 -1
  267. package/dist/cjs/lib/jsxRuntime.js.map +1 -1
  268. package/dist/cjs/lib/offset.js.map +1 -1
  269. package/dist/cjs/lib/platform.js.map +1 -1
  270. package/dist/cjs/lib/polyfills.js.map +1 -1
  271. package/dist/cjs/lib/prefixClass.js.map +1 -1
  272. package/dist/cjs/lib/removeObjectKeys.js.map +1 -1
  273. package/dist/cjs/lib/select.js.map +1 -1
  274. package/dist/cjs/lib/styles.js.map +1 -1
  275. package/dist/cjs/lib/supportEvents.js.map +1 -1
  276. package/dist/cjs/lib/taptic.js.map +1 -1
  277. package/dist/cjs/lib/testing.js.map +1 -1
  278. package/dist/cjs/lib/touch.js.map +1 -1
  279. package/dist/cjs/lib/useIsomorphicLayoutEffect.js.map +1 -1
  280. package/dist/cjs/lib/utils.js.map +1 -1
  281. package/dist/cjs/lib/warnOnce.js.map +1 -1
  282. package/dist/cjs/tokenized/index.js +8 -0
  283. package/dist/cjs/tokenized/index.js.map +1 -1
  284. package/dist/cjs/types.js.map +1 -1
  285. package/dist/cjs/unstable/index.js.map +1 -1
  286. package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
  287. package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
  288. package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  289. package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  290. package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  291. package/dist/components/ActionSheet/types.js.map +1 -1
  292. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  293. package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  294. package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  295. package/dist/components/Alert/Alert.js.map +1 -1
  296. package/dist/components/AppRoot/AppRoot.js.map +1 -1
  297. package/dist/components/AppRoot/AppRootContext.js.map +1 -1
  298. package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
  299. package/dist/components/AppRoot/ScrollContext.js.map +1 -1
  300. package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  301. package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  302. package/dist/components/Avatar/Avatar.js.map +1 -1
  303. package/dist/components/Badge/Badge.js.map +1 -1
  304. package/dist/components/Banner/Banner.js.map +1 -1
  305. package/dist/components/BaseGallery/BaseGallery.js +11 -10
  306. package/dist/components/BaseGallery/BaseGallery.js.map +1 -1
  307. package/dist/components/BaseGallery/helpers.js.map +1 -1
  308. package/dist/components/BaseGallery/types.js.map +1 -1
  309. package/dist/components/Button/Button.js.map +1 -1
  310. package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
  311. package/dist/components/Calendar/Calendar.d.ts +3 -2
  312. package/dist/components/Calendar/Calendar.js +9 -3
  313. package/dist/components/Calendar/Calendar.js.map +1 -1
  314. package/dist/components/CalendarDay/CalendarDay.d.ts +4 -2
  315. package/dist/components/CalendarDay/CalendarDay.js +8 -3
  316. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  317. package/dist/components/CalendarDays/CalendarDays.d.ts +3 -1
  318. package/dist/components/CalendarDays/CalendarDays.js +4 -3
  319. package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
  320. package/dist/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  321. package/dist/components/CalendarHeader/CalendarHeader.js +7 -4
  322. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  323. package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
  324. package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
  325. package/dist/components/Card/Card.js.map +1 -1
  326. package/dist/components/CardGrid/CardGrid.js.map +1 -1
  327. package/dist/components/CardScroll/CardScroll.js.map +1 -1
  328. package/dist/components/Cell/Cell.js.map +1 -1
  329. package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  330. package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -1
  331. package/dist/components/Cell/useDraggable.js.map +1 -1
  332. package/dist/components/CellButton/CellButton.js.map +1 -1
  333. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  334. package/dist/components/Chip/Chip.js.map +1 -1
  335. package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
  336. package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  337. package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -0
  338. package/dist/components/ChipsSelect/ChipsSelect.js +6 -2
  339. package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
  340. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  341. package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  342. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  343. package/dist/components/Counter/Counter.js.map +1 -1
  344. package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
  345. package/dist/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  346. package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
  347. package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  348. package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  349. package/dist/components/DateInput/DateInput.js.map +1 -1
  350. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  351. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  352. package/dist/components/Div/Div.js.map +1 -1
  353. package/dist/components/Dropdown/Dropdown.js.map +1 -1
  354. package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
  355. package/dist/components/Epic/Epic.js.map +1 -1
  356. package/dist/components/Epic/ScrollSaver.js.map +1 -1
  357. package/dist/components/File/File.js.map +1 -1
  358. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  359. package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
  360. package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
  361. package/dist/components/Footer/Footer.js.map +1 -1
  362. package/dist/components/FormField/FormField.js.map +1 -1
  363. package/dist/components/FormItem/FormItem.js.map +1 -1
  364. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  365. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  366. package/dist/components/FormStatus/FormStatus.js.map +1 -1
  367. package/dist/components/Gallery/Gallery.js +2 -0
  368. package/dist/components/Gallery/Gallery.js.map +1 -1
  369. package/dist/components/Gradient/Gradient.js.map +1 -1
  370. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  371. package/dist/components/Group/Group.d.ts +5 -1
  372. package/dist/components/Group/Group.js +4 -2
  373. package/dist/components/Group/Group.js.map +1 -1
  374. package/dist/components/Header/Header.js.map +1 -1
  375. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  376. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  377. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  378. package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
  379. package/dist/components/IconButton/IconButton.js.map +1 -1
  380. package/dist/components/InfoRow/InfoRow.js.map +1 -1
  381. package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  382. package/dist/components/Input/Input.js.map +1 -1
  383. package/dist/components/InputLike/InputLike.js.map +1 -1
  384. package/dist/components/InputLike/InputLikeDivider.js.map +1 -1
  385. package/dist/components/Link/Link.js.map +1 -1
  386. package/dist/components/List/List.js.map +1 -1
  387. package/dist/components/List/ListContext.js.map +1 -1
  388. package/dist/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  389. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  390. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  391. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  392. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  393. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  394. package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  395. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  396. package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  397. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  398. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  399. package/dist/components/ModalRoot/constants.js.map +1 -1
  400. package/dist/components/ModalRoot/types.js.map +1 -1
  401. package/dist/components/ModalRoot/useModalManager.js.map +1 -1
  402. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  403. package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
  404. package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  405. package/dist/components/Pagination/Pagination.js.map +1 -1
  406. package/dist/components/Panel/Panel.js.map +1 -1
  407. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  408. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  409. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  410. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  411. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  412. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  413. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  414. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  415. package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
  416. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  417. package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
  418. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  419. package/dist/components/Popper/Popper.js.map +1 -1
  420. package/dist/components/PopperArrow/PopperArrow.js.map +1 -1
  421. package/dist/components/Progress/Progress.js.map +1 -1
  422. package/dist/components/PromoBanner/PromoBanner.js +1 -1
  423. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  424. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  425. package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  426. package/dist/components/Radio/Radio.js.map +1 -1
  427. package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
  428. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  429. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  430. package/dist/components/Removable/Removable.js.map +1 -1
  431. package/dist/components/RichCell/RichCell.js.map +1 -1
  432. package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
  433. package/dist/components/Root/Root.js.map +1 -1
  434. package/dist/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  435. package/dist/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  436. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  437. package/dist/components/Search/Search.js.map +1 -1
  438. package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
  439. package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  440. package/dist/components/Select/Select.js.map +1 -1
  441. package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
  442. package/dist/components/Separator/Separator.js.map +1 -1
  443. package/dist/components/SimpleCell/SimpleCell.d.ts +34 -1
  444. package/dist/components/SimpleCell/SimpleCell.js +29 -8
  445. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  446. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  447. package/dist/components/Slider/Slider.js.map +1 -1
  448. package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
  449. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  450. package/dist/components/Snackbar/Snackbar.js.map +1 -1
  451. package/dist/components/Spacing/Spacing.js.map +1 -1
  452. package/dist/components/Spinner/Spinner.js.map +1 -1
  453. package/dist/components/SplitCol/SplitCol.js.map +1 -1
  454. package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
  455. package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  456. package/dist/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  457. package/dist/components/SubnavigationButton/SubnavigationButton.js +15 -11
  458. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  459. package/dist/components/Switch/Switch.js.map +1 -1
  460. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  461. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  462. package/dist/components/Tabs/Tabs.js.map +1 -1
  463. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  464. package/dist/components/Tappable/Tappable.d.ts +2 -1
  465. package/dist/components/Tappable/Tappable.js.map +1 -1
  466. package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
  467. package/dist/components/Textarea/Textarea.js.map +1 -1
  468. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  469. package/dist/components/Tooltip/TooltipContainer.js.map +1 -1
  470. package/dist/components/Touch/Touch.js.map +1 -1
  471. package/dist/components/Touch/TouchContext.js.map +1 -1
  472. package/dist/components/Typography/Caption/Caption.js.map +1 -1
  473. package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
  474. package/dist/components/Typography/Headline/Headline.js.map +1 -1
  475. package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -1
  476. package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
  477. package/dist/components/Typography/Text/Text.js.map +1 -1
  478. package/dist/components/Typography/Title/Title.js.map +1 -1
  479. package/dist/components/UsersStack/UsersStack.d.ts +7 -1
  480. package/dist/components/UsersStack/UsersStack.js +5 -4
  481. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  482. package/dist/components/View/View.js.map +1 -1
  483. package/dist/components/View/ViewInfinite.js.map +1 -1
  484. package/dist/components/View/utils.js.map +1 -1
  485. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -3
  486. package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  487. package/dist/components/WriteBar/WriteBar.js.map +1 -1
  488. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  489. package/dist/components.css +36 -7
  490. package/dist/components.css.map +1 -1
  491. package/dist/cssm/appearance/constants.js.map +1 -1
  492. package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
  493. package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
  494. package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -1
  495. package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
  496. package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
  497. package/dist/cssm/components/ActionSheet/types.js.map +1 -1
  498. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  499. package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
  500. package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
  501. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  502. package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
  503. package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
  504. package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
  505. package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
  506. package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
  507. package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -1
  508. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  509. package/dist/cssm/components/Badge/Badge.js.map +1 -1
  510. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  511. package/dist/cssm/components/BaseGallery/BaseGallery.js +11 -10
  512. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -1
  513. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -1
  514. package/dist/cssm/components/BaseGallery/types.js.map +1 -1
  515. package/dist/cssm/components/Button/Button.js.map +1 -1
  516. package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
  517. package/dist/cssm/components/Calendar/Calendar.d.ts +3 -2
  518. package/dist/cssm/components/Calendar/Calendar.js +9 -3
  519. package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
  520. package/dist/cssm/components/CalendarDay/CalendarDay.d.ts +4 -2
  521. package/dist/cssm/components/CalendarDay/CalendarDay.js +8 -3
  522. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  523. package/dist/cssm/components/CalendarDays/CalendarDays.d.ts +3 -1
  524. package/dist/cssm/components/CalendarDays/CalendarDays.js +4 -3
  525. package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
  526. package/dist/cssm/components/CalendarHeader/CalendarHeader.d.ts +6 -1
  527. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +7 -4
  528. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  529. package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
  530. package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
  531. package/dist/cssm/components/Card/Card.js.map +1 -1
  532. package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
  533. package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
  534. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  535. package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
  536. package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -1
  537. package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
  538. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  539. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  540. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  541. package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
  542. package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
  543. package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +2 -0
  544. package/dist/cssm/components/ChipsSelect/ChipsSelect.js +6 -2
  545. package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
  546. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  547. package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
  548. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  549. package/dist/cssm/components/Counter/Counter.css +3 -1
  550. package/dist/cssm/components/Counter/Counter.js.map +1 -1
  551. package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
  552. package/dist/cssm/components/CustomScrollView/useTrackerVisibility.js.map +1 -1
  553. package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
  554. package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
  555. package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
  556. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  557. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  558. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  559. package/dist/cssm/components/Div/Div.js.map +1 -1
  560. package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
  561. package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
  562. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  563. package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
  564. package/dist/cssm/components/File/File.js.map +1 -1
  565. package/dist/cssm/components/FixedLayout/FixedLayout.css +7 -1
  566. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  567. package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
  568. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  569. package/dist/cssm/components/Footer/Footer.js.map +1 -1
  570. package/dist/cssm/components/FormField/FormField.js.map +1 -1
  571. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  572. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  573. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  574. package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
  575. package/dist/cssm/components/Gallery/Gallery.js +2 -0
  576. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  577. package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
  578. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  579. package/dist/cssm/components/Group/Group.css +1 -1
  580. package/dist/cssm/components/Group/Group.d.ts +5 -1
  581. package/dist/cssm/components/Group/Group.js +4 -2
  582. package/dist/cssm/components/Group/Group.js.map +1 -1
  583. package/dist/cssm/components/Header/Header.css +1 -1
  584. package/dist/cssm/components/Header/Header.js.map +1 -1
  585. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  586. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  587. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  588. package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
  589. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  590. package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
  591. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  592. package/dist/cssm/components/Input/Input.js.map +1 -1
  593. package/dist/cssm/components/InputLike/InputLike.js.map +1 -1
  594. package/dist/cssm/components/InputLike/InputLikeDivider.js.map +1 -1
  595. package/dist/cssm/components/Link/Link.js.map +1 -1
  596. package/dist/cssm/components/List/List.js.map +1 -1
  597. package/dist/cssm/components/List/ListContext.js.map +1 -1
  598. package/dist/cssm/components/LocaleProviderContext/LocaleProviderContext.js.map +1 -1
  599. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  600. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  601. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  602. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  603. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  604. package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
  605. package/dist/cssm/components/ModalRoot/ModalRoot.css +4 -1
  606. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  607. package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
  608. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  609. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  610. package/dist/cssm/components/ModalRoot/constants.js.map +1 -1
  611. package/dist/cssm/components/ModalRoot/types.js.map +1 -1
  612. package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
  613. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  614. package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
  615. package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
  616. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  617. package/dist/cssm/components/Panel/Panel.js.map +1 -1
  618. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  619. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  620. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  621. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  622. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  623. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  624. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  625. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  626. package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
  627. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  628. package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
  629. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  630. package/dist/cssm/components/Popper/Popper.js.map +1 -1
  631. package/dist/cssm/components/PopperArrow/PopperArrow.js.map +1 -1
  632. package/dist/cssm/components/Progress/Progress.js.map +1 -1
  633. package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -1
  634. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  635. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  636. package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
  637. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  638. package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
  639. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  640. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  641. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  642. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  643. package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
  644. package/dist/cssm/components/Root/Root.js.map +1 -1
  645. package/dist/cssm/components/ScreenSpinner/Icon48CancelCircle.js.map +1 -1
  646. package/dist/cssm/components/ScreenSpinner/Icon48DoneOutline.js.map +1 -1
  647. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  648. package/dist/cssm/components/Search/Search.js.map +1 -1
  649. package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
  650. package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
  651. package/dist/cssm/components/Select/Select.js.map +1 -1
  652. package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
  653. package/dist/cssm/components/Separator/Separator.js.map +1 -1
  654. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  655. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +34 -1
  656. package/dist/cssm/components/SimpleCell/SimpleCell.js +29 -8
  657. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  658. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  659. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  660. package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
  661. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  662. package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
  663. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  664. package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
  665. package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
  666. package/dist/cssm/components/SplitLayout/SplitLayout.css +7 -1
  667. package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
  668. package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
  669. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +9 -1
  670. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.d.ts +3 -2
  671. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +15 -11
  672. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  673. package/dist/cssm/components/Switch/Switch.js.map +1 -1
  674. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  675. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  676. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  677. package/dist/cssm/components/TabsItem/TabsItem.css +5 -1
  678. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  679. package/dist/cssm/components/Tappable/Tappable.d.ts +2 -1
  680. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  681. package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
  682. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  683. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  684. package/dist/cssm/components/Tooltip/TooltipContainer.js.map +1 -1
  685. package/dist/cssm/components/Touch/Touch.js.map +1 -1
  686. package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
  687. package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
  688. package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
  689. package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
  690. package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
  691. package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
  692. package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
  693. package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
  694. package/dist/cssm/components/UsersStack/UsersStack.d.ts +7 -1
  695. package/dist/cssm/components/UsersStack/UsersStack.js +5 -4
  696. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  697. package/dist/cssm/components/View/View.js.map +1 -1
  698. package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
  699. package/dist/cssm/components/View/utils.js.map +1 -1
  700. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js +1 -3
  701. package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
  702. package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
  703. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  704. package/dist/cssm/helpers/avatar.js.map +1 -1
  705. package/dist/cssm/helpers/getClassName.js.map +1 -1
  706. package/dist/cssm/helpers/getScheme.js.map +1 -1
  707. package/dist/cssm/helpers/math.js.map +1 -1
  708. package/dist/cssm/helpers/scheme.js.map +1 -1
  709. package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
  710. package/dist/cssm/hoc/withContext.js.map +1 -1
  711. package/dist/cssm/hoc/withInsets.js.map +1 -1
  712. package/dist/cssm/hoc/withPlatform.js.map +1 -1
  713. package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
  714. package/dist/cssm/hooks/useAppearance.js.map +1 -1
  715. package/dist/cssm/hooks/useBooleanState.js.map +1 -1
  716. package/dist/cssm/hooks/useBridgeAdaptivity.js.map +1 -1
  717. package/dist/cssm/hooks/useBrowserInfo.js.map +1 -1
  718. package/dist/cssm/hooks/useCalendar.js.map +1 -1
  719. package/dist/cssm/hooks/useChipsInput.js.map +1 -1
  720. package/dist/cssm/hooks/useChipsSelect.js.map +1 -1
  721. package/dist/cssm/hooks/useDateInput.js.map +1 -1
  722. package/dist/cssm/hooks/useEffectDev.js.map +1 -1
  723. package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
  724. package/dist/cssm/hooks/useEventListener.js.map +1 -1
  725. package/dist/cssm/hooks/useExternRef.js.map +1 -1
  726. package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
  727. package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
  728. package/dist/cssm/hooks/useInsets.js.map +1 -1
  729. package/dist/cssm/hooks/useKeyboard.js.map +1 -1
  730. package/dist/cssm/hooks/useKeyboardInputTracker.js.map +1 -1
  731. package/dist/cssm/hooks/useObjectMemo.js.map +1 -1
  732. package/dist/cssm/hooks/useOrientationChange.js.map +1 -1
  733. package/dist/cssm/hooks/usePagination.js.map +1 -1
  734. package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
  735. package/dist/cssm/hooks/usePlatform.js.map +1 -1
  736. package/dist/cssm/hooks/usePrevious.js.map +1 -1
  737. package/dist/cssm/hooks/useTimeout.js.map +1 -1
  738. package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
  739. package/dist/cssm/index.d.ts +2 -0
  740. package/dist/cssm/index.js +1 -0
  741. package/dist/cssm/index.js.map +1 -1
  742. package/dist/cssm/lib/SSR.js.map +1 -1
  743. package/dist/cssm/lib/accessibility.js.map +1 -1
  744. package/dist/cssm/lib/animate.js.map +1 -1
  745. package/dist/cssm/lib/browser.js.map +1 -1
  746. package/dist/cssm/lib/calendar.js.map +1 -1
  747. package/dist/cssm/lib/callMultiple.js.map +1 -1
  748. package/dist/cssm/lib/classNames.js.map +1 -1
  749. package/dist/cssm/lib/classScopingMode.js.map +1 -1
  750. package/dist/cssm/lib/date.js.map +1 -1
  751. package/dist/cssm/lib/dom.js.map +1 -1
  752. package/dist/cssm/lib/fx.js.map +1 -1
  753. package/dist/cssm/lib/getNavId.js.map +1 -1
  754. package/dist/cssm/lib/is.js.map +1 -1
  755. package/dist/cssm/lib/isRefObject.js.map +1 -1
  756. package/dist/cssm/lib/jsxRuntime.d.js.map +1 -1
  757. package/dist/cssm/lib/jsxRuntime.js.map +1 -1
  758. package/dist/cssm/lib/offset.js.map +1 -1
  759. package/dist/cssm/lib/platform.js.map +1 -1
  760. package/dist/cssm/lib/polyfills.js.map +1 -1
  761. package/dist/cssm/lib/prefixClass.js.map +1 -1
  762. package/dist/cssm/lib/removeObjectKeys.js.map +1 -1
  763. package/dist/cssm/lib/select.js.map +1 -1
  764. package/dist/cssm/lib/styles.js.map +1 -1
  765. package/dist/cssm/lib/supportEvents.js.map +1 -1
  766. package/dist/cssm/lib/taptic.js.map +1 -1
  767. package/dist/cssm/lib/testing.js.map +1 -1
  768. package/dist/cssm/lib/touch.js.map +1 -1
  769. package/dist/cssm/lib/useIsomorphicLayoutEffect.js.map +1 -1
  770. package/dist/cssm/lib/utils.js.map +1 -1
  771. package/dist/cssm/lib/warnOnce.js.map +1 -1
  772. package/dist/cssm/styles/components.css +36 -7
  773. package/dist/cssm/styles/themes.css +1 -1
  774. package/dist/cssm/tokenized/index.d.ts +2 -0
  775. package/dist/cssm/tokenized/index.js +1 -0
  776. package/dist/cssm/tokenized/index.js.map +1 -1
  777. package/dist/cssm/types.js.map +1 -1
  778. package/dist/cssm/unstable/index.js.map +1 -1
  779. package/dist/helpers/avatar.js.map +1 -1
  780. package/dist/helpers/getClassName.js.map +1 -1
  781. package/dist/helpers/getScheme.js.map +1 -1
  782. package/dist/helpers/math.js.map +1 -1
  783. package/dist/helpers/scheme.js.map +1 -1
  784. package/dist/hoc/withAdaptivity.js.map +1 -1
  785. package/dist/hoc/withContext.js.map +1 -1
  786. package/dist/hoc/withInsets.js.map +1 -1
  787. package/dist/hoc/withPlatform.js.map +1 -1
  788. package/dist/hooks/useAdaptivity.js.map +1 -1
  789. package/dist/hooks/useAppearance.js.map +1 -1
  790. package/dist/hooks/useBooleanState.js.map +1 -1
  791. package/dist/hooks/useBridgeAdaptivity.js.map +1 -1
  792. package/dist/hooks/useBrowserInfo.js.map +1 -1
  793. package/dist/hooks/useCalendar.js.map +1 -1
  794. package/dist/hooks/useChipsInput.js.map +1 -1
  795. package/dist/hooks/useChipsSelect.js.map +1 -1
  796. package/dist/hooks/useDateInput.js.map +1 -1
  797. package/dist/hooks/useEffectDev.js.map +1 -1
  798. package/dist/hooks/useEnsuredControl.js.map +1 -1
  799. package/dist/hooks/useEventListener.js.map +1 -1
  800. package/dist/hooks/useExternRef.js.map +1 -1
  801. package/dist/hooks/useFocusVisible.js.map +1 -1
  802. package/dist/hooks/useGlobalEventListener.js.map +1 -1
  803. package/dist/hooks/useInsets.js.map +1 -1
  804. package/dist/hooks/useKeyboard.js.map +1 -1
  805. package/dist/hooks/useKeyboardInputTracker.js.map +1 -1
  806. package/dist/hooks/useObjectMemo.js.map +1 -1
  807. package/dist/hooks/useOrientationChange.js.map +1 -1
  808. package/dist/hooks/usePagination.js.map +1 -1
  809. package/dist/hooks/usePatchChildrenRef.js.map +1 -1
  810. package/dist/hooks/usePlatform.js.map +1 -1
  811. package/dist/hooks/usePrevious.js.map +1 -1
  812. package/dist/hooks/useTimeout.js.map +1 -1
  813. package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
  814. package/dist/index.d.ts +2 -0
  815. package/dist/index.js +1 -0
  816. package/dist/index.js.map +1 -1
  817. package/dist/lib/SSR.js.map +1 -1
  818. package/dist/lib/accessibility.js.map +1 -1
  819. package/dist/lib/animate.js.map +1 -1
  820. package/dist/lib/browser.js.map +1 -1
  821. package/dist/lib/calendar.js.map +1 -1
  822. package/dist/lib/callMultiple.js.map +1 -1
  823. package/dist/lib/classNames.js.map +1 -1
  824. package/dist/lib/classScopingMode.js.map +1 -1
  825. package/dist/lib/date.js.map +1 -1
  826. package/dist/lib/dom.js.map +1 -1
  827. package/dist/lib/fx.js.map +1 -1
  828. package/dist/lib/getNavId.js.map +1 -1
  829. package/dist/lib/is.js.map +1 -1
  830. package/dist/lib/isRefObject.js.map +1 -1
  831. package/dist/lib/jsxRuntime.d.js.map +1 -1
  832. package/dist/lib/jsxRuntime.js.map +1 -1
  833. package/dist/lib/offset.js.map +1 -1
  834. package/dist/lib/platform.js.map +1 -1
  835. package/dist/lib/polyfills.js.map +1 -1
  836. package/dist/lib/prefixClass.js.map +1 -1
  837. package/dist/lib/removeObjectKeys.js.map +1 -1
  838. package/dist/lib/select.js.map +1 -1
  839. package/dist/lib/styles.js.map +1 -1
  840. package/dist/lib/supportEvents.js.map +1 -1
  841. package/dist/lib/taptic.js.map +1 -1
  842. package/dist/lib/testing.js.map +1 -1
  843. package/dist/lib/touch.js.map +1 -1
  844. package/dist/lib/useIsomorphicLayoutEffect.js.map +1 -1
  845. package/dist/lib/utils.js.map +1 -1
  846. package/dist/lib/warnOnce.js.map +1 -1
  847. package/dist/tokenized/index.d.ts +2 -0
  848. package/dist/tokenized/index.js +1 -0
  849. package/dist/tokenized/index.js.map +1 -1
  850. package/dist/types.js.map +1 -1
  851. package/dist/unstable/index.js.map +1 -1
  852. package/dist/vkui.css +37 -8
  853. package/dist/vkui.css.map +1 -1
  854. package/package.json +16 -17
  855. package/src/components/Avatar/Readme.md +8 -8
  856. package/src/components/BaseGallery/BaseGallery.tsx +9 -5
  857. package/src/components/Calendar/Calendar.tsx +10 -1
  858. package/src/components/CalendarDay/CalendarDay.tsx +9 -2
  859. package/src/components/CalendarDays/CalendarDays.tsx +7 -1
  860. package/src/components/CalendarHeader/CalendarHeader.tsx +9 -1
  861. package/src/components/ChipsSelect/ChipsSelect.tsx +6 -0
  862. package/src/components/Counter/Counter.css +13 -0
  863. package/src/components/FixedLayout/FixedLayout.css +19 -3
  864. package/src/components/Gallery/Gallery.tsx +1 -0
  865. package/src/components/Gradient/Readme.md +1 -1
  866. package/src/components/Group/Group.css +11 -2
  867. package/src/components/Group/Group.tsx +7 -1
  868. package/src/components/Group/Readme.md +2 -2
  869. package/src/components/Header/Header.css +3 -4
  870. package/src/components/ModalRoot/ModalRoot.css +14 -2
  871. package/src/components/Panel/Panel.css +2 -0
  872. package/src/components/PanelHeaderContent/Readme.md +5 -1
  873. package/src/components/PromoBanner/PromoBanner.tsx +1 -1
  874. package/src/components/SimpleCell/Readme.md +3 -3
  875. package/src/components/SimpleCell/SimpleCell.css +6 -1
  876. package/src/components/SimpleCell/SimpleCell.tsx +71 -8
  877. package/src/components/SplitLayout/SplitLayout.css +8 -2
  878. package/src/components/SubnavigationButton/Readme.md +133 -116
  879. package/src/components/SubnavigationButton/SubnavigationButton.css +86 -53
  880. package/src/components/SubnavigationButton/SubnavigationButton.tsx +22 -15
  881. package/src/components/TabsItem/TabsItem.css +8 -2
  882. package/src/components/Tappable/Tappable.tsx +13 -11
  883. package/src/components/Tooltip/Readme.md +7 -7
  884. package/src/components/UsersStack/UsersStack.tsx +9 -3
  885. package/src/components/VisuallyHiddenInput/VisuallyHiddenInput.tsx +1 -6
  886. package/src/index.ts +2 -0
  887. package/src/testing/utils.tsx +1 -1
  888. package/src/tokenized/index.ts +3 -0
@@ -59,7 +59,7 @@ var SHIFT_DEFAULT_STATE = {
59
59
  };
60
60
 
61
61
  var BaseGallery = function BaseGallery(_ref) {
62
- var _layoutState$current$8;
62
+ var _layoutState$current$9;
63
63
 
64
64
  var _ref$bullets = _ref.bullets,
65
65
  bullets = _ref$bullets === void 0 ? false : _ref$bullets,
@@ -167,7 +167,7 @@ var BaseGallery = function BaseGallery(_ref) {
167
167
  };
168
168
 
169
169
  var initializeSlides = function initializeSlides() {
170
- var _React$Children$map, _rootRef$current$offs, _rootRef$current, _viewportRef$current$, _viewportRef$current;
170
+ var _React$Children$map, _rootRef$current$offs, _rootRef$current, _viewportRef$current$, _viewportRef$current, _layoutState$current$7, _localSlides$slideInd;
171
171
 
172
172
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
173
173
  var localSlides = (_React$Children$map = React.Children.map(children, function (_item, i) {
@@ -180,24 +180,25 @@ var BaseGallery = function BaseGallery(_ref) {
180
180
  };
181
181
  })) !== null && _React$Children$map !== void 0 ? _React$Children$map : [];
182
182
  var localContainerWidth = (_rootRef$current$offs = (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.offsetWidth) !== null && _rootRef$current$offs !== void 0 ? _rootRef$current$offs : 0;
183
- var localviewportOffsetWidth = (_viewportRef$current$ = (_viewportRef$current = viewportRef.current) === null || _viewportRef$current === void 0 ? void 0 : _viewportRef$current.offsetWidth) !== null && _viewportRef$current$ !== void 0 ? _viewportRef$current$ : 0;
183
+ var localViewportOffsetWidth = (_viewportRef$current$ = (_viewportRef$current = viewportRef.current) === null || _viewportRef$current === void 0 ? void 0 : _viewportRef$current.offsetWidth) !== null && _viewportRef$current$ !== void 0 ? _viewportRef$current$ : 0;
184
184
  var localLayerWidth = localSlides.reduce(function (val, slide) {
185
185
  return slide.width + val;
186
186
  }, 0);
187
+ var adjustShiftX = localSlides.length <= layoutState.current.slides.length || ((_layoutState$current$7 = layoutState.current.slides[slideIndex]) === null || _layoutState$current$7 === void 0 ? void 0 : _layoutState$current$7.coordX) !== ((_localSlides$slideInd = localSlides[slideIndex]) === null || _localSlides$slideInd === void 0 ? void 0 : _localSlides$slideInd.coordX);
187
188
  layoutState.current = {
188
189
  containerWidth: localContainerWidth,
189
- viewportOffsetWidth: localviewportOffsetWidth,
190
+ viewportOffsetWidth: localViewportOffsetWidth,
190
191
  layerWidth: localLayerWidth,
191
192
  max: (0, _helpers.calcMax)({
192
193
  slides: localSlides,
193
- viewportOffsetWidth: localviewportOffsetWidth,
194
+ viewportOffsetWidth: localViewportOffsetWidth,
194
195
  isCenterWithCustomWidth: isCenterWithCustomWidth
195
196
  }),
196
197
  min: (0, _helpers.calcMin)({
197
198
  containerWidth: localContainerWidth,
198
199
  layerWidth: localLayerWidth,
199
200
  slides: localSlides,
200
- viewportOffsetWidth: localviewportOffsetWidth,
201
+ viewportOffsetWidth: localViewportOffsetWidth,
201
202
  isCenterWithCustomWidth: isCenterWithCustomWidth,
202
203
  align: align
203
204
  }),
@@ -208,7 +209,7 @@ var BaseGallery = function BaseGallery(_ref) {
208
209
  var _options$animation;
209
210
 
210
211
  return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
211
- shiftX: calculateIndent(slideIndex),
212
+ shiftX: adjustShiftX ? calculateIndent(slideIndex) : prevState.shiftX,
212
213
  animation: (_options$animation = options.animation) !== null && _options$animation !== void 0 ? _options$animation : prevState.shiftX === validateIndent(prevState.shiftX)
213
214
  });
214
215
  });
@@ -255,10 +256,10 @@ var BaseGallery = function BaseGallery(_ref) {
255
256
 
256
257
 
257
258
  var getTarget = function getTarget(e) {
258
- var _layoutState$current$7;
259
+ var _layoutState$current$8;
259
260
 
260
261
  var expectDeltaX = shiftState.deltaX / e.duration * 240 * 0.6;
261
- var shift = shiftState.shiftX + shiftState.deltaX + expectDeltaX - ((_layoutState$current$7 = layoutState.current.max) !== null && _layoutState$current$7 !== void 0 ? _layoutState$current$7 : 0);
262
+ var shift = shiftState.shiftX + shiftState.deltaX + expectDeltaX - ((_layoutState$current$8 = layoutState.current.max) !== null && _layoutState$current$8 !== void 0 ? _layoutState$current$8 : 0);
262
263
  var direction = shiftState.deltaX < 0 ? 1 : -1; // Находим ближайшую границу слайда к текущему отступу
263
264
 
264
265
  var targetIndex = layoutState.current.slides.reduce(function (val, item, index) {
@@ -352,7 +353,7 @@ var BaseGallery = function BaseGallery(_ref) {
352
353
 
353
354
  var canSlideLeft = !layoutState.current.isFullyVisible && shiftState.shiftX < 0;
354
355
  var canSlideRight = !layoutState.current.isFullyVisible && ( // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side
355
- align === "left" && layoutState.current.containerWidth - shiftState.shiftX < ((_layoutState$current$8 = layoutState.current.layerWidth) !== null && _layoutState$current$8 !== void 0 ? _layoutState$current$8 : 0) || // otherwise we need to check current slide index (align = right or align = center)
356
+ align === "left" && layoutState.current.containerWidth - shiftState.shiftX < ((_layoutState$current$9 = layoutState.current.layerWidth) !== null && _layoutState$current$9 !== void 0 ? _layoutState$current$9 : 0) || // otherwise we need to check current slide index (align = right or align = center)
356
357
  align !== "left" && slideIndex < layoutState.current.slides.length - 1);
357
358
  return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
358
359
  vkuiClass: (0, _classNames.classNames)("Gallery", "Gallery--".concat(align), shiftState.dragging && "Gallery--dragging", slideWidth === "custom" && "Gallery--custom-width"),
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"names":["ANIMATION_DURATION","LAYOUT_DEFAULT_STATE","containerWidth","viewportOffsetWidth","layerWidth","min","max","slides","isFullyVisible","SHIFT_DEFAULT_STATE","animation","undefined","shiftX","dragging","deltaX","indent","BaseGallery","bullets","getRootRef","children","slideWidth","slideIndex","isDraggable","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","onEndProp","onEnd","align","showArrows","getRef","restProps","slidesStore","React","useRef","layoutState","useState","shiftState","setShiftState","rootRef","viewportRef","window","hasMouse","isCenterWithCustomWidth","validateIndent","value","localMax","current","localMin","calculateIndent","targetIndex","targetSlide","length","coordX","width","viewportWidth","calculateDragIndent","Number","initializeSlides","options","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","localContainerWidth","localviewportOffsetWidth","localLayerWidth","reduce","val","slide","prevState","onResize","slideLeft","slideRight","getTarget","e","expectDeltaX","duration","shift","direction","item","index","previousValue","Math","abs","currentValue","onStart","onMoveX","originalEvent","preventDefault","isSlideX","isSlide","nextShiftState","shiftXStick","layerStyle","WebkitTransform","transform","WebkitTransition","transition","setSlideRef","slideRef","canSlideLeft","canSlideRight","el"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HorizontalScrollArrow } from \"../HorizontalScroll/HorizontalScrollArrow\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { calcMax, calcMin } from \"./helpers\";\nimport {\n BaseGalleryProps,\n GallerySlidesState,\n LayoutState,\n ShiftingState,\n} from \"./types\";\nimport \"./BaseGallery.css\";\n\nconst ANIMATION_DURATION = 0.24;\n\nconst LAYOUT_DEFAULT_STATE = {\n containerWidth: 0,\n viewportOffsetWidth: 0,\n layerWidth: 0,\n min: 0,\n max: 0,\n slides: [],\n isFullyVisible: true,\n};\n\nconst SHIFT_DEFAULT_STATE = {\n animation: undefined,\n shiftX: 0,\n dragging: false,\n deltaX: 0,\n indent: 0,\n};\n\nexport const BaseGallery = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = \"100%\",\n slideIndex = 0,\n isDraggable = true,\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n onEnd: onEndProp,\n align = \"left\",\n showArrows,\n getRef,\n ...restProps\n}: BaseGalleryProps) => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const layoutState = React.useRef<LayoutState>(LAYOUT_DEFAULT_STATE);\n const [shiftState, setShiftState] =\n React.useState<ShiftingState>(SHIFT_DEFAULT_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n\n const { window } = useDOM();\n const { hasMouse } = useAdaptivity();\n\n const isCenterWithCustomWidth = slideWidth === \"custom\" && align === \"center\";\n\n const validateIndent = (value: number) => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n\n if (value < localMin) {\n return localMin;\n } else if (value > localMax) {\n return localMax;\n }\n\n return value;\n };\n\n /*\n * Считает отступ слоя галереи\n */\n const calculateIndent = (targetIndex: number) => {\n if (layoutState.current.isFullyVisible) {\n return 0;\n }\n\n const targetSlide = layoutState.current.slides?.length\n ? layoutState.current.slides[targetIndex]\n : null;\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenterWithCustomWidth) {\n const viewportWidth = layoutState.current.viewportOffsetWidth ?? 0;\n return viewportWidth / 2 - coordX - width / 2;\n }\n\n return validateIndent(-1 * coordX);\n }\n\n return 0;\n };\n\n /*\n * Считает отступ слоя галереи во время драга\n */\n const calculateDragIndent = () => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n const indent = shiftState.shiftX + shiftState.deltaX;\n\n if (indent > localMax) {\n return localMax + Number((indent - localMax) / 3);\n } else if (indent < localMin) {\n return localMin + Number((indent - localMin) / 3);\n }\n\n return indent;\n };\n\n const initializeSlides = (options: { animation?: boolean } = {}) => {\n const localSlides =\n React.Children.map(\n children,\n (_item: React.ReactNode, i: number): GallerySlidesState => {\n const elem = slidesStore.current[`slide-${i}`];\n return {\n coordX: elem?.offsetLeft ?? 0,\n width: elem?.offsetWidth ?? 0,\n };\n }\n ) ?? [];\n\n const localContainerWidth = rootRef.current?.offsetWidth ?? 0;\n const localviewportOffsetWidth = viewportRef.current?.offsetWidth ?? 0;\n const localLayerWidth = localSlides.reduce(\n (val: number, slide: GallerySlidesState) => slide.width + val,\n 0\n );\n\n layoutState.current = {\n containerWidth: localContainerWidth,\n viewportOffsetWidth: localviewportOffsetWidth,\n layerWidth: localLayerWidth,\n max: calcMax({\n slides: localSlides,\n viewportOffsetWidth: localviewportOffsetWidth,\n isCenterWithCustomWidth,\n }),\n min: calcMin({\n containerWidth: localContainerWidth,\n layerWidth: localLayerWidth,\n slides: localSlides,\n viewportOffsetWidth: localviewportOffsetWidth,\n isCenterWithCustomWidth,\n align,\n }),\n slides: localSlides,\n isFullyVisible: localLayerWidth <= localContainerWidth,\n };\n\n setShiftState((prevState) => ({\n ...prevState,\n shiftX: calculateIndent(slideIndex),\n animation:\n options.animation ??\n prevState.shiftX === validateIndent(prevState.shiftX),\n }));\n };\n\n const onResize = () => {\n if (shiftState.animation !== undefined) {\n initializeSlides({ animation: false });\n }\n };\n\n useGlobalEventListener(window, \"resize\", onResize);\n\n useIsomorphicLayoutEffect(() => {\n initializeSlides({ animation: false });\n }, [children, align, slideWidth]);\n\n useIsomorphicLayoutEffect(() => {\n if (shiftState.animation !== undefined) {\n setShiftState((prevState) => ({\n ...prevState,\n animation: true,\n deltaX: 0,\n shiftX: calculateIndent(slideIndex ?? 0),\n }));\n }\n }, [slideIndex]);\n\n const slideLeft = () => {\n onChange?.(slideIndex - 1);\n onPrevClick?.();\n };\n\n const slideRight = () => {\n onChange?.(slideIndex + 1);\n onNextClick?.();\n };\n\n /*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\n const getTarget = (e: TouchEvent) => {\n const expectDeltaX = (shiftState.deltaX / e.duration) * 240 * 0.6;\n const shift =\n shiftState.shiftX +\n shiftState.deltaX +\n expectDeltaX -\n (layoutState.current.max ?? 0);\n const direction = shiftState.deltaX < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = layoutState.current.slides.reduce(\n (val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(\n layoutState.current.slides[val].coordX + shift\n );\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n },\n slideIndex\n );\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {\n if (\n Math.abs(shiftState.deltaX) >\n layoutState.current.slides[targetSlide].width * 0.05\n ) {\n targetIndex = targetSlide;\n }\n }\n }\n\n return targetIndex;\n };\n\n const onStart = () => {\n setShiftState((prevState) => ({ ...prevState, animation: false }));\n };\n\n const onMoveX = (e: TouchEvent) => {\n if (isDraggable && !layoutState.current.isFullyVisible) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n // TODO исправить в рамках issue #2698\n onDragStart?.(e);\n\n if (shiftState.deltaX !== e.shiftX) {\n setShiftState((prevState) => ({\n ...prevState,\n deltaX: e.shiftX,\n dragging: e.isSlideX,\n }));\n }\n }\n }\n };\n\n const onEnd = (e: TouchEvent) => {\n const targetIndex = e.isSlide ? getTarget(e) : slideIndex ?? 0;\n onDragEnd?.(e);\n\n const nextShiftState: Partial<ShiftingState> = {\n animation: true,\n dragging: false,\n deltaX: 0,\n };\n\n const shiftXStick = calculateDragIndent();\n if (targetIndex !== slideIndex) {\n // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)\n nextShiftState.shiftX = shiftXStick;\n }\n\n setShiftState((prevState) => ({ ...prevState, ...nextShiftState }));\n if (targetIndex !== slideIndex) {\n onChange?.(targetIndex);\n }\n\n // TODO исправить в рамках issue #2698\n onEndProp?.({ targetIndex });\n };\n\n const indent = shiftState.dragging\n ? calculateDragIndent()\n : shiftState.shiftX;\n\n const layerStyle = {\n WebkitTransform: `translateX(${indent}px)`,\n transform: `translateX(${indent}px)`,\n WebkitTransition: shiftState.animation\n ? `-webkit-transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n transition: shiftState.animation\n ? `transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[`slide-${slideIndex}`] = slideRef;\n };\n\n // shiftX is negative number <= 0, we can swipe back only if it is < 0\n const canSlideLeft =\n !layoutState.current.isFullyVisible && shiftState.shiftX < 0;\n\n const canSlideRight =\n !layoutState.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === \"left\" &&\n layoutState.current.containerWidth - shiftState.shiftX <\n (layoutState.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== \"left\" && slideIndex < layoutState.current.slides.length - 1));\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n \"Gallery\",\n `Gallery--${align}`,\n shiftState.dragging && \"Gallery--dragging\",\n slideWidth === \"custom\" && \"Gallery--custom-width\"\n )}\n ref={rootRef}\n >\n <Touch\n vkuiClass=\"Gallery__viewport\"\n onStartX={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n style={{ width: slideWidth === \"custom\" ? \"100%\" : slideWidth }}\n getRootRef={viewportRef}\n noSlideClick\n >\n <div vkuiClass=\"Gallery__layer\" style={layerStyle}>\n {React.Children.map(children, (item: React.ReactNode, i: number) => (\n <div\n vkuiClass=\"Gallery__slide\"\n key={`slide-${i}`}\n ref={(el) => setSlideRef(el, i)}\n >\n {item}\n </div>\n ))}\n </div>\n </Touch>\n\n {bullets && (\n <div\n aria-hidden=\"true\"\n vkuiClass={classNames(\n \"Gallery__bullets\",\n `Gallery__bullets--${bullets}`\n )}\n >\n {React.Children.map(\n children,\n (_item: React.ReactNode, index: number) => (\n <div\n vkuiClass={classNames(\n \"Gallery__bullet\",\n index === slideIndex && \"Gallery__bullet--active\"\n )}\n key={index}\n />\n )\n )}\n </div>\n )}\n\n {showArrows && hasMouse && canSlideLeft && (\n <HorizontalScrollArrow direction=\"left\" onClick={slideLeft} />\n )}\n {showArrows && hasMouse && canSlideRight && (\n <HorizontalScrollArrow direction=\"right\" onClick={slideRight} />\n )}\n </div>\n );\n};\n"],"file":"BaseGallery.js"}
1
+ {"version":3,"file":"BaseGallery.js","names":["ANIMATION_DURATION","LAYOUT_DEFAULT_STATE","containerWidth","viewportOffsetWidth","layerWidth","min","max","slides","isFullyVisible","SHIFT_DEFAULT_STATE","animation","undefined","shiftX","dragging","deltaX","indent","BaseGallery","bullets","getRootRef","children","slideWidth","slideIndex","isDraggable","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","onEndProp","onEnd","align","showArrows","getRef","restProps","slidesStore","React","useRef","layoutState","useState","shiftState","setShiftState","rootRef","useExternRef","viewportRef","useDOM","window","useAdaptivity","hasMouse","isCenterWithCustomWidth","validateIndent","value","localMax","current","localMin","calculateIndent","targetIndex","targetSlide","length","coordX","width","viewportWidth","calculateDragIndent","Number","initializeSlides","options","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","localContainerWidth","localViewportOffsetWidth","localLayerWidth","reduce","val","slide","adjustShiftX","calcMax","calcMin","prevState","onResize","useGlobalEventListener","useIsomorphicLayoutEffect","slideLeft","slideRight","getTarget","e","expectDeltaX","duration","shift","direction","item","index","previousValue","Math","abs","currentValue","onStart","onMoveX","originalEvent","preventDefault","isSlideX","isSlide","nextShiftState","shiftXStick","layerStyle","WebkitTransform","transform","WebkitTransition","transition","setSlideRef","slideRef","canSlideLeft","canSlideRight","classNames","el"],"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HorizontalScrollArrow } from \"../HorizontalScroll/HorizontalScrollArrow\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { calcMax, calcMin } from \"./helpers\";\nimport {\n BaseGalleryProps,\n GallerySlidesState,\n LayoutState,\n ShiftingState,\n} from \"./types\";\nimport \"./BaseGallery.css\";\n\nconst ANIMATION_DURATION = 0.24;\n\nconst LAYOUT_DEFAULT_STATE = {\n containerWidth: 0,\n viewportOffsetWidth: 0,\n layerWidth: 0,\n min: 0,\n max: 0,\n slides: [],\n isFullyVisible: true,\n};\n\nconst SHIFT_DEFAULT_STATE = {\n animation: undefined,\n shiftX: 0,\n dragging: false,\n deltaX: 0,\n indent: 0,\n};\n\nexport const BaseGallery = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = \"100%\",\n slideIndex = 0,\n isDraggable = true,\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n onEnd: onEndProp,\n align = \"left\",\n showArrows,\n getRef,\n ...restProps\n}: BaseGalleryProps) => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const layoutState = React.useRef<LayoutState>(LAYOUT_DEFAULT_STATE);\n const [shiftState, setShiftState] =\n React.useState<ShiftingState>(SHIFT_DEFAULT_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n\n const { window } = useDOM();\n const { hasMouse } = useAdaptivity();\n\n const isCenterWithCustomWidth = slideWidth === \"custom\" && align === \"center\";\n\n const validateIndent = (value: number) => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n\n if (value < localMin) {\n return localMin;\n } else if (value > localMax) {\n return localMax;\n }\n\n return value;\n };\n\n /*\n * Считает отступ слоя галереи\n */\n const calculateIndent = (targetIndex: number) => {\n if (layoutState.current.isFullyVisible) {\n return 0;\n }\n\n const targetSlide = layoutState.current.slides?.length\n ? layoutState.current.slides[targetIndex]\n : null;\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenterWithCustomWidth) {\n const viewportWidth = layoutState.current.viewportOffsetWidth ?? 0;\n return viewportWidth / 2 - coordX - width / 2;\n }\n\n return validateIndent(-1 * coordX);\n }\n\n return 0;\n };\n\n /*\n * Считает отступ слоя галереи во время драга\n */\n const calculateDragIndent = () => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n const indent = shiftState.shiftX + shiftState.deltaX;\n\n if (indent > localMax) {\n return localMax + Number((indent - localMax) / 3);\n } else if (indent < localMin) {\n return localMin + Number((indent - localMin) / 3);\n }\n\n return indent;\n };\n\n const initializeSlides = (options: { animation?: boolean } = {}) => {\n const localSlides =\n React.Children.map(\n children,\n (_item: React.ReactNode, i: number): GallerySlidesState => {\n const elem = slidesStore.current[`slide-${i}`];\n return {\n coordX: elem?.offsetLeft ?? 0,\n width: elem?.offsetWidth ?? 0,\n };\n }\n ) ?? [];\n\n const localContainerWidth = rootRef.current?.offsetWidth ?? 0;\n const localViewportOffsetWidth = viewportRef.current?.offsetWidth ?? 0;\n const localLayerWidth = localSlides.reduce(\n (val: number, slide: GallerySlidesState) => slide.width + val,\n 0\n );\n const adjustShiftX =\n localSlides.length <= layoutState.current.slides.length ||\n layoutState.current.slides[slideIndex]?.coordX !==\n localSlides[slideIndex]?.coordX;\n\n layoutState.current = {\n containerWidth: localContainerWidth,\n viewportOffsetWidth: localViewportOffsetWidth,\n layerWidth: localLayerWidth,\n max: calcMax({\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n }),\n min: calcMin({\n containerWidth: localContainerWidth,\n layerWidth: localLayerWidth,\n slides: localSlides,\n viewportOffsetWidth: localViewportOffsetWidth,\n isCenterWithCustomWidth,\n align,\n }),\n slides: localSlides,\n isFullyVisible: localLayerWidth <= localContainerWidth,\n };\n\n setShiftState((prevState) => ({\n ...prevState,\n shiftX: adjustShiftX ? calculateIndent(slideIndex) : prevState.shiftX,\n animation:\n options.animation ??\n prevState.shiftX === validateIndent(prevState.shiftX),\n }));\n };\n\n const onResize = () => {\n if (shiftState.animation !== undefined) {\n initializeSlides({ animation: false });\n }\n };\n\n useGlobalEventListener(window, \"resize\", onResize);\n\n useIsomorphicLayoutEffect(() => {\n initializeSlides({ animation: false });\n }, [children, align, slideWidth]);\n\n useIsomorphicLayoutEffect(() => {\n if (shiftState.animation !== undefined) {\n setShiftState((prevState) => ({\n ...prevState,\n animation: true,\n deltaX: 0,\n shiftX: calculateIndent(slideIndex ?? 0),\n }));\n }\n }, [slideIndex]);\n\n const slideLeft = () => {\n onChange?.(slideIndex - 1);\n onPrevClick?.();\n };\n\n const slideRight = () => {\n onChange?.(slideIndex + 1);\n onNextClick?.();\n };\n\n /*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\n const getTarget = (e: TouchEvent) => {\n const expectDeltaX = (shiftState.deltaX / e.duration) * 240 * 0.6;\n const shift =\n shiftState.shiftX +\n shiftState.deltaX +\n expectDeltaX -\n (layoutState.current.max ?? 0);\n const direction = shiftState.deltaX < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = layoutState.current.slides.reduce(\n (val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(\n layoutState.current.slides[val].coordX + shift\n );\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n },\n slideIndex\n );\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {\n if (\n Math.abs(shiftState.deltaX) >\n layoutState.current.slides[targetSlide].width * 0.05\n ) {\n targetIndex = targetSlide;\n }\n }\n }\n\n return targetIndex;\n };\n\n const onStart = () => {\n setShiftState((prevState) => ({ ...prevState, animation: false }));\n };\n\n const onMoveX = (e: TouchEvent) => {\n if (isDraggable && !layoutState.current.isFullyVisible) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n // TODO исправить в рамках issue #2698\n onDragStart?.(e);\n\n if (shiftState.deltaX !== e.shiftX) {\n setShiftState((prevState) => ({\n ...prevState,\n deltaX: e.shiftX,\n dragging: e.isSlideX,\n }));\n }\n }\n }\n };\n\n const onEnd = (e: TouchEvent) => {\n const targetIndex = e.isSlide ? getTarget(e) : slideIndex ?? 0;\n onDragEnd?.(e);\n\n const nextShiftState: Partial<ShiftingState> = {\n animation: true,\n dragging: false,\n deltaX: 0,\n };\n\n const shiftXStick = calculateDragIndent();\n if (targetIndex !== slideIndex) {\n // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)\n nextShiftState.shiftX = shiftXStick;\n }\n\n setShiftState((prevState) => ({ ...prevState, ...nextShiftState }));\n if (targetIndex !== slideIndex) {\n onChange?.(targetIndex);\n }\n\n // TODO исправить в рамках issue #2698\n onEndProp?.({ targetIndex });\n };\n\n const indent = shiftState.dragging\n ? calculateDragIndent()\n : shiftState.shiftX;\n\n const layerStyle = {\n WebkitTransform: `translateX(${indent}px)`,\n transform: `translateX(${indent}px)`,\n WebkitTransition: shiftState.animation\n ? `-webkit-transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n transition: shiftState.animation\n ? `transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[`slide-${slideIndex}`] = slideRef;\n };\n\n // shiftX is negative number <= 0, we can swipe back only if it is < 0\n const canSlideLeft =\n !layoutState.current.isFullyVisible && shiftState.shiftX < 0;\n\n const canSlideRight =\n !layoutState.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === \"left\" &&\n layoutState.current.containerWidth - shiftState.shiftX <\n (layoutState.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== \"left\" && slideIndex < layoutState.current.slides.length - 1));\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n \"Gallery\",\n `Gallery--${align}`,\n shiftState.dragging && \"Gallery--dragging\",\n slideWidth === \"custom\" && \"Gallery--custom-width\"\n )}\n ref={rootRef}\n >\n <Touch\n vkuiClass=\"Gallery__viewport\"\n onStartX={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n style={{ width: slideWidth === \"custom\" ? \"100%\" : slideWidth }}\n getRootRef={viewportRef}\n noSlideClick\n >\n <div vkuiClass=\"Gallery__layer\" style={layerStyle}>\n {React.Children.map(children, (item: React.ReactNode, i: number) => (\n <div\n vkuiClass=\"Gallery__slide\"\n key={`slide-${i}`}\n ref={(el) => setSlideRef(el, i)}\n >\n {item}\n </div>\n ))}\n </div>\n </Touch>\n\n {bullets && (\n <div\n aria-hidden=\"true\"\n vkuiClass={classNames(\n \"Gallery__bullets\",\n `Gallery__bullets--${bullets}`\n )}\n >\n {React.Children.map(\n children,\n (_item: React.ReactNode, index: number) => (\n <div\n vkuiClass={classNames(\n \"Gallery__bullet\",\n index === slideIndex && \"Gallery__bullet--active\"\n )}\n key={index}\n />\n )\n )}\n </div>\n )}\n\n {showArrows && hasMouse && canSlideLeft && (\n <HorizontalScrollArrow direction=\"left\" onClick={slideLeft} />\n )}\n {showArrows && hasMouse && canSlideRight && (\n <HorizontalScrollArrow direction=\"right\" onClick={slideRight} />\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/BaseGallery/helpers.ts"],"names":["calcMin","containerWidth","layerWidth","slides","viewportOffsetWidth","align","isCenterWithCustomWidth","length","coordX","width","undefined","calcMax"],"mappings":";;;;;;;AAQO,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAOR;AAAA,iCANbC,cAMa;AAAA,MANbA,cAMa,oCANI,CAMJ;AAAA,6BALbC,UAKa;AAAA,MALbA,UAKa,gCALA,CAKA;AAAA,yBAJbC,MAIa;AAAA,MAJbA,MAIa,4BAJJ,EAII;AAAA,mCAHbC,mBAGa;AAAA,MAHbA,mBAGa,sCAHS,CAGT;AAAA,MAFbC,KAEa,QAFbA,KAEa;AAAA,MADbC,uBACa,QADbA,uBACa;;AACb,UAAQD,KAAR;AACE,SAAK,MAAL;AACE,aAAOJ,cAAc,GAAGC,UAAxB;;AACF,SAAK,OAAL;AACE,aAAOE,mBAAmB,GAAGF,UAA7B;;AACF,SAAK,QAAL;AACE,UAAII,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;AAC5C,sBAA0BJ,MAAM,CAACA,MAAM,CAACI,MAAP,GAAgB,CAAjB,CAAhC;AAAA,YAAQC,MAAR,WAAQA,MAAR;AAAA,YAAgBC,KAAhB,WAAgBA,KAAhB;AACA,eAAOL,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;AACD,OAHD,MAGO;AACL,eACEL,mBAAmB,GACnB,CAACH,cAAc,GAAGG,mBAAlB,IAAyC,CADzC,GAEAF,UAHF;AAKD;;AAfL;;AAiBA,SAAOQ,SAAP;AACD,CA1BM;;;;AAgCA,IAAMC,OAAO,GAAG,SAAVA,OAAU,QAIR;AAAA,2BAHbR,MAGa;AAAA,MAHbA,MAGa,6BAHJ,EAGI;AAAA,oCAFbC,mBAEa;AAAA,MAFbA,mBAEa,sCAFS,CAET;AAAA,MADbE,uBACa,SADbA,uBACa;;AACb,MAAIA,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;AAC5C,mBAA0BJ,MAAM,CAAC,CAAD,CAAhC;AAAA,QAAQM,KAAR,YAAQA,KAAR;AAAA,QAAeD,MAAf,YAAeA,MAAf;AACA,WAAOJ,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;AACD;;AACD,SAAO,CAAP;AACD,CAVM","sourcesContent":["import { LayoutState } from \"./types\";\nimport { HasAlign } from \"../../types\";\n\ninterface CalcMin extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n align: HasAlign[\"align\"];\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewportOffsetWidth = 0,\n align,\n isCenterWithCustomWidth,\n}: CalcMin) => {\n switch (align) {\n case \"left\":\n return containerWidth - layerWidth;\n case \"right\":\n return viewportOffsetWidth - layerWidth;\n case \"center\":\n if (isCenterWithCustomWidth && slides.length) {\n const { coordX, width } = slides[slides.length - 1];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n } else {\n return (\n viewportOffsetWidth -\n (containerWidth - viewportOffsetWidth) / 2 -\n layerWidth\n );\n }\n }\n return undefined;\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n}\n\nexport const calcMax = ({\n slides = [],\n viewportOffsetWidth = 0,\n isCenterWithCustomWidth,\n}: CalcMax) => {\n if (isCenterWithCustomWidth && slides.length) {\n const { width, coordX } = slides[0];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n }\n return 0;\n};\n"],"file":"helpers.js"}
1
+ {"version":3,"file":"helpers.js","names":["calcMin","containerWidth","layerWidth","slides","viewportOffsetWidth","align","isCenterWithCustomWidth","length","coordX","width","undefined","calcMax"],"sources":["../../../../src/components/BaseGallery/helpers.ts"],"sourcesContent":["import { LayoutState } from \"./types\";\nimport { HasAlign } from \"../../types\";\n\ninterface CalcMin extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n align: HasAlign[\"align\"];\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewportOffsetWidth = 0,\n align,\n isCenterWithCustomWidth,\n}: CalcMin) => {\n switch (align) {\n case \"left\":\n return containerWidth - layerWidth;\n case \"right\":\n return viewportOffsetWidth - layerWidth;\n case \"center\":\n if (isCenterWithCustomWidth && slides.length) {\n const { coordX, width } = slides[slides.length - 1];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n } else {\n return (\n viewportOffsetWidth -\n (containerWidth - viewportOffsetWidth) / 2 -\n layerWidth\n );\n }\n }\n return undefined;\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n}\n\nexport const calcMax = ({\n slides = [],\n viewportOffsetWidth = 0,\n isCenterWithCustomWidth,\n}: CalcMax) => {\n if (isCenterWithCustomWidth && slides.length) {\n const { width, coordX } = slides[0];\n return viewportOffsetWidth / 2 - coordX - width / 2;\n }\n return 0;\n};\n"],"mappings":";;;;;;;AAQO,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAOR;EAAA,+BANbC,cAMa;EAAA,IANbA,cAMa,oCANI,CAMJ;EAAA,2BALbC,UAKa;EAAA,IALbA,UAKa,gCALA,CAKA;EAAA,uBAJbC,MAIa;EAAA,IAJbA,MAIa,4BAJJ,EAII;EAAA,iCAHbC,mBAGa;EAAA,IAHbA,mBAGa,sCAHS,CAGT;EAAA,IAFbC,KAEa,QAFbA,KAEa;EAAA,IADbC,uBACa,QADbA,uBACa;;EACb,QAAQD,KAAR;IACE,KAAK,MAAL;MACE,OAAOJ,cAAc,GAAGC,UAAxB;;IACF,KAAK,OAAL;MACE,OAAOE,mBAAmB,GAAGF,UAA7B;;IACF,KAAK,QAAL;MACE,IAAII,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;QAC5C,cAA0BJ,MAAM,CAACA,MAAM,CAACI,MAAP,GAAgB,CAAjB,CAAhC;QAAA,IAAQC,MAAR,WAAQA,MAAR;QAAA,IAAgBC,KAAhB,WAAgBA,KAAhB;QACA,OAAOL,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;MACD,CAHD,MAGO;QACL,OACEL,mBAAmB,GACnB,CAACH,cAAc,GAAGG,mBAAlB,IAAyC,CADzC,GAEAF,UAHF;MAKD;;EAfL;;EAiBA,OAAOQ,SAAP;AACD,CA1BM;;;;AAgCA,IAAMC,OAAO,GAAG,SAAVA,OAAU,QAIR;EAAA,yBAHbR,MAGa;EAAA,IAHbA,MAGa,6BAHJ,EAGI;EAAA,kCAFbC,mBAEa;EAAA,IAFbA,mBAEa,sCAFS,CAET;EAAA,IADbE,uBACa,SADbA,uBACa;;EACb,IAAIA,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;IAC5C,eAA0BJ,MAAM,CAAC,CAAD,CAAhC;IAAA,IAAQM,KAAR,YAAQA,KAAR;IAAA,IAAeD,MAAf,YAAeA,MAAf;IACA,OAAOJ,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;EACD;;EACD,OAAO,CAAP;AACD,CAVM"}
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"types.js"}
1
+ {"version":3,"file":"types.js","names":[],"sources":["../../../../src/components/BaseGallery/types.ts"],"sourcesContent":["import * as React from \"react\";\nimport { HasAlign, HasRef, HasRootRef } from \"../../types\";\nimport { TouchEventHandler } from \"../Touch/Touch\";\n\nexport interface GallerySlidesState {\n coordX: number;\n width: number;\n}\n\nexport interface ShiftingState {\n deltaX: number;\n shiftX: number;\n animation?: boolean;\n dragging: boolean;\n}\n\nexport interface LayoutState {\n containerWidth: number;\n viewportOffsetWidth: number;\n layerWidth: number;\n min?: number;\n max: number;\n slides: GallerySlidesState[];\n isFullyVisible: boolean;\n}\n\nexport interface BaseGalleryProps\n extends Omit<\n React.HTMLAttributes<HTMLDivElement>,\n \"onChange\" | \"onDragStart\" | \"onDragEnd\"\n >,\n HasAlign,\n HasRootRef<HTMLDivElement>,\n HasRef<HTMLElement> {\n slideWidth?: string | number;\n slideIndex?: number;\n onDragStart?: TouchEventHandler;\n onDragEnd?: TouchEventHandler;\n onChange?(current: number): void;\n onEnd?({ targetIndex }: { targetIndex: number }): void;\n /**\n * Будет вызвано при клике на кнопку-стрелку влево\n */\n onPrevClick?(): void;\n /**\n * Будет вызвано при клике на кнопку-стрелку вправо\n */\n onNextClick?(): void;\n bullets?: \"dark\" | \"light\" | false;\n isDraggable?: boolean;\n showArrows?: boolean;\n}\n"],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Button/Button.tsx"],"names":["ButtonTypography","size","sizeY","platform","restProps","isCompact","SizeType","COMPACT","ANDROID","VKCOM","IOS","resolveButtonAppearance","appearance","mode","resolvedAppearance","resolvedMode","undefined","ButtonComponent","stretched","align","children","before","after","getRootRef","Component","loading","onClick","stopPropagation","hasIcons","Boolean","hasIconOnly","hasNewTokens","React","useContext","ConfigProviderContext","href","Button","displayName"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport { TappableProps, Tappable } from \"../Tappable/Tappable\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { HasAlign, HasComponent } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n AdaptivityProps,\n SizeType,\n withAdaptivity,\n} from \"../../hoc/withAdaptivity\";\nimport { PlatformType, IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { Spinner } from \"../Spinner/Spinner\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport \"./Button.css\";\n\nexport interface VKUIButtonProps extends HasAlign {\n /**\n Значения `commerce`, `destructive`, `overlay_...` будут упразднены в 5.0.0\n */\n mode?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"outline\"\n | \"commerce\"\n | \"destructive\"\n | \"overlay_primary\"\n | \"overlay_secondary\"\n | \"overlay_outline\";\n appearance?: \"accent\" | \"positive\" | \"negative\" | \"neutral\" | \"overlay\";\n size?: \"s\" | \"m\" | \"l\";\n stretched?: boolean;\n before?: React.ReactNode;\n after?: React.ReactNode;\n loading?: boolean;\n}\n\nexport interface ButtonProps\n extends Omit<TappableProps, \"size\">,\n VKUIButtonProps {}\n\ninterface ButtonTypographyProps extends HasComponent {\n size: ButtonProps[\"size\"];\n platform: PlatformType | undefined;\n sizeY: AdaptivityProps[\"sizeY\"];\n children?: ButtonProps[\"children\"];\n}\n\nconst ButtonTypography = ({\n size,\n sizeY,\n platform,\n ...restProps\n}: ButtonTypographyProps) => {\n const isCompact = sizeY === SizeType.COMPACT;\n\n switch (size) {\n case \"l\":\n if (isCompact) {\n return <Text weight=\"2\" {...restProps} />;\n }\n if (platform === ANDROID) {\n return <Headline weight=\"2\" {...restProps} />;\n }\n return <Title level=\"3\" weight=\"2\" {...restProps} />;\n case \"m\":\n if (isCompact) {\n return (\n <Subhead weight={platform === VKCOM ? \"3\" : \"2\"} {...restProps} />\n );\n }\n\n return <Text weight=\"2\" {...restProps} />;\n case \"s\":\n default:\n if (platform === IOS) {\n return <Subhead weight=\"2\" {...restProps} />;\n }\n\n if (platform === VKCOM) {\n return <Caption {...restProps} />;\n }\n\n if (isCompact) {\n return <Caption weight=\"2\" {...restProps} />;\n }\n\n return <Subhead weight=\"2\" {...restProps} />;\n }\n};\n\ninterface ResolvedButtonAppearance {\n resolvedAppearance: ButtonProps[\"appearance\"];\n resolvedMode: ButtonProps[\"mode\"];\n}\n\nfunction resolveButtonAppearance(\n appearance: ButtonProps[\"appearance\"],\n mode: ButtonProps[\"mode\"]\n): ResolvedButtonAppearance {\n let resolvedAppearance: ButtonProps[\"appearance\"] = appearance;\n let resolvedMode: ButtonProps[\"mode\"] = mode;\n\n if (appearance === undefined) {\n switch (mode) {\n case \"tertiary\":\n case \"secondary\":\n case \"primary\":\n case \"outline\":\n resolvedAppearance = \"accent\";\n break;\n case \"commerce\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"positive\";\n break;\n case \"destructive\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"negative\";\n break;\n case \"overlay_primary\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_secondary\":\n resolvedMode = \"secondary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_outline\":\n resolvedMode = \"outline\";\n resolvedAppearance = \"overlay\";\n break;\n }\n }\n\n return {\n resolvedAppearance,\n resolvedMode,\n };\n}\n\nconst ButtonComponent = ({\n size = \"s\",\n mode = \"primary\",\n appearance,\n stretched = false,\n align = \"center\",\n children,\n before,\n after,\n getRootRef,\n sizeY,\n Component = \"button\",\n loading,\n onClick,\n stopPropagation = true,\n ...restProps\n}: ButtonProps) => {\n const platform = usePlatform();\n const hasIcons = Boolean(before || after);\n const hasIconOnly = !children && Boolean(after) !== Boolean(before);\n const { resolvedMode, resolvedAppearance } = resolveButtonAppearance(\n appearance,\n mode\n );\n const hasNewTokens = React.useContext(ConfigProviderContext).hasNewTokens;\n\n return (\n <Tappable\n hoverMode={hasNewTokens ? \"Button--hover\" : \"background\"}\n activeMode={hasNewTokens ? \"Button--active\" : \"opacity\"}\n {...restProps}\n Component={restProps.href ? \"a\" : Component}\n onClick={loading ? undefined : onClick}\n focusVisibleMode=\"outside\"\n stopPropagation={stopPropagation}\n vkuiClass={classNames(\n \"Button\",\n `Button--sz-${size}`,\n `Button--lvl-${resolvedMode}`,\n `Button--clr-${resolvedAppearance}`,\n `Button--aln-${align}`,\n `Button--sizeY-${sizeY}`,\n stretched && \"Button--stretched\",\n hasIcons && \"Button--with-icon\",\n hasIconOnly && \"Button--singleIcon\",\n loading && \"Button--loading\"\n )}\n getRootRef={getRootRef}\n >\n {loading && <Spinner size=\"small\" vkuiClass=\"Button__spinner\" />}\n <span vkuiClass=\"Button__in\">\n {before && (\n <span vkuiClass=\"Button__before\" role=\"presentation\">\n {before}\n </span>\n )}\n {children && (\n <ButtonTypography\n size={size}\n sizeY={sizeY}\n platform={platform}\n vkuiClass=\"Button__content\"\n Component=\"span\"\n >\n {children}\n </ButtonTypography>\n )}\n {after && (\n <span vkuiClass=\"Button__after\" role=\"presentation\">\n {after}\n </span>\n )}\n </span>\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Button\n */\nexport const Button = withAdaptivity(ButtonComponent, {\n sizeY: true,\n});\n\nButton.displayName = \"Button\";\n"],"file":"Button.js"}
1
+ {"version":3,"file":"Button.js","names":["ButtonTypography","size","sizeY","platform","restProps","isCompact","SizeType","COMPACT","ANDROID","VKCOM","IOS","resolveButtonAppearance","appearance","mode","resolvedAppearance","resolvedMode","undefined","ButtonComponent","stretched","align","children","before","after","getRootRef","Component","loading","onClick","stopPropagation","usePlatform","hasIcons","Boolean","hasIconOnly","hasNewTokens","React","useContext","ConfigProviderContext","href","classNames","Button","withAdaptivity","displayName"],"sources":["../../../../src/components/Button/Button.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport { TappableProps, Tappable } from \"../Tappable/Tappable\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Text } from \"../Typography/Text/Text\";\nimport { Subhead } from \"../Typography/Subhead/Subhead\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { HasAlign, HasComponent } from \"../../types\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport {\n AdaptivityProps,\n SizeType,\n withAdaptivity,\n} from \"../../hoc/withAdaptivity\";\nimport { PlatformType, IOS, VKCOM, ANDROID } from \"../../lib/platform\";\nimport { Spinner } from \"../Spinner/Spinner\";\nimport { Headline } from \"../Typography/Headline/Headline\";\nimport \"./Button.css\";\n\nexport interface VKUIButtonProps extends HasAlign {\n /**\n Значения `commerce`, `destructive`, `overlay_...` будут упразднены в 5.0.0\n */\n mode?:\n | \"primary\"\n | \"secondary\"\n | \"tertiary\"\n | \"outline\"\n | \"commerce\"\n | \"destructive\"\n | \"overlay_primary\"\n | \"overlay_secondary\"\n | \"overlay_outline\";\n appearance?: \"accent\" | \"positive\" | \"negative\" | \"neutral\" | \"overlay\";\n size?: \"s\" | \"m\" | \"l\";\n stretched?: boolean;\n before?: React.ReactNode;\n after?: React.ReactNode;\n loading?: boolean;\n}\n\nexport interface ButtonProps\n extends Omit<TappableProps, \"size\">,\n VKUIButtonProps {}\n\ninterface ButtonTypographyProps extends HasComponent {\n size: ButtonProps[\"size\"];\n platform: PlatformType | undefined;\n sizeY: AdaptivityProps[\"sizeY\"];\n children?: ButtonProps[\"children\"];\n}\n\nconst ButtonTypography = ({\n size,\n sizeY,\n platform,\n ...restProps\n}: ButtonTypographyProps) => {\n const isCompact = sizeY === SizeType.COMPACT;\n\n switch (size) {\n case \"l\":\n if (isCompact) {\n return <Text weight=\"2\" {...restProps} />;\n }\n if (platform === ANDROID) {\n return <Headline weight=\"2\" {...restProps} />;\n }\n return <Title level=\"3\" weight=\"2\" {...restProps} />;\n case \"m\":\n if (isCompact) {\n return (\n <Subhead weight={platform === VKCOM ? \"3\" : \"2\"} {...restProps} />\n );\n }\n\n return <Text weight=\"2\" {...restProps} />;\n case \"s\":\n default:\n if (platform === IOS) {\n return <Subhead weight=\"2\" {...restProps} />;\n }\n\n if (platform === VKCOM) {\n return <Caption {...restProps} />;\n }\n\n if (isCompact) {\n return <Caption weight=\"2\" {...restProps} />;\n }\n\n return <Subhead weight=\"2\" {...restProps} />;\n }\n};\n\ninterface ResolvedButtonAppearance {\n resolvedAppearance: ButtonProps[\"appearance\"];\n resolvedMode: ButtonProps[\"mode\"];\n}\n\nfunction resolveButtonAppearance(\n appearance: ButtonProps[\"appearance\"],\n mode: ButtonProps[\"mode\"]\n): ResolvedButtonAppearance {\n let resolvedAppearance: ButtonProps[\"appearance\"] = appearance;\n let resolvedMode: ButtonProps[\"mode\"] = mode;\n\n if (appearance === undefined) {\n switch (mode) {\n case \"tertiary\":\n case \"secondary\":\n case \"primary\":\n case \"outline\":\n resolvedAppearance = \"accent\";\n break;\n case \"commerce\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"positive\";\n break;\n case \"destructive\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"negative\";\n break;\n case \"overlay_primary\":\n resolvedMode = \"primary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_secondary\":\n resolvedMode = \"secondary\";\n resolvedAppearance = \"overlay\";\n break;\n case \"overlay_outline\":\n resolvedMode = \"outline\";\n resolvedAppearance = \"overlay\";\n break;\n }\n }\n\n return {\n resolvedAppearance,\n resolvedMode,\n };\n}\n\nconst ButtonComponent = ({\n size = \"s\",\n mode = \"primary\",\n appearance,\n stretched = false,\n align = \"center\",\n children,\n before,\n after,\n getRootRef,\n sizeY,\n Component = \"button\",\n loading,\n onClick,\n stopPropagation = true,\n ...restProps\n}: ButtonProps) => {\n const platform = usePlatform();\n const hasIcons = Boolean(before || after);\n const hasIconOnly = !children && Boolean(after) !== Boolean(before);\n const { resolvedMode, resolvedAppearance } = resolveButtonAppearance(\n appearance,\n mode\n );\n const hasNewTokens = React.useContext(ConfigProviderContext).hasNewTokens;\n\n return (\n <Tappable\n hoverMode={hasNewTokens ? \"Button--hover\" : \"background\"}\n activeMode={hasNewTokens ? \"Button--active\" : \"opacity\"}\n {...restProps}\n Component={restProps.href ? \"a\" : Component}\n onClick={loading ? undefined : onClick}\n focusVisibleMode=\"outside\"\n stopPropagation={stopPropagation}\n vkuiClass={classNames(\n \"Button\",\n `Button--sz-${size}`,\n `Button--lvl-${resolvedMode}`,\n `Button--clr-${resolvedAppearance}`,\n `Button--aln-${align}`,\n `Button--sizeY-${sizeY}`,\n stretched && \"Button--stretched\",\n hasIcons && \"Button--with-icon\",\n hasIconOnly && \"Button--singleIcon\",\n loading && \"Button--loading\"\n )}\n getRootRef={getRootRef}\n >\n {loading && <Spinner size=\"small\" vkuiClass=\"Button__spinner\" />}\n <span vkuiClass=\"Button__in\">\n {before && (\n <span vkuiClass=\"Button__before\" role=\"presentation\">\n {before}\n </span>\n )}\n {children && (\n <ButtonTypography\n size={size}\n sizeY={sizeY}\n platform={platform}\n vkuiClass=\"Button__content\"\n Component=\"span\"\n >\n {children}\n </ButtonTypography>\n )}\n {after && (\n <span vkuiClass=\"Button__after\" role=\"presentation\">\n {after}\n </span>\n )}\n </span>\n </Tappable>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Button\n */\nexport const Button = withAdaptivity(ButtonComponent, {\n sizeY: true,\n});\n\nButton.displayName = \"Button\";\n"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"names":["ButtonGroup","mode","gap","stretched","align","getRootRef","children","restProps"],"mappings":";;;;;;;;;;;;;;;AACA;;;;AA2BA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;AAAA,uBAPtBC,IAOsB;AAAA,MAPtBA,IAOsB,0BAPf,YAOe;AAAA,sBANtBC,GAMsB;AAAA,MANtBA,GAMsB,yBANhB,GAMgB;AAAA,4BALtBC,SAKsB;AAAA,MALtBA,SAKsB,+BALV,KAKU;AAAA,wBAJtBC,KAIsB;AAAA,MAJtBA,KAIsB,2BAJd,MAIc;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,QAEsB,QAFtBA,QAEsB;AAAA,MADnBC,SACmB;AACtB,SACE;AACE,IAAA,SAAS,EAAE,4BACT,aADS,8BAEYN,IAFZ,GAGTC,GAAG,KAAK,MAAR,+BAAsCA,GAAtC,CAHS,EAITC,SAAS,IAAI,wBAJJ,+BAKaC,KALb,EADb;AAQE,IAAA,IAAI,EAAC,OARP;AASE,IAAA,GAAG,EAAEC;AATP,KAUME,SAVN,GAYGD,QAZH,CADF;AAgBD,CAzBM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport type { HasRootRef, AlignType } from \"../../types\";\nimport \"./ButtonGroup.css\";\n\nexport interface ButtonGroupProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: \"vertical\" | \"horizontal\";\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: \"none\" | \"space\" | \"s\" | \"m\";\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n /**\n * Горизонтальное выравнивание элементов внутри группы. Работает только с mode=\"vertical\".\n */\n align?: AlignType;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = \"horizontal\",\n gap = \"m\",\n stretched = false,\n align = \"left\" /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n getRootRef,\n children,\n ...restProps\n}: ButtonGroupProps) => {\n return (\n <div\n vkuiClass={classNames(\n \"ButtonGroup\",\n `ButtonGroup--mode-${mode}`,\n gap !== \"none\" && `ButtonGroup--gap-${gap}`,\n stretched && \"ButtonGroup--stretched\",\n `ButtonGroup--align-${align}`\n )}\n role=\"group\"\n ref={getRootRef}\n {...restProps}\n >\n {children}\n </div>\n );\n};\n"],"file":"ButtonGroup.js"}
1
+ {"version":3,"file":"ButtonGroup.js","names":["ButtonGroup","mode","gap","stretched","align","getRootRef","children","restProps","classNames"],"sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport type { HasRootRef, AlignType } from \"../../types\";\nimport \"./ButtonGroup.css\";\n\nexport interface ButtonGroupProps\n extends React.HTMLAttributes<HTMLDivElement>,\n HasRootRef<HTMLDivElement> {\n /**\n * Задает расположение элементов внутри группы, вертикальное или горизонтальное.\n */\n mode?: \"vertical\" | \"horizontal\";\n /**\n * Выставляет в зависимости от `mode` отступ по вертикали или горизонтали.\n */\n gap?: \"none\" | \"space\" | \"s\" | \"m\";\n /**\n * Растягивает компонент на всю ширину контейнера.\n *\n * Note: Для потомков соответствующее поведение нужно определять самостоятельно, где это необходимо.\n */\n stretched?: boolean;\n /**\n * Горизонтальное выравнивание элементов внутри группы. Работает только с mode=\"vertical\".\n */\n align?: AlignType;\n}\n\n/**\n * @see https://vkcom.github.io/VKUI/#/ButtonGroup\n */\nexport const ButtonGroup = ({\n mode = \"horizontal\",\n gap = \"m\",\n stretched = false,\n align = \"left\" /* NOTE: Чтобы блоки по-умолчанию не растягивались на всю ширину контейнера */,\n getRootRef,\n children,\n ...restProps\n}: ButtonGroupProps) => {\n return (\n <div\n vkuiClass={classNames(\n \"ButtonGroup\",\n `ButtonGroup--mode-${mode}`,\n gap !== \"none\" && `ButtonGroup--gap-${gap}`,\n stretched && \"ButtonGroup--stretched\",\n `ButtonGroup--align-${align}`\n )}\n role=\"group\"\n ref={getRootRef}\n {...restProps}\n >\n {children}\n </div>\n );\n};\n"],"mappings":";;;;;;;;;;;;;;;AACA;;;;AA2BA;AACA;AACA;AACO,IAAMA,WAAW,GAAG,SAAdA,WAAc,OAQH;EAAA,qBAPtBC,IAOsB;EAAA,IAPtBA,IAOsB,0BAPf,YAOe;EAAA,oBANtBC,GAMsB;EAAA,IANtBA,GAMsB,yBANhB,GAMgB;EAAA,0BALtBC,SAKsB;EAAA,IALtBA,SAKsB,+BALV,KAKU;EAAA,sBAJtBC,KAIsB;EAAA,IAJtBA,KAIsB,2BAJd,MAIc;EAAA,IAHtBC,UAGsB,QAHtBA,UAGsB;EAAA,IAFtBC,QAEsB,QAFtBA,QAEsB;EAAA,IADnBC,SACmB;EACtB,OACE;IACE,SAAS,EAAE,IAAAC,sBAAA,EACT,aADS,8BAEYP,IAFZ,GAGTC,GAAG,KAAK,MAAR,+BAAsCA,GAAtC,CAHS,EAITC,SAAS,IAAI,wBAJJ,+BAKaC,KALb,EADb;IAQE,IAAI,EAAC,OARP;IASE,GAAG,EAAEC;EATP,GAUME,SAVN,GAYGD,QAZH,CADF;AAgBD,CAzBM"}
@@ -35,7 +35,7 @@ var _classNames = require("../../lib/classNames");
35
35
 
36
36
  var _warnOnce = require("../../lib/warnOnce");
37
37
 
38
- var _excluded = ["value", "onChange", "disablePast", "disableFuture", "shouldDisableDate", "onClose", "enableTime", "doneButtonText", "weekStartsOn", "getRootRef", "disablePickers", "changeHoursAriaLabel", "changeMinutesAriaLabel", "prevMonthAriaLabel", "nextMonthAriaLabel", "changeMonthAriaLabel", "changeYearAriaLabel", "showNeighboringMonth", "changeDayAriaLabel", "size", "viewDate", "onHeaderChange", "onNextMonth", "onPrevMonth", "prevMonthIcon", "nextMonthIcon"];
38
+ var _excluded = ["value", "onChange", "disablePast", "disableFuture", "shouldDisableDate", "onClose", "enableTime", "doneButtonText", "weekStartsOn", "getRootRef", "disablePickers", "changeHoursAriaLabel", "changeMinutesAriaLabel", "prevMonthAriaLabel", "nextMonthAriaLabel", "changeMonthAriaLabel", "changeYearAriaLabel", "showNeighboringMonth", "changeDayAriaLabel", "size", "viewDate", "onHeaderChange", "onNextMonth", "onPrevMonth", "prevMonthIcon", "nextMonthIcon", "prevMonthProps", "nextMonthProps", "dayProps"];
39
39
  var warn = (0, _warnOnce.warnOnce)("Calendar");
40
40
  /**
41
41
  * @see https://vkcom.github.io/VKUI/#/Calendar
@@ -72,6 +72,9 @@ var Calendar = function Calendar(_ref) {
72
72
  onPrevMonth = _ref.onPrevMonth,
73
73
  prevMonthIcon = _ref.prevMonthIcon,
74
74
  nextMonthIcon = _ref.nextMonthIcon,
75
+ prevMonthProps = _ref.prevMonthProps,
76
+ nextMonthProps = _ref.nextMonthProps,
77
+ dayProps = _ref.dayProps,
75
78
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
76
79
 
77
80
  var _useCalendar = (0, _useCalendar2.useCalendar)({
@@ -141,7 +144,9 @@ var Calendar = function Calendar(_ref) {
141
144
  changeMonthAriaLabel: changeMonthAriaLabel,
142
145
  changeYearAriaLabel: changeYearAriaLabel,
143
146
  prevMonthIcon: prevMonthIcon,
144
- nextMonthIcon: nextMonthIcon
147
+ nextMonthIcon: nextMonthIcon,
148
+ prevMonthProps: prevMonthProps,
149
+ nextMonthProps: nextMonthProps
145
150
  }), (0, _jsxRuntime.createScopedElement)(_CalendarDays.CalendarDays, {
146
151
  viewDate: externalViewDate || viewDate,
147
152
  value: value,
@@ -157,7 +162,8 @@ var Calendar = function Calendar(_ref) {
157
162
  isDayDisabled: isDayDisabled,
158
163
  onBlur: resetSelectedDay,
159
164
  showNeighboringMonth: showNeighboringMonth,
160
- size: size
165
+ size: size,
166
+ dayProps: dayProps
161
167
  }), enableTime && value && size !== "s" && (0, _jsxRuntime.createScopedElement)("div", {
162
168
  vkuiClass: "Calendar__time"
163
169
  }, (0, _jsxRuntime.createScopedElement)(_CalendarTime.CalendarTime, {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Calendar/Calendar.tsx"],"names":["warn","Calendar","value","onChange","disablePast","disableFuture","shouldDisableDate","onClose","enableTime","doneButtonText","weekStartsOn","getRootRef","disablePickers","changeHoursAriaLabel","changeMinutesAriaLabel","prevMonthAriaLabel","nextMonthAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","showNeighboringMonth","changeDayAriaLabel","size","externalViewDate","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","props","setViewDate","setPrevMonth","setNextMonth","focusedDay","setFocusedDay","isDayFocused","isDayDisabled","resetSelectedDay","process","env","NODE_ENV","handleKeyDown","React","useCallback","event","includes","key","preventDefault","newFocusedDay","onDayChange","date","isDayActive","day","Boolean","isFirstDay","isLastDay"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameMonth, isSameDay } from \"../../lib/date\";\nimport {\n CalendarHeader,\n CalendarHeaderProps,\n} from \"../CalendarHeader/CalendarHeader\";\nimport { CalendarDays } from \"../CalendarDays/CalendarDays\";\nimport { CalendarTime, CalendarTimeProps } from \"../CalendarTime/CalendarTime\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport {\n navigateDate,\n setTimeEqual,\n isFirstDay,\n isLastDay,\n} from \"../../lib/calendar\";\nimport { useCalendar } from \"../../hooks/useCalendar\";\nimport { HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./Calendar.css\";\n\nexport interface CalendarProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<CalendarTimeProps, \"changeHoursAriaLabel\" | \"changeMinutesAriaLabel\">,\n Pick<\n CalendarHeaderProps,\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"onNextMonth\"\n | \"onPrevMonth\"\n | \"prevMonthIcon\"\n | \"nextMonthIcon\"\n >,\n HasRootRef<HTMLDivElement> {\n value?: Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n enableTime?: boolean;\n disablePickers?: boolean;\n doneButtonText?: string;\n changeDayAriaLabel?: string;\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange?(value?: Date): void;\n shouldDisableDate?(value: Date): boolean;\n onClose?(): void;\n /**\n * Дата отображаемого месяца.\n * При использовании обновление даты должно происходить вне компонента.\n */\n viewDate?: Date;\n /**\n * Изменение даты в шапке календаря.\n */\n onHeaderChange?(value: Date): void;\n}\n\nconst warn = warnOnce(\"Calendar\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Calendar\n */\nexport const Calendar = ({\n value,\n onChange,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onClose,\n enableTime = false,\n doneButtonText,\n weekStartsOn = 1,\n getRootRef,\n disablePickers,\n changeHoursAriaLabel,\n changeMinutesAriaLabel,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n showNeighboringMonth,\n changeDayAriaLabel = \"Изменить день\",\n size = \"m\",\n viewDate: externalViewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n ...props\n}: CalendarProps) => {\n const {\n viewDate,\n setViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n } = useCalendar({\n value,\n disableFuture,\n disablePast,\n shouldDisableDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n });\n\n useIsomorphicLayoutEffect(() => {\n if (value) {\n setViewDate(value);\n }\n }, [value]);\n\n if (\n process.env.NODE_ENV === \"development\" &&\n !disablePickers &&\n size === \"s\"\n ) {\n warn(\n \"Нельзя включить селекты выбора месяца/года, если размер календаря 's'\",\n \"error\"\n );\n }\n\n if (process.env.NODE_ENV === \"development\" && enableTime && size === \"s\") {\n warn(\"Нельзя включить выбор времени, если размер календаря 's'\", \"error\");\n }\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (\n [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"].includes(event.key)\n ) {\n event.preventDefault();\n }\n\n const newFocusedDay = navigateDate(focusedDay ?? value, event.key);\n\n if (newFocusedDay && !isSameMonth(newFocusedDay, viewDate)) {\n setViewDate(newFocusedDay);\n }\n setFocusedDay(newFocusedDay);\n },\n [focusedDay, setFocusedDay, setViewDate, value, viewDate]\n );\n\n const onDayChange = React.useCallback(\n (date: Date) => {\n onChange?.(setTimeEqual(date, value as Date | undefined | null));\n },\n [value, onChange]\n );\n\n const isDayActive = React.useCallback(\n (day: Date) => Boolean(value && isSameDay(day, value)),\n [value]\n );\n\n return (\n <div\n {...props}\n ref={getRootRef}\n vkuiClass={classNames(\"Calendar\", `Calendar--size-${size}`)}\n >\n <CalendarHeader\n viewDate={externalViewDate || viewDate}\n onChange={setViewDate}\n onNextMonth={setNextMonth}\n onPrevMonth={setPrevMonth}\n disablePickers={disablePickers || size === \"s\"}\n vkuiClass=\"Calendar__header\"\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n />\n <CalendarDays\n viewDate={externalViewDate || viewDate}\n value={value}\n weekStartsOn={weekStartsOn}\n isDayFocused={isDayFocused}\n tabIndex={0}\n aria-label={changeDayAriaLabel}\n onKeyDown={handleKeyDown}\n onDayChange={onDayChange}\n isDayActive={isDayActive}\n isDaySelectionStart={isFirstDay}\n isDaySelectionEnd={isLastDay}\n isDayDisabled={isDayDisabled}\n onBlur={resetSelectedDay}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n />\n {enableTime && value && size !== \"s\" && (\n <div vkuiClass=\"Calendar__time\">\n <CalendarTime\n value={value}\n onChange={onChange}\n onClose={onClose}\n doneButtonText={doneButtonText}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n />\n </div>\n )}\n </div>\n );\n};\n"],"file":"Calendar.js"}
1
+ {"version":3,"file":"Calendar.js","names":["warn","warnOnce","Calendar","value","onChange","disablePast","disableFuture","shouldDisableDate","onClose","enableTime","doneButtonText","weekStartsOn","getRootRef","disablePickers","changeHoursAriaLabel","changeMinutesAriaLabel","prevMonthAriaLabel","nextMonthAriaLabel","changeMonthAriaLabel","changeYearAriaLabel","showNeighboringMonth","changeDayAriaLabel","size","externalViewDate","viewDate","onHeaderChange","onNextMonth","onPrevMonth","prevMonthIcon","nextMonthIcon","prevMonthProps","nextMonthProps","dayProps","props","useCalendar","setViewDate","setPrevMonth","setNextMonth","focusedDay","setFocusedDay","isDayFocused","isDayDisabled","resetSelectedDay","useIsomorphicLayoutEffect","process","env","NODE_ENV","handleKeyDown","React","useCallback","event","includes","key","preventDefault","newFocusedDay","navigateDate","isSameMonth","onDayChange","date","setTimeEqual","isDayActive","day","Boolean","isSameDay","classNames","isFirstDay","isLastDay"],"sources":["../../../../src/components/Calendar/Calendar.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { isSameMonth, isSameDay } from \"../../lib/date\";\nimport {\n CalendarHeader,\n CalendarHeaderProps,\n} from \"../CalendarHeader/CalendarHeader\";\nimport { CalendarDays, CalendarDaysProps } from \"../CalendarDays/CalendarDays\";\nimport { CalendarTime, CalendarTimeProps } from \"../CalendarTime/CalendarTime\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport {\n navigateDate,\n setTimeEqual,\n isFirstDay,\n isLastDay,\n} from \"../../lib/calendar\";\nimport { useCalendar } from \"../../hooks/useCalendar\";\nimport { HasRootRef } from \"../../types\";\nimport { classNames } from \"../../lib/classNames\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport \"./Calendar.css\";\n\nexport interface CalendarProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\">,\n Pick<CalendarTimeProps, \"changeHoursAriaLabel\" | \"changeMinutesAriaLabel\">,\n Pick<\n CalendarHeaderProps,\n | \"prevMonthAriaLabel\"\n | \"nextMonthAriaLabel\"\n | \"changeMonthAriaLabel\"\n | \"changeYearAriaLabel\"\n | \"onNextMonth\"\n | \"onPrevMonth\"\n | \"prevMonthIcon\"\n | \"nextMonthIcon\"\n | \"prevMonthProps\"\n | \"nextMonthProps\"\n >,\n Pick<CalendarDaysProps, \"dayProps\">,\n HasRootRef<HTMLDivElement> {\n value?: Date;\n disablePast?: boolean;\n disableFuture?: boolean;\n enableTime?: boolean;\n disablePickers?: boolean;\n doneButtonText?: string;\n changeDayAriaLabel?: string;\n weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange?(value?: Date): void;\n shouldDisableDate?(value: Date): boolean;\n onClose?(): void;\n /**\n * Дата отображаемого месяца.\n * При использовании обновление даты должно происходить вне компонента.\n */\n viewDate?: Date;\n /**\n * Изменение даты в шапке календаря.\n */\n onHeaderChange?(value: Date): void;\n}\n\nconst warn = warnOnce(\"Calendar\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Calendar\n */\nexport const Calendar = ({\n value,\n onChange,\n disablePast,\n disableFuture,\n shouldDisableDate,\n onClose,\n enableTime = false,\n doneButtonText,\n weekStartsOn = 1,\n getRootRef,\n disablePickers,\n changeHoursAriaLabel,\n changeMinutesAriaLabel,\n prevMonthAriaLabel,\n nextMonthAriaLabel,\n changeMonthAriaLabel,\n changeYearAriaLabel,\n showNeighboringMonth,\n changeDayAriaLabel = \"Изменить день\",\n size = \"m\",\n viewDate: externalViewDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n prevMonthIcon,\n nextMonthIcon,\n prevMonthProps,\n nextMonthProps,\n dayProps,\n ...props\n}: CalendarProps) => {\n const {\n viewDate,\n setViewDate,\n setPrevMonth,\n setNextMonth,\n focusedDay,\n setFocusedDay,\n isDayFocused,\n isDayDisabled,\n resetSelectedDay,\n } = useCalendar({\n value,\n disableFuture,\n disablePast,\n shouldDisableDate,\n onHeaderChange,\n onNextMonth,\n onPrevMonth,\n });\n\n useIsomorphicLayoutEffect(() => {\n if (value) {\n setViewDate(value);\n }\n }, [value]);\n\n if (\n process.env.NODE_ENV === \"development\" &&\n !disablePickers &&\n size === \"s\"\n ) {\n warn(\n \"Нельзя включить селекты выбора месяца/года, если размер календаря 's'\",\n \"error\"\n );\n }\n\n if (process.env.NODE_ENV === \"development\" && enableTime && size === \"s\") {\n warn(\"Нельзя включить выбор времени, если размер календаря 's'\", \"error\");\n }\n\n const handleKeyDown = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (\n [\"ArrowUp\", \"ArrowDown\", \"ArrowLeft\", \"ArrowRight\"].includes(event.key)\n ) {\n event.preventDefault();\n }\n\n const newFocusedDay = navigateDate(focusedDay ?? value, event.key);\n\n if (newFocusedDay && !isSameMonth(newFocusedDay, viewDate)) {\n setViewDate(newFocusedDay);\n }\n setFocusedDay(newFocusedDay);\n },\n [focusedDay, setFocusedDay, setViewDate, value, viewDate]\n );\n\n const onDayChange = React.useCallback(\n (date: Date) => {\n onChange?.(setTimeEqual(date, value as Date | undefined | null));\n },\n [value, onChange]\n );\n\n const isDayActive = React.useCallback(\n (day: Date) => Boolean(value && isSameDay(day, value)),\n [value]\n );\n\n return (\n <div\n {...props}\n ref={getRootRef}\n vkuiClass={classNames(\"Calendar\", `Calendar--size-${size}`)}\n >\n <CalendarHeader\n viewDate={externalViewDate || viewDate}\n onChange={setViewDate}\n onNextMonth={setNextMonth}\n onPrevMonth={setPrevMonth}\n disablePickers={disablePickers || size === \"s\"}\n vkuiClass=\"Calendar__header\"\n prevMonthAriaLabel={prevMonthAriaLabel}\n nextMonthAriaLabel={nextMonthAriaLabel}\n changeMonthAriaLabel={changeMonthAriaLabel}\n changeYearAriaLabel={changeYearAriaLabel}\n prevMonthIcon={prevMonthIcon}\n nextMonthIcon={nextMonthIcon}\n prevMonthProps={prevMonthProps}\n nextMonthProps={nextMonthProps}\n />\n <CalendarDays\n viewDate={externalViewDate || viewDate}\n value={value}\n weekStartsOn={weekStartsOn}\n isDayFocused={isDayFocused}\n tabIndex={0}\n aria-label={changeDayAriaLabel}\n onKeyDown={handleKeyDown}\n onDayChange={onDayChange}\n isDayActive={isDayActive}\n isDaySelectionStart={isFirstDay}\n isDaySelectionEnd={isLastDay}\n isDayDisabled={isDayDisabled}\n onBlur={resetSelectedDay}\n showNeighboringMonth={showNeighboringMonth}\n size={size}\n dayProps={dayProps}\n />\n {enableTime && value && size !== \"s\" && (\n <div vkuiClass=\"Calendar__time\">\n <CalendarTime\n value={value}\n onChange={onChange}\n onClose={onClose}\n doneButtonText={doneButtonText}\n changeHoursAriaLabel={changeHoursAriaLabel}\n changeMinutesAriaLabel={changeMinutesAriaLabel}\n />\n </div>\n )}\n </div>\n );\n};\n"],"mappings":"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"}
@@ -1,5 +1,7 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
3
5
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
@@ -9,6 +11,10 @@ exports.CalendarDay = void 0;
9
11
 
10
12
  var _jsxRuntime = require("../../lib/jsxRuntime");
11
13
 
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
+
16
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
17
+
12
18
  var React = _interopRequireWildcard(require("react"));
13
19
 
14
20
  var _classNames = require("../../lib/classNames");
@@ -19,6 +25,7 @@ var _useKeyboardInputTracker = require("../../hooks/useKeyboardInputTracker");
19
25
 
20
26
  var _LocaleProviderContext = require("../LocaleProviderContext/LocaleProviderContext");
21
27
 
28
+ var _excluded = ["day", "today", "selected", "onChange", "hidden", "disabled", "active", "selectionStart", "selectionEnd", "focused", "onEnter", "onLeave", "hinted", "hintedSelectionStart", "hintedSelectionEnd", "sameMonth", "size"];
22
29
  var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
23
30
  var day = _ref.day,
24
31
  today = _ref.today,
@@ -36,7 +43,8 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
36
43
  hintedSelectionStart = _ref.hintedSelectionStart,
37
44
  hintedSelectionEnd = _ref.hintedSelectionEnd,
38
45
  sameMonth = _ref.sameMonth,
39
- size = _ref.size;
46
+ size = _ref.size,
47
+ props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
40
48
  var locale = React.useContext(_LocaleProviderContext.LocaleProviderContext);
41
49
  var ref = React.useRef(null);
42
50
  var onClick = React.useCallback(function () {
@@ -63,7 +71,7 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
63
71
  });
64
72
  }
65
73
 
66
- return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, {
74
+ return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, (0, _extends2.default)({
67
75
  vkuiClass: (0, _classNames.classNames)("CalendarDay", "CalendarDay--size-".concat(size), today && "CalendarDay--today", selected && !disabled && "CalendarDay--selected", active && !disabled && "CalendarDay--active", selectionStart && "CalendarDay--selection-start", selectionEnd && "CalendarDay--selection-end", disabled && "CalendarDay--disabled", !sameMonth && "CalendarDay--not-same-month"),
68
76
  hoverMode: active ? "CalendarDay--active-hover" : "CalendarDay--hover",
69
77
  hasActive: false,
@@ -80,7 +88,7 @@ var CalendarDay = /*#__PURE__*/React.memo(function (_ref) {
80
88
  focusVisibleMode: active ? "outside" : "inside",
81
89
  onEnter: handleEnter,
82
90
  onLeave: handleLeave
83
- }, (0, _jsxRuntime.createScopedElement)("div", {
91
+ }, props), (0, _jsxRuntime.createScopedElement)("div", {
84
92
  vkuiClass: (0, _classNames.classNames)("CalendarDay__hinted", hinted && "CalendarDay__hinted--active", hintedSelectionStart && "CalendarDay__hinted--selection-start", hintedSelectionEnd && "CalendarDay__hinted--selection-end")
85
93
  }, (0, _jsxRuntime.createScopedElement)("div", {
86
94
  vkuiClass: (0, _classNames.classNames)("CalendarDay__inner", active && !disabled && "CalendarDay__inner--active")
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"mappings":";;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AAuBO,IAAMA,WAAW,gBAAGC,KAAK,CAACC,IAAN,CACzB,gBAkBwB;AAAA,MAjBtBC,GAiBsB,QAjBtBA,GAiBsB;AAAA,MAhBtBC,KAgBsB,QAhBtBA,KAgBsB;AAAA,MAftBC,QAesB,QAftBA,QAesB;AAAA,MAdtBC,QAcsB,QAdtBA,QAcsB;AAAA,MAbtBC,MAasB,QAbtBA,MAasB;AAAA,MAZtBC,QAYsB,QAZtBA,QAYsB;AAAA,MAXtBC,MAWsB,QAXtBA,MAWsB;AAAA,MAVtBC,cAUsB,QAVtBA,cAUsB;AAAA,MATtBC,YASsB,QATtBA,YASsB;AAAA,MARtBC,OAQsB,QARtBA,OAQsB;AAAA,MAPtBC,OAOsB,QAPtBA,OAOsB;AAAA,MANtBC,OAMsB,QANtBA,OAMsB;AAAA,MALtBC,MAKsB,QALtBA,MAKsB;AAAA,MAJtBC,oBAIsB,QAJtBA,oBAIsB;AAAA,MAHtBC,kBAGsB,QAHtBA,kBAGsB;AAAA,MAFtBC,SAEsB,QAFtBA,SAEsB;AAAA,MADtBC,IACsB,QADtBA,IACsB;AACtB,MAAMC,MAAM,GAAGnB,KAAK,CAACoB,UAAN,CAAiBC,4CAAjB,CAAf;AACA,MAAMC,GAAG,GAAGtB,KAAK,CAACuB,MAAN,CAA0B,IAA1B,CAAZ;AACA,MAAMC,OAAO,GAAGxB,KAAK,CAACyB,WAAN,CAAkB;AAAA,WAAMpB,QAAQ,CAACH,GAAD,CAAd;AAAA,GAAlB,EAAuC,CAACA,GAAD,EAAMG,QAAN,CAAvC,CAAhB;AACA,MAAMqB,WAAW,GAAG1B,KAAK,CAACyB,WAAN,CAAkB;AAAA,WAAMb,OAAN,aAAMA,OAAN,uBAAMA,OAAO,CAAGV,GAAH,CAAb;AAAA,GAAlB,EAAwC,CAACA,GAAD,EAAMU,OAAN,CAAxC,CAApB;AACA,MAAMe,WAAW,GAAG3B,KAAK,CAACyB,WAAN,CAAkB;AAAA,WAAMZ,OAAN,aAAMA,OAAN,uBAAMA,OAAO,CAAGX,GAAH,CAAb;AAAA,GAAlB,EAAwC,CAACA,GAAD,EAAMW,OAAN,CAAxC,CAApB;AAEAb,EAAAA,KAAK,CAAC4B,SAAN,CAAgB,YAAM;AACpB,QAAIjB,OAAO,IAAIW,GAAG,CAACO,OAAnB,EAA4B;AAC1BP,MAAAA,GAAG,CAACO,OAAJ,CAAYC,aAAZ,CACE,IAAIC,KAAJ,CAAUC,yDAAV,EAA4C;AAAEC,QAAAA,OAAO,EAAE;AAAX,OAA5C,CADF;AAGAX,MAAAA,GAAG,CAACO,OAAJ,CAAYK,KAAZ;AACD;AACF,GAPD,EAOG,CAACvB,OAAD,CAPH;;AASA,MAAIL,MAAJ,EAAY;AACV,WAAO;AAAK,MAAA,SAAS,EAAC;AAAf,MAAP;AACD;;AAED,SACE,qCAAC,kBAAD;AACE,IAAA,SAAS,EAAE,4BACT,aADS,8BAEYY,IAFZ,GAGTf,KAAK,IAAI,oBAHA,EAITC,QAAQ,IAAI,CAACG,QAAb,IAAyB,uBAJhB,EAKTC,MAAM,IAAI,CAACD,QAAX,IAAuB,qBALd,EAMTE,cAAc,IAAI,8BANT,EAOTC,YAAY,IAAI,4BAPP,EAQTH,QAAQ,IAAI,uBARH,EAST,CAACU,SAAD,IAAc,6BATL,CADb;AAYE,IAAA,SAAS,EAAET,MAAM,GAAG,2BAAH,GAAiC,oBAZpD;AAaE,IAAA,SAAS,EAAE,KAbb;AAcE,IAAA,OAAO,EAAEgB,OAdX;AAeE,IAAA,QAAQ,EAAEjB,QAfZ;AAgBE,kBAAY,IAAI4B,IAAI,CAACC,cAAT,CAAwBjB,MAAxB,EAAgC;AAC1CkB,MAAAA,OAAO,EAAE,MADiC;AAE1CC,MAAAA,IAAI,EAAE,SAFoC;AAG1CC,MAAAA,KAAK,EAAE,MAHmC;AAI1CrC,MAAAA,GAAG,EAAE;AAJqC,KAAhC,EAKTsC,MALS,CAKFtC,GALE,CAhBd;AAsBE,IAAA,QAAQ,EAAE,CAAC,CAtBb;AAuBE,IAAA,UAAU,EAAEoB,GAvBd;AAwBE,IAAA,gBAAgB,EAAEd,MAAM,GAAG,SAAH,GAAe,QAxBzC;AAyBE,IAAA,OAAO,EAAEkB,WAzBX;AA0BE,IAAA,OAAO,EAAEC;AA1BX,KA4BE;AACE,IAAA,SAAS,EAAE,4BACT,qBADS,EAETb,MAAM,IAAI,6BAFD,EAGTC,oBAAoB,IAAI,sCAHf,EAITC,kBAAkB,IAAI,oCAJb;AADb,KAQE;AACE,IAAA,SAAS,EAAE,4BACT,oBADS,EAETR,MAAM,IAAI,CAACD,QAAX,IAAuB,4BAFd;AADb,KAME;AAAK,IAAA,SAAS,EAAC;AAAf,KAA0CL,GAAG,CAACuC,OAAJ,EAA1C,CANF,CARF,CA5BF,CADF;AAgDD,CAvFwB,CAApB;;AA0FP1C,WAAW,CAAC2C,WAAZ,GAA0B,aAA1B","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Tappable } from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport interface CalendarDayProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n }: CalendarDayProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n vkuiClass={classNames(\n \"CalendarDay\",\n `CalendarDay--size-${size}`,\n today && \"CalendarDay--today\",\n selected && !disabled && \"CalendarDay--selected\",\n active && !disabled && \"CalendarDay--active\",\n selectionStart && \"CalendarDay--selection-start\",\n selectionEnd && \"CalendarDay--selection-end\",\n disabled && \"CalendarDay--disabled\",\n !sameMonth && \"CalendarDay--not-same-month\"\n )}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__hinted\",\n hinted && \"CalendarDay__hinted--active\",\n hintedSelectionStart && \"CalendarDay__hinted--selection-start\",\n hintedSelectionEnd && \"CalendarDay__hinted--selection-end\"\n )}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__inner\",\n active && !disabled && \"CalendarDay__inner--active\"\n )}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"file":"CalendarDay.js"}
1
+ {"version":3,"file":"CalendarDay.js","names":["CalendarDay","React","memo","day","today","selected","onChange","hidden","disabled","active","selectionStart","selectionEnd","focused","onEnter","onLeave","hinted","hintedSelectionStart","hintedSelectionEnd","sameMonth","size","props","locale","useContext","LocaleProviderContext","ref","useRef","onClick","useCallback","handleEnter","handleLeave","useEffect","current","dispatchEvent","Event","ENABLE_KEYBOARD_INPUT_EVENT_NAME","bubbles","focus","classNames","Intl","DateTimeFormat","weekday","year","month","format","getDate","displayName"],"sources":["../../../../src/components/CalendarDay/CalendarDay.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Tappable, TappableElementProps } from \"../Tappable/Tappable\";\nimport { ENABLE_KEYBOARD_INPUT_EVENT_NAME } from \"../../hooks/useKeyboardInputTracker\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport \"./CalendarDay.css\";\n\nexport type CalendarDayElementProps = Omit<\n TappableElementProps,\n \"onChange\" | \"size\" | \"disabled\" | \"selected\"\n>;\n\nexport interface CalendarDayProps extends CalendarDayElementProps {\n day: Date;\n today?: boolean;\n selected?: boolean;\n selectionStart?: boolean;\n selectionEnd?: boolean;\n hintedSelectionStart?: boolean;\n hintedSelectionEnd?: boolean;\n active?: boolean;\n hidden?: boolean;\n disabled?: boolean;\n focused?: boolean;\n hinted?: boolean;\n sameMonth?: boolean;\n size?: \"s\" | \"m\";\n onChange(value: Date): void;\n onEnter?(value: Date): void;\n onLeave?(value: Date): void;\n}\n\nexport const CalendarDay = React.memo(\n ({\n day,\n today,\n selected,\n onChange,\n hidden,\n disabled,\n active,\n selectionStart,\n selectionEnd,\n focused,\n onEnter,\n onLeave,\n hinted,\n hintedSelectionStart,\n hintedSelectionEnd,\n sameMonth,\n size,\n ...props\n }: CalendarDayProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLElement>(null);\n const onClick = React.useCallback(() => onChange(day), [day, onChange]);\n const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);\n const handleLeave = React.useCallback(() => onLeave?.(day), [day, onLeave]);\n\n React.useEffect(() => {\n if (focused && ref.current) {\n ref.current.dispatchEvent(\n new Event(ENABLE_KEYBOARD_INPUT_EVENT_NAME, { bubbles: true })\n );\n ref.current.focus();\n }\n }, [focused]);\n\n if (hidden) {\n return <div vkuiClass=\"CalendarDay__hidden\"></div>;\n }\n\n return (\n <Tappable\n vkuiClass={classNames(\n \"CalendarDay\",\n `CalendarDay--size-${size}`,\n today && \"CalendarDay--today\",\n selected && !disabled && \"CalendarDay--selected\",\n active && !disabled && \"CalendarDay--active\",\n selectionStart && \"CalendarDay--selection-start\",\n selectionEnd && \"CalendarDay--selection-end\",\n disabled && \"CalendarDay--disabled\",\n !sameMonth && \"CalendarDay--not-same-month\"\n )}\n hoverMode={active ? \"CalendarDay--active-hover\" : \"CalendarDay--hover\"}\n hasActive={false}\n onClick={onClick}\n disabled={disabled}\n aria-label={new Intl.DateTimeFormat(locale, {\n weekday: \"long\",\n year: \"numeric\",\n month: \"long\",\n day: \"numeric\",\n }).format(day)}\n tabIndex={-1}\n getRootRef={ref}\n focusVisibleMode={active ? \"outside\" : \"inside\"}\n onEnter={handleEnter}\n onLeave={handleLeave}\n {...props}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__hinted\",\n hinted && \"CalendarDay__hinted--active\",\n hintedSelectionStart && \"CalendarDay__hinted--selection-start\",\n hintedSelectionEnd && \"CalendarDay__hinted--selection-end\"\n )}\n >\n <div\n vkuiClass={classNames(\n \"CalendarDay__inner\",\n active && !disabled && \"CalendarDay__inner--active\"\n )}\n >\n <div vkuiClass=\"CalendarDay__day-number\">{day.getDate()}</div>\n </div>\n </div>\n </Tappable>\n );\n }\n);\n\nCalendarDay.displayName = \"CalendarDay\";\n"],"mappings":"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"}
@@ -31,7 +31,7 @@ var _classNames = require("../../lib/classNames");
31
31
 
32
32
  var _Caption = require("../Typography/Caption/Caption");
33
33
 
34
- var _excluded = ["viewDate", "value", "weekStartsOn", "onDayChange", "isDaySelected", "isDayActive", "isDaySelectionEnd", "isDaySelectionStart", "onDayEnter", "onDayLeave", "isDayHinted", "isHintedDaySelectionStart", "isHintedDaySelectionEnd", "isDayFocused", "isDayDisabled", "size", "showNeighboringMonth"];
34
+ var _excluded = ["viewDate", "value", "weekStartsOn", "onDayChange", "isDaySelected", "isDayActive", "isDaySelectionEnd", "isDaySelectionStart", "onDayEnter", "onDayLeave", "isDayHinted", "isHintedDaySelectionStart", "isHintedDaySelectionEnd", "isDayFocused", "isDayDisabled", "size", "showNeighboringMonth", "dayProps"];
35
35
 
36
36
  var CalendarDays = function CalendarDays(_ref) {
37
37
  var viewDate = _ref.viewDate,
@@ -52,6 +52,7 @@ var CalendarDays = function CalendarDays(_ref) {
52
52
  size = _ref.size,
53
53
  _ref$showNeighboringM = _ref.showNeighboringMonth,
54
54
  showNeighboringMonth = _ref$showNeighboringM === void 0 ? false : _ref$showNeighboringM,
55
+ dayProps = _ref.dayProps,
55
56
  props = (0, _objectWithoutProperties2.default)(_ref, _excluded);
56
57
  var locale = React.useContext(_LocaleProviderContext.LocaleProviderContext);
57
58
  var ref = React.useRef(null);
@@ -89,7 +90,7 @@ var CalendarDays = function CalendarDays(_ref) {
89
90
  key: i
90
91
  }, week.map(function (day, i) {
91
92
  var sameMonth = (0, _date.isSameMonth)(day, viewDate);
92
- return (0, _jsxRuntime.createScopedElement)(_CalendarDay.CalendarDay, {
93
+ return (0, _jsxRuntime.createScopedElement)(_CalendarDay.CalendarDay, (0, _extends2.default)({
93
94
  key: day.toISOString(),
94
95
  day: day,
95
96
  today: (0, _date.isSameDay)(day, now),
@@ -108,7 +109,7 @@ var CalendarDays = function CalendarDays(_ref) {
108
109
  hinted: isDayHinted === null || isDayHinted === void 0 ? void 0 : isDayHinted(day),
109
110
  sameMonth: sameMonth,
110
111
  size: size
111
- });
112
+ }, dayProps));
112
113
  }));
113
114
  }));
114
115
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/CalendarDays/CalendarDays.tsx"],"names":["CalendarDays","viewDate","value","weekStartsOn","onDayChange","isDaySelected","isDayActive","isDaySelectionEnd","isDaySelectionStart","onDayEnter","onDayLeave","isDayHinted","isHintedDaySelectionStart","isHintedDaySelectionEnd","isDayFocused","isDayDisabled","size","showNeighboringMonth","props","locale","React","useContext","LocaleProviderContext","ref","useRef","useState","Date","now","weeks","useMemo","daysNames","handleDayChange","useCallback","date","current","focus","map","dayName","week","i","day","sameMonth","toISOString"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { isSameDay, isSameMonth } from \"../../lib/date\";\nimport { CalendarDay } from \"../CalendarDay/CalendarDay\";\nimport { getDaysNames, getWeeks } from \"../../lib/calendar\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport \"./CalendarDays.css\";\n\nexport interface CalendarDaysProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n value?: Date | Array<Date | null>;\n viewDate: Date;\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n onDayChange(value: Date): void;\n isDayDisabled(value: Date): boolean;\n isDaySelectionStart(value: Date, dayOfWeek: number): boolean;\n isDaySelectionEnd(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionStart?(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionEnd?(value: Date, dayOfWeek: number): boolean;\n isDayActive(value: Date): boolean;\n isDayHinted?(value: Date): boolean;\n isDaySelected?(value: Date): boolean;\n isDayFocused(value: Date): boolean;\n onDayEnter?(value: Date): void;\n onDayLeave?(value: Date): void;\n}\n\nexport const CalendarDays = ({\n viewDate,\n value,\n weekStartsOn,\n onDayChange,\n isDaySelected,\n isDayActive,\n isDaySelectionEnd,\n isDaySelectionStart,\n onDayEnter,\n onDayLeave,\n isDayHinted,\n isHintedDaySelectionStart,\n isHintedDaySelectionEnd,\n isDayFocused,\n isDayDisabled,\n size,\n showNeighboringMonth = false,\n ...props\n}: CalendarDaysProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLDivElement>(null);\n const [now] = React.useState(new Date());\n\n const weeks = React.useMemo(\n () => getWeeks(viewDate, weekStartsOn),\n [weekStartsOn, viewDate]\n );\n\n const daysNames = React.useMemo(\n () => getDaysNames(now, weekStartsOn, locale),\n [locale, now, weekStartsOn]\n );\n\n const handleDayChange = React.useCallback(\n (date: Date) => {\n onDayChange(date);\n\n ref.current?.focus();\n },\n [onDayChange]\n );\n\n return (\n <div {...props} vkuiClass=\"CalendarDays\" ref={ref}>\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n >\n {daysNames.map((dayName) => (\n <Caption key={dayName} level=\"1\" vkuiClass=\"CalendarDays__weekday\">\n {dayName}\n </Caption>\n ))}\n </div>\n\n {weeks.map((week, i) => (\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n key={i}\n >\n {week.map((day, i) => {\n const sameMonth = isSameMonth(day, viewDate);\n return (\n <CalendarDay\n key={day.toISOString()}\n day={day}\n today={isSameDay(day, now)}\n active={isDayActive(day)}\n onChange={handleDayChange}\n hidden={!showNeighboringMonth && !sameMonth}\n disabled={isDayDisabled(day)}\n selectionStart={isDaySelectionStart(day, i)}\n selectionEnd={isDaySelectionEnd(day, i)}\n hintedSelectionStart={isHintedDaySelectionStart?.(day, i)}\n hintedSelectionEnd={isHintedDaySelectionEnd?.(day, i)}\n selected={isDaySelected?.(day)}\n focused={isDayFocused(day)}\n onEnter={onDayEnter}\n onLeave={onDayLeave}\n hinted={isDayHinted?.(day)}\n sameMonth={sameMonth}\n size={size}\n />\n );\n })}\n </div>\n ))}\n </div>\n );\n};\n"],"file":"CalendarDays.js"}
1
+ {"version":3,"file":"CalendarDays.js","names":["CalendarDays","viewDate","value","weekStartsOn","onDayChange","isDaySelected","isDayActive","isDaySelectionEnd","isDaySelectionStart","onDayEnter","onDayLeave","isDayHinted","isHintedDaySelectionStart","isHintedDaySelectionEnd","isDayFocused","isDayDisabled","size","showNeighboringMonth","dayProps","props","locale","React","useContext","LocaleProviderContext","ref","useRef","useState","Date","now","weeks","useMemo","getWeeks","daysNames","getDaysNames","handleDayChange","useCallback","date","current","focus","classNames","map","dayName","week","i","day","sameMonth","isSameMonth","toISOString","isSameDay"],"sources":["../../../../src/components/CalendarDays/CalendarDays.tsx"],"sourcesContent":["import * as React from \"react\";\nimport { isSameDay, isSameMonth } from \"../../lib/date\";\nimport {\n CalendarDay,\n CalendarDayElementProps,\n} from \"../CalendarDay/CalendarDay\";\nimport { getDaysNames, getWeeks } from \"../../lib/calendar\";\nimport { LocaleProviderContext } from \"../LocaleProviderContext/LocaleProviderContext\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport \"./CalendarDays.css\";\n\nexport interface CalendarDaysProps\n extends Omit<React.HTMLAttributes<HTMLDivElement>, \"onChange\"> {\n value?: Date | Array<Date | null>;\n viewDate: Date;\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n showNeighboringMonth?: boolean;\n size?: \"s\" | \"m\";\n dayProps?: CalendarDayElementProps;\n onDayChange(value: Date): void;\n isDayDisabled(value: Date): boolean;\n isDaySelectionStart(value: Date, dayOfWeek: number): boolean;\n isDaySelectionEnd(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionStart?(value: Date, dayOfWeek: number): boolean;\n isHintedDaySelectionEnd?(value: Date, dayOfWeek: number): boolean;\n isDayActive(value: Date): boolean;\n isDayHinted?(value: Date): boolean;\n isDaySelected?(value: Date): boolean;\n isDayFocused(value: Date): boolean;\n onDayEnter?(value: Date): void;\n onDayLeave?(value: Date): void;\n}\n\nexport const CalendarDays = ({\n viewDate,\n value,\n weekStartsOn,\n onDayChange,\n isDaySelected,\n isDayActive,\n isDaySelectionEnd,\n isDaySelectionStart,\n onDayEnter,\n onDayLeave,\n isDayHinted,\n isHintedDaySelectionStart,\n isHintedDaySelectionEnd,\n isDayFocused,\n isDayDisabled,\n size,\n showNeighboringMonth = false,\n dayProps,\n ...props\n}: CalendarDaysProps) => {\n const locale = React.useContext(LocaleProviderContext);\n const ref = React.useRef<HTMLDivElement>(null);\n const [now] = React.useState(new Date());\n\n const weeks = React.useMemo(\n () => getWeeks(viewDate, weekStartsOn),\n [weekStartsOn, viewDate]\n );\n\n const daysNames = React.useMemo(\n () => getDaysNames(now, weekStartsOn, locale),\n [locale, now, weekStartsOn]\n );\n\n const handleDayChange = React.useCallback(\n (date: Date) => {\n onDayChange(date);\n\n ref.current?.focus();\n },\n [onDayChange]\n );\n\n return (\n <div {...props} vkuiClass=\"CalendarDays\" ref={ref}>\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n >\n {daysNames.map((dayName) => (\n <Caption key={dayName} level=\"1\" vkuiClass=\"CalendarDays__weekday\">\n {dayName}\n </Caption>\n ))}\n </div>\n\n {weeks.map((week, i) => (\n <div\n vkuiClass={classNames(\n \"CalendarDays__row\",\n `CalendarDays__row--size-${size}`\n )}\n key={i}\n >\n {week.map((day, i) => {\n const sameMonth = isSameMonth(day, viewDate);\n return (\n <CalendarDay\n key={day.toISOString()}\n day={day}\n today={isSameDay(day, now)}\n active={isDayActive(day)}\n onChange={handleDayChange}\n hidden={!showNeighboringMonth && !sameMonth}\n disabled={isDayDisabled(day)}\n selectionStart={isDaySelectionStart(day, i)}\n selectionEnd={isDaySelectionEnd(day, i)}\n hintedSelectionStart={isHintedDaySelectionStart?.(day, i)}\n hintedSelectionEnd={isHintedDaySelectionEnd?.(day, i)}\n selected={isDaySelected?.(day)}\n focused={isDayFocused(day)}\n onEnter={onDayEnter}\n onLeave={onDayLeave}\n hinted={isDayHinted?.(day)}\n sameMonth={sameMonth}\n size={size}\n {...dayProps}\n />\n );\n })}\n </div>\n ))}\n </div>\n );\n};\n"],"mappings":"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"}