@telus-uds/components-base 2.0.0 → 2.0.2
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 +1046 -3
- package/README.md +35 -0
- package/babel.config.cjs +35 -0
- package/{jest.config-android.js → jest.config-android.cjs} +1 -1
- package/{jest.config-ios.js → jest.config-ios.cjs} +1 -1
- package/{jest.config-web.js → jest.config-web.cjs} +1 -1
- package/jest.config.cjs +40 -0
- package/jest.setup.js +7 -0
- package/lib/A11yInfoProvider/index.js +33 -64
- package/lib/A11yText/index.js +29 -40
- package/lib/ActionCard/ActionCard.js +342 -0
- package/lib/ActionCard/index.js +2 -0
- package/lib/ActivityIndicator/Spinner.js +27 -42
- package/lib/ActivityIndicator/Spinner.native.js +37 -70
- package/lib/ActivityIndicator/index.js +17 -33
- package/lib/ActivityIndicator/shared.js +12 -26
- package/lib/Autocomplete/Autocomplete.js +478 -0
- package/lib/Autocomplete/Loading.js +35 -0
- package/lib/Autocomplete/Suggestions.js +64 -0
- package/lib/Autocomplete/constants.js +4 -0
- package/lib/Autocomplete/dictionary.js +12 -0
- package/lib/Autocomplete/index.js +2 -0
- package/lib/Badge/Badge.js +102 -0
- package/lib/Badge/index.js +2 -0
- package/lib/BaseProvider/HydrationContext.js +17 -43
- package/lib/BaseProvider/index.js +24 -41
- package/lib/Box/Box.js +191 -93
- package/lib/Box/backgroundImageStylesMap.js +94 -0
- package/lib/Box/index.js +2 -13
- package/lib/Button/Button.js +21 -33
- package/lib/Button/ButtonBase.js +143 -136
- package/lib/Button/ButtonDropdown.js +41 -75
- package/lib/Button/ButtonGroup.js +92 -110
- package/lib/Button/ButtonLink.js +25 -36
- package/lib/Button/index.js +5 -39
- package/lib/Button/propTypes.js +16 -40
- package/lib/Card/Card.js +266 -45
- package/lib/Card/CardBase.js +67 -40
- package/lib/Card/PressableCardBase.js +35 -67
- package/lib/Card/index.js +4 -40
- package/lib/CardGroup/CardGroup.js +210 -0
- package/lib/CardGroup/dictionary.js +8 -0
- package/lib/CardGroup/index.js +2 -0
- package/lib/Carousel/Carousel.js +476 -332
- package/lib/Carousel/CarouselContext.js +20 -42
- package/lib/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +18 -39
- package/lib/Carousel/CarouselItem/CarouselItem.js +106 -58
- package/lib/Carousel/CarouselItem/index.js +2 -13
- package/lib/Carousel/CarouselStepTracker/CarouselStepTracker.js +21 -32
- package/lib/Carousel/CarouselStepTracker/index.js +2 -13
- package/lib/Carousel/CarouselTabs/CarouselTabs.js +17 -36
- package/lib/Carousel/CarouselTabs/CarouselTabsPanel.js +36 -51
- package/lib/Carousel/CarouselTabs/CarouselTabsPanelItem.js +25 -55
- package/lib/Carousel/CarouselTabs/index.js +2 -13
- package/lib/Carousel/CarouselThumbnail.js +76 -62
- package/lib/Carousel/CarouselThumbnailNavigation.js +31 -47
- package/lib/Carousel/dictionary.js +13 -16
- package/lib/Carousel/index.js +3 -41
- package/lib/Checkbox/Checkbox.js +64 -107
- package/lib/Checkbox/CheckboxButton.js +163 -0
- package/lib/Checkbox/CheckboxGroup.js +64 -90
- package/lib/Checkbox/CheckboxInput.js +16 -42
- package/lib/Checkbox/CheckboxInput.native.js +1 -10
- package/lib/Checkbox/index.js +3 -21
- package/{lib-module/RadioCard/RadioCard.js → lib/CheckboxCard/CheckboxCard.js} +43 -88
- package/lib/CheckboxCard/index.js +2 -0
- package/lib/CheckboxCardGroup/CheckboxCardGroup.js +206 -0
- package/lib/CheckboxCardGroup/index.js +2 -0
- package/lib/ColourToggle/ColourBubble.js +126 -0
- package/lib/ColourToggle/ColourToggle.js +91 -0
- package/lib/ColourToggle/index.js +2 -0
- package/lib/Divider/Divider.js +37 -54
- package/lib/Divider/index.js +2 -13
- package/lib/DownloadApp/DownloadApp.js +160 -0
- package/lib/DownloadApp/dictionary.js +10 -0
- package/lib/DownloadApp/index.js +2 -0
- package/lib/ExpandCollapse/Accordion.js +6 -22
- package/lib/ExpandCollapse/Control.js +72 -67
- package/lib/ExpandCollapse/ExpandCollapse.js +39 -56
- package/lib/ExpandCollapse/Panel.js +144 -86
- package/lib/ExpandCollapse/dictionary.js +10 -0
- package/lib/ExpandCollapse/index.js +7 -25
- package/lib/Feedback/Feedback.js +41 -69
- package/lib/Feedback/index.js +2 -13
- package/lib/Fieldset/Fieldset.js +81 -90
- package/lib/Fieldset/FieldsetContainer.js +26 -33
- package/lib/Fieldset/FieldsetContainer.native.js +18 -27
- package/lib/Fieldset/Legend.js +9 -26
- package/lib/Fieldset/Legend.native.js +10 -30
- package/lib/Fieldset/cssReset.js +2 -9
- package/lib/Fieldset/index.js +2 -13
- package/lib/FileUpload/FileUpload.js +328 -0
- package/lib/FileUpload/NotificationContent.js +54 -0
- package/lib/FileUpload/dictionary.js +40 -0
- package/lib/FileUpload/index.js +2 -0
- package/lib/FlexGrid/Col/Col.js +104 -148
- package/lib/FlexGrid/Col/index.js +2 -13
- package/lib/FlexGrid/FlexGrid.js +92 -110
- package/lib/FlexGrid/Row/Row.js +82 -108
- package/lib/FlexGrid/Row/index.js +2 -13
- package/lib/FlexGrid/helpers/index.js +1 -12
- package/lib/FlexGrid/index.js +2 -13
- package/lib/FlexGrid/providers/GutterContext.js +3 -15
- package/lib/Footnote/Footnote.js +316 -0
- package/lib/Footnote/FootnoteLink.js +107 -0
- package/lib/Footnote/dictionary.js +12 -0
- package/lib/Footnote/index.js +4 -0
- package/lib/HorizontalScroll/HorizontalScroll.js +48 -87
- package/lib/HorizontalScroll/HorizontalScrollButton.js +26 -52
- package/lib/HorizontalScroll/ScrollViewEnd.js +17 -38
- package/lib/HorizontalScroll/ScrollViewEnd.native.js +8 -26
- package/lib/HorizontalScroll/dictionary.js +2 -9
- package/lib/HorizontalScroll/index.js +11 -35
- package/lib/HorizontalScroll/itemPositions.js +25 -46
- package/lib/Icon/Icon.js +59 -48
- package/lib/Icon/IconText.js +59 -55
- package/lib/Icon/index.js +4 -31
- package/lib/IconButton/IconButton.js +127 -85
- package/lib/IconButton/index.js +2 -13
- package/lib/InputLabel/InputLabel.js +42 -76
- package/lib/InputLabel/LabelContent.js +10 -26
- package/lib/InputLabel/LabelContent.native.js +8 -27
- package/lib/InputLabel/index.js +2 -13
- package/lib/InputSupports/InputSupports.js +39 -56
- package/lib/InputSupports/index.js +2 -13
- package/lib/InputSupports/useInputSupports.js +7 -19
- package/lib/Link/ChevronLink.js +35 -38
- package/lib/Link/InlinePressable.js +14 -29
- package/lib/Link/InlinePressable.native.js +20 -40
- package/lib/Link/Link.js +9 -27
- package/lib/Link/LinkBase.js +96 -103
- package/lib/Link/TextButton.js +19 -29
- package/lib/Link/index.js +5 -39
- package/lib/List/List.js +39 -50
- package/lib/List/ListItem.js +13 -37
- package/lib/List/ListItemBase.js +72 -70
- package/lib/List/ListItemContent.js +36 -48
- package/lib/List/ListItemMark.js +42 -75
- package/lib/List/PressableListItemBase.js +35 -69
- package/lib/List/index.js +5 -28
- package/lib/Listbox/GroupControl.js +105 -0
- package/lib/Listbox/Listbox.js +171 -0
- package/lib/Listbox/ListboxContext.js +4 -0
- package/lib/Listbox/ListboxGroup.js +125 -0
- package/lib/Listbox/ListboxItem.js +76 -0
- package/lib/Listbox/ListboxOverlay.js +77 -0
- package/lib/Listbox/PressableItem.js +139 -0
- package/lib/Listbox/index.js +2 -0
- package/lib/Modal/Modal.js +212 -96
- package/lib/Modal/ModalContent.js +179 -0
- package/lib/Modal/WebModal.js +76 -0
- package/lib/Modal/dictionary.js +2 -9
- package/lib/Modal/index.js +2 -13
- package/lib/MultiSelectFilter/ModalOverlay.js +114 -95
- package/lib/MultiSelectFilter/MultiSelectFilter.js +380 -170
- package/lib/MultiSelectFilter/dictionary.js +2 -9
- package/lib/MultiSelectFilter/index.js +2 -13
- package/lib/Notification/Notification.js +290 -116
- package/lib/Notification/dictionary.js +2 -9
- package/lib/Notification/index.js +2 -13
- package/lib/OrderedList/Item.js +159 -0
- package/lib/OrderedList/ItemBase.js +43 -0
- package/lib/OrderedList/OrderedList.js +64 -0
- package/lib/OrderedList/OrderedListBase.js +36 -0
- package/lib/OrderedList/index.js +2 -0
- package/lib/Pagination/PageButton.js +38 -57
- package/lib/Pagination/Pagination.js +124 -95
- package/lib/Pagination/SideButton.js +25 -58
- package/lib/Pagination/constants.js +3 -0
- package/lib/Pagination/dictionary.js +5 -12
- package/lib/Pagination/index.js +2 -13
- package/lib/Pagination/usePagination.js +20 -23
- package/lib/Portal/Portal.js +50 -0
- package/lib/Portal/Portal.native.js +2 -0
- package/lib/Portal/index.js +2 -0
- package/lib/PriceLockup/PriceLockup.js +223 -0
- package/lib/PriceLockup/index.js +2 -0
- package/lib/PriceLockup/utils/renderFootnoteContent.js +85 -0
- package/lib/PriceLockup/utils/renderFootnoteLinks.js +28 -0
- package/lib/PriceLockup/utils/renderPrice.js +139 -0
- package/lib/PriceLockup/utils/renderTypography.js +23 -0
- package/lib/ProductCard/ProductCard.js +231 -0
- package/lib/ProductCard/dictionary.js +38 -0
- package/lib/ProductCard/index.js +2 -0
- package/lib/ProductCardGroup/ProductCardGroup.js +70 -0
- package/lib/ProductCardGroup/index.js +2 -0
- package/lib/Progress/Progress.js +22 -43
- package/lib/Progress/ProgressBar.js +31 -60
- package/lib/Progress/ProgressBarBackground.js +13 -35
- package/lib/Progress/index.js +4 -16
- package/lib/QuickLinks/QuickLinks.js +31 -44
- package/lib/QuickLinks/QuickLinksCard.js +16 -30
- package/lib/QuickLinks/QuickLinksItem.js +22 -44
- package/lib/QuickLinks/index.js +4 -16
- package/lib/QuickLinksFeature/QuickLinksFeature.js +25 -47
- package/lib/QuickLinksFeature/QuickLinksFeatureItem.js +88 -99
- package/lib/QuickLinksFeature/index.js +4 -16
- package/lib/Radio/Radio.js +63 -95
- package/lib/Radio/RadioButton.js +94 -76
- package/lib/Radio/RadioGroup.js +70 -94
- package/lib/Radio/RadioInput.js +18 -46
- package/lib/Radio/RadioInput.native.js +1 -10
- package/lib/Radio/index.js +3 -21
- package/lib/RadioCard/RadioCard.js +47 -90
- package/lib/RadioCard/RadioCardGroup.js +66 -91
- package/lib/RadioCard/index.js +3 -21
- package/lib/Responsive/Responsive.js +48 -41
- package/{lib-module/Responsive/Responsive.js → lib/Responsive/ResponsiveProp.js} +13 -20
- package/lib/Responsive/ResponsiveWithMediaQueryStyleSheet.js +68 -0
- package/lib/Responsive/index.js +2 -13
- package/lib/Search/Search.js +73 -96
- package/lib/Search/dictionary.js +2 -9
- package/lib/Search/index.js +2 -13
- package/lib/Select/Group.js +15 -25
- package/lib/Select/Group.native.js +8 -18
- package/lib/Select/Item.js +14 -23
- package/lib/Select/Item.native.js +1 -10
- package/lib/Select/Picker.js +71 -60
- package/lib/Select/Picker.native.js +40 -65
- package/lib/Select/Select.js +70 -109
- package/lib/Select/constants.js +4 -14
- package/lib/Select/index.js +6 -19
- package/lib/SideNav/Item.js +41 -65
- package/lib/SideNav/ItemContent.js +22 -41
- package/lib/SideNav/ItemsGroup.js +43 -60
- package/lib/SideNav/SideNav.js +42 -68
- package/lib/SideNav/index.js +1 -15
- package/lib/Skeleton/Skeleton.js +54 -86
- package/lib/Skeleton/index.js +2 -13
- package/lib/Skeleton/skeleton.constant.js +2 -12
- package/lib/Skeleton/skeletonWebAnimation.js +12 -25
- package/lib/Skeleton/useSkeletonNativeAnimation.js +22 -33
- package/lib/SkipLink/SkipLink.js +48 -75
- package/lib/SkipLink/index.js +2 -13
- package/lib/Spacer/Spacer.js +17 -41
- package/lib/Spacer/index.js +2 -13
- package/lib/StackView/StackView.js +34 -59
- package/lib/StackView/StackWrap.js +23 -44
- package/lib/StackView/StackWrap.native.js +2 -12
- package/lib/StackView/StackWrapBox.js +32 -58
- package/lib/StackView/StackWrapGap.js +22 -45
- package/lib/StackView/common.js +4 -19
- package/lib/StackView/getStackedContent.js +21 -41
- package/lib/StackView/index.js +5 -29
- package/lib/Status/Status.js +165 -0
- package/lib/Status/index.js +2 -0
- package/lib/StepTracker/Step.js +70 -79
- package/lib/StepTracker/StepTracker.js +67 -79
- package/lib/StepTracker/dictionary.js +26 -13
- package/lib/StepTracker/index.js +2 -13
- package/lib/TabBar/TabBar.js +125 -0
- package/lib/TabBar/TabBarItem.js +175 -0
- package/lib/TabBar/index.js +2 -0
- package/lib/Tabs/Tabs.js +75 -71
- package/lib/Tabs/TabsItem.js +70 -91
- package/lib/Tabs/index.js +2 -13
- package/lib/Tags/Tags.js +59 -97
- package/lib/Tags/index.js +2 -13
- package/lib/TextInput/TextArea.js +27 -46
- package/lib/TextInput/TextInput.js +38 -54
- package/lib/TextInput/TextInputBase.js +210 -137
- package/lib/TextInput/dictionary.js +8 -11
- package/lib/TextInput/index.js +3 -23
- package/lib/TextInput/propTypes.js +11 -21
- package/lib/ThemeProvider/ThemeProvider.js +40 -52
- package/lib/ThemeProvider/index.js +7 -61
- package/lib/ThemeProvider/useResponsiveThemeTokens.js +81 -0
- package/lib/ThemeProvider/useSetTheme.js +10 -20
- package/lib/ThemeProvider/useTheme.js +5 -17
- package/lib/ThemeProvider/useThemeTokens.js +16 -33
- package/lib/ThemeProvider/utils/index.js +2 -31
- package/lib/ThemeProvider/utils/styles.js +48 -60
- package/lib/ThemeProvider/utils/theme-tokens.js +37 -78
- package/lib/Timeline/Timeline.js +39 -63
- package/lib/Timeline/index.js +2 -13
- package/lib/ToggleSwitch/ToggleSwitch.js +105 -108
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +47 -91
- package/lib/ToggleSwitch/index.js +3 -23
- package/lib/Tooltip/Backdrop.js +22 -29
- package/lib/Tooltip/Backdrop.native.js +14 -33
- package/lib/Tooltip/Tooltip.js +65 -92
- package/lib/Tooltip/Tooltip.native.js +107 -110
- package/lib/Tooltip/dictionary.js +2 -9
- package/lib/Tooltip/getTooltipPosition.js +35 -49
- package/lib/Tooltip/index.js +5 -18
- package/lib/Tooltip/shared.js +26 -24
- package/lib/TooltipButton/TooltipButton.js +48 -53
- package/lib/TooltipButton/index.js +2 -13
- package/lib/Typography/Typography.js +164 -87
- package/lib/Typography/index.js +2 -13
- package/lib/Validator/Validator.js +222 -0
- package/lib/Validator/index.js +2 -0
- package/lib/ViewportProvider/ViewportProvider.js +11 -31
- package/lib/ViewportProvider/index.js +3 -28
- package/lib/ViewportProvider/useViewport.js +3 -15
- package/lib/ViewportProvider/useViewportListener.js +13 -29
- package/lib/index.js +71 -681
- package/lib/server.js +4 -0
- package/lib/utils/BaseView/BaseView.js +14 -36
- package/lib/utils/BaseView/BaseView.native.js +2 -13
- package/lib/utils/BaseView/index.js +2 -13
- package/lib/utils/a11y/index.js +2 -31
- package/lib/utils/a11y/semantics.js +18 -60
- package/lib/utils/a11y/textSize.js +8 -24
- package/lib/utils/animation/index.js +2 -15
- package/lib/utils/animation/useVerticalExpandAnimation.js +27 -47
- package/lib/utils/children.js +25 -47
- package/lib/utils/containUniqueFields.js +3 -13
- package/lib/utils/convertFromMegaByteToByte.js +10 -0
- package/lib/utils/floating-ui/index.js +1 -43
- package/lib/utils/floating-ui/index.native.js +1 -43
- package/lib/utils/formatImageSource.js +27 -0
- package/lib/utils/hasOwnProperty.js +1 -8
- package/lib/utils/htmlAttrs.js +23 -0
- package/lib/utils/index.js +25 -222
- package/lib/utils/info/index.js +6 -17
- package/lib/utils/info/platform/index.js +8 -17
- package/lib/utils/info/platform/platform.android.js +1 -8
- package/lib/utils/info/platform/platform.ios.js +1 -8
- package/lib/utils/info/platform/platform.js +1 -8
- package/lib/utils/info/platform/platform.native.js +1 -8
- package/lib/utils/info/versions.js +4 -14
- package/lib/utils/input.js +38 -52
- package/lib/utils/pressability.js +18 -40
- package/lib/utils/props/a11yProps.js +105 -119
- package/lib/utils/props/clickProps.js +4 -16
- package/lib/utils/props/componentPropType.js +4 -24
- package/lib/utils/props/copyPropTypes.js +2 -14
- package/lib/utils/props/getPropSelector.js +15 -21
- package/lib/utils/props/handlerProps.js +28 -52
- package/lib/utils/props/hrefAttrsProp.js +6 -17
- package/lib/utils/props/index.js +19 -190
- package/lib/utils/props/inputSupportsProps.js +22 -27
- package/lib/utils/props/linkProps.js +17 -35
- package/lib/utils/props/paddingProp.js +8 -19
- package/lib/utils/props/pressProps.js +23 -38
- package/lib/utils/props/rectProp.js +8 -19
- package/lib/utils/props/responsiveProps.js +6 -18
- package/lib/utils/props/selectSystemProps.js +7 -15
- package/lib/utils/props/spacingProps.js +13 -27
- package/lib/utils/props/textInputProps.js +64 -90
- package/lib/utils/props/textProps.js +23 -34
- package/lib/utils/props/tokens.js +26 -55
- package/lib/utils/props/variantProp.js +4 -14
- package/lib/utils/props/viewProps.js +10 -23
- package/lib/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +48 -0
- package/lib/utils/ssr-media-query/create-stylesheet/index.android.js +2 -0
- package/lib/utils/ssr-media-query/create-stylesheet/index.ios.js +2 -0
- package/lib/utils/ssr-media-query/create-stylesheet/index.js +36 -0
- package/lib/utils/ssr-media-query/hash.js +13 -0
- package/lib/utils/ssr-media-query/index.js +6 -0
- package/lib/utils/ssr-media-query/utils/common.js +33 -0
- package/lib/utils/ssr-media-query/utils/create-declaration-block.js +16 -0
- package/lib/utils/ssr-media-query/utils/create-media-query-styles.js +60 -0
- package/lib/utils/ssr-media-query/utils/hyphenate-style-name.js +12 -0
- package/lib/utils/ssr-media-query/utils/inject.js +39 -0
- package/lib/utils/ssr.js +27 -55
- package/lib/utils/transformGradient.js +15 -0
- package/lib/utils/useCopy.js +4 -15
- package/lib/utils/useHash.js +11 -23
- package/lib/utils/useHash.native.js +1 -10
- package/lib/utils/useOverlaidPosition.js +214 -0
- package/lib/utils/useResponsiveProp.js +13 -29
- package/lib/utils/useSafeLayoutEffect.js +10 -22
- package/lib/utils/useScrollBlocking.js +13 -28
- package/lib/utils/useScrollBlocking.native.js +1 -10
- package/lib/utils/useSpacingScale.js +12 -24
- package/lib/utils/useUniqueId.js +4 -15
- package/lib/utils/withLinkRouter.js +23 -36
- package/package.json +32 -22
- package/src/A11yInfoProvider/index.jsx +13 -20
- package/src/A11yText/index.jsx +14 -4
- package/src/ActionCard/ActionCard.jsx +306 -0
- package/src/ActionCard/index.js +3 -0
- package/src/ActivityIndicator/Spinner.jsx +3 -2
- package/src/ActivityIndicator/Spinner.native.jsx +2 -2
- package/src/ActivityIndicator/index.jsx +12 -3
- package/src/Autocomplete/Autocomplete.jsx +486 -0
- package/src/Autocomplete/Loading.jsx +21 -0
- package/src/Autocomplete/Suggestions.jsx +54 -0
- package/src/Autocomplete/constants.js +4 -0
- package/src/Autocomplete/dictionary.js +12 -0
- package/src/Autocomplete/index.js +3 -0
- package/src/Badge/Badge.jsx +76 -0
- package/src/Badge/index.js +3 -0
- package/src/BaseProvider/HydrationContext.jsx +5 -5
- package/src/BaseProvider/index.jsx +5 -2
- package/src/Box/Box.jsx +162 -20
- package/src/Box/backgroundImageStylesMap.js +21 -0
- package/src/Button/Button.jsx +12 -7
- package/src/Button/ButtonBase.jsx +76 -35
- package/src/Button/ButtonDropdown.jsx +5 -2
- package/src/Button/ButtonGroup.jsx +20 -3
- package/src/Button/ButtonLink.jsx +10 -4
- package/src/Card/Card.jsx +269 -17
- package/src/Card/CardBase.jsx +79 -28
- package/src/Card/PressableCardBase.jsx +21 -5
- package/src/CardGroup/CardGroup.jsx +249 -0
- package/src/CardGroup/dictionary.js +8 -0
- package/src/CardGroup/index.js +3 -0
- package/src/Carousel/Carousel.jsx +406 -117
- package/src/Carousel/CarouselFirstFocus/CarouselFirstFocus.jsx +2 -2
- package/src/Carousel/CarouselItem/CarouselItem.jsx +99 -18
- package/src/Carousel/CarouselStepTracker/CarouselStepTracker.jsx +15 -5
- package/src/Carousel/CarouselTabs/CarouselTabs.jsx +2 -2
- package/src/Carousel/CarouselTabs/CarouselTabsPanel.jsx +22 -12
- package/src/Carousel/CarouselTabs/CarouselTabsPanelItem.jsx +3 -3
- package/src/Carousel/CarouselThumbnail.jsx +45 -27
- package/src/Carousel/CarouselThumbnailNavigation.jsx +11 -7
- package/src/Carousel/dictionary.js +11 -7
- package/src/Checkbox/Checkbox.jsx +8 -4
- package/src/Checkbox/CheckboxButton.jsx +178 -0
- package/src/Checkbox/CheckboxGroup.jsx +24 -4
- package/src/Checkbox/CheckboxInput.jsx +15 -12
- package/src/CheckboxCard/CheckboxCard.jsx +190 -0
- package/src/CheckboxCard/index.js +3 -0
- package/src/CheckboxCardGroup/CheckboxCardGroup.jsx +231 -0
- package/src/CheckboxCardGroup/index.js +3 -0
- package/src/ColourToggle/ColourBubble.jsx +112 -0
- package/src/ColourToggle/ColourToggle.jsx +83 -0
- package/src/ColourToggle/index.js +3 -0
- package/src/Divider/Divider.jsx +5 -2
- package/src/DownloadApp/DownloadApp.jsx +165 -0
- package/src/DownloadApp/dictionary.js +10 -0
- package/src/DownloadApp/index.js +3 -0
- package/src/ExpandCollapse/Accordion.jsx +4 -2
- package/src/ExpandCollapse/Control.jsx +44 -14
- package/src/ExpandCollapse/ExpandCollapse.jsx +15 -7
- package/src/ExpandCollapse/Panel.jsx +119 -24
- package/src/ExpandCollapse/dictionary.js +10 -0
- package/src/Feedback/Feedback.jsx +3 -4
- package/src/Fieldset/Fieldset.jsx +47 -23
- package/src/Fieldset/FieldsetContainer.jsx +15 -7
- package/src/Fieldset/FieldsetContainer.native.jsx +15 -7
- package/src/Fieldset/Legend.jsx +2 -2
- package/src/Fieldset/Legend.native.jsx +2 -2
- package/src/FileUpload/FileUpload.jsx +396 -0
- package/src/FileUpload/NotificationContent.jsx +44 -0
- package/src/FileUpload/dictionary.js +40 -0
- package/src/FileUpload/index.js +3 -0
- package/src/FlexGrid/Col/Col.jsx +76 -79
- package/src/FlexGrid/FlexGrid.jsx +62 -43
- package/src/FlexGrid/Row/Row.jsx +60 -54
- package/src/Footnote/Footnote.jsx +326 -0
- package/src/Footnote/FootnoteLink.jsx +110 -0
- package/src/Footnote/dictionary.js +12 -0
- package/src/Footnote/index.js +6 -0
- package/src/HorizontalScroll/HorizontalScroll.jsx +8 -8
- package/src/HorizontalScroll/HorizontalScrollButton.jsx +2 -2
- package/src/HorizontalScroll/ScrollViewEnd.jsx +4 -8
- package/src/HorizontalScroll/ScrollViewEnd.native.jsx +2 -2
- package/src/Icon/Icon.jsx +53 -6
- package/src/Icon/IconText.jsx +46 -14
- package/src/IconButton/IconButton.jsx +116 -20
- package/src/InputLabel/InputLabel.jsx +8 -6
- package/src/InputLabel/LabelContent.jsx +2 -2
- package/src/InputLabel/LabelContent.native.jsx +2 -2
- package/src/InputSupports/InputSupports.jsx +22 -3
- package/src/Link/ChevronLink.jsx +24 -7
- package/src/Link/InlinePressable.jsx +23 -15
- package/src/Link/InlinePressable.native.jsx +12 -6
- package/src/Link/Link.jsx +2 -2
- package/src/Link/LinkBase.jsx +75 -31
- package/src/Link/TextButton.jsx +11 -4
- package/src/List/List.jsx +26 -8
- package/src/List/ListItem.jsx +3 -5
- package/src/List/ListItemBase.jsx +38 -9
- package/src/List/ListItemContent.jsx +24 -6
- package/src/List/ListItemMark.jsx +14 -13
- package/src/List/PressableListItemBase.jsx +4 -2
- package/src/Listbox/GroupControl.jsx +101 -0
- package/src/Listbox/Listbox.jsx +177 -0
- package/src/Listbox/ListboxContext.js +6 -0
- package/src/Listbox/ListboxGroup.jsx +127 -0
- package/src/Listbox/ListboxItem.jsx +87 -0
- package/src/Listbox/ListboxOverlay.jsx +81 -0
- package/src/Listbox/PressableItem.jsx +138 -0
- package/src/Listbox/index.js +3 -0
- package/src/Modal/Modal.jsx +190 -16
- package/src/Modal/ModalContent.jsx +180 -0
- package/src/Modal/WebModal.jsx +70 -0
- package/src/MultiSelectFilter/ModalOverlay.jsx +103 -30
- package/src/MultiSelectFilter/MultiSelectFilter.jsx +326 -68
- package/src/Notification/Notification.jsx +273 -49
- package/src/OrderedList/Item.jsx +147 -0
- package/src/OrderedList/ItemBase.jsx +43 -0
- package/src/OrderedList/OrderedList.jsx +64 -0
- package/src/OrderedList/OrderedListBase.jsx +33 -0
- package/src/OrderedList/index.js +3 -0
- package/src/Pagination/PageButton.jsx +14 -5
- package/src/Pagination/Pagination.jsx +83 -17
- package/src/Pagination/SideButton.jsx +2 -2
- package/src/Pagination/constants.js +3 -0
- package/src/Pagination/dictionary.js +3 -3
- package/src/Pagination/usePagination.js +14 -3
- package/src/Portal/Portal.jsx +52 -0
- package/src/Portal/Portal.native.jsx +3 -0
- package/src/Portal/index.js +3 -0
- package/src/PriceLockup/PriceLockup.jsx +237 -0
- package/src/PriceLockup/index.js +3 -0
- package/src/PriceLockup/utils/renderFootnoteContent.jsx +77 -0
- package/src/PriceLockup/utils/renderFootnoteLinks.jsx +38 -0
- package/src/PriceLockup/utils/renderPrice.jsx +201 -0
- package/src/PriceLockup/utils/renderTypography.jsx +13 -0
- package/src/ProductCard/ProductCard.jsx +199 -0
- package/src/ProductCard/dictionary.js +38 -0
- package/src/ProductCard/index.js +3 -0
- package/src/ProductCardGroup/ProductCardGroup.jsx +75 -0
- package/src/ProductCardGroup/index.js +3 -0
- package/src/Progress/Progress.jsx +8 -5
- package/src/Progress/ProgressBar.jsx +6 -4
- package/src/Progress/ProgressBarBackground.jsx +6 -4
- package/src/QuickLinks/QuickLinks.jsx +11 -2
- package/src/QuickLinks/QuickLinksCard.jsx +9 -3
- package/src/QuickLinks/QuickLinksItem.jsx +2 -2
- package/src/QuickLinksFeature/QuickLinksFeature.jsx +31 -27
- package/src/QuickLinksFeature/QuickLinksFeatureItem.jsx +43 -36
- package/src/Radio/Radio.jsx +24 -6
- package/src/Radio/RadioButton.jsx +58 -6
- package/src/Radio/RadioGroup.jsx +27 -5
- package/src/Radio/RadioInput.jsx +15 -14
- package/src/RadioCard/RadioCard.jsx +2 -2
- package/src/RadioCard/RadioCardGroup.jsx +25 -4
- package/src/Responsive/Responsive.jsx +43 -13
- package/src/Responsive/ResponsiveProp.jsx +33 -0
- package/src/Responsive/ResponsiveWithMediaQueryStyleSheet.jsx +67 -0
- package/src/Search/Search.jsx +10 -5
- package/src/Select/Group.jsx +12 -3
- package/src/Select/Group.native.jsx +3 -0
- package/src/Select/Item.jsx +10 -1
- package/src/Select/Picker.jsx +32 -5
- package/src/Select/Picker.native.jsx +3 -3
- package/src/Select/Select.jsx +27 -10
- package/src/SideNav/Item.jsx +12 -7
- package/src/SideNav/ItemContent.jsx +14 -6
- package/src/SideNav/ItemsGroup.jsx +15 -4
- package/src/SideNav/SideNav.jsx +11 -3
- package/src/Skeleton/Skeleton.jsx +19 -7
- package/src/Skeleton/skeleton.constant.js +0 -1
- package/src/Skeleton/skeletonWebAnimation.js +11 -11
- package/src/Skeleton/useSkeletonNativeAnimation.js +5 -4
- package/src/SkipLink/SkipLink.jsx +14 -14
- package/src/Spacer/Spacer.jsx +2 -2
- package/src/StackView/StackView.jsx +5 -4
- package/src/StackView/StackWrap.jsx +3 -3
- package/src/StackView/StackWrapBox.jsx +2 -2
- package/src/StackView/StackWrapGap.jsx +2 -2
- package/src/StackView/getStackedContent.jsx +16 -7
- package/src/Status/Status.jsx +153 -0
- package/src/Status/index.js +3 -0
- package/src/StepTracker/Step.jsx +102 -70
- package/src/StepTracker/StepTracker.jsx +28 -6
- package/src/StepTracker/dictionary.js +24 -4
- package/src/TabBar/TabBar.jsx +123 -0
- package/src/TabBar/TabBarItem.jsx +149 -0
- package/src/TabBar/index.js +3 -0
- package/src/Tabs/Tabs.jsx +37 -5
- package/src/Tabs/TabsItem.jsx +19 -7
- package/src/Tags/Tags.jsx +7 -3
- package/src/TextInput/TextArea.jsx +3 -3
- package/src/TextInput/TextInput.jsx +11 -7
- package/src/TextInput/TextInputBase.jsx +145 -29
- package/src/TextInput/dictionary.js +6 -2
- package/src/TextInput/propTypes.js +4 -0
- package/src/ThemeProvider/ThemeProvider.jsx +17 -7
- package/src/ThemeProvider/index.js +1 -0
- package/src/ThemeProvider/useResponsiveThemeTokens.js +85 -0
- package/src/ThemeProvider/utils/styles.js +34 -2
- package/src/Timeline/Timeline.jsx +10 -6
- package/src/ToggleSwitch/ToggleSwitch.jsx +28 -11
- package/src/ToggleSwitch/ToggleSwitchGroup.jsx +2 -2
- package/src/Tooltip/Tooltip.jsx +38 -9
- package/src/Tooltip/Tooltip.native.jsx +82 -20
- package/src/Tooltip/getTooltipPosition.js +12 -13
- package/src/Tooltip/shared.js +17 -0
- package/src/TooltipButton/TooltipButton.jsx +34 -8
- package/src/Typography/Typography.jsx +173 -29
- package/src/Validator/Validator.jsx +230 -0
- package/src/Validator/index.js +3 -0
- package/src/ViewportProvider/ViewportProvider.jsx +2 -2
- package/src/index.js +31 -12
- package/src/server.js +4 -0
- package/src/utils/BaseView/BaseView.jsx +2 -2
- package/src/utils/a11y/semantics.js +7 -14
- package/src/utils/animation/useVerticalExpandAnimation.js +3 -3
- package/src/utils/children.jsx +4 -4
- package/src/utils/convertFromMegaByteToByte.js +11 -0
- package/src/utils/formatImageSource.js +29 -0
- package/src/utils/htmlAttrs.js +29 -0
- package/src/utils/index.js +6 -1
- package/src/utils/props/handlerProps.js +5 -1
- package/src/utils/props/inputSupportsProps.js +21 -1
- package/src/utils/props/textInputProps.js +1 -0
- package/src/utils/props/tokens.js +4 -2
- package/src/utils/ssr-media-query/create-stylesheet/create-stylesheet-mobile.js +41 -0
- package/src/utils/ssr-media-query/create-stylesheet/index.android.js +3 -0
- package/src/utils/ssr-media-query/create-stylesheet/index.ios.js +3 -0
- package/src/utils/ssr-media-query/create-stylesheet/index.js +35 -0
- package/src/utils/ssr-media-query/hash.js +16 -0
- package/src/utils/ssr-media-query/index.js +8 -0
- package/src/utils/ssr-media-query/utils/common.js +38 -0
- package/src/utils/ssr-media-query/utils/create-declaration-block.js +21 -0
- package/src/utils/ssr-media-query/utils/create-media-query-styles.js +46 -0
- package/src/utils/ssr-media-query/utils/hyphenate-style-name.js +15 -0
- package/src/utils/ssr-media-query/utils/inject.js +43 -0
- package/src/utils/ssr.jsx +3 -1
- package/src/utils/transformGradient.js +17 -0
- package/src/utils/useOverlaidPosition.js +224 -0
- package/src/utils/withLinkRouter.jsx +3 -3
- package/types/Badge.d.ts +28 -0
- package/types/Box.d.ts +52 -0
- package/types/Checkbox.d.ts +47 -0
- package/types/CheckboxCardGroup.d.ts +72 -0
- package/types/ChevronLink.d.ts +47 -0
- package/types/Common.d.ts +106 -0
- package/types/Divider.d.ts +19 -0
- package/types/ExpandCollapse.d.ts +65 -0
- package/types/FileUpload.d.ts +40 -0
- package/types/HorizontalScrollButton.d.ts +16 -0
- package/types/Icon.d.ts +21 -0
- package/types/Link.d.ts +48 -0
- package/types/List.d.ts +48 -0
- package/types/Portal.d.ts +5 -0
- package/types/Search.d.ts +38 -0
- package/types/Select.d.ts +57 -0
- package/types/Spacer.d.ts +5 -0
- package/types/StackView.d.ts +28 -0
- package/types/Tabs.d.ts +46 -0
- package/types/TextButton.d.ts +11 -0
- package/types/ToggleSwitch.d.ts +54 -0
- package/types/ToolTip.d.ts +40 -0
- package/types/Typography.d.ts +40 -0
- package/types/index.d.ts +78 -0
- package/.eslintrc.js +0 -9
- package/__tests17__/A11yText/A11yText.test.jsx +0 -34
- package/__tests17__/ActivityIndicator/ActivityIndicator.test.jsx +0 -68
- package/__tests17__/ActivityIndicator/__snapshots__/ActivityIndicator.test.jsx.snap +0 -299
- package/__tests17__/Box/Box.test.jsx +0 -111
- package/__tests17__/Button/Button.test.jsx +0 -86
- package/__tests17__/Button/ButtonBase.test.jsx +0 -82
- package/__tests17__/Button/ButtonGroup.test.jsx +0 -347
- package/__tests17__/Button/ButtonLink.test.jsx +0 -61
- package/__tests17__/Card/Card.test.jsx +0 -63
- package/__tests17__/Carousel/Carousel.test.jsx +0 -128
- package/__tests17__/Carousel/CarouselTabs.test.jsx +0 -142
- package/__tests17__/Checkbox/Checkbox.test.jsx +0 -94
- package/__tests17__/Checkbox/CheckboxGroup.test.jsx +0 -246
- package/__tests17__/Divider/Divider.test.jsx +0 -91
- package/__tests17__/ExpandCollapse/ExpandCollapse.test.jsx +0 -109
- package/__tests17__/Feedback/Feedback.test.jsx +0 -42
- package/__tests17__/FlexGrid/Col.test.jsx +0 -261
- package/__tests17__/FlexGrid/FlexGrid.test.jsx +0 -136
- package/__tests17__/FlexGrid/Row.test.jsx +0 -273
- package/__tests17__/HorizontalScroll/HorizontalScroll.test.jsx +0 -165
- package/__tests17__/Icon/Icon.test.jsx +0 -61
- package/__tests17__/IconButton/IconButton.test.jsx +0 -52
- package/__tests17__/InputLabel/InputLabel.test.jsx +0 -28
- package/__tests17__/InputLabel/__snapshots__/InputLabel.test.jsx.snap +0 -3
- package/__tests17__/InputSupports/InputSupports.test.jsx +0 -60
- package/__tests17__/Link/Link.test.jsx +0 -63
- package/__tests17__/Link/TextButton.test.jsx +0 -35
- package/__tests17__/List/List.test.jsx +0 -82
- package/__tests17__/Modal/Modal.test.jsx +0 -47
- package/__tests17__/Notification/Notification.test.jsx +0 -20
- package/__tests17__/Pagination/Pagination.test.jsx +0 -160
- package/__tests17__/Progress/Progress.test.jsx +0 -79
- package/__tests17__/Radio/Radio.test.jsx +0 -87
- package/__tests17__/Radio/RadioGroup.test.jsx +0 -220
- package/__tests17__/RadioCard/RadioCard.test.jsx +0 -87
- package/__tests17__/RadioCard/RadioCardGroup.test.jsx +0 -246
- package/__tests17__/Search/Search.test.jsx +0 -87
- package/__tests17__/Select/Select.test.jsx +0 -94
- package/__tests17__/SideNav/SideNav.test.jsx +0 -110
- package/__tests17__/Skeleton/Skeleton.test.jsx +0 -61
- package/__tests17__/SkipLink/SkipLink.test.jsx +0 -61
- package/__tests17__/Spacer/Spacer.test.jsx +0 -63
- package/__tests17__/StackView/StackView.test.jsx +0 -211
- package/__tests17__/StackView/StackWrap.test.jsx +0 -47
- package/__tests17__/StackView/getStackedContent.test.jsx +0 -295
- package/__tests17__/StepTracker/StepTracker.test.jsx +0 -108
- package/__tests17__/Tabs/Tabs.test.jsx +0 -49
- package/__tests17__/Tags/Tags.test.jsx +0 -327
- package/__tests17__/TextInput/TextArea.test.jsx +0 -35
- package/__tests17__/TextInput/TextInputBase.test.jsx +0 -125
- package/__tests17__/ThemeProvider/ThemeProvider.test.jsx +0 -82
- package/__tests17__/ThemeProvider/useThemeTokens.test.jsx +0 -514
- package/__tests17__/ThemeProvider/utils/theme-tokens.test.js +0 -41
- package/__tests17__/ToggleSwitch/ToggleSwitch.test.jsx +0 -82
- package/__tests17__/ToggleSwitch/ToggleSwitchGroup.test.jsx +0 -192
- package/__tests17__/Tooltip/Tooltip.test.jsx +0 -65
- package/__tests17__/Tooltip/getTooltipPosition.test.js +0 -79
- package/__tests17__/Typography/typography.test.jsx +0 -90
- package/__tests17__/utils/children.test.jsx +0 -128
- package/__tests17__/utils/containUniqueFields.test.js +0 -25
- package/__tests17__/utils/input.test.js +0 -375
- package/__tests17__/utils/props.test.js +0 -36
- package/__tests17__/utils/semantics.test.jsx +0 -34
- package/__tests17__/utils/useCopy.test.js +0 -42
- package/__tests17__/utils/useResponsiveProp.test.jsx +0 -202
- package/__tests17__/utils/useSpacingScale.test.jsx +0 -273
- package/__tests17__/utils/useUniqueId.test.js +0 -31
- package/component-docs.json +0 -13646
- package/lib-module/A11yInfoProvider/index.js +0 -73
- package/lib-module/A11yText/index.js +0 -56
- package/lib-module/ActivityIndicator/Spinner.js +0 -79
- package/lib-module/ActivityIndicator/Spinner.native.js +0 -146
- package/lib-module/ActivityIndicator/index.js +0 -48
- package/lib-module/ActivityIndicator/shared.js +0 -13
- package/lib-module/BaseProvider/HydrationContext.js +0 -51
- package/lib-module/BaseProvider/index.js +0 -41
- package/lib-module/Box/Box.js +0 -259
- package/lib-module/Box/index.js +0 -2
- package/lib-module/Button/Button.js +0 -26
- package/lib-module/Button/ButtonBase.js +0 -309
- package/lib-module/Button/ButtonDropdown.js +0 -181
- package/lib-module/Button/ButtonGroup.js +0 -264
- package/lib-module/Button/ButtonLink.js +0 -40
- package/lib-module/Button/index.js +0 -5
- package/lib-module/Button/propTypes.js +0 -53
- package/lib-module/Card/Card.js +0 -85
- package/lib-module/Card/CardBase.js +0 -66
- package/lib-module/Card/PressableCardBase.js +0 -114
- package/lib-module/Card/index.js +0 -4
- package/lib-module/Carousel/Carousel.js +0 -690
- package/lib-module/Carousel/CarouselContext.js +0 -56
- package/lib-module/Carousel/CarouselFirstFocus/CarouselFirstFocus.js +0 -51
- package/lib-module/Carousel/CarouselItem/CarouselItem.js +0 -81
- package/lib-module/Carousel/CarouselItem/index.js +0 -2
- package/lib-module/Carousel/CarouselStepTracker/CarouselStepTracker.js +0 -50
- package/lib-module/Carousel/CarouselStepTracker/index.js +0 -2
- package/lib-module/Carousel/CarouselTabs/CarouselTabs.js +0 -51
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanel.js +0 -84
- package/lib-module/Carousel/CarouselTabs/CarouselTabsPanelItem.js +0 -126
- package/lib-module/Carousel/CarouselTabs/index.js +0 -2
- package/lib-module/Carousel/CarouselThumbnail.js +0 -85
- package/lib-module/Carousel/CarouselThumbnailNavigation.js +0 -66
- package/lib-module/Carousel/dictionary.js +0 -18
- package/lib-module/Carousel/index.js +0 -3
- package/lib-module/Checkbox/Checkbox.js +0 -355
- package/lib-module/Checkbox/CheckboxGroup.js +0 -242
- package/lib-module/Checkbox/CheckboxInput.js +0 -60
- package/lib-module/Checkbox/CheckboxInput.native.js +0 -6
- package/lib-module/Checkbox/index.js +0 -3
- package/lib-module/Divider/Divider.js +0 -127
- package/lib-module/Divider/index.js +0 -2
- package/lib-module/ExpandCollapse/Accordion.js +0 -15
- package/lib-module/ExpandCollapse/Control.js +0 -139
- package/lib-module/ExpandCollapse/ExpandCollapse.js +0 -95
- package/lib-module/ExpandCollapse/Panel.js +0 -160
- package/lib-module/ExpandCollapse/index.js +0 -7
- package/lib-module/Feedback/Feedback.js +0 -165
- package/lib-module/Feedback/index.js +0 -2
- package/lib-module/Fieldset/Fieldset.js +0 -182
- package/lib-module/Fieldset/FieldsetContainer.js +0 -38
- package/lib-module/Fieldset/FieldsetContainer.native.js +0 -23
- package/lib-module/Fieldset/Legend.js +0 -24
- package/lib-module/Fieldset/Legend.native.js +0 -31
- package/lib-module/Fieldset/cssReset.js +0 -14
- package/lib-module/Fieldset/index.js +0 -2
- package/lib-module/FlexGrid/Col/Col.js +0 -275
- package/lib-module/FlexGrid/Col/index.js +0 -2
- package/lib-module/FlexGrid/FlexGrid.js +0 -149
- package/lib-module/FlexGrid/Row/Row.js +0 -184
- package/lib-module/FlexGrid/Row/index.js +0 -2
- package/lib-module/FlexGrid/helpers/index.js +0 -18
- package/lib-module/FlexGrid/index.js +0 -2
- package/lib-module/FlexGrid/providers/GutterContext.js +0 -3
- package/lib-module/HorizontalScroll/HorizontalScroll.js +0 -175
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +0 -81
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +0 -48
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -27
- package/lib-module/HorizontalScroll/dictionary.js +0 -11
- package/lib-module/HorizontalScroll/index.js +0 -11
- package/lib-module/HorizontalScroll/itemPositions.js +0 -112
- package/lib-module/Icon/Icon.js +0 -62
- package/lib-module/Icon/IconText.js +0 -88
- package/lib-module/Icon/index.js +0 -4
- package/lib-module/IconButton/IconButton.js +0 -132
- package/lib-module/IconButton/index.js +0 -2
- package/lib-module/InputLabel/InputLabel.js +0 -154
- package/lib-module/InputLabel/LabelContent.js +0 -27
- package/lib-module/InputLabel/LabelContent.native.js +0 -19
- package/lib-module/InputLabel/index.js +0 -2
- package/lib-module/InputSupports/InputSupports.js +0 -103
- package/lib-module/InputSupports/index.js +0 -2
- package/lib-module/InputSupports/useInputSupports.js +0 -33
- package/lib-module/Link/ChevronLink.js +0 -52
- package/lib-module/Link/InlinePressable.js +0 -44
- package/lib-module/Link/InlinePressable.native.js +0 -89
- package/lib-module/Link/Link.js +0 -28
- package/lib-module/Link/LinkBase.js +0 -244
- package/lib-module/Link/TextButton.js +0 -35
- package/lib-module/Link/index.js +0 -5
- package/lib-module/List/List.js +0 -66
- package/lib-module/List/ListItem.js +0 -38
- package/lib-module/List/ListItemBase.js +0 -139
- package/lib-module/List/ListItemContent.js +0 -66
- package/lib-module/List/ListItemMark.js +0 -143
- package/lib-module/List/PressableListItemBase.js +0 -114
- package/lib-module/List/index.js +0 -5
- package/lib-module/Modal/Modal.js +0 -225
- package/lib-module/Modal/dictionary.js +0 -9
- package/lib-module/Modal/index.js +0 -2
- package/lib-module/MultiSelectFilter/ModalOverlay.js +0 -112
- package/lib-module/MultiSelectFilter/MultiSelectFilter.js +0 -286
- package/lib-module/MultiSelectFilter/dictionary.js +0 -12
- package/lib-module/MultiSelectFilter/index.js +0 -2
- package/lib-module/Notification/Notification.js +0 -230
- package/lib-module/Notification/dictionary.js +0 -8
- package/lib-module/Notification/index.js +0 -2
- package/lib-module/Pagination/PageButton.js +0 -66
- package/lib-module/Pagination/Pagination.js +0 -159
- package/lib-module/Pagination/SideButton.js +0 -118
- package/lib-module/Pagination/dictionary.js +0 -18
- package/lib-module/Pagination/index.js +0 -2
- package/lib-module/Pagination/usePagination.js +0 -73
- package/lib-module/Progress/Progress.js +0 -89
- package/lib-module/Progress/ProgressBar.js +0 -138
- package/lib-module/Progress/ProgressBarBackground.js +0 -42
- package/lib-module/Progress/index.js +0 -4
- package/lib-module/QuickLinks/QuickLinks.js +0 -71
- package/lib-module/QuickLinks/QuickLinksCard.js +0 -33
- package/lib-module/QuickLinks/QuickLinksItem.js +0 -50
- package/lib-module/QuickLinks/index.js +0 -4
- package/lib-module/QuickLinksFeature/QuickLinksFeature.js +0 -69
- package/lib-module/QuickLinksFeature/QuickLinksFeatureItem.js +0 -130
- package/lib-module/QuickLinksFeature/index.js +0 -4
- package/lib-module/Radio/Radio.js +0 -288
- package/lib-module/Radio/RadioButton.js +0 -138
- package/lib-module/Radio/RadioGroup.js +0 -255
- package/lib-module/Radio/RadioInput.js +0 -62
- package/lib-module/Radio/RadioInput.native.js +0 -6
- package/lib-module/Radio/index.js +0 -3
- package/lib-module/RadioCard/RadioCardGroup.js +0 -259
- package/lib-module/RadioCard/index.js +0 -3
- package/lib-module/Responsive/index.js +0 -2
- package/lib-module/Search/Search.js +0 -241
- package/lib-module/Search/dictionary.js +0 -12
- package/lib-module/Search/index.js +0 -2
- package/lib-module/Select/Group.js +0 -21
- package/lib-module/Select/Group.native.js +0 -15
- package/lib-module/Select/Item.js +0 -20
- package/lib-module/Select/Item.native.js +0 -3
- package/lib-module/Select/Picker.js +0 -68
- package/lib-module/Select/Picker.native.js +0 -122
- package/lib-module/Select/Select.js +0 -347
- package/lib-module/Select/constants.js +0 -5
- package/lib-module/Select/index.js +0 -6
- package/lib-module/SideNav/Item.js +0 -145
- package/lib-module/SideNav/ItemContent.js +0 -48
- package/lib-module/SideNav/ItemsGroup.js +0 -117
- package/lib-module/SideNav/SideNav.js +0 -136
- package/lib-module/SideNav/index.js +0 -1
- package/lib-module/Skeleton/Skeleton.js +0 -182
- package/lib-module/Skeleton/index.js +0 -2
- package/lib-module/Skeleton/skeleton.constant.js +0 -3
- package/lib-module/Skeleton/skeletonWebAnimation.js +0 -18
- package/lib-module/Skeleton/useSkeletonNativeAnimation.js +0 -25
- package/lib-module/SkipLink/SkipLink.js +0 -188
- package/lib-module/SkipLink/index.js +0 -2
- package/lib-module/Spacer/Spacer.js +0 -98
- package/lib-module/Spacer/index.js +0 -2
- package/lib-module/StackView/StackView.js +0 -127
- package/lib-module/StackView/StackWrap.js +0 -53
- package/lib-module/StackView/StackWrap.native.js +0 -3
- package/lib-module/StackView/StackWrapBox.js +0 -117
- package/lib-module/StackView/StackWrapGap.js +0 -61
- package/lib-module/StackView/common.js +0 -35
- package/lib-module/StackView/getStackedContent.js +0 -124
- package/lib-module/StackView/index.js +0 -5
- package/lib-module/StepTracker/Step.js +0 -253
- package/lib-module/StepTracker/StepTracker.js +0 -191
- package/lib-module/StepTracker/dictionary.js +0 -10
- package/lib-module/StepTracker/index.js +0 -2
- package/lib-module/Tabs/Tabs.js +0 -152
- package/lib-module/Tabs/TabsItem.js +0 -228
- package/lib-module/Tabs/index.js +0 -2
- package/lib-module/Tags/Tags.js +0 -257
- package/lib-module/Tags/index.js +0 -2
- package/lib-module/TextInput/TextArea.js +0 -94
- package/lib-module/TextInput/TextInput.js +0 -73
- package/lib-module/TextInput/TextInputBase.js +0 -333
- package/lib-module/TextInput/dictionary.js +0 -8
- package/lib-module/TextInput/index.js +0 -3
- package/lib-module/TextInput/propTypes.js +0 -33
- package/lib-module/ThemeProvider/ThemeProvider.js +0 -74
- package/lib-module/ThemeProvider/index.js +0 -6
- package/lib-module/ThemeProvider/useSetTheme.js +0 -25
- package/lib-module/ThemeProvider/useTheme.js +0 -14
- package/lib-module/ThemeProvider/useThemeTokens.js +0 -110
- package/lib-module/ThemeProvider/utils/index.js +0 -2
- package/lib-module/ThemeProvider/utils/styles.js +0 -188
- package/lib-module/ThemeProvider/utils/theme-tokens.js +0 -163
- package/lib-module/Timeline/Timeline.js +0 -174
- package/lib-module/Timeline/index.js +0 -2
- package/lib-module/ToggleSwitch/ToggleSwitch.js +0 -255
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +0 -227
- package/lib-module/ToggleSwitch/index.js +0 -3
- package/lib-module/Tooltip/Backdrop.js +0 -45
- package/lib-module/Tooltip/Backdrop.native.js +0 -44
- package/lib-module/Tooltip/Tooltip.js +0 -278
- package/lib-module/Tooltip/Tooltip.native.js +0 -326
- package/lib-module/Tooltip/dictionary.js +0 -8
- package/lib-module/Tooltip/getTooltipPosition.js +0 -175
- package/lib-module/Tooltip/index.js +0 -5
- package/lib-module/Tooltip/shared.js +0 -27
- package/lib-module/TooltipButton/TooltipButton.js +0 -78
- package/lib-module/TooltipButton/index.js +0 -2
- package/lib-module/Typography/Typography.js +0 -154
- package/lib-module/Typography/index.js +0 -2
- package/lib-module/ViewportProvider/ViewportProvider.js +0 -29
- package/lib-module/ViewportProvider/index.js +0 -3
- package/lib-module/ViewportProvider/useViewport.js +0 -3
- package/lib-module/ViewportProvider/useViewportListener.js +0 -39
- package/lib-module/index.js +0 -58
- package/lib-module/utils/BaseView/BaseView.js +0 -43
- package/lib-module/utils/BaseView/BaseView.native.js +0 -6
- package/lib-module/utils/BaseView/index.js +0 -2
- package/lib-module/utils/a11y/index.js +0 -2
- package/lib-module/utils/a11y/semantics.js +0 -157
- package/lib-module/utils/a11y/textSize.js +0 -36
- package/lib-module/utils/animation/index.js +0 -2
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +0 -89
- package/lib-module/utils/children.js +0 -119
- package/lib-module/utils/containUniqueFields.js +0 -26
- package/lib-module/utils/floating-ui/index.js +0 -1
- package/lib-module/utils/floating-ui/index.native.js +0 -1
- package/lib-module/utils/hasOwnProperty.js +0 -11
- package/lib-module/utils/index.js +0 -19
- package/lib-module/utils/info/index.js +0 -7
- package/lib-module/utils/info/platform/index.js +0 -11
- package/lib-module/utils/info/platform/platform.android.js +0 -1
- package/lib-module/utils/info/platform/platform.ios.js +0 -1
- package/lib-module/utils/info/platform/platform.js +0 -1
- package/lib-module/utils/info/platform/platform.native.js +0 -4
- package/lib-module/utils/info/versions.js +0 -5
- package/lib-module/utils/input.js +0 -187
- package/lib-module/utils/pressability.js +0 -111
- package/lib-module/utils/props/a11yProps.js +0 -308
- package/lib-module/utils/props/clickProps.js +0 -26
- package/lib-module/utils/props/componentPropType.js +0 -63
- package/lib-module/utils/props/copyPropTypes.js +0 -2
- package/lib-module/utils/props/getPropSelector.js +0 -48
- package/lib-module/utils/props/handlerProps.js +0 -117
- package/lib-module/utils/props/hrefAttrsProp.js +0 -33
- package/lib-module/utils/props/index.js +0 -19
- package/lib-module/utils/props/inputSupportsProps.js +0 -62
- package/lib-module/utils/props/linkProps.js +0 -44
- package/lib-module/utils/props/paddingProp.js +0 -9
- package/lib-module/utils/props/pressProps.js +0 -42
- package/lib-module/utils/props/rectProp.js +0 -9
- package/lib-module/utils/props/responsiveProps.js +0 -30
- package/lib-module/utils/props/selectSystemProps.js +0 -24
- package/lib-module/utils/props/spacingProps.js +0 -56
- package/lib-module/utils/props/textInputProps.js +0 -201
- package/lib-module/utils/props/textProps.js +0 -59
- package/lib-module/utils/props/tokens.js +0 -133
- package/lib-module/utils/props/variantProp.js +0 -18
- package/lib-module/utils/props/viewProps.js +0 -22
- package/lib-module/utils/ssr.js +0 -144
- package/lib-module/utils/useCopy.js +0 -44
- package/lib-module/utils/useHash.js +0 -45
- package/lib-module/utils/useHash.native.js +0 -7
- package/lib-module/utils/useResponsiveProp.js +0 -46
- package/lib-module/utils/useSafeLayoutEffect.js +0 -30
- package/lib-module/utils/useScrollBlocking.js +0 -58
- package/lib-module/utils/useScrollBlocking.native.js +0 -2
- package/lib-module/utils/useSpacingScale.js +0 -125
- package/lib-module/utils/useUniqueId.js +0 -13
- package/lib-module/utils/withLinkRouter.js +0 -81
package/lib/server.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { default as selectSystemProps } from './utils/props/selectSystemProps';
|
|
2
|
+
export { getTokensPropType } from './utils/props/tokens';
|
|
3
|
+
export { default as htmlAttrs } from './utils/htmlAttrs';
|
|
4
|
+
export { getComponentTheme, getThemeTokens } from './ThemeProvider/utils/theme-tokens';
|
|
@@ -1,33 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
}
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
|
-
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
11
|
-
|
|
12
|
-
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
13
|
-
|
|
14
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
-
|
|
16
|
-
var _ThemeProvider = require("../../ThemeProvider");
|
|
17
|
-
|
|
18
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
-
|
|
20
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
21
|
-
|
|
22
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
23
|
-
|
|
24
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import NativeView from "react-native-web/dist/exports/View";
|
|
3
|
+
import StyleSheet from "react-native-web/dist/exports/StyleSheet";
|
|
4
|
+
import PropTypes from 'prop-types';
|
|
5
|
+
import { useTheme } from '../../ThemeProvider';
|
|
25
6
|
|
|
26
7
|
/**
|
|
27
8
|
* Identical to React Native's View and supporting all the same props, but with:
|
|
28
9
|
* - a zIndex: 'auto' style added to prevent unexpectedly causing children to overlap other elements from other stacking contexts
|
|
29
10
|
*/
|
|
30
|
-
|
|
11
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
12
|
+
const BaseView = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
31
13
|
let {
|
|
32
14
|
children,
|
|
33
15
|
style,
|
|
@@ -35,30 +17,26 @@ const BaseView = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
|
35
17
|
} = _ref;
|
|
36
18
|
const {
|
|
37
19
|
themeOptions
|
|
38
|
-
} =
|
|
20
|
+
} = useTheme();
|
|
39
21
|
const styleProp = Array.isArray(style) ? [...style] : [style];
|
|
40
|
-
|
|
41
22
|
if (!themeOptions.forceZIndex) {
|
|
42
23
|
styleProp.unshift(styles.resetZIndex);
|
|
43
24
|
}
|
|
44
|
-
|
|
45
|
-
|
|
25
|
+
return /*#__PURE__*/_jsx(NativeView, {
|
|
26
|
+
...rest,
|
|
46
27
|
style: styleProp,
|
|
47
28
|
ref: ref,
|
|
48
29
|
children: children
|
|
49
30
|
});
|
|
50
31
|
});
|
|
51
32
|
BaseView.displayName = 'BaseView';
|
|
52
|
-
|
|
53
|
-
const styles = _StyleSheet.default.create({
|
|
33
|
+
const styles = StyleSheet.create({
|
|
54
34
|
resetZIndex: {
|
|
55
35
|
zIndex: 'auto'
|
|
56
36
|
}
|
|
57
37
|
});
|
|
58
|
-
|
|
59
38
|
BaseView.propTypes = {
|
|
60
|
-
children:
|
|
61
|
-
style:
|
|
39
|
+
children: PropTypes.node,
|
|
40
|
+
style: PropTypes.oneOfType([PropTypes.object, PropTypes.array])
|
|
62
41
|
};
|
|
63
|
-
|
|
64
|
-
exports.default = _default;
|
|
42
|
+
export default BaseView;
|
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
1
|
+
import BaseView from "react-native-web/dist/exports/View";
|
|
12
2
|
/**
|
|
13
3
|
* Android crashes on non-standard style properties like `zIndex` so adding a `BaseView` for native platforms
|
|
14
4
|
*/
|
|
15
|
-
|
|
16
|
-
exports.default = _default;
|
|
5
|
+
export default BaseView;
|
|
@@ -1,13 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _BaseView = _interopRequireDefault(require("./BaseView"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
var _default = _BaseView.default;
|
|
13
|
-
exports.default = _default;
|
|
1
|
+
import BaseView from './BaseView';
|
|
2
|
+
export default BaseView;
|
package/lib/utils/a11y/index.js
CHANGED
|
@@ -1,31 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
|
|
7
|
-
var _textSize = require("./textSize");
|
|
8
|
-
|
|
9
|
-
Object.keys(_textSize).forEach(function (key) {
|
|
10
|
-
if (key === "default" || key === "__esModule") return;
|
|
11
|
-
if (key in exports && exports[key] === _textSize[key]) return;
|
|
12
|
-
Object.defineProperty(exports, key, {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
get: function () {
|
|
15
|
-
return _textSize[key];
|
|
16
|
-
}
|
|
17
|
-
});
|
|
18
|
-
});
|
|
19
|
-
|
|
20
|
-
var _semantics = require("./semantics");
|
|
21
|
-
|
|
22
|
-
Object.keys(_semantics).forEach(function (key) {
|
|
23
|
-
if (key === "default" || key === "__esModule") return;
|
|
24
|
-
if (key in exports && exports[key] === _semantics[key]) return;
|
|
25
|
-
Object.defineProperty(exports, key, {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
get: function () {
|
|
28
|
-
return _semantics[key];
|
|
29
|
-
}
|
|
30
|
-
});
|
|
31
|
-
});
|
|
1
|
+
export * from './textSize';
|
|
2
|
+
export * from './semantics';
|
|
@@ -1,18 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.textTags = exports.tagsToRoles = exports.supportedTags = exports.layoutTags = exports.headingTags = exports.getHeadingLevel = exports.getA11yPropsFromHtmlTag = void 0;
|
|
7
|
-
|
|
8
|
-
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
1
|
+
import Platform from "react-native-web/dist/exports/Platform";
|
|
12
2
|
/**
|
|
13
3
|
* @typedef {import('react-native').AccessibilityRole} AccessibilityRole
|
|
14
4
|
*/
|
|
15
|
-
|
|
16
5
|
/**
|
|
17
6
|
* This is based on the role-to-tag mapping that React Native Web uses to set HTML tags.
|
|
18
7
|
* It's not exported in any way from RNW, so we need to keep this up-to-date manually.
|
|
@@ -32,10 +21,7 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
32
21
|
* https://github.com/necolas/react-native-web/blob/master/packages/react-native-web/src/modules/AccessibilityUtil/propsToAriaRole.js
|
|
33
22
|
*/
|
|
34
23
|
// Adding `/** @type {const} */ ({...})` denotes object content as `readonly` in many IDEs
|
|
35
|
-
|
|
36
|
-
const rolesToTags =
|
|
37
|
-
/** @type {const} */
|
|
38
|
-
{
|
|
24
|
+
const rolesToTags = /** @type {const} */{
|
|
39
25
|
article: 'article',
|
|
40
26
|
banner: 'header',
|
|
41
27
|
blockquote: 'blockquote',
|
|
@@ -54,24 +40,20 @@ const rolesToTags =
|
|
|
54
40
|
region: 'section',
|
|
55
41
|
strong: 'strong',
|
|
56
42
|
// Add special cases that are in RNW's function logic but not in its mapping object
|
|
57
|
-
label: 'label'
|
|
58
|
-
|
|
59
|
-
}; // Invert React Native Web's mapping, so a tag gets the role that gets that tag
|
|
43
|
+
label: 'label'
|
|
44
|
+
};
|
|
60
45
|
|
|
61
|
-
|
|
46
|
+
// Invert React Native Web's mapping, so a tag gets the role that gets that tag
|
|
47
|
+
export const tagsToRoles = Object.fromEntries(Object.entries(rolesToTags).map(_ref => {
|
|
62
48
|
let [key, value] = _ref;
|
|
63
49
|
return [value, key];
|
|
64
50
|
}));
|
|
51
|
+
|
|
65
52
|
/**
|
|
66
53
|
* Heading HTML tags map to the "heading" accessibilityRole in native apps, which is similar
|
|
67
54
|
* to headings on web but without the expectation of a hierarchy of headings within one screen.
|
|
68
55
|
*/
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
exports.tagsToRoles = tagsToRoles;
|
|
72
|
-
const headingTags =
|
|
73
|
-
/** @type {const} */
|
|
74
|
-
['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
|
|
56
|
+
export const headingTags = /** @type {const} */['h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
|
|
75
57
|
/**
|
|
76
58
|
* @typedef {typeof headingTags[number]} HeadingTag
|
|
77
59
|
*/
|
|
@@ -82,9 +64,7 @@ const headingTags =
|
|
|
82
64
|
*
|
|
83
65
|
* Of these, only headers (h1, h2, ...h5, h6) set a corresponding accessibilityRole in native apps ("heading").
|
|
84
66
|
*/
|
|
85
|
-
|
|
86
|
-
exports.headingTags = headingTags;
|
|
87
|
-
const supportedTags = [...Object.keys(tagsToRoles), ...headingTags];
|
|
67
|
+
export const supportedTags = [...Object.keys(tagsToRoles), ...headingTags];
|
|
88
68
|
/**
|
|
89
69
|
* Uses readonly mapping keys/values to generate static types for IDEs that support TS in JSDoc.
|
|
90
70
|
* @typedef {keyof rolesToTags} RoleWithTag
|
|
@@ -96,13 +76,7 @@ const supportedTags = [...Object.keys(tagsToRoles), ...headingTags];
|
|
|
96
76
|
*
|
|
97
77
|
* Of these, only headers (h1, h2, ...h5, h6) set a corresponding accessibilityRole in native apps ("heading").
|
|
98
78
|
*/
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
exports.supportedTags = supportedTags;
|
|
102
|
-
const layoutTags =
|
|
103
|
-
/** @type {const} */
|
|
104
|
-
[...headingTags, 'article', 'aside', 'blockquote', 'footer', 'figure', 'form', 'header', 'ul', 'li', 'main', 'nav', 'section', 'label' // eslint-disable-next-line prettier/prettier
|
|
105
|
-
];
|
|
79
|
+
export const layoutTags = /** @type {const} */[...headingTags, 'article', 'aside', 'blockquote', 'footer', 'figure', 'form', 'header', 'ul', 'li', 'main', 'nav', 'section', 'label'];
|
|
106
80
|
/**
|
|
107
81
|
* @typedef {typeof layoutTags[number]} LayoutTag
|
|
108
82
|
*/
|
|
@@ -112,13 +86,7 @@ const layoutTags =
|
|
|
112
86
|
*
|
|
113
87
|
* Of these, only headers (h1, h2, ...h5, h6) set a corresponding accessibilityRole in native apps ("heading").
|
|
114
88
|
*/
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
exports.layoutTags = layoutTags;
|
|
118
|
-
const textTags =
|
|
119
|
-
/** @type {const} */
|
|
120
|
-
[...headingTags, 'blockquote', 'code', 'del', 'em', 'ins', 'li', 'strong', 'label' // eslint-disable-next-line prettier/prettier
|
|
121
|
-
];
|
|
89
|
+
export const textTags = /** @type {const} */[...headingTags, 'blockquote', 'code', 'del', 'em', 'ins', 'li', 'strong', 'label'];
|
|
122
90
|
/**
|
|
123
91
|
* @typedef {typeof layoutTags[number]} TextTag
|
|
124
92
|
*/
|
|
@@ -130,10 +98,8 @@ const textTags =
|
|
|
130
98
|
* @param {string} [tag] - HTML tag string; returns undefined if not a {@link HeadingTag}
|
|
131
99
|
* @returns {'1' | '2' | '3' | '4' | '5' | '6' | undefined}
|
|
132
100
|
*/
|
|
101
|
+
export const getHeadingLevel = tag => headingTags.includes(tag) ? Number(tag[1]) : undefined;
|
|
133
102
|
|
|
134
|
-
exports.textTags = textTags;
|
|
135
|
-
|
|
136
|
-
const getHeadingLevel = tag => headingTags.includes(tag) ? Number(tag[1]) : undefined;
|
|
137
103
|
/**
|
|
138
104
|
* Takes a supported HTML tag, and returns the accessibility props that, on web, make React Native Web
|
|
139
105
|
* render that tag.
|
|
@@ -146,19 +112,14 @@ const getHeadingLevel = tag => headingTags.includes(tag) ? Number(tag[1]) : unde
|
|
|
146
112
|
* @param {AccessibilityRole | null} [nativeRole] - optional accessibilityRole for native apps
|
|
147
113
|
* @returns {{ accessibilityRole: string, accessibilityLevel?: string } | undefined}
|
|
148
114
|
*/
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
exports.getHeadingLevel = getHeadingLevel;
|
|
152
|
-
|
|
153
|
-
const getA11yPropsFromHtmlTag = (tag, nativeRole) => {
|
|
115
|
+
export const getA11yPropsFromHtmlTag = (tag, nativeRole) => {
|
|
154
116
|
// Allow cross-platform apps to set accessibilityRoles alongside a web tag without conflict
|
|
155
|
-
if (nativeRole !== undefined &&
|
|
117
|
+
if (nativeRole !== undefined && Platform.OS !== 'web') return {
|
|
156
118
|
accessibilityRole: nativeRole
|
|
157
119
|
};
|
|
158
|
-
|
|
159
120
|
if (tag) {
|
|
160
121
|
// aria roles don't have native counterparts and RN may throw an error if an unrecognised role is passed
|
|
161
|
-
const ariaRole =
|
|
122
|
+
const ariaRole = Platform.OS === 'web' && tagsToRoles[tag];
|
|
162
123
|
if (ariaRole) return {
|
|
163
124
|
accessibilityRole: ariaRole
|
|
164
125
|
};
|
|
@@ -167,11 +128,8 @@ const getA11yPropsFromHtmlTag = (tag, nativeRole) => {
|
|
|
167
128
|
accessibilityRole: 'header',
|
|
168
129
|
accessibilityLevel
|
|
169
130
|
};
|
|
170
|
-
}
|
|
131
|
+
}
|
|
132
|
+
// If nothing matches or no tag supplied, return undefined and let component decide how to fall back.
|
|
171
133
|
// Note that return value may always be spread in objects (it is safe to spread undefined like { ...undefined })
|
|
172
|
-
|
|
173
|
-
|
|
174
134
|
return undefined;
|
|
175
|
-
};
|
|
176
|
-
|
|
177
|
-
exports.getA11yPropsFromHtmlTag = getA11yPropsFromHtmlTag;
|
|
135
|
+
};
|
|
@@ -1,16 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.scaleWithText = exports.getMaxFontMultiplier = void 0;
|
|
7
|
-
|
|
8
|
-
var _PixelRatio = _interopRequireDefault(require("react-native-web/dist/cjs/exports/PixelRatio"));
|
|
9
|
-
|
|
10
|
-
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
1
|
+
import PixelRatio from "react-native-web/dist/exports/PixelRatio";
|
|
2
|
+
import Platform from "react-native-web/dist/exports/Platform";
|
|
14
3
|
/**
|
|
15
4
|
* When a user increases text size using device accessibility settings, some elements
|
|
16
5
|
* should also scale, such as icons alongside text and space between paragraphs.
|
|
@@ -18,12 +7,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
18
7
|
* @param {number} [value] - the value to multiply; defaults to system default font size
|
|
19
8
|
* @param {number} [maxScale] - the maximum multiplier to apply; defaults to no maximum
|
|
20
9
|
*/
|
|
21
|
-
const scaleWithText = function (value) {
|
|
10
|
+
export const scaleWithText = function (value) {
|
|
22
11
|
let maxScale = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : Infinity;
|
|
23
12
|
if (!value) return value;
|
|
24
|
-
const scale = Math.min(
|
|
13
|
+
const scale = Math.min(PixelRatio.getFontScale(), maxScale) || 1;
|
|
25
14
|
return value * scale;
|
|
26
15
|
};
|
|
16
|
+
|
|
27
17
|
/**
|
|
28
18
|
* Native only, returns `undefined` on Web.
|
|
29
19
|
*
|
|
@@ -34,18 +24,12 @@ const scaleWithText = function (value) {
|
|
|
34
24
|
* The return value of this function can be used as a React Native `Text` element's
|
|
35
25
|
* `maxFontSizeMultiplier` prop value.
|
|
36
26
|
*/
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
exports.scaleWithText = scaleWithText;
|
|
40
|
-
|
|
41
|
-
const getMaxFontMultiplier = _ref => {
|
|
27
|
+
export const getMaxFontMultiplier = _ref => {
|
|
42
28
|
let {
|
|
43
29
|
fontSize,
|
|
44
30
|
fontScaleCap
|
|
45
31
|
} = _ref;
|
|
46
|
-
if (
|
|
32
|
+
if (Platform.OS === 'web' || !fontScaleCap || !fontSize) return undefined;
|
|
47
33
|
if (fontScaleCap <= fontSize) return 1;
|
|
48
34
|
return fontScaleCap / fontSize;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
exports.getMaxFontMultiplier = getMaxFontMultiplier;
|
|
35
|
+
};
|
|
@@ -1,15 +1,2 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
Object.defineProperty(exports, "useVerticalExpandAnimation", {
|
|
7
|
-
enumerable: true,
|
|
8
|
-
get: function () {
|
|
9
|
-
return _useVerticalExpandAnimation.default;
|
|
10
|
-
}
|
|
11
|
-
});
|
|
12
|
-
|
|
13
|
-
var _useVerticalExpandAnimation = _interopRequireDefault(require("./useVerticalExpandAnimation"));
|
|
14
|
-
|
|
15
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1
|
+
/* eslint-disable import/prefer-default-export */
|
|
2
|
+
export { default as useVerticalExpandAnimation } from './useVerticalExpandAnimation';
|
|
@@ -1,21 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
|
|
8
|
-
var _react = require("react");
|
|
9
|
-
|
|
10
|
-
var _Animated = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Animated"));
|
|
11
|
-
|
|
12
|
-
var _Easing = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Easing"));
|
|
13
|
-
|
|
14
|
-
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
15
|
-
|
|
16
|
-
var _useSafeLayoutEffect = _interopRequireDefault(require("../useSafeLayoutEffect"));
|
|
17
|
-
|
|
18
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1
|
+
import { useEffect, useRef, useState } from 'react';
|
|
2
|
+
import Animated from "react-native-web/dist/exports/Animated";
|
|
3
|
+
import Easing from "react-native-web/dist/exports/Easing";
|
|
4
|
+
import Platform from "react-native-web/dist/exports/Platform";
|
|
5
|
+
import useSafeLayoutEffect from '../useSafeLayoutEffect';
|
|
19
6
|
|
|
20
7
|
// TODO: systematise animations
|
|
21
8
|
// https://github.com/telus/universal-design-system/issues/487
|
|
@@ -25,72 +12,68 @@ function useVerticalExpandAnimation(_ref) {
|
|
|
25
12
|
isExpanded,
|
|
26
13
|
tokens
|
|
27
14
|
} = _ref;
|
|
28
|
-
const [isAnimating, setIsAnimating] =
|
|
29
|
-
const [wasExpanded, setWasExpanded] =
|
|
15
|
+
const [isAnimating, setIsAnimating] = useState(false);
|
|
16
|
+
const [wasExpanded, setWasExpanded] = useState(isExpanded);
|
|
30
17
|
const expandStateChanged = isExpanded !== wasExpanded;
|
|
31
|
-
const expandAnimatedValue =
|
|
32
|
-
const elementRef =
|
|
18
|
+
const expandAnimatedValue = useRef(new Animated.Value(0)).current;
|
|
19
|
+
const elementRef = useRef(null);
|
|
33
20
|
const {
|
|
34
21
|
expandDuration,
|
|
35
22
|
collapseDuration
|
|
36
23
|
} = tokens;
|
|
37
|
-
(
|
|
24
|
+
useSafeLayoutEffect(() => {
|
|
38
25
|
if (expandStateChanged) {
|
|
39
26
|
setIsAnimating(true);
|
|
40
27
|
setWasExpanded(isExpanded);
|
|
41
28
|
}
|
|
42
29
|
}, [expandStateChanged, isExpanded]);
|
|
43
|
-
|
|
30
|
+
useEffect(() => {
|
|
44
31
|
const onComplete = () => setIsAnimating(false);
|
|
32
|
+
if (Platform.OS === 'web') {
|
|
33
|
+
if (!elementRef.current) return () => {};
|
|
45
34
|
|
|
46
|
-
|
|
47
|
-
if (!elementRef.current) return () => {}; // React Native Web does not pass `onTransitionEnd` through, must attach manually.
|
|
35
|
+
// React Native Web does not pass `onTransitionEnd` through, must attach manually.
|
|
48
36
|
// https://github.com/necolas/react-native-web/pull/1713
|
|
49
|
-
|
|
50
37
|
const element = elementRef.current;
|
|
51
38
|
element.addEventListener('transitionend', onComplete);
|
|
52
39
|
return () => element.removeEventListener('transitionend', onComplete);
|
|
53
40
|
}
|
|
54
|
-
|
|
55
41
|
const animationConfig = {
|
|
56
42
|
duration: isExpanded ? expandDuration : collapseDuration,
|
|
57
|
-
easing:
|
|
43
|
+
easing: Easing.inOut(Easing.ease),
|
|
58
44
|
toValue: isExpanded ? containerHeight : 0,
|
|
59
45
|
useNativeDriver: false
|
|
60
46
|
};
|
|
61
|
-
|
|
62
|
-
const animation = _Animated.default.timing(expandAnimatedValue, animationConfig);
|
|
63
|
-
|
|
47
|
+
const animation = Animated.timing(expandAnimatedValue, animationConfig);
|
|
64
48
|
animation.start(onComplete);
|
|
65
49
|
return () => animation.stop();
|
|
66
50
|
}, [isExpanded, expandAnimatedValue, containerHeight, expandDuration, collapseDuration]);
|
|
67
51
|
const containerStyles = {};
|
|
68
52
|
if (isAnimating || expandStateChanged) containerStyles.overflow = 'hidden';
|
|
69
|
-
|
|
70
53
|
if (!isExpanded && !isAnimating && !expandStateChanged) {
|
|
71
|
-
if (
|
|
72
|
-
// Without `
|
|
73
|
-
containerStyles.
|
|
54
|
+
if (Platform.OS === 'web') {
|
|
55
|
+
// Without `display: 'none', descendents are focusable on web even when collapsed.
|
|
56
|
+
containerStyles.display = 'none';
|
|
74
57
|
} else {
|
|
75
58
|
// There's no `visibility: hidden` in React Native, and display: none causes a flicker on expand.
|
|
76
59
|
// Without some form of hiding, some children leak through even when closed e.g. `List.Item` bullets.
|
|
77
60
|
containerStyles.opacity = 0;
|
|
78
61
|
}
|
|
79
|
-
}
|
|
80
|
-
|
|
62
|
+
}
|
|
81
63
|
|
|
64
|
+
// don't visually collapse the container until we have it measured
|
|
82
65
|
if (containerHeight === null) {
|
|
83
|
-
if (
|
|
66
|
+
if (Platform.OS === 'web') {
|
|
84
67
|
// on web we can hide the contents until we have the container measured and avoid occasional jitter
|
|
85
68
|
// this won't work on native platforms
|
|
86
69
|
containerStyles.height = 0;
|
|
87
|
-
containerStyles.
|
|
70
|
+
containerStyles.display = 'none';
|
|
88
71
|
}
|
|
89
|
-
} else if (
|
|
72
|
+
} else if (Platform.OS === 'web') {
|
|
90
73
|
const transitionDuration = isExpanded ? expandDuration : collapseDuration;
|
|
91
|
-
containerStyles.transition =
|
|
74
|
+
containerStyles.transition = `height ${transitionDuration}ms ease-in-out`;
|
|
92
75
|
containerStyles.height = isExpanded ? containerHeight : 0;
|
|
93
|
-
} else if (
|
|
76
|
+
} else if (Platform.OS === 'ios' && isExpanded && !isAnimating && !expandStateChanged && typeof containerHeight === 'number') {
|
|
94
77
|
// iOS reflows text while the height animation is in progress. Sometimes, it hits a timing bug where
|
|
95
78
|
// it fails to reflow properly after the last animation frame, leaving the last line of text not visible.
|
|
96
79
|
// Force reflow after animation completes with a static height non-identical to the last animated height.
|
|
@@ -98,9 +81,6 @@ function useVerticalExpandAnimation(_ref) {
|
|
|
98
81
|
} else {
|
|
99
82
|
containerStyles.height = expandAnimatedValue;
|
|
100
83
|
}
|
|
101
|
-
|
|
102
84
|
return [containerStyles, elementRef];
|
|
103
85
|
}
|
|
104
|
-
|
|
105
|
-
var _default = useVerticalExpandAnimation;
|
|
106
|
-
exports.default = _default;
|
|
86
|
+
export default useVerticalExpandAnimation;
|
package/lib/utils/children.js
CHANGED
|
@@ -1,23 +1,6 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.wrapStringsInText = exports.unpackFragment = void 0;
|
|
7
|
-
|
|
8
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
-
|
|
10
|
-
var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
11
|
-
|
|
12
|
-
var _A11yText = _interopRequireDefault(require("../A11yText"));
|
|
13
|
-
|
|
14
|
-
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
-
|
|
16
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
-
|
|
18
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
19
|
-
|
|
20
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import Text from "react-native-web/dist/exports/Text";
|
|
3
|
+
import A11yText from '../A11yText';
|
|
21
4
|
|
|
22
5
|
/**
|
|
23
6
|
* Unpacks top-level fragments, so that common compositional patterns such as the following examples
|
|
@@ -51,42 +34,39 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
51
34
|
* @param {ReactChildren} child
|
|
52
35
|
* @returns {ReactChildren}
|
|
53
36
|
*/
|
|
54
|
-
|
|
37
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
38
|
+
export const unpackFragment = child => {
|
|
55
39
|
var _child$props;
|
|
56
|
-
|
|
57
40
|
// If this level is a set of top-level siblings rather than one child, check each in turn
|
|
58
|
-
if (
|
|
41
|
+
if (React.Children.count(child) > 1) return React.Children.map(child, unpackFragment);
|
|
59
42
|
|
|
60
|
-
|
|
43
|
+
// When a fragment is found, unpack its children to the top level and check them
|
|
44
|
+
if ((child === null || child === void 0 ? void 0 : child.type) === React.Fragment) return unpackFragment((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.children);
|
|
61
45
|
|
|
46
|
+
// Stop unpacking as soon as any non-fragment child is found
|
|
62
47
|
return child;
|
|
63
48
|
};
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
const isStringOrNumber = child => typeof child === 'string' || typeof child === 'number'; // Wrap an A11yText with neighouring text strings so it doesn't split them into multiple <Text>s
|
|
68
|
-
|
|
69
|
-
|
|
49
|
+
const isStringOrNumber = child => typeof child === 'string' || typeof child === 'number';
|
|
50
|
+
// Wrap an A11yText with neighouring text strings so it doesn't split them into multiple <Text>s
|
|
70
51
|
const isWrapable = child => {
|
|
71
52
|
var _child$type;
|
|
72
|
-
|
|
73
|
-
return isStringOrNumber(child) || child.type === _A11yText.default || ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.name) === 'FootnoteLink';
|
|
53
|
+
return isStringOrNumber(child) || child.type === A11yText || ((_child$type = child.type) === null || _child$type === void 0 ? void 0 : _child$type.name) === 'FootnoteLink';
|
|
74
54
|
};
|
|
55
|
+
const combineKeys = childrenArray => childrenArray.reduce((newKey, child) => `${newKey}${child.key || ''}`, '');
|
|
75
56
|
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
57
|
+
// Group wrappable children for one `<Text>` parent, merging adjacent text nodes
|
|
79
58
|
const wrapChild = (child, wrappedText) => {
|
|
80
|
-
const lastIndex = wrappedText.length - 1;
|
|
59
|
+
const lastIndex = wrappedText.length - 1;
|
|
60
|
+
// If possible, simplify content by combining text nodes into one string.
|
|
81
61
|
// jest-native's `.toHaveTextContent` is buggy about array of text nodes in <Text> elements.
|
|
82
|
-
|
|
83
62
|
if (lastIndex >= 0 && isStringOrNumber(child) && isStringOrNumber(wrappedText[lastIndex])) {
|
|
84
63
|
/* eslint-disable-next-line no-param-reassign */
|
|
85
|
-
wrappedText[lastIndex] =
|
|
64
|
+
wrappedText[lastIndex] = `${wrappedText[lastIndex]}${child}`;
|
|
86
65
|
} else {
|
|
87
66
|
wrappedText.push(child);
|
|
88
67
|
}
|
|
89
68
|
};
|
|
69
|
+
|
|
90
70
|
/**
|
|
91
71
|
* React Native on Native crashes if text content is rendered outside `<Text>`, and on web,
|
|
92
72
|
* text style inheritance behaves differently with text compared to regular HTML.
|
|
@@ -102,13 +82,12 @@ const wrapChild = (child, wrappedText) => {
|
|
|
102
82
|
* @param {TextProps} props
|
|
103
83
|
* @returns {ReactChildren}
|
|
104
84
|
*/
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
const wrapStringsInText = function (children) {
|
|
85
|
+
export const wrapStringsInText = function (children) {
|
|
108
86
|
let textProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
109
|
-
const childrenArray = unpackFragment(
|
|
110
|
-
// as possible, e.g. give <X>Text {someString}</X> one Text, same as <X>{`Text ${someString}`}</X>
|
|
87
|
+
const childrenArray = unpackFragment(React.Children.toArray(children));
|
|
111
88
|
|
|
89
|
+
// Group adjacent wrapable children together in one Text element to create as few Text elements
|
|
90
|
+
// as possible, e.g. give <X>Text {someString}</X> one Text, same as <X>{`Text ${someString}`}</X>
|
|
112
91
|
const wrapables = [[]];
|
|
113
92
|
let wrapablesIndex = 0;
|
|
114
93
|
childrenArray.forEach(child => {
|
|
@@ -129,11 +108,10 @@ const wrapStringsInText = function (children) {
|
|
|
129
108
|
// Wrap text nodes and their wrappable neighbours in Text with as stable a key as possible.
|
|
130
109
|
// Avoid one-item arrays because jest-native's `.toHaveTextContent` is buggy
|
|
131
110
|
// and sometimes fails to match text content in arrays.
|
|
132
|
-
(
|
|
111
|
+
_jsx(Text, {
|
|
112
|
+
...textProps,
|
|
133
113
|
children: group.length === 1 ? group[0] : group
|
|
134
114
|
}, combineKeys(group) || index) : group];
|
|
135
115
|
}, []);
|
|
136
116
|
return items.length === 1 ? items[0] : items;
|
|
137
|
-
};
|
|
138
|
-
|
|
139
|
-
exports.wrapStringsInText = wrapStringsInText;
|
|
117
|
+
};
|