@telus-uds/components-base 1.1.0 → 1.3.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/.turbo/turbo-build.log +8 -0
- package/CHANGELOG.json +38 -0
- package/CHANGELOG.md +35 -2
- package/__fixtures__/Accessible.js +4 -2
- package/__fixtures__/Accessible.native.js +5 -2
- package/__fixtures__/testTheme.js +9 -0
- package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +35 -0
- package/__tests__/ActivityIndicator/__snapshots__/ActivityIndicator.test.jsx.snap +287 -0
- package/__tests__/FlexGrid/Col.test.jsx +6 -10
- package/__tests__/HorizontalScroll/HorizontalScroll.test.jsx +1 -0
- package/__tests__/ToggleSwitch/ToggleSwitch.test.jsx +10 -0
- package/__tests__/ToggleSwitch/ToggleSwitchGroup.test.jsx +192 -0
- package/__tests__/utils/props.test.js +36 -0
- package/__tests__/utils/semantics.test.jsx +1 -10
- package/babel.config.js +27 -5
- package/component-docs.json +638 -1145
- package/generate-component-docs.js +3 -0
- package/lib/A11yText/index.js +6 -5
- package/lib/ActivityIndicator/Spinner.js +46 -37
- package/lib/ActivityIndicator/Spinner.native.js +26 -15
- package/lib/ActivityIndicator/index.js +3 -3
- package/lib/Box/Box.js +8 -8
- package/lib/Button/Button.js +2 -2
- package/lib/Button/ButtonBase.js +25 -12
- package/lib/Button/ButtonGroup.js +10 -12
- package/lib/Button/ButtonLink.js +4 -4
- package/lib/Button/propTypes.js +4 -2
- package/lib/Card/Card.js +6 -5
- package/lib/Card/CardBase.js +6 -9
- package/lib/Card/PressableCardBase.js +15 -14
- package/lib/Checkbox/Checkbox.js +4 -8
- package/lib/Divider/Divider.js +14 -13
- package/lib/ExpandCollapse/Control.js +7 -7
- package/lib/ExpandCollapse/ExpandCollapse.js +6 -2
- package/lib/ExpandCollapse/Panel.js +6 -7
- package/lib/Feedback/Feedback.js +6 -5
- package/lib/Fieldset/Fieldset.js +1 -3
- package/lib/FlexGrid/FlexGrid.js +4 -4
- package/lib/FlexGrid/helpers/index.js +1 -4
- package/lib/HorizontalScroll/HorizontalScroll.js +5 -6
- package/lib/IconButton/IconButton.js +14 -9
- package/lib/InputLabel/InputLabel.js +7 -2
- package/lib/InputSupports/InputSupports.js +2 -2
- package/lib/Link/LinkBase.js +21 -15
- package/lib/List/List.js +4 -6
- package/lib/List/ListItem.js +6 -2
- package/lib/Modal/Modal.js +6 -2
- package/lib/Notification/Notification.js +7 -2
- package/lib/Pagination/PageButton.js +3 -1
- package/lib/Pagination/Pagination.js +22 -5
- package/lib/Pagination/SideButton.js +3 -1
- package/lib/Progress/Progress.js +5 -4
- package/lib/Progress/ProgressBar.js +8 -7
- package/lib/Radio/Radio.js +4 -8
- package/lib/Radio/RadioButton.js +6 -3
- package/lib/Radio/RadioGroup.js +7 -2
- package/lib/RadioCard/RadioCard.js +4 -4
- package/lib/RadioCard/RadioCardGroup.js +9 -6
- package/lib/Search/Search.js +7 -2
- package/lib/Select/Select.js +10 -9
- package/lib/SideNav/Item.js +7 -7
- package/lib/SideNav/SideNav.js +7 -3
- package/lib/Skeleton/Skeleton.js +6 -2
- package/lib/Spacer/Spacer.js +9 -20
- package/lib/StackView/StackView.js +7 -7
- package/lib/StackView/StackWrapBox.js +6 -7
- package/lib/StackView/StackWrapGap.js +6 -5
- package/lib/StackView/getStackedContent.js +1 -1
- package/lib/StepTracker/Step.js +7 -3
- package/lib/StepTracker/StepTracker.js +7 -7
- package/lib/Tabs/Tabs.js +16 -4
- package/lib/Tabs/TabsItem.js +18 -11
- package/lib/Tags/Tags.js +11 -12
- package/lib/TextInput/TextArea.js +13 -14
- package/lib/TextInput/TextInput.js +13 -14
- package/lib/TextInput/TextInputBase.js +5 -3
- package/lib/ThemeProvider/useThemeTokens.js +3 -3
- package/lib/ThemeProvider/utils/theme-tokens.js +3 -3
- package/lib/ToggleSwitch/ToggleSwitch.js +106 -43
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +228 -0
- package/lib/ToggleSwitch/index.js +14 -4
- package/lib/Tooltip/Tooltip.js +7 -2
- package/lib/TooltipButton/TooltipButton.js +7 -2
- package/lib/Typography/Typography.js +8 -6
- package/lib/index.js +20 -8
- package/lib/utils/a11y/semantics.js +4 -3
- package/lib/utils/children.js +5 -1
- package/lib/utils/index.js +28 -5
- package/lib/utils/pressability.js +2 -2
- package/lib/utils/props/a11yProps.js +153 -0
- package/lib/utils/props/clickProps.js +36 -0
- package/lib/utils/props/componentPropType.js +70 -0
- package/lib/utils/props/copyPropTypes.js +14 -0
- package/lib/utils/props/getPropSelector.js +13 -0
- package/lib/utils/props/hrefAttrsProp.js +41 -0
- package/lib/utils/props/index.js +158 -0
- package/lib/{InputSupports/propTypes.js → utils/props/inputSupportsProps.js} +2 -3
- package/lib/utils/props/linkProps.js +64 -0
- package/lib/utils/props/paddingProp.js +20 -0
- package/lib/utils/props/pressProps.js +57 -0
- package/lib/utils/props/rectProp.js +20 -0
- package/lib/utils/props/responsiveProps.js +40 -0
- package/lib/utils/props/selectSystemProps.js +31 -0
- package/lib/utils/props/spacingProps.js +71 -0
- package/lib/utils/props/tokens.js +145 -0
- package/lib/utils/props/variantProp.js +28 -0
- package/lib/utils/props/viewProps.js +34 -0
- package/lib/utils/ssr.js +51 -0
- package/lib/utils/useResponsiveProp.js +1 -1
- package/lib/utils/useSpacingScale.js +4 -4
- package/lib/utils/withLinkRouter.js +98 -0
- package/lib-module/A11yInfoProvider/index.js +62 -0
- package/lib-module/A11yText/index.js +55 -0
- package/lib-module/ActivityIndicator/Spinner.js +76 -0
- package/lib-module/ActivityIndicator/Spinner.native.js +143 -0
- package/lib-module/ActivityIndicator/index.js +40 -0
- package/lib-module/ActivityIndicator/shared.js +12 -0
- package/lib-module/BaseProvider/index.js +26 -0
- package/lib-module/Box/Box.js +243 -0
- package/lib-module/Box/index.js +2 -0
- package/lib-module/Button/Button.js +25 -0
- package/lib-module/Button/ButtonBase.js +254 -0
- package/lib-module/Button/ButtonGroup.js +164 -0
- package/lib-module/Button/ButtonLink.js +39 -0
- package/lib-module/Button/index.js +4 -0
- package/lib-module/Button/propTypes.js +36 -0
- package/lib-module/Card/Card.js +83 -0
- package/lib-module/Card/CardBase.js +62 -0
- package/lib-module/Card/PressableCardBase.js +113 -0
- package/lib-module/Card/index.js +4 -0
- package/lib-module/Checkbox/Checkbox.js +321 -0
- package/lib-module/Checkbox/CheckboxGroup.js +218 -0
- package/lib-module/Checkbox/CheckboxInput.js +58 -0
- package/lib-module/Checkbox/CheckboxInput.native.js +6 -0
- package/lib-module/Checkbox/index.js +3 -0
- package/lib-module/Divider/Divider.js +123 -0
- package/lib-module/Divider/index.js +2 -0
- package/lib-module/ExpandCollapse/Accordion.js +15 -0
- package/lib-module/ExpandCollapse/Control.js +130 -0
- package/lib-module/ExpandCollapse/ExpandCollapse.js +94 -0
- package/lib-module/ExpandCollapse/Panel.js +158 -0
- package/lib-module/ExpandCollapse/index.js +7 -0
- package/lib-module/Feedback/Feedback.js +144 -0
- package/lib-module/Feedback/index.js +2 -0
- package/lib-module/Fieldset/Fieldset.js +145 -0
- package/lib-module/Fieldset/FieldsetContainer.js +29 -0
- package/lib-module/Fieldset/FieldsetContainer.native.js +20 -0
- package/lib-module/Fieldset/Legend.js +21 -0
- package/lib-module/Fieldset/Legend.native.js +28 -0
- package/lib-module/Fieldset/cssReset.js +14 -0
- package/lib-module/Fieldset/index.js +2 -0
- package/lib-module/FlexGrid/Col/Col.js +265 -0
- package/lib-module/FlexGrid/Col/index.js +2 -0
- package/lib-module/FlexGrid/FlexGrid.js +147 -0
- package/lib-module/FlexGrid/Row/Row.js +177 -0
- package/lib-module/FlexGrid/Row/index.js +2 -0
- package/lib-module/FlexGrid/helpers/index.js +18 -0
- package/lib-module/FlexGrid/index.js +2 -0
- package/lib-module/FlexGrid/providers/GutterContext.js +3 -0
- package/lib-module/HorizontalScroll/HorizontalScroll.js +171 -0
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +102 -0
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +47 -0
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +24 -0
- package/lib-module/HorizontalScroll/dictionary.js +11 -0
- package/lib-module/HorizontalScroll/index.js +11 -0
- package/lib-module/HorizontalScroll/itemPositions.js +106 -0
- package/lib-module/Icon/Icon.js +61 -0
- package/lib-module/Icon/IconText.js +81 -0
- package/lib-module/Icon/index.js +4 -0
- package/lib-module/IconButton/IconButton.js +115 -0
- package/lib-module/IconButton/index.js +2 -0
- package/lib-module/InputLabel/InputLabel.js +131 -0
- package/lib-module/InputLabel/LabelContent.js +24 -0
- package/lib-module/InputLabel/LabelContent.native.js +16 -0
- package/lib-module/InputLabel/index.js +2 -0
- package/lib-module/InputSupports/InputSupports.js +88 -0
- package/lib-module/InputSupports/index.js +2 -0
- package/lib-module/InputSupports/useInputSupports.js +31 -0
- package/lib-module/Link/ChevronLink.js +51 -0
- package/lib-module/Link/InlinePressable.js +37 -0
- package/lib-module/Link/InlinePressable.native.js +85 -0
- package/lib-module/Link/Link.js +27 -0
- package/lib-module/Link/LinkBase.js +210 -0
- package/lib-module/Link/TextButton.js +43 -0
- package/lib-module/Link/index.js +5 -0
- package/lib-module/List/List.js +55 -0
- package/lib-module/List/ListItem.js +213 -0
- package/lib-module/List/index.js +5 -0
- package/lib-module/Modal/Modal.js +208 -0
- package/lib-module/Modal/dictionary.js +9 -0
- package/lib-module/Modal/index.js +2 -0
- package/lib-module/Notification/Notification.js +196 -0
- package/lib-module/Notification/dictionary.js +8 -0
- package/lib-module/Notification/index.js +2 -0
- package/lib-module/Pagination/PageButton.js +65 -0
- package/lib-module/Pagination/Pagination.js +140 -0
- package/lib-module/Pagination/SideButton.js +103 -0
- package/lib-module/Pagination/dictionary.js +18 -0
- package/lib-module/Pagination/index.js +2 -0
- package/lib-module/Pagination/usePagination.js +72 -0
- package/lib-module/Progress/Progress.js +85 -0
- package/lib-module/Progress/ProgressBar.js +134 -0
- package/lib-module/Progress/ProgressBarBackground.js +41 -0
- package/lib-module/Progress/index.js +4 -0
- package/lib-module/Radio/Radio.js +263 -0
- package/lib-module/Radio/RadioButton.js +128 -0
- package/lib-module/Radio/RadioGroup.js +225 -0
- package/lib-module/Radio/RadioInput.js +60 -0
- package/lib-module/Radio/RadioInput.native.js +6 -0
- package/lib-module/Radio/index.js +3 -0
- package/lib-module/RadioCard/RadioCard.js +218 -0
- package/lib-module/RadioCard/RadioCardGroup.js +232 -0
- package/lib-module/RadioCard/index.js +3 -0
- package/lib-module/Search/Search.js +233 -0
- package/lib-module/Search/dictionary.js +12 -0
- package/lib-module/Search/index.js +2 -0
- package/lib-module/Select/Group.js +20 -0
- package/lib-module/Select/Group.native.js +14 -0
- package/lib-module/Select/Item.js +17 -0
- package/lib-module/Select/Item.native.js +9 -0
- package/lib-module/Select/Picker.js +67 -0
- package/lib-module/Select/Picker.native.js +110 -0
- package/lib-module/Select/Select.js +317 -0
- package/lib-module/Select/index.js +6 -0
- package/lib-module/SideNav/Item.js +139 -0
- package/lib-module/SideNav/ItemContent.js +45 -0
- package/lib-module/SideNav/ItemsGroup.js +115 -0
- package/lib-module/SideNav/SideNav.js +133 -0
- package/lib-module/SideNav/index.js +1 -0
- package/lib-module/Skeleton/Skeleton.js +117 -0
- package/lib-module/Skeleton/index.js +2 -0
- package/lib-module/Skeleton/skeleton.constant.js +3 -0
- package/lib-module/Skeleton/skeletonWebAnimation.js +18 -0
- package/lib-module/Skeleton/useSkeletonNativeAnimation.js +24 -0
- package/lib-module/Spacer/Spacer.js +97 -0
- package/lib-module/Spacer/index.js +2 -0
- package/lib-module/StackView/StackView.js +124 -0
- package/lib-module/StackView/StackWrap.js +48 -0
- package/lib-module/StackView/StackWrap.native.js +3 -0
- package/lib-module/StackView/StackWrapBox.js +114 -0
- package/lib-module/StackView/StackWrapGap.js +58 -0
- package/lib-module/StackView/common.js +32 -0
- package/lib-module/StackView/getStackedContent.js +123 -0
- package/lib-module/StackView/index.js +5 -0
- package/lib-module/StepTracker/Step.js +229 -0
- package/lib-module/StepTracker/StepTracker.js +175 -0
- package/lib-module/StepTracker/dictionary.js +10 -0
- package/lib-module/StepTracker/index.js +2 -0
- package/lib-module/Tabs/Tabs.js +113 -0
- package/lib-module/Tabs/TabsItem.js +215 -0
- package/lib-module/Tabs/index.js +2 -0
- package/lib-module/Tags/Tags.js +238 -0
- package/lib-module/Tags/index.js +2 -0
- package/lib-module/TextInput/TextArea.js +88 -0
- package/lib-module/TextInput/TextInput.js +60 -0
- package/lib-module/TextInput/TextInputBase.js +233 -0
- package/lib-module/TextInput/index.js +3 -0
- package/lib-module/TextInput/propTypes.js +31 -0
- package/lib-module/ThemeProvider/ThemeProvider.js +35 -0
- package/lib-module/ThemeProvider/index.js +6 -0
- package/lib-module/ThemeProvider/useSetTheme.js +22 -0
- package/lib-module/ThemeProvider/useTheme.js +14 -0
- package/lib-module/ThemeProvider/useThemeTokens.js +105 -0
- package/lib-module/ThemeProvider/utils/index.js +2 -0
- package/lib-module/ThemeProvider/utils/styles.js +174 -0
- package/lib-module/ThemeProvider/utils/theme-tokens.js +151 -0
- package/lib-module/ToggleSwitch/ToggleSwitch.js +224 -0
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +202 -0
- package/lib-module/ToggleSwitch/index.js +3 -0
- package/lib-module/Tooltip/Backdrop.js +52 -0
- package/lib-module/Tooltip/Backdrop.native.js +43 -0
- package/lib-module/Tooltip/Tooltip.js +332 -0
- package/lib-module/Tooltip/dictionary.js +8 -0
- package/lib-module/Tooltip/getTooltipPosition.js +164 -0
- package/lib-module/Tooltip/index.js +2 -0
- package/lib-module/TooltipButton/TooltipButton.js +71 -0
- package/lib-module/TooltipButton/index.js +2 -0
- package/lib-module/Typography/Typography.js +118 -0
- package/lib-module/Typography/index.js +2 -0
- package/lib-module/ViewportProvider/ViewportProvider.js +28 -0
- package/lib-module/ViewportProvider/index.js +3 -0
- package/lib-module/ViewportProvider/useViewport.js +3 -0
- package/lib-module/ViewportProvider/useViewportListener.js +43 -0
- package/lib-module/index.js +48 -0
- package/lib-module/utils/a11y/index.js +2 -0
- package/lib-module/utils/a11y/semantics.js +154 -0
- package/lib-module/utils/a11y/textSize.js +34 -0
- package/lib-module/utils/animation/index.js +2 -0
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +49 -0
- package/lib-module/utils/children.js +118 -0
- package/lib-module/utils/index.js +15 -0
- package/lib-module/utils/info/index.js +7 -0
- package/lib-module/utils/info/platform/index.js +11 -0
- package/lib-module/utils/info/platform/platform.android.js +1 -0
- package/lib-module/utils/info/platform/platform.ios.js +1 -0
- package/lib-module/utils/info/platform/platform.js +1 -0
- package/lib-module/utils/info/platform/platform.native.js +4 -0
- package/lib-module/utils/info/versions.js +5 -0
- package/lib-module/utils/input.js +180 -0
- package/lib-module/utils/pressability.js +97 -0
- package/lib-module/utils/props/a11yProps.js +140 -0
- package/lib-module/utils/props/clickProps.js +25 -0
- package/lib-module/utils/props/componentPropType.js +63 -0
- package/lib-module/utils/props/copyPropTypes.js +2 -0
- package/lib-module/utils/props/getPropSelector.js +6 -0
- package/lib-module/utils/props/hrefAttrsProp.js +30 -0
- package/lib-module/utils/props/index.js +16 -0
- package/lib-module/utils/props/inputSupportsProps.js +54 -0
- package/lib-module/utils/props/linkProps.js +47 -0
- package/lib-module/utils/props/paddingProp.js +9 -0
- package/lib-module/utils/props/pressProps.js +42 -0
- package/lib-module/utils/props/rectProp.js +9 -0
- package/lib-module/utils/props/responsiveProps.js +30 -0
- package/lib-module/utils/props/selectSystemProps.js +24 -0
- package/lib-module/utils/props/spacingProps.js +56 -0
- package/lib-module/utils/props/tokens.js +120 -0
- package/lib-module/utils/props/variantProp.js +18 -0
- package/lib-module/utils/props/viewProps.js +22 -0
- package/lib-module/utils/ssr.js +35 -0
- package/lib-module/utils/useCopy.js +42 -0
- package/lib-module/utils/useHash.js +44 -0
- package/lib-module/utils/useHash.native.js +7 -0
- package/lib-module/utils/useResponsiveProp.js +47 -0
- package/lib-module/utils/useSpacingScale.js +123 -0
- package/lib-module/utils/useUniqueId.js +12 -0
- package/lib-module/utils/withLinkRouter.js +82 -0
- package/package.json +9 -5
- package/src/A11yText/index.jsx +7 -3
- package/src/ActivityIndicator/Spinner.jsx +56 -44
- package/src/ActivityIndicator/Spinner.native.jsx +20 -12
- package/src/ActivityIndicator/index.jsx +1 -1
- package/src/Box/Box.jsx +15 -13
- package/src/Button/Button.jsx +1 -1
- package/src/Button/ButtonBase.jsx +20 -12
- package/src/Button/ButtonGroup.jsx +17 -8
- package/src/Button/ButtonLink.jsx +1 -1
- package/src/Button/propTypes.js +2 -1
- package/src/Card/Card.jsx +7 -4
- package/src/Card/CardBase.jsx +6 -5
- package/src/Card/PressableCardBase.jsx +16 -14
- package/src/Checkbox/Checkbox.jsx +12 -7
- package/src/Divider/Divider.jsx +19 -12
- package/src/ExpandCollapse/Control.jsx +12 -7
- package/src/ExpandCollapse/ExpandCollapse.jsx +13 -3
- package/src/ExpandCollapse/Panel.jsx +15 -5
- package/src/Feedback/Feedback.jsx +13 -3
- package/src/Fieldset/Fieldset.jsx +1 -1
- package/src/FlexGrid/FlexGrid.jsx +11 -5
- package/src/FlexGrid/helpers/index.js +1 -3
- package/src/HorizontalScroll/HorizontalScroll.jsx +12 -5
- package/src/IconButton/IconButton.jsx +18 -12
- package/src/InputLabel/InputLabel.jsx +16 -2
- package/src/InputSupports/InputSupports.jsx +1 -1
- package/src/Link/LinkBase.jsx +15 -12
- package/src/List/List.jsx +12 -5
- package/src/List/ListItem.jsx +16 -2
- package/src/Modal/Modal.jsx +63 -50
- package/src/Notification/Notification.jsx +17 -3
- package/src/Pagination/PageButton.jsx +3 -2
- package/src/Pagination/Pagination.jsx +38 -4
- package/src/Pagination/SideButton.jsx +2 -2
- package/src/Progress/Progress.jsx +5 -3
- package/src/Progress/ProgressBar.jsx +8 -6
- package/src/Radio/Radio.jsx +13 -7
- package/src/Radio/RadioButton.jsx +13 -3
- package/src/Radio/RadioGroup.jsx +14 -2
- package/src/RadioCard/RadioCard.jsx +9 -6
- package/src/RadioCard/RadioCardGroup.jsx +16 -4
- package/src/Search/Search.jsx +15 -3
- package/src/Select/Select.jsx +21 -7
- package/src/SideNav/Item.jsx +15 -7
- package/src/SideNav/SideNav.jsx +13 -2
- package/src/Skeleton/Skeleton.jsx +55 -43
- package/src/Spacer/Spacer.jsx +10 -18
- package/src/StackView/StackView.jsx +13 -12
- package/src/StackView/StackWrapBox.jsx +12 -12
- package/src/StackView/StackWrapGap.jsx +9 -7
- package/src/StackView/getStackedContent.jsx +1 -1
- package/src/StepTracker/Step.jsx +7 -4
- package/src/StepTracker/StepTracker.jsx +8 -8
- package/src/Tabs/Tabs.jsx +63 -23
- package/src/Tabs/TabsItem.jsx +22 -14
- package/src/Tags/Tags.jsx +16 -7
- package/src/TextInput/TextArea.jsx +20 -8
- package/src/TextInput/TextInput.jsx +20 -8
- package/src/TextInput/TextInputBase.jsx +13 -3
- package/src/ThemeProvider/useThemeTokens.js +3 -3
- package/src/ThemeProvider/utils/theme-tokens.js +3 -3
- package/src/ToggleSwitch/ToggleSwitch.jsx +104 -41
- package/src/ToggleSwitch/ToggleSwitchGroup.jsx +211 -0
- package/src/ToggleSwitch/index.js +2 -1
- package/src/Tooltip/Tooltip.jsx +13 -3
- package/src/TooltipButton/TooltipButton.jsx +6 -4
- package/src/Typography/Typography.jsx +10 -6
- package/src/index.js +2 -2
- package/src/utils/a11y/semantics.js +3 -2
- package/src/utils/children.jsx +2 -1
- package/src/utils/index.js +3 -1
- package/src/utils/pressability.js +1 -1
- package/src/utils/props/a11yProps.js +151 -0
- package/src/utils/props/clickProps.js +31 -0
- package/src/utils/props/componentPropType.js +67 -0
- package/src/utils/props/copyPropTypes.js +3 -0
- package/src/utils/props/getPropSelector.js +14 -0
- package/src/utils/props/hrefAttrsProp.js +25 -0
- package/src/utils/props/index.js +16 -0
- package/src/{InputSupports/propTypes.js → utils/props/inputSupportsProps.js} +2 -4
- package/src/utils/props/linkProps.js +43 -0
- package/src/utils/props/paddingProp.js +10 -0
- package/src/utils/props/pressProps.js +45 -0
- package/src/utils/props/rectProp.js +10 -0
- package/src/utils/props/responsiveProps.js +30 -0
- package/src/utils/props/selectSystemProps.js +25 -0
- package/src/utils/props/spacingProps.js +58 -0
- package/src/utils/props/tokens.js +150 -0
- package/src/utils/props/variantProp.js +20 -0
- package/src/utils/props/viewProps.js +23 -0
- package/src/utils/ssr.js +35 -0
- package/src/utils/useResponsiveProp.js +1 -1
- package/src/utils/useSpacingScale.js +4 -4
- package/src/utils/withLinkRouter.jsx +68 -0
- package/stories/TextInput/TextArea.stories.jsx +1 -0
- package/stories/ToggleSwitch/ToggleSwitch.stories.jsx +5 -1
- package/stories/ToggleSwitch/ToggleSwitchGroup.stories.jsx +81 -0
- package/.ultra.cache.json +0 -1
- package/lib/utils/a11y/propTypes.js +0 -61
- package/lib/utils/a11y/propTypes.native.js +0 -47
- package/lib/utils/propTypes.js +0 -541
- package/release-context.json +0 -7
- package/src/utils/a11y/propTypes.js +0 -61
- package/src/utils/a11y/propTypes.native.js +0 -39
- package/src/utils/propTypes.js +0 -531
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _airbnbPropTypes = _interopRequireDefault(require("airbnb-prop-types"));
|
|
13
|
+
|
|
14
|
+
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
15
|
+
|
|
16
|
+
var _ToggleSwitch = _interopRequireDefault(require("./ToggleSwitch"));
|
|
17
|
+
|
|
18
|
+
var _Fieldset = _interopRequireDefault(require("../Fieldset"));
|
|
19
|
+
|
|
20
|
+
var _StackView = require("../StackView");
|
|
21
|
+
|
|
22
|
+
var _ViewportProvider = require("../ViewportProvider");
|
|
23
|
+
|
|
24
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
25
|
+
|
|
26
|
+
var _props = require("../utils/props");
|
|
27
|
+
|
|
28
|
+
var _input = require("../utils/input");
|
|
29
|
+
|
|
30
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
31
|
+
|
|
32
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
33
|
+
|
|
34
|
+
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); }
|
|
35
|
+
|
|
36
|
+
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; }
|
|
37
|
+
|
|
38
|
+
const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_props.a11yProps, _props.pressProps, _props.viewProps]);
|
|
39
|
+
const ToggleSwitchGroup = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
40
|
+
variant,
|
|
41
|
+
tokens,
|
|
42
|
+
items = [],
|
|
43
|
+
values,
|
|
44
|
+
initialValues,
|
|
45
|
+
maxValues = 1,
|
|
46
|
+
onChange,
|
|
47
|
+
readOnly = false,
|
|
48
|
+
inactive = false,
|
|
49
|
+
feedback,
|
|
50
|
+
hint,
|
|
51
|
+
tooltip,
|
|
52
|
+
legend,
|
|
53
|
+
name: inputGroupName,
|
|
54
|
+
accessibilityRole = maxValues === 1 ? 'radiogroup' // radiogroup is cross-platform; only web aria has generic groups
|
|
55
|
+
: _Platform.default.select({
|
|
56
|
+
web: 'group',
|
|
57
|
+
default: 'none'
|
|
58
|
+
}),
|
|
59
|
+
toggleSwitchTokens,
|
|
60
|
+
validation,
|
|
61
|
+
...rest
|
|
62
|
+
}, ref) => {
|
|
63
|
+
const viewport = (0, _ViewportProvider.useViewport)();
|
|
64
|
+
const {
|
|
65
|
+
space,
|
|
66
|
+
fieldSpace
|
|
67
|
+
} = (0, _ThemeProvider.useThemeTokens)('ToggleSwitchGroup', tokens, variant, {
|
|
68
|
+
viewport
|
|
69
|
+
});
|
|
70
|
+
const {
|
|
71
|
+
currentValues,
|
|
72
|
+
toggleOneValue
|
|
73
|
+
} = (0, _input.useMultipleInputValues)({
|
|
74
|
+
initialValues,
|
|
75
|
+
values,
|
|
76
|
+
maxValues,
|
|
77
|
+
onChange,
|
|
78
|
+
readOnly
|
|
79
|
+
});
|
|
80
|
+
const selectedProps = selectProps({
|
|
81
|
+
accessibilityRole,
|
|
82
|
+
...rest
|
|
83
|
+
});
|
|
84
|
+
const itemA11yRole = selectedProps.accessibilityRole === 'radiogroup' ? 'radio' : 'switch';
|
|
85
|
+
const toggleSwitches = items.map(({
|
|
86
|
+
label,
|
|
87
|
+
id = label,
|
|
88
|
+
accessibilityLabel = label,
|
|
89
|
+
onChange: itemOnChange,
|
|
90
|
+
ref: itemRef,
|
|
91
|
+
tooltip: itemTooltip
|
|
92
|
+
}, index) => {
|
|
93
|
+
const isSelected = currentValues.includes(id);
|
|
94
|
+
|
|
95
|
+
const handleChange = (newCheckedState, event) => {
|
|
96
|
+
if (typeof itemOnChange === 'function') itemOnChange(newCheckedState, event);
|
|
97
|
+
toggleOneValue(id, event);
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
const itemA11y = {
|
|
101
|
+
accessibilityState: {
|
|
102
|
+
checked: isSelected
|
|
103
|
+
},
|
|
104
|
+
accessibilityRole: itemA11yRole,
|
|
105
|
+
accessibilityLabel,
|
|
106
|
+
..._props.a11yProps.getPositionInSet(items.length, index)
|
|
107
|
+
};
|
|
108
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ToggleSwitch.default, {
|
|
109
|
+
id: id,
|
|
110
|
+
ref: itemRef,
|
|
111
|
+
onChange: handleChange,
|
|
112
|
+
tokens: toggleSwitchTokens,
|
|
113
|
+
value: isSelected,
|
|
114
|
+
inactive: inactive,
|
|
115
|
+
label: label,
|
|
116
|
+
tooltip: itemTooltip,
|
|
117
|
+
...itemA11y
|
|
118
|
+
}, id);
|
|
119
|
+
});
|
|
120
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Fieldset.default, {
|
|
121
|
+
ref: ref,
|
|
122
|
+
name: inputGroupName,
|
|
123
|
+
legend: legend,
|
|
124
|
+
tooltip: tooltip,
|
|
125
|
+
hint: hint,
|
|
126
|
+
space: fieldSpace,
|
|
127
|
+
feedback: feedback,
|
|
128
|
+
inactive: inactive,
|
|
129
|
+
validation: validation,
|
|
130
|
+
...selectedProps,
|
|
131
|
+
children: (0, _StackView.getStackedContent)(toggleSwitches, {
|
|
132
|
+
space,
|
|
133
|
+
direction: 'column'
|
|
134
|
+
})
|
|
135
|
+
});
|
|
136
|
+
});
|
|
137
|
+
ToggleSwitchGroup.displayName = 'ToggleSwitchGroup';
|
|
138
|
+
ToggleSwitchGroup.propTypes = { ...selectedSystemPropTypes,
|
|
139
|
+
tokens: (0, _props.getTokensPropType)('ToggleSwitchGroup'),
|
|
140
|
+
variant: _props.variantProp.propType,
|
|
141
|
+
|
|
142
|
+
/**
|
|
143
|
+
* The maximum number of items a user may select at once. Defaults to 1 and behaves
|
|
144
|
+
* like radio buttons. To have no limit and allow any number of selections, pass `null`.
|
|
145
|
+
*/
|
|
146
|
+
maxValues: _propTypes.default.number,
|
|
147
|
+
|
|
148
|
+
/**
|
|
149
|
+
* The options a user may select
|
|
150
|
+
*/
|
|
151
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
152
|
+
/**
|
|
153
|
+
* The text displayed to the user on the label.
|
|
154
|
+
*/
|
|
155
|
+
label: _propTypes.default.string.isRequired,
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* An optional accessibility label may be passed to each ToggleSwitch
|
|
159
|
+
* and will be applied as normal for a React Native accessibilityLabel prop.
|
|
160
|
+
*/
|
|
161
|
+
accessibilityLabel: _propTypes.default.string,
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* An optional unique string may be provided to identify this option,
|
|
165
|
+
* which will be used in code and passed to any onChange function.
|
|
166
|
+
* If not provided, the label is used.
|
|
167
|
+
*/
|
|
168
|
+
id: _propTypes.default.string,
|
|
169
|
+
|
|
170
|
+
/**
|
|
171
|
+
* An optional ref for one individual ToggleSwitch in the ToggleSwitchGroup
|
|
172
|
+
*/
|
|
173
|
+
ref: _airbnbPropTypes.default.ref()
|
|
174
|
+
})),
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* If provided, this function is called when the current selection is changed
|
|
178
|
+
* and is passed an array of the `id`s of all currently selected `items`.
|
|
179
|
+
*/
|
|
180
|
+
onChange: _propTypes.default.func,
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* If the selected item(s) in the toggle switch group are to be controlled externally by
|
|
184
|
+
* a parent component, pass an array of strings as well as an `onChange` handler.
|
|
185
|
+
* Passing an array for "values" makes the ToggleSwitchGroup a "controlled" component that
|
|
186
|
+
* expects its state to be handled via `onChange` and so doesn't handle it itself.
|
|
187
|
+
*/
|
|
188
|
+
values: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
189
|
+
|
|
190
|
+
/**
|
|
191
|
+
* If `values` is not passed, making the ToggleSwitchGroup an "uncontrolled" component
|
|
192
|
+
* managing its own selected state, a default set of selections may be provided.
|
|
193
|
+
* Changing the `initialValues` does not change the user's selections.
|
|
194
|
+
*/
|
|
195
|
+
initialValues: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
196
|
+
|
|
197
|
+
/**
|
|
198
|
+
* Optional additional text giving more detail to help a user make a choice.
|
|
199
|
+
*/
|
|
200
|
+
hint: _propTypes.default.string,
|
|
201
|
+
|
|
202
|
+
/**
|
|
203
|
+
* Optional tooltip text content to include alongside the legend and hint.
|
|
204
|
+
*/
|
|
205
|
+
tooltip: _propTypes.default.string,
|
|
206
|
+
|
|
207
|
+
/**
|
|
208
|
+
* If provided, a Feedback element is rendered containing this text.
|
|
209
|
+
*/
|
|
210
|
+
feedback: _propTypes.default.string,
|
|
211
|
+
|
|
212
|
+
/**
|
|
213
|
+
* Main text used to describe this group, used in Fieldset's Legend element.
|
|
214
|
+
*/
|
|
215
|
+
legend: _propTypes.default.string,
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Toggle switch token overrides.
|
|
219
|
+
*/
|
|
220
|
+
toggleSwitchTokens: (0, _props.getTokensPropType)('ToggleSwitch'),
|
|
221
|
+
|
|
222
|
+
/**
|
|
223
|
+
* Current validation status of the group, passed to the feedback element if there is one.
|
|
224
|
+
*/
|
|
225
|
+
validation: _propTypes.default.oneOf(['error', 'success'])
|
|
226
|
+
};
|
|
227
|
+
var _default = ToggleSwitchGroup;
|
|
228
|
+
exports.default = _default;
|
|
@@ -3,11 +3,21 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports
|
|
6
|
+
Object.defineProperty(exports, "ToggleSwitch", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ToggleSwitch.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ToggleSwitchGroup", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ToggleSwitchGroup.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
7
18
|
|
|
8
19
|
var _ToggleSwitch = _interopRequireDefault(require("./ToggleSwitch"));
|
|
9
20
|
|
|
10
|
-
|
|
21
|
+
var _ToggleSwitchGroup = _interopRequireDefault(require("./ToggleSwitchGroup"));
|
|
11
22
|
|
|
12
|
-
|
|
13
|
-
exports.default = _default;
|
|
23
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
package/lib/Tooltip/Tooltip.js
CHANGED
|
@@ -43,6 +43,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
43
43
|
|
|
44
44
|
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; }
|
|
45
45
|
|
|
46
|
+
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
47
|
+
|
|
46
48
|
const selectTooltipStyles = ({
|
|
47
49
|
backgroundColor,
|
|
48
50
|
paddingTop,
|
|
@@ -167,7 +169,8 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
167
169
|
position = 'auto',
|
|
168
170
|
copy = 'en',
|
|
169
171
|
tokens,
|
|
170
|
-
variant
|
|
172
|
+
variant,
|
|
173
|
+
...rest
|
|
171
174
|
}, ref) => {
|
|
172
175
|
const [isOpen, setIsOpen] = (0, _react.useState)(false);
|
|
173
176
|
const controlRef = (0, _react.useRef)();
|
|
@@ -280,6 +283,7 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
280
283
|
} : undefined;
|
|
281
284
|
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
|
|
282
285
|
style: staticStyles.container,
|
|
286
|
+
...selectProps(rest),
|
|
283
287
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Pressable.default, {
|
|
284
288
|
onPress: toggleIsOpen,
|
|
285
289
|
ref: controlRef,
|
|
@@ -312,7 +316,8 @@ const Tooltip = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
312
316
|
});
|
|
313
317
|
});
|
|
314
318
|
Tooltip.displayName = 'Tooltip';
|
|
315
|
-
Tooltip.propTypes = {
|
|
319
|
+
Tooltip.propTypes = { ...selectedSystemPropTypes,
|
|
320
|
+
|
|
316
321
|
/**
|
|
317
322
|
* Used to render the control (i.e. tooltip trigger). If a render function is used it will receive the
|
|
318
323
|
* pressable state and tooltip variant as an argument.
|
|
@@ -21,6 +21,8 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
21
21
|
|
|
22
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
23
|
|
|
24
|
+
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
25
|
+
|
|
24
26
|
const selectInnerContainerStyles = ({
|
|
25
27
|
borderRadius,
|
|
26
28
|
width
|
|
@@ -49,7 +51,8 @@ const selectIconTokens = ({
|
|
|
49
51
|
const TooltipButton = ({
|
|
50
52
|
pressableState,
|
|
51
53
|
tokens,
|
|
52
|
-
variant
|
|
54
|
+
variant,
|
|
55
|
+
...rest
|
|
53
56
|
}) => {
|
|
54
57
|
const themeTokens = (0, _ThemeProvider.useThemeTokens)('TooltipButton', tokens, variant, pressableState);
|
|
55
58
|
const {
|
|
@@ -57,6 +60,7 @@ const TooltipButton = ({
|
|
|
57
60
|
} = themeTokens;
|
|
58
61
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
59
62
|
style: (0, _ThemeProvider.applyOuterBorder)(themeTokens),
|
|
63
|
+
...selectProps(rest),
|
|
60
64
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
61
65
|
style: selectInnerContainerStyles(themeTokens),
|
|
62
66
|
children: IconComponent && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
|
|
@@ -67,7 +71,8 @@ const TooltipButton = ({
|
|
|
67
71
|
});
|
|
68
72
|
};
|
|
69
73
|
|
|
70
|
-
TooltipButton.propTypes = {
|
|
74
|
+
TooltipButton.propTypes = { ...selectedSystemPropTypes,
|
|
75
|
+
|
|
71
76
|
/**
|
|
72
77
|
* Used as appearances when resolving theme tokens.
|
|
73
78
|
*/
|
|
@@ -32,6 +32,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
32
32
|
/**
|
|
33
33
|
* @typedef {import('../utils/a11y/semantics').TextTag} TextTag
|
|
34
34
|
*/
|
|
35
|
+
const [selectProps, selectedSystemPropTypes] = (0, _utils2.selectSystemProps)([_utils2.a11yProps, _utils2.viewProps]);
|
|
36
|
+
|
|
35
37
|
const selectTextStyles = ({
|
|
36
38
|
fontWeight,
|
|
37
39
|
fontSize,
|
|
@@ -76,24 +78,24 @@ const Typography = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
|
76
78
|
dataSet,
|
|
77
79
|
maxFontSizeMultiplier: (0, _utils2.getMaxFontMultiplier)(themeTokens)
|
|
78
80
|
};
|
|
79
|
-
const
|
|
80
|
-
...
|
|
81
|
-
};
|
|
81
|
+
const selectedProps = selectProps({ ...(0, _utils2.getA11yPropsFromHtmlTag)(tag, accessibilityRole),
|
|
82
|
+
...rest
|
|
83
|
+
});
|
|
82
84
|
return block ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
83
85
|
ref: ref,
|
|
84
|
-
...
|
|
86
|
+
...selectedProps,
|
|
85
87
|
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, { ...textProps,
|
|
86
88
|
children: children
|
|
87
89
|
})
|
|
88
90
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
|
|
89
91
|
ref: ref,
|
|
90
92
|
...textProps,
|
|
91
|
-
...
|
|
93
|
+
...selectedProps,
|
|
92
94
|
children: children
|
|
93
95
|
});
|
|
94
96
|
});
|
|
95
97
|
Typography.displayName = 'Typography';
|
|
96
|
-
Typography.propTypes = { ...
|
|
98
|
+
Typography.propTypes = { ...selectedSystemPropTypes,
|
|
97
99
|
tokens: (0, _utils2.getTokensPropType)('Typography'),
|
|
98
100
|
variant: _utils2.variantProp.propType,
|
|
99
101
|
|
package/lib/index.js
CHANGED
|
@@ -38,7 +38,6 @@ var _exportNames = {
|
|
|
38
38
|
StepTracker: true,
|
|
39
39
|
Tabs: true,
|
|
40
40
|
Tags: true,
|
|
41
|
-
ToggleSwitch: true,
|
|
42
41
|
Tooltip: true,
|
|
43
42
|
TooltipButton: true,
|
|
44
43
|
Typography: true,
|
|
@@ -47,6 +46,7 @@ var _exportNames = {
|
|
|
47
46
|
BaseProvider: true,
|
|
48
47
|
ViewportProvider: true,
|
|
49
48
|
useViewport: true,
|
|
49
|
+
ViewportContext: true,
|
|
50
50
|
ThemeProvider: true,
|
|
51
51
|
useTheme: true,
|
|
52
52
|
useSetTheme: true,
|
|
@@ -257,12 +257,6 @@ Object.defineProperty(exports, "Tags", {
|
|
|
257
257
|
return _Tags.default;
|
|
258
258
|
}
|
|
259
259
|
});
|
|
260
|
-
Object.defineProperty(exports, "ToggleSwitch", {
|
|
261
|
-
enumerable: true,
|
|
262
|
-
get: function () {
|
|
263
|
-
return _ToggleSwitch.default;
|
|
264
|
-
}
|
|
265
|
-
});
|
|
266
260
|
Object.defineProperty(exports, "Tooltip", {
|
|
267
261
|
enumerable: true,
|
|
268
262
|
get: function () {
|
|
@@ -311,6 +305,12 @@ Object.defineProperty(exports, "useViewport", {
|
|
|
311
305
|
return _ViewportProvider.useViewport;
|
|
312
306
|
}
|
|
313
307
|
});
|
|
308
|
+
Object.defineProperty(exports, "ViewportContext", {
|
|
309
|
+
enumerable: true,
|
|
310
|
+
get: function () {
|
|
311
|
+
return _ViewportProvider.ViewportContext;
|
|
312
|
+
}
|
|
313
|
+
});
|
|
314
314
|
Object.defineProperty(exports, "ThemeProvider", {
|
|
315
315
|
enumerable: true,
|
|
316
316
|
get: function () {
|
|
@@ -516,7 +516,19 @@ Object.keys(_TextInput).forEach(function (key) {
|
|
|
516
516
|
});
|
|
517
517
|
});
|
|
518
518
|
|
|
519
|
-
var _ToggleSwitch =
|
|
519
|
+
var _ToggleSwitch = require("./ToggleSwitch");
|
|
520
|
+
|
|
521
|
+
Object.keys(_ToggleSwitch).forEach(function (key) {
|
|
522
|
+
if (key === "default" || key === "__esModule") return;
|
|
523
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
524
|
+
if (key in exports && exports[key] === _ToggleSwitch[key]) return;
|
|
525
|
+
Object.defineProperty(exports, key, {
|
|
526
|
+
enumerable: true,
|
|
527
|
+
get: function () {
|
|
528
|
+
return _ToggleSwitch[key];
|
|
529
|
+
}
|
|
530
|
+
});
|
|
531
|
+
});
|
|
520
532
|
|
|
521
533
|
var _Tooltip = _interopRequireDefault(require("./Tooltip"));
|
|
522
534
|
|
|
@@ -154,9 +154,10 @@ const getA11yPropsFromHtmlTag = (tag, nativeRole) => {
|
|
|
154
154
|
};
|
|
155
155
|
|
|
156
156
|
if (tag) {
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
157
|
+
// aria roles don't have native counterparts and RN may throw an error if an unrecognised role is passed
|
|
158
|
+
const ariaRole = _Platform.default.OS === 'web' && tagsToRoles[tag];
|
|
159
|
+
if (ariaRole) return {
|
|
160
|
+
accessibilityRole: ariaRole
|
|
160
161
|
};
|
|
161
162
|
const accessibilityLevel = getHeadingLevel(tag);
|
|
162
163
|
if (accessibilityLevel) return {
|
package/lib/utils/children.js
CHANGED
|
@@ -67,7 +67,11 @@ exports.unpackFragment = unpackFragment;
|
|
|
67
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
68
|
|
|
69
69
|
|
|
70
|
-
const isWrapable = child =>
|
|
70
|
+
const isWrapable = child => {
|
|
71
|
+
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';
|
|
74
|
+
};
|
|
71
75
|
|
|
72
76
|
const combineKeys = childrenArray => childrenArray.reduce((newKey, child) => `${newKey}${child.key || ''}`, ''); // Group wrappable children for one `<Text>` parent, merging adjacent text nodes
|
|
73
77
|
|
package/lib/utils/index.js
CHANGED
|
@@ -9,7 +9,8 @@ var _exportNames = {
|
|
|
9
9
|
useHash: true,
|
|
10
10
|
useSpacingScale: true,
|
|
11
11
|
useResponsiveProp: true,
|
|
12
|
-
useUniqueId: true
|
|
12
|
+
useUniqueId: true,
|
|
13
|
+
withLinkRouter: true
|
|
13
14
|
};
|
|
14
15
|
Object.defineProperty(exports, "info", {
|
|
15
16
|
enumerable: true,
|
|
@@ -47,6 +48,12 @@ Object.defineProperty(exports, "useUniqueId", {
|
|
|
47
48
|
return _useUniqueId.default;
|
|
48
49
|
}
|
|
49
50
|
});
|
|
51
|
+
Object.defineProperty(exports, "withLinkRouter", {
|
|
52
|
+
enumerable: true,
|
|
53
|
+
get: function () {
|
|
54
|
+
return _withLinkRouter.default;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
50
57
|
|
|
51
58
|
var _a11y = require("./a11y");
|
|
52
59
|
|
|
@@ -118,16 +125,16 @@ Object.keys(_pressability).forEach(function (key) {
|
|
|
118
125
|
});
|
|
119
126
|
});
|
|
120
127
|
|
|
121
|
-
var
|
|
128
|
+
var _props = require("./props");
|
|
122
129
|
|
|
123
|
-
Object.keys(
|
|
130
|
+
Object.keys(_props).forEach(function (key) {
|
|
124
131
|
if (key === "default" || key === "__esModule") return;
|
|
125
132
|
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
126
|
-
if (key in exports && exports[key] ===
|
|
133
|
+
if (key in exports && exports[key] === _props[key]) return;
|
|
127
134
|
Object.defineProperty(exports, key, {
|
|
128
135
|
enumerable: true,
|
|
129
136
|
get: function () {
|
|
130
|
-
return
|
|
137
|
+
return _props[key];
|
|
131
138
|
}
|
|
132
139
|
});
|
|
133
140
|
});
|
|
@@ -156,6 +163,22 @@ Object.keys(_useResponsiveProp).forEach(function (key) {
|
|
|
156
163
|
|
|
157
164
|
var _useUniqueId = _interopRequireDefault(require("./useUniqueId"));
|
|
158
165
|
|
|
166
|
+
var _withLinkRouter = _interopRequireDefault(require("./withLinkRouter"));
|
|
167
|
+
|
|
168
|
+
var _ssr = require("./ssr");
|
|
169
|
+
|
|
170
|
+
Object.keys(_ssr).forEach(function (key) {
|
|
171
|
+
if (key === "default" || key === "__esModule") return;
|
|
172
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
173
|
+
if (key in exports && exports[key] === _ssr[key]) return;
|
|
174
|
+
Object.defineProperty(exports, key, {
|
|
175
|
+
enumerable: true,
|
|
176
|
+
get: function () {
|
|
177
|
+
return _ssr[key];
|
|
178
|
+
}
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
|
|
159
182
|
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); }
|
|
160
183
|
|
|
161
184
|
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; }
|
|
@@ -9,7 +9,7 @@ var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/export
|
|
|
9
9
|
|
|
10
10
|
var _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
11
11
|
|
|
12
|
-
var
|
|
12
|
+
var _pressProps = _interopRequireDefault(require("./props/pressProps"));
|
|
13
13
|
|
|
14
14
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
15
|
|
|
@@ -108,7 +108,7 @@ const staticStyles = _StyleSheet.default.create(_Platform.default.select({
|
|
|
108
108
|
|
|
109
109
|
const getPressHandlersWithArgs = (pressableProps = {}, args = []) => {
|
|
110
110
|
// Allow handlers to be passed down for blur, hover, focus, pressIn, etc
|
|
111
|
-
const pressHandlers = Object.fromEntries(Object.entries(
|
|
111
|
+
const pressHandlers = Object.fromEntries(Object.entries(_pressProps.default.selectHandlers(pressableProps)).map(([key, handler]) => ({
|
|
112
112
|
[key]: (...defaultArgs) => {
|
|
113
113
|
// Pass each handler data on this button and current selection
|
|
114
114
|
handler(...args, ...defaultArgs);
|