@telus-uds/components-base 3.29.1 → 4.0.0-alpha.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/CHANGELOG.md +34 -1
- package/babel.config.cjs +1 -1
- package/lib/cjs/A11yInfoProvider/{index.js → A11yInfoProvider.js} +2 -3
- package/lib/cjs/A11yText/{index.js → A11yText.js} +7 -6
- package/lib/cjs/ActionCard/ActionCard.js +41 -26
- package/lib/cjs/ActivityIndicator/{index.js → ActivityIndicator.js} +17 -17
- package/lib/cjs/ActivityIndicator/Dots.js +4 -5
- package/lib/cjs/ActivityIndicator/Dots.native.js +4 -5
- package/lib/cjs/ActivityIndicator/FullScreenIndicator.js +9 -10
- package/lib/cjs/ActivityIndicator/InlineIndicator.js +9 -10
- package/lib/cjs/ActivityIndicator/OverlayIndicator.js +10 -11
- package/lib/cjs/ActivityIndicator/RenderActivityIndicator.js +8 -8
- package/lib/cjs/ActivityIndicator/Spinner.js +4 -5
- package/lib/cjs/ActivityIndicator/Spinner.native.js +4 -5
- package/lib/cjs/Autocomplete/Autocomplete.js +35 -28
- package/lib/cjs/Autocomplete/Loading.js +11 -12
- package/lib/cjs/Autocomplete/Suggestions.js +11 -12
- package/lib/cjs/Autocomplete/dictionary.js +2 -2
- package/lib/cjs/Badge/Badge.js +14 -11
- package/lib/cjs/BaseProvider/{index.js → BaseProvider.js} +10 -11
- package/lib/cjs/BaseProvider/HydrationContext.js +2 -3
- package/lib/cjs/Box/Box.js +55 -42
- package/lib/cjs/Box/backgroundImageStylesMap.js +2 -2
- package/lib/cjs/Button/Button.js +16 -16
- package/lib/cjs/Button/ButtonBase.js +36 -24
- package/lib/cjs/Button/ButtonDropdown.js +24 -22
- package/lib/cjs/Button/ButtonGroup.js +35 -25
- package/lib/cjs/Button/ButtonLink.js +20 -18
- package/lib/cjs/Button/propTypes.js +10 -11
- package/lib/cjs/Card/Card.js +52 -36
- package/lib/cjs/Card/CardBase.js +33 -29
- package/lib/cjs/Card/PressableCardBase.js +36 -24
- package/lib/cjs/Card/backgroundImageStylesMap.js +2 -2
- package/lib/cjs/CardGroup/CardGroup.js +35 -27
- package/lib/cjs/CardGroup/dictionary.js +2 -2
- package/lib/cjs/Carousel/Carousel.js +69 -56
- package/lib/cjs/Carousel/CarouselContext.js +2 -2
- package/lib/cjs/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +4 -4
- package/lib/cjs/Carousel/CarouselItem/CarouselItem.js +16 -13
- package/lib/cjs/Carousel/CarouselStepTracker/CarouselStepTracker.js +17 -17
- package/lib/cjs/Carousel/CarouselTabs/CarouselTabsPanel.js +9 -10
- package/lib/cjs/Carousel/CarouselTabs/CarouselTabsPanelItem.js +20 -13
- package/lib/cjs/Carousel/CarouselThumbnail.js +129 -38
- package/lib/cjs/Carousel/CarouselThumbnailNavigation.js +20 -14
- package/lib/cjs/Carousel/dictionary.js +2 -2
- package/lib/cjs/Checkbox/Checkbox.js +32 -25
- package/lib/cjs/Checkbox/CheckboxButton.js +15 -12
- package/lib/cjs/Checkbox/CheckboxGroup.js +31 -24
- package/lib/cjs/Checkbox/CheckboxInput.js +4 -4
- package/lib/cjs/Checkbox/CheckboxInput.native.js +2 -2
- package/lib/cjs/CheckboxCard/CheckboxCard.js +31 -24
- package/lib/cjs/CheckboxCardGroup/CheckboxCardGroup.js +29 -23
- package/lib/cjs/ColourToggle/ColourBubble.js +9 -10
- package/lib/cjs/ColourToggle/ColourToggle.js +19 -16
- package/lib/cjs/Divider/Divider.js +18 -14
- package/lib/cjs/DownloadApp/DownloadApp.js +25 -17
- package/lib/cjs/DownloadApp/dictionary.js +2 -2
- package/lib/cjs/ExpandCollapse/ExpandCollapse.js +19 -13
- package/lib/cjs/ExpandCollapse/ExpandCollapseAccordion.js +20 -0
- package/lib/cjs/ExpandCollapse/{Control.js → ExpandCollapseControl.js} +15 -11
- package/lib/cjs/ExpandCollapse/{Panel.js → ExpandCollapsePanel.js} +27 -21
- package/lib/cjs/ExpandCollapse/dictionary.js +2 -2
- package/lib/cjs/ExpandCollapseMini/ExpandCollapseMini.js +19 -16
- package/lib/cjs/ExpandCollapseMini/ExpandCollapseMiniControl.js +11 -10
- package/lib/cjs/Feedback/Feedback.js +22 -17
- package/lib/cjs/Fieldset/Fieldset.js +31 -23
- package/lib/cjs/Fieldset/FieldsetContainer.js +9 -8
- package/lib/cjs/Fieldset/FieldsetContainer.native.js +7 -6
- package/lib/cjs/Fieldset/Legend.js +6 -6
- package/lib/cjs/Fieldset/Legend.native.js +4 -4
- package/lib/cjs/Fieldset/cssReset.js +2 -2
- package/lib/cjs/FileUpload/FileUpload.js +38 -32
- package/lib/cjs/FileUpload/NotificationContent.js +7 -7
- package/lib/cjs/FileUpload/dictionary.js +2 -2
- package/lib/cjs/FlexGrid/FlexGrid.js +30 -28
- package/lib/cjs/FlexGrid/{Col/Col.js → FlexGridCol/FlexGridCol.js} +25 -24
- package/lib/cjs/FlexGrid/{Row/Row.js → FlexGridRow/FlexGridRow.js} +16 -16
- package/lib/cjs/FlexGrid/helpers/index.js +2 -2
- package/lib/cjs/FlexGrid/providers/GutterContext.js +2 -3
- package/lib/cjs/Footnote/Footnote.js +26 -21
- package/lib/cjs/Footnote/FootnoteLink.js +18 -13
- package/lib/cjs/Footnote/dictionary.js +2 -2
- package/lib/cjs/HorizontalScroll/HorizontalScroll.js +24 -14
- package/lib/cjs/HorizontalScroll/HorizontalScrollButton.js +19 -16
- package/lib/cjs/HorizontalScroll/ScrollViewEnd.js +3 -4
- package/lib/cjs/HorizontalScroll/ScrollViewEnd.native.js +4 -4
- package/lib/cjs/HorizontalScroll/dictionary.js +2 -2
- package/lib/cjs/Icon/Icon.js +9 -9
- package/lib/cjs/Icon/IconText.js +10 -11
- package/lib/cjs/IconButton/IconButton.js +34 -21
- package/lib/cjs/InputLabel/InputLabel.js +24 -19
- package/lib/cjs/InputLabel/LabelContent.js +3 -4
- package/lib/cjs/InputLabel/LabelContent.native.js +3 -4
- package/lib/cjs/InputSupports/InputSupports.js +21 -21
- package/lib/cjs/InputSupports/dictionary.js +2 -2
- package/lib/cjs/InputSupports/useInputSupports.js +10 -11
- package/lib/cjs/Link/ChevronLink.js +16 -16
- package/lib/cjs/Link/InlinePressable.js +4 -4
- package/lib/cjs/Link/InlinePressable.native.js +3 -4
- package/lib/cjs/Link/Link.js +50 -9
- package/lib/cjs/Link/LinkBase.js +37 -27
- package/lib/cjs/Link/MobileIconTextContent.js +7 -9
- package/lib/cjs/Link/TextButton.js +11 -11
- package/lib/cjs/List/List.js +12 -9
- package/lib/cjs/List/ListItem.js +12 -11
- package/lib/cjs/List/ListItemBase.js +19 -16
- package/lib/cjs/List/ListItemContent.js +9 -9
- package/lib/cjs/List/ListItemMark.js +8 -9
- package/lib/cjs/List/PressableListItemBase.js +27 -21
- package/lib/cjs/Listbox/GroupControl.js +11 -12
- package/lib/cjs/Listbox/Listbox.js +19 -20
- package/lib/cjs/Listbox/ListboxGroup.js +22 -21
- package/lib/cjs/Listbox/ListboxItem.js +14 -12
- package/lib/cjs/Listbox/ListboxOverlay.js +8 -8
- package/lib/cjs/Listbox/PressableItem.js +8 -7
- package/lib/cjs/Listbox/SecondLevelHeader.js +19 -18
- package/lib/cjs/Listbox/dictionary.js +2 -2
- package/lib/cjs/Modal/Modal.js +30 -24
- package/lib/cjs/Modal/ModalContent.js +18 -19
- package/lib/cjs/Modal/WebModal.js +9 -8
- package/lib/cjs/Modal/dictionary.js +2 -2
- package/lib/cjs/MultiSelectFilter/ModalOverlay.js +25 -29
- package/lib/cjs/MultiSelectFilter/MultiSelectFilter.js +64 -65
- package/lib/cjs/MultiSelectFilter/dictionary.js +2 -2
- package/lib/cjs/Notification/Notification.js +47 -46
- package/lib/cjs/Notification/dictionary.js +2 -2
- package/lib/cjs/OrderedList/OrderedList.js +14 -13
- package/lib/cjs/OrderedList/OrderedListBase.js +2 -5
- package/lib/cjs/OrderedList/{Item.js → OrderedListItem.js} +27 -21
- package/lib/cjs/OrderedList/{ItemBase.js → OrderedListItemBase.js} +4 -5
- package/lib/cjs/Pagination/Pagination.js +37 -30
- package/lib/cjs/Pagination/{PageButton.js → PaginationPageButton.js} +30 -21
- package/lib/cjs/Pagination/SideButton.js +26 -22
- package/lib/cjs/Pagination/dictionary.js +2 -2
- package/lib/cjs/Pagination/usePagination.js +2 -3
- package/lib/cjs/Portal/Portal.js +3 -3
- package/lib/cjs/Portal/Portal.native.js +7 -3
- package/lib/cjs/PriceLockup/PriceLockup.js +20 -18
- package/lib/cjs/PriceLockup/utils/renderFootnoteContent.js +7 -7
- package/lib/cjs/PriceLockup/utils/renderFootnoteLinks.js +4 -4
- package/lib/cjs/PriceLockup/utils/renderPrice.js +12 -12
- package/lib/cjs/PriceLockup/utils/renderTypography.js +4 -4
- package/lib/cjs/ProductCard/ProductCard.js +42 -37
- package/lib/cjs/ProductCard/dictionary.js +2 -2
- package/lib/cjs/ProductCardGroup/ProductCardGroup.js +12 -10
- package/lib/cjs/Progress/Progress.js +16 -12
- package/lib/cjs/Progress/ProgressBar.js +21 -17
- package/lib/cjs/Progress/ProgressBarBackground.js +6 -8
- package/lib/cjs/Progress/ProgressContext.js +3 -4
- package/lib/cjs/QuickLinks/QuickLinks.js +20 -19
- package/lib/cjs/QuickLinks/QuickLinksCard.js +14 -13
- package/lib/cjs/QuickLinks/QuickLinksItem.js +26 -21
- package/lib/cjs/QuickLinksFeature/QuickLinksFeature.js +19 -16
- package/lib/cjs/QuickLinksFeature/QuickLinksFeatureItem.js +27 -18
- package/lib/cjs/Radio/Radio.js +27 -21
- package/lib/cjs/Radio/RadioButton.js +20 -16
- package/lib/cjs/Radio/RadioGroup.js +31 -24
- package/lib/cjs/Radio/RadioInput.js +4 -4
- package/lib/cjs/Radio/RadioInput.native.js +2 -2
- package/lib/cjs/RadioCard/RadioCard.js +31 -24
- package/lib/cjs/RadioCard/RadioCardGroup.js +29 -23
- package/lib/cjs/Responsive/Responsive.js +11 -10
- package/lib/cjs/Responsive/ResponsiveProp.js +5 -5
- package/lib/cjs/Responsive/ResponsiveWithMediaQueryStyleSheet.js +8 -8
- package/lib/cjs/Search/Search.js +37 -29
- package/lib/cjs/Search/dictionary.js +2 -2
- package/lib/cjs/Select/Picker.js +8 -7
- package/lib/cjs/Select/Picker.native.js +8 -8
- package/lib/cjs/Select/Select.js +28 -19
- package/lib/cjs/Select/{Group.js → SelectGroup.js} +6 -7
- package/lib/cjs/Select/{Group.native.js → SelectGroup.native.js} +6 -6
- package/lib/cjs/Select/{Item.js → SelectItem.js} +4 -5
- package/lib/cjs/Select/SelectItem.native.js +8 -0
- package/lib/cjs/Shortcuts/Shortcuts.js +25 -20
- package/lib/cjs/Shortcuts/ShortcutsItem.js +33 -23
- package/lib/cjs/SideNav/SideNav.js +28 -26
- package/lib/cjs/SideNav/{Item.js → SideNavItem.js} +26 -20
- package/lib/cjs/SideNav/{ItemContent.js → SideNavItemContent.js} +10 -11
- package/lib/cjs/SideNav/{ItemsGroup.js → SideNavItemsGroup.js} +29 -28
- package/lib/cjs/Skeleton/Skeleton.js +28 -26
- package/lib/cjs/Skeleton/skeletonWebAnimation.js +2 -2
- package/lib/cjs/Skeleton/useSkeletonNativeAnimation.js +2 -2
- package/lib/cjs/SkipLink/SkipLink.js +24 -14
- package/lib/cjs/Spacer/Spacer.js +18 -14
- package/lib/cjs/StackView/StackView.js +31 -22
- package/lib/cjs/StackView/StackWrap.js +8 -9
- package/lib/cjs/StackView/StackWrap.native.js +7 -5
- package/lib/cjs/StackView/StackWrapBox.js +27 -20
- package/lib/cjs/StackView/StackWrapGap.js +20 -16
- package/lib/cjs/StackView/common.js +2 -1
- package/lib/cjs/StackView/getStackedContent.js +11 -11
- package/lib/cjs/Status/Status.js +21 -15
- package/lib/cjs/StepTracker/Step.js +21 -17
- package/lib/cjs/StepTracker/StepTracker.js +26 -21
- package/lib/cjs/StepTracker/dictionary.js +2 -2
- package/lib/cjs/TabBar/TabBar.js +16 -13
- package/lib/cjs/TabBar/TabBarItem.js +16 -15
- package/lib/cjs/Tabs/Tabs.js +40 -30
- package/lib/cjs/Tabs/TabsDropdown.js +38 -28
- package/lib/cjs/Tabs/TabsItem.js +30 -20
- package/lib/cjs/Tabs/dictionary.js +2 -2
- package/lib/cjs/Tags/Tags.js +37 -28
- package/lib/cjs/TextInput/TextArea.js +22 -16
- package/lib/cjs/TextInput/TextInput.js +20 -14
- package/lib/cjs/TextInput/TextInputBase.js +34 -24
- package/lib/cjs/TextInput/dictionary.js +2 -2
- package/lib/cjs/TextInput/propTypes.js +3 -4
- package/lib/cjs/ThemeProvider/ThemeProvider.js +11 -9
- package/lib/cjs/ThemeProvider/useResponsiveThemeTokens.js +8 -9
- package/lib/cjs/ThemeProvider/useResponsiveThemeTokensCallback.js +9 -10
- package/lib/cjs/ThemeProvider/useSetTheme.js +2 -2
- package/lib/cjs/ThemeProvider/useTheme.js +2 -2
- package/lib/cjs/ThemeProvider/useThemeTokens.js +10 -11
- package/lib/cjs/ThemeProvider/utils/styles.js +4 -1
- package/lib/cjs/Timeline/Timeline.js +20 -16
- package/lib/cjs/ToggleSwitch/ToggleSwitch.js +26 -19
- package/lib/cjs/ToggleSwitch/ToggleSwitchGroup.js +32 -25
- package/lib/cjs/Tooltip/Backdrop.js +2 -3
- package/lib/cjs/Tooltip/Backdrop.native.js +3 -3
- package/lib/cjs/Tooltip/Tooltip.js +21 -18
- package/lib/cjs/Tooltip/Tooltip.native.js +25 -22
- package/lib/cjs/Tooltip/dictionary.js +2 -2
- package/lib/cjs/Tooltip/getTooltipPosition.js +2 -3
- package/lib/cjs/Tooltip/shared.js +5 -6
- package/lib/cjs/TooltipButton/TooltipButton.js +17 -13
- package/lib/cjs/Typography/Typography.js +42 -24
- package/lib/cjs/Validator/Validator.js +12 -12
- package/lib/cjs/ViewportProvider/ViewportProvider.js +9 -7
- package/lib/cjs/ViewportProvider/useViewportListener.js +4 -4
- package/lib/cjs/index.js +897 -354
- package/lib/cjs/server.js +5 -6
- package/lib/cjs/utils/BaseView/BaseView.js +6 -6
- package/lib/cjs/utils/BaseView/BaseView.native.js +7 -6
- package/lib/cjs/utils/animation/useVerticalExpandAnimation.js +5 -6
- package/lib/cjs/utils/children.js +2 -2
- package/lib/cjs/utils/containUniqueFields.js +2 -2
- package/lib/cjs/utils/convertFromMegaByteToByte.js +1 -1
- package/lib/cjs/utils/formatImageSource.js +2 -2
- package/lib/cjs/utils/getSpacingScale.js +2 -2
- package/lib/cjs/utils/hasOwnProperty.js +1 -1
- package/lib/cjs/utils/htmlAttrs.js +2 -2
- package/lib/cjs/utils/info/info.js +12 -0
- package/lib/cjs/utils/info/platform/platform.android.js +2 -2
- package/lib/cjs/utils/info/platform/platform.ios.js +2 -2
- package/lib/cjs/utils/info/platform/platform.js +14 -2
- package/lib/cjs/utils/info/platform/platform.native.js +2 -2
- package/lib/cjs/utils/info/versions.js +2 -2
- package/lib/cjs/utils/isTouchDevice.js +2 -2
- package/lib/cjs/utils/pressability.js +2 -2
- package/lib/cjs/utils/props/a11yProps.js +4 -4
- package/lib/cjs/utils/props/clickProps.js +2 -2
- package/lib/cjs/utils/props/componentPropType.js +1 -1
- package/lib/cjs/utils/props/contentfulProps.js +4 -4
- package/lib/cjs/utils/props/copyPropTypes.js +2 -2
- package/lib/cjs/utils/props/getPropSelector.js +3 -3
- package/lib/cjs/utils/props/handlerProps.js +3 -3
- package/lib/cjs/utils/props/hrefAttrsProp.js +2 -2
- package/lib/cjs/utils/props/inputSupportsProps.js +4 -4
- package/lib/cjs/utils/props/linkProps.js +8 -8
- package/lib/cjs/utils/props/paddingProp.js +2 -2
- package/lib/cjs/utils/props/pressProps.js +7 -7
- package/lib/cjs/utils/props/rectProp.js +2 -2
- package/lib/cjs/utils/props/responsiveProps.js +2 -2
- package/lib/cjs/utils/props/selectSystemProps.js +1 -1
- package/lib/cjs/utils/props/spacingProps.js +6 -6
- package/lib/cjs/utils/props/textInputProps.js +4 -4
- package/lib/cjs/utils/props/textProps.js +4 -4
- package/lib/cjs/utils/props/variantProp.js +2 -2
- package/lib/cjs/utils/props/viewProps.js +4 -4
- package/lib/cjs/utils/resolveContentMaxWidth.js +2 -2
- package/lib/cjs/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +2 -2
- package/lib/cjs/utils/ssr-media-query/create-stylesheet/index.android.js +7 -4
- package/lib/cjs/utils/ssr-media-query/create-stylesheet/index.ios.js +7 -4
- package/lib/cjs/utils/ssr-media-query/create-stylesheet/index.js +6 -7
- package/lib/cjs/utils/ssr-media-query/hash.js +1 -1
- package/lib/cjs/utils/ssr-media-query/ssr-media-query.js +24 -0
- package/lib/cjs/utils/ssr-media-query/utils/create-declaration-block.js +4 -4
- package/lib/cjs/utils/ssr-media-query/utils/create-media-query-styles.js +2 -3
- package/lib/cjs/utils/ssr-media-query/utils/hyphenate-style-name.js +2 -2
- package/lib/cjs/utils/ssr-media-query/utils/use-all-viewport-tokens.js +11 -11
- package/lib/cjs/utils/ssr.js +3 -3
- package/lib/cjs/utils/transformGradient.js +2 -5
- package/lib/cjs/utils/useCopy.js +3 -3
- package/lib/cjs/utils/useDetectOutsideClick.js +2 -3
- package/lib/cjs/utils/useHash.js +2 -2
- package/lib/cjs/utils/useHash.native.js +2 -2
- package/lib/cjs/utils/useMediaQuerySpacing.js +8 -8
- package/lib/cjs/utils/useOverlaidPosition.js +2 -2
- package/lib/cjs/utils/useResponsiveProp.js +7 -8
- package/lib/cjs/utils/useSafeLayoutEffect.js +3 -4
- package/lib/cjs/utils/useScrollBlocking.js +2 -2
- package/lib/cjs/utils/useScrollBlocking.native.js +3 -3
- package/lib/cjs/utils/useSpacingScale.js +6 -6
- package/lib/cjs/utils/useUniqueId.js +2 -3
- package/lib/cjs/utils/useVariants.js +6 -5
- package/lib/cjs/utils/withLinkRouter.js +7 -6
- package/lib/esm/A11yInfoProvider/{index.js → A11yInfoProvider.js} +1 -2
- package/lib/esm/A11yText/{index.js → A11yText.js} +5 -4
- package/lib/esm/ActionCard/ActionCard.js +25 -10
- package/lib/esm/ActivityIndicator/{index.js → ActivityIndicator.js} +9 -9
- package/lib/esm/ActivityIndicator/Dots.js +3 -4
- package/lib/esm/ActivityIndicator/Dots.native.js +3 -4
- package/lib/esm/ActivityIndicator/FullScreenIndicator.js +5 -6
- package/lib/esm/ActivityIndicator/InlineIndicator.js +5 -6
- package/lib/esm/ActivityIndicator/OverlayIndicator.js +5 -6
- package/lib/esm/ActivityIndicator/RenderActivityIndicator.js +4 -5
- package/lib/esm/ActivityIndicator/Spinner.js +3 -4
- package/lib/esm/ActivityIndicator/Spinner.native.js +3 -4
- package/lib/esm/Autocomplete/Autocomplete.js +20 -13
- package/lib/esm/Autocomplete/Loading.js +6 -7
- package/lib/esm/Autocomplete/Suggestions.js +6 -7
- package/lib/esm/Autocomplete/dictionary.js +1 -1
- package/lib/esm/Badge/Badge.js +8 -5
- package/lib/esm/BaseProvider/{index.js → BaseProvider.js} +5 -6
- package/lib/esm/BaseProvider/HydrationContext.js +1 -2
- package/lib/esm/Box/Box.js +20 -6
- package/lib/esm/Box/backgroundImageStylesMap.js +1 -1
- package/lib/esm/Button/Button.js +9 -8
- package/lib/esm/Button/ButtonBase.js +20 -8
- package/lib/esm/Button/ButtonDropdown.js +12 -9
- package/lib/esm/Button/ButtonGroup.js +20 -10
- package/lib/esm/Button/ButtonLink.js +10 -8
- package/lib/esm/Button/propTypes.js +8 -8
- package/lib/esm/Card/Card.js +32 -15
- package/lib/esm/Card/CardBase.js +14 -10
- package/lib/esm/Card/PressableCardBase.js +23 -10
- package/lib/esm/Card/backgroundImageStylesMap.js +1 -1
- package/lib/esm/CardGroup/CardGroup.js +19 -10
- package/lib/esm/CardGroup/dictionary.js +1 -1
- package/lib/esm/Carousel/Carousel.js +40 -27
- package/lib/esm/Carousel/CarouselContext.js +4 -5
- package/lib/esm/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +2 -3
- package/lib/esm/Carousel/CarouselItem/CarouselItem.js +10 -7
- package/lib/esm/Carousel/CarouselStepTracker/CarouselStepTracker.js +9 -9
- package/lib/esm/Carousel/CarouselTabs/CarouselTabsPanel.js +5 -6
- package/lib/esm/Carousel/CarouselTabs/CarouselTabsPanelItem.js +12 -5
- package/lib/esm/Carousel/CarouselThumbnail.js +127 -36
- package/lib/esm/Carousel/CarouselThumbnailNavigation.js +14 -8
- package/lib/esm/Carousel/dictionary.js +1 -1
- package/lib/esm/Checkbox/Checkbox.js +17 -10
- package/lib/esm/Checkbox/CheckboxButton.js +8 -5
- package/lib/esm/Checkbox/CheckboxGroup.js +18 -11
- package/lib/esm/Checkbox/CheckboxInput.js +2 -3
- package/lib/esm/Checkbox/CheckboxInput.native.js +1 -2
- package/lib/esm/CheckboxCard/CheckboxCard.js +15 -7
- package/lib/esm/CheckboxCardGroup/CheckboxCardGroup.js +16 -9
- package/lib/esm/ColourToggle/ColourBubble.js +5 -6
- package/lib/esm/ColourToggle/ColourToggle.js +11 -8
- package/lib/esm/Divider/Divider.js +10 -6
- package/lib/esm/DownloadApp/DownloadApp.js +14 -6
- package/lib/esm/DownloadApp/dictionary.js +1 -1
- package/lib/esm/ExpandCollapse/ExpandCollapse.js +12 -6
- package/lib/esm/ExpandCollapse/ExpandCollapseAccordion.js +14 -0
- package/lib/esm/ExpandCollapse/{Control.js → ExpandCollapseControl.js} +9 -5
- package/lib/esm/ExpandCollapse/{Panel.js → ExpandCollapsePanel.js} +15 -9
- package/lib/esm/ExpandCollapse/dictionary.js +1 -1
- package/lib/esm/ExpandCollapseMini/ExpandCollapseMini.js +11 -8
- package/lib/esm/ExpandCollapseMini/ExpandCollapseMiniControl.js +7 -6
- package/lib/esm/Feedback/Feedback.js +10 -5
- package/lib/esm/Fieldset/Fieldset.js +21 -14
- package/lib/esm/Fieldset/FieldsetContainer.js +6 -5
- package/lib/esm/Fieldset/FieldsetContainer.native.js +5 -4
- package/lib/esm/Fieldset/Legend.js +3 -4
- package/lib/esm/Fieldset/Legend.native.js +2 -3
- package/lib/esm/Fieldset/cssReset.js +1 -1
- package/lib/esm/FileUpload/FileUpload.js +18 -12
- package/lib/esm/FileUpload/NotificationContent.js +3 -4
- package/lib/esm/FileUpload/dictionary.js +1 -1
- package/lib/esm/FlexGrid/FlexGrid.js +16 -14
- package/lib/esm/FlexGrid/{Col/Col.js → FlexGridCol/FlexGridCol.js} +13 -12
- package/lib/esm/FlexGrid/{Row/Row.js → FlexGridRow/FlexGridRow.js} +9 -9
- package/lib/esm/FlexGrid/helpers/index.js +2 -3
- package/lib/esm/FlexGrid/providers/GutterContext.js +1 -2
- package/lib/esm/Footnote/Footnote.js +15 -10
- package/lib/esm/Footnote/FootnoteLink.js +10 -5
- package/lib/esm/Footnote/dictionary.js +1 -1
- package/lib/esm/HorizontalScroll/HorizontalScroll.js +17 -7
- package/lib/esm/HorizontalScroll/HorizontalScrollButton.js +10 -7
- package/lib/esm/HorizontalScroll/ScrollViewEnd.js +2 -3
- package/lib/esm/HorizontalScroll/ScrollViewEnd.native.js +2 -3
- package/lib/esm/HorizontalScroll/dictionary.js +1 -1
- package/lib/esm/Icon/Icon.js +5 -5
- package/lib/esm/Icon/IconText.js +5 -6
- package/lib/esm/IconButton/IconButton.js +20 -7
- package/lib/esm/InputLabel/InputLabel.js +12 -7
- package/lib/esm/InputLabel/LabelContent.js +2 -3
- package/lib/esm/InputLabel/LabelContent.native.js +2 -3
- package/lib/esm/InputSupports/InputSupports.js +11 -11
- package/lib/esm/InputSupports/dictionary.js +1 -1
- package/lib/esm/InputSupports/useInputSupports.js +5 -6
- package/lib/esm/Link/ChevronLink.js +7 -8
- package/lib/esm/Link/InlinePressable.js +2 -3
- package/lib/esm/Link/InlinePressable.native.js +2 -3
- package/lib/esm/Link/Link.js +48 -6
- package/lib/esm/Link/LinkBase.js +22 -12
- package/lib/esm/Link/MobileIconTextContent.js +4 -5
- package/lib/esm/Link/TextButton.js +5 -6
- package/lib/esm/List/List.js +8 -5
- package/lib/esm/List/ListItem.js +6 -6
- package/lib/esm/List/ListItemBase.js +11 -8
- package/lib/esm/List/ListItemContent.js +5 -5
- package/lib/esm/List/ListItemMark.js +4 -5
- package/lib/esm/List/PressableListItemBase.js +17 -11
- package/lib/esm/Listbox/GroupControl.js +6 -7
- package/lib/esm/Listbox/Listbox.js +10 -11
- package/lib/esm/Listbox/ListboxGroup.js +12 -11
- package/lib/esm/Listbox/ListboxItem.js +9 -7
- package/lib/esm/Listbox/ListboxOverlay.js +4 -4
- package/lib/esm/Listbox/PressableItem.js +5 -4
- package/lib/esm/Listbox/SecondLevelHeader.js +10 -9
- package/lib/esm/Listbox/dictionary.js +1 -1
- package/lib/esm/Modal/Modal.js +16 -10
- package/lib/esm/Modal/ModalContent.js +9 -10
- package/lib/esm/Modal/WebModal.js +6 -5
- package/lib/esm/Modal/dictionary.js +1 -1
- package/lib/esm/MultiSelectFilter/ModalOverlay.js +15 -19
- package/lib/esm/MultiSelectFilter/MultiSelectFilter.js +33 -34
- package/lib/esm/MultiSelectFilter/dictionary.js +1 -1
- package/lib/esm/Notification/Notification.js +22 -21
- package/lib/esm/Notification/dictionary.js +1 -1
- package/lib/esm/OrderedList/OrderedList.js +9 -8
- package/lib/esm/OrderedList/OrderedListBase.js +1 -4
- package/lib/esm/OrderedList/{Item.js → OrderedListItem.js} +16 -10
- package/lib/esm/OrderedList/{ItemBase.js → OrderedListItemBase.js} +3 -4
- package/lib/esm/Pagination/Pagination.js +20 -13
- package/lib/esm/Pagination/{PageButton.js → PaginationPageButton.js} +18 -9
- package/lib/esm/Pagination/SideButton.js +15 -11
- package/lib/esm/Pagination/dictionary.js +1 -1
- package/lib/esm/Pagination/usePagination.js +2 -3
- package/lib/esm/Portal/Portal.js +2 -3
- package/lib/esm/Portal/Portal.native.js +1 -2
- package/lib/esm/PriceLockup/PriceLockup.js +11 -9
- package/lib/esm/PriceLockup/utils/renderFootnoteContent.js +3 -4
- package/lib/esm/PriceLockup/utils/renderFootnoteLinks.js +3 -4
- package/lib/esm/PriceLockup/utils/renderPrice.js +4 -5
- package/lib/esm/PriceLockup/utils/renderTypography.js +3 -4
- package/lib/esm/ProductCard/ProductCard.js +18 -13
- package/lib/esm/ProductCard/dictionary.js +1 -1
- package/lib/esm/ProductCardGroup/ProductCardGroup.js +8 -6
- package/lib/esm/Progress/Progress.js +9 -5
- package/lib/esm/Progress/ProgressBar.js +13 -9
- package/lib/esm/Progress/ProgressBarBackground.js +4 -6
- package/lib/esm/Progress/ProgressContext.js +2 -3
- package/lib/esm/QuickLinks/QuickLinks.js +9 -9
- package/lib/esm/QuickLinks/QuickLinksCard.js +8 -8
- package/lib/esm/QuickLinks/QuickLinksItem.js +15 -10
- package/lib/esm/QuickLinksFeature/QuickLinksFeature.js +12 -9
- package/lib/esm/QuickLinksFeature/QuickLinksFeatureItem.js +18 -9
- package/lib/esm/Radio/Radio.js +15 -8
- package/lib/esm/Radio/RadioButton.js +10 -6
- package/lib/esm/Radio/RadioGroup.js +18 -11
- package/lib/esm/Radio/RadioInput.js +2 -3
- package/lib/esm/Radio/RadioInput.native.js +1 -2
- package/lib/esm/RadioCard/RadioCard.js +16 -8
- package/lib/esm/RadioCard/RadioCardGroup.js +16 -9
- package/lib/esm/Responsive/Responsive.js +5 -6
- package/lib/esm/Responsive/ResponsiveProp.js +3 -4
- package/lib/esm/Responsive/ResponsiveWithMediaQueryStyleSheet.js +4 -4
- package/lib/esm/Search/Search.js +18 -10
- package/lib/esm/Search/dictionary.js +1 -1
- package/lib/esm/Select/Picker.js +5 -4
- package/lib/esm/Select/Picker.native.js +5 -5
- package/lib/esm/Select/Select.js +16 -7
- package/lib/esm/Select/{Group.js → SelectGroup.js} +4 -5
- package/lib/esm/Select/{Group.native.js → SelectGroup.native.js} +3 -4
- package/lib/esm/Select/{Item.js → SelectItem.js} +3 -4
- package/lib/esm/Select/SelectItem.native.js +1 -0
- package/lib/esm/Shortcuts/Shortcuts.js +13 -7
- package/lib/esm/Shortcuts/ShortcutsItem.js +17 -7
- package/lib/esm/SideNav/SideNav.js +19 -17
- package/lib/esm/SideNav/{Item.js → SideNavItem.js} +18 -12
- package/lib/esm/SideNav/{ItemContent.js → SideNavItemContent.js} +6 -7
- package/lib/esm/SideNav/{ItemsGroup.js → SideNavItemsGroup.js} +20 -19
- package/lib/esm/Skeleton/Skeleton.js +16 -14
- package/lib/esm/Skeleton/skeletonWebAnimation.js +2 -3
- package/lib/esm/Skeleton/useSkeletonNativeAnimation.js +2 -3
- package/lib/esm/SkipLink/SkipLink.js +16 -6
- package/lib/esm/Spacer/Spacer.js +10 -6
- package/lib/esm/StackView/StackView.js +16 -7
- package/lib/esm/StackView/StackWrap.js +5 -6
- package/lib/esm/StackView/StackWrap.native.js +1 -3
- package/lib/esm/StackView/StackWrapBox.js +14 -7
- package/lib/esm/StackView/StackWrapGap.js +12 -8
- package/lib/esm/StackView/common.js +2 -1
- package/lib/esm/StackView/getStackedContent.js +5 -6
- package/lib/esm/Status/Status.js +12 -6
- package/lib/esm/StepTracker/Step.js +10 -6
- package/lib/esm/StepTracker/StepTracker.js +14 -9
- package/lib/esm/StepTracker/dictionary.js +1 -1
- package/lib/esm/TabBar/TabBar.js +9 -6
- package/lib/esm/TabBar/TabBarItem.js +8 -7
- package/lib/esm/Tabs/Tabs.js +22 -11
- package/lib/esm/Tabs/TabsDropdown.js +20 -10
- package/lib/esm/Tabs/TabsItem.js +18 -8
- package/lib/esm/Tabs/dictionary.js +1 -1
- package/lib/esm/Tags/Tags.js +20 -11
- package/lib/esm/TextInput/TextArea.js +14 -8
- package/lib/esm/TextInput/TextInput.js +13 -7
- package/lib/esm/TextInput/TextInputBase.js +18 -8
- package/lib/esm/TextInput/dictionary.js +1 -1
- package/lib/esm/TextInput/propTypes.js +2 -3
- package/lib/esm/ThemeProvider/ThemeProvider.js +8 -6
- package/lib/esm/ThemeProvider/useResponsiveThemeTokens.js +4 -5
- package/lib/esm/ThemeProvider/useResponsiveThemeTokensCallback.js +4 -5
- package/lib/esm/ThemeProvider/useSetTheme.js +2 -3
- package/lib/esm/ThemeProvider/useTheme.js +2 -3
- package/lib/esm/ThemeProvider/useThemeTokens.js +2 -2
- package/lib/esm/ThemeProvider/utils/styles.js +4 -1
- package/lib/esm/Timeline/Timeline.js +10 -6
- package/lib/esm/ToggleSwitch/ToggleSwitch.js +15 -8
- package/lib/esm/ToggleSwitch/ToggleSwitchGroup.js +18 -11
- package/lib/esm/Tooltip/Backdrop.js +2 -3
- package/lib/esm/Tooltip/Backdrop.native.js +1 -2
- package/lib/esm/Tooltip/Tooltip.js +11 -8
- package/lib/esm/Tooltip/Tooltip.native.js +13 -10
- package/lib/esm/Tooltip/dictionary.js +1 -1
- package/lib/esm/Tooltip/getTooltipPosition.js +2 -3
- package/lib/esm/Tooltip/shared.js +3 -4
- package/lib/esm/TooltipButton/TooltipButton.js +10 -6
- package/lib/esm/Typography/Typography.js +27 -9
- package/lib/esm/Validator/Validator.js +7 -7
- package/lib/esm/ViewportProvider/ViewportProvider.js +6 -5
- package/lib/esm/ViewportProvider/useViewportListener.js +3 -4
- package/lib/esm/index.js +166 -73
- package/lib/esm/server.js +2 -2
- package/lib/esm/utils/BaseView/BaseView.js +3 -4
- package/lib/esm/utils/BaseView/BaseView.native.js +1 -2
- package/lib/esm/utils/animation/useVerticalExpandAnimation.js +4 -5
- package/lib/esm/utils/children.js +1 -1
- package/lib/esm/utils/containUniqueFields.js +2 -3
- package/lib/esm/utils/convertFromMegaByteToByte.js +1 -1
- package/lib/esm/utils/formatImageSource.js +2 -3
- package/lib/esm/utils/getSpacingScale.js +2 -3
- package/lib/esm/utils/hasOwnProperty.js +1 -1
- package/lib/esm/utils/htmlAttrs.js +1 -1
- package/lib/esm/utils/info/info.js +6 -0
- package/lib/esm/utils/info/platform/platform.android.js +1 -1
- package/lib/esm/utils/info/platform/platform.ios.js +1 -1
- package/lib/esm/utils/info/platform/platform.js +10 -1
- package/lib/esm/utils/info/platform/platform.native.js +1 -1
- package/lib/esm/utils/info/versions.js +1 -1
- package/lib/esm/utils/isTouchDevice.js +2 -3
- package/lib/esm/utils/pressability.js +1 -1
- package/lib/esm/utils/props/a11yProps.js +2 -2
- package/lib/esm/utils/props/clickProps.js +1 -1
- package/lib/esm/utils/props/componentPropType.js +1 -1
- package/lib/esm/utils/props/contentfulProps.js +2 -2
- package/lib/esm/utils/props/copyPropTypes.js +1 -1
- package/lib/esm/utils/props/getPropSelector.js +2 -2
- package/lib/esm/utils/props/handlerProps.js +1 -1
- package/lib/esm/utils/props/hrefAttrsProp.js +1 -1
- package/lib/esm/utils/props/inputSupportsProps.js +2 -2
- package/lib/esm/utils/props/linkProps.js +4 -4
- package/lib/esm/utils/props/paddingProp.js +1 -1
- package/lib/esm/utils/props/pressProps.js +3 -3
- package/lib/esm/utils/props/rectProp.js +1 -1
- package/lib/esm/utils/props/responsiveProps.js +1 -1
- package/lib/esm/utils/props/selectSystemProps.js +1 -1
- package/lib/esm/utils/props/spacingProps.js +3 -3
- package/lib/esm/utils/props/textInputProps.js +2 -2
- package/lib/esm/utils/props/textProps.js +2 -2
- package/lib/esm/utils/props/variantProp.js +1 -1
- package/lib/esm/utils/props/viewProps.js +2 -2
- package/lib/esm/utils/resolveContentMaxWidth.js +2 -3
- package/lib/esm/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +2 -3
- package/lib/esm/utils/ssr-media-query/create-stylesheet/index.android.js +1 -2
- package/lib/esm/utils/ssr-media-query/create-stylesheet/index.ios.js +1 -2
- package/lib/esm/utils/ssr-media-query/create-stylesheet/index.js +4 -5
- package/lib/esm/utils/ssr-media-query/hash.js +1 -1
- package/lib/esm/utils/ssr-media-query/ssr-media-query.js +7 -0
- package/lib/esm/utils/ssr-media-query/utils/create-declaration-block.js +3 -4
- package/lib/esm/utils/ssr-media-query/utils/create-media-query-styles.js +2 -3
- package/lib/esm/utils/ssr-media-query/utils/hyphenate-style-name.js +2 -3
- package/lib/esm/utils/ssr-media-query/utils/use-all-viewport-tokens.js +4 -5
- package/lib/esm/utils/ssr.js +0 -1
- package/lib/esm/utils/transformGradient.js +1 -4
- package/lib/esm/utils/useCopy.js +2 -3
- package/lib/esm/utils/useDetectOutsideClick.js +2 -3
- package/lib/esm/utils/useHash.js +2 -3
- package/lib/esm/utils/useHash.native.js +1 -2
- package/lib/esm/utils/useMediaQuerySpacing.js +3 -4
- package/lib/esm/utils/useOverlaidPosition.js +2 -3
- package/lib/esm/utils/useResponsiveProp.js +4 -5
- package/lib/esm/utils/useSafeLayoutEffect.js +2 -3
- package/lib/esm/utils/useScrollBlocking.js +2 -3
- package/lib/esm/utils/useScrollBlocking.native.js +1 -1
- package/lib/esm/utils/useSpacingScale.js +4 -5
- package/lib/esm/utils/useUniqueId.js +2 -3
- package/lib/esm/utils/useVariants.js +4 -4
- package/lib/esm/utils/withLinkRouter.js +3 -4
- package/lib/package.json +16 -19
- package/package.json +16 -19
- package/src/A11yInfoProvider/{index.jsx → A11yInfoProvider.jsx} +1 -3
- package/src/A11yText/{index.jsx → A11yText.jsx} +4 -4
- package/src/ActionCard/ActionCard.jsx +27 -21
- package/src/ActivityIndicator/{index.jsx → ActivityIndicator.jsx} +8 -9
- package/src/ActivityIndicator/Dots.jsx +2 -4
- package/src/ActivityIndicator/Dots.native.jsx +2 -4
- package/src/ActivityIndicator/FullScreenIndicator.jsx +4 -6
- package/src/ActivityIndicator/InlineIndicator.jsx +4 -6
- package/src/ActivityIndicator/OverlayIndicator.jsx +4 -6
- package/src/ActivityIndicator/RenderActivityIndicator.jsx +3 -5
- package/src/ActivityIndicator/Spinner.jsx +2 -4
- package/src/ActivityIndicator/Spinner.native.jsx +2 -4
- package/src/Autocomplete/Autocomplete.jsx +20 -24
- package/src/Autocomplete/Loading.jsx +5 -7
- package/src/Autocomplete/Suggestions.jsx +5 -7
- package/src/Autocomplete/dictionary.js +1 -1
- package/src/Badge/Badge.jsx +8 -6
- package/src/BaseProvider/{index.jsx → BaseProvider.jsx} +4 -6
- package/src/BaseProvider/HydrationContext.jsx +0 -2
- package/src/Box/Box.jsx +20 -28
- package/src/Box/backgroundImageStylesMap.js +1 -1
- package/src/Button/Button.jsx +9 -13
- package/src/Button/ButtonBase.jsx +21 -20
- package/src/Button/ButtonDropdown.jsx +11 -16
- package/src/Button/ButtonGroup.jsx +17 -21
- package/src/Button/ButtonLink.jsx +9 -8
- package/src/Button/propTypes.js +6 -9
- package/src/Card/Card.jsx +30 -26
- package/src/Card/CardBase.jsx +13 -10
- package/src/Card/PressableCardBase.jsx +27 -23
- package/src/Card/backgroundImageStylesMap.js +1 -1
- package/src/CardGroup/CardGroup.jsx +18 -22
- package/src/CardGroup/dictionary.js +1 -1
- package/src/Carousel/Carousel.jsx +39 -41
- package/src/Carousel/CarouselContext.jsx +3 -5
- package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +1 -3
- package/src/Carousel/CarouselItem/CarouselItem.jsx +10 -15
- package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +8 -9
- package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +4 -6
- package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +11 -14
- package/src/Carousel/CarouselThumbnail.jsx +155 -68
- package/src/Carousel/CarouselThumbnailNavigation.jsx +13 -9
- package/src/Carousel/dictionary.js +1 -1
- package/src/Checkbox/Checkbox.jsx +17 -24
- package/src/Checkbox/CheckboxButton.jsx +8 -12
- package/src/Checkbox/CheckboxGroup.jsx +15 -20
- package/src/Checkbox/CheckboxInput.jsx +1 -3
- package/src/Checkbox/CheckboxInput.native.jsx +1 -3
- package/src/CheckboxCard/CheckboxCard.jsx +15 -18
- package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +15 -18
- package/src/ColourToggle/ColourBubble.jsx +4 -6
- package/src/ColourToggle/ColourToggle.jsx +10 -8
- package/src/Divider/Divider.jsx +47 -49
- package/src/DownloadApp/DownloadApp.jsx +13 -17
- package/src/DownloadApp/dictionary.js +1 -1
- package/src/ExpandCollapse/ExpandCollapse.jsx +12 -16
- package/src/ExpandCollapse/ExpandCollapseAccordion.jsx +11 -0
- package/src/ExpandCollapse/{Control.jsx → ExpandCollapseControl.jsx} +8 -5
- package/src/ExpandCollapse/{Panel.jsx → ExpandCollapsePanel.jsx} +12 -17
- package/src/ExpandCollapse/dictionary.js +1 -1
- package/src/ExpandCollapseMini/ExpandCollapseMini.jsx +11 -9
- package/src/ExpandCollapseMini/ExpandCollapseMiniControl.jsx +6 -6
- package/src/Feedback/Feedback.jsx +10 -13
- package/src/Fieldset/Fieldset.jsx +23 -13
- package/src/Fieldset/FieldsetContainer.jsx +5 -5
- package/src/Fieldset/FieldsetContainer.native.jsx +4 -4
- package/src/Fieldset/Legend.jsx +2 -4
- package/src/Fieldset/Legend.native.jsx +1 -3
- package/src/Fieldset/cssReset.js +1 -1
- package/src/FileUpload/FileUpload.jsx +19 -23
- package/src/FileUpload/NotificationContent.jsx +2 -4
- package/src/FileUpload/dictionary.js +1 -1
- package/src/FlexGrid/FlexGrid.jsx +15 -25
- package/src/FlexGrid/{Col/Col.jsx → FlexGridCol/FlexGridCol.jsx} +12 -12
- package/src/FlexGrid/{Row/Row.jsx → FlexGridRow/FlexGridRow.jsx} +8 -9
- package/src/FlexGrid/helpers/index.js +1 -3
- package/src/FlexGrid/providers/GutterContext.jsx +1 -3
- package/src/Footnote/Footnote.jsx +16 -12
- package/src/Footnote/FootnoteLink.jsx +10 -13
- package/src/Footnote/dictionary.js +1 -1
- package/src/HorizontalScroll/HorizontalScroll.jsx +21 -13
- package/src/HorizontalScroll/HorizontalScrollButton.jsx +9 -7
- package/src/HorizontalScroll/ScrollViewEnd.jsx +1 -3
- package/src/HorizontalScroll/ScrollViewEnd.native.jsx +1 -3
- package/src/HorizontalScroll/dictionary.js +1 -1
- package/src/Icon/Icon.jsx +4 -5
- package/src/Icon/IconText.jsx +4 -6
- package/src/IconButton/IconButton.jsx +20 -19
- package/src/InputLabel/InputLabel.jsx +12 -15
- package/src/InputLabel/LabelContent.jsx +1 -3
- package/src/InputLabel/LabelContent.native.jsx +1 -3
- package/src/InputSupports/InputSupports.jsx +10 -11
- package/src/InputSupports/dictionary.js +1 -1
- package/src/InputSupports/useInputSupports.js +4 -6
- package/src/Link/ChevronLink.jsx +6 -8
- package/src/Link/InlinePressable.jsx +1 -3
- package/src/Link/InlinePressable.native.jsx +1 -3
- package/src/Link/Link.jsx +51 -6
- package/src/Link/LinkBase.jsx +22 -23
- package/src/Link/MobileIconTextContent.jsx +3 -5
- package/src/Link/TextButton.jsx +4 -6
- package/src/List/List.jsx +7 -5
- package/src/List/ListItem.jsx +5 -6
- package/src/List/ListItemBase.jsx +10 -8
- package/src/List/ListItemContent.jsx +4 -5
- package/src/List/ListItemMark.jsx +3 -5
- package/src/List/PressableListItemBase.jsx +15 -18
- package/src/Listbox/GroupControl.jsx +5 -7
- package/src/Listbox/Listbox.jsx +9 -12
- package/src/Listbox/ListboxGroup.jsx +12 -12
- package/src/Listbox/ListboxItem.jsx +9 -7
- package/src/Listbox/ListboxOverlay.jsx +4 -4
- package/src/Listbox/PressableItem.jsx +4 -4
- package/src/Listbox/SecondLevelHeader.jsx +9 -9
- package/src/Listbox/dictionary.js +1 -1
- package/src/Modal/Modal.jsx +16 -19
- package/src/Modal/ModalContent.jsx +8 -10
- package/src/Modal/WebModal.jsx +5 -5
- package/src/Modal/dictionary.js +1 -1
- package/src/MultiSelectFilter/ModalOverlay.jsx +14 -19
- package/src/MultiSelectFilter/MultiSelectFilter.jsx +37 -48
- package/src/MultiSelectFilter/dictionary.js +1 -1
- package/src/Notification/Notification.jsx +22 -46
- package/src/Notification/dictionary.js +1 -1
- package/src/OrderedList/OrderedList.jsx +8 -9
- package/src/OrderedList/OrderedListBase.jsx +1 -7
- package/src/OrderedList/{Item.jsx → OrderedListItem.jsx} +17 -19
- package/src/OrderedList/{ItemBase.jsx → OrderedListItemBase.jsx} +3 -5
- package/src/Pagination/Pagination.jsx +20 -25
- package/src/Pagination/{PageButton.jsx → PaginationPageButton.jsx} +17 -18
- package/src/Pagination/SideButton.jsx +15 -11
- package/src/Pagination/dictionary.js +1 -1
- package/src/Pagination/usePagination.js +1 -3
- package/src/Portal/Portal.jsx +1 -3
- package/src/Portal/Portal.native.jsx +1 -3
- package/src/PriceLockup/PriceLockup.jsx +11 -10
- package/src/PriceLockup/utils/renderFootnoteContent.jsx +3 -5
- package/src/PriceLockup/utils/renderFootnoteLinks.jsx +2 -4
- package/src/PriceLockup/utils/renderPrice.jsx +4 -6
- package/src/PriceLockup/utils/renderTypography.jsx +2 -4
- package/src/ProductCard/ProductCard.jsx +18 -21
- package/src/ProductCard/dictionary.js +1 -1
- package/src/ProductCardGroup/ProductCardGroup.jsx +43 -41
- package/src/Progress/Progress.jsx +9 -6
- package/src/Progress/ProgressBar.jsx +13 -10
- package/src/Progress/ProgressBarBackground.jsx +4 -7
- package/src/Progress/ProgressContext.js +1 -3
- package/src/QuickLinks/QuickLinks.jsx +8 -9
- package/src/QuickLinks/QuickLinksCard.jsx +7 -8
- package/src/QuickLinks/QuickLinksItem.jsx +15 -10
- package/src/QuickLinksFeature/QuickLinksFeature.jsx +11 -9
- package/src/QuickLinksFeature/QuickLinksFeatureItem.jsx +18 -16
- package/src/Radio/Radio.jsx +15 -18
- package/src/Radio/RadioButton.jsx +9 -18
- package/src/Radio/RadioGroup.jsx +15 -20
- package/src/Radio/RadioInput.jsx +1 -3
- package/src/Radio/RadioInput.native.jsx +1 -3
- package/src/RadioCard/RadioCard.jsx +15 -18
- package/src/RadioCard/RadioCardGroup.jsx +15 -18
- package/src/Responsive/Responsive.jsx +23 -23
- package/src/Responsive/ResponsiveProp.jsx +2 -4
- package/src/Responsive/ResponsiveWithMediaQueryStyleSheet.jsx +3 -4
- package/src/Search/Search.jsx +17 -22
- package/src/Search/dictionary.js +1 -1
- package/src/Select/Picker.jsx +5 -5
- package/src/Select/Picker.native.jsx +5 -6
- package/src/Select/Select.jsx +16 -18
- package/src/Select/{Group.jsx → SelectGroup.jsx} +4 -6
- package/src/Select/{Group.native.jsx → SelectGroup.native.jsx} +3 -5
- package/src/Select/{Item.jsx → SelectItem.jsx} +3 -5
- package/src/Select/SelectItem.native.jsx +1 -0
- package/src/Shortcuts/Shortcuts.jsx +13 -18
- package/src/Shortcuts/ShortcutsItem.jsx +16 -18
- package/src/SideNav/SideNav.jsx +19 -26
- package/src/SideNav/{Item.jsx → SideNavItem.jsx} +17 -20
- package/src/SideNav/{ItemContent.jsx → SideNavItemContent.jsx} +5 -8
- package/src/SideNav/{ItemsGroup.jsx → SideNavItemsGroup.jsx} +21 -21
- package/src/Skeleton/Skeleton.jsx +15 -36
- package/src/Skeleton/skeletonWebAnimation.js +1 -3
- package/src/Skeleton/useSkeletonNativeAnimation.js +1 -3
- package/src/SkipLink/SkipLink.jsx +16 -15
- package/src/Spacer/Spacer.jsx +41 -41
- package/src/StackView/StackView.jsx +16 -19
- package/src/StackView/StackWrap.jsx +4 -6
- package/src/StackView/StackWrap.native.jsx +1 -3
- package/src/StackView/StackWrapBox.jsx +13 -18
- package/src/StackView/StackWrapGap.jsx +11 -15
- package/src/StackView/common.jsx +2 -1
- package/src/StackView/getStackedContent.jsx +4 -6
- package/src/Status/Status.jsx +33 -35
- package/src/StepTracker/Step.jsx +10 -7
- package/src/StepTracker/StepTracker.jsx +14 -10
- package/src/StepTracker/dictionary.js +1 -1
- package/src/TabBar/TabBar.jsx +8 -6
- package/src/TabBar/TabBarItem.jsx +7 -7
- package/src/Tabs/Tabs.jsx +19 -26
- package/src/Tabs/TabsDropdown.jsx +20 -22
- package/src/Tabs/TabsItem.jsx +18 -19
- package/src/Tabs/dictionary.js +1 -1
- package/src/Tags/Tags.jsx +17 -22
- package/src/TextInput/TextArea.jsx +13 -18
- package/src/TextInput/TextInput.jsx +12 -17
- package/src/TextInput/TextInputBase.jsx +18 -20
- package/src/TextInput/dictionary.js +1 -1
- package/src/TextInput/propTypes.js +1 -3
- package/src/ThemeProvider/ThemeProvider.jsx +27 -24
- package/src/ThemeProvider/useResponsiveThemeTokens.js +8 -5
- package/src/ThemeProvider/useResponsiveThemeTokensCallback.js +3 -5
- package/src/ThemeProvider/useSetTheme.js +1 -2
- package/src/ThemeProvider/useTheme.js +1 -2
- package/src/ThemeProvider/useThemeTokens.js +7 -2
- package/src/ThemeProvider/utils/styles.js +5 -1
- package/src/Timeline/Timeline.jsx +9 -14
- package/src/ToggleSwitch/ToggleSwitch.jsx +14 -18
- package/src/ToggleSwitch/ToggleSwitchGroup.jsx +15 -20
- package/src/Tooltip/Backdrop.jsx +1 -3
- package/src/Tooltip/Backdrop.native.jsx +1 -3
- package/src/Tooltip/Tooltip.jsx +11 -9
- package/src/Tooltip/Tooltip.native.jsx +14 -12
- package/src/Tooltip/dictionary.js +1 -1
- package/src/Tooltip/getTooltipPosition.js +1 -3
- package/src/Tooltip/shared.js +2 -4
- package/src/TooltipButton/TooltipButton.jsx +30 -25
- package/src/Typography/Typography.jsx +22 -22
- package/src/Validator/Validator.jsx +7 -8
- package/src/ViewportProvider/ViewportProvider.jsx +6 -5
- package/src/ViewportProvider/useViewportListener.js +2 -5
- package/src/index.js +189 -89
- package/src/server.js +2 -2
- package/src/utils/BaseView/BaseView.jsx +2 -4
- package/src/utils/BaseView/BaseView.native.jsx +1 -3
- package/src/utils/animation/useVerticalExpandAnimation.js +3 -5
- package/src/utils/children.jsx +1 -1
- package/src/utils/containUniqueFields.js +1 -3
- package/src/utils/convertFromMegaByteToByte.js +1 -1
- package/src/utils/formatImageSource.js +1 -3
- package/src/utils/getSpacingScale.js +1 -3
- package/src/utils/hasOwnProperty.js +1 -1
- package/src/utils/htmlAttrs.js +1 -1
- package/src/utils/info/info.js +7 -0
- package/src/utils/info/platform/platform.android.js +1 -1
- package/src/utils/info/platform/platform.ios.js +1 -1
- package/src/utils/info/platform/platform.js +10 -1
- package/src/utils/info/platform/platform.native.js +1 -1
- package/src/utils/info/versions.js +1 -1
- package/src/utils/isTouchDevice.js +1 -3
- package/src/utils/pressability.js +1 -1
- package/src/utils/props/a11yProps.js +2 -2
- package/src/utils/props/clickProps.js +1 -1
- package/src/utils/props/componentPropType.js +1 -1
- package/src/utils/props/contentfulProps.js +2 -2
- package/src/utils/props/copyPropTypes.js +1 -1
- package/src/utils/props/getPropSelector.js +2 -2
- package/src/utils/props/handlerProps.js +1 -1
- package/src/utils/props/hrefAttrsProp.js +1 -1
- package/src/utils/props/inputSupportsProps.js +2 -2
- package/src/utils/props/linkProps.js +4 -4
- package/src/utils/props/paddingProp.js +1 -1
- package/src/utils/props/pressProps.js +3 -3
- package/src/utils/props/rectProp.js +1 -1
- package/src/utils/props/responsiveProps.js +1 -1
- package/src/utils/props/selectSystemProps.js +1 -1
- package/src/utils/props/spacingProps.js +3 -3
- package/src/utils/props/textInputProps.js +2 -2
- package/src/utils/props/textProps.js +2 -2
- package/src/utils/props/variantProp.js +1 -1
- package/src/utils/props/viewProps.js +2 -2
- package/src/utils/resolveContentMaxWidth.js +1 -3
- package/src/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +1 -3
- package/src/utils/ssr-media-query/create-stylesheet/index.android.js +1 -3
- package/src/utils/ssr-media-query/create-stylesheet/index.ios.js +1 -3
- package/src/utils/ssr-media-query/create-stylesheet/index.js +3 -5
- package/src/utils/ssr-media-query/hash.js +1 -1
- package/src/utils/ssr-media-query/ssr-media-query.js +9 -0
- package/src/utils/ssr-media-query/utils/create-declaration-block.js +2 -4
- package/src/utils/ssr-media-query/utils/create-media-query-styles.js +1 -3
- package/src/utils/ssr-media-query/utils/hyphenate-style-name.js +1 -3
- package/src/utils/ssr-media-query/utils/use-all-viewport-tokens.js +3 -5
- package/src/utils/ssr.jsx +0 -2
- package/src/utils/transformGradient.js +0 -2
- package/src/utils/useCopy.js +1 -3
- package/src/utils/useDetectOutsideClick.js +1 -3
- package/src/utils/useHash.js +1 -2
- package/src/utils/useHash.native.js +1 -2
- package/src/utils/useMediaQuerySpacing.js +7 -4
- package/src/utils/useOverlaidPosition.js +1 -3
- package/src/utils/useResponsiveProp.js +3 -5
- package/src/utils/useSafeLayoutEffect.js +1 -3
- package/src/utils/useScrollBlocking.js +1 -3
- package/src/utils/useScrollBlocking.native.js +1 -1
- package/src/utils/useSpacingScale.js +3 -5
- package/src/utils/useUniqueId.js +1 -3
- package/src/utils/useVariants.js +3 -4
- package/src/utils/withLinkRouter.jsx +2 -4
- package/types/Checkbox.d.ts +19 -20
- package/types/FileUpload.d.ts +1 -1
- package/types/Link.d.ts +1 -2
- package/types/Shortcuts.d.ts +0 -1
- package/types/Status.d.ts +1 -1
- package/lib/cjs/ActionCard/index.js +0 -9
- package/lib/cjs/Autocomplete/index.js +0 -9
- package/lib/cjs/Badge/index.js +0 -9
- package/lib/cjs/Box/index.js +0 -9
- package/lib/cjs/Button/index.js +0 -34
- package/lib/cjs/Card/index.js +0 -31
- package/lib/cjs/CardGroup/index.js +0 -9
- package/lib/cjs/Carousel/CarouselItem/index.js +0 -9
- package/lib/cjs/Carousel/CarouselStepTracker/index.js +0 -9
- package/lib/cjs/Carousel/CarouselTabs/CarouselTabs.js +0 -54
- package/lib/cjs/Carousel/CarouselTabs/index.js +0 -9
- package/lib/cjs/Carousel/index.js +0 -44
- package/lib/cjs/Checkbox/index.js +0 -16
- package/lib/cjs/CheckboxCard/index.js +0 -9
- package/lib/cjs/CheckboxCardGroup/index.js +0 -9
- package/lib/cjs/ColourToggle/index.js +0 -9
- package/lib/cjs/Divider/index.js +0 -9
- package/lib/cjs/DownloadApp/index.js +0 -9
- package/lib/cjs/ExpandCollapse/Accordion.js +0 -20
- package/lib/cjs/ExpandCollapse/index.js +0 -19
- package/lib/cjs/ExpandCollapseMini/index.js +0 -9
- package/lib/cjs/Feedback/index.js +0 -9
- package/lib/cjs/Fieldset/index.js +0 -9
- package/lib/cjs/FileUpload/index.js +0 -9
- package/lib/cjs/FlexGrid/Col/index.js +0 -9
- package/lib/cjs/FlexGrid/Row/index.js +0 -9
- package/lib/cjs/FlexGrid/index.js +0 -23
- package/lib/cjs/Footnote/index.js +0 -11
- package/lib/cjs/HorizontalScroll/index.js +0 -25
- package/lib/cjs/Icon/index.js +0 -23
- package/lib/cjs/IconButton/index.js +0 -9
- package/lib/cjs/InputLabel/index.js +0 -9
- package/lib/cjs/InputSupports/index.js +0 -9
- package/lib/cjs/Link/index.js +0 -34
- package/lib/cjs/List/index.js +0 -23
- package/lib/cjs/Listbox/index.js +0 -9
- package/lib/cjs/Modal/index.js +0 -9
- package/lib/cjs/MultiSelectFilter/index.js +0 -9
- package/lib/cjs/Notification/index.js +0 -9
- package/lib/cjs/OrderedList/index.js +0 -16
- package/lib/cjs/Pagination/index.js +0 -9
- package/lib/cjs/Portal/index.js +0 -9
- package/lib/cjs/PriceLockup/index.js +0 -9
- package/lib/cjs/ProductCard/index.js +0 -9
- package/lib/cjs/ProductCardGroup/index.js +0 -9
- package/lib/cjs/Progress/index.js +0 -11
- package/lib/cjs/QuickLinks/index.js +0 -11
- package/lib/cjs/QuickLinksFeature/index.js +0 -11
- package/lib/cjs/Radio/index.js +0 -16
- package/lib/cjs/RadioCard/index.js +0 -16
- package/lib/cjs/Responsive/index.js +0 -9
- package/lib/cjs/Search/index.js +0 -9
- package/lib/cjs/Select/Item.native.js +0 -8
- package/lib/cjs/Select/index.js +0 -13
- package/lib/cjs/Shortcuts/index.js +0 -16
- package/lib/cjs/SideNav/index.js +0 -13
- package/lib/cjs/Skeleton/index.js +0 -9
- package/lib/cjs/SkipLink/index.js +0 -9
- package/lib/cjs/Spacer/index.js +0 -9
- package/lib/cjs/StackView/index.js +0 -23
- package/lib/cjs/Status/index.js +0 -9
- package/lib/cjs/StepTracker/index.js +0 -9
- package/lib/cjs/TabBar/index.js +0 -11
- package/lib/cjs/Tabs/index.js +0 -9
- package/lib/cjs/Tags/index.js +0 -9
- package/lib/cjs/TextInput/index.js +0 -20
- package/lib/cjs/ThemeProvider/index.js +0 -67
- package/lib/cjs/ThemeProvider/utils/index.js +0 -27
- package/lib/cjs/Timeline/index.js +0 -9
- package/lib/cjs/ToggleSwitch/index.js +0 -20
- package/lib/cjs/Tooltip/index.js +0 -12
- package/lib/cjs/TooltipButton/index.js +0 -9
- package/lib/cjs/Typography/index.js +0 -9
- package/lib/cjs/Validator/index.js +0 -9
- package/lib/cjs/ViewportProvider/index.js +0 -22
- package/lib/cjs/utils/BaseView/index.js +0 -9
- package/lib/cjs/utils/a11y/index.js +0 -27
- package/lib/cjs/utils/animation/index.js +0 -13
- package/lib/cjs/utils/index.js +0 -284
- package/lib/cjs/utils/info/index.js +0 -14
- package/lib/cjs/utils/info/platform/index.js +0 -18
- package/lib/cjs/utils/props/index.js +0 -176
- package/lib/cjs/utils/ssr-media-query/index.js +0 -25
- package/lib/esm/ActionCard/index.js +0 -2
- package/lib/esm/Autocomplete/index.js +0 -2
- package/lib/esm/Badge/index.js +0 -2
- package/lib/esm/Box/index.js +0 -2
- package/lib/esm/Button/index.js +0 -5
- package/lib/esm/Card/index.js +0 -4
- package/lib/esm/CardGroup/index.js +0 -2
- package/lib/esm/Carousel/CarouselItem/index.js +0 -2
- package/lib/esm/Carousel/CarouselStepTracker/index.js +0 -2
- package/lib/esm/Carousel/CarouselTabs/CarouselTabs.js +0 -49
- package/lib/esm/Carousel/CarouselTabs/index.js +0 -2
- package/lib/esm/Carousel/index.js +0 -4
- package/lib/esm/Checkbox/index.js +0 -3
- package/lib/esm/CheckboxCard/index.js +0 -2
- package/lib/esm/CheckboxCardGroup/index.js +0 -2
- package/lib/esm/ColourToggle/index.js +0 -2
- package/lib/esm/Divider/index.js +0 -2
- package/lib/esm/DownloadApp/index.js +0 -2
- package/lib/esm/ExpandCollapse/Accordion.js +0 -15
- package/lib/esm/ExpandCollapse/index.js +0 -7
- package/lib/esm/ExpandCollapseMini/index.js +0 -2
- package/lib/esm/Feedback/index.js +0 -2
- package/lib/esm/Fieldset/index.js +0 -2
- package/lib/esm/FileUpload/index.js +0 -2
- package/lib/esm/FlexGrid/Col/index.js +0 -2
- package/lib/esm/FlexGrid/Row/index.js +0 -2
- package/lib/esm/FlexGrid/index.js +0 -4
- package/lib/esm/Footnote/index.js +0 -4
- package/lib/esm/HorizontalScroll/index.js +0 -11
- package/lib/esm/Icon/index.js +0 -4
- package/lib/esm/IconButton/index.js +0 -2
- package/lib/esm/InputLabel/index.js +0 -2
- package/lib/esm/InputSupports/index.js +0 -2
- package/lib/esm/Link/index.js +0 -5
- package/lib/esm/List/index.js +0 -5
- package/lib/esm/Listbox/index.js +0 -2
- package/lib/esm/Modal/index.js +0 -2
- package/lib/esm/MultiSelectFilter/index.js +0 -2
- package/lib/esm/Notification/index.js +0 -2
- package/lib/esm/OrderedList/index.js +0 -3
- package/lib/esm/Pagination/index.js +0 -2
- package/lib/esm/Portal/index.js +0 -2
- package/lib/esm/PriceLockup/index.js +0 -2
- package/lib/esm/ProductCard/index.js +0 -2
- package/lib/esm/ProductCardGroup/index.js +0 -2
- package/lib/esm/Progress/index.js +0 -4
- package/lib/esm/QuickLinks/index.js +0 -4
- package/lib/esm/QuickLinksFeature/index.js +0 -4
- package/lib/esm/Radio/index.js +0 -3
- package/lib/esm/RadioCard/index.js +0 -3
- package/lib/esm/Responsive/index.js +0 -2
- package/lib/esm/Search/index.js +0 -2
- package/lib/esm/Select/Item.native.js +0 -2
- package/lib/esm/Select/index.js +0 -6
- package/lib/esm/Shortcuts/index.js +0 -3
- package/lib/esm/SideNav/index.js +0 -1
- package/lib/esm/Skeleton/index.js +0 -2
- package/lib/esm/SkipLink/index.js +0 -2
- package/lib/esm/Spacer/index.js +0 -2
- package/lib/esm/StackView/index.js +0 -5
- package/lib/esm/Status/index.js +0 -2
- package/lib/esm/StepTracker/index.js +0 -2
- package/lib/esm/TabBar/index.js +0 -4
- package/lib/esm/Tabs/index.js +0 -2
- package/lib/esm/Tags/index.js +0 -2
- package/lib/esm/TextInput/index.js +0 -3
- package/lib/esm/ThemeProvider/index.js +0 -8
- package/lib/esm/ThemeProvider/utils/index.js +0 -2
- package/lib/esm/Timeline/index.js +0 -2
- package/lib/esm/ToggleSwitch/index.js +0 -3
- package/lib/esm/Tooltip/index.js +0 -5
- package/lib/esm/TooltipButton/index.js +0 -2
- package/lib/esm/Typography/index.js +0 -2
- package/lib/esm/Validator/index.js +0 -2
- package/lib/esm/ViewportProvider/index.js +0 -3
- package/lib/esm/utils/BaseView/index.js +0 -2
- package/lib/esm/utils/a11y/index.js +0 -2
- package/lib/esm/utils/animation/index.js +0 -2
- package/lib/esm/utils/index.js +0 -30
- package/lib/esm/utils/info/index.js +0 -8
- package/lib/esm/utils/info/platform/index.js +0 -14
- package/lib/esm/utils/props/index.js +0 -20
- package/lib/esm/utils/ssr-media-query/index.js +0 -7
- package/src/ActionCard/index.js +0 -3
- package/src/Autocomplete/index.js +0 -3
- package/src/Badge/index.js +0 -3
- package/src/Box/index.js +0 -3
- package/src/Button/index.js +0 -6
- package/src/Card/index.js +0 -6
- package/src/CardGroup/index.js +0 -3
- package/src/Carousel/CarouselItem/index.js +0 -3
- package/src/Carousel/CarouselStepTracker/index.js +0 -3
- package/src/Carousel/CarouselTabs/CarouselTabs.jsx +0 -39
- package/src/Carousel/CarouselTabs/index.js +0 -3
- package/src/Carousel/index.js +0 -4
- package/src/Checkbox/index.js +0 -5
- package/src/CheckboxCard/index.js +0 -3
- package/src/CheckboxCardGroup/index.js +0 -3
- package/src/ColourToggle/index.js +0 -3
- package/src/Divider/index.js +0 -3
- package/src/DownloadApp/index.js +0 -3
- package/src/ExpandCollapse/Accordion.jsx +0 -13
- package/src/ExpandCollapse/index.js +0 -8
- package/src/ExpandCollapseMini/index.js +0 -3
- package/src/Feedback/index.js +0 -3
- package/src/Fieldset/index.js +0 -3
- package/src/FileUpload/index.js +0 -3
- package/src/FlexGrid/Col/index.js +0 -3
- package/src/FlexGrid/Row/index.js +0 -3
- package/src/FlexGrid/index.js +0 -6
- package/src/Footnote/index.js +0 -6
- package/src/HorizontalScroll/index.js +0 -17
- package/src/Icon/index.js +0 -5
- package/src/IconButton/index.js +0 -3
- package/src/InputLabel/index.js +0 -3
- package/src/InputSupports/index.js +0 -3
- package/src/Link/index.js +0 -6
- package/src/List/index.js +0 -8
- package/src/Listbox/index.js +0 -3
- package/src/Modal/index.js +0 -3
- package/src/MultiSelectFilter/index.js +0 -3
- package/src/Notification/index.js +0 -3
- package/src/OrderedList/index.js +0 -4
- package/src/Pagination/index.js +0 -3
- package/src/Portal/index.js +0 -3
- package/src/PriceLockup/index.js +0 -3
- package/src/ProductCard/index.js +0 -3
- package/src/ProductCardGroup/index.js +0 -3
- package/src/Progress/index.js +0 -6
- package/src/QuickLinks/index.js +0 -6
- package/src/QuickLinksFeature/index.js +0 -6
- package/src/Radio/index.js +0 -5
- package/src/RadioCard/index.js +0 -5
- package/src/Responsive/index.js +0 -3
- package/src/Search/index.js +0 -3
- package/src/Select/Item.native.jsx +0 -3
- package/src/Select/index.js +0 -8
- package/src/Shortcuts/index.js +0 -4
- package/src/SideNav/index.js +0 -1
- package/src/Skeleton/index.js +0 -3
- package/src/SkipLink/index.js +0 -3
- package/src/Spacer/index.js +0 -3
- package/src/StackView/index.js +0 -6
- package/src/Status/index.js +0 -3
- package/src/StepTracker/index.js +0 -3
- package/src/TabBar/index.js +0 -6
- package/src/Tabs/index.js +0 -3
- package/src/Tags/index.js +0 -3
- package/src/TextInput/index.js +0 -4
- package/src/ThemeProvider/index.js +0 -11
- package/src/ThemeProvider/utils/index.js +0 -2
- package/src/Timeline/index.js +0 -3
- package/src/ToggleSwitch/index.js +0 -4
- package/src/Tooltip/index.js +0 -7
- package/src/TooltipButton/index.js +0 -3
- package/src/Typography/index.js +0 -3
- package/src/Validator/index.js +0 -3
- package/src/ViewportProvider/index.jsx +0 -4
- package/src/utils/BaseView/index.js +0 -3
- package/src/utils/a11y/index.js +0 -2
- package/src/utils/animation/index.js +0 -2
- package/src/utils/index.js +0 -30
- package/src/utils/info/index.js +0 -8
- package/src/utils/info/platform/index.js +0 -11
- package/src/utils/props/index.js +0 -20
- package/src/utils/ssr-media-query/index.js +0 -9
|
@@ -7,21 +7,31 @@ import Platform from "react-native-web/dist/exports/Platform";
|
|
|
7
7
|
import Dimensions from "react-native-web/dist/exports/Dimensions";
|
|
8
8
|
import Easing from "react-native-web/dist/exports/Easing";
|
|
9
9
|
import PropTypes from 'prop-types';
|
|
10
|
-
import { useThemeTokens
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
10
|
+
import { useThemeTokens } from '../ThemeProvider/useThemeTokens';
|
|
11
|
+
import { useTheme } from '../ThemeProvider/useTheme';
|
|
12
|
+
import { useViewport } from '../ViewportProvider/useViewport';
|
|
13
|
+
import { getTokensPropType } from '../utils/props/tokens';
|
|
14
|
+
import { getA11yPropsFromHtmlTag, layoutTags } from '../utils/a11y/semantics';
|
|
15
|
+
import { variantProp } from '../utils/props/variantProp';
|
|
16
|
+
import { selectSystemProps } from '../utils/props/selectSystemProps';
|
|
17
|
+
import { a11yProps } from '../utils/props/a11yProps';
|
|
18
|
+
import { viewProps } from '../utils/props/viewProps';
|
|
19
|
+
import { useCopy } from '../utils/useCopy';
|
|
20
|
+
import { unpackFragment } from '../utils/children';
|
|
21
|
+
import { isTouchDevice } from '../utils/isTouchDevice';
|
|
22
|
+
import { useResponsiveProp } from '../utils/useResponsiveProp';
|
|
23
|
+
import { resolveContentMaxWidth } from '../utils/resolveContentMaxWidth';
|
|
24
|
+
import { useA11yInfo } from '../A11yInfoProvider/A11yInfoProvider';
|
|
14
25
|
import { CarouselProvider } from './CarouselContext';
|
|
15
|
-
import
|
|
16
|
-
import
|
|
17
|
-
import
|
|
18
|
-
import
|
|
19
|
-
import
|
|
20
|
-
import
|
|
21
|
-
import
|
|
22
|
-
import
|
|
23
|
-
import
|
|
24
|
-
import Box from '../Box';
|
|
26
|
+
import { IconButton } from '../IconButton/IconButton';
|
|
27
|
+
import { SkipLink } from '../SkipLink/SkipLink';
|
|
28
|
+
import { A11yText } from '../A11yText/A11yText';
|
|
29
|
+
import { CarouselStepTracker } from './CarouselStepTracker/CarouselStepTracker';
|
|
30
|
+
import { CarouselThumbnailNavigation } from './CarouselThumbnailNavigation';
|
|
31
|
+
import { CarouselTabsPanel } from './CarouselTabs/CarouselTabsPanel';
|
|
32
|
+
import { CarouselTabsPanelItem } from './CarouselTabs/CarouselTabsPanelItem';
|
|
33
|
+
import { dictionary } from './dictionary';
|
|
34
|
+
import { Box } from '../Box/Box';
|
|
25
35
|
import { ITEMS_PER_VIEWPORT_XS_SM, ITEMS_PER_VIEWPORT_MD, ITEMS_PER_VIEWPORT_LG_XL, DEFAULT_POSITION_OFFSET, LARGE_VIEWPORT_MARGIN, DEFAULT_VIEWPORT_MARGIN, PEEKING_MULTIPLIER, NEGATIVE_MULTIPLIER, TRANSITION_MODES, SWIPE_RELEASE_STYLES, INSTANT_ANIMATION_DURATION, DEFAULT_SWIPE_RELEASE_DURATION, POSITION_VARIANTS, POSITION_PROPERTIES } from './Constants';
|
|
26
36
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
27
37
|
const staticStyles = StyleSheet.create({
|
|
@@ -293,7 +303,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, vie
|
|
|
293
303
|
|
|
294
304
|
## Usage
|
|
295
305
|
- `Carousel` is a top-level export from `@telus-uds/components-base` which is used to render a Carousel
|
|
296
|
-
- Immediately within `Carousel`, individual slides are wrapped in `
|
|
306
|
+
- Immediately within `Carousel`, individual slides are wrapped in `CarouselItem` for the top-level `Carousel` to know how to identify an individual slide
|
|
297
307
|
- You can use any UDS component or other platform-specific component, (based on the platform you're rendering) to achieve any desired layout
|
|
298
308
|
- By default, Carousel takea all the `width` available to it and the `height` is determined based on the content in the slide with more content
|
|
299
309
|
- You may want to wrap Carousel in other layout components like `Box`, `FlexGrid` etc, to achieve a responsive layout of your need
|
|
@@ -322,7 +332,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, vie
|
|
|
322
332
|
|
|
323
333
|
## Accessibility
|
|
324
334
|
|
|
325
|
-
- Top-level `Carousel` and `
|
|
335
|
+
- Top-level `Carousel` and `CarouselItem` can take all possible React Native's `View` and `a11y` props
|
|
326
336
|
- If your slide contains input elements like buttons, you may want to configure them to be only focusable when `activeIndex` is equal to the current slide index in order to avoid tabbing going between slides
|
|
327
337
|
|
|
328
338
|
## Platform considerations
|
|
@@ -342,7 +352,7 @@ const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, vie
|
|
|
342
352
|
- `spaceBetweenSlideAndPreviousNextNavigation` - Horizontal space between slide and previous/next navigational buttons
|
|
343
353
|
- `spaceBetweenSlideAndPanelNavigation` - Vertical space between slide area and panel navigation area
|
|
344
354
|
*/
|
|
345
|
-
const Carousel = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
355
|
+
export const Carousel = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
346
356
|
let {
|
|
347
357
|
tokens,
|
|
348
358
|
variant,
|
|
@@ -403,7 +413,7 @@ const Carousel = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
|
403
413
|
}
|
|
404
414
|
const totalItems = getTotalItems(enableDisplayMultipleItemsPerSlide, childrenArray, viewport);
|
|
405
415
|
const autoPlayFeatureEnabled = autoPlay && slideDuration > 0 && transitionDuration > 0 && totalItems > 1;
|
|
406
|
-
// if `Carousel` only has one `
|
|
416
|
+
// if `Carousel` only has one `CarouselItem`, convert this to a single-item array
|
|
407
417
|
if (!Array.isArray(childrenArray)) {
|
|
408
418
|
childrenArray = [childrenArray];
|
|
409
419
|
}
|
|
@@ -1142,7 +1152,7 @@ Carousel.propTypes = {
|
|
|
1142
1152
|
*/
|
|
1143
1153
|
progressBarVariant: variantProp.propType,
|
|
1144
1154
|
/**
|
|
1145
|
-
* Slides to render in Carousel. Wrap individual slides in `
|
|
1155
|
+
* Slides to render in Carousel. Wrap individual slides in `CarouselItem`
|
|
1146
1156
|
*/
|
|
1147
1157
|
children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]).isRequired,
|
|
1148
1158
|
/**
|
|
@@ -1170,9 +1180,14 @@ Carousel.propTypes = {
|
|
|
1170
1180
|
* An array of objects containing information on the thumbnails to be rendered as navigation panel
|
|
1171
1181
|
*/
|
|
1172
1182
|
thumbnails: PropTypes.arrayOf(PropTypes.shape({
|
|
1183
|
+
/** Accessibility label for the thumbnail image, used by assistive technologies. */
|
|
1173
1184
|
accessibilityLabel: PropTypes.string,
|
|
1185
|
+
/** Alternative text for the thumbnail image, displayed when the image cannot be rendered. */
|
|
1174
1186
|
alt: PropTypes.string,
|
|
1175
|
-
|
|
1187
|
+
/** When true, renders a play icon overlay on the thumbnail to indicate that the slide contains a video. */
|
|
1188
|
+
isVideo: PropTypes.bool,
|
|
1189
|
+
/** URL or path of the thumbnail image. When used with `isVideo`, this should be the video's poster/preview image. */
|
|
1190
|
+
src: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
1176
1191
|
})),
|
|
1177
1192
|
/**
|
|
1178
1193
|
* Minimal part of slide width must be swiped for changing index.
|
|
@@ -1194,7 +1209,7 @@ Carousel.propTypes = {
|
|
|
1194
1209
|
* <Carousel
|
|
1195
1210
|
* onIndexChanged={onIndexChangedCallback}
|
|
1196
1211
|
* >
|
|
1197
|
-
* <
|
|
1212
|
+
* <CarouselItem>First Slide</CarouselItem>
|
|
1198
1213
|
* </Carousel>
|
|
1199
1214
|
* ```
|
|
1200
1215
|
* Caution: Always consider wrapping your callback for `onIndexChanged` in `React.useCallback` in order to avoid bugs and performance issues
|
|
@@ -1229,7 +1244,7 @@ Carousel.propTypes = {
|
|
|
1229
1244
|
* <Carousel
|
|
1230
1245
|
* panelNavigation={<CustomPanelNavigation />}
|
|
1231
1246
|
* >
|
|
1232
|
-
* <
|
|
1247
|
+
* <CarouselItem>First Slide</CarouselItem>
|
|
1233
1248
|
* </Carousel>
|
|
1234
1249
|
* ```
|
|
1235
1250
|
*/
|
|
@@ -1245,7 +1260,7 @@ Carousel.propTypes = {
|
|
|
1245
1260
|
* <Carousel
|
|
1246
1261
|
* onAnimationStart={onAnimationStartCallback}
|
|
1247
1262
|
* >
|
|
1248
|
-
* <
|
|
1263
|
+
* <CarouselItem>First Slide</CarouselItem>
|
|
1249
1264
|
* </Carousel>
|
|
1250
1265
|
* ```
|
|
1251
1266
|
* Caution: Always consider wrapping your callback for `onAnimationStart` in `React.useCallback` in order to avoid bugs and performance issues
|
|
@@ -1262,7 +1277,7 @@ Carousel.propTypes = {
|
|
|
1262
1277
|
* <Carousel
|
|
1263
1278
|
* onAnimationEnd={onAnimationEndCallback}
|
|
1264
1279
|
* >
|
|
1265
|
-
* <
|
|
1280
|
+
* <CarouselItem>First Slide</CarouselItem>
|
|
1266
1281
|
* </Carousel>
|
|
1267
1282
|
* ```
|
|
1268
1283
|
* Caution: Always consider wrapping your callback for `onAnimationEnd` in `React.useCallback` in order to avoid bugs and performance issues
|
|
@@ -1364,6 +1379,4 @@ Carousel.propTypes = {
|
|
|
1364
1379
|
*/
|
|
1365
1380
|
swipeReleaseDuration: PropTypes.number
|
|
1366
1381
|
};
|
|
1367
|
-
Carousel.
|
|
1368
|
-
Carousel.displayName = 'Carousel';
|
|
1369
|
-
export default Carousel;
|
|
1382
|
+
Carousel.displayName = 'Carousel';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import { getTokensPropType } from '../utils';
|
|
3
|
+
import { getTokensPropType } from '../utils/props/tokens';
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
5
|
const CarouselContext = /*#__PURE__*/React.createContext();
|
|
6
|
-
const CarouselProvider = _ref => {
|
|
6
|
+
export const CarouselProvider = _ref => {
|
|
7
7
|
let {
|
|
8
8
|
activeIndex,
|
|
9
9
|
children,
|
|
@@ -36,7 +36,7 @@ const CarouselProvider = _ref => {
|
|
|
36
36
|
children: children
|
|
37
37
|
});
|
|
38
38
|
};
|
|
39
|
-
function useCarousel() {
|
|
39
|
+
export function useCarousel() {
|
|
40
40
|
const context = React.useContext(CarouselContext);
|
|
41
41
|
if (context === undefined) {
|
|
42
42
|
throw new Error(`'useCarousel' must be used within a 'CarouselProvider'`);
|
|
@@ -56,5 +56,4 @@ CarouselProvider.propTypes = {
|
|
|
56
56
|
maximumItemsForSlide: PropTypes.number,
|
|
57
57
|
maxWidth: PropTypes.number,
|
|
58
58
|
viewportWidth: PropTypes.number
|
|
59
|
-
};
|
|
60
|
-
export { CarouselProvider, useCarousel };
|
|
59
|
+
};
|
|
@@ -12,7 +12,7 @@ import { useCarousel } from '../CarouselContext';
|
|
|
12
12
|
* @TODO rework this after integrating with SkipLink when available.
|
|
13
13
|
*/
|
|
14
14
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
15
|
-
const CarouselFirstFocus = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
15
|
+
export const CarouselFirstFocus = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
16
16
|
let {
|
|
17
17
|
title
|
|
18
18
|
} = _ref;
|
|
@@ -48,5 +48,4 @@ CarouselFirstFocus.propTypes = {
|
|
|
48
48
|
* For example, "Summer offers" in "Summer offers, offer 1 of 3"
|
|
49
49
|
*/
|
|
50
50
|
title: PropTypes.string
|
|
51
|
-
};
|
|
52
|
-
export default CarouselFirstFocus;
|
|
51
|
+
};
|
|
@@ -2,7 +2,11 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import View from "react-native-web/dist/exports/View";
|
|
4
4
|
import Platform from "react-native-web/dist/exports/Platform";
|
|
5
|
-
import { layoutTags, getA11yPropsFromHtmlTag
|
|
5
|
+
import { layoutTags, getA11yPropsFromHtmlTag } from '../../utils/a11y/semantics';
|
|
6
|
+
import { selectSystemProps } from '../../utils/props/selectSystemProps';
|
|
7
|
+
import { a11yProps } from '../../utils/props/a11yProps';
|
|
8
|
+
import { viewProps } from '../../utils/props/viewProps';
|
|
9
|
+
import { variantProp } from '../../utils/props/variantProp';
|
|
6
10
|
import { useCarousel } from '../CarouselContext';
|
|
7
11
|
import { ITEMS_PER_VIEWPORT_MD, ITEMS_PER_VIEWPORT_LG_XL, GAP_BETWEEN_ITEMS } from '../Constants';
|
|
8
12
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
@@ -69,10 +73,10 @@ const selectContainerStyle = _ref => {
|
|
|
69
73
|
};
|
|
70
74
|
|
|
71
75
|
/**
|
|
72
|
-
* `
|
|
76
|
+
* `CarouselItem` is used to wrap the content of an individual slide and is suppsoed to be the
|
|
73
77
|
* only top-level component passed to the `Carousel`
|
|
74
78
|
*/
|
|
75
|
-
const CarouselItem = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
79
|
+
export const CarouselItem = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
76
80
|
let {
|
|
77
81
|
children,
|
|
78
82
|
elementIndex,
|
|
@@ -150,7 +154,7 @@ CarouselItem.propTypes = {
|
|
|
150
154
|
variant: variantProp.propType,
|
|
151
155
|
/**
|
|
152
156
|
* Index of the current slide
|
|
153
|
-
* Don't pass this prop when using `
|
|
157
|
+
* Don't pass this prop when using `CarouselItem` as it is already being passed by `Carousel` top-level component
|
|
154
158
|
*/
|
|
155
159
|
elementIndex: PropTypes.number,
|
|
156
160
|
/**
|
|
@@ -166,7 +170,7 @@ CarouselItem.propTypes = {
|
|
|
166
170
|
* the Carousel as a list of items.
|
|
167
171
|
*
|
|
168
172
|
* Carousel's innermost container defaults to `'ul'` which can be overridden. If the tag of either
|
|
169
|
-
* `Carousel` or `
|
|
173
|
+
* `Carousel` or `CarouselItem` is overriden, the other should be too, to avoid producing invalid HTML.
|
|
170
174
|
*/
|
|
171
175
|
tag: PropTypes.oneOf(layoutTags),
|
|
172
176
|
/**
|
|
@@ -193,5 +197,4 @@ CarouselItem.propTypes = {
|
|
|
193
197
|
*/
|
|
194
198
|
backgroundColor: PropTypes.string
|
|
195
199
|
};
|
|
196
|
-
CarouselItem.displayName = '
|
|
197
|
-
export default CarouselItem;
|
|
200
|
+
CarouselItem.displayName = 'CarouselItem';
|
|
@@ -3,13 +3,14 @@ import StyleSheet from "react-native-web/dist/exports/StyleSheet";
|
|
|
3
3
|
import View from "react-native-web/dist/exports/View";
|
|
4
4
|
import PropTypes from 'prop-types';
|
|
5
5
|
import { useCarousel } from '../CarouselContext';
|
|
6
|
-
import StepTracker from '../../StepTracker';
|
|
7
|
-
import StackView from '../../StackView';
|
|
8
|
-
import Spacer from '../../Spacer';
|
|
9
|
-
import Progress from '../../Progress';
|
|
10
|
-
import {
|
|
6
|
+
import { StepTracker } from '../../StepTracker/StepTracker';
|
|
7
|
+
import { StackView } from '../../StackView/StackView';
|
|
8
|
+
import { Spacer } from '../../Spacer/Spacer';
|
|
9
|
+
import { Progress } from '../../Progress/Progress';
|
|
10
|
+
import { ProgressBar } from '../../Progress/ProgressBar';
|
|
11
|
+
import { variantProp } from '../../utils/props/variantProp';
|
|
11
12
|
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
-
const CarouselStepTracker = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
13
|
+
export const CarouselStepTracker = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
13
14
|
let {
|
|
14
15
|
stepTrackerVariant,
|
|
15
16
|
progressBarVariant,
|
|
@@ -52,7 +53,7 @@ const CarouselStepTracker = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
52
53
|
children: /*#__PURE__*/_jsx(View, {
|
|
53
54
|
style: staticStyles.progress,
|
|
54
55
|
children: /*#__PURE__*/_jsx(Progress, {
|
|
55
|
-
children: /*#__PURE__*/_jsx(
|
|
56
|
+
children: /*#__PURE__*/_jsx(ProgressBar, {
|
|
56
57
|
offset: {
|
|
57
58
|
items: totalItems,
|
|
58
59
|
current: activeIndex + 1
|
|
@@ -94,5 +95,4 @@ const staticStyles = StyleSheet.create({
|
|
|
94
95
|
progress: {
|
|
95
96
|
width: 288
|
|
96
97
|
}
|
|
97
|
-
});
|
|
98
|
-
export default CarouselStepTracker;
|
|
98
|
+
});
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import View from "react-native-web/dist/exports/View";
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
|
-
import StackView from '../../StackView';
|
|
4
|
+
import { StackView } from '../../StackView/StackView';
|
|
5
5
|
import { useCarousel } from '../CarouselContext';
|
|
6
|
-
import CarouselTabsPanelItem from './CarouselTabsPanelItem';
|
|
6
|
+
import { CarouselTabsPanelItem } from './CarouselTabsPanelItem';
|
|
7
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
8
|
const selectTabPanelStyle = () => ({
|
|
9
9
|
backgroundColor: 'transparent'
|
|
10
10
|
});
|
|
11
|
-
const CarouselTabsPanel = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
11
|
+
export const CarouselTabsPanel = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
12
12
|
let {
|
|
13
13
|
items
|
|
14
14
|
} = _ref;
|
|
@@ -82,7 +82,6 @@ const CarouselTabsPanel = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
|
82
82
|
CarouselTabsPanel.displayName = 'CarouselTabsPanel';
|
|
83
83
|
CarouselTabsPanel.propTypes = {
|
|
84
84
|
items: PropTypes.arrayOf(PropTypes.shape(CarouselTabsPanelItem.propTypes || {})),
|
|
85
|
-
// Color defined by `
|
|
85
|
+
// Color defined by `CarouselItem` variant otherwise fallback to transparent
|
|
86
86
|
contentBackgroundColor: PropTypes.string
|
|
87
|
-
};
|
|
88
|
-
export default CarouselTabsPanel;
|
|
87
|
+
};
|
|
@@ -3,8 +3,16 @@ import PropTypes from 'prop-types';
|
|
|
3
3
|
import Pressable from "react-native-web/dist/exports/Pressable";
|
|
4
4
|
import Text from "react-native-web/dist/exports/Text";
|
|
5
5
|
import Platform from "react-native-web/dist/exports/Platform";
|
|
6
|
-
import { applyTextStyles
|
|
7
|
-
import {
|
|
6
|
+
import { applyTextStyles } from '../../ThemeProvider/utils/styles';
|
|
7
|
+
import { useThemeTokensCallback } from '../../ThemeProvider/useThemeTokens';
|
|
8
|
+
import { selectSystemProps } from '../../utils/props/selectSystemProps';
|
|
9
|
+
import { a11yProps } from '../../utils/props/a11yProps';
|
|
10
|
+
import { pressProps } from '../../utils/props/pressProps';
|
|
11
|
+
import { viewProps } from '../../utils/props/viewProps';
|
|
12
|
+
import { textProps } from '../../utils/props/textProps';
|
|
13
|
+
import { getTokensPropType } from '../../utils/props/tokens';
|
|
14
|
+
import { variantProp } from '../../utils/props/variantProp';
|
|
15
|
+
import { resolvePressableState } from '../../utils/pressability';
|
|
8
16
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
9
17
|
const [selectPressProps, pressPropTypes] = selectSystemProps([a11yProps, pressProps, viewProps]);
|
|
10
18
|
const [selectTextProps, textPropTypes] = selectSystemProps([textProps]);
|
|
@@ -60,7 +68,7 @@ const selectTextStyles = _ref2 => {
|
|
|
60
68
|
color
|
|
61
69
|
});
|
|
62
70
|
};
|
|
63
|
-
const CarouselTabsPanelItem = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
71
|
+
export const CarouselTabsPanelItem = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
64
72
|
let {
|
|
65
73
|
title,
|
|
66
74
|
selected,
|
|
@@ -114,5 +122,4 @@ CarouselTabsPanelItem.propTypes = {
|
|
|
114
122
|
selected: PropTypes.bool,
|
|
115
123
|
tokens: getTokensPropType('CarouselTabsPanelItem'),
|
|
116
124
|
variant: variantProp.propType
|
|
117
|
-
};
|
|
118
|
-
export default CarouselTabsPanelItem;
|
|
125
|
+
};
|
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
+
import StyleSheet from "react-native-web/dist/exports/StyleSheet";
|
|
3
4
|
import Pressable from "react-native-web/dist/exports/Pressable";
|
|
4
5
|
import Image from "react-native-web/dist/exports/Image";
|
|
6
|
+
import View from "react-native-web/dist/exports/View";
|
|
5
7
|
import { useCarousel } from './CarouselContext';
|
|
6
|
-
import { useThemeTokensCallback } from '../ThemeProvider';
|
|
7
|
-
import { useViewport } from '../ViewportProvider';
|
|
8
|
-
import {
|
|
8
|
+
import { useThemeTokensCallback } from '../ThemeProvider/useThemeTokens';
|
|
9
|
+
import { useViewport } from '../ViewportProvider/useViewport';
|
|
10
|
+
import { Icon } from '../Icon/Icon';
|
|
11
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
9
12
|
const selectPressableTokens = _ref => {
|
|
10
13
|
let {
|
|
11
14
|
borderColor,
|
|
@@ -23,17 +26,64 @@ const selectPressableTokens = _ref => {
|
|
|
23
26
|
};
|
|
24
27
|
};
|
|
25
28
|
|
|
29
|
+
// Play icon overlay appearance is consistent across all brands and is not theme-configurable.
|
|
30
|
+
// The circle occupies 55% of the thumbnail size, and the icon occupies 55% of the circle diameter.
|
|
31
|
+
const PLAY_ICON_RATIO = 0.55;
|
|
32
|
+
const PLAY_ICON_BORDER_RADIUS_DIVISOR = 2;
|
|
33
|
+
const selectImageStyles = size => ({
|
|
34
|
+
width: size,
|
|
35
|
+
height: size
|
|
36
|
+
});
|
|
37
|
+
const selectSelectedStyles = _ref2 => {
|
|
38
|
+
let {
|
|
39
|
+
selectedBorderColor,
|
|
40
|
+
selectedBorderWidth,
|
|
41
|
+
padding,
|
|
42
|
+
margin
|
|
43
|
+
} = _ref2;
|
|
44
|
+
return {
|
|
45
|
+
borderColor: selectedBorderColor,
|
|
46
|
+
borderWidth: selectedBorderWidth,
|
|
47
|
+
padding: padding - selectedBorderWidth,
|
|
48
|
+
marginBottom: margin + selectedBorderWidth
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
const selectNonSelectedStyles = _ref3 => {
|
|
52
|
+
let {
|
|
53
|
+
borderWidth,
|
|
54
|
+
padding,
|
|
55
|
+
margin,
|
|
56
|
+
selectedBorderWidth
|
|
57
|
+
} = _ref3;
|
|
58
|
+
return {
|
|
59
|
+
padding: padding - borderWidth,
|
|
60
|
+
marginBottom: margin + selectedBorderWidth
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
const selectPlayIconCircleStyles = thumbnailSize => {
|
|
64
|
+
const diameter = thumbnailSize * PLAY_ICON_RATIO;
|
|
65
|
+
return {
|
|
66
|
+
width: diameter,
|
|
67
|
+
height: diameter,
|
|
68
|
+
borderRadius: diameter / PLAY_ICON_BORDER_RADIUS_DIVISOR
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
const selectPlayIconTokens = thumbnailSize => ({
|
|
72
|
+
size: thumbnailSize * PLAY_ICON_RATIO * PLAY_ICON_RATIO
|
|
73
|
+
});
|
|
74
|
+
|
|
26
75
|
/**
|
|
27
|
-
* `
|
|
76
|
+
* `CarouselThumbnail` is used to wrap the content of an individual slide and is suppsoed to be the
|
|
28
77
|
* only top-level component passed to the `Carousel`
|
|
29
78
|
*/
|
|
30
|
-
const CarouselThumbnail = /*#__PURE__*/React.forwardRef((
|
|
79
|
+
export const CarouselThumbnail = /*#__PURE__*/React.forwardRef((_ref4, ref) => {
|
|
31
80
|
let {
|
|
32
81
|
accessibilityLabel,
|
|
33
82
|
alt,
|
|
34
83
|
index,
|
|
84
|
+
isVideo,
|
|
35
85
|
src
|
|
36
|
-
} =
|
|
86
|
+
} = _ref4;
|
|
37
87
|
const {
|
|
38
88
|
activeIndex,
|
|
39
89
|
itemLabel,
|
|
@@ -55,59 +105,100 @@ const CarouselThumbnail = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
|
55
105
|
selectedBorderColor,
|
|
56
106
|
selectedBorderWidth,
|
|
57
107
|
size,
|
|
58
|
-
margin
|
|
108
|
+
margin,
|
|
109
|
+
playIcon
|
|
59
110
|
} = getThumbnailTokens({
|
|
60
111
|
viewport
|
|
61
112
|
});
|
|
62
|
-
const styles = {
|
|
63
|
-
image: {
|
|
64
|
-
height: size,
|
|
65
|
-
width: size
|
|
66
|
-
},
|
|
67
|
-
selected: {
|
|
68
|
-
borderColor: selectedBorderColor,
|
|
69
|
-
borderWidth: selectedBorderWidth,
|
|
70
|
-
padding: padding - selectedBorderWidth,
|
|
71
|
-
marginBottom: margin + selectedBorderWidth
|
|
72
|
-
},
|
|
73
|
-
nonSelected: {
|
|
74
|
-
padding: padding - borderWidth,
|
|
75
|
-
marginBottom: margin + selectedBorderWidth
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
113
|
return /*#__PURE__*/_jsx(Pressable, {
|
|
79
114
|
onKeyDown: handleKeyDown,
|
|
80
115
|
onPress: handlePress,
|
|
81
|
-
style:
|
|
116
|
+
style: _ref5 => {
|
|
82
117
|
let {
|
|
83
118
|
hovered,
|
|
84
119
|
pressed,
|
|
85
120
|
focused
|
|
86
|
-
} =
|
|
121
|
+
} = _ref5;
|
|
87
122
|
const pressableStyles = selectPressableTokens(getThumbnailTokens({
|
|
88
123
|
hover: hovered,
|
|
89
124
|
pressed,
|
|
90
125
|
focus: focused
|
|
91
126
|
}));
|
|
92
|
-
return [pressableStyles, index === activeIndex ? [
|
|
93
|
-
|
|
94
|
-
|
|
127
|
+
return [pressableStyles, index === activeIndex ? [selectSelectedStyles({
|
|
128
|
+
selectedBorderColor,
|
|
129
|
+
selectedBorderWidth,
|
|
130
|
+
padding,
|
|
131
|
+
margin
|
|
132
|
+
}), staticStyles.selectedPressableOutline] : selectNonSelectedStyles({
|
|
133
|
+
borderWidth,
|
|
134
|
+
padding,
|
|
135
|
+
margin,
|
|
136
|
+
selectedBorderWidth
|
|
137
|
+
})];
|
|
95
138
|
},
|
|
96
139
|
ref: ref,
|
|
97
|
-
children: /*#__PURE__*/
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
140
|
+
children: /*#__PURE__*/_jsxs(View, {
|
|
141
|
+
style: [staticStyles.imageContainer, selectImageStyles(size)],
|
|
142
|
+
children: [/*#__PURE__*/_jsx(Image, {
|
|
143
|
+
accessibilityIgnoresInvertColors: true,
|
|
144
|
+
accessibilityLabel: accessibilityLabel ?? alt,
|
|
145
|
+
source: src,
|
|
146
|
+
style: selectImageStyles(size),
|
|
147
|
+
title: thumbnailTitle
|
|
148
|
+
}), isVideo && playIcon && /*#__PURE__*/_jsx(View, {
|
|
149
|
+
style: staticStyles.playIconOverlayContainer,
|
|
150
|
+
testID: `play-icon-overlay-${index}`,
|
|
151
|
+
children: /*#__PURE__*/_jsx(View, {
|
|
152
|
+
style: [selectPlayIconCircleStyles(size), staticStyles.playIconCircleBackground],
|
|
153
|
+
children: /*#__PURE__*/_jsx(Icon, {
|
|
154
|
+
icon: playIcon,
|
|
155
|
+
tokens: {
|
|
156
|
+
...selectPlayIconTokens(size),
|
|
157
|
+
color: staticStyles.playIconSymbol.color
|
|
158
|
+
}
|
|
159
|
+
})
|
|
160
|
+
})
|
|
161
|
+
})]
|
|
103
162
|
})
|
|
104
163
|
}, src);
|
|
105
164
|
});
|
|
106
165
|
CarouselThumbnail.displayName = 'CarouselThumbnail';
|
|
107
166
|
CarouselThumbnail.propTypes = {
|
|
167
|
+
/** Accessibility label for screen readers, overrides the alt text */
|
|
108
168
|
accessibilityLabel: PropTypes.string,
|
|
169
|
+
/** Alt text for the thumbnail image */
|
|
109
170
|
alt: PropTypes.string,
|
|
171
|
+
/** Zero-based index of this thumbnail within the carousel */
|
|
110
172
|
index: PropTypes.number,
|
|
111
|
-
|
|
173
|
+
/**
|
|
174
|
+
* When true, renders a play icon overlay on the thumbnail to indicate that the slide contains a video.
|
|
175
|
+
*/
|
|
176
|
+
isVideo: PropTypes.bool,
|
|
177
|
+
/** Image source URI (web) or local asset require() (native) */
|
|
178
|
+
src: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
112
179
|
};
|
|
113
|
-
|
|
180
|
+
const staticStyles = StyleSheet.create({
|
|
181
|
+
imageContainer: {
|
|
182
|
+
position: 'relative'
|
|
183
|
+
},
|
|
184
|
+
playIconOverlayContainer: {
|
|
185
|
+
position: 'absolute',
|
|
186
|
+
top: 0,
|
|
187
|
+
left: 0,
|
|
188
|
+
right: 0,
|
|
189
|
+
bottom: 0,
|
|
190
|
+
justifyContent: 'center',
|
|
191
|
+
alignItems: 'center'
|
|
192
|
+
},
|
|
193
|
+
selectedPressableOutline: {
|
|
194
|
+
outlineStyle: 'none'
|
|
195
|
+
},
|
|
196
|
+
playIconCircleBackground: {
|
|
197
|
+
backgroundColor: 'rgba(0, 0, 0, 0.6)',
|
|
198
|
+
justifyContent: 'center',
|
|
199
|
+
alignItems: 'center'
|
|
200
|
+
},
|
|
201
|
+
playIconSymbol: {
|
|
202
|
+
color: 'rgb(255, 255, 255)'
|
|
203
|
+
}
|
|
204
|
+
});
|
|
@@ -2,12 +2,12 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import View from "react-native-web/dist/exports/View";
|
|
4
4
|
import { useCarousel } from './CarouselContext';
|
|
5
|
-
import CarouselThumbnail from './CarouselThumbnail';
|
|
6
|
-
import { StackWrap } from '../StackView';
|
|
7
|
-
import { useThemeTokens } from '../ThemeProvider';
|
|
8
|
-
import { useViewport } from '../ViewportProvider';
|
|
5
|
+
import { CarouselThumbnail } from './CarouselThumbnail';
|
|
6
|
+
import { StackWrap } from '../StackView/StackWrap';
|
|
7
|
+
import { useThemeTokens } from '../ThemeProvider/useThemeTokens';
|
|
8
|
+
import { useViewport } from '../ViewportProvider/useViewport';
|
|
9
9
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
10
|
-
const CarouselThumbnailNavigation = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
10
|
+
export const CarouselThumbnailNavigation = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
11
11
|
let {
|
|
12
12
|
thumbnails = []
|
|
13
13
|
} = _ref;
|
|
@@ -45,12 +45,14 @@ const CarouselThumbnailNavigation = /*#__PURE__*/React.forwardRef((_ref, ref) =>
|
|
|
45
45
|
let {
|
|
46
46
|
accessibilityLabel,
|
|
47
47
|
alt,
|
|
48
|
+
isVideo,
|
|
48
49
|
src
|
|
49
50
|
} = _ref2;
|
|
50
51
|
return /*#__PURE__*/_jsx(CarouselThumbnail, {
|
|
51
52
|
accessibilityLabel: accessibilityLabel,
|
|
52
53
|
alt: alt,
|
|
53
54
|
index: index,
|
|
55
|
+
isVideo: isVideo,
|
|
54
56
|
src: src
|
|
55
57
|
}, src);
|
|
56
58
|
})
|
|
@@ -63,9 +65,13 @@ CarouselThumbnailNavigation.propTypes = {
|
|
|
63
65
|
* An array of objects containing information on the thumbnail images.
|
|
64
66
|
*/
|
|
65
67
|
thumbnails: PropTypes.arrayOf(PropTypes.shape({
|
|
68
|
+
/** Accessibility label for the thumbnail image, used by assistive technologies. */
|
|
66
69
|
accessibilityLabel: PropTypes.string,
|
|
70
|
+
/** Alternative text for the thumbnail image, displayed when the image cannot be rendered. */
|
|
67
71
|
alt: PropTypes.string,
|
|
68
|
-
|
|
72
|
+
/** When true, renders a play icon overlay on the thumbnail to indicate that the slide contains a video. */
|
|
73
|
+
isVideo: PropTypes.bool,
|
|
74
|
+
/** URL or path of the thumbnail image. When used with `isVideo`, this should be the video's poster/preview image. */
|
|
75
|
+
src: PropTypes.oneOfType([PropTypes.string, PropTypes.number])
|
|
69
76
|
})).isRequired
|
|
70
|
-
};
|
|
71
|
-
export default CarouselThumbnailNavigation;
|
|
77
|
+
};
|