@vkontakte/vkui 7.1.3 → 7.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/Accordion/Accordion.d.ts +2 -2
- package/dist/components/Accordion/Accordion.d.ts.map +1 -1
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.d.ts +1 -1
- package/dist/components/ActionSheet/ActionSheet.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownMenu.d.ts +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownMenu.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownMenu.js +10 -4
- package/dist/components/ActionSheet/ActionSheetDropdownMenu.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownSheet.d.ts +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownSheet.d.ts.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownSheet.js +10 -4
- package/dist/components/ActionSheet/ActionSheetDropdownSheet.js.map +1 -1
- package/dist/components/ActionSheet/types.d.ts +4 -0
- package/dist/components/ActionSheet/types.d.ts.map +1 -1
- package/dist/components/ActionSheet/types.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts.map +1 -1
- package/dist/components/ActionSheetItem/helpers.d.ts.map +1 -1
- package/dist/components/ActionSheetItem/subcomponents/Radio/Radio.d.ts.map +1 -1
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts.map +1 -1
- package/dist/components/Alert/Alert.d.ts +14 -2
- package/dist/components/Alert/Alert.d.ts.map +1 -1
- package/dist/components/Alert/Alert.js +15 -104
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/Alert/AlertAction.d.ts.map +1 -1
- package/dist/components/Alert/AlertActions.d.ts.map +1 -1
- package/dist/components/Alert/AlertBase.d.ts +7 -0
- package/dist/components/Alert/AlertBase.d.ts.map +1 -0
- package/dist/components/Alert/AlertBase.js +131 -0
- package/dist/components/Alert/AlertBase.js.map +1 -0
- package/dist/components/Alert/AlertTypography.d.ts +2 -1
- package/dist/components/Alert/AlertTypography.d.ts.map +1 -1
- package/dist/components/Alert/AlertTypography.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts.map +1 -1
- package/dist/components/AppRoot/AppRootPortal.d.ts.map +1 -1
- package/dist/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js +1 -1
- package/dist/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.d.ts +1 -0
- package/dist/components/AppRoot/ScrollContext.d.ts.map +1 -1
- package/dist/components/AppRoot/ScrollContext.js +127 -39
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/AppRoot/helpers.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.d.ts.map +1 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +4 -1
- package/dist/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
- package/dist/components/Avatar/AvatarBadge/icons.d.ts.map +1 -1
- package/dist/components/Badge/Badge.d.ts.map +1 -1
- package/dist/components/Banner/Banner.d.ts.map +1 -1
- package/dist/components/Button/Button.d.ts.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +4 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.js +1 -0
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +8 -3
- package/dist/components/Calendar/Calendar.d.ts.map +1 -1
- package/dist/components/Calendar/Calendar.js +98 -92
- 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 +1 -3
- package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.d.ts +1 -1
- package/dist/components/CalendarDays/CalendarDays.d.ts.map +1 -1
- 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 +1 -3
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +4 -3
- package/dist/components/CalendarRange/CalendarRange.d.ts.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.js +105 -108
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.d.ts.map +1 -1
- package/dist/components/CalendarTime/CalendarTime.js +16 -13
- package/dist/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/components/Card/Card.d.ts.map +1 -1
- package/dist/components/CardGrid/CardGrid.d.ts.map +1 -1
- package/dist/components/CardScroll/CardScroll.d.ts +5 -1
- package/dist/components/CardScroll/CardScroll.d.ts.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +32 -29
- 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 +71 -46
- package/dist/components/CarouselBase/CarouselBase.js.map +1 -1
- package/dist/components/CarouselBase/ScrollArrows.d.ts.map +1 -1
- package/dist/components/CarouselBase/helpers.d.ts +20 -5
- package/dist/components/CarouselBase/helpers.d.ts.map +1 -1
- package/dist/components/CarouselBase/helpers.js +70 -44
- package/dist/components/CarouselBase/helpers.js.map +1 -1
- package/dist/components/Cell/CellCheckbox/CellCheckbox.d.ts.map +1 -1
- package/dist/components/Cell/CellDragger/CellDragger.d.ts.map +1 -1
- package/dist/components/CellButton/CellButton.d.ts.map +1 -1
- package/dist/components/CellButtonGroup/CellButtonGroup.d.ts +300 -0
- package/dist/components/CellButtonGroup/CellButtonGroup.d.ts.map +1 -0
- package/dist/components/CellButtonGroup/CellButtonGroup.js +20 -0
- package/dist/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
- package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts +8 -0
- package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.d.ts.map +1 -0
- package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +20 -0
- package/dist/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
- package/dist/components/ChipsInput/ChipsInput.d.ts.map +1 -1
- package/dist/components/ChipsInput/useChipsInput.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/Chip/Chip.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.js +1 -0
- package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/components/ChipsInputBase/helpers.d.ts +1 -1
- package/dist/components/ChipsInputBase/helpers.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/helpers.js +4 -0
- package/dist/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/components/ChipsInputBase/types.d.ts +1 -1
- package/dist/components/ChipsInputBase/types.d.ts.map +1 -1
- package/dist/components/ChipsInputBase/types.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +9 -2
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ChipsSelect/constants.d.ts.map +1 -1
- package/dist/components/ChipsSelect/useChipsSelect.d.ts +3 -2
- package/dist/components/ChipsSelect/useChipsSelect.d.ts.map +1 -1
- package/dist/components/ChipsSelect/useChipsSelect.js +9 -3
- package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/components/Clickable/Clickable.d.ts +1 -1
- package/dist/components/Clickable/Clickable.d.ts.map +1 -1
- package/dist/components/Clickable/Clickable.js +28 -28
- package/dist/components/Clickable/Clickable.js.map +1 -1
- package/dist/components/Clickable/RealClickable.d.ts.map +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.d.ts.map +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
- package/dist/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +5 -2
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +11 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.d.ts.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.js +12 -7
- package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.d.ts +6 -1
- package/dist/components/ContentCard/ContentCard.d.ts.map +1 -1
- package/dist/components/ContentCard/ContentCard.js +6 -4
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/Counter/Counter.d.ts.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +108 -71
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelectClearButton.d.ts.map +1 -1
- package/dist/components/CustomSelect/CustomSelectInput/CustomSelectInput.d.ts.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +3 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.d.ts.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +19 -2
- package/dist/components/DateInput/DateInput.d.ts.map +1 -1
- package/dist/components/DateInput/DateInput.js +118 -82
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DateInput/hooks.d.ts +16 -0
- package/dist/components/DateInput/hooks.d.ts.map +1 -0
- package/dist/components/DateInput/hooks.js +61 -0
- package/dist/components/DateInput/hooks.js.map +1 -0
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +10 -2
- package/dist/components/DateRangeInput/DateRangeInput.d.ts.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +110 -82
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/DirectionProvider/DirectionProvider.d.ts +13 -0
- package/dist/components/DirectionProvider/DirectionProvider.d.ts.map +1 -0
- package/dist/components/DirectionProvider/DirectionProvider.js +15 -0
- package/dist/components/DirectionProvider/DirectionProvider.js.map +1 -0
- package/dist/components/Div/Div.d.ts.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.d.ts.map +1 -1
- package/dist/components/Epic/Epic.d.ts.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts.map +1 -1
- package/dist/components/File/File.d.ts.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.d.ts.map +1 -1
- package/dist/components/Flex/Flex.d.ts.map +1 -1
- package/dist/components/Flex/Flex.js +3 -5
- package/dist/components/Flex/Flex.js.map +1 -1
- package/dist/components/Flex/FlexItem/FlexItem.d.ts.map +1 -1
- package/dist/components/FloatingArrow/DefaultIcon.d.ts.map +1 -1
- package/dist/components/FloatingArrow/FloatingArrow.d.ts.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.d.ts.map +1 -1
- package/dist/components/Footer/Footer.d.ts.map +1 -1
- package/dist/components/FormField/FormField.d.ts.map +1 -1
- package/dist/components/FormFieldClearButton/FormFieldClearButton.d.ts.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts.map +1 -1
- package/dist/components/Gallery/Gallery.d.ts.map +1 -1
- package/dist/components/Gradient/Gradient.d.ts.map +1 -1
- package/dist/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.d.ts.map +1 -1
- package/dist/components/Header/Header.d.ts.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.d.ts.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.d.ts.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +13 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +32 -24
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBase.d.ts +5 -0
- package/dist/components/ImageBase/ImageBase.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBase.js +6 -4
- package/dist/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseFloatElement/helpers.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
- package/dist/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts +1 -0
- package/dist/components/ImageBase/ImageBaseOverlay/hooks.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
- package/dist/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts +4 -0
- package/dist/components/ImageBase/ImageBaseOverlay/types.d.ts.map +1 -1
- package/dist/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.d.ts.map +1 -1
- package/dist/components/Input/Input.d.ts.map +1 -1
- package/dist/components/InputLike/InputLikeDivider.d.ts.map +1 -1
- package/dist/components/Link/Link.d.ts.map +1 -1
- package/dist/components/List/List.d.ts.map +1 -1
- package/dist/components/Mark/Mark.d.ts.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.d.ts.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts.map +1 -1
- package/dist/components/ModalCard/ModalCard.js +6 -13
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCard/ModalCardInternal.d.ts +1 -1
- package/dist/components/ModalCard/ModalCardInternal.d.ts.map +1 -1
- package/dist/components/ModalCard/ModalCardInternal.js +4 -2
- package/dist/components/ModalCard/ModalCardInternal.js.map +1 -1
- package/dist/components/ModalCard/types.d.ts +1 -1
- package/dist/components/ModalCard/types.d.ts.map +1 -1
- package/dist/components/ModalCard/types.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +9 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.js +33 -8
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +5 -3
- package/dist/components/ModalDismissButton/ModalDismissButton.d.ts.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js +7 -7
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalOutlet/ModalOutlet.d.ts.map +1 -1
- package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts +17 -0
- package/dist/components/ModalOutsideButton/ModalOutsideButton.d.ts.map +1 -0
- package/dist/components/ModalOutsideButton/ModalOutsideButton.js +30 -0
- package/dist/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
- package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts +6 -0
- package/dist/components/ModalOutsideButtons/ModalOutsideButtons.d.ts.map +1 -0
- package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js +22 -0
- package/dist/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
- package/dist/components/ModalOverlay/ModalOverlay.d.ts.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts.map +1 -1
- package/dist/components/ModalPage/ModalPage.js +5 -12
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPage/ModalPageBase.d.ts +8 -0
- package/dist/components/ModalPage/ModalPageBase.d.ts.map +1 -0
- package/dist/components/ModalPage/ModalPageBase.js +66 -0
- package/dist/components/ModalPage/ModalPageBase.js.map +1 -0
- package/dist/components/ModalPage/ModalPageInternal.d.ts +1 -1
- package/dist/components/ModalPage/ModalPageInternal.d.ts.map +1 -1
- package/dist/components/ModalPage/ModalPageInternal.js +24 -32
- package/dist/components/ModalPage/ModalPageInternal.js.map +1 -1
- package/dist/components/ModalPage/types.d.ts +12 -1
- package/dist/components/ModalPage/types.d.ts.map +1 -1
- package/dist/components/ModalPage/types.js.map +1 -1
- package/dist/components/ModalPageContent/ModalPageContent.d.ts.map +1 -1
- package/dist/components/ModalPageFooter/ModalPageFooter.d.ts.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.d.ts.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts.map +1 -1
- package/dist/components/ModalRoot/VisuallyHiddenModalOverlay/VisuallyHiddenModalOverlay.d.ts.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +1 -0
- package/dist/components/ModalRoot/types.d.ts.map +1 -1
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.d.ts +4 -2
- package/dist/components/ModalRoot/useModalManager.d.ts.map +1 -1
- package/dist/components/ModalRoot/useModalManager.js +12 -3
- package/dist/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/components/ModalRoot/useModalRootContext.js +1 -0
- package/dist/components/ModalRoot/useModalRootContext.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts.map +1 -1
- package/dist/components/NavTransitionContext/NavTransitionContext.d.ts.map +1 -1
- package/dist/components/NavTransitionDirectionContext/NavTransitionDirectionContext.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts +2 -2
- package/dist/components/OnboardingTooltip/OnboardingTooltip.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js +22 -8
- package/dist/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.d.ts.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js +12 -3
- package/dist/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts +7 -0
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.d.ts.map +1 -0
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
- package/dist/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
- package/dist/components/Pagination/Pagination.d.ts.map +1 -1
- package/dist/components/Pagination/Pagination.js +5 -2
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Pagination/PaginationNavigationButton/PaginationNavigationButton.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationPage/PaginationPageButton.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationPage/PaginationPageEllipsis.d.ts.map +1 -1
- package/dist/components/Pagination/PaginationPage/usePaginationPageClasses.d.ts.map +1 -1
- package/dist/components/Panel/Panel.d.ts.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.d.ts.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts.map +1 -1
- package/dist/components/Placeholder/Placeholder.d.ts.map +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +15 -2
- package/dist/components/PopoutWrapper/PopoutWrapper.d.ts.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js +10 -2
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popover/Popover.d.ts +1 -1
- package/dist/components/Popover/Popover.d.ts.map +1 -1
- package/dist/components/Popover/Popover.js +4 -4
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/Popover/usePopover.d.ts +1 -1
- package/dist/components/Popover/usePopover.d.ts.map +1 -1
- package/dist/components/Popover/usePopover.js +69 -44
- package/dist/components/Popover/usePopover.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +2 -2
- package/dist/components/Popper/Popper.d.ts.map +1 -1
- package/dist/components/Popper/Popper.js +18 -5
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/Progress/Progress.d.ts +7 -3
- package/dist/components/Progress/Progress.d.ts.map +1 -1
- package/dist/components/Progress/Progress.js +30 -11
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts.map +1 -1
- package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts.map +1 -1
- package/dist/components/Removable/Removable.d.ts.map +1 -1
- package/dist/components/Removable/Removable.js +8 -4
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/RichCell/RichCellIcon/RichCellIcon.d.ts.map +1 -1
- package/dist/components/Root/Root.d.ts.map +1 -1
- package/dist/components/RootComponent/RootComponent.d.ts.map +1 -1
- package/dist/components/ScreenSpinner/Icon48CancelCircle.d.ts.map +1 -1
- package/dist/components/ScreenSpinner/Icon48DoneOutline.d.ts.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js +1 -0
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.d.ts.map +1 -1
- package/dist/components/ScrollArrow/ScrollArrow.js +4 -1
- package/dist/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/components/Search/Search.d.ts +9 -1
- package/dist/components/Search/Search.d.ts.map +1 -1
- package/dist/components/Search/Search.js +9 -2
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.js +10 -7
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts.map +1 -1
- package/dist/components/Select/Select.d.ts.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts.map +1 -1
- package/dist/components/SelectTypography/SelectTypography.d.ts.map +1 -1
- package/dist/components/Separator/Separator.d.ts.map +1 -1
- package/dist/components/SimpleCell/Chevron/Chevron.d.ts.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.d.ts.map +1 -1
- package/dist/components/SimpleGrid/SimpleGrid.d.ts.map +1 -1
- package/dist/components/Skeleton/Skeleton.d.ts.map +1 -1
- package/dist/components/Slider/Slider.d.ts +1 -1
- package/dist/components/Slider/Slider.d.ts.map +1 -1
- package/dist/components/Slider/Slider.js +22 -18
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.d.ts.map +1 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.js +5 -1
- package/dist/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/components/Slider/helpers.d.ts.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/Snackbar/utils.d.ts +3 -2
- package/dist/components/Snackbar/utils.d.ts.map +1 -1
- package/dist/components/Snackbar/utils.js +11 -8
- package/dist/components/Snackbar/utils.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.d.ts.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.d.ts.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.d.ts.map +1 -1
- package/dist/components/Switch/Switch.js +4 -1
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.d.ts.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts.map +1 -1
- package/dist/components/Tabs/Tabs.js +3 -1
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts.map +1 -1
- package/dist/components/Tappable/Ripple.d.ts.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts.map +1 -1
- package/dist/components/ToolButton/ToolButton.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +2 -2
- package/dist/components/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +8 -101
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Tooltip/useTooltip.d.ts +14 -0
- package/dist/components/Tooltip/useTooltip.d.ts.map +1 -0
- package/dist/components/Tooltip/useTooltip.js +126 -0
- package/dist/components/Tooltip/useTooltip.js.map +1 -0
- package/dist/components/TooltipBase/TooltipBase.d.ts.map +1 -1
- package/dist/components/Touch/Touch.d.ts.map +1 -1
- package/dist/components/Touch/Touch.js +2 -2
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.d.ts.map +1 -1
- package/dist/components/Typography/DisplayTitle/DisplayTitle.d.ts.map +1 -1
- package/dist/components/Typography/EllipsisText/EllipsisText.d.ts.map +1 -1
- package/dist/components/Typography/Footnote/Footnote.d.ts.map +1 -1
- package/dist/components/Typography/Headline/Headline.d.ts.map +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.d.ts.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.d.ts.map +1 -1
- package/dist/components/Typography/Text/Text.d.ts.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts.map +1 -1
- package/dist/components/Typography/Typography.d.ts.map +1 -1
- package/dist/components/UnstyledTextField/UnstyledTextField.d.ts.map +1 -1
- package/dist/components/UsersStack/UsersStack.d.ts +1 -1
- package/dist/components/UsersStack/UsersStack.d.ts.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +5 -9
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.d.ts.map +1 -1
- package/dist/components/View/utils.d.ts.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts.map +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.d.ts.map +1 -1
- package/dist/components.css +1 -1
- package/dist/components.css.map +1 -1
- package/dist/context/CalendarDirectionContext.d.ts +1 -1
- package/dist/context/CalendarDirectionContext.d.ts.map +1 -1
- package/dist/context/CalendarDirectionContext.js.map +1 -1
- package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
- package/dist/cssm/components/Accordion/Accordion.module.css +6 -6
- package/dist/cssm/components/ActionSheet/ActionSheet.js +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.module.css +9 -9
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js +7 -3
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownMenu.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js +7 -3
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/types.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.module.css +18 -18
- package/dist/cssm/components/Alert/Alert.js +12 -92
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.module.css +27 -29
- package/dist/cssm/components/Alert/AlertBase.js +111 -0
- package/dist/cssm/components/Alert/AlertBase.js.map +1 -0
- package/dist/cssm/components/Alert/AlertTypography.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.module.css +2 -2
- package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js +1 -1
- package/dist/cssm/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.js +129 -37
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/AspectRatio/AspectRatio.module.css +2 -2
- package/dist/cssm/components/Avatar/Avatar.module.css +1 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js +4 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.module.css +19 -19
- package/dist/cssm/components/Button/Button.module.css +11 -11
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js +1 -0
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.js +96 -92
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.module.css +8 -8
- package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -3
- package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.module.css +11 -11
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.module.css +7 -7
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +1 -3
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.module.css +4 -4
- package/dist/cssm/components/CalendarRange/CalendarRange.js +106 -110
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.module.css +5 -5
- package/dist/cssm/components/CalendarTime/CalendarTime.js +16 -13
- package/dist/cssm/components/CalendarTime/CalendarTime.js.map +1 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.module.css +1 -1
- package/dist/cssm/components/Card/Card.module.css +7 -7
- package/dist/cssm/components/CardGrid/CardGrid.module.css +3 -3
- package/dist/cssm/components/CardScroll/CardScroll.js +30 -28
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.module.css +16 -16
- package/dist/cssm/components/CarouselBase/CarouselBase.js +71 -44
- package/dist/cssm/components/CarouselBase/CarouselBase.js.map +1 -1
- package/dist/cssm/components/CarouselBase/CarouselBase.module.css +11 -11
- package/dist/cssm/components/CarouselBase/helpers.js +70 -44
- package/dist/cssm/components/CarouselBase/helpers.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.module.css +18 -2
- package/dist/cssm/components/Cell/CellDragger/CellDragger.module.css +2 -2
- package/dist/cssm/components/CellButton/CellButton.module.css +8 -8
- package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js +20 -0
- package/dist/cssm/components/CellButtonGroup/CellButtonGroup.js.map +1 -0
- package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js +15 -0
- package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.js.map +1 -0
- package/dist/cssm/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
- package/dist/cssm/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
- package/dist/cssm/components/ChipsInputBase/Chip/Chip.module.css +16 -16
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +1 -0
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +12 -12
- package/dist/cssm/components/ChipsInputBase/helpers.js +4 -0
- package/dist/cssm/components/ChipsInputBase/helpers.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/types.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +8 -2
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.module.css +1 -1
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js +9 -3
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/cssm/components/Clickable/Clickable.js +29 -22
- package/dist/cssm/components/Clickable/Clickable.js.map +1 -1
- package/dist/cssm/components/Clickable/Clickable.module.css +1 -1
- package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js +1 -1
- package/dist/cssm/components/ColorSchemeProvider/ColorSchemeProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +5 -2
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +12 -7
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cssm/components/ContentBadge/ContentBadge.module.css +7 -7
- package/dist/cssm/components/ContentCard/ContentCard.js +5 -4
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.module.css +6 -6
- package/dist/cssm/components/Counter/Counter.module.css +4 -4
- package/dist/cssm/components/CustomScrollView/CustomScrollView.module.css +2 -2
- package/dist/cssm/components/CustomSelect/CustomSelect.js +108 -70
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.module.css +2 -2
- package/dist/cssm/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +13 -13
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +2 -0
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +9 -9
- package/dist/cssm/components/DateInput/DateInput.js +112 -81
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.module.css +40 -6
- package/dist/cssm/components/DateInput/hooks.js +61 -0
- package/dist/cssm/components/DateInput/hooks.js.map +1 -0
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +107 -82
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +3 -3
- package/dist/cssm/components/DirectionProvider/DirectionProvider.js +15 -0
- package/dist/cssm/components/DirectionProvider/DirectionProvider.js.map +1 -0
- package/dist/cssm/components/DropZone/DropZone.module.css +2 -2
- package/dist/cssm/components/FixedLayout/FixedLayout.module.css +3 -3
- package/dist/cssm/components/Flex/Flex.js +3 -5
- package/dist/cssm/components/Flex/Flex.js.map +1 -1
- package/dist/cssm/components/Flex/Flex.module.css +40 -23
- package/dist/cssm/components/FloatingArrow/FloatingArrow.module.css +1 -1
- package/dist/cssm/components/Footer/Footer.module.css +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +24 -24
- package/dist/cssm/components/FormItem/FormItem.module.css +11 -10
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
- package/dist/cssm/components/GridAvatar/GridAvatar.module.css +2 -2
- package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
- package/dist/cssm/components/Group/Group.module.css +16 -16
- package/dist/cssm/components/Header/Header.module.css +6 -6
- package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +3 -3
- package/dist/cssm/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +2 -2
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +28 -23
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
- package/dist/cssm/components/IconButton/IconButton.module.css +11 -11
- package/dist/cssm/components/ImageBase/ImageBase.js +5 -4
- package/dist/cssm/components/ImageBase/ImageBase.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBase.module.css +15 -6
- package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
- package/dist/cssm/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js +3 -4
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js +25 -0
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/hooks.js.map +1 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/types.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.module.css +3 -3
- package/dist/cssm/components/Input/Input.module.css +5 -5
- package/dist/cssm/components/InputLike/InputLike.module.css +3 -3
- package/dist/cssm/components/Link/Link.module.css +6 -6
- package/dist/cssm/components/Mark/Mark.module.css +2 -2
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
- package/dist/cssm/components/ModalCard/ModalCard.js +3 -11
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.module.css +4 -4
- package/dist/cssm/components/ModalCard/ModalCardInternal.js +3 -2
- package/dist/cssm/components/ModalCard/ModalCardInternal.js.map +1 -1
- package/dist/cssm/components/ModalCard/types.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +30 -7
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +7 -7
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +5 -6
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.module.css +0 -29
- package/dist/cssm/components/ModalOutlet/ModalOutlet.module.css +1 -1
- package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js +24 -0
- package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.js.map +1 -0
- package/dist/cssm/components/ModalOutsideButton/ModalOutsideButton.module.css +31 -0
- package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js +16 -0
- package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.js.map +1 -0
- package/dist/cssm/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
- package/dist/cssm/components/ModalOverlay/ModalOverlay.module.css +2 -2
- package/dist/cssm/components/ModalPage/ModalPage.js +3 -11
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.module.css +15 -16
- package/dist/cssm/components/ModalPage/ModalPageBase.js +49 -0
- package/dist/cssm/components/ModalPage/ModalPageBase.js.map +1 -0
- package/dist/cssm/components/ModalPage/ModalPageInternal.js +21 -32
- package/dist/cssm/components/ModalPage/ModalPageInternal.js.map +1 -1
- package/dist/cssm/components/ModalPage/types.js.map +1 -1
- package/dist/cssm/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.js +12 -3
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalRootContext.js +1 -0
- package/dist/cssm/components/ModalRoot/useModalRootContext.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js +20 -7
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltip.module.css +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js +13 -4
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContainer.js.map +1 -1
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js +9 -0
- package/dist/cssm/components/OnboardingTooltip/OnboardingTooltipContext.js.map +1 -0
- package/dist/cssm/components/Pagination/Pagination.js +5 -2
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.module.css +1 -1
- package/dist/cssm/components/Pagination/PaginationPage/PaginationPage.module.css +9 -9
- package/dist/cssm/components/Panel/Panel.module.css +3 -3
- package/dist/cssm/components/PanelHeader/PanelHeader.module.css +30 -30
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +3 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +16 -8
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
- package/dist/cssm/components/Placeholder/Placeholder.module.css +3 -3
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +9 -2
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
- package/dist/cssm/components/Popover/Popover.js +4 -4
- package/dist/cssm/components/Popover/Popover.js.map +1 -1
- package/dist/cssm/components/Popover/Popover.module.css +1 -1
- package/dist/cssm/components/Popover/usePopover.js +62 -44
- package/dist/cssm/components/Popover/usePopover.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +15 -5
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.js +29 -9
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.module.css +20 -9
- package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +14 -14
- package/dist/cssm/components/Radio/Radio.module.css +1 -1
- package/dist/cssm/components/Radio/RadioInput/RadioInput.module.css +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.module.css +1 -1
- package/dist/cssm/components/Removable/Removable.js +8 -4
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.module.css +19 -6
- package/dist/cssm/components/RichCell/RichCell.module.css +10 -10
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
- package/dist/cssm/components/Root/Root.module.css +10 -10
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +1 -0
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.module.css +12 -12
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js +4 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.js.map +1 -1
- package/dist/cssm/components/ScrollArrow/ScrollArrow.module.css +15 -14
- package/dist/cssm/components/Search/Search.js +7 -2
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/Search/Search.module.css +44 -32
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +10 -7
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +16 -7
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +14 -14
- package/dist/cssm/components/Select/Select.module.css +15 -15
- package/dist/cssm/components/SelectionControl/SelectionControl.module.css +2 -2
- package/dist/cssm/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
- package/dist/cssm/components/Separator/Separator.module.css +3 -3
- package/dist/cssm/components/SimpleCell/SimpleCell.module.css +18 -16
- package/dist/cssm/components/SimpleGrid/SimpleGrid.module.css +2 -2
- package/dist/cssm/components/Skeleton/Skeleton.module.css +8 -8
- package/dist/cssm/components/Slider/Slider.js +20 -17
- package/dist/cssm/components/Slider/Slider.js.map +1 -1
- package/dist/cssm/components/Slider/Slider.module.css +25 -4
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js +5 -1
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.js.map +1 -1
- package/dist/cssm/components/Slider/SliderThumb/SliderThumb.module.css +8 -8
- package/dist/cssm/components/Snackbar/Snackbar.js +6 -3
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.module.css +23 -6
- package/dist/cssm/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
- package/dist/cssm/components/Snackbar/utils.js +11 -8
- package/dist/cssm/components/Snackbar/utils.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.module.css +1 -1
- package/dist/cssm/components/Spinner/Spinner.module.css +2 -2
- package/dist/cssm/components/SplitCol/SplitCol.module.css +9 -9
- package/dist/cssm/components/SplitLayout/SplitLayout.module.css +2 -2
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +10 -6
- package/dist/cssm/components/Switch/Switch.js +4 -1
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.module.css +25 -17
- package/dist/cssm/components/Tabbar/Tabbar.module.css +5 -5
- package/dist/cssm/components/TabbarItem/TabbarItem.module.css +16 -16
- package/dist/cssm/components/Tabs/Tabs.js +3 -1
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.module.css +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.module.css +21 -20
- package/dist/cssm/components/Tappable/Tappable.module.css +7 -7
- package/dist/cssm/components/Textarea/Textarea.module.css +7 -3
- package/dist/cssm/components/ToolButton/ToolButton.module.css +7 -7
- package/dist/cssm/components/Tooltip/Tooltip.js +7 -80
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Tooltip/useTooltip.js +97 -0
- package/dist/cssm/components/Tooltip/useTooltip.js.map +1 -0
- package/dist/cssm/components/TooltipBase/TooltipBase.module.css +9 -9
- package/dist/cssm/components/Touch/Touch.js +2 -2
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.module.css +96 -96
- package/dist/cssm/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
- package/dist/cssm/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
- package/dist/cssm/components/Typography/Footnote/Footnote.module.css +32 -32
- package/dist/cssm/components/Typography/Headline/Headline.module.css +20 -20
- package/dist/cssm/components/Typography/Paragraph/Paragraph.module.css +16 -16
- package/dist/cssm/components/Typography/Subhead/Subhead.module.css +16 -16
- package/dist/cssm/components/Typography/Text/Text.module.css +16 -16
- package/dist/cssm/components/Typography/Title/Title.module.css +48 -48
- package/dist/cssm/components/Typography/Typography.module.css +1 -1
- package/dist/cssm/components/UnstyledTextField/UnstyledTextField.module.css +5 -5
- package/dist/cssm/components/UsersStack/UsersStack.js +4 -7
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.module.css +4 -4
- package/dist/cssm/components/View/View.module.css +8 -8
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.module.css +10 -10
- package/dist/cssm/components/WriteBar/WriteBar.module.css +10 -11
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
- package/dist/cssm/context/CalendarDirectionContext.js.map +1 -1
- package/dist/cssm/helpers/getValueByKey.js +17 -0
- package/dist/cssm/helpers/getValueByKey.js.map +1 -0
- package/dist/cssm/hooks/useAutoDetectDirection.js +21 -0
- package/dist/cssm/hooks/useAutoDetectDirection.js.map +1 -0
- package/dist/cssm/hooks/useCalendar.js.map +1 -1
- package/dist/cssm/hooks/useConfigDirection.js +7 -0
- package/dist/cssm/hooks/useConfigDirection.js.map +1 -0
- package/dist/cssm/hooks/useDateInput.js +3 -3
- package/dist/cssm/hooks/useDateInput.js.map +1 -1
- package/dist/cssm/hooks/useFloatingElement.js +70 -0
- package/dist/cssm/hooks/useFloatingElement.js.map +1 -0
- package/dist/cssm/hooks/useFocusVisible.js +10 -1
- package/dist/cssm/hooks/useFocusVisible.js.map +1 -1
- package/dist/cssm/hooks/useReferenceElement.js +13 -0
- package/dist/cssm/hooks/useReferenceElement.js.map +1 -0
- package/dist/cssm/hooks/useTabsNavigation.js +3 -3
- package/dist/cssm/hooks/useTabsNavigation.js.map +1 -1
- package/dist/cssm/hooks/useTodayDate.js +4 -4
- package/dist/cssm/hooks/useTodayDate.js.map +1 -1
- package/dist/cssm/index.js +6 -1
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/SSR.js +2 -1
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/date.js +21 -0
- package/dist/cssm/lib/date.js.map +1 -1
- package/dist/cssm/lib/direction/index.js +3 -0
- package/dist/cssm/lib/direction/index.js.map +1 -0
- package/dist/cssm/lib/dom.js +6 -0
- package/dist/cssm/lib/dom.js.map +1 -1
- package/dist/cssm/lib/floating/adapters.js.map +1 -1
- package/dist/cssm/lib/floating/customResizeObserver.js +2 -5
- package/dist/cssm/lib/floating/customResizeObserver.js.map +1 -1
- package/dist/cssm/lib/floating/functions.js +1 -1
- package/dist/cssm/lib/floating/functions.js.map +1 -1
- package/dist/cssm/lib/floating/types/component.js.map +1 -1
- package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
- package/dist/cssm/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
- package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
- package/dist/cssm/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
- package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
- package/dist/cssm/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
- package/dist/cssm/lib/object.js +9 -0
- package/dist/cssm/lib/object.js.map +1 -0
- package/dist/cssm/lib/select.js.map +1 -1
- package/dist/cssm/lib/sheet/controllers/BottomSheetController.js +13 -23
- package/dist/cssm/lib/sheet/controllers/BottomSheetController.js.map +1 -1
- package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js +4 -5
- package/dist/cssm/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
- package/dist/cssm/lib/tokens/TokensClassProvider.module.css +1 -1
- package/dist/cssm/styles/common.css +2 -2
- package/dist/cssm/styles/constants.css +2 -2
- package/dist/cssm/styles/themes.css +22 -5
- package/dist/helpers/getMergedSameEventsByProps.d.ts.map +1 -1
- package/dist/helpers/getValueByKey.d.ts +5 -0
- package/dist/helpers/getValueByKey.d.ts.map +1 -0
- package/dist/helpers/getValueByKey.js +17 -0
- package/dist/helpers/getValueByKey.js.map +1 -0
- package/dist/helpers/math.d.ts.map +1 -1
- package/dist/hooks/useAdaptivityConditionalRender/helpers.d.ts.map +1 -1
- package/dist/hooks/useAutoDetectColorScheme.d.ts.map +1 -1
- package/dist/hooks/useAutoDetectDirection.d.ts +3 -0
- package/dist/hooks/useAutoDetectDirection.d.ts.map +1 -0
- package/dist/hooks/useAutoDetectDirection.js +21 -0
- package/dist/hooks/useAutoDetectDirection.js.map +1 -0
- package/dist/hooks/useBooleanState.d.ts.map +1 -1
- package/dist/hooks/useCalendar.d.ts +1 -1
- package/dist/hooks/useCalendar.d.ts.map +1 -1
- package/dist/hooks/useCalendar.js.map +1 -1
- package/dist/hooks/useConfigDirection.d.ts +3 -0
- package/dist/hooks/useConfigDirection.d.ts.map +1 -0
- package/dist/hooks/useConfigDirection.js +7 -0
- package/dist/hooks/useConfigDirection.js.map +1 -0
- package/dist/hooks/useDateInput.d.ts +4 -4
- package/dist/hooks/useDateInput.d.ts.map +1 -1
- package/dist/hooks/useDateInput.js +3 -3
- package/dist/hooks/useDateInput.js.map +1 -1
- package/dist/hooks/useDraggableWithDomApi/autoScroll.d.ts.map +1 -1
- package/dist/hooks/useDraggableWithDomApi/useDraggableWithDomApi.d.ts.map +1 -1
- package/dist/hooks/useDraggableWithDomApi/utils.d.ts.map +1 -1
- package/dist/hooks/useFloatingElement.d.ts +26 -0
- package/dist/hooks/useFloatingElement.d.ts.map +1 -0
- package/dist/hooks/useFloatingElement.js +71 -0
- package/dist/hooks/useFloatingElement.js.map +1 -0
- package/dist/hooks/useFocusTrap.d.ts.map +1 -1
- package/dist/hooks/useFocusVisible.d.ts +9 -1
- package/dist/hooks/useFocusVisible.d.ts.map +1 -1
- package/dist/hooks/useFocusVisible.js +10 -1
- package/dist/hooks/useFocusVisible.js.map +1 -1
- package/dist/hooks/useGlobalEscKeyDown.d.ts.map +1 -1
- package/dist/hooks/useGlobalOnClickOutside.d.ts.map +1 -1
- package/dist/hooks/useMutationObserver.d.ts.map +1 -1
- package/dist/hooks/useNativeFormResetListener.d.ts.map +1 -1
- package/dist/hooks/usePagination.d.ts.map +1 -1
- package/dist/hooks/usePatchChildren.d.ts.map +1 -1
- package/dist/hooks/useReferenceElement.d.ts +3 -0
- package/dist/hooks/useReferenceElement.d.ts.map +1 -0
- package/dist/hooks/useReferenceElement.js +13 -0
- package/dist/hooks/useReferenceElement.js.map +1 -0
- package/dist/hooks/useTabsNavigation.d.ts +1 -1
- package/dist/hooks/useTabsNavigation.d.ts.map +1 -1
- package/dist/hooks/useTabsNavigation.js +3 -3
- package/dist/hooks/useTabsNavigation.js.map +1 -1
- package/dist/hooks/useTodayDate.d.ts.map +1 -1
- package/dist/hooks/useTodayDate.js +4 -4
- package/dist/hooks/useTodayDate.js.map +1 -1
- package/dist/index.d.ts +9 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/SSR.d.ts +2 -0
- package/dist/lib/SSR.d.ts.map +1 -1
- package/dist/lib/SSR.js +2 -1
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/accessibility.d.ts.map +1 -1
- package/dist/lib/animation/useCSSKeyframesAnimationController.d.ts.map +1 -1
- package/dist/lib/animation/useCSSTransition.d.ts.map +1 -1
- package/dist/lib/calendar.d.ts.map +1 -1
- package/dist/lib/callMultiple.d.ts.map +1 -1
- package/dist/lib/children.d.ts.map +1 -1
- package/dist/lib/createPortal.d.ts.map +1 -1
- package/dist/lib/date.d.ts +2 -0
- package/dist/lib/date.d.ts.map +1 -1
- package/dist/lib/date.js +21 -0
- package/dist/lib/date.js.map +1 -1
- package/dist/lib/direction/index.d.ts +2 -0
- package/dist/lib/direction/index.d.ts.map +1 -0
- package/dist/lib/direction/index.js +3 -0
- package/dist/lib/direction/index.js.map +1 -0
- package/dist/lib/dom.d.ts +1 -0
- package/dist/lib/dom.d.ts.map +1 -1
- package/dist/lib/dom.js +6 -0
- package/dist/lib/dom.js.map +1 -1
- package/dist/lib/floating/adapters.d.ts +1 -0
- package/dist/lib/floating/adapters.d.ts.map +1 -1
- package/dist/lib/floating/adapters.js.map +1 -1
- package/dist/lib/floating/customResizeObserver.d.ts +1 -1
- package/dist/lib/floating/customResizeObserver.d.ts.map +1 -1
- package/dist/lib/floating/customResizeObserver.js +2 -5
- package/dist/lib/floating/customResizeObserver.js.map +1 -1
- package/dist/lib/floating/functions.d.ts +8 -1
- package/dist/lib/floating/functions.d.ts.map +1 -1
- package/dist/lib/floating/functions.js +1 -1
- package/dist/lib/floating/functions.js.map +1 -1
- package/dist/lib/floating/types/component.d.ts +10 -0
- package/dist/lib/floating/types/component.d.ts.map +1 -1
- package/dist/lib/floating/types/component.js.map +1 -1
- package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts +3 -1
- package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.d.ts.map +1 -1
- package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js +4 -2
- package/dist/lib/floating/useFloatingMiddlewaresBootstrap/index.js.map +1 -1
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.d.ts.map +1 -1
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js +6 -1
- package/dist/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.js.map +1 -1
- package/dist/lib/floating/useFloatingWithInteractions/useResolveTriggerType.d.ts.map +1 -1
- package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts +4 -0
- package/dist/lib/floating/useReferenceHiddenChangeCallback.d.ts.map +1 -0
- package/dist/lib/floating/useReferenceHiddenChangeCallback.js +21 -0
- package/dist/lib/floating/useReferenceHiddenChangeCallback.js.map +1 -0
- package/dist/lib/fx.d.ts.map +1 -1
- package/dist/lib/isRefObject.d.ts.map +1 -1
- package/dist/lib/object.d.ts +2 -0
- package/dist/lib/object.d.ts.map +1 -0
- package/dist/lib/object.js +9 -0
- package/dist/lib/object.js.map +1 -0
- package/dist/lib/rafSchd.d.ts.map +1 -1
- package/dist/lib/react/simulateReactInput.d.ts.map +1 -1
- package/dist/lib/select.d.ts +1 -0
- package/dist/lib/select.d.ts.map +1 -1
- package/dist/lib/select.js.map +1 -1
- package/dist/lib/sheet/controllers/BottomSheetController.d.ts.map +1 -1
- package/dist/lib/sheet/controllers/BottomSheetController.js +13 -23
- package/dist/lib/sheet/controllers/BottomSheetController.js.map +1 -1
- package/dist/lib/sheet/controllers/CSSTransitionController.d.ts.map +1 -1
- package/dist/lib/sheet/controllers/CSSTransitionController.js +4 -5
- package/dist/lib/sheet/controllers/CSSTransitionController.js.map +1 -1
- package/dist/lib/sheet/useBottomSheet.d.ts.map +1 -1
- package/dist/lib/touch/functions.d.ts.map +1 -1
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/vkui.css +1 -1
- package/dist/vkui.css.map +1 -1
- package/package.json +5 -4
- package/src/components/Accordion/Accordion.module.css +6 -6
- package/src/components/Accordion/Accordion.tsx +2 -2
- package/src/components/ActionSheet/ActionSheet.module.css +9 -9
- package/src/components/ActionSheet/ActionSheet.tsx +5 -2
- package/src/components/ActionSheet/ActionSheetDropdownMenu.tsx +11 -3
- package/src/components/ActionSheet/ActionSheetDropdownSheet.tsx +11 -3
- package/src/components/ActionSheet/types.ts +4 -0
- package/src/components/ActionSheetItem/ActionSheetItem.module.css +17 -17
- package/src/components/Alert/Alert.module.css +25 -25
- package/src/components/Alert/Alert.tsx +33 -118
- package/src/components/Alert/AlertBase.tsx +156 -0
- package/src/components/Alert/AlertTypography.tsx +2 -1
- package/src/components/AppRoot/AppRoot.module.css +2 -2
- package/src/components/AppRoot/AppRootStyleContainer/AppRootStyleContainer.tsx +1 -1
- package/src/components/AppRoot/ScrollContext.tsx +162 -50
- package/src/components/AspectRatio/AspectRatio.module.css +2 -2
- package/src/components/Avatar/Avatar.module.css +1 -1
- package/src/components/Avatar/AvatarBadge/AvatarBadge.module.css +8 -3
- package/src/components/Avatar/AvatarBadge/AvatarBadgeWithPreset.tsx +4 -1
- package/src/components/Banner/Banner.module.css +17 -17
- package/src/components/Button/Button.module.css +11 -11
- package/src/components/ButtonGroup/ButtonGroup.tsx +2 -0
- package/src/components/Calendar/Calendar.module.css +7 -7
- package/src/components/Calendar/Calendar.tsx +110 -100
- package/src/components/CalendarDay/CalendarDay.module.css +11 -11
- package/src/components/CalendarDay/CalendarDay.tsx +1 -3
- package/src/components/CalendarDays/CalendarDays.module.css +7 -7
- package/src/components/CalendarDays/CalendarDays.tsx +1 -1
- package/src/components/CalendarHeader/CalendarHeader.module.css +4 -4
- package/src/components/CalendarHeader/CalendarHeader.tsx +1 -3
- package/src/components/CalendarRange/CalendarRange.module.css +5 -5
- package/src/components/CalendarRange/CalendarRange.tsx +105 -109
- package/src/components/CalendarTime/CalendarTime.module.css +1 -1
- package/src/components/CalendarTime/CalendarTime.tsx +17 -9
- package/src/components/Card/Card.module.css +7 -7
- package/src/components/CardGrid/CardGrid.module.css +3 -3
- package/src/components/CardScroll/CardScroll.module.css +16 -16
- package/src/components/CardScroll/CardScroll.tsx +49 -29
- package/src/components/CarouselBase/CarouselBase.module.css +11 -11
- package/src/components/CarouselBase/CarouselBase.tsx +107 -44
- package/src/components/CarouselBase/helpers.ts +108 -46
- package/src/components/Cell/Cell.module.css +16 -2
- package/src/components/Cell/CellDragger/CellDragger.module.css +2 -2
- package/src/components/CellButton/CellButton.module.css +7 -7
- package/src/components/CellButtonGroup/CellButtonGroup.tsx +20 -0
- package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.module.css +5 -0
- package/src/components/CellButtonGroup/CellButtonGroupSeparator/CellButtonGroupSeparator.tsx +21 -0
- package/src/components/Checkbox/CheckboxSimple/CheckboxSimple.module.css +2 -2
- package/src/components/ChipsInputBase/Chip/Chip.module.css +16 -16
- package/src/components/ChipsInputBase/ChipsInputBase.module.css +10 -10
- package/src/components/ChipsInputBase/ChipsInputBase.tsx +1 -0
- package/src/components/ChipsInputBase/helpers.ts +5 -1
- package/src/components/ChipsInputBase/types.ts +1 -1
- package/src/components/ChipsSelect/ChipsSelect.module.css +1 -1
- package/src/components/ChipsSelect/ChipsSelect.tsx +8 -1
- package/src/components/ChipsSelect/useChipsSelect.ts +12 -1
- package/src/components/Clickable/Clickable.module.css +1 -1
- package/src/components/Clickable/Clickable.tsx +37 -25
- package/src/components/ColorSchemeProvider/ColorSchemeProvider.tsx +1 -1
- package/src/components/ConfigProvider/ConfigProvider.tsx +4 -1
- package/src/components/ConfigProvider/ConfigProviderContext.tsx +29 -15
- package/src/components/ContentBadge/ContentBadge.module.css +7 -7
- package/src/components/ContentCard/ContentCard.module.css +6 -6
- package/src/components/ContentCard/ContentCard.tsx +9 -3
- package/src/components/Counter/Counter.module.css +4 -4
- package/src/components/CustomScrollView/CustomScrollView.module.css +2 -2
- package/src/components/CustomSelect/CustomSelect.module.css +2 -2
- package/src/components/CustomSelect/CustomSelect.tsx +153 -93
- package/src/components/CustomSelect/CustomSelectInput/CustomSelectInput.module.css +12 -12
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.module.css +2 -2
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -0
- package/src/components/CustomSelectOption/CustomSelectOption.module.css +8 -8
- package/src/components/DateInput/DateInput.module.css +38 -5
- package/src/components/DateInput/DateInput.tsx +152 -89
- package/src/components/DateInput/hooks.ts +93 -0
- package/src/components/DateRangeInput/DateRangeInput.module.css +3 -3
- package/src/components/DateRangeInput/DateRangeInput.tsx +127 -83
- package/src/components/DirectionProvider/DirectionProvider.tsx +17 -0
- package/src/components/DropZone/DropZone.module.css +2 -2
- package/src/components/FixedLayout/FixedLayout.module.css +3 -3
- package/src/components/Flex/Flex.module.css +26 -14
- package/src/components/Flex/Flex.tsx +3 -6
- package/src/components/FloatingArrow/FloatingArrow.module.css +1 -1
- package/src/components/Footer/Footer.module.css +1 -1
- package/src/components/FormField/FormField.module.css +24 -24
- package/src/components/FormItem/FormItem.module.css +11 -10
- package/src/components/FormLayoutGroup/FormLayoutGroup.module.css +5 -5
- package/src/components/GridAvatar/GridAvatar.module.css +2 -2
- package/src/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +2 -2
- package/src/components/Group/Group.module.css +16 -16
- package/src/components/Header/Header.module.css +5 -5
- package/src/components/HorizontalCell/HorizontalCell.module.css +3 -3
- package/src/components/HorizontalScroll/HorizontalCellShowMore/HorizontalCellShowMore.module.css +2 -2
- package/src/components/HorizontalScroll/HorizontalScroll.module.css +10 -4
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +47 -19
- package/src/components/IconButton/IconButton.module.css +9 -9
- package/src/components/ImageBase/ImageBase.module.css +15 -6
- package/src/components/ImageBase/ImageBase.tsx +16 -5
- package/src/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +5 -5
- package/src/components/ImageBase/ImageBaseFloatElement/ImageBaseFloatElement.module.css +8 -8
- package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +2 -2
- package/src/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.tsx +5 -4
- package/src/components/ImageBase/ImageBaseOverlay/hooks.ts +31 -0
- package/src/components/ImageBase/ImageBaseOverlay/types.ts +4 -0
- package/src/components/InfoRow/InfoRow.module.css +3 -3
- package/src/components/Input/Input.module.css +5 -5
- package/src/components/InputLike/InputLike.module.css +3 -3
- package/src/components/Link/Link.module.css +6 -6
- package/src/components/Mark/Mark.module.css +2 -2
- package/src/components/MiniInfoCell/MiniInfoCell.module.css +5 -5
- package/src/components/ModalCard/ModalCard.module.css +4 -4
- package/src/components/ModalCard/ModalCard.tsx +3 -9
- package/src/components/ModalCard/ModalCardInternal.tsx +2 -0
- package/src/components/ModalCard/types.ts +2 -1
- package/src/components/ModalCardBase/ModalCardBase.module.css +7 -7
- package/src/components/ModalCardBase/ModalCardBase.tsx +50 -10
- package/src/components/ModalDismissButton/ModalDismissButton.module.css +0 -28
- package/src/components/ModalDismissButton/ModalDismissButton.tsx +11 -9
- package/src/components/ModalOutlet/ModalOutlet.module.css +1 -1
- package/src/components/ModalOutsideButton/ModalOutsideButton.module.css +30 -0
- package/src/components/ModalOutsideButton/ModalOutsideButton.tsx +38 -0
- package/src/components/ModalOutsideButtons/ModalOutsideButtons.module.css +6 -0
- package/src/components/ModalOutsideButtons/ModalOutsideButtons.tsx +14 -0
- package/src/components/ModalOverlay/ModalOverlay.module.css +2 -2
- package/src/components/ModalPage/ModalPage.module.css +15 -16
- package/src/components/ModalPage/ModalPage.tsx +3 -10
- package/src/components/ModalPage/ModalPageBase.tsx +92 -0
- package/src/components/ModalPage/ModalPageInternal.tsx +23 -42
- package/src/components/ModalPage/types.ts +12 -0
- package/src/components/ModalPageFooter/ModalPageFooter.module.css +4 -4
- package/src/components/ModalPageHeader/ModalPageHeader.module.css +2 -3
- package/src/components/ModalRoot/types.ts +1 -0
- package/src/components/ModalRoot/useModalManager.tsx +12 -5
- package/src/components/ModalRoot/useModalRootContext.ts +1 -1
- package/src/components/OnboardingTooltip/OnboardingTooltip.module.css +1 -1
- package/src/components/OnboardingTooltip/OnboardingTooltip.tsx +21 -12
- package/src/components/OnboardingTooltip/OnboardingTooltipContainer.tsx +10 -1
- package/src/components/OnboardingTooltip/OnboardingTooltipContext.tsx +11 -0
- package/src/components/Pagination/Pagination.module.css +1 -1
- package/src/components/Pagination/Pagination.tsx +5 -2
- package/src/components/Pagination/PaginationPage/PaginationPage.module.css +8 -8
- package/src/components/Panel/Panel.module.css +3 -3
- package/src/components/PanelHeader/PanelHeader.module.css +27 -27
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +3 -0
- package/src/components/PanelHeaderButton/PanelHeaderButton.module.css +14 -8
- package/src/components/PanelHeaderContent/PanelHeaderContent.module.css +10 -10
- package/src/components/PanelHeaderContext/PanelHeaderContext.module.css +7 -7
- package/src/components/Placeholder/Placeholder.module.css +3 -3
- package/src/components/PlatformProvider/PlatformProvider.tsx +1 -1
- package/src/components/PopoutWrapper/PopoutWrapper.module.css +14 -9
- package/src/components/PopoutWrapper/PopoutWrapper.tsx +25 -2
- package/src/components/Popover/Popover.module.css +1 -1
- package/src/components/Popover/Popover.tsx +6 -4
- package/src/components/Popover/usePopover.tsx +106 -85
- package/src/components/Popper/Popper.tsx +17 -6
- package/src/components/Progress/Progress.module.css +20 -9
- package/src/components/Progress/Progress.tsx +38 -9
- package/src/components/PullToRefresh/PullToRefresh.module.css +14 -14
- package/src/components/Radio/Radio.module.css +1 -1
- package/src/components/Radio/RadioInput/RadioInput.module.css +1 -1
- package/src/components/RadioGroup/RadioGroup.module.css +1 -1
- package/src/components/Removable/Removable.module.css +19 -6
- package/src/components/Removable/Removable.tsx +10 -3
- package/src/components/RichCell/RichCell.module.css +10 -10
- package/src/components/RichCell/RichCellIcon/RichCellIcon.module.css +4 -4
- package/src/components/Root/Root.module.css +10 -10
- package/src/components/ScreenSpinner/ScreenSpinner.module.css +11 -11
- package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -1
- package/src/components/ScrollArrow/ScrollArrow.module.css +15 -14
- package/src/components/ScrollArrow/ScrollArrow.tsx +10 -1
- package/src/components/Search/Search.module.css +40 -28
- package/src/components/Search/Search.tsx +16 -0
- package/src/components/SegmentedControl/SegmentedControl.module.css +16 -7
- package/src/components/SegmentedControl/SegmentedControl.tsx +11 -13
- package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +11 -11
- package/src/components/Select/Select.module.css +14 -14
- package/src/components/SelectionControl/SelectionControl.module.css +2 -2
- package/src/components/SelectionControl/SelectionControlLabel/SelectionControlLabel.module.css +5 -5
- package/src/components/Separator/Separator.module.css +3 -3
- package/src/components/SimpleCell/SimpleCell.module.css +18 -16
- package/src/components/SimpleGrid/SimpleGrid.module.css +2 -2
- package/src/components/Skeleton/Skeleton.module.css +8 -8
- package/src/components/Slider/Slider.module.css +25 -4
- package/src/components/Slider/Slider.tsx +23 -15
- package/src/components/Slider/SliderThumb/SliderThumb.module.css +7 -7
- package/src/components/Slider/SliderThumb/SliderThumb.tsx +5 -5
- package/src/components/Snackbar/Snackbar.module.css +23 -6
- package/src/components/Snackbar/Snackbar.tsx +7 -0
- package/src/components/Snackbar/subcomponents/Basic/Basic.module.css +9 -8
- package/src/components/Snackbar/utils.ts +24 -6
- package/src/components/Spacing/Spacing.module.css +1 -1
- package/src/components/Spinner/Spinner.module.css +2 -2
- package/src/components/SplitCol/SplitCol.module.css +9 -9
- package/src/components/SplitLayout/SplitLayout.module.css +2 -2
- package/src/components/SubnavigationBar/SubnavigationBar.module.css +4 -4
- package/src/components/SubnavigationButton/SubnavigationButton.module.css +9 -5
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -0
- package/src/components/Switch/Switch.module.css +25 -17
- package/src/components/Switch/Switch.tsx +4 -0
- package/src/components/Tabbar/Tabbar.module.css +5 -5
- package/src/components/TabbarItem/TabbarItem.module.css +16 -16
- package/src/components/Tabs/Tabs.module.css +1 -1
- package/src/components/Tabs/Tabs.tsx +3 -1
- package/src/components/TabsItem/TabsItem.module.css +21 -20
- package/src/components/Tappable/Tappable.module.css +7 -7
- package/src/components/Textarea/Textarea.module.css +7 -3
- package/src/components/ToolButton/ToolButton.module.css +7 -7
- package/src/components/Tooltip/Tooltip.tsx +9 -142
- package/src/components/Tooltip/useTooltip.tsx +168 -0
- package/src/components/TooltipBase/TooltipBase.module.css +9 -9
- package/src/components/Touch/Touch.tsx +35 -3
- package/src/components/Typography/Caption/Caption.module.css +96 -96
- package/src/components/Typography/DisplayTitle/DisplayTitle.module.css +64 -64
- package/src/components/Typography/EllipsisText/EllipsisText.module.css +3 -3
- package/src/components/Typography/Footnote/Footnote.module.css +32 -32
- package/src/components/Typography/Headline/Headline.module.css +20 -20
- package/src/components/Typography/Paragraph/Paragraph.module.css +16 -16
- package/src/components/Typography/Subhead/Subhead.module.css +16 -16
- package/src/components/Typography/Text/Text.module.css +16 -16
- package/src/components/Typography/Title/Title.module.css +48 -48
- package/src/components/Typography/Typography.module.css +1 -1
- package/src/components/UnstyledTextField/UnstyledTextField.module.css +4 -4
- package/src/components/UsersStack/UsersStack.module.css +4 -4
- package/src/components/UsersStack/UsersStack.tsx +3 -7
- package/src/components/View/View.module.css +8 -8
- package/src/components/VisuallyHidden/VisuallyHidden.module.css +8 -8
- package/src/components/WriteBar/WriteBar.module.css +10 -10
- package/src/components/WriteBarIcon/WriteBarIcon.module.css +9 -9
- package/src/context/CalendarDirectionContext.ts +1 -1
- package/src/helpers/getValueByKey.ts +25 -0
- package/src/hooks/useAutoDetectDirection.ts +18 -0
- package/src/hooks/useCalendar.ts +1 -1
- package/src/hooks/useConfigDirection.ts +8 -0
- package/src/hooks/useDateInput.ts +6 -6
- package/src/hooks/useFloatingElement.tsx +172 -0
- package/src/hooks/useFocusVisible.ts +12 -1
- package/src/hooks/useReferenceElement.tsx +13 -0
- package/src/hooks/useTabsNavigation.ts +5 -3
- package/src/hooks/useTodayDate.ts +34 -31
- package/src/index.ts +9 -2
- package/src/lib/SSR.tsx +11 -2
- package/src/lib/date.ts +29 -0
- package/src/lib/direction/index.ts +1 -0
- package/src/lib/dom.tsx +8 -0
- package/src/lib/floating/adapters.ts +2 -0
- package/src/lib/floating/customResizeObserver.ts +2 -1
- package/src/lib/floating/functions.ts +15 -7
- package/src/lib/floating/types/component.ts +10 -0
- package/src/lib/floating/useFloatingMiddlewaresBootstrap/index.ts +6 -1
- package/src/lib/floating/useFloatingWithInteractions/useFloatingWithInteractions.ts +2 -3
- package/src/lib/floating/useReferenceHiddenChangeCallback.ts +26 -0
- package/src/lib/object.ts +14 -0
- package/src/lib/select.ts +2 -0
- package/src/lib/sheet/controllers/BottomSheetController.ts +4 -1
- package/src/lib/sheet/controllers/CSSTransitionController.ts +7 -4
- package/src/lib/tokens/TokensClassProvider.module.css +1 -1
- package/src/styles/common.css +2 -2
- package/src/styles/constants.css +2 -2
- package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts +0 -10
- package/dist/components/ModalCardBase/ModalCardBaseCloseButton.d.ts.map +0 -1
- package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -38
- package/dist/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js +0 -39
- package/dist/cssm/components/ModalCardBase/ModalCardBaseCloseButton.js.map +0 -1
- package/dist/cssm/hooks/useDirection.js +0 -55
- package/dist/cssm/hooks/useDirection.js.map +0 -1
- package/dist/cssm/lib/tokens/index.js +0 -5
- package/dist/cssm/lib/tokens/index.js.map +0 -1
- package/dist/hooks/useDirection.d.ts +0 -39
- package/dist/hooks/useDirection.d.ts.map +0 -1
- package/dist/hooks/useDirection.js +0 -55
- package/dist/hooks/useDirection.js.map +0 -1
- package/dist/lib/tokens/index.d.ts +0 -5
- package/dist/lib/tokens/index.d.ts.map +0 -1
- package/dist/lib/tokens/index.js +0 -5
- package/dist/lib/tokens/index.js.map +0 -1
- package/src/components/ModalCardBase/ModalCardBaseCloseButton.tsx +0 -51
- package/src/hooks/useDirection.ts +0 -63
- package/src/lib/tokens/index.ts +0 -11
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/CarouselBase/CarouselBase.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useMutationObserver } from '../../hooks/useMutationObserver';\nimport { useResizeObserver } from '../../hooks/useResizeObserver';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { type CustomTouchEvent } from '../Touch/Touch';\nimport { Bullets } from './Bullets';\nimport { CarouselViewPort } from './CarouselViewPort';\nimport { ScrollArrows } from './ScrollArrows';\nimport {\n ANIMATION_DURATION,\n CONTROL_ELEMENTS_STATE,\n SLIDE_THRESHOLD,\n SLIDES_MANAGER_STATE,\n} from './constants';\nimport { calcMax, calcMin, calculateIndent, getLoopPoints, getTargetIndex } from './helpers';\nimport { useSlideAnimation } from './hooks';\nimport {\n type BaseGalleryProps,\n type ControlElementsState,\n type GallerySlidesState,\n type SlidesManagerState,\n} from './types';\nimport styles from './CarouselBase.module.css';\n\nconst warn = warnOnce('Gallery');\n\nexport const CarouselBase = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = '100%',\n slideIndex = 0,\n dragDisabled = false,\n resizeSource = 'window',\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n align = 'left',\n showArrows,\n getRef,\n arrowSize,\n arrowAreaHeight,\n slideTestId,\n bulletTestId,\n nextArrowTestId,\n prevArrowTestId,\n looped = false,\n ...restProps\n}: BaseGalleryProps): React.ReactNode => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const slidesManager = React.useRef<SlidesManagerState>(SLIDES_MANAGER_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n const layerRef = React.useRef<HTMLDivElement>(null);\n const animationFrameRef = React.useRef<ReturnType<typeof requestAnimationFrame> | null>(null);\n const shiftXCurrentRef = React.useRef<number>(0);\n const shiftXDeltaRef = React.useRef<number>(0);\n const initialized = React.useRef<boolean>(false);\n const { addToAnimationQueue, getAnimateFunction, startAnimation } = useSlideAnimation();\n const isDragging = React.useRef(false);\n\n const [controlElementsState, setControlElementsState] =\n React.useState<ControlElementsState>(CONTROL_ELEMENTS_STATE);\n\n const hasPointer = useAdaptivityHasPointer();\n\n const isCenterAlign = align === 'center';\n\n /*\n * Считает отступ слоя галереи во время драга\n * Используется только для looped=false галереи\n * так как только у нее есть пределы по краям\n */\n const calculateDragIndent = () => {\n const localMax = slidesManager.current.max ?? 0;\n const localMin = slidesManager.current.min ?? 0;\n const indent = shiftXCurrentRef.current + shiftXDeltaRef.current;\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 calculateCanSlideLeft = () => {\n if (looped) {\n return !slidesManager.current.isFullyVisible;\n }\n return !slidesManager.current.isFullyVisible && shiftXCurrentRef.current < 0;\n };\n\n const calculateCanSlideRight = () => {\n if (looped) {\n return !slidesManager.current.isFullyVisible;\n }\n return (\n !slidesManager.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === 'left' &&\n slidesManager.current.containerWidth - shiftXCurrentRef.current <\n (slidesManager.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== 'left' && slideIndex < slidesManager.current.slides.length - 1))\n );\n };\n\n const transformCssStyles = (shiftX: number, animation = false) => {\n shiftX = Math.round(shiftX);\n if (looped) {\n slidesManager.current.loopPoints.forEach((loopPoint) => {\n const { target, index } = loopPoint;\n const slide = slidesStore.current[index];\n if (slide) {\n slide.style.transform = `translate3d(${target(shiftX)}px, 0, 0)`;\n }\n });\n } else {\n Object.values(slidesStore.current).forEach((slide) => {\n if (slide) {\n slide.style.transform = '';\n }\n });\n }\n\n if (layerRef.current) {\n const indent = isDragging.current && !looped ? calculateDragIndent() : shiftX;\n\n layerRef.current.style.transform = `translate3d(${indent}px, 0, 0)`;\n layerRef.current.style.transition = animation\n ? `transform ${ANIMATION_DURATION}ms cubic-bezier(.1, 0, .25, 1)`\n : '';\n }\n };\n\n const requestTransform = (shiftX: number, animation = false) => {\n const { snaps, contentSize, slides } = slidesManager.current;\n\n if (animationFrameRef.current !== null) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n animationFrameRef.current = requestAnimationFrame(() => {\n if (looped && shiftX > snaps[0]) {\n shiftXCurrentRef.current = -contentSize + snaps[0];\n shiftX = shiftXCurrentRef.current + shiftXDeltaRef.current;\n }\n const lastPoint = slides[slides.length - 1].width + slides[slides.length - 1].coordX;\n\n if (looped && shiftX <= -lastPoint) {\n shiftXCurrentRef.current = Math.abs(shiftXDeltaRef.current) + snaps[0];\n }\n transformCssStyles(shiftX, animation);\n });\n };\n\n const initializeSlides = () => {\n if (!rootRef.current || !viewportRef.current) {\n return;\n }\n let localSlides =\n React.Children.map(children, (_item, i): GallerySlidesState => {\n const elem = slidesStore.current[i] || { offsetLeft: 0, offsetWidth: 0 };\n return { coordX: elem.offsetLeft, width: elem.offsetWidth };\n }) || [];\n\n if (localSlides.length === 0) {\n initialized.current = false;\n return;\n }\n\n const containerWidth = rootRef.current.offsetWidth;\n const viewportOffsetWidth = viewportRef.current.offsetWidth;\n const layerWidth = localSlides.reduce((val, slide) => slide.width + val, 0);\n\n if (process.env.NODE_ENV === 'development' && looped) {\n let remainingWidth = containerWidth;\n let slideIndex = 0;\n\n while (remainingWidth > 0 && slideIndex < localSlides.length) {\n remainingWidth -= localSlides[slideIndex].width;\n slideIndex++;\n }\n if (remainingWidth <= 0 && slideIndex === localSlides.length) {\n warn(\n 'Ширины слайдов недостаточно для корректной работы свойства \"looped\". Пожалуйста, сделайте её больше.',\n );\n }\n }\n\n const currentSlideOffsetOnCenterAlignment =\n (containerWidth - (localSlides[slideIndex]?.width ?? 0)) / 2;\n const isFullyVisible =\n align === 'center'\n ? layerWidth + currentSlideOffsetOnCenterAlignment <= containerWidth\n : layerWidth <= containerWidth;\n\n const onlyOneSlide = localSlides.length === 1;\n\n slidesManager.current = {\n ...slidesManager.current,\n layerWidth,\n containerWidth,\n viewportOffsetWidth,\n slides: localSlides,\n isFullyVisible,\n max:\n looped || onlyOneSlide\n ? null\n : calcMax({\n slides: localSlides,\n containerWidth,\n isCenterAlign,\n }),\n min:\n looped || onlyOneSlide\n ? null\n : calcMin({\n containerWidth,\n layerWidth,\n slides: localSlides,\n viewportOffsetWidth,\n isFullyVisible,\n align,\n }),\n };\n const snaps = localSlides.map((_, index) =>\n calculateIndent(index, slidesManager.current, isCenterAlign, looped),\n );\n\n let contentSize = -snaps[snaps.length - 1] + localSlides[localSlides.length - 1].width;\n if (align === 'center') {\n contentSize += snaps[0];\n }\n\n slidesManager.current.snaps = snaps;\n slidesManager.current.contentSize = contentSize;\n // Если галерея не зациклена и слайд всего один, то рассчитывать loopPoints тоже не надо\n if (looped && !onlyOneSlide && !isFullyVisible) {\n slidesManager.current.loopPoints = getLoopPoints(slidesManager.current, containerWidth);\n }\n\n shiftXCurrentRef.current = snaps[slideIndex];\n initialized.current = true;\n\n setControlElementsState({\n canSlideLeft: calculateCanSlideLeft(),\n canSlideRight: calculateCanSlideRight(),\n isDraggable: !(dragDisabled || slidesManager.current.isFullyVisible),\n });\n requestTransform(shiftXCurrentRef.current);\n };\n\n const onResize = () => {\n if (initialized.current) {\n initializeSlides();\n }\n };\n const { window } = useDOM();\n useResizeObserver(resizeSource === 'element' ? rootRef : window, onResize);\n\n const loopedSlideChangePerform = () => {\n const { snaps, slides } = slidesManager.current;\n const indent = snaps[slideIndex];\n let startPoint = shiftXCurrentRef.current;\n\n /**\n * Переключаемся с последнего элемента на первый\n * Для корректной анимации мы прокручиваем последний слайд на всю длину (shiftX) \"вперед\"\n * В конце анимации при отрисовке следующего кадра задаем всем слайдам начальные значения\n */\n if (indent === snaps[0] && shiftXCurrentRef.current <= snaps[snaps.length - 1]) {\n const distance =\n Math.abs(snaps[snaps.length - 1]) + slides[slides.length - 1].width + startPoint;\n\n addToAnimationQueue(\n getAnimateFunction((progress) => {\n const shiftX = startPoint + progress * distance * -1;\n\n transformCssStyles(shiftX);\n\n if (shiftX <= snaps[snaps.length - 1] - slides[slides.length - 1].width) {\n requestAnimationFrame(() => {\n shiftXCurrentRef.current = indent;\n transformCssStyles(snaps[0]);\n });\n }\n }),\n );\n /**\n * Переключаемся с первого слайда на последний\n * Для корректной анимации сначала задаем первым видимым слайдам смещение\n * В следующем кадре начинаем анимация прокрутки \"назад\"\n */\n } else if (indent === snaps[snaps.length - 1] && shiftXCurrentRef.current === snaps[0]) {\n startPoint = indent - slides[slides.length - 1].width;\n\n addToAnimationQueue(() => {\n requestAnimationFrame(() => {\n const shiftX = indent - slides[slides.length - 1].width;\n transformCssStyles(shiftX);\n\n getAnimateFunction((progress) => {\n transformCssStyles(startPoint + progress * slides[slides.length - 1].width);\n })();\n });\n });\n /**\n * Если не обработаны `corner`-кейсы выше, то просто проигрываем анимацию смещения\n */\n } else {\n addToAnimationQueue(() => {\n const distance = Math.abs(indent - startPoint);\n let direction = startPoint <= indent ? 1 : -1;\n\n getAnimateFunction((progress) => {\n const shiftX = startPoint + progress * distance * direction;\n transformCssStyles(shiftX);\n })();\n });\n }\n };\n\n const simpleSlideChangePerform = () => {\n const { snaps } = slidesManager.current;\n requestTransform(snaps[slideIndex], true);\n };\n\n useIsomorphicLayoutEffect(\n function performSlideChange() {\n if (!initialized.current) {\n return;\n }\n const { snaps } = slidesManager.current;\n const indent = snaps[slideIndex];\n\n if (looped) {\n loopedSlideChangePerform();\n } else {\n simpleSlideChangePerform();\n }\n\n startAnimation();\n\n shiftXCurrentRef.current = indent;\n\n setControlElementsState((v) => ({\n ...v,\n canSlideLeft: calculateCanSlideLeft(),\n canSlideRight: calculateCanSlideRight(),\n }));\n },\n [slideIndex],\n );\n\n useIsomorphicLayoutEffect(\n function updateIsDraggable() {\n setControlElementsState((v) => ({\n ...v,\n isDraggable: !(dragDisabled || slidesManager.current.isFullyVisible),\n }));\n },\n [dragDisabled],\n );\n\n useMutationObserver(layerRef, initializeSlides);\n\n useIsomorphicLayoutEffect(initializeSlides, [align, slideWidth, looped]);\n\n const calculateMinDeltaXToSlide = () => {\n return slidesManager.current.slides[slideIndex].width * SLIDE_THRESHOLD;\n };\n\n const slideLeft = (event: React.MouseEvent) => {\n if (slideIndex > 0) {\n shiftXCurrentRef.current += calculateMinDeltaXToSlide();\n }\n onChange?.(\n (slideIndex - 1 + slidesManager.current.slides.length) % slidesManager.current.slides.length,\n );\n onPrevClick?.(event);\n };\n\n const slideRight = (event: React.MouseEvent) => {\n if (slideIndex < slidesManager.current.slides.length - 1) {\n shiftXCurrentRef.current -= calculateMinDeltaXToSlide();\n }\n onChange?.((slideIndex + 1) % slidesManager.current.slides.length);\n onNextClick?.(event);\n };\n\n const onStart = (e: CustomTouchEvent) => {\n e.originalEvent.stopPropagation();\n if (controlElementsState.isDraggable) {\n onDragStart?.(e);\n shiftXCurrentRef.current = slidesManager.current.snaps[slideIndex];\n shiftXDeltaRef.current = 0;\n }\n };\n\n const onMoveX = (e: CustomTouchEvent) => {\n if (controlElementsState.isDraggable) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n isDragging.current = true;\n if (shiftXDeltaRef.current !== e.shiftX) {\n shiftXDeltaRef.current = e.shiftX;\n requestTransform(shiftXCurrentRef.current + shiftXDeltaRef.current);\n }\n }\n }\n };\n\n const onEnd = (e: CustomTouchEvent) => {\n if (controlElementsState.isDraggable) {\n isDragging.current = false;\n let targetIndex = slideIndex;\n if (e.isSlide) {\n targetIndex = getTargetIndex({\n slides: slidesManager.current.slides,\n slideIndex,\n currentShiftX: shiftXCurrentRef.current,\n currentShiftXDelta: shiftXDeltaRef.current,\n max: slidesManager.current.max,\n looped,\n });\n }\n onDragEnd?.(e, targetIndex);\n\n if (targetIndex !== slideIndex) {\n shiftXCurrentRef.current = shiftXCurrentRef.current + shiftXDeltaRef.current;\n onChange?.(targetIndex);\n } else {\n const initialShiftX = slidesManager.current.snaps[targetIndex];\n requestTransform(initialShiftX, true);\n }\n }\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[slideIndex] = slideRef;\n };\n\n const { isDraggable, canSlideRight, canSlideLeft } = controlElementsState;\n\n return (\n <RootComponent\n {...restProps}\n baseClassName={classNames(\n styles.host,\n slideWidth === 'custom' && styles.customWidth,\n isDraggable && styles.draggable,\n )}\n getRootRef={rootRef}\n >\n <CarouselViewPort\n slideWidth={slideWidth}\n slideTestId={slideTestId}\n onStart={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n getRootRef={viewportRef}\n layerRef={layerRef}\n setSlideRef={setSlideRef}\n >\n {children}\n </CarouselViewPort>\n\n {bullets && (\n <Bullets\n bullets={bullets}\n slideIndex={slideIndex}\n count={React.Children.count(children)}\n bulletTestId={bulletTestId}\n />\n )}\n <ScrollArrows\n hasPointer={hasPointer}\n canSlideLeft={canSlideLeft}\n canSlideRight={canSlideRight}\n onSlideRight={slideRight}\n onSlideLeft={slideLeft}\n showArrows={showArrows}\n arrowSize={arrowSize}\n arrowAreaHeight={arrowAreaHeight}\n prevArrowTestId={prevArrowTestId}\n nextArrowTestId={nextArrowTestId}\n />\n </RootComponent>\n );\n};\n"],"names":["React","classNames","useAdaptivityHasPointer","useExternRef","useMutationObserver","useResizeObserver","useDOM","useIsomorphicLayoutEffect","warnOnce","RootComponent","Bullets","CarouselViewPort","ScrollArrows","ANIMATION_DURATION","CONTROL_ELEMENTS_STATE","SLIDE_THRESHOLD","SLIDES_MANAGER_STATE","calcMax","calcMin","calculateIndent","getLoopPoints","getTargetIndex","useSlideAnimation","warn","CarouselBase","bullets","getRootRef","children","slideWidth","slideIndex","dragDisabled","resizeSource","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","align","showArrows","getRef","arrowSize","arrowAreaHeight","slideTestId","bulletTestId","nextArrowTestId","prevArrowTestId","looped","restProps","slidesStore","useRef","slidesManager","rootRef","viewportRef","layerRef","animationFrameRef","shiftXCurrentRef","shiftXDeltaRef","initialized","addToAnimationQueue","getAnimateFunction","startAnimation","isDragging","controlElementsState","setControlElementsState","useState","hasPointer","isCenterAlign","calculateDragIndent","localMax","current","max","localMin","min","indent","Number","calculateCanSlideLeft","isFullyVisible","calculateCanSlideRight","containerWidth","layerWidth","slides","length","transformCssStyles","shiftX","animation","Math","round","loopPoints","forEach","loopPoint","target","index","slide","style","transform","Object","values","transition","requestTransform","snaps","contentSize","cancelAnimationFrame","requestAnimationFrame","lastPoint","width","coordX","abs","initializeSlides","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","viewportOffsetWidth","reduce","val","process","env","NODE_ENV","remainingWidth","currentSlideOffsetOnCenterAlignment","onlyOneSlide","_","canSlideLeft","canSlideRight","isDraggable","onResize","window","loopedSlideChangePerform","startPoint","distance","progress","direction","simpleSlideChangePerform","performSlideChange","v","updateIsDraggable","calculateMinDeltaXToSlide","slideLeft","event","slideRight","onStart","e","originalEvent","stopPropagation","onMoveX","preventDefault","isSlideX","onEnd","targetIndex","isSlide","currentShiftX","currentShiftXDelta","initialShiftX","setSlideRef","slideRef","baseClassName","count","onSlideRight","onSlideLeft"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/CarouselBase/CarouselBase.tsx"],"sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { useAdaptivityHasPointer } from '../../hooks/useAdaptivityHasPointer';\nimport { useConfigDirection } from '../../hooks/useConfigDirection';\nimport { useExternRef } from '../../hooks/useExternRef';\nimport { useMutationObserver } from '../../hooks/useMutationObserver';\nimport { useResizeObserver } from '../../hooks/useResizeObserver';\nimport { useDOM } from '../../lib/dom';\nimport { useIsomorphicLayoutEffect } from '../../lib/useIsomorphicLayoutEffect';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { RootComponent } from '../RootComponent/RootComponent';\nimport { type CustomTouchEvent } from '../Touch/Touch';\nimport { Bullets } from './Bullets';\nimport { CarouselViewPort } from './CarouselViewPort';\nimport { ScrollArrows } from './ScrollArrows';\nimport {\n ANIMATION_DURATION,\n CONTROL_ELEMENTS_STATE,\n SLIDE_THRESHOLD,\n SLIDES_MANAGER_STATE,\n} from './constants';\nimport {\n calcMax,\n calcMin,\n calculateIndent,\n getLoopPoints,\n getTargetIndex,\n isBigger,\n isBiggerOrEqual,\n isLowerOrEqual,\n revertRtlValue,\n validateIndent,\n} from './helpers';\nimport { useSlideAnimation } from './hooks';\nimport {\n type BaseGalleryProps,\n type ControlElementsState,\n type GallerySlidesState,\n type SlidesManagerState,\n} from './types';\nimport styles from './CarouselBase.module.css';\n\nconst warn = warnOnce('Gallery');\n\nexport const CarouselBase = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = '100%',\n slideIndex = 0,\n dragDisabled = false,\n resizeSource = 'window',\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n align = 'left',\n showArrows,\n getRef,\n arrowSize,\n arrowAreaHeight,\n slideTestId,\n bulletTestId,\n nextArrowTestId,\n prevArrowTestId,\n looped = false,\n ...restProps\n}: BaseGalleryProps): React.ReactNode => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const slidesManager = React.useRef<SlidesManagerState>(SLIDES_MANAGER_STATE);\n const textDirection = useConfigDirection();\n const isRtl = textDirection === 'rtl';\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n const layerRef = React.useRef<HTMLDivElement>(null);\n const animationFrameRef = React.useRef<ReturnType<typeof requestAnimationFrame> | null>(null);\n const shiftXCurrentRef = React.useRef<number>(0);\n const shiftXDeltaRef = React.useRef<number>(0);\n const initialized = React.useRef<boolean>(false);\n const { addToAnimationQueue, getAnimateFunction, startAnimation } = useSlideAnimation();\n const isDragging = React.useRef(false);\n\n const [controlElementsState, setControlElementsState] =\n React.useState<ControlElementsState>(CONTROL_ELEMENTS_STATE);\n\n const hasPointer = useAdaptivityHasPointer();\n\n const isCenterAlign = align === 'center';\n\n const calculateCanSlideLeft = () => {\n if (looped) {\n return !slidesManager.current.isFullyVisible;\n }\n const isStartShiftX = isBiggerOrEqual(shiftXCurrentRef.current, 0, isRtl);\n return !slidesManager.current.isFullyVisible && !isStartShiftX;\n };\n\n const calculateCanSlideRight = () => {\n if (looped) {\n return !slidesManager.current.isFullyVisible;\n }\n return (\n !slidesManager.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === 'left' &&\n slidesManager.current.containerWidth - revertRtlValue(shiftXCurrentRef.current, isRtl) <\n (slidesManager.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== 'left' && slideIndex < slidesManager.current.slides.length - 1))\n );\n };\n\n const transformCssStyles = (shiftX: number, animation = false) => {\n shiftX = Math.round(shiftX);\n if (looped) {\n slidesManager.current.loopPoints.forEach((loopPoint) => {\n const { target, index } = loopPoint;\n const slide = slidesStore.current[index];\n if (slide) {\n slide.style.transform = `translate3d(${target(shiftX)}px, 0, 0)`;\n }\n });\n } else {\n Object.values(slidesStore.current).forEach((slide) => {\n if (slide) {\n slide.style.transform = '';\n }\n });\n }\n\n if (layerRef.current) {\n const indent =\n isDragging.current && !looped\n ? validateIndent(\n slidesManager.current,\n shiftXCurrentRef.current + shiftXDeltaRef.current,\n isRtl,\n false,\n )\n : shiftX;\n\n layerRef.current.style.transform = `translate3d(${indent}px, 0, 0)`;\n layerRef.current.style.transition = animation\n ? `transform ${ANIMATION_DURATION}ms cubic-bezier(.1, 0, .25, 1)`\n : '';\n }\n };\n\n const checkShiftOutOfBoundsFromStart = (shiftX: number, snaps: number[]) =>\n isBigger(shiftX, snaps[0], isRtl);\n\n const checkShiftOutOfBoundsFromEnd = (shiftX: number, slides: GallerySlidesState[]) => {\n /**\n * Поскольку при `align=\"center\"` слайды сдвинуты, прежде чем рассчитать крайнюю правую точку,\n * нужно вычесть сдвиг слайдов\n */\n const firstSlideShift =\n align === 'center'\n ? (slidesManager.current.containerWidth - slidesManager.current.slides[0].width) / 2\n : 0;\n\n const lastPoint =\n slides[slides.length - 1].width + slides[slides.length - 1].coordX - firstSlideShift;\n return isRtl ? shiftX >= lastPoint : shiftX <= -lastPoint;\n };\n\n const requestTransform = (shiftX: number, animation = false) => {\n const { snaps, contentSize, slides } = slidesManager.current;\n\n if (animationFrameRef.current !== null) {\n cancelAnimationFrame(animationFrameRef.current);\n }\n animationFrameRef.current = requestAnimationFrame(() => {\n /**\n * Для бесконечной галереи проверяем, что при dnd мы прокрутили левее, чем первый слайд,\n * чтобы сбросить `shiftXCurrentRef`\n */\n if (looped && checkShiftOutOfBoundsFromStart(shiftX, snaps)) {\n const firstSnap = revertRtlValue(snaps[0], isRtl);\n shiftXCurrentRef.current = revertRtlValue(-contentSize + firstSnap, isRtl);\n shiftX = shiftXCurrentRef.current + shiftXDeltaRef.current;\n }\n\n /**\n * Для бесконечной галереи проверяем, что при dnd мы прокрутили правее, чем последний слайд,\n * чтобы правильно пересчитать `shiftXCurrentRef`\n */\n if (looped && checkShiftOutOfBoundsFromEnd(shiftX, slides)) {\n shiftXCurrentRef.current = Math.abs(shiftXDeltaRef.current) + snaps[0];\n }\n transformCssStyles(shiftX, animation);\n });\n };\n\n const initializeSlides = () => {\n if (!rootRef.current || !viewportRef.current || !layerRef.current) {\n return;\n }\n const layerOffsetWidth = layerRef.current.offsetWidth;\n\n const calcRtlCoord = (element: HTMLDivElement) => {\n const offsetLeft = element.offsetLeft;\n const offsetWidth = element.offsetWidth;\n return layerOffsetWidth - offsetLeft - offsetWidth;\n };\n\n let localSlides =\n React.Children.map(children, (_item, i): GallerySlidesState => {\n const elem = slidesStore.current[i];\n if (!elem) {\n return { coordX: 0, width: 0 };\n }\n const coordX = isRtl ? calcRtlCoord(elem) : elem.offsetLeft;\n return { coordX, width: elem.offsetWidth };\n }) || [];\n\n if (localSlides.length === 0) {\n initialized.current = false;\n return;\n }\n\n const containerWidth = rootRef.current.offsetWidth;\n const viewportOffsetWidth = viewportRef.current.offsetWidth;\n const layerWidth = localSlides.reduce((val, slide) => slide.width + val, 0);\n\n if (process.env.NODE_ENV === 'development' && looped) {\n let remainingWidth = containerWidth;\n let slideIndex = 0;\n\n while (remainingWidth > 0 && slideIndex < localSlides.length) {\n remainingWidth -= localSlides[slideIndex].width;\n slideIndex++;\n }\n if (remainingWidth <= 0 && slideIndex === localSlides.length) {\n warn(\n 'Ширины слайдов недостаточно для корректной работы свойства \"looped\". Пожалуйста, сделайте её больше.',\n );\n }\n }\n\n const currentSlideOffsetOnCenterAlignment =\n (containerWidth - (localSlides[slideIndex]?.width ?? 0)) / 2;\n const isFullyVisible =\n align === 'center'\n ? layerWidth + currentSlideOffsetOnCenterAlignment <= containerWidth\n : layerWidth <= containerWidth;\n\n const onlyOneSlide = localSlides.length === 1;\n\n slidesManager.current = {\n ...slidesManager.current,\n layerWidth,\n containerWidth,\n viewportOffsetWidth,\n slides: localSlides,\n isFullyVisible,\n max:\n looped || onlyOneSlide\n ? null\n : calcMax({\n slides: localSlides,\n containerWidth,\n isCenterAlign,\n isRtl,\n }),\n min:\n looped || onlyOneSlide\n ? null\n : calcMin({\n containerWidth,\n layerWidth,\n slides: localSlides,\n viewportOffsetWidth,\n isFullyVisible,\n align,\n isRtl,\n }),\n };\n const snaps = localSlides.map((_, index) =>\n calculateIndent({\n targetIndex: index,\n slidesManager: slidesManager.current,\n isCenter: isCenterAlign,\n looped,\n isRtl,\n }),\n );\n\n let contentSize = Math.abs(snaps[snaps.length - 1]) + localSlides[localSlides.length - 1].width;\n if (align === 'center') {\n contentSize += revertRtlValue(snaps[0], isRtl);\n }\n\n slidesManager.current.snaps = snaps;\n slidesManager.current.contentSize = contentSize;\n // Если галерея не зациклена и слайд всего один, то рассчитывать loopPoints тоже не надо\n if (looped && !onlyOneSlide && !isFullyVisible) {\n slidesManager.current.loopPoints = getLoopPoints(\n slidesManager.current,\n containerWidth,\n isRtl,\n );\n }\n\n shiftXCurrentRef.current = snaps[slideIndex];\n initialized.current = true;\n\n setControlElementsState({\n canSlideLeft: calculateCanSlideLeft(),\n canSlideRight: calculateCanSlideRight(),\n isDraggable: !(dragDisabled || slidesManager.current.isFullyVisible),\n });\n requestTransform(shiftXCurrentRef.current);\n };\n\n const onResize = () => {\n if (initialized.current) {\n initializeSlides();\n }\n };\n const { window } = useDOM();\n useResizeObserver(resizeSource === 'element' ? rootRef : window, onResize);\n\n const loopedSlideChangePerform = () => {\n const { snaps, slides } = slidesManager.current;\n const indent = snaps[slideIndex];\n let startPoint = shiftXCurrentRef.current;\n\n const fromLastToFirst = isLowerOrEqual(\n shiftXCurrentRef.current,\n snaps[snaps.length - 1],\n isRtl,\n );\n /**\n * Переключаемся с последнего элемента на первый\n * Для корректной анимации мы прокручиваем последний слайд на всю длину (shiftX) \"вперед\"\n * В конце анимации при отрисовке следующего кадра задаем всем слайдам начальные значения\n */\n if (indent === snaps[0] && fromLastToFirst) {\n const endEdge = revertRtlValue(\n Math.abs(snaps[snaps.length - 1]) + slides[slides.length - 1].width,\n isRtl,\n );\n const distance = endEdge + startPoint;\n addToAnimationQueue(\n getAnimateFunction((progress) => {\n const shiftX = startPoint + progress * distance * -1;\n\n transformCssStyles(shiftX);\n\n if (shiftX <= snaps[snaps.length - 1] - slides[slides.length - 1].width) {\n requestAnimationFrame(() => {\n shiftXCurrentRef.current = indent;\n transformCssStyles(snaps[0]);\n });\n }\n }),\n );\n /**\n * Переключаемся с первого слайда на последний\n * Для корректной анимации сначала задаем первым видимым слайдам смещение\n * В следующем кадре начинаем анимация прокрутки \"назад\"\n */\n } else if (indent === snaps[snaps.length - 1] && shiftXCurrentRef.current === snaps[0]) {\n startPoint = indent - revertRtlValue(slides[slides.length - 1].width, isRtl);\n\n addToAnimationQueue(() => {\n requestAnimationFrame(() => {\n const shiftX = indent - revertRtlValue(slides[slides.length - 1].width, isRtl);\n transformCssStyles(shiftX);\n\n getAnimateFunction((progress) => {\n const diff = revertRtlValue(progress * slides[slides.length - 1].width, isRtl);\n transformCssStyles(startPoint + diff);\n })();\n });\n });\n /**\n * Если не обработаны `corner`-кейсы выше, то просто проигрываем анимацию смещения\n */\n } else {\n addToAnimationQueue(() => {\n const distance = Math.abs(indent - startPoint);\n let direction = startPoint <= indent ? 1 : -1;\n\n getAnimateFunction((progress) => {\n const shiftX = startPoint + progress * distance * direction;\n transformCssStyles(shiftX);\n })();\n });\n }\n };\n\n const simpleSlideChangePerform = () => {\n const { snaps } = slidesManager.current;\n requestTransform(snaps[slideIndex], true);\n };\n\n useIsomorphicLayoutEffect(\n function performSlideChange() {\n if (!initialized.current) {\n return;\n }\n const { snaps } = slidesManager.current;\n const indent = snaps[slideIndex];\n\n if (looped) {\n loopedSlideChangePerform();\n } else {\n simpleSlideChangePerform();\n }\n\n startAnimation();\n\n shiftXCurrentRef.current = indent;\n\n setControlElementsState((v) => ({\n ...v,\n canSlideLeft: calculateCanSlideLeft(),\n canSlideRight: calculateCanSlideRight(),\n }));\n },\n [slideIndex],\n );\n\n useIsomorphicLayoutEffect(\n function updateIsDraggable() {\n setControlElementsState((v) => ({\n ...v,\n isDraggable: !(dragDisabled || slidesManager.current.isFullyVisible),\n }));\n },\n [dragDisabled],\n );\n\n useMutationObserver(layerRef, initializeSlides);\n\n useIsomorphicLayoutEffect(initializeSlides, [align, slideWidth, looped, isRtl]);\n\n const calculateMinDeltaXToSlide = () => {\n return slidesManager.current.slides[slideIndex].width * SLIDE_THRESHOLD;\n };\n\n const slideLeft = (event: React.MouseEvent) => {\n if (slideIndex > 0) {\n shiftXCurrentRef.current += revertRtlValue(calculateMinDeltaXToSlide(), isRtl);\n }\n onChange?.(\n (slideIndex - 1 + slidesManager.current.slides.length) % slidesManager.current.slides.length,\n );\n onPrevClick?.(event);\n };\n\n const slideRight = (event: React.MouseEvent) => {\n if (slideIndex < slidesManager.current.slides.length - 1) {\n shiftXCurrentRef.current -= revertRtlValue(calculateMinDeltaXToSlide(), isRtl);\n }\n onChange?.((slideIndex + 1) % slidesManager.current.slides.length);\n onNextClick?.(event);\n };\n\n const onStart = (e: CustomTouchEvent) => {\n e.originalEvent.stopPropagation();\n if (controlElementsState.isDraggable) {\n onDragStart?.(e);\n shiftXCurrentRef.current = slidesManager.current.snaps[slideIndex];\n shiftXDeltaRef.current = 0;\n }\n };\n\n const onMoveX = (e: CustomTouchEvent) => {\n if (controlElementsState.isDraggable) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n isDragging.current = true;\n if (shiftXDeltaRef.current !== e.shiftX) {\n shiftXDeltaRef.current = e.shiftX;\n requestTransform(shiftXCurrentRef.current + shiftXDeltaRef.current);\n }\n }\n }\n };\n\n const onEnd = (e: CustomTouchEvent) => {\n if (controlElementsState.isDraggable) {\n isDragging.current = false;\n let targetIndex = slideIndex;\n if (e.isSlide) {\n targetIndex = getTargetIndex({\n slides: slidesManager.current.slides,\n slideIndex,\n currentShiftX: shiftXCurrentRef.current,\n currentShiftXDelta: shiftXDeltaRef.current,\n max: slidesManager.current.max,\n looped,\n isRtl,\n });\n }\n onDragEnd?.(e, targetIndex);\n\n if (targetIndex !== slideIndex) {\n shiftXCurrentRef.current = shiftXCurrentRef.current + shiftXDeltaRef.current;\n onChange?.(targetIndex);\n } else {\n const initialShiftX = slidesManager.current.snaps[targetIndex];\n requestTransform(initialShiftX, true);\n }\n }\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[slideIndex] = slideRef;\n };\n\n const { isDraggable, canSlideRight, canSlideLeft } = controlElementsState;\n\n return (\n <RootComponent\n {...restProps}\n baseClassName={classNames(\n styles.host,\n slideWidth === 'custom' && styles.customWidth,\n isDraggable && styles.draggable,\n )}\n getRootRef={rootRef}\n >\n <CarouselViewPort\n slideWidth={slideWidth}\n slideTestId={slideTestId}\n onStart={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n getRootRef={viewportRef}\n layerRef={layerRef}\n setSlideRef={setSlideRef}\n >\n {children}\n </CarouselViewPort>\n\n {bullets && (\n <Bullets\n bullets={bullets}\n slideIndex={slideIndex}\n count={React.Children.count(children)}\n bulletTestId={bulletTestId}\n />\n )}\n <ScrollArrows\n hasPointer={hasPointer}\n canSlideLeft={canSlideLeft}\n canSlideRight={canSlideRight}\n onSlideRight={slideRight}\n onSlideLeft={slideLeft}\n showArrows={showArrows}\n arrowSize={arrowSize}\n arrowAreaHeight={arrowAreaHeight}\n prevArrowTestId={prevArrowTestId}\n nextArrowTestId={nextArrowTestId}\n />\n </RootComponent>\n );\n};\n"],"names":["React","classNames","useAdaptivityHasPointer","useConfigDirection","useExternRef","useMutationObserver","useResizeObserver","useDOM","useIsomorphicLayoutEffect","warnOnce","RootComponent","Bullets","CarouselViewPort","ScrollArrows","ANIMATION_DURATION","CONTROL_ELEMENTS_STATE","SLIDE_THRESHOLD","SLIDES_MANAGER_STATE","calcMax","calcMin","calculateIndent","getLoopPoints","getTargetIndex","isBigger","isBiggerOrEqual","isLowerOrEqual","revertRtlValue","validateIndent","useSlideAnimation","warn","CarouselBase","bullets","getRootRef","children","slideWidth","slideIndex","dragDisabled","resizeSource","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","align","showArrows","getRef","arrowSize","arrowAreaHeight","slideTestId","bulletTestId","nextArrowTestId","prevArrowTestId","looped","restProps","slidesStore","useRef","slidesManager","textDirection","isRtl","rootRef","viewportRef","layerRef","animationFrameRef","shiftXCurrentRef","shiftXDeltaRef","initialized","addToAnimationQueue","getAnimateFunction","startAnimation","isDragging","controlElementsState","setControlElementsState","useState","hasPointer","isCenterAlign","calculateCanSlideLeft","current","isFullyVisible","isStartShiftX","calculateCanSlideRight","containerWidth","layerWidth","slides","length","transformCssStyles","shiftX","animation","Math","round","loopPoints","forEach","loopPoint","target","index","slide","style","transform","Object","values","indent","transition","checkShiftOutOfBoundsFromStart","snaps","checkShiftOutOfBoundsFromEnd","firstSlideShift","width","lastPoint","coordX","requestTransform","contentSize","cancelAnimationFrame","requestAnimationFrame","firstSnap","abs","initializeSlides","localSlides","layerOffsetWidth","offsetWidth","calcRtlCoord","element","offsetLeft","Children","map","_item","i","elem","viewportOffsetWidth","reduce","val","process","env","NODE_ENV","remainingWidth","currentSlideOffsetOnCenterAlignment","onlyOneSlide","max","min","_","targetIndex","isCenter","canSlideLeft","canSlideRight","isDraggable","onResize","window","loopedSlideChangePerform","startPoint","fromLastToFirst","endEdge","distance","progress","diff","direction","simpleSlideChangePerform","performSlideChange","v","updateIsDraggable","calculateMinDeltaXToSlide","slideLeft","event","slideRight","onStart","e","originalEvent","stopPropagation","onMoveX","preventDefault","isSlideX","onEnd","isSlide","currentShiftX","currentShiftXDelta","initialShiftX","setSlideRef","slideRef","baseClassName","count","onSlideRight","onSlideLeft"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ScrollArrows.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselBase/ScrollArrows.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAQhD,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"ScrollArrows.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselBase/ScrollArrows.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAG/B,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAQhD,eAAO,MAAM,iBAAiB,GAC5B,MAAM,OAAO,GAAG,KAAK,EACrB,iBAAiB,OAAO,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,EAAE,SAAS,CAAC,WAOzE,CAAC;AAEF,MAAM,WAAW,mBAAmB;IAClC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,UAAU,iBACR,SAAQ,IAAI,CAAC,gBAAgB,EAAE,YAAY,GAAG,WAAW,GAAG,iBAAiB,CAAC,EAC5E,mBAAmB;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,OAAO,CAAC;IACvB,WAAW,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;IAC3C,YAAY,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,UAAU,KAAK,IAAI,CAAC;CAC7C;AAED,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAkCpD,CAAC"}
|
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import { type AlignType } from '../../types';
|
|
2
2
|
import { type GallerySlidesState, type LayoutState, type LoopPoint, type SlidesManagerState } from './types';
|
|
3
|
-
export declare
|
|
3
|
+
export declare const revertRtlValue: (n: number, isRtl: boolean) => number;
|
|
4
|
+
export declare const isBigger: (a: number, b: number, isRtl: boolean) => boolean;
|
|
5
|
+
export declare const isBiggerOrEqual: (a: number, b: number, isRtl: boolean) => boolean;
|
|
6
|
+
export declare const isLower: (a: number, b: number, isRtl: boolean) => boolean;
|
|
7
|
+
export declare const isLowerOrEqual: (a: number, b: number, isRtl: boolean) => boolean;
|
|
8
|
+
export declare const validateIndent: (slidesManager: SlidesManagerState, value: number, isRtl: boolean, bounded?: boolean) => number;
|
|
9
|
+
export declare function calculateIndent({ targetIndex, slidesManager, isCenter, looped, isRtl, }: {
|
|
10
|
+
targetIndex: number;
|
|
11
|
+
slidesManager: SlidesManagerState;
|
|
12
|
+
isCenter: boolean;
|
|
13
|
+
looped: boolean;
|
|
14
|
+
isRtl: boolean;
|
|
15
|
+
}): number;
|
|
4
16
|
/**
|
|
5
17
|
* Вычисляем индексы слайдов, которые необходимо смещать
|
|
6
18
|
*/
|
|
@@ -8,22 +20,25 @@ export declare function getShiftedIndexes(direction: 1 | -1, slides: GallerySlid
|
|
|
8
20
|
/**
|
|
9
21
|
* Вычисляем "ключевые" точки, на которых должно происходить смещение слайдов
|
|
10
22
|
*/
|
|
11
|
-
export declare function getLoopPoints(slidesManager: SlidesManagerState, containerWidth: number): LoopPoint[];
|
|
12
|
-
export declare function getTargetIndex({ slides, slideIndex, currentShiftX, currentShiftXDelta, looped, max, }: {
|
|
23
|
+
export declare function getLoopPoints(slidesManager: SlidesManagerState, containerWidth: number, isRtl?: boolean): LoopPoint[];
|
|
24
|
+
export declare function getTargetIndex({ slides, slideIndex, currentShiftX, currentShiftXDelta, looped, max, isRtl, }: {
|
|
13
25
|
slides: GallerySlidesState[];
|
|
14
26
|
slideIndex: number;
|
|
15
27
|
currentShiftX: number;
|
|
16
28
|
currentShiftXDelta: number;
|
|
17
29
|
looped: boolean;
|
|
18
30
|
max?: number | null;
|
|
31
|
+
isRtl?: boolean;
|
|
19
32
|
}): number;
|
|
20
33
|
interface CalcMin extends Partial<LayoutState> {
|
|
34
|
+
isRtl?: boolean;
|
|
21
35
|
align: AlignType;
|
|
22
36
|
}
|
|
23
|
-
export declare const calcMin: ({ containerWidth, layerWidth, slides, viewportOffsetWidth, isFullyVisible, align, }: CalcMin) => number;
|
|
37
|
+
export declare const calcMin: ({ containerWidth, layerWidth, slides, viewportOffsetWidth, isFullyVisible, align, isRtl, }: CalcMin) => number;
|
|
24
38
|
interface CalcMax extends Partial<LayoutState> {
|
|
39
|
+
isRtl?: boolean;
|
|
25
40
|
isCenterAlign: boolean;
|
|
26
41
|
}
|
|
27
|
-
export declare const calcMax: ({ slides, containerWidth, isCenterAlign }: CalcMax) => number;
|
|
42
|
+
export declare const calcMax: ({ slides, containerWidth, isCenterAlign, isRtl, }: CalcMax) => number;
|
|
28
43
|
export {};
|
|
29
44
|
//# sourceMappingURL=helpers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselBase/helpers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/components/CarouselBase/helpers.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EACL,KAAK,kBAAkB,EACvB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,kBAAkB,EACxB,MAAM,SAAS,CAAC;AAEjB,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,EAAE,OAAO,OAAO,WAEvD,CAAC;AAEF,eAAO,MAAM,QAAQ,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,OAAO,YAA4B,CAAC;AAC1F,eAAO,MAAM,eAAe,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,OAAO,YAA8B,CAAC;AAEnG,eAAO,MAAM,OAAO,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,OAAO,YAA4B,CAAC;AACzF,eAAO,MAAM,cAAc,GAAI,GAAG,MAAM,EAAE,GAAG,MAAM,EAAE,OAAO,OAAO,YAA8B,CAAC;AAOlG,eAAO,MAAM,cAAc,GACzB,eAAe,kBAAkB,EACjC,OAAO,MAAM,EACb,OAAO,OAAO,EACd,iBAAc,WAwBf,CAAC;AAKF,wBAAgB,eAAe,CAAC,EAC9B,WAAW,EACX,aAAa,EACb,QAAQ,EACR,MAAc,EACd,KAAa,GACd,EAAE;IACD,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,kBAAkB,CAAC;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CAChB,GAAG,MAAM,CAkBT;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,EACjB,MAAM,EAAE,kBAAkB,EAAE,EAC5B,cAAc,EAAE,MAAM,GACrB,MAAM,EAAE,CAoBV;AAkCD;;GAEG;AACH,wBAAgB,aAAa,CAC3B,aAAa,EAAE,kBAAkB,EACjC,cAAc,EAAE,MAAM,EACtB,KAAK,UAAQ,GACZ,SAAS,EAAE,CAUb;AAKD,wBAAgB,cAAc,CAAC,EAC7B,MAAM,EACN,UAAU,EACV,aAAa,EACb,kBAAkB,EAClB,MAAc,EACd,GAAU,EACV,KAAa,GACd,EAAE;IACD,MAAM,EAAE,kBAAkB,EAAE,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,GAAG,MAAM,CAuCT;AAED,UAAU,OAAQ,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,eAAO,MAAM,OAAO,GAAI,4FAQrB,OAAO,KAAG,MAaZ,CAAC;AAEF,UAAU,OAAQ,SAAQ,OAAO,CAAC,WAAW,CAAC;IAC5C,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,OAAO,GAAI,mDAKrB,OAAO,KAAG,MAOZ,CAAC"}
|
|
@@ -1,19 +1,42 @@
|
|
|
1
|
+
import { getRequiredValueByKey } from "../../helpers/getValueByKey.js";
|
|
1
2
|
import { SLIDE_THRESHOLD } from "./constants.js";
|
|
2
|
-
const
|
|
3
|
+
export const revertRtlValue = (n, isRtl)=>{
|
|
4
|
+
return isRtl ? -n : n;
|
|
5
|
+
};
|
|
6
|
+
export const isBigger = (a, b, isRtl)=>isRtl ? a < b : a > b;
|
|
7
|
+
export const isBiggerOrEqual = (a, b, isRtl)=>isRtl ? a <= b : a >= b;
|
|
8
|
+
export const isLower = (a, b, isRtl)=>isRtl ? a > b : a < b;
|
|
9
|
+
export const isLowerOrEqual = (a, b, isRtl)=>isRtl ? a >= b : a <= b;
|
|
10
|
+
/*
|
|
11
|
+
* Считает отступ слоя галереи во время драга
|
|
12
|
+
* Используется только для looped=false галереи
|
|
13
|
+
* так как только у нее есть пределы по краям
|
|
14
|
+
*/ export const validateIndent = (slidesManager, value, isRtl, bounded = true)=>{
|
|
3
15
|
var _slidesManager_max;
|
|
4
16
|
const localMax = (_slidesManager_max = slidesManager.max) !== null && _slidesManager_max !== void 0 ? _slidesManager_max : 0;
|
|
5
17
|
var _slidesManager_min;
|
|
6
18
|
const localMin = (_slidesManager_min = slidesManager.min) !== null && _slidesManager_min !== void 0 ? _slidesManager_min : 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
19
|
+
const moreThanMax = isBigger(value, localMax, isRtl);
|
|
20
|
+
if (moreThanMax) {
|
|
21
|
+
if (bounded) {
|
|
22
|
+
return localMax;
|
|
23
|
+
} else {
|
|
24
|
+
return localMax + Number((value - localMax) / 3);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
const lessThanMin = isLower(value, localMin, isRtl);
|
|
28
|
+
if (lessThanMin) {
|
|
29
|
+
if (bounded) {
|
|
30
|
+
return localMin;
|
|
31
|
+
} else {
|
|
32
|
+
return localMin + Number((value - localMin) / 3);
|
|
33
|
+
}
|
|
11
34
|
}
|
|
12
35
|
return value;
|
|
13
36
|
};
|
|
14
37
|
/*
|
|
15
38
|
* Считает отступ слоя галереи
|
|
16
|
-
*/ export function calculateIndent(targetIndex, slidesManager, isCenter, looped = false) {
|
|
39
|
+
*/ export function calculateIndent({ targetIndex, slidesManager, isCenter, looped = false, isRtl = false }) {
|
|
17
40
|
if (!slidesManager.slides.length) {
|
|
18
41
|
return 0;
|
|
19
42
|
}
|
|
@@ -21,10 +44,10 @@ const validateIndent = (slidesManager, value)=>{
|
|
|
21
44
|
if (targetSlide) {
|
|
22
45
|
const { coordX, width } = targetSlide;
|
|
23
46
|
if (isCenter) {
|
|
24
|
-
return slidesManager.containerWidth / 2 - coordX - width / 2;
|
|
47
|
+
return revertRtlValue(slidesManager.containerWidth / 2 - coordX - width / 2, isRtl);
|
|
25
48
|
}
|
|
26
|
-
const indent = -1 * coordX;
|
|
27
|
-
return looped ? indent : validateIndent(slidesManager, indent);
|
|
49
|
+
const indent = revertRtlValue(-1 * coordX, isRtl);
|
|
50
|
+
return looped ? indent : validateIndent(slidesManager, indent, isRtl);
|
|
28
51
|
}
|
|
29
52
|
return 0;
|
|
30
53
|
}
|
|
@@ -44,42 +67,49 @@ const validateIndent = (slidesManager, value)=>{
|
|
|
44
67
|
}
|
|
45
68
|
return shiftedSlideIndexes;
|
|
46
69
|
}
|
|
47
|
-
function calculateLoopPoints(indexes, edge, slidesManager, containerWidth) {
|
|
70
|
+
function calculateLoopPoints(indexes, edge, slidesManager, containerWidth, isRtl) {
|
|
48
71
|
const { contentSize, slides, snaps } = slidesManager;
|
|
49
72
|
const isStartEdge = edge === 'start';
|
|
50
73
|
const offset = isStartEdge ? -contentSize : contentSize;
|
|
51
74
|
return indexes.map((index)=>{
|
|
52
|
-
const initial = isStartEdge ? 0 : -contentSize;
|
|
53
|
-
const altered = isStartEdge ? contentSize : 0;
|
|
54
|
-
const
|
|
75
|
+
const initial = revertRtlValue(isStartEdge ? 0 : -contentSize, isRtl);
|
|
76
|
+
const altered = revertRtlValue(isStartEdge ? contentSize : 0, isRtl);
|
|
77
|
+
const snap = revertRtlValue(snaps[index], isRtl);
|
|
78
|
+
const firstSnap = revertRtlValue(snaps[0], isRtl);
|
|
79
|
+
const loopPoint = revertRtlValue(isStartEdge ? snap + containerWidth + offset : snap - slides[index].width + offset - firstSnap, isRtl);
|
|
55
80
|
return {
|
|
56
81
|
index,
|
|
57
|
-
target: (currentLocation)=>
|
|
58
|
-
return currentLocation >= loopPoint ? initial : altered;
|
|
59
|
-
}
|
|
82
|
+
target: (currentLocation)=>isBiggerOrEqual(currentLocation, loopPoint, isRtl) ? initial : altered
|
|
60
83
|
};
|
|
61
84
|
});
|
|
62
85
|
}
|
|
63
86
|
/**
|
|
64
87
|
* Вычисляем "ключевые" точки, на которых должно происходить смещение слайдов
|
|
65
|
-
*/ export function getLoopPoints(slidesManager, containerWidth) {
|
|
88
|
+
*/ export function getLoopPoints(slidesManager, containerWidth, isRtl = false) {
|
|
66
89
|
const { slides, snaps } = slidesManager;
|
|
67
|
-
const
|
|
68
|
-
const
|
|
90
|
+
const firstSnap = revertRtlValue(snaps[0], isRtl);
|
|
91
|
+
const startShiftedIndexes = getShiftedIndexes(-1, slides, firstSnap);
|
|
92
|
+
const endShiftedIndexes = getShiftedIndexes(1, slides, containerWidth - firstSnap);
|
|
69
93
|
return [
|
|
70
|
-
...calculateLoopPoints(endShiftedIndexes, 'start', slidesManager, containerWidth),
|
|
71
|
-
...calculateLoopPoints(startShiftedIndexes, 'end', slidesManager, containerWidth)
|
|
94
|
+
...calculateLoopPoints(endShiftedIndexes, 'start', slidesManager, containerWidth, isRtl),
|
|
95
|
+
...calculateLoopPoints(startShiftedIndexes, 'end', slidesManager, containerWidth, isRtl)
|
|
72
96
|
];
|
|
73
97
|
}
|
|
74
98
|
/*
|
|
75
99
|
* Получает индекс слайда, к которому будет осуществлен переход
|
|
76
|
-
*/ export function getTargetIndex({ slides, slideIndex, currentShiftX, currentShiftXDelta, looped = false, max = null }) {
|
|
77
|
-
|
|
78
|
-
|
|
100
|
+
*/ export function getTargetIndex({ slides, slideIndex, currentShiftX, currentShiftXDelta, looped = false, max = null, isRtl = false }) {
|
|
101
|
+
max = max !== null && max !== void 0 ? max : 0;
|
|
102
|
+
// Инвертируем значения смещения для RTL режима
|
|
103
|
+
const shift = revertRtlValue(currentShiftX + currentShiftXDelta - max, isRtl);
|
|
104
|
+
// Инвертируем направление для RTL режима
|
|
105
|
+
const direction = isLower(currentShiftXDelta, 0, isRtl) ? 1 : -1;
|
|
79
106
|
// Находим ближайшую границу слайда к текущему отступу
|
|
80
107
|
let targetIndex = slides.reduce((val, item, index)=>{
|
|
81
|
-
|
|
82
|
-
const
|
|
108
|
+
// Инвертируем координаты для RTL режима
|
|
109
|
+
const previousCoordX = slides[val].coordX;
|
|
110
|
+
const currentCoordX = item.coordX;
|
|
111
|
+
const previousValue = Math.abs(previousCoordX + shift);
|
|
112
|
+
const currentValue = Math.abs(currentCoordX + shift);
|
|
83
113
|
return previousValue < currentValue ? val : index;
|
|
84
114
|
}, slideIndex);
|
|
85
115
|
if (targetIndex === slideIndex) {
|
|
@@ -97,29 +127,25 @@ function calculateLoopPoints(indexes, edge, slidesManager, containerWidth) {
|
|
|
97
127
|
}
|
|
98
128
|
return targetIndex;
|
|
99
129
|
}
|
|
100
|
-
export const calcMin = ({ containerWidth = 0, layerWidth = 0, slides = [], viewportOffsetWidth = 0, isFullyVisible, align })=>{
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
if (isFullyVisible) {
|
|
109
|
-
return 0;
|
|
110
|
-
}
|
|
111
|
-
return viewportOffsetWidth - layerWidth;
|
|
112
|
-
case 'center':
|
|
130
|
+
export const calcMin = ({ containerWidth = 0, layerWidth = 0, slides = [], viewportOffsetWidth = 0, isFullyVisible, align, isRtl = false })=>{
|
|
131
|
+
if (align !== 'center' && isFullyVisible) {
|
|
132
|
+
return 0;
|
|
133
|
+
}
|
|
134
|
+
const result = getRequiredValueByKey(align, {
|
|
135
|
+
left: ()=>containerWidth - layerWidth,
|
|
136
|
+
right: ()=>viewportOffsetWidth - layerWidth,
|
|
137
|
+
center: ()=>{
|
|
113
138
|
const { coordX, width } = slides[slides.length - 1];
|
|
114
139
|
return containerWidth / 2 - coordX - width / 2;
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
140
|
+
}
|
|
141
|
+
})();
|
|
142
|
+
return revertRtlValue(result, isRtl);
|
|
118
143
|
};
|
|
119
|
-
export const calcMax = ({ slides = [], containerWidth = 0, isCenterAlign })=>{
|
|
144
|
+
export const calcMax = ({ slides = [], containerWidth = 0, isCenterAlign, isRtl = false })=>{
|
|
120
145
|
if (isCenterAlign && slides.length) {
|
|
121
146
|
const { width, coordX } = slides[0];
|
|
122
|
-
|
|
147
|
+
const result = containerWidth / 2 - coordX - width / 2;
|
|
148
|
+
return revertRtlValue(result, isRtl);
|
|
123
149
|
}
|
|
124
150
|
return 0;
|
|
125
151
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/CarouselBase/helpers.ts"],"sourcesContent":["import { type AlignType } from '../../types';\nimport { SLIDE_THRESHOLD } from './constants';\nimport {\n type GallerySlidesState,\n type LayoutState,\n type LoopPoint,\n type SlidesManagerState,\n} from './types';\n\nconst validateIndent = (slidesManager: SlidesManagerState, value: number) => {\n const localMax = slidesManager.max ?? 0;\n const localMin = slidesManager.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 */\nexport function calculateIndent(\n targetIndex: number,\n slidesManager: SlidesManagerState,\n isCenter: boolean,\n looped = false,\n): number {\n if (!slidesManager.slides.length) {\n return 0;\n }\n\n const targetSlide = slidesManager.slides[targetIndex];\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenter) {\n return slidesManager.containerWidth / 2 - coordX - width / 2;\n }\n const indent = -1 * coordX;\n return looped ? indent : validateIndent(slidesManager, indent);\n }\n\n return 0;\n}\n\n/**\n * Вычисляем индексы слайдов, которые необходимо смещать\n */\nexport function getShiftedIndexes(\n direction: 1 | -1,\n slides: GallerySlidesState[],\n availableWidth: number,\n): number[] {\n let gap = availableWidth;\n const shiftedSlideIndexes = [];\n const startIndex = direction === 1 ? 0 : slides.length - 1;\n const endIndex = direction === 1 ? slides.length - 1 : 0;\n\n for (\n let i = startIndex;\n (direction === 1 ? i <= endIndex : i >= endIndex) && gap > 0;\n i += direction\n ) {\n const slideWidth = slides[i].width;\n\n if (gap > 0) {\n shiftedSlideIndexes.push(i);\n }\n gap -= slideWidth;\n }\n\n return shiftedSlideIndexes;\n}\n\nfunction calculateLoopPoints(\n indexes: number[],\n edge: 'start' | 'end',\n slidesManager: SlidesManagerState,\n containerWidth: number,\n): LoopPoint[] {\n const { contentSize, slides, snaps } = slidesManager;\n const isStartEdge = edge === 'start';\n const offset = isStartEdge ? -contentSize : contentSize;\n\n return indexes.map((index) => {\n const initial = isStartEdge ? 0 : -contentSize;\n const altered = isStartEdge ? contentSize : 0;\n const loopPoint = isStartEdge\n ? snaps[index] + containerWidth + offset\n : snaps[index] - slides[index].width + offset - snaps[0];\n\n return {\n index,\n target: (currentLocation) => {\n return currentLocation >= loopPoint ? initial : altered;\n },\n };\n });\n}\n\n/**\n * Вычисляем \"ключевые\" точки, на которых должно происходить смещение слайдов\n */\nexport function getLoopPoints(\n slidesManager: SlidesManagerState,\n containerWidth: number,\n): LoopPoint[] {\n const { slides, snaps } = slidesManager;\n const startShiftedIndexes = getShiftedIndexes(-1, slides, snaps[0]);\n const endShiftedIndexes = getShiftedIndexes(1, slides, containerWidth - snaps[0]);\n\n return [\n ...calculateLoopPoints(endShiftedIndexes, 'start', slidesManager, containerWidth),\n ...calculateLoopPoints(startShiftedIndexes, 'end', slidesManager, containerWidth),\n ];\n}\n\n/*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\nexport function getTargetIndex({\n slides,\n slideIndex,\n currentShiftX,\n currentShiftXDelta,\n looped = false,\n max = null,\n}: {\n slides: GallerySlidesState[];\n slideIndex: number;\n currentShiftX: number;\n currentShiftXDelta: number;\n looped: boolean;\n max?: number | null;\n}): number {\n const shift = currentShiftX + currentShiftXDelta - (max ?? 0);\n const direction = currentShiftXDelta < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = slides.reduce((val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(slides[val].coordX + shift);\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n }, slideIndex);\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < slides.length) {\n if (Math.abs(currentShiftXDelta) > slides[targetSlide].width * SLIDE_THRESHOLD) {\n return targetSlide;\n }\n return targetIndex;\n }\n if (!looped) {\n return direction < 0 ? Math.max(targetIndex, 0) : Math.min(targetIndex, slides.length - 1);\n }\n\n return direction < 0\n ? (targetSlide + slides.length) % slides.length\n : targetSlide % slides.length;\n }\n\n return targetIndex;\n}\n\ninterface CalcMin extends Partial<LayoutState> {\n align: AlignType;\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewportOffsetWidth = 0,\n isFullyVisible,\n align,\n}: CalcMin): number => {\n switch (align) {\n case 'left':\n if (isFullyVisible) {\n return 0;\n }\n return containerWidth - layerWidth;\n case 'right':\n if (isFullyVisible) {\n return 0;\n }\n return viewportOffsetWidth - layerWidth;\n case 'center':\n const { coordX, width } = slides[slides.length - 1];\n return containerWidth / 2 - coordX - width / 2;\n default:\n throw new Error(`unknown align ${align}`);\n }\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isCenterAlign: boolean;\n}\n\nexport const calcMax = ({ slides = [], containerWidth = 0, isCenterAlign }: CalcMax): number => {\n if (isCenterAlign && slides.length) {\n const { width, coordX } = slides[0];\n return containerWidth / 2 - coordX - width / 2;\n }\n return 0;\n};\n"],"names":["SLIDE_THRESHOLD","validateIndent","slidesManager","value","localMax","max","localMin","min","calculateIndent","targetIndex","isCenter","looped","slides","length","targetSlide","coordX","width","containerWidth","indent","getShiftedIndexes","direction","availableWidth","gap","shiftedSlideIndexes","startIndex","endIndex","i","slideWidth","push","calculateLoopPoints","indexes","edge","contentSize","snaps","isStartEdge","offset","map","index","initial","altered","loopPoint","target","currentLocation","getLoopPoints","startShiftedIndexes","endShiftedIndexes","getTargetIndex","slideIndex","currentShiftX","currentShiftXDelta","shift","reduce","val","item","previousValue","Math","abs","currentValue","calcMin","layerWidth","viewportOffsetWidth","isFullyVisible","align","Error","calcMax","isCenterAlign"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/CarouselBase/helpers.ts"],"sourcesContent":["import { getRequiredValueByKey } from '../../helpers/getValueByKey';\nimport { type AlignType } from '../../types';\nimport { SLIDE_THRESHOLD } from './constants';\nimport {\n type GallerySlidesState,\n type LayoutState,\n type LoopPoint,\n type SlidesManagerState,\n} from './types';\n\nexport const revertRtlValue = (n: number, isRtl: boolean) => {\n return isRtl ? -n : n;\n};\n\nexport const isBigger = (a: number, b: number, isRtl: boolean) => (isRtl ? a < b : a > b);\nexport const isBiggerOrEqual = (a: number, b: number, isRtl: boolean) => (isRtl ? a <= b : a >= b);\n\nexport const isLower = (a: number, b: number, isRtl: boolean) => (isRtl ? a > b : a < b);\nexport const isLowerOrEqual = (a: number, b: number, isRtl: boolean) => (isRtl ? a >= b : a <= b);\n\n/*\n * Считает отступ слоя галереи во время драга\n * Используется только для looped=false галереи\n * так как только у нее есть пределы по краям\n */\nexport const validateIndent = (\n slidesManager: SlidesManagerState,\n value: number,\n isRtl: boolean,\n bounded = true,\n) => {\n const localMax = slidesManager.max ?? 0;\n const localMin = slidesManager.min ?? 0;\n\n const moreThanMax = isBigger(value, localMax, isRtl);\n if (moreThanMax) {\n if (bounded) {\n return localMax;\n } else {\n return localMax + Number((value - localMax) / 3);\n }\n }\n\n const lessThanMin = isLower(value, localMin, isRtl);\n if (lessThanMin) {\n if (bounded) {\n return localMin;\n } else {\n return localMin + Number((value - localMin) / 3);\n }\n }\n\n return value;\n};\n\n/*\n * Считает отступ слоя галереи\n */\nexport function calculateIndent({\n targetIndex,\n slidesManager,\n isCenter,\n looped = false,\n isRtl = false,\n}: {\n targetIndex: number;\n slidesManager: SlidesManagerState;\n isCenter: boolean;\n looped: boolean;\n isRtl: boolean;\n}): number {\n if (!slidesManager.slides.length) {\n return 0;\n }\n\n const targetSlide = slidesManager.slides[targetIndex];\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenter) {\n return revertRtlValue(slidesManager.containerWidth / 2 - coordX - width / 2, isRtl);\n }\n const indent = revertRtlValue(-1 * coordX, isRtl);\n return looped ? indent : validateIndent(slidesManager, indent, isRtl);\n }\n\n return 0;\n}\n\n/**\n * Вычисляем индексы слайдов, которые необходимо смещать\n */\nexport function getShiftedIndexes(\n direction: 1 | -1,\n slides: GallerySlidesState[],\n availableWidth: number,\n): number[] {\n let gap = availableWidth;\n const shiftedSlideIndexes = [];\n const startIndex = direction === 1 ? 0 : slides.length - 1;\n const endIndex = direction === 1 ? slides.length - 1 : 0;\n\n for (\n let i = startIndex;\n (direction === 1 ? i <= endIndex : i >= endIndex) && gap > 0;\n i += direction\n ) {\n const slideWidth = slides[i].width;\n\n if (gap > 0) {\n shiftedSlideIndexes.push(i);\n }\n gap -= slideWidth;\n }\n\n return shiftedSlideIndexes;\n}\n\nfunction calculateLoopPoints(\n indexes: number[],\n edge: 'start' | 'end',\n slidesManager: SlidesManagerState,\n containerWidth: number,\n isRtl: boolean,\n): LoopPoint[] {\n const { contentSize, slides, snaps } = slidesManager;\n const isStartEdge = edge === 'start';\n const offset = isStartEdge ? -contentSize : contentSize;\n\n return indexes.map((index) => {\n const initial = revertRtlValue(isStartEdge ? 0 : -contentSize, isRtl);\n const altered = revertRtlValue(isStartEdge ? contentSize : 0, isRtl);\n\n const snap = revertRtlValue(snaps[index], isRtl);\n const firstSnap = revertRtlValue(snaps[0], isRtl);\n const loopPoint = revertRtlValue(\n isStartEdge\n ? snap + containerWidth + offset\n : snap - slides[index].width + offset - firstSnap,\n isRtl,\n );\n\n return {\n index,\n target: (currentLocation) =>\n isBiggerOrEqual(currentLocation, loopPoint, isRtl) ? initial : altered,\n };\n });\n}\n\n/**\n * Вычисляем \"ключевые\" точки, на которых должно происходить смещение слайдов\n */\nexport function getLoopPoints(\n slidesManager: SlidesManagerState,\n containerWidth: number,\n isRtl = false,\n): LoopPoint[] {\n const { slides, snaps } = slidesManager;\n const firstSnap = revertRtlValue(snaps[0], isRtl);\n const startShiftedIndexes = getShiftedIndexes(-1, slides, firstSnap);\n const endShiftedIndexes = getShiftedIndexes(1, slides, containerWidth - firstSnap);\n\n return [\n ...calculateLoopPoints(endShiftedIndexes, 'start', slidesManager, containerWidth, isRtl),\n ...calculateLoopPoints(startShiftedIndexes, 'end', slidesManager, containerWidth, isRtl),\n ];\n}\n\n/*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\nexport function getTargetIndex({\n slides,\n slideIndex,\n currentShiftX,\n currentShiftXDelta,\n looped = false,\n max = null,\n isRtl = false,\n}: {\n slides: GallerySlidesState[];\n slideIndex: number;\n currentShiftX: number;\n currentShiftXDelta: number;\n looped: boolean;\n max?: number | null;\n isRtl?: boolean;\n}): number {\n max = max ?? 0;\n // Инвертируем значения смещения для RTL режима\n const shift = revertRtlValue(currentShiftX + currentShiftXDelta - max, isRtl);\n\n // Инвертируем направление для RTL режима\n const direction = isLower(currentShiftXDelta, 0, isRtl) ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = slides.reduce((val: number, item: GallerySlidesState, index: number) => {\n // Инвертируем координаты для RTL режима\n const previousCoordX = slides[val].coordX;\n const currentCoordX = item.coordX;\n\n const previousValue = Math.abs(previousCoordX + shift);\n const currentValue = Math.abs(currentCoordX + shift);\n\n return previousValue < currentValue ? val : index;\n }, slideIndex);\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < slides.length) {\n if (Math.abs(currentShiftXDelta) > slides[targetSlide].width * SLIDE_THRESHOLD) {\n return targetSlide;\n }\n return targetIndex;\n }\n if (!looped) {\n return direction < 0 ? Math.max(targetIndex, 0) : Math.min(targetIndex, slides.length - 1);\n }\n\n return direction < 0\n ? (targetSlide + slides.length) % slides.length\n : targetSlide % slides.length;\n }\n\n return targetIndex;\n}\n\ninterface CalcMin extends Partial<LayoutState> {\n isRtl?: boolean;\n align: AlignType;\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewportOffsetWidth = 0,\n isFullyVisible,\n align,\n isRtl = false,\n}: CalcMin): number => {\n if (align !== 'center' && isFullyVisible) {\n return 0;\n }\n const result = getRequiredValueByKey(align, {\n left: () => containerWidth - layerWidth,\n right: () => viewportOffsetWidth - layerWidth,\n center: () => {\n const { coordX, width } = slides[slides.length - 1];\n return containerWidth / 2 - coordX - width / 2;\n },\n })();\n return revertRtlValue(result, isRtl);\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isRtl?: boolean;\n isCenterAlign: boolean;\n}\n\nexport const calcMax = ({\n slides = [],\n containerWidth = 0,\n isCenterAlign,\n isRtl = false,\n}: CalcMax): number => {\n if (isCenterAlign && slides.length) {\n const { width, coordX } = slides[0];\n const result = containerWidth / 2 - coordX - width / 2;\n return revertRtlValue(result, isRtl);\n }\n return 0;\n};\n"],"names":["getRequiredValueByKey","SLIDE_THRESHOLD","revertRtlValue","n","isRtl","isBigger","a","b","isBiggerOrEqual","isLower","isLowerOrEqual","validateIndent","slidesManager","value","bounded","localMax","max","localMin","min","moreThanMax","Number","lessThanMin","calculateIndent","targetIndex","isCenter","looped","slides","length","targetSlide","coordX","width","containerWidth","indent","getShiftedIndexes","direction","availableWidth","gap","shiftedSlideIndexes","startIndex","endIndex","i","slideWidth","push","calculateLoopPoints","indexes","edge","contentSize","snaps","isStartEdge","offset","map","index","initial","altered","snap","firstSnap","loopPoint","target","currentLocation","getLoopPoints","startShiftedIndexes","endShiftedIndexes","getTargetIndex","slideIndex","currentShiftX","currentShiftXDelta","shift","reduce","val","item","previousCoordX","currentCoordX","previousValue","Math","abs","currentValue","calcMin","layerWidth","viewportOffsetWidth","isFullyVisible","align","result","left","right","center","calcMax","isCenterAlign"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellCheckbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Cell/CellCheckbox/CellCheckbox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAiCzC,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC,EACnD,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,UAAU,CAAC,eAAe,CAAC,EAC3B,MAAM,CAAC,gBAAgB,CAAC;IAC1B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACrC;AAED,eAAO,MAAM,YAAY,
|
|
1
|
+
{"version":3,"file":"CellCheckbox.d.ts","sourceRoot":"","sources":["../../../../src/components/Cell/CellCheckbox/CellCheckbox.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAa/B,OAAO,KAAK,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAiCzC,MAAM,WAAW,iBACf,SAAQ,IAAI,CAAC,SAAS,EAAE,gBAAgB,GAAG,SAAS,CAAC,EACnD,KAAK,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAC3C,UAAU,CAAC,eAAe,CAAC,EAC3B,MAAM,CAAC,gBAAgB,CAAC;IAC1B;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAC;CACrC;AAED,eAAO,MAAM,YAAY,GAAI,8DAO1B,iBAAiB,KAAG,KAAK,CAAC,SAuB5B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellDragger.d.ts","sourceRoot":"","sources":["../../../../src/components/Cell/CellDragger/CellDragger.tsx"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EAEvB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAKhE,UAAU,gBACR,SAAQ,iBAAiB,EACvB,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,EAAE,MAAM,cAAc,CAAC;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD;AAED,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"CellDragger.d.ts","sourceRoot":"","sources":["../../../../src/components/Cell/CellDragger/CellDragger.tsx"],"names":[],"mappings":"AAIA,OAAO,EACL,KAAK,cAAc,EACnB,KAAK,iBAAiB,EAEvB,MAAM,uCAAuC,CAAC;AAG/C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAKhE,UAAU,gBACR,SAAQ,iBAAiB,EACvB,IAAI,CAAC,yBAAyB,CAAC,WAAW,CAAC,EAAE,MAAM,cAAc,CAAC;IACpE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,CAAC;CACjD;AAED,eAAO,MAAM,WAAW,GAAI,yFAQzB,gBAAgB,KAAG,KAAK,CAAC,SA2B3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CellButton.d.ts","sourceRoot":"","sources":["../../../src/components/CellButton/CellButton.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,qCAAqC,CAAC;AAG7C,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"CellButton.d.ts","sourceRoot":"","sources":["../../../src/components/CellButton/CellButton.tsx"],"names":[],"mappings":"AACA,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,qCAAqC,CAAC;AAG7C,eAAO,MAAM,oBAAoB;;;;CAIhC,CAAC;AAEF,MAAM,WAAW,eAAgB,SAAQ,eAAe;IACtD;;OAEG;IACH,UAAU,CAAC,EAAE,QAAQ,GAAG,SAAS,GAAG,UAAU,CAAC;IAC/C,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,mDAKxB,eAAe,KAAG,KAAK,CAAC,SAY1B,CAAC"}
|