@telus-uds/components-base 0.0.2-prerelease.5 → 0.0.2-prerelease.9
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/.ultra.cache.json +1 -0
- package/CHANGELOG.md +65 -0
- package/__fixtures__/Accessible.js +33 -0
- package/__fixtures__/Accessible.native.js +32 -0
- package/__fixtures__/testTheme.js +871 -52
- package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +1 -1
- package/__tests__/Button/ButtonBase.test.jsx +3 -32
- package/__tests__/Button/ButtonGroup.test.jsx +2 -2
- package/__tests__/Checkbox/Checkbox.test.jsx +94 -0
- package/__tests__/Checkbox/CheckboxGroup.test.jsx +247 -0
- package/__tests__/Icon/Icon.test.jsx +3 -3
- package/__tests__/IconButton/IconButton.test.jsx +52 -0
- package/__tests__/InputSupports/InputSupports.test.jsx +50 -0
- package/__tests__/List/List.test.jsx +60 -0
- package/__tests__/Modal/Modal.test.jsx +47 -0
- package/__tests__/Notification/Notification.test.jsx +20 -0
- package/__tests__/Pagination/Pagination.test.jsx +2 -2
- package/__tests__/Progress/Progress.test.jsx +79 -0
- package/__tests__/Radio/Radio.test.jsx +87 -0
- package/__tests__/Radio/RadioGroup.test.jsx +221 -0
- package/__tests__/RadioCard/RadioCard.test.jsx +87 -0
- package/__tests__/RadioCard/RadioCardGroup.test.jsx +247 -0
- package/__tests__/Search/Search.test.jsx +72 -0
- package/__tests__/Select/Select.test.jsx +93 -0
- package/__tests__/Skeleton/Skeleton.test.jsx +61 -0
- package/__tests__/StackView/StackView.test.jsx +0 -26
- package/__tests__/StepTracker/StepTracker.test.jsx +94 -0
- package/__tests__/Tabs/Tabs.test.jsx +200 -0
- package/__tests__/Tags/Tags.test.jsx +328 -0
- package/__tests__/TextInput/TextArea.test.jsx +34 -0
- package/__tests__/TextInput/{TextInput.test.jsx → TextInputBase.test.jsx} +20 -46
- package/__tests__/Tooltip/Tooltip.test.jsx +65 -0
- package/__tests__/Tooltip/getTooltipPosition.test.js +79 -0
- package/__tests__/utils/input.test.js +58 -0
- package/__tests__/utils/useCopy.test.js +42 -0
- package/__tests__/utils/useResponsiveProp.test.jsx +202 -0
- package/__tests__/utils/{spacing.test.jsx → useSpacingScale.test.jsx} +1 -1
- package/babel.config.js +20 -0
- package/jest.config.js +13 -4
- package/lib/A11yInfoProvider/index.js +54 -26
- package/lib/A11yText/index.js +37 -14
- package/lib/ActivityIndicator/Spinner.js +78 -0
- package/lib/ActivityIndicator/Spinner.native.js +121 -87
- package/lib/ActivityIndicator/index.js +28 -12
- package/lib/ActivityIndicator/shared.js +27 -12
- package/lib/BaseProvider/index.js +34 -11
- package/lib/Box/Box.js +54 -31
- package/lib/Box/index.js +13 -2
- package/lib/Button/Button.js +38 -10
- package/lib/Button/ButtonBase.js +115 -94
- package/lib/Button/ButtonGroup.js +94 -86
- package/lib/Button/ButtonLink.js +41 -13
- package/lib/Button/index.js +31 -4
- package/lib/Button/propTypes.js +32 -9
- package/lib/Card/Card.js +36 -41
- package/lib/Card/CardBase.js +78 -0
- package/lib/Card/PressableCardBase.js +137 -0
- package/lib/Card/index.js +40 -2
- package/lib/Checkbox/Checkbox.js +344 -0
- package/lib/Checkbox/CheckboxGroup.js +231 -0
- package/lib/Checkbox/CheckboxInput.js +74 -0
- package/lib/Checkbox/CheckboxInput.native.js +14 -0
- package/lib/Checkbox/index.js +21 -0
- package/lib/Divider/Divider.js +50 -24
- package/lib/Divider/index.js +13 -2
- package/lib/ExpandCollapse/Accordion.js +20 -7
- package/lib/ExpandCollapse/Control.js +50 -27
- package/lib/ExpandCollapse/ExpandCollapse.js +41 -24
- package/lib/ExpandCollapse/Panel.js +75 -37
- package/lib/ExpandCollapse/index.js +25 -7
- package/lib/Feedback/Feedback.js +85 -34
- package/lib/Feedback/index.js +13 -2
- package/lib/Fieldset/Fieldset.js +160 -0
- package/lib/Fieldset/FieldsetContainer.js +41 -0
- package/lib/Fieldset/FieldsetContainer.native.js +33 -0
- package/lib/Fieldset/Legend.js +33 -0
- package/lib/Fieldset/Legend.native.js +43 -0
- package/lib/Fieldset/cssReset.js +21 -0
- package/lib/Fieldset/index.js +13 -0
- package/lib/FlexGrid/Col/Col.js +67 -38
- package/lib/FlexGrid/Col/index.js +13 -2
- package/lib/FlexGrid/FlexGrid.js +70 -45
- package/lib/FlexGrid/Row/Row.js +48 -27
- package/lib/FlexGrid/Row/index.js +13 -2
- package/lib/FlexGrid/helpers/index.js +9 -1
- package/lib/FlexGrid/index.js +13 -2
- package/lib/FlexGrid/providers/GutterContext.js +15 -3
- package/lib/Icon/Icon.js +52 -47
- package/lib/Icon/IconText.js +100 -0
- package/lib/Icon/index.js +31 -3
- package/lib/IconButton/IconButton.js +135 -0
- package/lib/IconButton/index.js +13 -0
- package/lib/InputLabel/InputLabel.js +70 -34
- package/lib/InputLabel/LabelContent.js +31 -0
- package/lib/InputLabel/LabelContent.native.js +9 -1
- package/lib/InputLabel/index.js +13 -2
- package/lib/InputSupports/InputSupports.js +104 -0
- package/lib/InputSupports/index.js +13 -0
- package/lib/InputSupports/propTypes.js +66 -0
- package/lib/InputSupports/useInputSupports.js +41 -0
- package/lib/Link/ChevronLink.js +57 -15
- package/lib/Link/InlinePressable.js +50 -0
- package/lib/Link/InlinePressable.native.js +101 -0
- package/lib/Link/Link.js +30 -13
- package/lib/Link/LinkBase.js +114 -145
- package/lib/Link/TextButton.js +47 -17
- package/lib/Link/index.js +39 -4
- package/lib/List/List.js +80 -0
- package/lib/List/ListItem.js +237 -0
- package/lib/List/index.js +13 -0
- package/lib/Modal/Modal.js +226 -0
- package/lib/Modal/dictionary.js +16 -0
- package/lib/Modal/index.js +13 -0
- package/lib/Notification/Notification.js +200 -0
- package/lib/Notification/dictionary.js +15 -0
- package/lib/Notification/index.js +13 -0
- package/lib/Pagination/PageButton.js +45 -46
- package/lib/Pagination/Pagination.js +70 -40
- package/lib/Pagination/SideButton.js +74 -58
- package/lib/Pagination/dictionary.js +9 -2
- package/lib/Pagination/index.js +13 -2
- package/lib/Pagination/usePagination.js +12 -2
- package/lib/Progress/Progress.js +99 -0
- package/lib/Progress/ProgressBar.js +146 -0
- package/lib/Progress/ProgressBarBackground.js +57 -0
- package/lib/Progress/index.js +16 -0
- package/lib/Radio/Radio.js +292 -0
- package/lib/Radio/RadioButton.js +141 -0
- package/lib/Radio/RadioGroup.js +233 -0
- package/lib/Radio/RadioInput.js +76 -0
- package/lib/Radio/RadioInput.native.js +14 -0
- package/lib/Radio/index.js +21 -0
- package/lib/RadioCard/RadioCard.js +240 -0
- package/lib/RadioCard/RadioCardGroup.js +251 -0
- package/lib/RadioCard/index.js +21 -0
- package/lib/Search/Search.js +243 -0
- package/lib/Search/dictionary.js +19 -0
- package/lib/Search/index.js +13 -0
- package/lib/Select/Group.js +33 -0
- package/lib/Select/Group.native.js +25 -0
- package/lib/Select/Item.js +29 -0
- package/lib/Select/Item.native.js +19 -0
- package/lib/Select/Picker.js +79 -0
- package/lib/Select/Picker.native.js +115 -0
- package/lib/Select/Select.js +300 -0
- package/lib/Select/index.js +19 -0
- package/lib/SideNav/Item.js +54 -33
- package/lib/SideNav/ItemContent.js +41 -15
- package/lib/SideNav/ItemsGroup.js +46 -27
- package/lib/SideNav/SideNav.js +92 -69
- package/lib/SideNav/index.js +15 -1
- package/lib/Skeleton/Skeleton.js +137 -0
- package/lib/Skeleton/index.js +13 -0
- package/lib/Skeleton/skeleton.constant.js +12 -0
- package/lib/Skeleton/skeletonWebAnimation.js +27 -0
- package/lib/Skeleton/useSkeletonNativeAnimation.js +37 -0
- package/lib/Spacer/Spacer.js +31 -12
- package/lib/Spacer/index.js +13 -2
- package/lib/StackView/StackView.js +57 -33
- package/lib/StackView/StackWrap.js +33 -10
- package/lib/StackView/StackWrap.native.js +13 -2
- package/lib/StackView/StackWrapBox.js +50 -23
- package/lib/StackView/StackWrapGap.js +45 -19
- package/lib/StackView/common.js +19 -4
- package/lib/StackView/getStackedContent.js +49 -19
- package/lib/StackView/index.js +29 -5
- package/lib/StepTracker/Step.js +245 -0
- package/lib/StepTracker/StepTracker.js +197 -0
- package/lib/StepTracker/dictionary.js +17 -0
- package/lib/StepTracker/index.js +13 -0
- package/lib/Tabs/HorizontalScroll.js +199 -0
- package/lib/Tabs/ScrollViewEnd.js +66 -0
- package/lib/Tabs/ScrollViewEnd.native.js +41 -0
- package/lib/Tabs/Tabs.js +117 -0
- package/lib/Tabs/TabsItem.js +234 -0
- package/lib/Tabs/TabsScrollButton.js +121 -0
- package/lib/Tabs/dictionary.js +18 -0
- package/lib/Tabs/index.js +13 -0
- package/lib/Tabs/itemPositions.js +128 -0
- package/lib/Tags/Tags.js +250 -0
- package/lib/Tags/index.js +13 -0
- package/lib/TextInput/TextArea.js +109 -0
- package/lib/TextInput/TextInput.js +41 -303
- package/lib/TextInput/TextInputBase.js +252 -0
- package/lib/TextInput/index.js +23 -2
- package/lib/TextInput/propTypes.js +42 -0
- package/lib/ThemeProvider/ThemeProvider.js +38 -14
- package/lib/ThemeProvider/index.js +61 -6
- package/lib/ThemeProvider/useSetTheme.js +14 -5
- package/lib/ThemeProvider/useTheme.js +13 -4
- package/lib/ThemeProvider/useThemeTokens.js +86 -19
- package/lib/ThemeProvider/utils/index.js +31 -2
- package/lib/ThemeProvider/utils/styles.js +52 -16
- package/lib/ThemeProvider/utils/theme-tokens.js +94 -16
- package/lib/ToggleSwitch/ToggleSwitch.js +76 -52
- package/lib/ToggleSwitch/index.js +13 -2
- package/lib/Tooltip/Backdrop.js +56 -0
- package/lib/Tooltip/Backdrop.native.js +59 -0
- package/lib/Tooltip/Tooltip.js +357 -0
- package/lib/Tooltip/dictionary.js +15 -0
- package/lib/Tooltip/getTooltipPosition.js +172 -0
- package/lib/Tooltip/index.js +13 -0
- package/lib/TooltipButton/TooltipButton.js +83 -0
- package/lib/TooltipButton/index.js +13 -0
- package/lib/Typography/Typography.js +58 -43
- package/lib/Typography/index.js +13 -2
- package/lib/ViewportProvider/ViewportProvider.js +46 -0
- package/lib/ViewportProvider/index.js +22 -38
- package/lib/ViewportProvider/useViewport.js +15 -0
- package/lib/ViewportProvider/useViewportListener.js +57 -0
- package/lib/index.js +518 -24
- package/lib/utils/a11y/index.js +18 -0
- package/lib/utils/a11y/textSize.js +49 -0
- package/lib/utils/animation/index.js +15 -2
- package/lib/utils/animation/useVerticalExpandAnimation.js +28 -11
- package/lib/utils/children.js +87 -0
- package/lib/utils/index.js +163 -4
- package/lib/utils/info/index.js +19 -0
- package/lib/utils/info/platform/index.js +23 -0
- package/lib/utils/info/platform/platform.android.js +8 -0
- package/lib/utils/info/platform/platform.ios.js +8 -0
- package/lib/utils/info/platform/platform.js +8 -0
- package/lib/utils/info/platform/platform.native.js +11 -0
- package/lib/utils/info/versions.js +16 -0
- package/lib/utils/input.js +51 -33
- package/lib/utils/pressability.js +120 -0
- package/lib/utils/propTypes.js +269 -116
- package/lib/utils/useCopy.js +51 -0
- package/lib/utils/useHash.js +48 -0
- package/lib/utils/useHash.native.js +15 -0
- package/lib/utils/useResponsiveProp.js +59 -0
- package/lib/utils/{spacing/useSpacingScale.js → useSpacingScale.js} +45 -12
- package/lib/utils/useUniqueId.js +13 -4
- package/package.json +12 -9
- package/release-context.json +4 -4
- package/src/ActivityIndicator/{Spinner.web.jsx → Spinner.jsx} +0 -0
- package/src/Box/Box.jsx +11 -4
- package/src/Button/Button.jsx +9 -5
- package/src/Button/ButtonBase.jsx +69 -69
- package/src/Button/ButtonGroup.jsx +11 -24
- package/src/Button/ButtonLink.jsx +14 -4
- package/src/Button/propTypes.js +12 -2
- package/src/Card/Card.jsx +4 -30
- package/src/Card/CardBase.jsx +57 -0
- package/src/Card/PressableCardBase.jsx +112 -0
- package/src/Card/index.js +3 -0
- package/src/Checkbox/Checkbox.jsx +274 -0
- package/src/Checkbox/CheckboxGroup.jsx +196 -0
- package/src/Checkbox/CheckboxInput.jsx +55 -0
- package/src/Checkbox/CheckboxInput.native.jsx +6 -0
- package/src/Checkbox/index.js +5 -0
- package/src/ExpandCollapse/Control.jsx +1 -1
- package/src/Feedback/Feedback.jsx +31 -22
- package/src/Fieldset/Fieldset.jsx +129 -0
- package/src/Fieldset/FieldsetContainer.jsx +22 -0
- package/src/Fieldset/FieldsetContainer.native.jsx +16 -0
- package/src/Fieldset/Legend.jsx +16 -0
- package/src/Fieldset/Legend.native.jsx +22 -0
- package/src/Fieldset/cssReset.js +14 -0
- package/src/Fieldset/index.js +3 -0
- package/src/Icon/Icon.jsx +21 -26
- package/src/Icon/IconText.jsx +63 -0
- package/src/Icon/index.js +3 -2
- package/src/IconButton/IconButton.jsx +107 -0
- package/src/IconButton/index.js +3 -0
- package/src/InputLabel/InputLabel.jsx +11 -4
- package/src/InputLabel/{LabelContent.web.jsx → LabelContent.jsx} +0 -0
- package/src/InputSupports/InputSupports.jsx +75 -0
- package/src/InputSupports/index.js +3 -0
- package/src/InputSupports/propTypes.js +44 -0
- package/src/InputSupports/useInputSupports.js +30 -0
- package/src/Link/ChevronLink.jsx +28 -7
- package/src/Link/InlinePressable.jsx +37 -0
- package/src/Link/InlinePressable.native.jsx +73 -0
- package/src/Link/Link.jsx +17 -13
- package/src/Link/LinkBase.jsx +67 -148
- package/src/Link/TextButton.jsx +25 -11
- package/src/Link/index.js +2 -1
- package/src/List/List.jsx +47 -0
- package/src/List/ListItem.jsx +187 -0
- package/src/List/index.js +3 -0
- package/src/Modal/Modal.jsx +185 -0
- package/src/Modal/dictionary.js +9 -0
- package/src/Modal/index.js +3 -0
- package/src/Notification/Notification.jsx +149 -0
- package/src/Notification/dictionary.js +8 -0
- package/src/Notification/index.js +3 -0
- package/src/Pagination/PageButton.jsx +3 -17
- package/src/Pagination/SideButton.jsx +27 -38
- package/src/Progress/Progress.jsx +77 -0
- package/src/Progress/ProgressBar.jsx +110 -0
- package/src/Progress/ProgressBarBackground.jsx +34 -0
- package/src/Progress/index.js +6 -0
- package/src/Radio/Radio.jsx +233 -0
- package/src/Radio/RadioButton.jsx +131 -0
- package/src/Radio/RadioGroup.jsx +198 -0
- package/src/Radio/RadioInput.jsx +57 -0
- package/src/Radio/RadioInput.native.jsx +6 -0
- package/src/Radio/index.js +5 -0
- package/src/RadioCard/RadioCard.jsx +191 -0
- package/src/RadioCard/RadioCardGroup.jsx +211 -0
- package/src/RadioCard/index.js +5 -0
- package/src/Search/Search.jsx +204 -0
- package/src/Search/dictionary.js +12 -0
- package/src/Search/index.js +3 -0
- package/src/Select/Group.jsx +15 -0
- package/src/Select/Group.native.jsx +14 -0
- package/src/Select/Item.jsx +11 -0
- package/src/Select/Item.native.jsx +10 -0
- package/src/Select/Picker.jsx +67 -0
- package/src/Select/Picker.native.jsx +95 -0
- package/src/Select/Select.jsx +255 -0
- package/src/Select/index.js +8 -0
- package/src/SideNav/Item.jsx +2 -2
- package/src/Skeleton/Skeleton.jsx +98 -0
- package/src/Skeleton/index.js +3 -0
- package/src/Skeleton/skeleton.constant.js +3 -0
- package/src/Skeleton/skeletonWebAnimation.js +13 -0
- package/src/Skeleton/useSkeletonNativeAnimation.js +27 -0
- package/src/StackView/StackView.jsx +25 -17
- package/src/StackView/StackWrap.jsx +9 -1
- package/src/StackView/StackWrapBox.jsx +19 -7
- package/src/StackView/StackWrapGap.jsx +15 -5
- package/src/StackView/getStackedContent.jsx +8 -2
- package/src/StepTracker/Step.jsx +202 -0
- package/src/StepTracker/StepTracker.jsx +163 -0
- package/src/StepTracker/dictionary.js +10 -0
- package/src/StepTracker/index.js +3 -0
- package/src/Tabs/HorizontalScroll.jsx +165 -0
- package/src/Tabs/ScrollViewEnd.jsx +53 -0
- package/src/Tabs/ScrollViewEnd.native.jsx +24 -0
- package/src/Tabs/Tabs.jsx +89 -0
- package/src/Tabs/TabsItem.jsx +204 -0
- package/src/Tabs/TabsScrollButton.jsx +100 -0
- package/src/Tabs/dictionary.js +11 -0
- package/src/Tabs/index.js +3 -0
- package/src/Tabs/itemPositions.js +101 -0
- package/src/Tags/Tags.jsx +207 -0
- package/src/Tags/index.js +3 -0
- package/src/TextInput/TextArea.jsx +78 -0
- package/src/TextInput/TextInput.jsx +17 -290
- package/src/TextInput/TextInputBase.jsx +210 -0
- package/src/TextInput/index.js +2 -1
- package/src/TextInput/propTypes.js +29 -0
- package/src/ThemeProvider/useThemeTokens.js +56 -5
- package/src/ThemeProvider/utils/styles.js +18 -5
- package/src/ThemeProvider/utils/theme-tokens.js +46 -5
- package/src/ToggleSwitch/ToggleSwitch.jsx +3 -4
- package/src/Tooltip/Backdrop.jsx +60 -0
- package/src/Tooltip/Backdrop.native.jsx +33 -0
- package/src/Tooltip/Tooltip.jsx +294 -0
- package/src/Tooltip/dictionary.js +8 -0
- package/src/Tooltip/getTooltipPosition.js +161 -0
- package/src/Tooltip/index.js +3 -0
- package/src/TooltipButton/TooltipButton.jsx +49 -0
- package/src/TooltipButton/index.js +3 -0
- package/src/Typography/Typography.jsx +10 -20
- package/src/ViewportProvider/ViewportProvider.jsx +21 -0
- package/src/ViewportProvider/index.jsx +2 -41
- package/src/ViewportProvider/useViewport.js +5 -0
- package/src/ViewportProvider/useViewportListener.js +43 -0
- package/src/index.js +31 -3
- package/src/utils/a11y/index.js +1 -0
- package/src/utils/a11y/textSize.js +30 -0
- package/src/utils/children.jsx +66 -0
- package/src/utils/index.js +11 -1
- package/src/utils/info/index.js +8 -0
- package/src/utils/info/platform/index.js +11 -0
- package/src/utils/info/platform/platform.android.js +1 -0
- package/src/utils/info/platform/platform.ios.js +1 -0
- package/src/utils/info/platform/platform.js +1 -0
- package/src/utils/info/platform/platform.native.js +4 -0
- package/src/utils/info/versions.js +6 -0
- package/src/utils/input.js +20 -12
- package/src/utils/pressability.js +96 -0
- package/src/utils/propTypes.js +195 -56
- package/src/utils/useCopy.js +39 -0
- package/src/utils/useHash.js +34 -0
- package/src/utils/useHash.native.js +6 -0
- package/src/utils/useResponsiveProp.js +50 -0
- package/src/utils/{spacing/useSpacingScale.js → useSpacingScale.js} +25 -10
- package/stories/A11yText/A11yText.stories.jsx +4 -8
- package/stories/Button/Button.stories.jsx +5 -0
- package/stories/Card/Card.stories.jsx +1 -1
- package/stories/Checkbox/Checkbox.stories.jsx +94 -0
- package/stories/Feedback/Feedback.stories.jsx +5 -6
- package/stories/Icon/Icon.stories.jsx +27 -7
- package/stories/IconButton/IconButton.stories.jsx +50 -0
- package/stories/InputLabel/InputLabel.stories.jsx +8 -3
- package/stories/Link/ChevronLink.stories.jsx +3 -3
- package/stories/Link/Link.stories.jsx +28 -18
- package/stories/List/List.stories.jsx +117 -0
- package/stories/Modal/Modal.stories.jsx +29 -0
- package/stories/Notification/Notification.stories.jsx +82 -0
- package/stories/Progress/Progress.stories.jsx +93 -0
- package/stories/Radio/Radio.stories.jsx +100 -0
- package/stories/RadioCard/RadioCard.stories.jsx +98 -0
- package/stories/Search/Search.stories.jsx +16 -0
- package/stories/Select/Select.stories.jsx +55 -0
- package/stories/Skeleton/Skeleton.stories.jsx +36 -0
- package/stories/Spacer/Spacer.stories.jsx +7 -2
- package/stories/StackView/StackView.stories.jsx +10 -0
- package/stories/StackView/StackWrap.stories.jsx +12 -0
- package/stories/StepTracker/StepTracker.stories.jsx +71 -0
- package/stories/Tabs/Tabs.stories.jsx +97 -0
- package/stories/Tags/Tags.stories.jsx +69 -0
- package/stories/TextInput/TextArea.stories.jsx +100 -0
- package/stories/Tooltip/Tooltip.stories.jsx +81 -0
- package/stories/TooltipButton/TooltipButton.stories.jsx +11 -0
- package/stories/{platform-supports.web.jsx → platform-supports.jsx} +0 -0
- package/stories/supports.jsx +36 -2
- package/__fixtures__/accessible.icon.svg +0 -6
- package/babel.config.json +0 -8
- package/docs/Contributing.stories.mdx +0 -9
- package/docs/Fonts.stories.mdx +0 -104
- package/docs/Icons.stories.mdx +0 -144
- package/docs/Introduction.stories.mdx +0 -9
- package/lib/ActivityIndicator/Spinner.web.js +0 -55
- package/lib/InputLabel/LabelContent.web.js +0 -17
- package/lib/Pagination/useCopy.js +0 -10
- package/lib/config/svgr-icons-web.js +0 -9
- package/lib/config/svgr-icons.js +0 -52
- package/lib/utils/spacing/index.js +0 -2
- package/lib/utils/spacing/utils.js +0 -32
- package/src/Pagination/useCopy.js +0 -7
- package/src/config/svgr-icons-web.js +0 -11
- package/src/config/svgr-icons.js +0 -46
- package/src/utils/spacing/index.js +0 -3
- package/src/utils/spacing/utils.js +0 -28
|
@@ -1,16 +1,36 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
13
|
+
|
|
14
|
+
var _ButtonBase = _interopRequireDefault(require("./ButtonBase"));
|
|
15
|
+
|
|
16
|
+
var _StackView = require("../StackView");
|
|
17
|
+
|
|
18
|
+
var _ViewportProvider = require("../ViewportProvider");
|
|
19
|
+
|
|
20
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
21
|
+
|
|
22
|
+
var _propTypes2 = require("../utils/propTypes");
|
|
23
|
+
|
|
24
|
+
var _input = require("../utils/input");
|
|
25
|
+
|
|
26
|
+
var _pressability = require("../utils/pressability");
|
|
27
|
+
|
|
28
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
29
|
+
|
|
30
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
31
|
|
|
11
32
|
const ButtonGroup = ({
|
|
12
33
|
variant,
|
|
13
|
-
buttonVariant = {},
|
|
14
34
|
tokens,
|
|
15
35
|
items = [],
|
|
16
36
|
values,
|
|
@@ -19,137 +39,124 @@ const ButtonGroup = ({
|
|
|
19
39
|
onChange,
|
|
20
40
|
readOnly = false,
|
|
21
41
|
inactive = false,
|
|
22
|
-
accessibilityRole = maxValues === 1 ? '
|
|
23
|
-
:
|
|
42
|
+
accessibilityRole = maxValues === 1 ? 'radiogroup' // radiogroup is cross-platform; only web aria has generic groups
|
|
43
|
+
: _Platform.default.select({
|
|
24
44
|
web: 'group',
|
|
25
45
|
default: 'none'
|
|
26
46
|
}),
|
|
27
47
|
...rest
|
|
28
48
|
}) => {
|
|
29
|
-
const viewport = useViewport();
|
|
30
|
-
const themeTokens = useThemeTokens('ButtonGroup', tokens, variant, {
|
|
49
|
+
const viewport = (0, _ViewportProvider.useViewport)();
|
|
50
|
+
const themeTokens = (0, _ThemeProvider.useThemeTokens)('ButtonGroup', tokens, variant, {
|
|
31
51
|
viewport
|
|
32
52
|
});
|
|
33
|
-
const stackTokens = selectTokens('StackView', themeTokens);
|
|
53
|
+
const stackTokens = (0, _propTypes2.selectTokens)('StackView', themeTokens);
|
|
34
54
|
const {
|
|
35
55
|
direction,
|
|
36
56
|
space
|
|
37
57
|
} = themeTokens;
|
|
58
|
+
const getButtonTokens = (0, _ThemeProvider.useThemeTokensCallback)('ButtonGroupItem', tokens, variant);
|
|
38
59
|
const {
|
|
39
60
|
currentValues,
|
|
40
61
|
toggleOneValue
|
|
41
|
-
} = useMultipleInputValues({
|
|
62
|
+
} = (0, _input.useMultipleInputValues)({
|
|
42
63
|
initialValues,
|
|
43
64
|
values,
|
|
44
65
|
maxValues,
|
|
45
66
|
onChange,
|
|
46
67
|
readOnly
|
|
47
68
|
});
|
|
48
|
-
|
|
69
|
+
|
|
70
|
+
const a11y = _propTypes2.a11yProps.select({
|
|
49
71
|
accessibilityRole,
|
|
50
72
|
...rest
|
|
51
73
|
});
|
|
52
|
-
|
|
53
|
-
|
|
74
|
+
|
|
75
|
+
const itemA11yRole = a11y.accessibilityRole === 'radiogroup' ? 'radio' : 'checkbox';
|
|
76
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_StackView.StackWrap, { ...a11y,
|
|
54
77
|
space: space,
|
|
55
78
|
direction: direction,
|
|
56
|
-
tokens: stackTokens
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
const itemA11y = {
|
|
81
|
-
accessibilityState: {
|
|
82
|
-
checked: isSelected
|
|
83
|
-
},
|
|
84
|
-
accessibilityRole: itemA11yRole,
|
|
85
|
-
accessibilityLabel,
|
|
86
|
-
...Platform.select({
|
|
87
|
-
web: {
|
|
88
|
-
// accessibilityPosInSet etc exists in React Native Web main branch
|
|
89
|
-
// but not in a release compatible with Expo etc; just use `aria-*`
|
|
90
|
-
'aria-setsize': items.length,
|
|
91
|
-
'aria-posinset': index + 1
|
|
79
|
+
tokens: stackTokens,
|
|
80
|
+
children: items.map(({
|
|
81
|
+
label,
|
|
82
|
+
id = label,
|
|
83
|
+
accessibilityLabel
|
|
84
|
+
}, index) => {
|
|
85
|
+
const isSelected = currentValues.includes(id); // Pass an object of relevant component state as first argument for any passed-in press handlers
|
|
86
|
+
|
|
87
|
+
const pressHandlers = (0, _pressability.getPressHandlersWithArgs)(rest, [{
|
|
88
|
+
id,
|
|
89
|
+
label,
|
|
90
|
+
currentValues
|
|
91
|
+
}]);
|
|
92
|
+
|
|
93
|
+
const handlePress = () => {
|
|
94
|
+
if (pressHandlers.onPress) pressHandlers.onPress();
|
|
95
|
+
toggleOneValue(id);
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
const itemA11y = {
|
|
99
|
+
accessibilityState: {
|
|
100
|
+
checked: isSelected
|
|
92
101
|
},
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
...
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
}));
|
|
102
|
+
accessibilityRole: itemA11yRole,
|
|
103
|
+
accessibilityLabel,
|
|
104
|
+
..._propTypes2.a11yProps.getPositionInSet(items.length, index)
|
|
105
|
+
}; // Ensure button is direct child of group as MacOS voiceover only applies "X of Y" to
|
|
106
|
+
// "radio" if it's a direct child of "radiogroup", even if aria-posinset etc exists
|
|
107
|
+
|
|
108
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonBase.default, { ...pressHandlers,
|
|
109
|
+
onPress: handlePress,
|
|
110
|
+
tokens: getButtonTokens,
|
|
111
|
+
selected: isSelected,
|
|
112
|
+
inactive: inactive,
|
|
113
|
+
...itemA11y,
|
|
114
|
+
children: label
|
|
115
|
+
}, id);
|
|
116
|
+
})
|
|
117
|
+
});
|
|
110
118
|
};
|
|
111
119
|
|
|
112
|
-
ButtonGroup.propTypes = { ...a11yProps.propTypes,
|
|
113
|
-
...pressProps.propTypes,
|
|
114
|
-
tokens: getTokensPropType('ButtonGroup'),
|
|
115
|
-
variant: variantProp.propType,
|
|
116
|
-
buttonVariant: variantProp.propType,
|
|
120
|
+
ButtonGroup.propTypes = { ..._propTypes2.a11yProps.propTypes,
|
|
121
|
+
..._propTypes2.pressProps.propTypes,
|
|
122
|
+
tokens: (0, _propTypes2.getTokensPropType)('ButtonGroup'),
|
|
123
|
+
variant: _propTypes2.variantProp.propType,
|
|
117
124
|
|
|
118
125
|
/**
|
|
119
126
|
* The maximum number of items a user may select at once. Defaults to 1 and behaves
|
|
120
127
|
* like radio buttons. To have no limit and allow any number of selections, pass `null`.
|
|
121
128
|
*/
|
|
122
|
-
maxValues:
|
|
129
|
+
maxValues: _propTypes.default.number,
|
|
123
130
|
|
|
124
131
|
/**
|
|
125
132
|
* The options a user may select
|
|
126
133
|
*/
|
|
127
|
-
items:
|
|
134
|
+
items: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
128
135
|
/**
|
|
129
136
|
* The text displayed to the user in the button, describing this option,
|
|
130
137
|
* passed to the button as its child.
|
|
131
138
|
*/
|
|
132
|
-
label:
|
|
139
|
+
label: _propTypes.default.string.isRequired,
|
|
133
140
|
|
|
134
141
|
/**
|
|
135
142
|
* An optional accessibility label may be passed to ButtonGroup Buttons
|
|
136
143
|
* which is applied as normal for a React Native accessibilityLabel prop.
|
|
137
144
|
*/
|
|
138
|
-
accessibilityLabel:
|
|
145
|
+
accessibilityLabel: _propTypes.default.string,
|
|
139
146
|
|
|
140
147
|
/**
|
|
141
148
|
* An optional unique string may be provided to identify this option,
|
|
142
149
|
* which will be used in code and passed to any onChange function.
|
|
143
150
|
* If not provided, the label is used.
|
|
144
151
|
*/
|
|
145
|
-
id:
|
|
152
|
+
id: _propTypes.default.string
|
|
146
153
|
})),
|
|
147
154
|
|
|
148
155
|
/**
|
|
149
156
|
* If provided, this function is called when the current selection is changed
|
|
150
157
|
* and is passed an array of the `id`s of all currently selected `items`.
|
|
151
158
|
*/
|
|
152
|
-
onChange:
|
|
159
|
+
onChange: _propTypes.default.func,
|
|
153
160
|
|
|
154
161
|
/**
|
|
155
162
|
* If the selected item(s) in the button group are to be controlled externally by
|
|
@@ -157,13 +164,14 @@ ButtonGroup.propTypes = { ...a11yProps.propTypes,
|
|
|
157
164
|
* Passing an array for "values" makes the ButtonGroup a "controlled" component that
|
|
158
165
|
* expects its state to be handled via `onChange` and so doesn't handle it itself.
|
|
159
166
|
*/
|
|
160
|
-
values:
|
|
167
|
+
values: _propTypes.default.arrayOf(_propTypes.default.string),
|
|
161
168
|
|
|
162
169
|
/**
|
|
163
170
|
* If `values` is not passed, making the ButtonGroup an "uncontrolled" component
|
|
164
171
|
* managing its own selected state, a default set of selections may be provided.
|
|
165
172
|
* Changing the `initialValues` does not change the user's selections.
|
|
166
173
|
*/
|
|
167
|
-
initialValues:
|
|
174
|
+
initialValues: _propTypes.default.arrayOf(_propTypes.default.string)
|
|
168
175
|
};
|
|
169
|
-
|
|
176
|
+
var _default = ButtonGroup;
|
|
177
|
+
exports.default = _default;
|
package/lib/Button/ButtonLink.js
CHANGED
|
@@ -1,28 +1,56 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _ButtonBase = _interopRequireDefault(require("./ButtonBase"));
|
|
11
|
+
|
|
12
|
+
var _propTypes = _interopRequireWildcard(require("./propTypes"));
|
|
13
|
+
|
|
14
|
+
var _propTypes2 = require("../utils/propTypes");
|
|
15
|
+
|
|
16
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
17
|
+
|
|
18
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
19
|
+
|
|
20
|
+
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); }
|
|
21
|
+
|
|
22
|
+
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; }
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
5
26
|
/**
|
|
6
27
|
* `ButtonLink` is a component with the semantics and behaviour of a link, but with the visual appearance of a button.
|
|
7
28
|
* ButtonLink is a block-level component and should not be used inline.
|
|
8
29
|
*/
|
|
9
|
-
|
|
10
30
|
const ButtonLink = ({
|
|
11
31
|
accessibilityRole = 'link',
|
|
32
|
+
tokens,
|
|
33
|
+
variant,
|
|
12
34
|
...props
|
|
13
35
|
}) => {
|
|
14
36
|
const {
|
|
15
37
|
hrefAttrs,
|
|
16
38
|
rest
|
|
17
|
-
} = hrefAttrsProp.bundle(props);
|
|
18
|
-
|
|
39
|
+
} = _propTypes2.hrefAttrsProp.bundle(props);
|
|
40
|
+
|
|
41
|
+
const getTokens = (0, _ThemeProvider.useThemeTokensCallback)('Button', tokens, variant);
|
|
42
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_ButtonBase.default, {
|
|
19
43
|
accessibilityRole: accessibilityRole,
|
|
20
|
-
|
|
21
|
-
|
|
44
|
+
tokens: getTokens,
|
|
45
|
+
hrefAttrs: hrefAttrs,
|
|
46
|
+
...rest
|
|
47
|
+
});
|
|
22
48
|
};
|
|
23
49
|
|
|
24
|
-
ButtonLink.propTypes = { ...a11yProps.types,
|
|
25
|
-
...
|
|
26
|
-
...linkProps.types
|
|
50
|
+
ButtonLink.propTypes = { ..._propTypes2.a11yProps.types,
|
|
51
|
+
..._propTypes.default,
|
|
52
|
+
..._propTypes2.linkProps.types,
|
|
53
|
+
children: _propTypes.textAndA11yText
|
|
27
54
|
};
|
|
28
|
-
|
|
55
|
+
var _default = ButtonLink;
|
|
56
|
+
exports.default = _default;
|
package/lib/Button/index.js
CHANGED
|
@@ -1,4 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "Button", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _Button.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "ButtonLink", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _ButtonLink.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "ButtonGroup", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _ButtonGroup.default;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
var _Button = _interopRequireDefault(require("./Button"));
|
|
26
|
+
|
|
27
|
+
var _ButtonLink = _interopRequireDefault(require("./ButtonLink"));
|
|
28
|
+
|
|
29
|
+
var _ButtonGroup = _interopRequireDefault(require("./ButtonGroup"));
|
|
30
|
+
|
|
31
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
package/lib/Button/propTypes.js
CHANGED
|
@@ -1,27 +1,50 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.textAndA11yText = void 0;
|
|
7
|
+
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
|
|
10
|
+
var _airbnbPropTypes = _interopRequireDefault(require("airbnb-prop-types"));
|
|
11
|
+
|
|
12
|
+
var _propTypes2 = require("../utils/propTypes");
|
|
13
|
+
|
|
14
|
+
var _A11yText = _interopRequireDefault(require("../A11yText"));
|
|
15
|
+
|
|
16
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
17
|
+
|
|
18
|
+
const textAndA11yText = _airbnbPropTypes.default.childrenOf(_propTypes.default.oneOfType([_airbnbPropTypes.default.elementType(_A11yText.default), _propTypes.default.string]));
|
|
19
|
+
|
|
20
|
+
exports.textAndA11yText = textAndA11yText;
|
|
3
21
|
const buttonPropTypes = {
|
|
4
22
|
/**
|
|
5
23
|
* If true, prevents the button from being pressed, changes the cursor (on web) and accessibility
|
|
6
24
|
* attributes to communicate this to the user, and applies `inactive: true` appearances from the theme
|
|
7
25
|
*/
|
|
8
|
-
inactive:
|
|
26
|
+
inactive: _propTypes.default.bool,
|
|
9
27
|
|
|
10
28
|
/**
|
|
11
29
|
* Alias for `inactive`
|
|
12
30
|
*/
|
|
13
|
-
disabled:
|
|
31
|
+
disabled: _propTypes.default.bool,
|
|
14
32
|
|
|
15
33
|
/**
|
|
16
|
-
* Button's children must be either
|
|
34
|
+
* Button's children must be either:
|
|
35
|
+
* - One or more text strings and / or A11yText components
|
|
36
|
+
* - A render function with contents that responds to current button state by being passed an object of:
|
|
37
|
+
* ```
|
|
17
38
|
* { hovered<bool>, focused<bool>, pressed<bool>, inactive<bool>, selected<bool>, textStyles<RNStyle> }
|
|
39
|
+
* ```
|
|
18
40
|
*/
|
|
19
|
-
children:
|
|
41
|
+
children: _propTypes.default.oneOfType([_propTypes.default.func, textAndA11yText]).isRequired,
|
|
20
42
|
|
|
21
43
|
/**
|
|
22
44
|
* Function called when the button is pressed. Required unless the button has a href.
|
|
23
45
|
*/
|
|
24
|
-
onPress:
|
|
25
|
-
variant: variantProp.propType
|
|
46
|
+
onPress: _propTypes.default.func,
|
|
47
|
+
variant: _propTypes2.variantProp.propType
|
|
26
48
|
};
|
|
27
|
-
|
|
49
|
+
var _default = buttonPropTypes;
|
|
50
|
+
exports.default = _default;
|
package/lib/Card/Card.js
CHANGED
|
@@ -1,32 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
import PropTypes from 'prop-types';
|
|
3
|
-
import { View } from 'react-native';
|
|
4
|
-
import { applyShadowToken, useThemeTokens } from '../ThemeProvider';
|
|
5
|
-
import { getTokensPropType, variantProp } from '../utils';
|
|
6
|
-
import { useViewport } from '../ViewportProvider';
|
|
7
|
-
import { a11yProps } from '../utils/propTypes'; // Ensure explicit selection of tokens
|
|
1
|
+
"use strict";
|
|
8
2
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
borderColor,
|
|
12
|
-
borderRadius,
|
|
13
|
-
borderWidth,
|
|
14
|
-
paddingBottom,
|
|
15
|
-
paddingLeft,
|
|
16
|
-
paddingRight,
|
|
17
|
-
paddingTop,
|
|
18
|
-
shadow
|
|
19
|
-
}) => ({
|
|
20
|
-
backgroundColor,
|
|
21
|
-
borderColor,
|
|
22
|
-
borderRadius,
|
|
23
|
-
borderWidth,
|
|
24
|
-
paddingBottom,
|
|
25
|
-
paddingLeft,
|
|
26
|
-
paddingRight,
|
|
27
|
-
paddingTop,
|
|
28
|
-
...applyShadowToken(shadow)
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
29
5
|
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
13
|
+
|
|
14
|
+
var _utils = require("../utils");
|
|
15
|
+
|
|
16
|
+
var _ViewportProvider = require("../ViewportProvider");
|
|
17
|
+
|
|
18
|
+
var _propTypes2 = require("../utils/propTypes");
|
|
19
|
+
|
|
20
|
+
var _CardBase = _interopRequireDefault(require("./CardBase"));
|
|
21
|
+
|
|
22
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
30
26
|
/**
|
|
31
27
|
* A basic card component, unstyled by default.
|
|
32
28
|
*
|
|
@@ -75,29 +71,28 @@ const selectStyles = ({
|
|
|
75
71
|
* you automatically make inaccessible its children, which may or may not be appropriate
|
|
76
72
|
* depending on what you are trying to achieve.
|
|
77
73
|
*/
|
|
78
|
-
|
|
79
|
-
|
|
80
74
|
const Card = ({
|
|
81
75
|
children,
|
|
82
76
|
tokens,
|
|
83
77
|
variant,
|
|
84
78
|
...rest
|
|
85
79
|
}) => {
|
|
86
|
-
const viewport = useViewport();
|
|
87
|
-
const themeTokens = useThemeTokens('Card', tokens, variant, {
|
|
80
|
+
const viewport = (0, _ViewportProvider.useViewport)();
|
|
81
|
+
const themeTokens = (0, _ThemeProvider.useThemeTokens)('Card', tokens, variant, {
|
|
88
82
|
viewport
|
|
89
83
|
});
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
}
|
|
84
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardBase.default, {
|
|
85
|
+
tokens: themeTokens,
|
|
86
|
+
...rest,
|
|
87
|
+
children: children
|
|
88
|
+
});
|
|
95
89
|
};
|
|
96
90
|
|
|
97
91
|
Card.propTypes = {
|
|
98
|
-
children:
|
|
99
|
-
tokens: getTokensPropType('Card'),
|
|
100
|
-
variant: variantProp.propType,
|
|
101
|
-
...a11yProps.types
|
|
92
|
+
children: _propTypes.default.node,
|
|
93
|
+
tokens: (0, _utils.getTokensPropType)('Card'),
|
|
94
|
+
variant: _utils.variantProp.propType,
|
|
95
|
+
..._propTypes2.a11yProps.types
|
|
102
96
|
};
|
|
103
|
-
|
|
97
|
+
var _default = Card;
|
|
98
|
+
exports.default = _default;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
11
|
+
|
|
12
|
+
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
+
|
|
14
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
15
|
+
|
|
16
|
+
var _utils = require("../utils");
|
|
17
|
+
|
|
18
|
+
var _propTypes2 = require("../utils/propTypes");
|
|
19
|
+
|
|
20
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
|
+
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
23
|
+
|
|
24
|
+
// Ensure explicit selection of tokens
|
|
25
|
+
const selectStyles = ({
|
|
26
|
+
flex,
|
|
27
|
+
backgroundColor,
|
|
28
|
+
borderColor,
|
|
29
|
+
borderRadius,
|
|
30
|
+
borderWidth,
|
|
31
|
+
paddingBottom,
|
|
32
|
+
paddingLeft,
|
|
33
|
+
paddingRight,
|
|
34
|
+
paddingTop,
|
|
35
|
+
minWidth,
|
|
36
|
+
shadow
|
|
37
|
+
}) => ({
|
|
38
|
+
flex,
|
|
39
|
+
backgroundColor,
|
|
40
|
+
borderColor,
|
|
41
|
+
borderRadius,
|
|
42
|
+
borderWidth,
|
|
43
|
+
paddingBottom,
|
|
44
|
+
paddingLeft,
|
|
45
|
+
paddingRight,
|
|
46
|
+
paddingTop,
|
|
47
|
+
minWidth,
|
|
48
|
+
...(0, _ThemeProvider.applyShadowToken)(shadow)
|
|
49
|
+
});
|
|
50
|
+
/**
|
|
51
|
+
* A themeless base component for Card which components can apply theme tokens to. Not
|
|
52
|
+
* intended to be used in apps or sites directly: build themed components on top of this.
|
|
53
|
+
*/
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
const CardBase = ({
|
|
57
|
+
children,
|
|
58
|
+
tokens,
|
|
59
|
+
...rest
|
|
60
|
+
}) => {
|
|
61
|
+
const cardStyle = selectStyles(typeof tokens === 'function' ? tokens() : tokens);
|
|
62
|
+
const props = { ..._propTypes2.a11yProps.select(rest),
|
|
63
|
+
..._propTypes2.viewProps.select(rest)
|
|
64
|
+
};
|
|
65
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
66
|
+
style: cardStyle,
|
|
67
|
+
...props,
|
|
68
|
+
children: children
|
|
69
|
+
});
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
CardBase.propTypes = {
|
|
73
|
+
children: _propTypes.default.node,
|
|
74
|
+
tokens: (0, _utils.getTokensPropType)('Card'),
|
|
75
|
+
..._propTypes2.a11yProps.types
|
|
76
|
+
};
|
|
77
|
+
var _default = CardBase;
|
|
78
|
+
exports.default = _default;
|