@via-profit/ui-kit 0.3.0 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Accordion/AccordionContainer.js +12 -11
- package/Accordion/AccordionContent.js +16 -7
- package/Accordion/AccordionHeader.d.ts +22 -0
- package/Accordion/AccordionHeader.js +37 -18
- package/Accordion/Chevron.js +3 -3
- package/Accordion/index.d.ts +12 -8
- package/Accordion/index.js +23 -7
- package/Autocomplete/AutocompleteContainer.d.ts +5 -9
- package/Autocomplete/AutocompleteContainer.js +91 -35
- package/Autocomplete/AutocompleteTagsInput.d.ts +15 -0
- package/Autocomplete/AutocompleteTagsInput.js +65 -0
- package/Autocomplete/context.d.ts +1 -0
- package/Autocomplete/context.js +5 -5
- package/Autocomplete/index.js +1 -0
- package/Avatar/AvatarBase.js +1 -1
- package/Avatar/AvatarContainer.js +6 -11
- package/Avatar/AvatarPicture.d.ts +10 -2
- package/Avatar/AvatarPicture.js +4 -3
- package/Avatar/index.js +11 -10
- package/Badge/BadgeBase.d.ts +9 -0
- package/Badge/BadgeBase.js +21 -3
- package/Badge/BadgeContainer.js +2 -1
- package/Badge/BadgeDeleteButton.d.ts +1 -1
- package/Badge/BadgeOutlined.d.ts +1 -1
- package/Badge/BadgeOutlined.js +5 -80
- package/Badge/BadgeStandard.d.ts +1 -1
- package/Badge/BadgeStandard.js +5 -91
- package/Badge/BadgeStyled.d.ts +5 -0
- package/Badge/BadgeStyled.js +127 -0
- package/Badge/index.d.ts +2 -2
- package/Badge/index.js +4 -20
- package/Button/ButtonBase.d.ts +8 -0
- package/Button/ButtonBase.js +10 -6
- package/Button/ButtonContainer.d.ts +18 -0
- package/Button/ButtonContainer.js +8 -2
- package/Button/ButtonIconWrapper.d.ts +1 -1
- package/Button/ButtonOutlined.d.ts +1 -1
- package/Button/ButtonOutlined.js +5 -80
- package/Button/ButtonPlain.d.ts +1 -1
- package/Button/ButtonPlain.js +5 -85
- package/Button/ButtonStandard.d.ts +1 -1
- package/Button/ButtonStandard.js +5 -97
- package/Button/ButtonStyled.d.ts +11 -0
- package/Button/ButtonStyled.js +41 -0
- package/Button/buttonVariants.d.ts +16 -0
- package/Button/buttonVariants.js +168 -0
- package/Button/index.d.ts +5 -5
- package/Button/index.js +19 -21
- package/ButtonGroup/ButtonGroupContext.d.ts +21 -0
- package/ButtonGroup/ButtonGroupContext.js +11 -0
- package/ButtonGroup/index.d.ts +76 -0
- package/ButtonGroup/index.js +132 -0
- package/CHANGELOG.md +160 -0
- package/Calendar/CalendarCell.js +11 -4
- package/Calendar/CalendarComponent.d.ts +15 -4
- package/Calendar/CalendarComponent.js +151 -55
- package/Calendar/CalendarDayBadge.d.ts +1 -1
- package/Calendar/CalendarMonthCell.js +1 -11
- package/Calendar/CalendarPaper.js +2 -1
- package/Calendar/CalendarWeekDayLabel.js +3 -1
- package/Calendar/CalendarWeekDaysBar.js +6 -1
- package/Calendar/CalendarYearCell.js +1 -16
- package/Calendar/CalendarYearsSelector.d.ts +0 -1
- package/Calendar/CalendarYearsSelector.js +33 -35
- package/Calendar/use-calendar.d.ts +1 -1
- package/Checkbox/CheckboxAsterisk.d.ts +13 -0
- package/Checkbox/CheckboxAsterisk.js +53 -0
- package/Checkbox/CheckboxBox.d.ts +22 -0
- package/Checkbox/CheckboxBox.js +90 -0
- package/Checkbox/CheckboxContainer.d.ts +27 -0
- package/Checkbox/CheckboxContainer.js +38 -0
- package/Checkbox/CheckboxErrorText.d.ts +6 -0
- package/Checkbox/CheckboxErrorText.js +76 -0
- package/Checkbox/CheckboxIcon.d.ts +10 -0
- package/Checkbox/CheckboxIcon.js +57 -0
- package/Checkbox/CheckboxTextWrapper.d.ts +4 -0
- package/Checkbox/CheckboxTextWrapper.js +29 -0
- package/Checkbox/CheckboxWrapper.d.ts +4 -0
- package/Checkbox/CheckboxWrapper.js +29 -0
- package/Checkbox/index.d.ts +144 -0
- package/Checkbox/index.js +72 -0
- package/Checkbox/useCheckboxColor.d.ts +6 -0
- package/Checkbox/useCheckboxColor.js +33 -0
- package/ClickOutside/index.d.ts +6 -0
- package/ClickOutside/index.js +7 -2
- package/Color/Color.d.ts +4 -4
- package/Color/Color.js +9 -5
- package/Color/ColorGenerator.d.ts +5 -1
- package/DatePicker/index.d.ts +19 -6
- package/DatePicker/index.js +59 -12
- package/ErrorBoundary/RenderError.d.ts +2 -0
- package/ErrorBoundary/RenderError.js +3 -6
- package/ErrorBoundary/index.d.ts +19 -6
- package/ErrorBoundary/index.js +7 -8
- package/Grid/index.d.ts +60 -0
- package/Grid/index.js +43 -0
- package/Highlighted/index.d.ts +1 -1
- package/Highlighted/index.js +16 -11
- package/LoadingIndicator/LoadingOverlay.d.ts +11 -0
- package/LoadingIndicator/LoadingOverlay.js +63 -0
- package/LoadingIndicator/Spinner.d.ts +34 -5
- package/LoadingIndicator/Spinner.js +48 -37
- package/LoadingIndicator/SpinnerCircle.d.ts +14 -0
- package/LoadingIndicator/SpinnerCircle.js +34 -0
- package/LoadingIndicator/index.d.ts +8 -3
- package/LoadingIndicator/index.js +9 -15
- package/MaskedField/index.d.ts +3 -2
- package/MaskedField/index.js +7 -2
- package/MaskedField/templates.js +2 -0
- package/MaskedField/useMasked.js +9 -6
- package/Menu/MenuContainer.d.ts +8 -0
- package/Menu/MenuContainer.js +102 -30
- package/Menu/MenuItem.js +1 -1
- package/Menu/MenuList.js +2 -1
- package/Menu/context.js +5 -0
- package/Modal/BaseModal/index.js +2 -1
- package/Modal/BaseModal/useDialogID.d.ts +6 -0
- package/Modal/BaseModal/useDialogID.js +12 -0
- package/Modal/ConfirmBox/ConfirmBoxContainer.js +5 -1
- package/Modal/ConfirmBox/index.js +4 -2
- package/Modal/Dialog/DialogInner.js +1 -1
- package/Modal/Dialog/index.js +14 -8
- package/Modal/Drawer/DrawerHeader.d.ts +20 -0
- package/Modal/Drawer/DrawerHeader.js +3 -3
- package/Modal/Drawer/DrawerInner.js +9 -1
- package/Modal/Drawer/index.d.ts +7 -0
- package/Modal/Drawer/index.js +13 -10
- package/Modal/MessageBox/MessageBoxContainer.js +1 -1
- package/Modal/MessageBox/index.js +4 -2
- package/PhoneField/CountryFlagComponent.js +2 -2
- package/PhoneField/UnknownFlag.d.ts +6 -3
- package/PhoneField/UnknownFlag.js +8 -31
- package/PhoneField/flags/BY.js +39 -0
- package/PhoneField/flags/CN.js +35 -0
- package/PhoneField/flags/IL.js +35 -0
- package/PhoneField/flags/JP.js +34 -0
- package/PhoneField/flags/KZ.js +35 -0
- package/PhoneField/flags/RU.js +36 -0
- package/PhoneField/flags/UA.js +34 -0
- package/PhoneField/flags/US.js +38 -0
- package/PhoneField/flags/Unknown.js +42 -0
- package/PhoneField/flags/isLabelled.d.ts +6 -0
- package/PhoneField/flags/isLabelled.js +7 -0
- package/PhoneField/index.js +45 -55
- package/PhoneField/templates.js +21 -22
- package/PhoneField/usePhoneUtils.d.ts +15 -0
- package/PhoneField/usePhoneUtils.js +30 -37
- package/Popper/Popper.d.ts +28 -8
- package/Popper/Popper.js +2 -1
- package/Popper/usePopper.d.ts +21 -31
- package/README.md +27 -10
- package/Radio/RadioBox.d.ts +14 -0
- package/Radio/RadioBox.js +102 -0
- package/Radio/RadioContainer.d.ts +27 -0
- package/Radio/RadioContainer.js +38 -0
- package/Radio/RadioTextWrapper.d.ts +4 -0
- package/Radio/RadioTextWrapper.js +29 -0
- package/Radio/index.d.ts +64 -0
- package/Radio/index.js +50 -0
- package/Radio/useRadioColor.d.ts +6 -0
- package/Radio/useRadioColor.js +33 -0
- package/RadioGroup/RadioGroupAsterisk.d.ts +13 -0
- package/RadioGroup/RadioGroupAsterisk.js +53 -0
- package/RadioGroup/RadioGroupContainer.d.ts +4 -0
- package/RadioGroup/RadioGroupContainer.js +36 -0
- package/RadioGroup/RadioGroupContext.d.ts +20 -0
- package/RadioGroup/RadioGroupContext.js +11 -0
- package/RadioGroup/RadioGroupErrorText.d.ts +6 -0
- package/RadioGroup/RadioGroupErrorText.js +76 -0
- package/RadioGroup/RadioGroupItems.d.ts +9 -0
- package/RadioGroup/RadioGroupItems.js +30 -0
- package/RadioGroup/RadioGroupLegend.d.ts +4 -0
- package/RadioGroup/RadioGroupLegend.js +37 -0
- package/RadioGroup/index.d.ts +134 -0
- package/RadioGroup/index.js +63 -0
- package/Selectbox/SelectboxButton.js +2 -0
- package/Selectbox/index.d.ts +18 -2
- package/Selectbox/index.js +24 -7
- package/Slider/SliderContainer.d.ts +19 -0
- package/Slider/SliderContainer.js +50 -0
- package/Slider/SliderMark.d.ts +25 -0
- package/Slider/SliderMark.js +40 -0
- package/Slider/SliderMarkLabel.d.ts +25 -0
- package/Slider/SliderMarkLabel.js +34 -0
- package/Slider/SliderRail.d.ts +13 -0
- package/Slider/SliderRail.js +49 -0
- package/Slider/SliderThumb.d.ts +37 -0
- package/Slider/SliderThumb.js +71 -0
- package/Slider/SliderTrack.d.ts +29 -0
- package/Slider/SliderTrack.js +48 -0
- package/Slider/index.d.ts +134 -0
- package/Slider/index.js +250 -0
- package/Slider/useSliderColor.d.ts +6 -0
- package/Slider/useSliderColor.js +33 -0
- package/Slider/utils.d.ts +10 -0
- package/Slider/utils.js +31 -0
- package/Stack/index.d.ts +62 -0
- package/Stack/index.js +38 -0
- package/Surface/SurfaceContainer.js +8 -1
- package/Surface/index.js +9 -4
- package/Swiper/Swiper.d.ts +28 -2
- package/Swiper/Swiper.js +234 -90
- package/Swiper/SwiperContainer.js +0 -2
- package/Swiper/SwiperSlidesRenderer.d.ts +8 -0
- package/Swiper/SwiperSlidesRenderer.js +17 -14
- package/Swiper/SwiperTrack.d.ts +8 -0
- package/Swiper/SwiperTrack.js +8 -3
- package/Swiper/SwiperWrapper.js +11 -1
- package/Switch/SwitchContainer.d.ts +1 -1
- package/Switch/SwitchContainer.js +5 -5
- package/Switch/SwitchDot.js +13 -53
- package/Switch/SwitchToggleWrapper.d.ts +1 -1
- package/Switch/SwitchToggleWrapper.js +7 -6
- package/Switch/SwitchTrack.js +5 -41
- package/Switch/index.d.ts +4 -4
- package/Switch/index.js +23 -12
- package/Switch/useSwitchColor.d.ts +7 -0
- package/Switch/useSwitchColor.js +33 -0
- package/Table/Table.d.ts +6 -0
- package/Table/Table.js +9 -63
- package/Table/TableBody.d.ts +1 -1
- package/Table/TableBody.js +4 -2
- package/Table/TableCaption.d.ts +2 -2
- package/Table/TableCaption.js +2 -3
- package/Table/TableCell.js +2 -5
- package/Table/TableFooter.js +8 -7
- package/Table/TableHeader.js +6 -2
- package/Table/TableHeaderCell.js +8 -9
- package/Table/TableRow.js +1 -5
- package/Tabs/Tab.d.ts +14 -0
- package/Tabs/Tab.js +128 -0
- package/Tabs/TabList.d.ts +4 -0
- package/Tabs/TabList.js +104 -0
- package/Tabs/TabPanel.d.ts +26 -0
- package/Tabs/TabPanel.js +51 -0
- package/Tabs/Tabs.d.ts +79 -0
- package/Tabs/Tabs.js +81 -0
- package/Tabs/context.d.ts +23 -0
- package/Tabs/context.js +16 -0
- package/Tabs/index.d.ts +10 -0
- package/Tabs/index.js +14 -0
- package/Tabs/useTabsColor.d.ts +6 -0
- package/Tabs/useTabsColor.js +33 -0
- package/TextArea/TextAreaIconWrapper.d.ts +1 -1
- package/TextArea/TextAreaInput.js +2 -0
- package/TextArea/index.js +3 -2
- package/TextField/TextFieldInput.js +2 -0
- package/TextField/TextFieldInputWrapper.d.ts +2 -0
- package/TextField/TextFieldInputWrapper.js +12 -2
- package/TextField/index.js +3 -2
- package/ThemeProvider/components.d.ts +79 -0
- package/ThemeProvider/components.js +3 -0
- package/ThemeProvider/createTheme.js +4 -3
- package/ThemeProvider/index.d.ts +72 -2
- package/ThemeProvider/index.js +5 -1
- package/ThemeProvider/tokens.d.ts +15 -0
- package/ThemeProvider/tokens.js +32 -0
- package/ThemeProvider/useThemeProps.d.ts +7 -0
- package/ThemeProvider/useThemeProps.js +34 -0
- package/Toast/ToastAction.d.ts +4 -0
- package/Toast/ToastAction.js +32 -0
- package/Toast/ToastCard.d.ts +20 -0
- package/Toast/ToastCard.js +86 -0
- package/Toast/ToastCloseButton.d.ts +4 -0
- package/Toast/ToastCloseButton.js +48 -0
- package/Toast/ToastContainer.d.ts +88 -0
- package/Toast/ToastContainer.js +155 -0
- package/Toast/ToastIcon.d.ts +11 -0
- package/Toast/ToastIcon.js +71 -0
- package/Toast/ToastItem.d.ts +29 -0
- package/Toast/ToastItem.js +120 -0
- package/Toast/index.d.ts +6 -0
- package/Toast/index.js +11 -0
- package/Toast/store.d.ts +155 -0
- package/Toast/store.js +75 -0
- package/Tooltip/TooltipArrow.d.ts +15 -0
- package/Tooltip/TooltipArrow.js +62 -0
- package/Tooltip/TooltipContainer.d.ts +4 -0
- package/Tooltip/TooltipContainer.js +52 -0
- package/Tooltip/index.d.ts +78 -0
- package/Tooltip/index.js +196 -0
- package/Typography/Base.d.ts +1 -1
- package/Typography/Base.js +1 -1
- package/Typography/Blockquote.js +1 -1
- package/Typography/Del.js +2 -2
- package/Typography/H4.js +1 -1
- package/Typography/H5.js +2 -2
- package/Typography/H6.d.ts +4 -0
- package/Typography/H6.js +28 -0
- package/Typography/SectionDescription.js +0 -1
- package/Typography/SectionTitle.d.ts +4 -7
- package/Typography/SectionTitle.js +26 -8
- package/Typography/index.d.ts +27 -0
- package/Typography/index.js +35 -0
- package/esm/Accordion/AccordionActions.js +26 -0
- package/esm/Accordion/AccordionContainer.js +57 -0
- package/esm/Accordion/AccordionContent.js +39 -0
- package/esm/Accordion/AccordionHeader.js +67 -0
- package/esm/Accordion/Chevron.js +8 -0
- package/esm/Accordion/index.js +53 -0
- package/esm/Autocomplete/AutocompleteContainer.js +403 -0
- package/esm/Autocomplete/AutocompleteItem.js +38 -0
- package/esm/Autocomplete/AutocompleteTagsInput.js +59 -0
- package/esm/Autocomplete/IconClear.js +4 -0
- package/esm/Autocomplete/context.js +58 -0
- package/esm/Autocomplete/index.js +32 -0
- package/esm/Avatar/AvatarBase.js +30 -0
- package/esm/Avatar/AvatarContainer.js +34 -0
- package/esm/Avatar/AvatarIconWrapper.js +25 -0
- package/esm/Avatar/AvatarOnlineBadge.js +31 -0
- package/esm/Avatar/AvatarPicture.js +69 -0
- package/esm/Avatar/AvatarTextWrapper.js +31 -0
- package/esm/Avatar/index.js +108 -0
- package/esm/Badge/BadgeBase.js +48 -0
- package/esm/Badge/BadgeContainer.js +38 -0
- package/esm/Badge/BadgeDeleteButton.js +87 -0
- package/esm/Badge/BadgeIconWrapper.js +24 -0
- package/esm/Badge/BadgeOutlined.js +7 -0
- package/esm/Badge/BadgeStandard.js +7 -0
- package/esm/Badge/BadgeStyled.js +122 -0
- package/esm/Badge/BadgeTextWrapper.js +25 -0
- package/esm/Badge/index.js +6 -0
- package/esm/Button/ButtonBase.js +37 -0
- package/esm/Button/ButtonContainer.js +56 -0
- package/esm/Button/ButtonIconWrapper.js +32 -0
- package/esm/Button/ButtonOutlined.js +7 -0
- package/esm/Button/ButtonPlain.js +7 -0
- package/esm/Button/ButtonStandard.js +7 -0
- package/esm/Button/ButtonStyled.js +36 -0
- package/esm/Button/ButtonTextWrapper.js +30 -0
- package/esm/Button/buttonVariants.js +161 -0
- package/esm/Button/index.js +24 -0
- package/esm/ButtonGroup/ButtonGroupContext.js +6 -0
- package/esm/ButtonGroup/index.js +127 -0
- package/esm/Calendar/CalendarBody.js +25 -0
- package/esm/Calendar/CalendarCell.js +62 -0
- package/esm/Calendar/CalendarComponent.js +666 -0
- package/esm/Calendar/CalendarControlButton.js +39 -0
- package/esm/Calendar/CalendarDateContainer.js +24 -0
- package/esm/Calendar/CalendarDayBadge.js +70 -0
- package/esm/Calendar/CalendarEmptyCell.js +32 -0
- package/esm/Calendar/CalendarFooter.js +37 -0
- package/esm/Calendar/CalendarHeader.js +29 -0
- package/esm/Calendar/CalendarHeading.js +28 -0
- package/esm/Calendar/CalendarIconNext.js +4 -0
- package/esm/Calendar/CalendarIconPrev.js +4 -0
- package/esm/Calendar/CalendarMonthCell.js +28 -0
- package/esm/Calendar/CalendarMonthsSelector.js +25 -0
- package/esm/Calendar/CalendarPaper.js +29 -0
- package/esm/Calendar/CalendarSubheading.js +25 -0
- package/esm/Calendar/CalendarToolbar.js +26 -0
- package/esm/Calendar/CalendarWeekDayCell.js +27 -0
- package/esm/Calendar/CalendarWeekDayLabel.js +14 -0
- package/esm/Calendar/CalendarWeekDayWeekNumber.js +33 -0
- package/esm/Calendar/CalendarWeekDaysBar.js +34 -0
- package/esm/Calendar/CalendarWeekRow.js +25 -0
- package/esm/Calendar/CalendarWeekRowButton.js +26 -0
- package/esm/Calendar/CalendarYearCell.js +28 -0
- package/esm/Calendar/CalendarYearsSelector.js +59 -0
- package/esm/Calendar/IconChevronDown.js +6 -0
- package/esm/Calendar/index.js +8 -0
- package/esm/Calendar/use-calendar.js +155 -0
- package/esm/Checkbox/CheckboxAsterisk.js +25 -0
- package/esm/Checkbox/CheckboxBox.js +85 -0
- package/esm/Checkbox/CheckboxContainer.js +33 -0
- package/esm/Checkbox/CheckboxErrorText.js +48 -0
- package/esm/Checkbox/CheckboxIcon.js +52 -0
- package/esm/Checkbox/CheckboxTextWrapper.js +24 -0
- package/esm/Checkbox/CheckboxWrapper.js +24 -0
- package/esm/Checkbox/index.js +67 -0
- package/esm/Checkbox/useCheckboxColor.js +28 -0
- package/esm/ClickOutside/index.js +52 -0
- package/esm/Color/Color.js +324 -0
- package/esm/Color/ColorGenerator.js +137 -0
- package/esm/Color/ColorParser.js +320 -0
- package/esm/Color/index.js +5 -0
- package/esm/DatePicker/DatePickerIcon.js +4 -0
- package/esm/DatePicker/index.js +176 -0
- package/esm/DatePicker/useDatePickerFormat.js +121 -0
- package/esm/ErrorBoundary/RenderError.js +49 -0
- package/esm/ErrorBoundary/index.js +25 -0
- package/esm/Grid/index.js +38 -0
- package/esm/Highlighted/HighlightedContainer.js +17 -0
- package/esm/Highlighted/HighlightedMark.js +25 -0
- package/esm/Highlighted/HighlightedText.js +17 -0
- package/esm/Highlighted/index.js +51 -0
- package/esm/Image/index.js +40 -0
- package/esm/LoadingIndicator/LoadingOverlay.js +35 -0
- package/esm/LoadingIndicator/Spinner.js +53 -0
- package/esm/LoadingIndicator/SpinnerCircle.js +27 -0
- package/esm/LoadingIndicator/index.js +6 -0
- package/esm/MaskedField/index.js +74 -0
- package/esm/MaskedField/templates.js +80 -0
- package/esm/MaskedField/useMasked.js +106 -0
- package/esm/Menu/MenuContainer.js +366 -0
- package/esm/Menu/MenuItem.js +64 -0
- package/esm/Menu/MenuList.js +81 -0
- package/esm/Menu/context.js +41 -0
- package/esm/Menu/index.js +10 -0
- package/esm/Modal/BaseModal/ModalInner.js +40 -0
- package/esm/Modal/BaseModal/ModalInnerContainer.js +38 -0
- package/esm/Modal/BaseModal/ModalOverlay.js +28 -0
- package/esm/Modal/BaseModal/ModalWrapper.js +172 -0
- package/esm/Modal/BaseModal/RenderModal.js +31 -0
- package/esm/Modal/BaseModal/context.js +41 -0
- package/esm/Modal/BaseModal/index.js +50 -0
- package/esm/Modal/BaseModal/useDialogID.js +7 -0
- package/esm/Modal/ConfirmBox/ConfirmBoxContainer.js +27 -0
- package/esm/Modal/ConfirmBox/ConfirmBoxContent.js +22 -0
- package/esm/Modal/ConfirmBox/ConfirmBoxFooter.js +41 -0
- package/esm/Modal/ConfirmBox/ConfirmBoxHeader.js +26 -0
- package/esm/Modal/ConfirmBox/index.js +47 -0
- package/esm/Modal/Dialog/DialogInner.js +22 -0
- package/esm/Modal/Dialog/index.js +31 -0
- package/esm/Modal/Drawer/DrawerCloseIcon.js +12 -0
- package/esm/Modal/Drawer/DrawerContainer.js +26 -0
- package/esm/Modal/Drawer/DrawerContent.js +26 -0
- package/esm/Modal/Drawer/DrawerFooter.js +21 -0
- package/esm/Modal/Drawer/DrawerHeader.js +56 -0
- package/esm/Modal/Drawer/DrawerInner.js +145 -0
- package/esm/Modal/Drawer/index.js +50 -0
- package/esm/Modal/MessageBox/MessageBoxContainer.js +23 -0
- package/esm/Modal/MessageBox/MessageBoxContent.js +22 -0
- package/esm/Modal/MessageBox/MessageBoxFooter.js +40 -0
- package/esm/Modal/MessageBox/MessageBoxHeader.js +26 -0
- package/esm/Modal/MessageBox/index.js +48 -0
- package/esm/Modal/index.js +30 -0
- package/esm/NoSSR/index.js +10 -0
- package/esm/PhoneField/CountryFlagComponent.js +39 -0
- package/esm/PhoneField/UnknownFlag.js +6 -0
- package/esm/PhoneField/flags/BY.js +11 -0
- package/esm/PhoneField/flags/CN.js +7 -0
- package/esm/PhoneField/flags/IL.js +7 -0
- package/esm/PhoneField/flags/JP.js +6 -0
- package/esm/PhoneField/flags/KZ.js +7 -0
- package/esm/PhoneField/flags/RU.js +8 -0
- package/esm/PhoneField/flags/UA.js +6 -0
- package/esm/PhoneField/flags/US.js +10 -0
- package/esm/PhoneField/flags/Unknown.js +14 -0
- package/esm/PhoneField/flags/isLabelled.js +5 -0
- package/esm/PhoneField/index.js +71 -0
- package/esm/PhoneField/templates.js +39 -0
- package/esm/PhoneField/usePhoneUtils.js +156 -0
- package/esm/Popper/Popper.js +98 -0
- package/esm/Popper/PopperContainer.js +27 -0
- package/esm/Popper/index.js +5 -0
- package/esm/Popper/usePopper.js +514 -0
- package/esm/Radio/RadioBox.js +97 -0
- package/esm/Radio/RadioContainer.js +33 -0
- package/esm/Radio/RadioTextWrapper.js +24 -0
- package/esm/Radio/index.js +45 -0
- package/esm/Radio/useRadioColor.js +28 -0
- package/esm/RadioGroup/RadioGroupAsterisk.js +25 -0
- package/esm/RadioGroup/RadioGroupContainer.js +31 -0
- package/esm/RadioGroup/RadioGroupContext.js +6 -0
- package/esm/RadioGroup/RadioGroupErrorText.js +48 -0
- package/esm/RadioGroup/RadioGroupItems.js +25 -0
- package/esm/RadioGroup/RadioGroupLegend.js +32 -0
- package/esm/RadioGroup/index.js +58 -0
- package/esm/Selectbox/SelectboxButton.js +54 -0
- package/esm/Selectbox/SelectboxButtonWrapper.js +34 -0
- package/esm/Selectbox/SelectboxChevronIcon.js +23 -0
- package/esm/Selectbox/SelectboxContainer.js +23 -0
- package/esm/Selectbox/SelectboxMenu.js +30 -0
- package/esm/Selectbox/index.js +129 -0
- package/esm/Slider/SliderContainer.js +45 -0
- package/esm/Slider/SliderMark.js +35 -0
- package/esm/Slider/SliderMarkLabel.js +29 -0
- package/esm/Slider/SliderRail.js +44 -0
- package/esm/Slider/SliderThumb.js +66 -0
- package/esm/Slider/SliderTrack.js +43 -0
- package/esm/Slider/index.js +245 -0
- package/esm/Slider/useSliderColor.js +28 -0
- package/esm/Slider/utils.js +25 -0
- package/esm/Stack/index.js +33 -0
- package/esm/Surface/SurfaceContainer.js +41 -0
- package/esm/Surface/SurfaceContent.js +34 -0
- package/esm/Surface/SurfaceFooter.js +26 -0
- package/esm/Surface/SurfaceHeader.js +25 -0
- package/esm/Surface/SurfaceSubheader.js +24 -0
- package/esm/Surface/index.js +44 -0
- package/esm/Swiper/Swiper.js +519 -0
- package/esm/Swiper/SwiperContainer.js +7 -0
- package/esm/Swiper/SwiperSlide.js +29 -0
- package/esm/Swiper/SwiperSlidesRenderer.js +52 -0
- package/esm/Swiper/SwiperTrack.js +31 -0
- package/esm/Swiper/SwiperWrapper.js +41 -0
- package/esm/Swiper/index.js +7 -0
- package/esm/Switch/SwitchAsterisk.js +25 -0
- package/esm/Switch/SwitchContainer.js +47 -0
- package/esm/Switch/SwitchDot.js +100 -0
- package/esm/Switch/SwitchErrorText.js +48 -0
- package/esm/Switch/SwitchTextWrapper.js +25 -0
- package/esm/Switch/SwitchToggleWrapper.js +53 -0
- package/esm/Switch/SwitchTrack.js +39 -0
- package/esm/Switch/SwitchWrapper.js +26 -0
- package/esm/Switch/index.js +62 -0
- package/esm/Switch/useSwitchColor.js +28 -0
- package/esm/Table/Table.js +41 -0
- package/esm/Table/TableBody.js +27 -0
- package/esm/Table/TableCaption.js +24 -0
- package/esm/Table/TableCell.js +23 -0
- package/esm/Table/TableFooter.js +32 -0
- package/esm/Table/TableHeader.js +29 -0
- package/esm/Table/TableHeaderCell.js +29 -0
- package/esm/Table/TableRow.js +21 -0
- package/esm/Table/index.js +18 -0
- package/esm/Tabs/Tab.js +123 -0
- package/esm/Tabs/TabList.js +99 -0
- package/esm/Tabs/TabPanel.js +46 -0
- package/esm/Tabs/Tabs.js +76 -0
- package/esm/Tabs/context.js +9 -0
- package/esm/Tabs/index.js +5 -0
- package/esm/Tabs/useTabsColor.js +28 -0
- package/esm/TextArea/TextAreaIconWrapper.js +25 -0
- package/esm/TextArea/TextAreaInput.js +46 -0
- package/esm/TextArea/index.js +67 -0
- package/esm/TextField/TextFieldContainer.js +26 -0
- package/esm/TextField/TextFieldErrorText.js +48 -0
- package/esm/TextField/TextFieldIconWrapper.js +46 -0
- package/esm/TextField/TextFieldInput.js +46 -0
- package/esm/TextField/TextFieldInputWrapper.js +59 -0
- package/esm/TextField/TextFieldLabel.js +23 -0
- package/esm/TextField/TextFieldLabelAsterisk.js +24 -0
- package/esm/TextField/index.js +87 -0
- package/esm/ThemeProvider/components.js +2 -0
- package/esm/ThemeProvider/createTheme.js +42 -0
- package/esm/ThemeProvider/index.js +12 -0
- package/esm/ThemeProvider/tokens.js +26 -0
- package/esm/ThemeProvider/useThemeProps.js +29 -0
- package/esm/Toast/ToastAction.js +27 -0
- package/esm/Toast/ToastCard.js +80 -0
- package/esm/Toast/ToastCloseButton.js +43 -0
- package/esm/Toast/ToastContainer.js +150 -0
- package/esm/Toast/ToastIcon.js +66 -0
- package/esm/Toast/ToastItem.js +115 -0
- package/esm/Toast/index.js +4 -0
- package/esm/Toast/store.js +72 -0
- package/esm/Tooltip/TooltipArrow.js +57 -0
- package/esm/Tooltip/TooltipContainer.js +47 -0
- package/esm/Tooltip/index.js +191 -0
- package/esm/Typography/Base.js +11 -0
- package/esm/Typography/Blockquote.js +18 -0
- package/esm/Typography/Del.js +22 -0
- package/esm/Typography/Em.js +22 -0
- package/esm/Typography/H1.js +23 -0
- package/esm/Typography/H2.js +23 -0
- package/esm/Typography/H3.js +23 -0
- package/esm/Typography/H4.js +23 -0
- package/esm/Typography/H5.js +23 -0
- package/esm/Typography/H6.js +23 -0
- package/esm/Typography/List.js +26 -0
- package/esm/Typography/Paragraph.js +24 -0
- package/esm/Typography/SectionDescription.js +11 -0
- package/esm/Typography/SectionTitle.js +44 -0
- package/esm/Typography/Span.js +22 -0
- package/esm/Typography/Strong.js +22 -0
- package/esm/Typography/U.js +5 -0
- package/esm/Typography/index.js +20 -0
- package/esm/index.js +1 -0
- package/esm/utils/TabManager.js +139 -0
- package/esm/utils/spacing.js +10 -0
- package/package.json +1562 -76
- package/utils/spacing.d.ts +11 -0
- package/utils/spacing.js +14 -0
- package/Autocomplete/OverrideMenuList.d.ts +0 -4
- package/Autocomplete/OverrideMenuList.js +0 -39
- package/Autocomplete2/Autocomplete2.d.ts +0 -12
- package/Autocomplete2/Autocomplete2.js +0 -83
- package/Autocomplete2/Autocomplete2TextField.d.ts +0 -7
- package/Autocomplete2/Autocomplete2TextField.js +0 -39
- package/Autocomplete2/index.d.ts +0 -2
- package/Autocomplete2/index.js +0 -7
- package/CountryFlags/AC.js +0 -53
- package/CountryFlags/AD.js +0 -39
- package/CountryFlags/AE.js +0 -32
- package/CountryFlags/AF.js +0 -33
- package/CountryFlags/AG.js +0 -35
- package/CountryFlags/AI.js +0 -37
- package/CountryFlags/AL.js +0 -35
- package/CountryFlags/AM.d.ts +0 -3
- package/CountryFlags/AM.js +0 -31
- package/CountryFlags/AO.d.ts +0 -3
- package/CountryFlags/AO.js +0 -35
- package/CountryFlags/AQ.d.ts +0 -3
- package/CountryFlags/AQ.js +0 -30
- package/CountryFlags/AR.d.ts +0 -3
- package/CountryFlags/AR.js +0 -31
- package/CountryFlags/AS.d.ts +0 -3
- package/CountryFlags/AS.js +0 -33
- package/CountryFlags/AT.d.ts +0 -3
- package/CountryFlags/AT.js +0 -30
- package/CountryFlags/AU.d.ts +0 -3
- package/CountryFlags/AU.js +0 -41
- package/CountryFlags/AW.d.ts +0 -3
- package/CountryFlags/AW.js +0 -33
- package/CountryFlags/AX.d.ts +0 -3
- package/CountryFlags/AX.js +0 -31
- package/CountryFlags/AZ.d.ts +0 -3
- package/CountryFlags/AZ.js +0 -34
- package/CountryFlags/BA.d.ts +0 -3
- package/CountryFlags/BA.js +0 -40
- package/CountryFlags/BB.d.ts +0 -3
- package/CountryFlags/BB.js +0 -32
- package/CountryFlags/BD.d.ts +0 -3
- package/CountryFlags/BD.js +0 -30
- package/CountryFlags/BE.d.ts +0 -3
- package/CountryFlags/BE.js +0 -31
- package/CountryFlags/BF.d.ts +0 -3
- package/CountryFlags/BF.js +0 -31
- package/CountryFlags/BG.d.ts +0 -3
- package/CountryFlags/BG.js +0 -31
- package/CountryFlags/BH.d.ts +0 -3
- package/CountryFlags/BH.js +0 -30
- package/CountryFlags/BI.d.ts +0 -3
- package/CountryFlags/BI.js +0 -36
- package/CountryFlags/BJ.d.ts +0 -3
- package/CountryFlags/BJ.js +0 -31
- package/CountryFlags/BL.d.ts +0 -3
- package/CountryFlags/BL.js +0 -39
- package/CountryFlags/BM.d.ts +0 -3
- package/CountryFlags/BM.js +0 -40
- package/CountryFlags/BN.d.ts +0 -3
- package/CountryFlags/BN.js +0 -34
- package/CountryFlags/BO.d.ts +0 -3
- package/CountryFlags/BO.js +0 -31
- package/CountryFlags/BQ.d.ts +0 -3
- package/CountryFlags/BQ.js +0 -33
- package/CountryFlags/BR.d.ts +0 -3
- package/CountryFlags/BR.js +0 -32
- package/CountryFlags/BS.d.ts +0 -3
- package/CountryFlags/BS.js +0 -32
- package/CountryFlags/BT.d.ts +0 -3
- package/CountryFlags/BT.js +0 -31
- package/CountryFlags/BV.d.ts +0 -3
- package/CountryFlags/BV.js +0 -33
- package/CountryFlags/BW.d.ts +0 -3
- package/CountryFlags/BW.js +0 -32
- package/CountryFlags/BY.js +0 -35
- package/CountryFlags/BZ.d.ts +0 -3
- package/CountryFlags/BZ.js +0 -36
- package/CountryFlags/CA.d.ts +0 -3
- package/CountryFlags/CA.js +0 -31
- package/CountryFlags/CC.d.ts +0 -3
- package/CountryFlags/CC.js +0 -33
- package/CountryFlags/CD.d.ts +0 -3
- package/CountryFlags/CD.js +0 -32
- package/CountryFlags/CF.d.ts +0 -3
- package/CountryFlags/CF.js +0 -36
- package/CountryFlags/CG.d.ts +0 -3
- package/CountryFlags/CG.js +0 -31
- package/CountryFlags/CH.d.ts +0 -3
- package/CountryFlags/CH.js +0 -30
- package/CountryFlags/CI.d.ts +0 -3
- package/CountryFlags/CI.js +0 -31
- package/CountryFlags/CK.d.ts +0 -3
- package/CountryFlags/CK.js +0 -34
- package/CountryFlags/CL.d.ts +0 -3
- package/CountryFlags/CL.js +0 -32
- package/CountryFlags/CM.d.ts +0 -3
- package/CountryFlags/CM.js +0 -32
- package/CountryFlags/CN.js +0 -31
- package/CountryFlags/CO.d.ts +0 -3
- package/CountryFlags/CO.js +0 -31
- package/CountryFlags/CR.d.ts +0 -3
- package/CountryFlags/CR.js +0 -31
- package/CountryFlags/CU.d.ts +0 -3
- package/CountryFlags/CU.js +0 -34
- package/CountryFlags/CV.d.ts +0 -3
- package/CountryFlags/CV.js +0 -33
- package/CountryFlags/CW.d.ts +0 -3
- package/CountryFlags/CW.js +0 -32
- package/CountryFlags/CX.d.ts +0 -3
- package/CountryFlags/CX.js +0 -35
- package/CountryFlags/CY.d.ts +0 -3
- package/CountryFlags/CY.js +0 -34
- package/CountryFlags/CZ.d.ts +0 -3
- package/CountryFlags/CZ.js +0 -31
- package/CountryFlags/DE.d.ts +0 -3
- package/CountryFlags/DE.js +0 -31
- package/CountryFlags/DJ.d.ts +0 -3
- package/CountryFlags/DJ.js +0 -32
- package/CountryFlags/DK.d.ts +0 -3
- package/CountryFlags/DK.js +0 -30
- package/CountryFlags/DM.d.ts +0 -3
- package/CountryFlags/DM.js +0 -39
- package/CountryFlags/DO.d.ts +0 -3
- package/CountryFlags/DO.js +0 -38
- package/CountryFlags/DZ.d.ts +0 -3
- package/CountryFlags/DZ.js +0 -33
- package/CountryFlags/EC.d.ts +0 -3
- package/CountryFlags/EC.js +0 -35
- package/CountryFlags/EE.d.ts +0 -3
- package/CountryFlags/EE.js +0 -31
- package/CountryFlags/EG.d.ts +0 -3
- package/CountryFlags/EG.js +0 -32
- package/CountryFlags/EH.d.ts +0 -3
- package/CountryFlags/EH.js +0 -34
- package/CountryFlags/ER.d.ts +0 -3
- package/CountryFlags/ER.js +0 -40
- package/CountryFlags/ES.d.ts +0 -3
- package/CountryFlags/ES.js +0 -34
- package/CountryFlags/ET.d.ts +0 -3
- package/CountryFlags/ET.js +0 -37
- package/CountryFlags/EU.d.ts +0 -3
- package/CountryFlags/EU.js +0 -30
- package/CountryFlags/FI.d.ts +0 -3
- package/CountryFlags/FI.js +0 -30
- package/CountryFlags/FJ.d.ts +0 -3
- package/CountryFlags/FJ.js +0 -36
- package/CountryFlags/FK.d.ts +0 -3
- package/CountryFlags/FK.js +0 -43
- package/CountryFlags/FM.d.ts +0 -3
- package/CountryFlags/FM.js +0 -31
- package/CountryFlags/FO.d.ts +0 -3
- package/CountryFlags/FO.js +0 -31
- package/CountryFlags/FR.d.ts +0 -3
- package/CountryFlags/FR.js +0 -31
- package/CountryFlags/GA.d.ts +0 -3
- package/CountryFlags/GA.js +0 -31
- package/CountryFlags/GB.d.ts +0 -3
- package/CountryFlags/GB.js +0 -36
- package/CountryFlags/GD.d.ts +0 -3
- package/CountryFlags/GD.js +0 -38
- package/CountryFlags/GE.d.ts +0 -3
- package/CountryFlags/GE.js +0 -31
- package/CountryFlags/GEAB.d.ts +0 -3
- package/CountryFlags/GEAB.js +0 -40
- package/CountryFlags/GEOS.d.ts +0 -3
- package/CountryFlags/GEOS.js +0 -31
- package/CountryFlags/GF.d.ts +0 -3
- package/CountryFlags/GF.js +0 -31
- package/CountryFlags/GG.d.ts +0 -3
- package/CountryFlags/GG.js +0 -31
- package/CountryFlags/GH.d.ts +0 -3
- package/CountryFlags/GH.js +0 -32
- package/CountryFlags/GI.d.ts +0 -3
- package/CountryFlags/GI.js +0 -34
- package/CountryFlags/GL.d.ts +0 -3
- package/CountryFlags/GL.js +0 -32
- package/CountryFlags/GM.d.ts +0 -3
- package/CountryFlags/GM.js +0 -32
- package/CountryFlags/GN.d.ts +0 -3
- package/CountryFlags/GN.js +0 -31
- package/CountryFlags/GP.d.ts +0 -3
- package/CountryFlags/GP.js +0 -31
- package/CountryFlags/GQ.d.ts +0 -3
- package/CountryFlags/GQ.js +0 -37
- package/CountryFlags/GR.d.ts +0 -3
- package/CountryFlags/GR.js +0 -35
- package/CountryFlags/GS.d.ts +0 -3
- package/CountryFlags/GS.js +0 -49
- package/CountryFlags/GT.d.ts +0 -3
- package/CountryFlags/GT.js +0 -33
- package/CountryFlags/GU.d.ts +0 -3
- package/CountryFlags/GU.js +0 -37
- package/CountryFlags/GW.d.ts +0 -3
- package/CountryFlags/GW.js +0 -32
- package/CountryFlags/GY.d.ts +0 -3
- package/CountryFlags/GY.js +0 -33
- package/CountryFlags/HK.d.ts +0 -3
- package/CountryFlags/HK.js +0 -32
- package/CountryFlags/HM.d.ts +0 -3
- package/CountryFlags/HM.js +0 -41
- package/CountryFlags/HN.d.ts +0 -3
- package/CountryFlags/HN.js +0 -31
- package/CountryFlags/HR.d.ts +0 -3
- package/CountryFlags/HR.js +0 -38
- package/CountryFlags/HT.d.ts +0 -3
- package/CountryFlags/HT.js +0 -36
- package/CountryFlags/HU.d.ts +0 -3
- package/CountryFlags/HU.js +0 -31
- package/CountryFlags/IC.d.ts +0 -3
- package/CountryFlags/IC.js +0 -31
- package/CountryFlags/ID.d.ts +0 -3
- package/CountryFlags/ID.js +0 -30
- package/CountryFlags/IE.d.ts +0 -3
- package/CountryFlags/IE.js +0 -31
- package/CountryFlags/IL.d.ts +0 -3
- package/CountryFlags/IL.js +0 -31
- package/CountryFlags/IM.d.ts +0 -3
- package/CountryFlags/IM.js +0 -31
- package/CountryFlags/IN.d.ts +0 -3
- package/CountryFlags/IN.js +0 -35
- package/CountryFlags/IO.d.ts +0 -3
- package/CountryFlags/IO.js +0 -41
- package/CountryFlags/IQ.d.ts +0 -3
- package/CountryFlags/IQ.js +0 -33
- package/CountryFlags/IR.d.ts +0 -3
- package/CountryFlags/IR.js +0 -34
- package/CountryFlags/IS.d.ts +0 -3
- package/CountryFlags/IS.js +0 -31
- package/CountryFlags/IT.d.ts +0 -3
- package/CountryFlags/IT.js +0 -31
- package/CountryFlags/JE.d.ts +0 -3
- package/CountryFlags/JE.js +0 -32
- package/CountryFlags/JM.d.ts +0 -3
- package/CountryFlags/JM.js +0 -32
- package/CountryFlags/JO.d.ts +0 -3
- package/CountryFlags/JO.js +0 -33
- package/CountryFlags/JP.d.ts +0 -3
- package/CountryFlags/JP.js +0 -30
- package/CountryFlags/KE.d.ts +0 -3
- package/CountryFlags/KE.js +0 -38
- package/CountryFlags/KG.d.ts +0 -3
- package/CountryFlags/KG.js +0 -35
- package/CountryFlags/KH.d.ts +0 -3
- package/CountryFlags/KH.js +0 -32
- package/CountryFlags/KI.d.ts +0 -3
- package/CountryFlags/KI.js +0 -35
- package/CountryFlags/KM.d.ts +0 -3
- package/CountryFlags/KM.js +0 -37
- package/CountryFlags/KN.d.ts +0 -3
- package/CountryFlags/KN.js +0 -34
- package/CountryFlags/KP.d.ts +0 -3
- package/CountryFlags/KP.js +0 -35
- package/CountryFlags/KR.d.ts +0 -3
- package/CountryFlags/KR.js +0 -38
- package/CountryFlags/KW.d.ts +0 -3
- package/CountryFlags/KW.js +0 -32
- package/CountryFlags/KY.d.ts +0 -3
- package/CountryFlags/KY.js +0 -41
- package/CountryFlags/KZ.d.ts +0 -3
- package/CountryFlags/KZ.js +0 -31
- package/CountryFlags/LA.d.ts +0 -3
- package/CountryFlags/LA.js +0 -32
- package/CountryFlags/LB.d.ts +0 -3
- package/CountryFlags/LB.js +0 -33
- package/CountryFlags/LC.d.ts +0 -3
- package/CountryFlags/LC.js +0 -32
- package/CountryFlags/LI.d.ts +0 -3
- package/CountryFlags/LI.js +0 -31
- package/CountryFlags/LK.d.ts +0 -3
- package/CountryFlags/LK.js +0 -36
- package/CountryFlags/LR.d.ts +0 -3
- package/CountryFlags/LR.js +0 -33
- package/CountryFlags/LS.d.ts +0 -3
- package/CountryFlags/LS.js +0 -33
- package/CountryFlags/LT.d.ts +0 -3
- package/CountryFlags/LT.js +0 -31
- package/CountryFlags/LU.d.ts +0 -3
- package/CountryFlags/LU.js +0 -31
- package/CountryFlags/LV.d.ts +0 -3
- package/CountryFlags/LV.js +0 -31
- package/CountryFlags/LY.d.ts +0 -3
- package/CountryFlags/LY.js +0 -34
- package/CountryFlags/MA.d.ts +0 -3
- package/CountryFlags/MA.js +0 -30
- package/CountryFlags/MC.d.ts +0 -3
- package/CountryFlags/MC.js +0 -30
- package/CountryFlags/MD.d.ts +0 -3
- package/CountryFlags/MD.js +0 -32
- package/CountryFlags/ME.d.ts +0 -3
- package/CountryFlags/ME.js +0 -32
- package/CountryFlags/MF.d.ts +0 -3
- package/CountryFlags/MF.js +0 -33
- package/CountryFlags/MG.d.ts +0 -3
- package/CountryFlags/MG.js +0 -31
- package/CountryFlags/MH.d.ts +0 -3
- package/CountryFlags/MH.js +0 -32
- package/CountryFlags/MK.d.ts +0 -3
- package/CountryFlags/MK.js +0 -33
- package/CountryFlags/ML.d.ts +0 -3
- package/CountryFlags/ML.js +0 -31
- package/CountryFlags/MM.d.ts +0 -3
- package/CountryFlags/MM.js +0 -32
- package/CountryFlags/MN.d.ts +0 -3
- package/CountryFlags/MN.js +0 -37
- package/CountryFlags/MO.d.ts +0 -3
- package/CountryFlags/MO.js +0 -34
- package/CountryFlags/MP.d.ts +0 -3
- package/CountryFlags/MP.js +0 -35
- package/CountryFlags/MQ.d.ts +0 -3
- package/CountryFlags/MQ.js +0 -32
- package/CountryFlags/MR.d.ts +0 -3
- package/CountryFlags/MR.js +0 -32
- package/CountryFlags/MS.d.ts +0 -3
- package/CountryFlags/MS.js +0 -40
- package/CountryFlags/MT.d.ts +0 -3
- package/CountryFlags/MT.js +0 -31
- package/CountryFlags/MU.d.ts +0 -3
- package/CountryFlags/MU.js +0 -32
- package/CountryFlags/MV.d.ts +0 -3
- package/CountryFlags/MV.js +0 -31
- package/CountryFlags/MW.d.ts +0 -3
- package/CountryFlags/MW.js +0 -32
- package/CountryFlags/MX.d.ts +0 -3
- package/CountryFlags/MX.js +0 -33
- package/CountryFlags/MY.d.ts +0 -3
- package/CountryFlags/MY.js +0 -33
- package/CountryFlags/MZ.d.ts +0 -3
- package/CountryFlags/MZ.js +0 -34
- package/CountryFlags/NA.d.ts +0 -3
- package/CountryFlags/NA.js +0 -33
- package/CountryFlags/NC.d.ts +0 -3
- package/CountryFlags/NC.js +0 -38
- package/CountryFlags/NE.d.ts +0 -3
- package/CountryFlags/NE.js +0 -32
- package/CountryFlags/NF.d.ts +0 -3
- package/CountryFlags/NF.js +0 -31
- package/CountryFlags/NG.d.ts +0 -3
- package/CountryFlags/NG.js +0 -31
- package/CountryFlags/NI.d.ts +0 -3
- package/CountryFlags/NI.js +0 -35
- package/CountryFlags/NL.d.ts +0 -3
- package/CountryFlags/NL.js +0 -31
- package/CountryFlags/NO.d.ts +0 -3
- package/CountryFlags/NO.js +0 -31
- package/CountryFlags/NP.d.ts +0 -3
- package/CountryFlags/NP.js +0 -34
- package/CountryFlags/NR.d.ts +0 -3
- package/CountryFlags/NR.js +0 -31
- package/CountryFlags/NU.d.ts +0 -3
- package/CountryFlags/NU.js +0 -53
- package/CountryFlags/NZ.d.ts +0 -3
- package/CountryFlags/NZ.js +0 -41
- package/CountryFlags/OM.d.ts +0 -3
- package/CountryFlags/OM.js +0 -34
- package/CountryFlags/PA.d.ts +0 -3
- package/CountryFlags/PA.js +0 -33
- package/CountryFlags/PE.d.ts +0 -3
- package/CountryFlags/PE.js +0 -31
- package/CountryFlags/PF.d.ts +0 -3
- package/CountryFlags/PF.js +0 -35
- package/CountryFlags/PG.d.ts +0 -3
- package/CountryFlags/PG.js +0 -33
- package/CountryFlags/PH.d.ts +0 -3
- package/CountryFlags/PH.js +0 -33
- package/CountryFlags/PK.d.ts +0 -3
- package/CountryFlags/PK.js +0 -34
- package/CountryFlags/PL.d.ts +0 -3
- package/CountryFlags/PL.js +0 -32
- package/CountryFlags/PM.d.ts +0 -3
- package/CountryFlags/PM.js +0 -32
- package/CountryFlags/PN.d.ts +0 -3
- package/CountryFlags/PN.js +0 -43
- package/CountryFlags/PR.d.ts +0 -3
- package/CountryFlags/PR.js +0 -33
- package/CountryFlags/PS.d.ts +0 -3
- package/CountryFlags/PS.js +0 -32
- package/CountryFlags/PT.d.ts +0 -3
- package/CountryFlags/PT.js +0 -33
- package/CountryFlags/PW.d.ts +0 -3
- package/CountryFlags/PW.js +0 -30
- package/CountryFlags/PY.d.ts +0 -3
- package/CountryFlags/PY.js +0 -33
- package/CountryFlags/QA.d.ts +0 -3
- package/CountryFlags/QA.js +0 -30
- package/CountryFlags/RE.d.ts +0 -3
- package/CountryFlags/RE.js +0 -32
- package/CountryFlags/RO.d.ts +0 -3
- package/CountryFlags/RO.js +0 -31
- package/CountryFlags/RS.d.ts +0 -3
- package/CountryFlags/RS.js +0 -35
- package/CountryFlags/RU.d.ts +0 -3
- package/CountryFlags/RU.js +0 -32
- package/CountryFlags/RW.d.ts +0 -3
- package/CountryFlags/RW.js +0 -32
- package/CountryFlags/SA.d.ts +0 -3
- package/CountryFlags/SA.js +0 -33
- package/CountryFlags/SB.d.ts +0 -3
- package/CountryFlags/SB.js +0 -33
- package/CountryFlags/SC.d.ts +0 -3
- package/CountryFlags/SC.js +0 -33
- package/CountryFlags/SD.d.ts +0 -3
- package/CountryFlags/SD.js +0 -32
- package/CountryFlags/SE.d.ts +0 -3
- package/CountryFlags/SE.js +0 -30
- package/CountryFlags/SG.d.ts +0 -3
- package/CountryFlags/SG.js +0 -33
- package/CountryFlags/SH.d.ts +0 -3
- package/CountryFlags/SH.js +0 -43
- package/CountryFlags/SI.d.ts +0 -3
- package/CountryFlags/SI.js +0 -34
- package/CountryFlags/SJ.d.ts +0 -3
- package/CountryFlags/SJ.js +0 -31
- package/CountryFlags/SK.d.ts +0 -3
- package/CountryFlags/SK.js +0 -35
- package/CountryFlags/SL.d.ts +0 -3
- package/CountryFlags/SL.js +0 -31
- package/CountryFlags/SM.d.ts +0 -3
- package/CountryFlags/SM.js +0 -35
- package/CountryFlags/SN.d.ts +0 -3
- package/CountryFlags/SN.js +0 -32
- package/CountryFlags/SO.d.ts +0 -3
- package/CountryFlags/SO.js +0 -30
- package/CountryFlags/SR.d.ts +0 -3
- package/CountryFlags/SR.js +0 -33
- package/CountryFlags/SS.d.ts +0 -3
- package/CountryFlags/SS.js +0 -34
- package/CountryFlags/ST.d.ts +0 -3
- package/CountryFlags/ST.js +0 -33
- package/CountryFlags/SV.d.ts +0 -3
- package/CountryFlags/SV.js +0 -34
- package/CountryFlags/SX.d.ts +0 -3
- package/CountryFlags/SX.js +0 -37
- package/CountryFlags/SY.d.ts +0 -3
- package/CountryFlags/SY.js +0 -33
- package/CountryFlags/SZ.d.ts +0 -3
- package/CountryFlags/SZ.js +0 -35
- package/CountryFlags/SwiperOverview.d.ts +0 -257
- package/CountryFlags/SwiperOverview.js +0 -524
- package/CountryFlags/TA.d.ts +0 -3
- package/CountryFlags/TA.js +0 -47
- package/CountryFlags/TC.d.ts +0 -3
- package/CountryFlags/TC.js +0 -44
- package/CountryFlags/TD.d.ts +0 -3
- package/CountryFlags/TD.js +0 -31
- package/CountryFlags/TF.d.ts +0 -3
- package/CountryFlags/TF.js +0 -34
- package/CountryFlags/TG.d.ts +0 -3
- package/CountryFlags/TG.js +0 -33
- package/CountryFlags/TH.d.ts +0 -3
- package/CountryFlags/TH.js +0 -32
- package/CountryFlags/TJ.d.ts +0 -3
- package/CountryFlags/TJ.js +0 -33
- package/CountryFlags/TK.d.ts +0 -3
- package/CountryFlags/TK.js +0 -33
- package/CountryFlags/TL.d.ts +0 -3
- package/CountryFlags/TL.js +0 -32
- package/CountryFlags/TM.d.ts +0 -3
- package/CountryFlags/TM.js +0 -45
- package/CountryFlags/TN.d.ts +0 -3
- package/CountryFlags/TN.js +0 -33
- package/CountryFlags/TO.d.ts +0 -3
- package/CountryFlags/TO.js +0 -31
- package/CountryFlags/TR.d.ts +0 -3
- package/CountryFlags/TR.js +0 -30
- package/CountryFlags/TT.d.ts +0 -3
- package/CountryFlags/TT.js +0 -31
- package/CountryFlags/TV.d.ts +0 -3
- package/CountryFlags/TV.js +0 -36
- package/CountryFlags/TW.d.ts +0 -3
- package/CountryFlags/TW.js +0 -33
- package/CountryFlags/TZ.d.ts +0 -3
- package/CountryFlags/TZ.js +0 -32
- package/CountryFlags/UA.d.ts +0 -3
- package/CountryFlags/UA.js +0 -30
- package/CountryFlags/UG.d.ts +0 -3
- package/CountryFlags/UG.js +0 -35
- package/CountryFlags/UM.d.ts +0 -3
- package/CountryFlags/UM.js +0 -34
- package/CountryFlags/US.d.ts +0 -3
- package/CountryFlags/US.js +0 -34
- package/CountryFlags/UY.d.ts +0 -3
- package/CountryFlags/UY.js +0 -33
- package/CountryFlags/UZ.d.ts +0 -3
- package/CountryFlags/UZ.js +0 -35
- package/CountryFlags/Uknown.d.ts +0 -3
- package/CountryFlags/Uknown.js +0 -34
- package/CountryFlags/VA.d.ts +0 -3
- package/CountryFlags/VA.js +0 -32
- package/CountryFlags/VC.d.ts +0 -3
- package/CountryFlags/VC.js +0 -32
- package/CountryFlags/VE.d.ts +0 -3
- package/CountryFlags/VE.js +0 -32
- package/CountryFlags/VG.d.ts +0 -3
- package/CountryFlags/VG.js +0 -45
- package/CountryFlags/VI.d.ts +0 -3
- package/CountryFlags/VI.js +0 -41
- package/CountryFlags/VN.d.ts +0 -3
- package/CountryFlags/VN.js +0 -30
- package/CountryFlags/VU.d.ts +0 -3
- package/CountryFlags/VU.js +0 -35
- package/CountryFlags/WF.d.ts +0 -3
- package/CountryFlags/WF.js +0 -33
- package/CountryFlags/WS.d.ts +0 -3
- package/CountryFlags/WS.js +0 -32
- package/CountryFlags/XK.d.ts +0 -3
- package/CountryFlags/XK.js +0 -32
- package/CountryFlags/YE.d.ts +0 -3
- package/CountryFlags/YE.js +0 -31
- package/CountryFlags/YT.d.ts +0 -3
- package/CountryFlags/YT.js +0 -35
- package/CountryFlags/ZA.d.ts +0 -3
- package/CountryFlags/ZA.js +0 -34
- package/CountryFlags/ZM.d.ts +0 -3
- package/CountryFlags/ZM.js +0 -33
- package/CountryFlags/ZW.d.ts +0 -3
- package/CountryFlags/ZW.js +0 -39
- package/CountryFlags/index.d.ts +0 -257
- package/CountryFlags/index.js +0 -524
- package/ErrorBoundary/Fallback.d.ts +0 -3
- package/ErrorBoundary/Fallback.js +0 -51
- package/Menu/AutoHeightWrapper.d.ts +0 -6
- package/Menu/AutoHeightWrapper.js +0 -43
- package/Menu/MeasuredItem.d.ts +0 -10
- package/Menu/MeasuredItem.js +0 -51
- package/Menu/VirtualizedItem.d.ts +0 -22
- package/Menu/VirtualizedItem.js +0 -69
- package/Menu/VirtualizedList.d.ts +0 -18
- package/Menu/VirtualizedList.js +0 -26
- package/Menu/VirtualizedListComponent.d.ts +0 -20
- package/Menu/VirtualizedListComponent.js +0 -305
- /package/{CountryFlags → PhoneField/flags}/BY.d.ts +0 -0
- /package/{CountryFlags → PhoneField/flags}/CN.d.ts +0 -0
- /package/{CountryFlags/AC.d.ts → PhoneField/flags/IL.d.ts} +0 -0
- /package/{CountryFlags/AD.d.ts → PhoneField/flags/JP.d.ts} +0 -0
- /package/{CountryFlags/AE.d.ts → PhoneField/flags/KZ.d.ts} +0 -0
- /package/{CountryFlags/AF.d.ts → PhoneField/flags/RU.d.ts} +0 -0
- /package/{CountryFlags/AG.d.ts → PhoneField/flags/UA.d.ts} +0 -0
- /package/{CountryFlags/AI.d.ts → PhoneField/flags/US.d.ts} +0 -0
- /package/{CountryFlags/AL.d.ts → PhoneField/flags/Unknown.d.ts} +0 -0
package/Swiper/Swiper.d.ts
CHANGED
|
@@ -33,7 +33,20 @@ export type SwiperProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'children'>
|
|
|
33
33
|
readonly threshold?: number;
|
|
34
34
|
readonly resistance?: boolean;
|
|
35
35
|
readonly slidesPerView?: number;
|
|
36
|
-
|
|
36
|
+
/**
|
|
37
|
+
* Arrow keys switch the slides when the swiper is focused\
|
|
38
|
+
* **Default:** `true`
|
|
39
|
+
*/
|
|
40
|
+
readonly keyboardControl?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* The label of the slide for screen readers\
|
|
43
|
+
* **Default:** `(index, total) => \`${index + 1} / ${total}\``
|
|
44
|
+
*/
|
|
45
|
+
readonly slideLabel?: (index: number, total: number) => string;
|
|
46
|
+
/**
|
|
47
|
+
* The slides: `<SwiperSlide>` elements. `null`, `false` and other non-elements are skipped
|
|
48
|
+
*/
|
|
49
|
+
readonly children?: React.ReactNode;
|
|
37
50
|
readonly overrides?: SwiperOverrides;
|
|
38
51
|
};
|
|
39
52
|
export declare const Swiper: React.ForwardRefExoticComponent<Omit<React.HTMLAttributes<HTMLDivElement>, "children"> & {
|
|
@@ -49,7 +62,20 @@ export declare const Swiper: React.ForwardRefExoticComponent<Omit<React.HTMLAttr
|
|
|
49
62
|
readonly threshold?: number | undefined;
|
|
50
63
|
readonly resistance?: boolean | undefined;
|
|
51
64
|
readonly slidesPerView?: number | undefined;
|
|
52
|
-
|
|
65
|
+
/**
|
|
66
|
+
* Arrow keys switch the slides when the swiper is focused\
|
|
67
|
+
* **Default:** `true`
|
|
68
|
+
*/
|
|
69
|
+
readonly keyboardControl?: boolean | undefined;
|
|
70
|
+
/**
|
|
71
|
+
* The label of the slide for screen readers\
|
|
72
|
+
* **Default:** `(index, total) => \`${index + 1} / ${total}\``
|
|
73
|
+
*/
|
|
74
|
+
readonly slideLabel?: ((index: number, total: number) => string) | undefined;
|
|
75
|
+
/**
|
|
76
|
+
* The slides: `<SwiperSlide>` elements. `null`, `false` and other non-elements are skipped
|
|
77
|
+
*/
|
|
78
|
+
readonly children?: React.ReactNode;
|
|
53
79
|
readonly overrides?: SwiperOverrides | undefined;
|
|
54
80
|
} & React.RefAttributes<SwiperRef>>;
|
|
55
81
|
export default Swiper;
|
package/Swiper/Swiper.js
CHANGED
|
@@ -46,14 +46,16 @@ const SwiperContainer_1 = __importDefault(require("./SwiperContainer"));
|
|
|
46
46
|
const SwiperWrapper_1 = __importDefault(require("./SwiperWrapper"));
|
|
47
47
|
const SwiperTrack_1 = __importDefault(require("./SwiperTrack"));
|
|
48
48
|
const SwiperSlidesRenderer_1 = __importDefault(require("./SwiperSlidesRenderer"));
|
|
49
|
+
const useThemeProps_1 = __importDefault(require("../ThemeProvider/useThemeProps"));
|
|
49
50
|
__exportStar(require("./SwiperSlide"), exports);
|
|
51
|
+
const defaultSlideLabel = (index, total) => `${index + 1} / ${total}`;
|
|
50
52
|
exports.Swiper = React.forwardRef((props, ref) => {
|
|
51
|
-
const { children, dragThreshold = 240, snap = true, draggable = true, overrides, initialIndex = 0, infinite = false, onSlideChange, autoplay = false, autoplayInterval = 3000, pauseOnHover = true, threshold = 20, resistance = true, slidesPerView = 1 } =
|
|
53
|
+
const _a = (0, useThemeProps_1.default)('Swiper', props), { children, dragThreshold = 240, snap = true, draggable = true, overrides, initialIndex = 0, infinite = false, onSlideChange, autoplay = false, autoplayInterval = 3000, pauseOnHover = true, threshold = 20, resistance = true, slidesPerView = 1, keyboardControl = true, slideLabel = defaultSlideLabel } = _a, restProps = __rest(_a, ["children", "dragThreshold", "snap", "draggable", "overrides", "initialIndex", "infinite", "onSlideChange", "autoplay", "autoplayInterval", "pauseOnHover", "threshold", "resistance", "slidesPerView", "keyboardControl", "slideLabel"]);
|
|
52
54
|
// #region Slides
|
|
53
55
|
const slides = React.useMemo(() => {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
56
|
+
// toArray skips null/false and keeps the user keys (prefixed), so the slides are not remounted
|
|
57
|
+
// when a slide is added to the start
|
|
58
|
+
const childrenSlides = React.Children.toArray(children).filter(React.isValidElement);
|
|
57
59
|
if (infinite) {
|
|
58
60
|
if (childrenSlides.length < 2) {
|
|
59
61
|
console.error('To infinite loop counts of the slides must be greater than 2');
|
|
@@ -72,14 +74,9 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
72
74
|
key: `clone-tail-${i}`,
|
|
73
75
|
'data-clone': 'tail',
|
|
74
76
|
}));
|
|
75
|
-
|
|
76
|
-
key: `slide-${idx}`,
|
|
77
|
-
}));
|
|
78
|
-
return [...headClones, ...mainSlides, ...tailClones];
|
|
77
|
+
return [...headClones, ...childrenSlides, ...tailClones];
|
|
79
78
|
}
|
|
80
|
-
return childrenSlides
|
|
81
|
-
key: `slide-${idx}`,
|
|
82
|
-
}));
|
|
79
|
+
return childrenSlides;
|
|
83
80
|
}, [children, infinite, slidesPerView]);
|
|
84
81
|
const total = slides.length;
|
|
85
82
|
const realSlidesCount = infinite ? total - 2 * slidesPerView : total;
|
|
@@ -92,9 +89,15 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
92
89
|
return initialIndex + slidesPerView;
|
|
93
90
|
});
|
|
94
91
|
const [offset, setOffset] = React.useState(0);
|
|
92
|
+
// The long decelerating transition after a free swipe (snap=false)
|
|
93
|
+
const [isMomentum, setIsMomentum] = React.useState(false);
|
|
95
94
|
const [isDragging, setIsDragging] = React.useState(false);
|
|
96
95
|
const [disableAnimation, setDisableAnimation] = React.useState(false);
|
|
97
|
-
const [
|
|
96
|
+
const [isPausedByApi, setIsPausedByApi] = React.useState(false);
|
|
97
|
+
const [isHovered, setIsHovered] = React.useState(false);
|
|
98
|
+
const [isFocused, setIsFocused] = React.useState(false);
|
|
99
|
+
// The pause by the API is not cancelled when the mouse leaves the swiper
|
|
100
|
+
const isPaused = isPausedByApi || isHovered || isFocused;
|
|
98
101
|
// #region Refs
|
|
99
102
|
const dragging = React.useRef(false);
|
|
100
103
|
const startX = React.useRef(0);
|
|
@@ -104,8 +107,8 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
104
107
|
const wrapperRef = React.useRef(null);
|
|
105
108
|
const trackRef = React.useRef(null);
|
|
106
109
|
const isAnimating = React.useRef(false);
|
|
107
|
-
const autoplayTimer = React.useRef();
|
|
108
110
|
const mounted = React.useRef(true);
|
|
111
|
+
const suppressClick = React.useRef(false);
|
|
109
112
|
// #region Real Index
|
|
110
113
|
const realIndex = React.useMemo(() => {
|
|
111
114
|
if (!infinite) {
|
|
@@ -118,7 +121,8 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
118
121
|
if (realIndex >= realSlidesCount) {
|
|
119
122
|
return realIndex - realSlidesCount;
|
|
120
123
|
}
|
|
121
|
-
|
|
124
|
+
// In the infinite mode any slide can be the first visible one, so there is no clamp
|
|
125
|
+
return realIndex;
|
|
122
126
|
}, [index, infinite, slidesPerView, realSlidesCount]);
|
|
123
127
|
const prevRealIndex = React.useRef(realIndex);
|
|
124
128
|
// #region Effects
|
|
@@ -131,11 +135,13 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
131
135
|
React.useEffect(() => {
|
|
132
136
|
if (!mounted.current)
|
|
133
137
|
return;
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
138
|
+
// The slides were removed: keep the index inside the allowed range
|
|
139
|
+
const lastIndex = infinite ? total - slidesPerView : maxIndex;
|
|
140
|
+
if (index > lastIndex) {
|
|
141
|
+
setIndex(infinite ? slidesPerView : maxIndex);
|
|
142
|
+
setOffset(0);
|
|
137
143
|
}
|
|
138
|
-
}, [
|
|
144
|
+
}, [index, infinite, total, slidesPerView, maxIndex]);
|
|
139
145
|
// #region Normalization
|
|
140
146
|
const normalizeIndex = React.useCallback(() => {
|
|
141
147
|
if (!infinite || !mounted.current)
|
|
@@ -143,15 +149,17 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
143
149
|
const firstRealIndex = slidesPerView;
|
|
144
150
|
const lastRealIndex = total - slidesPerView - 1;
|
|
145
151
|
if (index < firstRealIndex || index > lastRealIndex) {
|
|
146
|
-
|
|
152
|
+
// A clone position shows the same slides as the real position shifted by the slides count.
|
|
153
|
+
// Not always the first/last real slide: after several fast clicks the index may be deeper in the clones
|
|
154
|
+
const target = index < firstRealIndex ? index + realSlidesCount : index - realSlidesCount;
|
|
147
155
|
setDisableAnimation(true);
|
|
148
156
|
requestAnimationFrame(() => {
|
|
149
157
|
var _a;
|
|
150
158
|
if (!mounted.current)
|
|
151
159
|
return;
|
|
152
160
|
(_a = trackRef.current) === null || _a === void 0 ? void 0 : _a.getBoundingClientRect();
|
|
161
|
+
// The offset is kept: in the free mode (snap=false) the track stops between the slides
|
|
153
162
|
setIndex(target);
|
|
154
|
-
setOffset(0);
|
|
155
163
|
requestAnimationFrame(() => {
|
|
156
164
|
if (mounted.current) {
|
|
157
165
|
setDisableAnimation(false);
|
|
@@ -159,7 +167,7 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
159
167
|
});
|
|
160
168
|
});
|
|
161
169
|
}
|
|
162
|
-
}, [index, infinite, slidesPerView, total]);
|
|
170
|
+
}, [index, infinite, slidesPerView, total, realSlidesCount]);
|
|
163
171
|
// #region Navigation API
|
|
164
172
|
const indexRef = React.useRef(index);
|
|
165
173
|
React.useEffect(() => {
|
|
@@ -184,16 +192,21 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
184
192
|
return; // никуда не едем — флаг не трогаем
|
|
185
193
|
}
|
|
186
194
|
setDisableAnimation(false);
|
|
195
|
+
setIsMomentum(false);
|
|
196
|
+
setOffset(0);
|
|
187
197
|
setIndex(targetIndex);
|
|
188
198
|
isAnimating.current = true;
|
|
189
199
|
}, [infinite, slidesPerView, realSlidesCount, maxIndex]);
|
|
190
200
|
const next = React.useCallback(() => {
|
|
191
|
-
// if (isAnimating.current) return;
|
|
192
201
|
setDisableAnimation(false);
|
|
202
|
+
setIsMomentum(false);
|
|
203
|
+
setOffset(0);
|
|
193
204
|
setIndex(prev => {
|
|
194
205
|
let nextIndex;
|
|
195
206
|
if (infinite) {
|
|
196
|
-
|
|
207
|
+
// The last position is the first tail clone: it mirrors the first real slide.
|
|
208
|
+
// Further positions would show the empty space when slidesPerView > 1
|
|
209
|
+
nextIndex = Math.min(prev + 1, total - slidesPerView);
|
|
197
210
|
}
|
|
198
211
|
else {
|
|
199
212
|
nextIndex = Math.min(prev + 1, maxIndex);
|
|
@@ -205,10 +218,11 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
205
218
|
isAnimating.current = true;
|
|
206
219
|
return nextIndex;
|
|
207
220
|
});
|
|
208
|
-
}, [infinite, maxIndex, total]);
|
|
221
|
+
}, [infinite, maxIndex, total, slidesPerView]);
|
|
209
222
|
const prev = React.useCallback(() => {
|
|
210
|
-
// if (isAnimating.current) return;
|
|
211
223
|
setDisableAnimation(false);
|
|
224
|
+
setIsMomentum(false);
|
|
225
|
+
setOffset(0);
|
|
212
226
|
setIndex(prev => {
|
|
213
227
|
const nextIndex = Math.max(prev - 1, 0);
|
|
214
228
|
if (nextIndex === prev) {
|
|
@@ -218,22 +232,70 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
218
232
|
return nextIndex;
|
|
219
233
|
});
|
|
220
234
|
}, []);
|
|
235
|
+
// #region Position
|
|
236
|
+
// The position is the distance in pixels from the start of the track to the left edge of the view.
|
|
237
|
+
// The state keeps it as index (whole slides) + offset (pixels), the track is translated by both
|
|
238
|
+
const getSlideWidth = React.useCallback(() => { var _a; return (((_a = wrapperRef.current) === null || _a === void 0 ? void 0 : _a.clientWidth) || 0) / slidesPerView; }, [slidesPerView]);
|
|
239
|
+
// The last allowed position. In the infinite mode it is the first tail clone
|
|
240
|
+
const maxPosition = React.useCallback(() => (infinite ? total - slidesPerView : maxIndex) * getSlideWidth(), [infinite, total, slidesPerView, maxIndex, getSlideWidth]);
|
|
241
|
+
// The position on the screen right now, also in the middle of a transition
|
|
242
|
+
const readPosition = React.useCallback(() => {
|
|
243
|
+
const track = trackRef.current;
|
|
244
|
+
if (track && typeof DOMMatrixReadOnly !== 'undefined') {
|
|
245
|
+
const { transform } = getComputedStyle(track);
|
|
246
|
+
if (transform && transform !== 'none') {
|
|
247
|
+
return -new DOMMatrixReadOnly(transform).m41;
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
return index * getSlideWidth() - offset;
|
|
251
|
+
}, [index, offset, getSlideWidth]);
|
|
252
|
+
// Infinite mode: the same view is shown by the real slides and by the clones,
|
|
253
|
+
// so the position is moved by the whole slides count when it comes close to the edge of the track
|
|
254
|
+
const wrapPosition = React.useCallback((position) => {
|
|
255
|
+
const width = getSlideWidth();
|
|
256
|
+
const span = realSlidesCount * width;
|
|
257
|
+
if (!infinite || width === 0)
|
|
258
|
+
return 0;
|
|
259
|
+
if (position < width * 0.5)
|
|
260
|
+
return span;
|
|
261
|
+
if (position > maxPosition() - width * 0.5)
|
|
262
|
+
return -span;
|
|
263
|
+
return 0;
|
|
264
|
+
}, [infinite, realSlidesCount, getSlideWidth, maxPosition]);
|
|
265
|
+
const dragBasePosition = React.useRef(0);
|
|
266
|
+
const dragAnchorIndex = React.useRef(0);
|
|
267
|
+
const dragPosition = React.useRef(0);
|
|
221
268
|
// #region Pointer Events
|
|
222
269
|
const onPointerDown = React.useCallback((e) => {
|
|
223
270
|
if (!wrapperRef.current || !draggable)
|
|
224
271
|
return;
|
|
272
|
+
// Only the main mouse button, the touch or the pen
|
|
273
|
+
if (e.pointerType === 'mouse' && e.button !== 0)
|
|
274
|
+
return;
|
|
275
|
+
const width = getSlideWidth();
|
|
276
|
+
// Grab the track where it is now: a running transition stops under the finger instead of jumping
|
|
277
|
+
let position = readPosition();
|
|
278
|
+
position += wrapPosition(position);
|
|
279
|
+
const anchor = width > 0 ? Math.round(position / width) : index;
|
|
280
|
+
dragBasePosition.current = position;
|
|
281
|
+
dragPosition.current = position;
|
|
282
|
+
dragAnchorIndex.current = anchor;
|
|
283
|
+
suppressClick.current = false;
|
|
225
284
|
dragging.current = true;
|
|
226
285
|
isAnimating.current = false;
|
|
227
286
|
setDisableAnimation(true);
|
|
287
|
+
setIsMomentum(false);
|
|
228
288
|
setIsDragging(true);
|
|
289
|
+
setIndex(anchor);
|
|
290
|
+
setOffset(anchor * width - position);
|
|
229
291
|
startX.current = e.clientX;
|
|
230
292
|
lastX.current = e.clientX;
|
|
231
293
|
lastTime.current = performance.now();
|
|
232
294
|
velocity.current = 0;
|
|
233
295
|
e.target.setPointerCapture(e.pointerId);
|
|
234
|
-
}, [draggable]);
|
|
296
|
+
}, [draggable, getSlideWidth, readPosition, wrapPosition, index]);
|
|
235
297
|
const onPointerMove = React.useCallback((e) => {
|
|
236
|
-
if (!dragging.current
|
|
298
|
+
if (!dragging.current)
|
|
237
299
|
return;
|
|
238
300
|
const now = performance.now();
|
|
239
301
|
const dx = e.clientX - lastX.current;
|
|
@@ -243,102 +305,172 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
243
305
|
}
|
|
244
306
|
lastX.current = e.clientX;
|
|
245
307
|
lastTime.current = now;
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
308
|
+
const width = getSlideWidth();
|
|
309
|
+
let position = dragBasePosition.current - (e.clientX - startX.current);
|
|
310
|
+
// Endless drag in the infinite mode: move the base together with the position
|
|
311
|
+
const shift = wrapPosition(position);
|
|
312
|
+
if (shift !== 0) {
|
|
313
|
+
dragBasePosition.current += shift;
|
|
314
|
+
dragAnchorIndex.current += Math.round(shift / width);
|
|
315
|
+
position += shift;
|
|
316
|
+
}
|
|
317
|
+
if (!infinite) {
|
|
318
|
+
const max = maxPosition();
|
|
319
|
+
if (position < 0) {
|
|
320
|
+
position = resistance ? position * 0.3 : 0;
|
|
250
321
|
}
|
|
251
|
-
if (
|
|
252
|
-
|
|
322
|
+
else if (position > max) {
|
|
323
|
+
position = resistance ? max + (position - max) * 0.3 : max;
|
|
253
324
|
}
|
|
254
325
|
}
|
|
255
|
-
|
|
256
|
-
|
|
326
|
+
dragPosition.current = position;
|
|
327
|
+
// snap: the index stays the same during the drag, the slide changes after the release.
|
|
328
|
+
// free: the index follows the position, so onSlideChange reports the slide under the view
|
|
329
|
+
const nextIndex = snap ? dragAnchorIndex.current : Math.round(position / width);
|
|
330
|
+
setIndex(nextIndex);
|
|
331
|
+
setOffset(nextIndex * width - position);
|
|
332
|
+
}, [getSlideWidth, wrapPosition, infinite, maxPosition, resistance, snap]);
|
|
257
333
|
const onPointerUp = React.useCallback((e) => {
|
|
258
334
|
if (!dragging.current)
|
|
259
335
|
return;
|
|
336
|
+
const width = getSlideWidth();
|
|
337
|
+
const position = dragPosition.current;
|
|
260
338
|
const delta = lastX.current - startX.current;
|
|
261
|
-
|
|
262
|
-
const
|
|
263
|
-
const
|
|
264
|
-
|
|
265
|
-
if (Math.abs(delta) >
|
|
266
|
-
|
|
267
|
-
}
|
|
268
|
-
if (!infinite) {
|
|
269
|
-
nextIndex = Math.max(0, Math.min(maxIndex, nextIndex));
|
|
270
|
-
}
|
|
271
|
-
else {
|
|
272
|
-
nextIndex = Math.max(0, Math.min(total - 1, nextIndex));
|
|
339
|
+
// The pointer stopped before the release: no inertia
|
|
340
|
+
const v = performance.now() - lastTime.current > 100 ? 0 : velocity.current;
|
|
341
|
+
const lastIndex = infinite ? total - slidesPerView : maxIndex;
|
|
342
|
+
// It was a drag, not a click: the click on a link or a button inside the slide must not fire
|
|
343
|
+
if (Math.abs(delta) > threshold) {
|
|
344
|
+
suppressClick.current = true;
|
|
273
345
|
}
|
|
274
346
|
setDisableAnimation(false);
|
|
275
347
|
if (snap) {
|
|
348
|
+
const anchor = dragAnchorIndex.current;
|
|
349
|
+
const displacement = position - anchor * width;
|
|
350
|
+
const velocityFactor = Math.min(Math.abs(v) * 250, 0.65);
|
|
351
|
+
const dynamicThreshold = Math.max(threshold, Math.min(dragThreshold * (1 - velocityFactor), dragThreshold));
|
|
352
|
+
let nextIndex = anchor;
|
|
353
|
+
if (Math.abs(displacement) > dynamicThreshold) {
|
|
354
|
+
// At least one slide, more if the slide was dragged further
|
|
355
|
+
nextIndex =
|
|
356
|
+
displacement > 0
|
|
357
|
+
? Math.max(anchor + 1, Math.round(position / width))
|
|
358
|
+
: Math.min(anchor - 1, Math.round(position / width));
|
|
359
|
+
}
|
|
360
|
+
nextIndex = Math.max(0, Math.min(lastIndex, nextIndex));
|
|
276
361
|
setIndex(nextIndex);
|
|
277
362
|
setOffset(0);
|
|
363
|
+
// A click without movement does not start a transition, so transitionend never comes
|
|
364
|
+
// and the flag would block autoplay and goToIndex forever
|
|
365
|
+
isAnimating.current = Math.abs(nextIndex * width - position) > 0.5;
|
|
278
366
|
}
|
|
279
367
|
else {
|
|
368
|
+
// Free mode: the track keeps moving by inertia and stops where it stops
|
|
369
|
+
const projected = Math.max(0, Math.min(lastIndex * width, position - v * 300));
|
|
370
|
+
const nextIndex = width > 0 ? Math.round(projected / width) : index;
|
|
371
|
+
setIsMomentum(true);
|
|
280
372
|
setIndex(nextIndex);
|
|
373
|
+
setOffset(nextIndex * width - projected);
|
|
374
|
+
isAnimating.current = Math.abs(projected - position) > 0.5;
|
|
281
375
|
}
|
|
282
|
-
// A click without movement does not start a transition, so transitionend never comes
|
|
283
|
-
// and the flag would block autoplay and goToIndex forever
|
|
284
|
-
isAnimating.current = nextIndex !== index || (snap && offset !== 0);
|
|
285
376
|
dragging.current = false;
|
|
286
377
|
setIsDragging(false);
|
|
287
378
|
e.target.releasePointerCapture(e.pointerId);
|
|
288
|
-
}, [
|
|
379
|
+
}, [
|
|
380
|
+
getSlideWidth,
|
|
381
|
+
infinite,
|
|
382
|
+
total,
|
|
383
|
+
slidesPerView,
|
|
384
|
+
maxIndex,
|
|
385
|
+
threshold,
|
|
386
|
+
snap,
|
|
387
|
+
dragThreshold,
|
|
388
|
+
index,
|
|
389
|
+
]);
|
|
289
390
|
const onLostPointerCapture = React.useCallback((e) => {
|
|
290
391
|
if (dragging.current) {
|
|
291
392
|
onPointerUp(e);
|
|
292
393
|
}
|
|
293
394
|
}, [onPointerUp]);
|
|
294
395
|
// #region Autoplay
|
|
295
|
-
const
|
|
396
|
+
const autoplayStep = React.useRef(() => undefined);
|
|
397
|
+
autoplayStep.current = () => {
|
|
398
|
+
// Without the infinite loop the autoplay returns to the first slide instead of stopping at the end
|
|
399
|
+
if (!infinite && indexRef.current >= maxIndex) {
|
|
400
|
+
goToIndex(0);
|
|
401
|
+
}
|
|
402
|
+
else {
|
|
403
|
+
next();
|
|
404
|
+
}
|
|
405
|
+
};
|
|
406
|
+
const pause = React.useCallback(() => setIsPausedByApi(true), []);
|
|
407
|
+
const resume = React.useCallback(() => setIsPausedByApi(false), []);
|
|
408
|
+
React.useEffect(() => {
|
|
296
409
|
if (!autoplay || isPaused)
|
|
297
|
-
return;
|
|
298
|
-
|
|
299
|
-
if (!
|
|
300
|
-
|
|
410
|
+
return undefined;
|
|
411
|
+
const timer = setInterval(() => {
|
|
412
|
+
if (!dragging.current && !isAnimating.current && mounted.current) {
|
|
413
|
+
autoplayStep.current();
|
|
301
414
|
}
|
|
302
415
|
}, autoplayInterval);
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
autoplayTimer.current = undefined;
|
|
309
|
-
}
|
|
310
|
-
}, []);
|
|
311
|
-
const resume = React.useCallback(() => {
|
|
312
|
-
setIsPaused(false);
|
|
313
|
-
}, []);
|
|
314
|
-
// #region Hover
|
|
416
|
+
return () => clearInterval(timer);
|
|
417
|
+
}, [autoplay, autoplayInterval, isPaused]);
|
|
418
|
+
// #region Hover and focus
|
|
419
|
+
// The autoplay pauses while the pointer is over the swiper (pauseOnHover)
|
|
420
|
+
// and always while the focus is inside it, so the keyboard user is not interrupted
|
|
315
421
|
React.useEffect(() => {
|
|
316
|
-
if (!autoplay || !pauseOnHover)
|
|
317
|
-
return;
|
|
318
422
|
const wrapper = wrapperRef.current;
|
|
319
|
-
if (!wrapper)
|
|
320
|
-
return;
|
|
321
|
-
const handleMouseEnter = () =>
|
|
322
|
-
const handleMouseLeave = () =>
|
|
423
|
+
if (!autoplay || !wrapper)
|
|
424
|
+
return undefined;
|
|
425
|
+
const handleMouseEnter = () => pauseOnHover && setIsHovered(true);
|
|
426
|
+
const handleMouseLeave = () => setIsHovered(false);
|
|
427
|
+
const handleFocusIn = () => setIsFocused(true);
|
|
428
|
+
const handleFocusOut = (event) => {
|
|
429
|
+
if (!wrapper.contains(event.relatedTarget)) {
|
|
430
|
+
setIsFocused(false);
|
|
431
|
+
}
|
|
432
|
+
};
|
|
323
433
|
wrapper.addEventListener('mouseenter', handleMouseEnter);
|
|
324
434
|
wrapper.addEventListener('mouseleave', handleMouseLeave);
|
|
435
|
+
wrapper.addEventListener('focusin', handleFocusIn);
|
|
436
|
+
wrapper.addEventListener('focusout', handleFocusOut);
|
|
325
437
|
return () => {
|
|
326
438
|
wrapper.removeEventListener('mouseenter', handleMouseEnter);
|
|
327
439
|
wrapper.removeEventListener('mouseleave', handleMouseLeave);
|
|
440
|
+
wrapper.removeEventListener('focusin', handleFocusIn);
|
|
441
|
+
wrapper.removeEventListener('focusout', handleFocusOut);
|
|
328
442
|
};
|
|
329
|
-
}, [autoplay, pauseOnHover
|
|
330
|
-
// #region
|
|
331
|
-
React.
|
|
332
|
-
if (
|
|
333
|
-
|
|
443
|
+
}, [autoplay, pauseOnHover]);
|
|
444
|
+
// #region Keyboard
|
|
445
|
+
const onKeyDown = React.useCallback((event) => {
|
|
446
|
+
if (!keyboardControl)
|
|
447
|
+
return;
|
|
448
|
+
// Do not steal the arrows from the fields inside the slides
|
|
449
|
+
const target = event.target;
|
|
450
|
+
if (target.closest('input, textarea, select, [contenteditable="true"]'))
|
|
451
|
+
return;
|
|
452
|
+
if (event.key === 'ArrowLeft') {
|
|
453
|
+
event.preventDefault();
|
|
454
|
+
prev();
|
|
334
455
|
}
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
456
|
+
if (event.key === 'ArrowRight') {
|
|
457
|
+
event.preventDefault();
|
|
458
|
+
next();
|
|
459
|
+
}
|
|
460
|
+
}, [keyboardControl, prev, next]);
|
|
461
|
+
const onClickCapture = React.useCallback((event) => {
|
|
462
|
+
if (suppressClick.current) {
|
|
463
|
+
suppressClick.current = false;
|
|
464
|
+
event.preventDefault();
|
|
465
|
+
event.stopPropagation();
|
|
466
|
+
}
|
|
467
|
+
}, []);
|
|
468
|
+
// The images and the links are dragged by the browser as files, it breaks the swipe
|
|
469
|
+
const onDragStart = React.useCallback((event) => {
|
|
470
|
+
if (draggable) {
|
|
471
|
+
event.preventDefault();
|
|
472
|
+
}
|
|
473
|
+
}, [draggable]);
|
|
342
474
|
// #region Transition End
|
|
343
475
|
React.useEffect(() => {
|
|
344
476
|
const track = trackRef.current;
|
|
@@ -398,10 +530,22 @@ exports.Swiper = React.forwardRef((props, ref) => {
|
|
|
398
530
|
}
|
|
399
531
|
return domIndex - slidesPerView;
|
|
400
532
|
}, [infinite, realSlidesCount, slidesPerView, total]);
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
533
|
+
// The slides at least partially in the view: they are not inert, so a partially visible slide
|
|
534
|
+
// can be clicked. Between the slides (drag, free mode) one more slide is partially visible
|
|
535
|
+
const slideWidth = wrapperRef.current ? wrapperRef.current.clientWidth / slidesPerView : 0;
|
|
536
|
+
let firstVisibleDomIndex = index;
|
|
537
|
+
let visibleCount = slidesPerView;
|
|
538
|
+
if (slideWidth > 0 && Math.abs(offset) > 0.5) {
|
|
539
|
+
const position = index * slideWidth - offset;
|
|
540
|
+
firstVisibleDomIndex = Math.floor(position / slideWidth + 0.001);
|
|
541
|
+
const lastVisibleDomIndex = Math.ceil((position + slidesPerView * slideWidth) / slideWidth - 0.001) - 1;
|
|
542
|
+
visibleCount = lastVisibleDomIndex - firstVisibleDomIndex + 1;
|
|
543
|
+
}
|
|
544
|
+
firstVisibleDomIndex = Math.max(0, Math.min(total - 1, firstVisibleDomIndex));
|
|
545
|
+
return (React.createElement(overridesMap.Container, Object.assign({ role: "region", "aria-roledescription": "carousel" }, restProps),
|
|
546
|
+
React.createElement(overridesMap.Wrapper, { ref: wrapperRef, draggable: draggable, slidesPerView: slidesPerView, tabIndex: keyboardControl ? 0 : undefined, "aria-live": autoplay && !isPaused ? 'off' : 'polite', onKeyDown: onKeyDown, onClickCapture: onClickCapture, onDragStart: onDragStart, onPointerDown: onPointerDown, onPointerMove: onPointerMove, onPointerUp: onPointerUp, onLostPointerCapture: onLostPointerCapture },
|
|
547
|
+
React.createElement(overridesMap.Track, { ref: trackRef, dragging: isDragging, index: index, offset: offset, disableAnimation: disableAnimation, momentum: isMomentum, slidesPerView: slidesPerView },
|
|
548
|
+
React.createElement(SwiperSlidesRenderer_1.default, { slides: slides, slidesPerView: slidesPerView, realIndex: realIndex, firstVisibleIndex: getSlideRealIndex(firstVisibleDomIndex), visibleCount: visibleCount, realSlidesCount: realSlidesCount, getSlideRealIndex: getSlideRealIndex, slideLabel: slideLabel })))));
|
|
405
549
|
});
|
|
406
550
|
exports.Swiper.displayName = 'Swiper';
|
|
407
551
|
exports.default = exports.Swiper;
|
|
@@ -4,8 +4,16 @@ export type SwiperSlidesRendererProps = {
|
|
|
4
4
|
readonly slides: readonly SwiperSlideElement[];
|
|
5
5
|
readonly slidesPerView: number;
|
|
6
6
|
readonly realIndex: number;
|
|
7
|
+
/**
|
|
8
|
+
* The real index of the first slide that is at least partially in the view
|
|
9
|
+
* and the count of such slides. In the free mode (snap=false) the track stops between the slides,
|
|
10
|
+
* then one more slide is partially visible
|
|
11
|
+
*/
|
|
12
|
+
readonly firstVisibleIndex?: number;
|
|
13
|
+
readonly visibleCount?: number;
|
|
7
14
|
readonly realSlidesCount: number;
|
|
8
15
|
readonly getSlideRealIndex: (index: number) => number;
|
|
16
|
+
readonly slideLabel: (index: number, total: number) => string;
|
|
9
17
|
};
|
|
10
18
|
declare const _default: React.NamedExoticComponent<SwiperSlidesRendererProps>;
|
|
11
19
|
export default _default;
|
|
@@ -24,23 +24,24 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
24
24
|
};
|
|
25
25
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
26
|
const React = __importStar(require("react"));
|
|
27
|
+
// React 19 supports the boolean `inert`, React 18 passes only the string value to the DOM
|
|
28
|
+
const INERT_VALUE = parseInt(React.version, 10) >= 19 ? true : '';
|
|
27
29
|
const SwiperSlidesRenderer = props => {
|
|
28
|
-
const { slides, slidesPerView, realIndex, realSlidesCount, getSlideRealIndex } = props;
|
|
29
|
-
// Мемоизируем вычисления видимости
|
|
30
|
+
const { slides, slidesPerView, realIndex, realSlidesCount, getSlideRealIndex, slideLabel, firstVisibleIndex = realIndex, visibleCount = slidesPerView, } = props;
|
|
30
31
|
const visibilityMap = React.useMemo(() => {
|
|
31
32
|
const map = new Map();
|
|
32
|
-
if (realSlidesCount <=
|
|
33
|
+
if (realSlidesCount <= visibleCount) {
|
|
33
34
|
slides.forEach((_, i) => {
|
|
34
35
|
map.set(i, { isVisible: true, isNearby: false });
|
|
35
36
|
});
|
|
36
37
|
}
|
|
37
38
|
else {
|
|
38
39
|
const visibleIndices = [];
|
|
39
|
-
for (let j = 0; j <
|
|
40
|
-
visibleIndices.push((
|
|
40
|
+
for (let j = 0; j < visibleCount; j++) {
|
|
41
|
+
visibleIndices.push((firstVisibleIndex + j) % realSlidesCount);
|
|
41
42
|
}
|
|
42
|
-
const prevIndex = (
|
|
43
|
-
const nextIndex = (
|
|
43
|
+
const prevIndex = (firstVisibleIndex - 1 + realSlidesCount) % realSlidesCount;
|
|
44
|
+
const nextIndex = (firstVisibleIndex + visibleCount) % realSlidesCount;
|
|
44
45
|
slides.forEach((_, i) => {
|
|
45
46
|
const slideRealIndex = getSlideRealIndex(i);
|
|
46
47
|
const isVisible = visibleIndices.includes(slideRealIndex);
|
|
@@ -49,23 +50,25 @@ const SwiperSlidesRenderer = props => {
|
|
|
49
50
|
});
|
|
50
51
|
}
|
|
51
52
|
return map;
|
|
52
|
-
}, [slides,
|
|
53
|
+
}, [slides, visibleCount, firstVisibleIndex, realSlidesCount, getSlideRealIndex]);
|
|
53
54
|
return (React.createElement(React.Fragment, null, slides.map((slide, i) => {
|
|
54
55
|
const { isVisible, isNearby } = visibilityMap.get(i) || {
|
|
55
56
|
isVisible: false,
|
|
56
57
|
isNearby: false,
|
|
57
58
|
};
|
|
58
59
|
const slideRealIndex = getSlideRealIndex(i);
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
slide.props.isNearby === isNearby) {
|
|
63
|
-
return slide;
|
|
64
|
-
}
|
|
60
|
+
const isClone = typeof slide.props['data-clone'] !== 'undefined';
|
|
61
|
+
// The slides out of the view are inert: Tab does not go into them (it would scroll the track)
|
|
62
|
+
// and screen readers skip them. The clones are always hidden from screen readers
|
|
65
63
|
return React.cloneElement(slide, {
|
|
66
64
|
slidesPerView,
|
|
67
65
|
isVisible,
|
|
68
66
|
isNearby,
|
|
67
|
+
role: 'group',
|
|
68
|
+
'aria-roledescription': 'slide',
|
|
69
|
+
'aria-label': slideLabel(slideRealIndex, realSlidesCount),
|
|
70
|
+
'aria-hidden': isClone || !isVisible ? true : undefined,
|
|
71
|
+
inert: isVisible && !isClone ? undefined : INERT_VALUE,
|
|
69
72
|
'data-index': i,
|
|
70
73
|
'data-real-index': slideRealIndex,
|
|
71
74
|
});
|
package/Swiper/SwiperTrack.d.ts
CHANGED
|
@@ -5,6 +5,10 @@ export type SwiperTrackProps = React.HTMLAttributes<HTMLDivElement> & {
|
|
|
5
5
|
readonly offset: number;
|
|
6
6
|
readonly dragging: boolean;
|
|
7
7
|
readonly disableAnimation?: boolean;
|
|
8
|
+
/**
|
|
9
|
+
* The long decelerating transition after a free swipe (snap=false)
|
|
10
|
+
*/
|
|
11
|
+
readonly momentum?: boolean;
|
|
8
12
|
readonly slidesPerView: number;
|
|
9
13
|
};
|
|
10
14
|
export declare const SwiperTrack: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
|
|
@@ -13,6 +17,10 @@ export declare const SwiperTrack: React.ForwardRefExoticComponent<React.HTMLAttr
|
|
|
13
17
|
readonly offset: number;
|
|
14
18
|
readonly dragging: boolean;
|
|
15
19
|
readonly disableAnimation?: boolean | undefined;
|
|
20
|
+
/**
|
|
21
|
+
* The long decelerating transition after a free swipe (snap=false)
|
|
22
|
+
*/
|
|
23
|
+
readonly momentum?: boolean | undefined;
|
|
16
24
|
readonly slidesPerView: number;
|
|
17
25
|
} & React.RefAttributes<HTMLDivElement>>;
|
|
18
26
|
export default SwiperTrack;
|