@vkontakte/vkui 8.1.2 → 8.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/ActionSheet/ActionSheet.d.ts +5 -4
- package/dist/components/ActionSheet/ActionSheet.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +2 -1
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +3 -3
- package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -2
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts.map +1 -1
- package/dist/components/AppRoot/AppRoot.js +0 -6
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/AppRootContext.d.ts +0 -1
- package/dist/components/AppRoot/AppRootContext.d.ts.map +1 -1
- package/dist/components/AppRoot/AppRootContext.js +0 -1
- package/dist/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +1 -1
- package/dist/components/Calendar/Calendar.js +2 -1
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.d.ts.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.js +4 -2
- package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.d.ts.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.js +2 -2
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.d.ts.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js +4 -2
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +2 -2
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.d.ts +1 -1
- package/dist/components/CalendarTime/CalendarTime.d.ts.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.js +61 -50
- package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTimePicker.d.ts +11 -7
- package/dist/components/CalendarTime/CalendarTimePicker.d.ts.map +1 -1
- package/dist/components/CalendarTime/CalendarTimePicker.js +108 -48
- package/dist/components/CalendarTime/CalendarTimePicker.js.map +1 -1
- package/dist/components/CalendarTime/ComboBox.d.ts +25 -0
- package/dist/components/CalendarTime/ComboBox.d.ts.map +1 -0
- package/dist/components/CalendarTime/ComboBox.js +112 -0
- package/dist/components/CalendarTime/ComboBox.js.map +1 -0
- package/dist/components/CardScroll/CardScroll.d.ts.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +2 -2
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/CarouselBase/CarouselBase.d.ts.map +1 -1
- package/dist/components/CarouselBase/CarouselBase.js +3 -1
- package/dist/components/CarouselBase/CarouselBase.js.map +1 -1
- package/dist/components/ChipsSelect/useChipsSelect.d.ts.map +1 -1
- package/dist/components/ChipsSelect/useChipsSelect.js +2 -1
- package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +8 -4
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.d.ts.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.js +5 -1
- package/dist/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderSubContexts.d.ts +15 -0
- package/dist/components/ConfigProvider/ConfigProviderSubContexts.d.ts.map +1 -0
- package/dist/components/ConfigProvider/ConfigProviderSubContexts.js +25 -0
- package/dist/components/ConfigProvider/ConfigProviderSubContexts.js.map +1 -0
- package/dist/components/ContentBadge/ContentBadge.d.ts +14 -1
- package/dist/components/ContentBadge/ContentBadge.d.ts.map +1 -1
- package/dist/components/ContentBadge/ContentBadge.js +39 -1
- package/dist/components/ContentBadge/ContentBadge.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +16 -10
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/DateInput.js +4 -3
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +2 -2
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts.map +1 -1
- package/dist/components/Epic/ScrollSaver.js +1 -0
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/FixedLayout/ParentWidthWrapper.d.ts +6 -0
- package/dist/components/FixedLayout/ParentWidthWrapper.d.ts.map +1 -0
- package/dist/components/FixedLayout/ParentWidthWrapper.js +43 -0
- package/dist/components/FixedLayout/ParentWidthWrapper.js.map +1 -0
- package/dist/components/Flex/Flex.d.ts +7 -4
- package/dist/components/Flex/Flex.d.ts.map +1 -1
- package/dist/components/Flex/Flex.js +5 -2
- package/dist/components/Flex/Flex.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.js +3 -1
- package/dist/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.js +6 -2
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/NavTransitionContext/NavTransitionContext.d.ts +2 -1
- package/dist/components/NavTransitionContext/NavTransitionContext.d.ts.map +1 -1
- package/dist/components/NavTransitionContext/NavTransitionContext.js +8 -4
- package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js +4 -5
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts.map +1 -1
- package/dist/components/Popper/Popper.js +7 -4
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +8 -4
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Root/Root.d.ts +1 -1
- package/dist/components/Root/Root.d.ts.map +1 -1
- package/dist/components/Root/Root.js +43 -37
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/SimpleGrid/SimpleGrid.d.ts +9 -8
- package/dist/components/SimpleGrid/SimpleGrid.d.ts.map +1 -1
- package/dist/components/SimpleGrid/SimpleGrid.js +9 -2
- package/dist/components/SimpleGrid/SimpleGrid.js.map +1 -1
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/components/Skeleton/Skeleton.js +3 -4
- package/dist/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts.map +1 -1
- package/dist/components/Snackbar/Snackbar.js +6 -3
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts +1 -1
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.d.ts +10 -0
- package/dist/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.d.ts.map +1 -0
- package/dist/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.js +54 -0
- package/dist/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.js.map +1 -0
- package/dist/components/Spinner/ExpressiveSpinner/icons.d.ts +18 -0
- package/dist/components/Spinner/ExpressiveSpinner/icons.d.ts.map +1 -0
- package/dist/components/Spinner/ExpressiveSpinner/icons.js +79 -0
- package/dist/components/Spinner/ExpressiveSpinner/icons.js.map +1 -0
- package/dist/components/Spinner/SvgIcon.d.ts +14 -0
- package/dist/components/Spinner/SvgIcon.d.ts.map +1 -0
- package/dist/components/Spinner/SvgIcon.js +20 -0
- package/dist/components/Spinner/SvgIcon.js.map +1 -0
- package/dist/components/Spinner/icons.d.ts +1 -1
- package/dist/components/Spinner/icons.d.ts.map +1 -1
- package/dist/components/Spinner/icons.js +10 -23
- package/dist/components/Spinner/icons.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts +3 -3
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts.map +1 -1
- package/dist/components/TabsItem/TabsItem.js +2 -5
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +2 -2
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/View/View.d.ts.map +1 -1
- package/dist/components/View/View.js +50 -53
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts.map +1 -1
- package/dist/components/View/ViewInfinite.js +34 -37
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts +15 -1
- package/dist/components/WriteBar/WriteBar.d.ts.map +1 -1
- package/dist/components/WriteBar/WriteBar.js +35 -63
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.d.ts +5 -0
- package/dist/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.d.ts.map +1 -0
- package/dist/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.js +15 -0
- package/dist/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.js.map +1 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormField.d.ts +8 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormField.d.ts.map +1 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormField.js +16 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormField.js.map +1 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.d.ts +5 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.d.ts.map +1 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.js +15 -0
- package/dist/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.js.map +1 -0
- package/dist/components/WriteBar/WriteBarRoot/WriteBarRoot.d.ts +10 -0
- package/dist/components/WriteBar/WriteBarRoot/WriteBarRoot.d.ts.map +1 -0
- package/dist/components/WriteBar/WriteBarRoot/WriteBarRoot.js +16 -0
- package/dist/components/WriteBar/WriteBarRoot/WriteBarRoot.js.map +1 -0
- package/dist/components/WriteBar/WriteBarTextarea/WriteBarTextarea.d.ts +10 -0
- package/dist/components/WriteBar/WriteBarTextarea/WriteBarTextarea.d.ts.map +1 -0
- package/dist/components/WriteBar/WriteBarTextarea/WriteBarTextarea.js +39 -0
- package/dist/components/WriteBar/WriteBarTextarea/WriteBarTextarea.js.map +1 -0
- package/dist/components.css +1 -1
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +2 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -2
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +0 -6
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRootContext.js +0 -1
- package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.js +2 -1
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -2
- package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -2
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +4 -2
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.js +61 -50
- package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.module.css +38 -0
- package/dist/cssm/components/CalendarTime/CalendarTimePicker.js +108 -48
- package/dist/cssm/components/CalendarTime/CalendarTimePicker.js.map +1 -1
- package/dist/cssm/components/CalendarTime/ComboBox.js +113 -0
- package/dist/cssm/components/CalendarTime/ComboBox.js.map +1 -0
- package/dist/cssm/components/CardScroll/CardScroll.js +2 -2
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/CarouselBase/CarouselBase.js +3 -1
- package/dist/cssm/components/CarouselBase/CarouselBase.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js +2 -1
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +8 -4
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js +5 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderOverride.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderSubContexts.js +25 -0
- package/dist/cssm/components/ConfigProvider/ConfigProviderSubContexts.js.map +1 -0
- package/dist/cssm/components/ContentBadge/ContentBadge.js +39 -1
- package/dist/cssm/components/ContentBadge/ContentBadge.js.map +1 -1
- package/dist/cssm/components/ContentBadge/ContentBadge.module.css +88 -90
- package/dist/cssm/components/CustomSelect/CustomSelect.js +16 -10
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.js +4 -3
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +2 -2
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.js +1 -0
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/FixedLayout/ParentWidthWrapper.js +43 -0
- package/dist/cssm/components/FixedLayout/ParentWidthWrapper.js.map +1 -0
- package/dist/cssm/components/Flex/Flex.js +5 -2
- package/dist/cssm/components/Flex/Flex.js.map +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.module.css +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.js +3 -1
- package/dist/cssm/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +6 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js +8 -4
- package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +4 -5
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +7 -4
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +8 -4
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +1 -1
- package/dist/cssm/components/Root/Root.js +43 -37
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/SimpleGrid/SimpleGrid.js +9 -2
- package/dist/cssm/components/SimpleGrid/SimpleGrid.js.map +1 -1
- package/dist/cssm/components/Skeleton/Skeleton.js +3 -4
- package/dist/cssm/components/Skeleton/Skeleton.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.js +6 -3
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.js +56 -0
- package/dist/cssm/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.js.map +1 -0
- package/dist/cssm/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.module.css +13 -0
- package/dist/cssm/components/Spinner/ExpressiveSpinner/icons.js +79 -0
- package/dist/cssm/components/Spinner/ExpressiveSpinner/icons.js.map +1 -0
- package/dist/cssm/components/Spinner/SvgIcon.js +20 -0
- package/dist/cssm/components/Spinner/SvgIcon.js.map +1 -0
- package/dist/cssm/components/Spinner/icons.js +10 -23
- package/dist/cssm/components/Spinner/icons.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +2 -5
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/View/View.js +50 -53
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +34 -37
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.js +35 -64
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.js +16 -0
- package/dist/cssm/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.js.map +1 -0
- package/dist/cssm/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.module.css +12 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormField.js +17 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormField.js.map +1 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormField.module.css +18 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.js +16 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.js.map +1 -0
- package/dist/cssm/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.module.css +3 -0
- package/dist/cssm/components/WriteBar/WriteBarRoot/WriteBarRoot.js +17 -0
- package/dist/cssm/components/WriteBar/WriteBarRoot/WriteBarRoot.js.map +1 -0
- package/dist/cssm/components/WriteBar/WriteBarRoot/WriteBarRoot.module.css +15 -0
- package/dist/cssm/components/WriteBar/WriteBarTextarea/WriteBarTextarea.js +40 -0
- package/dist/cssm/components/WriteBar/WriteBarTextarea/WriteBarTextarea.js.map +1 -0
- package/dist/cssm/components/WriteBar/WriteBarTextarea/WriteBarTextarea.module.css +43 -0
- package/dist/cssm/helpers/math.js +6 -0
- package/dist/cssm/helpers/math.js.map +1 -1
- package/dist/cssm/hoc/withPlatform.js +3 -2
- package/dist/cssm/hoc/withPlatform.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivityConditionalRender/types.js.map +1 -1
- package/dist/cssm/hooks/useAnimationFrame.js +40 -0
- package/dist/cssm/hooks/useAnimationFrame.js.map +1 -0
- package/dist/cssm/hooks/useAutoFocus.js +4 -1
- package/dist/cssm/hooks/useAutoFocus.js.map +1 -1
- package/dist/cssm/hooks/useColorScheme.js +3 -3
- package/dist/cssm/hooks/useColorScheme.js.map +1 -1
- package/dist/cssm/hooks/useConfigDirection.js +3 -3
- package/dist/cssm/hooks/useConfigDirection.js.map +1 -1
- package/dist/cssm/hooks/useDateInput.js +1 -2
- package/dist/cssm/hooks/useDateInput.js.map +1 -1
- package/dist/cssm/hooks/useFocusTrap/useAutoFocus.js +1 -0
- package/dist/cssm/hooks/useFocusTrap/useAutoFocus.js.map +1 -1
- package/dist/cssm/hooks/useFocusTrap/useFocusTrap.js +2 -0
- package/dist/cssm/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
- package/dist/cssm/hooks/useFocusVisible.js +8 -13
- package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
- package/dist/cssm/hooks/useFocusWithin.js +5 -4
- package/dist/cssm/hooks/useFocusWithin.js.map +1 -1
- package/dist/cssm/hooks/useGlobalEscKeyDown.js +17 -15
- package/dist/cssm/hooks/useGlobalEscKeyDown.js.map +1 -1
- package/dist/cssm/hooks/useGlobalOnClickOutside.js +6 -2
- package/dist/cssm/hooks/useGlobalOnClickOutside.js.map +1 -1
- package/dist/cssm/hooks/useKeyboardInputTracker.js +48 -41
- package/dist/cssm/hooks/useKeyboardInputTracker.js.map +1 -1
- package/dist/cssm/hooks/useLatestRef.js +13 -0
- package/dist/cssm/hooks/useLatestRef.js.map +1 -0
- package/dist/cssm/hooks/useLocale.js +3 -3
- package/dist/cssm/hooks/useLocale.js.map +1 -1
- package/dist/cssm/hooks/useMediaQueryMatch.js +1 -0
- package/dist/cssm/hooks/useMediaQueryMatch.js.map +1 -1
- package/dist/cssm/hooks/useMutationObserver.js +3 -3
- package/dist/cssm/hooks/useMutationObserver.js.map +1 -1
- package/dist/cssm/hooks/usePlatform.js +3 -3
- package/dist/cssm/hooks/usePlatform.js.map +1 -1
- package/dist/cssm/hooks/useResizeObserver.js +4 -6
- package/dist/cssm/hooks/useResizeObserver.js.map +1 -1
- package/dist/cssm/hooks/useSyncHTMLWithBaseVKUIClasses.js +2 -1
- package/dist/cssm/hooks/useSyncHTMLWithBaseVKUIClasses.js.map +1 -1
- package/dist/cssm/hooks/useSyncHTMLWithTokens.js +3 -1
- package/dist/cssm/hooks/useSyncHTMLWithTokens.js.map +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js +13 -15
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/index.js +1 -0
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/array.js +18 -0
- package/dist/cssm/lib/array.js.map +1 -0
- package/dist/cssm/lib/curve.js +21 -0
- package/dist/cssm/lib/curve.js.map +1 -0
- package/dist/cssm/lib/dom.js +5 -2
- package/dist/cssm/lib/dom.js.map +1 -1
- package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +4 -4
- package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
- package/dist/cssm/lib/fx.js +4 -55
- package/dist/cssm/lib/fx.js.map +1 -1
- package/dist/cssm/lib/layouts/index.js.map +1 -1
- package/dist/cssm/lib/layouts/layoutProps.js +11 -0
- package/dist/cssm/lib/layouts/layoutProps.js.map +1 -1
- package/dist/cssm/lib/layouts/resolveLayoutProps.js +13 -11
- package/dist/cssm/lib/layouts/resolveLayoutProps.js.map +1 -1
- package/dist/cssm/lib/layouts/types.js.map +1 -1
- package/dist/cssm/lib/material/shapes/Shape.js +18 -0
- package/dist/cssm/lib/material/shapes/Shape.js.map +1 -0
- package/dist/cssm/lib/material/shapes/shapes.js +2250 -0
- package/dist/cssm/lib/material/shapes/shapes.js.map +1 -0
- package/dist/cssm/lib/math.js +31 -0
- package/dist/cssm/lib/math.js.map +1 -0
- package/dist/cssm/lib/svg/path/approximate.js +57 -0
- package/dist/cssm/lib/svg/path/approximate.js.map +1 -0
- package/dist/cssm/lib/svg/path/interpolate.js +121 -0
- package/dist/cssm/lib/svg/path/interpolate.js.map +1 -0
- package/dist/cssm/lib/svg/path/path.js +50 -0
- package/dist/cssm/lib/svg/path/path.js.map +1 -0
- package/dist/cssm/lib/svg/path/point.js +3 -0
- package/dist/cssm/lib/svg/path/point.js.map +1 -0
- package/dist/cssm/lib/svg/path/transform.js +110 -0
- package/dist/cssm/lib/svg/path/transform.js.map +1 -0
- package/dist/cssm/lib/tokens/useTokenClassName.js +4 -1
- package/dist/cssm/lib/tokens/useTokenClassName.js.map +1 -1
- package/dist/cssm/lib/touch/UIPanGestureRecognizer.js +2 -2
- package/dist/cssm/lib/touch/UIPanGestureRecognizer.js.map +1 -1
- package/dist/cssm/styles/layout.css +273 -0
- package/dist/cssm/types.js +1 -4
- package/dist/cssm/types.js.map +1 -1
- package/dist/helpers/math.d.ts +4 -0
- package/dist/helpers/math.d.ts.map +1 -1
- package/dist/helpers/math.js +6 -0
- package/dist/helpers/math.js.map +1 -1
- package/dist/hoc/withPlatform.d.ts +1 -1
- package/dist/hoc/withPlatform.d.ts.map +1 -1
- package/dist/hoc/withPlatform.js +3 -2
- package/dist/hoc/withPlatform.js.map +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/types.d.ts +2 -2
- package/dist/hooks/useAdaptivityConditionalRender/types.js.map +1 -1
- package/dist/hooks/useAnimationFrame.d.ts +16 -0
- package/dist/hooks/useAnimationFrame.d.ts.map +1 -0
- package/dist/hooks/useAnimationFrame.js +40 -0
- package/dist/hooks/useAnimationFrame.js.map +1 -0
- package/dist/hooks/useAutoFocus.js +4 -1
- package/dist/hooks/useAutoFocus.js.map +1 -1
- package/dist/hooks/useColorScheme.d.ts.map +1 -1
- package/dist/hooks/useColorScheme.js +3 -3
- package/dist/hooks/useColorScheme.js.map +1 -1
- package/dist/hooks/useConfigDirection.d.ts.map +1 -1
- package/dist/hooks/useConfigDirection.js +3 -3
- package/dist/hooks/useConfigDirection.js.map +1 -1
- package/dist/hooks/useDateInput.d.ts.map +1 -1
- package/dist/hooks/useDateInput.js +1 -2
- package/dist/hooks/useDateInput.js.map +1 -1
- package/dist/hooks/useFocusTrap/useAutoFocus.js +1 -0
- package/dist/hooks/useFocusTrap/useAutoFocus.js.map +1 -1
- package/dist/hooks/useFocusTrap/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusTrap/useFocusTrap.js +2 -0
- package/dist/hooks/useFocusTrap/useFocusTrap.js.map +1 -1
- package/dist/hooks/useFocusVisible.d.ts.map +1 -1
- package/dist/hooks/useFocusVisible.js +8 -13
- package/dist/hooks/useFocusVisible.js.map +1 -1
- package/dist/hooks/useFocusWithin.d.ts.map +1 -1
- package/dist/hooks/useFocusWithin.js +5 -4
- package/dist/hooks/useFocusWithin.js.map +1 -1
- package/dist/hooks/useGlobalEscKeyDown.d.ts.map +1 -1
- package/dist/hooks/useGlobalEscKeyDown.js +17 -15
- package/dist/hooks/useGlobalEscKeyDown.js.map +1 -1
- package/dist/hooks/useGlobalOnClickOutside.d.ts.map +1 -1
- package/dist/hooks/useGlobalOnClickOutside.js +6 -2
- package/dist/hooks/useGlobalOnClickOutside.js.map +1 -1
- package/dist/hooks/useKeyboardInputTracker.d.ts +1 -19
- package/dist/hooks/useKeyboardInputTracker.d.ts.map +1 -1
- package/dist/hooks/useKeyboardInputTracker.js +48 -41
- package/dist/hooks/useKeyboardInputTracker.js.map +1 -1
- package/dist/hooks/useLatestRef.d.ts +3 -0
- package/dist/hooks/useLatestRef.d.ts.map +1 -0
- package/dist/hooks/useLatestRef.js +13 -0
- package/dist/hooks/useLatestRef.js.map +1 -0
- package/dist/hooks/useLocale.d.ts.map +1 -1
- package/dist/hooks/useLocale.js +3 -3
- package/dist/hooks/useLocale.js.map +1 -1
- package/dist/hooks/useMediaQueryMatch.js +1 -0
- package/dist/hooks/useMediaQueryMatch.js.map +1 -1
- package/dist/hooks/useMutationObserver.d.ts +1 -2
- package/dist/hooks/useMutationObserver.d.ts.map +1 -1
- package/dist/hooks/useMutationObserver.js +3 -3
- package/dist/hooks/useMutationObserver.js.map +1 -1
- package/dist/hooks/usePlatform.d.ts.map +1 -1
- package/dist/hooks/usePlatform.js +3 -3
- package/dist/hooks/usePlatform.js.map +1 -1
- package/dist/hooks/useResizeObserver.d.ts.map +1 -1
- package/dist/hooks/useResizeObserver.js +4 -6
- package/dist/hooks/useResizeObserver.js.map +1 -1
- package/dist/hooks/useSyncHTMLWithBaseVKUIClasses.js +2 -1
- package/dist/hooks/useSyncHTMLWithBaseVKUIClasses.js.map +1 -1
- package/dist/hooks/useSyncHTMLWithTokens.js +3 -1
- package/dist/hooks/useSyncHTMLWithTokens.js.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.d.ts.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.js +13 -15
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/array.d.ts +17 -0
- package/dist/lib/array.d.ts.map +1 -0
- package/dist/lib/array.js +18 -0
- package/dist/lib/array.js.map +1 -0
- package/dist/lib/curve.d.ts +9 -0
- package/dist/lib/curve.d.ts.map +1 -0
- package/dist/lib/curve.js +21 -0
- package/dist/lib/curve.js.map +1 -0
- package/dist/lib/dom.d.ts +2 -1
- package/dist/lib/dom.d.ts.map +1 -1
- package/dist/lib/dom.js +5 -2
- package/dist/lib/dom.js.map +1 -1
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +4 -4
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
- package/dist/lib/fx.d.ts +1 -8
- package/dist/lib/fx.d.ts.map +1 -1
- package/dist/lib/fx.js +4 -55
- package/dist/lib/fx.js.map +1 -1
- package/dist/lib/layouts/index.d.ts +1 -1
- package/dist/lib/layouts/index.d.ts.map +1 -1
- package/dist/lib/layouts/index.js.map +1 -1
- package/dist/lib/layouts/layoutProps.d.ts +7 -0
- package/dist/lib/layouts/layoutProps.d.ts.map +1 -1
- package/dist/lib/layouts/layoutProps.js +11 -0
- package/dist/lib/layouts/layoutProps.js.map +1 -1
- package/dist/lib/layouts/resolveLayoutProps.d.ts.map +1 -1
- package/dist/lib/layouts/resolveLayoutProps.js +13 -11
- package/dist/lib/layouts/resolveLayoutProps.js.map +1 -1
- package/dist/lib/layouts/types.d.ts +29 -0
- package/dist/lib/layouts/types.d.ts.map +1 -1
- package/dist/lib/layouts/types.js.map +1 -1
- package/dist/lib/material/shapes/Shape.d.ts +8 -0
- package/dist/lib/material/shapes/Shape.d.ts.map +1 -0
- package/dist/lib/material/shapes/Shape.js +18 -0
- package/dist/lib/material/shapes/Shape.js.map +1 -0
- package/dist/lib/material/shapes/shapes.d.ts +43 -0
- package/dist/lib/material/shapes/shapes.d.ts.map +1 -0
- package/dist/lib/material/shapes/shapes.js +2250 -0
- package/dist/lib/material/shapes/shapes.js.map +1 -0
- package/dist/lib/math.d.ts +23 -0
- package/dist/lib/math.d.ts.map +1 -0
- package/dist/lib/math.js +31 -0
- package/dist/lib/math.js.map +1 -0
- package/dist/lib/svg/path/approximate.d.ts +21 -0
- package/dist/lib/svg/path/approximate.d.ts.map +1 -0
- package/dist/lib/svg/path/approximate.js +57 -0
- package/dist/lib/svg/path/approximate.js.map +1 -0
- package/dist/lib/svg/path/interpolate.d.ts +5 -0
- package/dist/lib/svg/path/interpolate.d.ts.map +1 -0
- package/dist/lib/svg/path/interpolate.js +121 -0
- package/dist/lib/svg/path/interpolate.js.map +1 -0
- package/dist/lib/svg/path/path.d.ts +48 -0
- package/dist/lib/svg/path/path.d.ts.map +1 -0
- package/dist/lib/svg/path/path.js +50 -0
- package/dist/lib/svg/path/path.js.map +1 -0
- package/dist/lib/svg/path/point.d.ts +3 -0
- package/dist/lib/svg/path/point.d.ts.map +1 -0
- package/dist/lib/svg/path/point.js +3 -0
- package/dist/lib/svg/path/point.js.map +1 -0
- package/dist/lib/svg/path/transform.d.ts +64 -0
- package/dist/lib/svg/path/transform.d.ts.map +1 -0
- package/dist/lib/svg/path/transform.js +110 -0
- package/dist/lib/svg/path/transform.js.map +1 -0
- package/dist/lib/tokens/useTokenClassName.d.ts.map +1 -1
- package/dist/lib/tokens/useTokenClassName.js +4 -1
- package/dist/lib/tokens/useTokenClassName.js.map +1 -1
- package/dist/lib/touch/UIPanGestureRecognizer.d.ts.map +1 -1
- package/dist/lib/touch/UIPanGestureRecognizer.js +2 -2
- package/dist/lib/touch/UIPanGestureRecognizer.js.map +1 -1
- package/dist/types.d.ts +9 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -4
- package/dist/types.js.map +1 -1
- package/dist/vkui.css +1 -1
- package/dist/vkui.css.map +1 -1
- package/package.json +7 -6
- package/src/components/ActionSheet/ActionSheet.tsx +6 -3
- package/src/components/AdaptivityProvider/AdaptivityContext.tsx +3 -3
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +2 -2
- package/src/components/AppRoot/AppRoot.tsx +1 -14
- package/src/components/AppRoot/AppRootContext.ts +0 -2
- package/src/components/Calendar/Calendar.tsx +2 -2
- package/src/components/CalendarDay/CalendarDay.tsx +4 -2
- package/src/components/CalendarDays/CalendarDays.tsx +2 -2
- package/src/components/CalendarHeader/CalendarHeader.tsx +4 -2
- package/src/components/CalendarRange/CalendarRange.tsx +2 -2
- package/src/components/CalendarTime/CalendarTime.module.css +38 -0
- package/src/components/CalendarTime/CalendarTime.module.css.d.ts.map +1 -1
- package/src/components/CalendarTime/CalendarTime.tsx +68 -55
- package/src/components/CalendarTime/CalendarTimePicker.tsx +148 -62
- package/src/components/CalendarTime/ComboBox.tsx +189 -0
- package/src/components/CardScroll/CardScroll.tsx +6 -5
- package/src/components/CarouselBase/CarouselBase.tsx +2 -1
- package/src/components/ChipsSelect/useChipsSelect.ts +1 -0
- package/src/components/ConfigProvider/ConfigProvider.tsx +6 -3
- package/src/components/ConfigProvider/ConfigProviderOverride.tsx +2 -1
- package/src/components/ConfigProvider/ConfigProviderSubContexts.tsx +43 -0
- package/src/components/ContentBadge/ContentBadge.module.css +84 -91
- package/src/components/ContentBadge/ContentBadge.module.css.d.ts.map +1 -1
- package/src/components/ContentBadge/ContentBadge.tsx +73 -5
- package/src/components/CustomSelect/CustomSelect.tsx +19 -10
- package/src/components/DateInput/DateInput.tsx +3 -3
- package/src/components/DateRangeInput/DateRangeInput.tsx +2 -2
- package/src/components/Epic/ScrollSaver.tsx +1 -0
- package/src/components/FixedLayout/ParentWidthWrapper.tsx +48 -0
- package/src/components/Flex/Flex.tsx +11 -6
- package/src/components/GridAvatar/GridAvatar.module.css +1 -1
- package/src/components/GridAvatar/GridAvatar.module.css.d.ts.map +1 -1
- package/src/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.tsx +1 -1
- package/src/components/NativeSelect/NativeSelect.tsx +4 -2
- package/src/components/NavTransitionContext/NavTransitionContext.tsx +5 -1
- package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +3 -6
- package/src/components/PanelHeader/PanelHeader.tsx +1 -1
- package/src/components/Popper/Popper.tsx +8 -5
- package/src/components/PullToRefresh/PullToRefresh.module.css +1 -1
- package/src/components/PullToRefresh/PullToRefresh.tsx +10 -3
- package/src/components/Root/Root.tsx +60 -59
- package/src/components/SimpleGrid/SimpleGrid.tsx +25 -11
- package/src/components/Skeleton/Skeleton.tsx +6 -4
- package/src/components/Snackbar/Snackbar.tsx +6 -3
- package/src/components/Spacing/Spacing.tsx +1 -1
- package/src/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.module.css +13 -0
- package/src/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.module.css.d.ts.map +1 -0
- package/src/components/Spinner/ExpressiveSpinner/ExpressiveSpinner.tsx +73 -0
- package/src/components/Spinner/ExpressiveSpinner/icons.tsx +104 -0
- package/src/components/Spinner/SvgIcon.tsx +31 -0
- package/src/components/Spinner/icons.tsx +10 -13
- package/src/components/SplitLayout/SplitLayout.tsx +3 -3
- package/src/components/TabsItem/TabsItem.tsx +4 -5
- package/src/components/Tappable/Tappable.tsx +2 -2
- package/src/components/View/View.tsx +83 -89
- package/src/components/View/ViewInfinite.tsx +65 -69
- package/src/components/WriteBar/WriteBar.tsx +25 -59
- package/src/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.module.css +12 -0
- package/src/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.module.css.d.ts.map +1 -0
- package/src/components/WriteBar/WriteBarBeforeOrAfter/WriteBarBeforeOrAfter.tsx +20 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormField.module.css +18 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormField.module.css.d.ts.map +1 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormField.tsx +22 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.module.css +3 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.module.css.d.ts.map +1 -0
- package/src/components/WriteBar/WriteBarFormField/WriteBarFormFieldInlineAfter/WriteBarFormFieldInlineAfter.tsx +23 -0
- package/src/components/WriteBar/WriteBarRoot/WriteBarRoot.module.css +14 -0
- package/src/components/WriteBar/WriteBarRoot/WriteBarRoot.module.css.d.ts.map +1 -0
- package/src/components/WriteBar/WriteBarRoot/WriteBarRoot.tsx +31 -0
- package/src/components/WriteBar/WriteBarTextarea/WriteBarTextarea.module.css +42 -0
- package/src/components/WriteBar/WriteBarTextarea/WriteBarTextarea.module.css.d.ts.map +1 -0
- package/src/components/WriteBar/WriteBarTextarea/WriteBarTextarea.tsx +48 -0
- package/src/helpers/math.ts +8 -0
- package/src/hoc/withPlatform.tsx +3 -3
- package/src/hooks/useAdaptivityConditionalRender/types.ts +2 -2
- package/src/hooks/useAnimationFrame.tsx +42 -0
- package/src/hooks/useAutoFocus.ts +1 -1
- package/src/hooks/useColorScheme.ts +3 -4
- package/src/hooks/useConfigDirection.ts +3 -4
- package/src/hooks/useDateInput.ts +1 -2
- package/src/hooks/useFocusTrap/useAutoFocus.ts +1 -1
- package/src/hooks/useFocusTrap/useFocusTrap.tsx +2 -0
- package/src/hooks/useFocusVisible.ts +10 -18
- package/src/hooks/useFocusWithin.ts +26 -23
- package/src/hooks/useGlobalEscKeyDown.ts +12 -15
- package/src/hooks/useGlobalOnClickOutside.ts +5 -2
- package/src/hooks/useKeyboardInputTracker.ts +68 -55
- package/src/hooks/useLatestRef.ts +12 -0
- package/src/hooks/useLocale.ts +3 -4
- package/src/hooks/useMediaQueryMatch.ts +1 -1
- package/src/hooks/useMutationObserver.ts +2 -3
- package/src/hooks/usePlatform.ts +3 -4
- package/src/hooks/useResizeObserver.ts +4 -5
- package/src/hooks/useSyncHTMLWithBaseVKUIClasses.ts +1 -1
- package/src/hooks/useSyncHTMLWithTokens.ts +1 -1
- package/src/hooks/useWaitTransitionFinish.ts +15 -15
- package/src/index.ts +1 -0
- package/src/lib/array.ts +19 -0
- package/src/lib/curve.ts +36 -0
- package/src/lib/dom.tsx +10 -4
- package/src/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.ts +4 -5
- package/src/lib/fx.ts +5 -63
- package/src/lib/layouts/index.ts +1 -0
- package/src/lib/layouts/layoutProps.ts +8 -0
- package/src/lib/layouts/resolveLayoutProps.ts +19 -17
- package/src/lib/layouts/types.ts +29 -0
- package/src/lib/material/shapes/Shape.tsx +17 -0
- package/src/lib/material/shapes/shapes.ts +329 -0
- package/src/lib/math.ts +37 -0
- package/src/lib/svg/path/approximate.ts +81 -0
- package/src/lib/svg/path/interpolate.ts +151 -0
- package/src/lib/svg/path/path.ts +102 -0
- package/src/lib/svg/path/point.ts +2 -0
- package/src/lib/svg/path/transform.ts +147 -0
- package/src/lib/tokens/useTokenClassName.ts +7 -5
- package/src/lib/touch/UIPanGestureRecognizer.ts +2 -2
- package/src/types.ts +16 -0
- package/dist/cssm/components/WriteBar/WriteBar.module.css +0 -118
- package/dist/cssm/lib/floating/LockFloatingPosition/LockFloatingPosition.js +0 -6
- package/dist/cssm/lib/floating/LockFloatingPosition/LockFloatingPosition.js.map +0 -1
- package/dist/lib/floating/LockFloatingPosition/LockFloatingPosition.d.ts +0 -6
- package/dist/lib/floating/LockFloatingPosition/LockFloatingPosition.d.ts.map +0 -1
- package/dist/lib/floating/LockFloatingPosition/LockFloatingPosition.js +0 -6
- package/dist/lib/floating/LockFloatingPosition/LockFloatingPosition.js.map +0 -1
- package/src/components/WriteBar/WriteBar.module.css +0 -116
- package/src/components/WriteBar/WriteBar.module.css.d.ts.map +0 -1
- package/src/lib/floating/LockFloatingPosition/LockFloatingPosition.tsx +0 -6
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"type": "module",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.2.0",
|
|
4
4
|
"name": "@vkontakte/vkui",
|
|
5
5
|
"description": "VKUI library",
|
|
6
6
|
"module": "./dist/index.js",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
"clear": "yarn run -T shx rm -rf dist/* || yarn run -T shx true",
|
|
58
58
|
"docker:clear-playwright-cache": "../../scripts/generate_env_docker.sh && docker compose --env-file=./.env.docker rm -f && docker volume rm vkui_package_vkui_playwright_cache",
|
|
59
59
|
"postcss": "yarn run -T cross-env NODE_ENV=production concurrently 'yarn:postcss:*'",
|
|
60
|
-
"postcss:bundle": "yarn run -T rspack --config rspack.styles.config.
|
|
60
|
+
"postcss:bundle": "yarn run -T rspack --config rspack.styles.config.ts",
|
|
61
61
|
"postcss:modules": "yarn run -T postcss './src/**/*.css' --base ./src --dir ./dist/cssm --config ./cssm",
|
|
62
62
|
"swc-base": "yarn run -T cross-env NODE_ENV=production swc src/ --config-file package.swcrc --extensions .tsx,.jsx,.ts,.js --strip-leading-paths",
|
|
63
63
|
"swc:es6": "yarn swc-base -d dist -s",
|
|
@@ -68,8 +68,8 @@
|
|
|
68
68
|
"test:ci": "yarn run -T vitest run --reporter=json --outputFile=../../test-results.json --coverage",
|
|
69
69
|
"test:e2e": "../../scripts/generate_env_docker.sh && docker compose --env-file=./.env.docker up --abort-on-container-exit",
|
|
70
70
|
"test:e2e-update": "../../scripts/generate_env_docker.sh -u && docker compose --env-file=./.env.docker up --abort-on-container-exit",
|
|
71
|
-
"test:e2e:ci": "yarn run -T
|
|
72
|
-
"test:e2e:ci:ui": "yarn run
|
|
71
|
+
"test:e2e:ci": "yarn run -T playwright test --config playwright-ct.config.ts",
|
|
72
|
+
"test:e2e:ci:ui": "yarn run test:e2e:ci --ui --ui-port=4300 --ui-host=0.0.0.0",
|
|
73
73
|
"test:e2e:ui": "../../scripts/generate_env_docker.sh -r test:e2e:ci:ui && docker compose --env-file=./.env.docker up --abort-on-container-exit",
|
|
74
74
|
"test:e2e-update:ci": "yarn run test:e2e:ci --update-snapshots",
|
|
75
75
|
"lint:generated-files": "yarn run -T concurrently 'yarn:lint:generated-files:*'",
|
|
@@ -94,12 +94,13 @@
|
|
|
94
94
|
"@vkontakte/vkui-floating-ui": "^0.2.8"
|
|
95
95
|
},
|
|
96
96
|
"devDependencies": {
|
|
97
|
-
"@biomejs/biome": "^2.4.
|
|
97
|
+
"@biomejs/biome": "^2.4.15",
|
|
98
98
|
"@types/node": "*",
|
|
99
99
|
"@types/postcss-import": "^14.0.3",
|
|
100
100
|
"react": "^18.3.1",
|
|
101
101
|
"react-dom": "^18.3.1",
|
|
102
|
-
"
|
|
102
|
+
"size-limit": "^12.1.0",
|
|
103
|
+
"typescript": "^6.0.3"
|
|
103
104
|
},
|
|
104
105
|
"size-limit": [
|
|
105
106
|
{
|
|
@@ -8,6 +8,7 @@ import { useStableCallback } from '../../hooks/useStableCallback';
|
|
|
8
8
|
import { useCSSKeyframesAnimationController } from '../../lib/animation';
|
|
9
9
|
import type { HasRootRef } from '../../types';
|
|
10
10
|
import type { ActionSheetItemProps } from '../ActionSheetItem/ActionSheetItem';
|
|
11
|
+
import type { AppRootPortalProps } from '../AppRoot/AppRootPortal';
|
|
11
12
|
import { AppRootPortal } from '../AppRoot/AppRootPortal';
|
|
12
13
|
import { useScrollLock } from '../AppRoot/ScrollContext';
|
|
13
14
|
import { PopoutWrapper } from '../PopoutWrapper/PopoutWrapper';
|
|
@@ -57,6 +58,7 @@ export interface ActionSheetProps
|
|
|
57
58
|
| 'restoreFocus'
|
|
58
59
|
| 'autoFocus'
|
|
59
60
|
>,
|
|
61
|
+
Pick<AppRootPortalProps, 'usePortal'>,
|
|
60
62
|
Omit<React.HTMLAttributes<HTMLDivElement>, 'autoFocus' | 'title'> {
|
|
61
63
|
/**
|
|
62
64
|
* Заголовок всплывающего окна.
|
|
@@ -100,11 +102,11 @@ export interface ActionSheetProps
|
|
|
100
102
|
*/
|
|
101
103
|
mode?: 'sheet' | 'menu' | undefined;
|
|
102
104
|
/**
|
|
103
|
-
* @deprecated Since 7.3.0. Будет
|
|
105
|
+
* @deprecated Since 7.3.0. Будет удалено в **VKUI v9**.
|
|
104
106
|
*/
|
|
105
107
|
mount?: boolean | undefined; // TODO [>=9]: удалить неиспользуемое свойство
|
|
106
108
|
/**
|
|
107
|
-
* @deprecated Since 7.3.0. Будет
|
|
109
|
+
* @deprecated Since 7.3.0. Будет удалено в **VKUI v9**.
|
|
108
110
|
*/
|
|
109
111
|
disabled?: boolean | undefined; // TODO [>=9]: удалить неиспользуемое свойство
|
|
110
112
|
}
|
|
@@ -125,6 +127,7 @@ export const ActionSheet = ({
|
|
|
125
127
|
mode: modeProp,
|
|
126
128
|
onClose: onCloseProp,
|
|
127
129
|
onClosed,
|
|
130
|
+
usePortal,
|
|
128
131
|
...restProps
|
|
129
132
|
}: ActionSheetProps): React.ReactNode => {
|
|
130
133
|
const platform = usePlatform();
|
|
@@ -225,7 +228,7 @@ export const ActionSheet = ({
|
|
|
225
228
|
);
|
|
226
229
|
|
|
227
230
|
return (
|
|
228
|
-
<AppRootPortal>
|
|
231
|
+
<AppRootPortal usePortal={usePortal}>
|
|
229
232
|
<PopoutWrapper
|
|
230
233
|
noBackground={mode === 'menu'}
|
|
231
234
|
closing={Boolean(closedReason)}
|
|
@@ -11,12 +11,12 @@ import type {
|
|
|
11
11
|
export interface DensityProps {
|
|
12
12
|
/**
|
|
13
13
|
* Тип размера экрана по горизонтали.
|
|
14
|
-
* @deprecated Since 8.0.0. Будет удалено в **VKUI v10** – используйте `sizeX="compact"` → `viewWidth={ViewWidth.MOBILE}` или `sizeX="compact"` → `viewWidth={ViewWidth.SMALL_TABLET}` (
|
|
14
|
+
* @deprecated Since 8.0.0. Будет удалено в **VKUI v10** – используйте `sizeX="compact"` → `viewWidth={ViewWidth.MOBILE}` или `sizeX="compact"` → `viewWidth={ViewWidth.SMALL_TABLET}` (https://github.com/VKCOM/VKUI/issues/9015).
|
|
15
15
|
*/
|
|
16
16
|
sizeX?: SizeTypeValues | undefined; // TODO [>=10]: #9015 удалить свойство
|
|
17
17
|
/**
|
|
18
18
|
* Тип размера экрана по вертикали.
|
|
19
|
-
* @deprecated Since 8.0.0. Будет удалено в **VKUI v10** – используйте `density` (
|
|
19
|
+
* @deprecated Since 8.0.0. Будет удалено в **VKUI v10** – используйте `density` (https://github.com/VKCOM/VKUI/issues/9015).
|
|
20
20
|
*/
|
|
21
21
|
sizeY?: SizeTypeValues | undefined; // TODO [>=10]: #9015 удалить свойство
|
|
22
22
|
/**
|
|
@@ -39,7 +39,7 @@ export interface AdaptivityProps extends DensityProps {
|
|
|
39
39
|
*/
|
|
40
40
|
hasPointer?: boolean | undefined;
|
|
41
41
|
/**
|
|
42
|
-
* @deprecated Since 7.3.0. Будет удалено в **VKUI v9** (
|
|
42
|
+
* @deprecated Since 7.3.0. Будет удалено в **VKUI v9** (https://github.com/VKCOM/VKUI/pull/8490).
|
|
43
43
|
*/
|
|
44
44
|
hasHover?: boolean | undefined; // TODO [>=9]: удалить неиспользуемое свойство
|
|
45
45
|
}
|
|
@@ -37,12 +37,12 @@ export const AdaptivityProvider = ({
|
|
|
37
37
|
if (process.env.NODE_ENV === 'development') {
|
|
38
38
|
if (sizeXProp !== undefined) {
|
|
39
39
|
warn(
|
|
40
|
-
'Свойство устарело начиная с 8.0.0 и будет удалено в **VKUI v10**. Для обратной совместимости, используйте `viewWidth={ViewWidth.MOBILE}` вместо `sizeX="compact"` и `viewWidth={ViewWidth.SMALL_TABLET}` вместо `sizeX="
|
|
40
|
+
'Свойство устарело начиная с 8.0.0 и будет удалено в **VKUI v10**. Для обратной совместимости, используйте `viewWidth={ViewWidth.MOBILE}` вместо `sizeX="compact"` и `viewWidth={ViewWidth.SMALL_TABLET}` вместо `sizeX="regular"` (см. https://github.com/VKCOM/VKUI/issues/9015).',
|
|
41
41
|
);
|
|
42
42
|
}
|
|
43
43
|
if (sizeYProp !== undefined) {
|
|
44
44
|
warn(
|
|
45
|
-
'Свойство устарело начиная с 8.0.0 и будет удалено в **VKUI v10**. Используйте `density` (см.
|
|
45
|
+
'Свойство устарело начиная с 8.0.0 и будет удалено в **VKUI v10**. Используйте `density` (см. https://github.com/VKCOM/VKUI/issues/9015).',
|
|
46
46
|
);
|
|
47
47
|
}
|
|
48
48
|
if (hasHover !== undefined) {
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { classNames } from '@vkontakte/vkjs';
|
|
5
|
-
import { useKeyboardInputTracker } from '../../hooks/useKeyboardInputTracker';
|
|
6
5
|
import { useSyncHTMLWithBaseVKUIClasses } from '../../hooks/useSyncHTMLWithBaseVKUIClasses';
|
|
7
6
|
import { useSyncHTMLWithTokens } from '../../hooks/useSyncHTMLWithTokens';
|
|
8
7
|
import { AppRootContext } from './AppRootContext';
|
|
@@ -102,7 +101,6 @@ export const AppRoot = ({
|
|
|
102
101
|
}: AppRootProps): React.ReactNode => {
|
|
103
102
|
const appRootRef = React.useRef<HTMLDivElement | null>(null);
|
|
104
103
|
|
|
105
|
-
const isKeyboardInputActiveRef = useKeyboardInputTracker();
|
|
106
104
|
const safeAreaInsets = useSafeAreaInsetsMemo(safeAreaInsetsProp);
|
|
107
105
|
|
|
108
106
|
const contextValue = React.useMemo(
|
|
@@ -114,20 +112,9 @@ export const AppRoot = ({
|
|
|
114
112
|
mode,
|
|
115
113
|
disablePortal,
|
|
116
114
|
layout,
|
|
117
|
-
get keyboardInput() {
|
|
118
|
-
return isKeyboardInputActiveRef.current;
|
|
119
|
-
},
|
|
120
115
|
userSelectMode,
|
|
121
116
|
}),
|
|
122
|
-
[
|
|
123
|
-
portalRoot,
|
|
124
|
-
disablePortal,
|
|
125
|
-
isKeyboardInputActiveRef,
|
|
126
|
-
layout,
|
|
127
|
-
mode,
|
|
128
|
-
safeAreaInsets,
|
|
129
|
-
userSelectMode,
|
|
130
|
-
],
|
|
117
|
+
[portalRoot, disablePortal, layout, mode, safeAreaInsets, userSelectMode],
|
|
131
118
|
);
|
|
132
119
|
|
|
133
120
|
/*
|
|
@@ -9,7 +9,6 @@ export interface AppRootContextInterface {
|
|
|
9
9
|
safeAreaInsets?: SafeAreaInsets | undefined;
|
|
10
10
|
embedded: boolean;
|
|
11
11
|
mode: 'partial' | 'embedded' | 'full';
|
|
12
|
-
keyboardInput: boolean;
|
|
13
12
|
disablePortal: boolean;
|
|
14
13
|
layout?: 'card' | 'plain' | undefined;
|
|
15
14
|
userSelectMode?: AppRootUserSelectMode | undefined;
|
|
@@ -26,7 +25,6 @@ export const DEFAULT_APP_ROOT_CONTEXT_VALUE: AppRootContextInterface = {
|
|
|
26
25
|
portalRoot: null,
|
|
27
26
|
safeAreaInsets: undefined,
|
|
28
27
|
embedded: false,
|
|
29
|
-
keyboardInput: false,
|
|
30
28
|
disablePortal: false,
|
|
31
29
|
};
|
|
32
30
|
|
|
@@ -88,7 +88,7 @@ export interface CalendarProps
|
|
|
88
88
|
/**
|
|
89
89
|
* `aria-label` для изменения дня.
|
|
90
90
|
*
|
|
91
|
-
* @deprecated Будет
|
|
91
|
+
* @deprecated Будет удалено в **VKUI v9**.
|
|
92
92
|
* Использовалось для задания aria-label для контейнера дней в календаре.
|
|
93
93
|
* Теперь этот контейнер является таблицей (с помощью role="grid") и
|
|
94
94
|
* в aria-label рендерится текущий открытый в календаре месяц и год.
|
|
@@ -243,7 +243,7 @@ export const Calendar = ({
|
|
|
243
243
|
if (timeZonedValue) {
|
|
244
244
|
setViewDate(timeZonedValue);
|
|
245
245
|
}
|
|
246
|
-
}, [timeZonedValue]);
|
|
246
|
+
}, [timeZonedValue, setViewDate]);
|
|
247
247
|
|
|
248
248
|
if (process.env.NODE_ENV === 'development' && !disablePickers && size === 's') {
|
|
249
249
|
warn("Нельзя включить селекты выбора месяца/года, если размер календаря 's'", 'error');
|
|
@@ -2,12 +2,13 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { classNames } from '@vkontakte/vkjs';
|
|
5
|
+
import { useConfigDirection } from '../../hooks/useConfigDirection';
|
|
5
6
|
import { useFocusVisible } from '../../hooks/useFocusVisible';
|
|
6
7
|
import { useFocusVisibleClassName } from '../../hooks/useFocusVisibleClassName';
|
|
8
|
+
import { useLocale } from '../../hooks/useLocale';
|
|
7
9
|
import { cacheDateTimeFormat } from '../../lib/intlCache';
|
|
8
10
|
import { mergeCalls } from '../../lib/mergeCalls';
|
|
9
11
|
import { defineComponentDisplayNames } from '../../lib/react/defineComponentDisplayNames';
|
|
10
|
-
import { useConfigProvider } from '../ConfigProvider/ConfigProviderContext';
|
|
11
12
|
import { Tappable } from '../Tappable/Tappable';
|
|
12
13
|
import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';
|
|
13
14
|
import styles from './CalendarDay.module.css';
|
|
@@ -140,7 +141,8 @@ export const CalendarDay = React.memo(
|
|
|
140
141
|
'aria-colindex': colIndex,
|
|
141
142
|
...restProps
|
|
142
143
|
}: CalendarDayProps) => {
|
|
143
|
-
const
|
|
144
|
+
const locale = useLocale();
|
|
145
|
+
const direction = useConfigDirection();
|
|
144
146
|
const ref = React.useRef<HTMLElement>(null);
|
|
145
147
|
const onClick = React.useCallback(() => onChange(day), [day, onChange]);
|
|
146
148
|
const handleEnter = React.useCallback(() => onEnter?.(day), [day, onEnter]);
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
import * as React from 'react';
|
|
4
4
|
import { classNames, isSameDate } from '@vkontakte/vkjs';
|
|
5
|
+
import { useLocale } from '../../hooks/useLocale';
|
|
5
6
|
import { useTodayDate } from '../../hooks/useTodayDate';
|
|
6
7
|
import { getDaysNames, getWeeks } from '../../lib/calendar';
|
|
7
8
|
import { isSameMonth } from '../../lib/date';
|
|
@@ -13,7 +14,6 @@ import {
|
|
|
13
14
|
type CalendarDayProps,
|
|
14
15
|
type CalendarDayTestsProps,
|
|
15
16
|
} from '../CalendarDay/CalendarDay';
|
|
16
|
-
import { useConfigProvider } from '../ConfigProvider/ConfigProviderContext';
|
|
17
17
|
import { RootComponent } from '../RootComponent/RootComponent';
|
|
18
18
|
import { Footnote } from '../Typography/Footnote/Footnote';
|
|
19
19
|
import { VisuallyHidden } from '../VisuallyHidden/VisuallyHidden';
|
|
@@ -150,7 +150,7 @@ export const CalendarDays = ({
|
|
|
150
150
|
dayTestId,
|
|
151
151
|
...props
|
|
152
152
|
}: CalendarDaysProps): React.ReactNode => {
|
|
153
|
-
const
|
|
153
|
+
const locale = useLocale();
|
|
154
154
|
const now = useTodayDate(listenDayChangesForUpdate);
|
|
155
155
|
|
|
156
156
|
const weeks = React.useMemo(() => getWeeks(viewDate, weekStartsOn), [weekStartsOn, viewDate]);
|
|
@@ -8,13 +8,14 @@ import {
|
|
|
8
8
|
Icon20ChevronRightOutline,
|
|
9
9
|
} from '@vkontakte/icons';
|
|
10
10
|
import { classNames } from '@vkontakte/vkjs';
|
|
11
|
+
import { useConfigDirection } from '../../hooks/useConfigDirection';
|
|
12
|
+
import { useLocale } from '../../hooks/useLocale';
|
|
11
13
|
import { ViewWidth } from '../../lib/adaptivity';
|
|
12
14
|
import { DEFAULT_MAX_YEAR, DEFAULT_MIN_YEAR, getMonths, getYears } from '../../lib/calendar';
|
|
13
15
|
import { addMonths, setMonth, setYear, subMonths } from '../../lib/date';
|
|
14
16
|
import { cacheDateTimeFormat } from '../../lib/intlCache';
|
|
15
17
|
import type { HTMLAttributesWithRootRef } from '../../types';
|
|
16
18
|
import { AdaptivityProvider } from '../AdaptivityProvider/AdaptivityProvider';
|
|
17
|
-
import { useConfigProvider } from '../ConfigProvider/ConfigProviderContext';
|
|
18
19
|
import { CustomSelect, type SelectProps } from '../CustomSelect/CustomSelect';
|
|
19
20
|
import { RootComponent } from '../RootComponent/RootComponent';
|
|
20
21
|
import { Tappable } from '../Tappable/Tappable';
|
|
@@ -163,7 +164,8 @@ export const CalendarHeader = ({
|
|
|
163
164
|
nextMonthButtonTestId,
|
|
164
165
|
...restProps
|
|
165
166
|
}: CalendarHeaderProps): React.ReactNode => {
|
|
166
|
-
const
|
|
167
|
+
const locale = useLocale();
|
|
168
|
+
const direction = useConfigDirection();
|
|
167
169
|
|
|
168
170
|
const onMonthsChange = React.useCallback(
|
|
169
171
|
(_: ChangeEvent<HTMLSelectElement>, newValue: SelectProps['value']) =>
|
|
@@ -80,7 +80,7 @@ export interface CalendarRangeProps
|
|
|
80
80
|
/**
|
|
81
81
|
* `aria-label` для изменения дня.
|
|
82
82
|
*
|
|
83
|
-
* @deprecated Since 7.4.0. Будет
|
|
83
|
+
* @deprecated Since 7.4.0. Будет удалено в **VKUI v9**.
|
|
84
84
|
*
|
|
85
85
|
* Использовалось для задания aria-label для контейнера дней в календаре.
|
|
86
86
|
* Теперь этот контейнер является таблицей (с помощью role="grid") и
|
|
@@ -100,7 +100,7 @@ export interface CalendarRangeProps
|
|
|
100
100
|
*/
|
|
101
101
|
shouldDisableDate?: ((value: Date) => boolean) | undefined;
|
|
102
102
|
/**
|
|
103
|
-
* @deprecated Since 7.3.0. Будет
|
|
103
|
+
* @deprecated Since 7.3.0. Будет удалено в **VKUI v9**.
|
|
104
104
|
*/
|
|
105
105
|
onClose?: (() => void) | undefined; // TODO [>=9]: удалить неиспользуемое свойство
|
|
106
106
|
}
|
|
@@ -20,3 +20,41 @@
|
|
|
20
20
|
.button {
|
|
21
21
|
margin-inline-start: auto;
|
|
22
22
|
}
|
|
23
|
+
|
|
24
|
+
.inputPopDown {
|
|
25
|
+
border-end-start-radius: 0;
|
|
26
|
+
border-end-end-radius: 0;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
.inputPopUp {
|
|
30
|
+
border-start-start-radius: 0;
|
|
31
|
+
border-start-end-radius: 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
.popper {
|
|
35
|
+
box-sizing: border-box;
|
|
36
|
+
inline-size: 100%;
|
|
37
|
+
overflow: hidden;
|
|
38
|
+
background-color: var(--vkui--color_background_contrast_themed);
|
|
39
|
+
border: var(--vkui--size_border--regular) solid var(--vkui--color_field_border_alpha);
|
|
40
|
+
border-radius: 8px;
|
|
41
|
+
box-shadow: var(--vkui--elevation1);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.popperBottom {
|
|
45
|
+
border-block-start: 0;
|
|
46
|
+
border-start-start-radius: 0;
|
|
47
|
+
border-start-end-radius: 0;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
.popperTop {
|
|
51
|
+
inset-block-end: 100%;
|
|
52
|
+
border-block-end: 0;
|
|
53
|
+
border-end-start-radius: 0;
|
|
54
|
+
border-end-end-radius: 0;
|
|
55
|
+
box-shadow: var(--vkui--elevation1_invert_y);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.customScroll {
|
|
59
|
+
max-block-size: 184px;
|
|
60
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["./CalendarTime.module.css"],"names":["host","host__withoutDone","picker","divider","button"],"mappings":"AAAA;AAAA,E,aAAAA,M,WAAA;AAAA,E,aAKAC,mB,WALA;AAAA,E,aASAC,Q,WATA;AAAA,E,aAaAC,S,WAbA;AAAA,E,aAmBAC,Q,WAnBA;AAAA;AAAA","file":"CalendarTime.module.css.d.ts","sourceRoot":""}
|
|
1
|
+
{"version":3,"sources":["./CalendarTime.module.css"],"names":["host","host__withoutDone","picker","divider","button","inputPopDown","inputPopUp","popper","popperBottom","popperTop","customScroll"],"mappings":"AAAA;AAAA,E,aAAAA,M,WAAA;AAAA,E,aAKAC,mB,WALA;AAAA,E,aASAC,Q,WATA;AAAA,E,aAaAC,S,WAbA;AAAA,E,aAmBAC,Q,WAnBA;AAAA,E,aAuBAC,c,WAvBA;AAAA,E,aA4BAC,Y,WA5BA;AAAA,E,aAiCAC,Q,WAjCA;AAAA,E,aA2CAC,c,WA3CA;AAAA,E,aAiDAC,W,WAjDA;AAAA,E,aAyDAC,c,WAzDA;AAAA;AAAA","file":"CalendarTime.module.css.d.ts","sourceRoot":""}
|
|
@@ -7,9 +7,34 @@ import { Keys, pressedKey } from '../../lib/accessibility';
|
|
|
7
7
|
import { setHours, setMinutes } from '../../lib/date';
|
|
8
8
|
import { AdaptivityProvider } from '../AdaptivityProvider/AdaptivityProvider';
|
|
9
9
|
import { Button, type ButtonProps } from '../Button/Button';
|
|
10
|
-
import { CalendarTimePicker } from './CalendarTimePicker';
|
|
10
|
+
import { CalendarTimePicker, padStartTimeValue } from './CalendarTimePicker';
|
|
11
11
|
import styles from './CalendarTime.module.css';
|
|
12
12
|
|
|
13
|
+
const MAX_HOURS = 23;
|
|
14
|
+
const MAX_MINUTES = 59;
|
|
15
|
+
|
|
16
|
+
function generateLabels(
|
|
17
|
+
min: number,
|
|
18
|
+
max: number,
|
|
19
|
+
): Array<{
|
|
20
|
+
value: string;
|
|
21
|
+
label: string;
|
|
22
|
+
}> {
|
|
23
|
+
const array = new Array(Math.ceil(max - min + 1));
|
|
24
|
+
|
|
25
|
+
for (let i = min; i <= max; i += 1) {
|
|
26
|
+
const value = padStartTimeValue(i);
|
|
27
|
+
|
|
28
|
+
array[i - min] = { value, label: value };
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return array;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
const hours = generateLabels(0, MAX_HOURS);
|
|
35
|
+
|
|
36
|
+
const minutes = generateLabels(0, MAX_MINUTES);
|
|
37
|
+
|
|
13
38
|
export type CalendarTimeTestsProps = {
|
|
14
39
|
/**
|
|
15
40
|
* Передает атрибут `data-testid` для дропдауна выбора часа в календаре.
|
|
@@ -79,22 +104,6 @@ export interface CalendarTimeProps extends CalendarTimeTestsProps, CalendarDoneB
|
|
|
79
104
|
isDayDisabled?: ((day: Date, withTime?: boolean) => boolean) | undefined;
|
|
80
105
|
}
|
|
81
106
|
|
|
82
|
-
const hours: Array<{
|
|
83
|
-
value: number;
|
|
84
|
-
label: string;
|
|
85
|
-
}> = [];
|
|
86
|
-
for (let i = 0; i < 24; i += 1) {
|
|
87
|
-
hours.push({ value: i, label: String(i).padStart(2, '0') });
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
const minutes: Array<{
|
|
91
|
-
value: number;
|
|
92
|
-
label: string;
|
|
93
|
-
}> = [];
|
|
94
|
-
for (let i = 0; i < 60; i += 1) {
|
|
95
|
-
minutes.push({ value: i, label: String(i).padStart(2, '0') });
|
|
96
|
-
}
|
|
97
|
-
|
|
98
107
|
export const CalendarTime = ({
|
|
99
108
|
value,
|
|
100
109
|
onChange,
|
|
@@ -103,7 +112,6 @@ export const CalendarTime = ({
|
|
|
103
112
|
changeMinutesLabel,
|
|
104
113
|
setHours: setHoursFn = setHours,
|
|
105
114
|
setMinutes: setMinutesFn = setMinutes,
|
|
106
|
-
isDayDisabled,
|
|
107
115
|
doneButtonText = 'Готово',
|
|
108
116
|
doneButtonDisabled = false,
|
|
109
117
|
doneButtonShow = true,
|
|
@@ -111,6 +119,7 @@ export const CalendarTime = ({
|
|
|
111
119
|
hoursTestId,
|
|
112
120
|
doneButtonTestId,
|
|
113
121
|
DoneButton,
|
|
122
|
+
isDayDisabled,
|
|
114
123
|
}: CalendarTimeProps): React.ReactNode => {
|
|
115
124
|
const hoursInputRef = useRef<HTMLInputElement | null>(null);
|
|
116
125
|
const minutesInputRef = useRef<HTMLInputElement | null>(null);
|
|
@@ -118,13 +127,16 @@ export const CalendarTime = ({
|
|
|
118
127
|
|
|
119
128
|
const localHours = isDayDisabled
|
|
120
129
|
? hours.map((hour) => {
|
|
121
|
-
return { ...hour, disabled: isDayDisabled(setHoursFn(value, hour.value), true) };
|
|
130
|
+
return { ...hour, disabled: isDayDisabled(setHoursFn(value, Number(hour.value)), true) };
|
|
122
131
|
})
|
|
123
132
|
: hours;
|
|
124
133
|
|
|
125
134
|
const localMinutes = isDayDisabled
|
|
126
135
|
? minutes.map((minute) => {
|
|
127
|
-
return {
|
|
136
|
+
return {
|
|
137
|
+
...minute,
|
|
138
|
+
disabled: isDayDisabled(setMinutesFn(value, Number(minute.value)), true),
|
|
139
|
+
};
|
|
128
140
|
})
|
|
129
141
|
: minutes;
|
|
130
142
|
|
|
@@ -152,18 +164,8 @@ export const CalendarTime = ({
|
|
|
152
164
|
}
|
|
153
165
|
};
|
|
154
166
|
|
|
155
|
-
const
|
|
156
|
-
(
|
|
157
|
-
if (isOpen && event.key === 'Escape') {
|
|
158
|
-
event.stopPropagation();
|
|
159
|
-
}
|
|
160
|
-
},
|
|
161
|
-
[],
|
|
162
|
-
);
|
|
163
|
-
|
|
164
|
-
const onSelectInputKeyDown = (e: React.KeyboardEvent, isOpen: boolean) => {
|
|
165
|
-
onPickerKeyDown(e);
|
|
166
|
-
stopPropagationOfEscapeKeyboardEventWhenSelectIsOpen(e, isOpen);
|
|
167
|
+
const onHoursInputEnd = () => {
|
|
168
|
+
minutesInputRef.current?.focus();
|
|
167
169
|
};
|
|
168
170
|
|
|
169
171
|
const renderDoneButton = () => {
|
|
@@ -185,29 +187,40 @@ export const CalendarTime = ({
|
|
|
185
187
|
|
|
186
188
|
return (
|
|
187
189
|
<div className={classNames(styles.host, !doneButtonShow && styles.host__withoutDone)}>
|
|
188
|
-
<
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
190
|
+
<AdaptivityProvider density="compact">
|
|
191
|
+
<div className={styles.picker}>
|
|
192
|
+
<CalendarTimePicker
|
|
193
|
+
valueDate={value}
|
|
194
|
+
value={value.getHours()}
|
|
195
|
+
onChange={onChange}
|
|
196
|
+
options={localHours}
|
|
197
|
+
setTime={setHoursFn}
|
|
198
|
+
onKeyDown={onPickerKeyDown}
|
|
199
|
+
inputRef={hoursInputRef}
|
|
200
|
+
inputLabel={changeHoursLabel}
|
|
201
|
+
inputTestId={hoursTestId}
|
|
202
|
+
maxValue={MAX_HOURS}
|
|
203
|
+
onInputEnd={onHoursInputEnd}
|
|
204
|
+
isDayDisabled={isDayDisabled}
|
|
205
|
+
/>
|
|
206
|
+
</div>
|
|
207
|
+
<div className={styles.divider}>:</div>
|
|
208
|
+
<div className={styles.picker}>
|
|
209
|
+
<CalendarTimePicker
|
|
210
|
+
valueDate={value}
|
|
211
|
+
value={value.getMinutes()}
|
|
212
|
+
onChange={onChange}
|
|
213
|
+
options={localMinutes}
|
|
214
|
+
setTime={setMinutesFn}
|
|
215
|
+
onKeyDown={onPickerKeyDown}
|
|
216
|
+
inputRef={minutesInputRef}
|
|
217
|
+
inputLabel={changeMinutesLabel}
|
|
218
|
+
inputTestId={minutesTestId}
|
|
219
|
+
maxValue={MAX_MINUTES}
|
|
220
|
+
isDayDisabled={isDayDisabled}
|
|
221
|
+
/>
|
|
222
|
+
</div>
|
|
223
|
+
</AdaptivityProvider>
|
|
211
224
|
{doneButtonShow && (
|
|
212
225
|
<div className={styles.button}>
|
|
213
226
|
<AdaptivityProvider density="compact">{renderDoneButton()}</AdaptivityProvider>
|