@telus-uds/components-base 0.0.2-prerelease.4 → 0.0.2-prerelease.8
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 +76 -0
- package/__fixtures__/Accessible.js +33 -0
- package/__fixtures__/Accessible.native.js +32 -0
- package/__fixtures__/testTheme.js +940 -54
- 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__/Divider/Divider.test.jsx +26 -5
- package/__tests__/Feedback/Feedback.test.jsx +42 -0
- package/__tests__/Icon/Icon.test.jsx +3 -3
- 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__/Spacer/Spacer.test.jsx +63 -0
- package/__tests__/StackView/StackView.test.jsx +216 -0
- package/__tests__/StackView/StackWrap.test.jsx +47 -0
- package/__tests__/StackView/getStackedContent.test.jsx +295 -0
- 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/TextInputBase.test.jsx +120 -0
- 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/__tests__/utils/useUniqueId.test.js +31 -0
- package/babel.config.js +20 -0
- package/jest.config.js +8 -2
- 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 +56 -28
- package/lib/Box/index.js +13 -2
- package/lib/Button/Button.js +38 -10
- package/lib/Button/ButtonBase.js +120 -109
- package/lib/Button/ButtonGroup.js +98 -99
- 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 +81 -17
- 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 +161 -0
- package/lib/Feedback/index.js +13 -0
- 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/InputLabel/InputLabel.js +122 -0
- package/lib/InputLabel/LabelContent.js +31 -0
- package/lib/InputLabel/LabelContent.native.js +16 -0
- package/lib/InputLabel/index.js +13 -0
- 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 +121 -146
- 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 +117 -0
- package/lib/Spacer/index.js +13 -0
- package/lib/StackView/StackView.js +129 -0
- package/lib/StackView/StackWrap.js +55 -0
- package/lib/StackView/StackWrap.native.js +14 -0
- package/lib/StackView/StackWrapBox.js +112 -0
- package/lib/StackView/StackWrapGap.js +71 -0
- package/lib/StackView/common.js +45 -0
- package/lib/StackView/getStackedContent.js +141 -0
- package/lib/StackView/index.js +29 -0
- 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 +75 -0
- package/lib/TextInput/TextInputBase.js +252 -0
- package/lib/TextInput/index.js +23 -0
- 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 -47
- 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 +509 -19
- 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 +54 -34
- package/lib/utils/pressability.js +120 -0
- package/lib/utils/propTypes.js +269 -108
- 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 +21 -0
- package/package.json +11 -8
- package/release-context.json +4 -4
- package/src/ActivityIndicator/{Spinner.web.jsx → Spinner.jsx} +0 -0
- package/src/Box/Box.jsx +13 -4
- package/src/Button/Button.jsx +9 -5
- package/src/Button/ButtonBase.jsx +74 -86
- package/src/Button/ButtonGroup.jsx +24 -41
- 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/Divider/Divider.jsx +38 -3
- package/src/ExpandCollapse/Control.jsx +1 -1
- package/src/Feedback/Feedback.jsx +108 -0
- package/src/Feedback/index.js +3 -0
- 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 +23 -27
- package/src/Icon/IconText.jsx +63 -0
- package/src/Icon/index.js +3 -2
- package/src/InputLabel/InputLabel.jsx +106 -0
- package/src/InputLabel/LabelContent.jsx +13 -0
- package/src/InputLabel/LabelContent.native.jsx +6 -0
- package/src/InputLabel/index.js +3 -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 +71 -146
- 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/Spacer/Spacer.jsx +91 -0
- package/src/Spacer/index.js +3 -0
- package/src/StackView/StackView.jsx +111 -0
- package/src/StackView/StackWrap.jsx +41 -0
- package/src/StackView/StackWrap.native.jsx +4 -0
- package/src/StackView/StackWrapBox.jsx +94 -0
- package/src/StackView/StackWrapGap.jsx +49 -0
- package/src/StackView/common.jsx +28 -0
- package/src/StackView/getStackedContent.jsx +112 -0
- package/src/StackView/index.js +6 -0
- 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 +52 -0
- package/src/TextInput/TextInputBase.jsx +210 -0
- package/src/TextInput/index.js +4 -0
- 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 -24
- 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 +34 -2
- 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 +22 -13
- package/src/utils/pressability.js +96 -0
- package/src/utils/propTypes.js +195 -47
- 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/src/utils/useUniqueId.js +14 -0
- package/stories/A11yText/A11yText.stories.jsx +15 -13
- package/stories/ActivityIndicator/ActivityIndicator.stories.jsx +11 -2
- package/stories/Box/Box.stories.jsx +29 -2
- package/stories/Button/Button.stories.jsx +21 -20
- package/stories/Button/ButtonGroup.stories.jsx +2 -1
- package/stories/Button/ButtonLink.stories.jsx +6 -4
- package/stories/Card/Card.stories.jsx +13 -1
- package/stories/Checkbox/Checkbox.stories.jsx +94 -0
- package/stories/Divider/Divider.stories.jsx +26 -2
- package/stories/ExpandCollapse/ExpandCollapse.stories.jsx +74 -79
- package/stories/Feedback/Feedback.stories.jsx +96 -0
- package/stories/FlexGrid/01 FlexGrid.stories.jsx +20 -7
- package/stories/Icon/Icon.stories.jsx +15 -6
- package/stories/InputLabel/InputLabel.stories.jsx +42 -0
- package/stories/Link/ChevronLink.stories.jsx +20 -4
- package/stories/Link/Link.stories.jsx +39 -3
- package/stories/Link/TextButton.stories.jsx +24 -2
- 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/Pagination/Pagination.stories.jsx +28 -14
- 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/SideNav/SideNav.stories.jsx +17 -2
- package/stories/Skeleton/Skeleton.stories.jsx +36 -0
- package/stories/Spacer/Spacer.stories.jsx +38 -0
- package/stories/StackView/StackView.stories.jsx +75 -0
- package/stories/StackView/StackWrap.stories.jsx +64 -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/TextInput/TextInput.stories.jsx +103 -0
- package/stories/ToggleSwitch/ToggleSwitch.stories.jsx +16 -3
- package/stories/Tooltip/Tooltip.stories.jsx +81 -0
- package/stories/TooltipButton/TooltipButton.stories.jsx +11 -0
- package/stories/Typography/Typography.stories.jsx +12 -3
- package/stories/{platform-supports.web.jsx → platform-supports.jsx} +1 -1
- package/stories/supports.jsx +110 -14
- package/__fixtures__/accessible.icon.svg +0 -6
- package/babel.config.json +0 -8
- package/lib/ActivityIndicator/Spinner.web.js +0 -55
- 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
package/lib/FlexGrid/Row/Row.js
CHANGED
|
@@ -1,9 +1,27 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
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 _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
15
|
+
|
|
16
|
+
var _systemConstants = require("@telus-uds/system-constants");
|
|
17
|
+
|
|
18
|
+
var _ViewportProvider = require("../../ViewportProvider");
|
|
19
|
+
|
|
20
|
+
var _helpers = _interopRequireDefault(require("../helpers"));
|
|
21
|
+
|
|
22
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
7
25
|
|
|
8
26
|
const horizontalAlignStyles = horizontalAlign => {
|
|
9
27
|
switch (horizontalAlign) {
|
|
@@ -81,41 +99,42 @@ const Row = ({
|
|
|
81
99
|
children,
|
|
82
100
|
...rest
|
|
83
101
|
}) => {
|
|
84
|
-
const viewPort = useViewport();
|
|
85
|
-
const reverseLevel =
|
|
102
|
+
const viewPort = (0, _ViewportProvider.useViewport)();
|
|
103
|
+
const reverseLevel = (0, _helpers.default)([xsReverse, smReverse, mdReverse, lgReverse, xlReverse]);
|
|
86
104
|
let flexDirection = '';
|
|
87
105
|
|
|
88
|
-
if (viewPort === viewports.xs) {
|
|
106
|
+
if (viewPort === _systemConstants.viewports.xs) {
|
|
89
107
|
flexDirection = reverseLevel[0] ? 'row-reverse' : 'row';
|
|
90
108
|
}
|
|
91
109
|
|
|
92
|
-
if (viewPort === viewports.sm) {
|
|
110
|
+
if (viewPort === _systemConstants.viewports.sm) {
|
|
93
111
|
flexDirection = reverseLevel[1] ? 'row-reverse' : 'row';
|
|
94
112
|
}
|
|
95
113
|
|
|
96
|
-
if (viewPort === viewports.md) {
|
|
114
|
+
if (viewPort === _systemConstants.viewports.md) {
|
|
97
115
|
flexDirection = reverseLevel[2] ? 'row-reverse' : 'row';
|
|
98
116
|
}
|
|
99
117
|
|
|
100
|
-
if (viewPort === viewports.lg) {
|
|
118
|
+
if (viewPort === _systemConstants.viewports.lg) {
|
|
101
119
|
flexDirection = reverseLevel[3] ? 'row-reverse' : 'row';
|
|
102
120
|
}
|
|
103
121
|
|
|
104
|
-
if (viewPort === viewports.xl) {
|
|
122
|
+
if (viewPort === _systemConstants.viewports.xl) {
|
|
105
123
|
flexDirection = reverseLevel[4] ? 'row-reverse' : 'row';
|
|
106
124
|
}
|
|
107
125
|
|
|
108
|
-
return /*#__PURE__*/
|
|
126
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, { ...rest,
|
|
109
127
|
style: [styles.row, {
|
|
110
128
|
flexDirection,
|
|
111
129
|
...horizontalAlignStyles(horizontalAlign),
|
|
112
130
|
...verticalAlignStyles(verticalAlign),
|
|
113
131
|
...distributeStyles(distribute)
|
|
114
|
-
}]
|
|
115
|
-
|
|
132
|
+
}],
|
|
133
|
+
children: children
|
|
134
|
+
});
|
|
116
135
|
};
|
|
117
136
|
|
|
118
|
-
const styles =
|
|
137
|
+
const styles = _StyleSheet.default.create({
|
|
119
138
|
row: {
|
|
120
139
|
width: '100%',
|
|
121
140
|
marginVertical: 0,
|
|
@@ -127,46 +146,48 @@ const styles = StyleSheet.create({
|
|
|
127
146
|
flexWrap: 'wrap'
|
|
128
147
|
}
|
|
129
148
|
});
|
|
149
|
+
|
|
130
150
|
Row.propTypes = {
|
|
131
151
|
/**
|
|
132
152
|
* Align columns horizontally within their row.
|
|
133
153
|
*/
|
|
134
|
-
horizontalAlign:
|
|
154
|
+
horizontalAlign: _propTypes.default.oneOf(['start', 'center', 'end']),
|
|
135
155
|
|
|
136
156
|
/**
|
|
137
157
|
* Align columns vertically within their row.
|
|
138
158
|
*/
|
|
139
|
-
verticalAlign:
|
|
159
|
+
verticalAlign: _propTypes.default.oneOf(['top', 'middle', 'bottom']),
|
|
140
160
|
|
|
141
161
|
/**
|
|
142
162
|
* Distribute empty space around columns.
|
|
143
163
|
*/
|
|
144
|
-
distribute:
|
|
164
|
+
distribute: _propTypes.default.oneOf(['around', 'between']),
|
|
145
165
|
|
|
146
166
|
/**
|
|
147
167
|
* Choose if the item order should be reversed from the 'xs' breakpoint. When you pass in false, the order will be normal from the xs breakpoint. By default, it inherits the behaviour set by the preceding prop.
|
|
148
168
|
*/
|
|
149
|
-
xsReverse:
|
|
169
|
+
xsReverse: _propTypes.default.bool,
|
|
150
170
|
|
|
151
171
|
/**
|
|
152
172
|
* Choose if the item order should be reversed from the 'sm' breakpoint. When you pass in false, the order will be normal from the sm breakpoint. By default, it inherits the behaviour set by the preceding prop.
|
|
153
173
|
*/
|
|
154
|
-
smReverse:
|
|
174
|
+
smReverse: _propTypes.default.bool,
|
|
155
175
|
|
|
156
176
|
/**
|
|
157
177
|
* Choose if the item order should be reversed from the 'md' breakpoint. When you pass in false, the order will be normal from the md breakpoint. By default, it inherits the behaviour set by the preceding prop.
|
|
158
178
|
*/
|
|
159
|
-
mdReverse:
|
|
179
|
+
mdReverse: _propTypes.default.bool,
|
|
160
180
|
|
|
161
181
|
/**
|
|
162
182
|
* Choose if the item order should be reversed from the 'lg' breakpoint. When you pass in false, the order will be normal from the lg breakpoint. By default, it inherits the behaviour set by the preceding prop.
|
|
163
183
|
*/
|
|
164
|
-
lgReverse:
|
|
184
|
+
lgReverse: _propTypes.default.bool,
|
|
165
185
|
|
|
166
186
|
/**
|
|
167
187
|
* Choose if the item order should be reversed from the 'xl' breakpoint. When you pass in false, the order will be normal from the xl breakpoint. By default, it inherits the behaviour set by the preceding prop.
|
|
168
188
|
*/
|
|
169
|
-
xlReverse:
|
|
170
|
-
children:
|
|
189
|
+
xlReverse: _propTypes.default.bool,
|
|
190
|
+
children: _propTypes.default.node.isRequired
|
|
171
191
|
};
|
|
172
|
-
|
|
192
|
+
var _default = Row;
|
|
193
|
+
exports.default = _default;
|
|
@@ -1,2 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _Row = _interopRequireDefault(require("./Row"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _Row.default;
|
|
13
|
+
exports.default = _default;
|
|
@@ -1,3 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
1
8
|
const applyInheritance = sizes => {
|
|
2
9
|
let prevSize;
|
|
3
10
|
return sizes.map((size, index) => {
|
|
@@ -18,4 +25,5 @@ const applyInheritance = sizes => {
|
|
|
18
25
|
});
|
|
19
26
|
};
|
|
20
27
|
|
|
21
|
-
|
|
28
|
+
var _default = applyInheritance;
|
|
29
|
+
exports.default = _default;
|
package/lib/FlexGrid/index.js
CHANGED
|
@@ -1,2 +1,13 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _FlexGrid = _interopRequireDefault(require("./FlexGrid"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _FlexGrid.default;
|
|
13
|
+
exports.default = _default;
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
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
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
const GutterContext = /*#__PURE__*/_react.default.createContext(false);
|
|
13
|
+
|
|
14
|
+
var _default = GutterContext;
|
|
15
|
+
exports.default = _default;
|
package/lib/Icon/Icon.js
CHANGED
|
@@ -1,69 +1,74 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = exports.iconComponentPropTypes = void 0;
|
|
7
|
+
|
|
8
|
+
var _react = _interopRequireDefault(require("react"));
|
|
9
|
+
|
|
10
|
+
var _Platform = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Platform"));
|
|
11
|
+
|
|
12
|
+
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
13
|
+
|
|
14
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
15
|
+
|
|
16
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
17
|
+
|
|
18
|
+
var _utils = require("../utils");
|
|
19
|
+
|
|
20
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
21
|
+
|
|
22
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
6
23
|
|
|
7
24
|
const Icon = ({
|
|
8
|
-
|
|
25
|
+
icon: IconComponent,
|
|
26
|
+
accessibilityLabel,
|
|
9
27
|
variant,
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
tokens = {}
|
|
28
|
+
tokens,
|
|
29
|
+
scalesWithText = false
|
|
13
30
|
}) => {
|
|
14
|
-
const themeTokens = useThemeTokens('Icon', tokens, variant);
|
|
15
|
-
const
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
size:
|
|
31
|
+
const themeTokens = (0, _ThemeProvider.useThemeTokens)('Icon', tokens, variant);
|
|
32
|
+
const size = scalesWithText ? (0, _utils.scaleWithText)(themeTokens.size) : themeTokens.size;
|
|
33
|
+
const iconContent = /*#__PURE__*/(0, _jsxRuntime.jsx)(IconComponent, {
|
|
34
|
+
title: accessibilityLabel,
|
|
35
|
+
size: size,
|
|
19
36
|
color: themeTokens.color
|
|
20
37
|
});
|
|
21
|
-
return
|
|
38
|
+
return _Platform.default.OS === 'web' ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default // eslint-disable-next-line react-native/no-inline-styles
|
|
22
39
|
, {
|
|
23
40
|
style: {
|
|
24
|
-
// TODO:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
41
|
+
// TODO: systematise animations.
|
|
42
|
+
// https://github.com/telus/universal-design-system/issues/487
|
|
43
|
+
transition: 'transform 200ms, color 200ms',
|
|
44
|
+
transform: [themeTokens.scale ? "scale(".concat(themeTokens.scale, ")") : '', themeTokens.translateX ? "translateX(".concat(themeTokens.translateX, "px)") : '', themeTokens.translateY ? "translateY(".concat(themeTokens.translateY, "px)") : ''].filter(exists => exists).join(' ')
|
|
45
|
+
},
|
|
46
|
+
children: iconContent
|
|
47
|
+
}) : iconContent;
|
|
48
|
+
};
|
|
31
49
|
|
|
32
|
-
|
|
33
|
-
variant: variantProp.propType,
|
|
34
|
-
tokens: getTokensPropType('Icon'),
|
|
50
|
+
const iconComponentPropTypes = {
|
|
51
|
+
variant: _utils.variantProp.propType,
|
|
52
|
+
tokens: (0, _utils.getTokensPropType)('Icon'),
|
|
35
53
|
|
|
36
54
|
/**
|
|
37
55
|
* Descriptive label used in web SVG title tag for accessibility
|
|
38
56
|
*/
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* On web, this unique id is applied to <SVG> title and aria-labelledby attr
|
|
43
|
-
*/
|
|
44
|
-
titleId: PropTypes.string
|
|
45
|
-
}; // Auto-generated SVG icon components contain an inner SVG component taking these props:
|
|
46
|
-
|
|
47
|
-
export const iconSvgPropTypes = {
|
|
48
|
-
title: iconComponentPropTypes.label,
|
|
49
|
-
titleId: iconComponentPropTypes.titleId,
|
|
50
|
-
|
|
51
|
-
/**
|
|
52
|
-
* The size of the SVG icon after resolving tokens
|
|
53
|
-
*/
|
|
54
|
-
size: PropTypes.number,
|
|
57
|
+
accessibilityLabel: _propTypes.default.string,
|
|
55
58
|
|
|
56
59
|
/**
|
|
57
|
-
*
|
|
60
|
+
* controls whether the icon size should be proportionate to any accessibility-related font scaling.
|
|
58
61
|
*/
|
|
59
|
-
|
|
62
|
+
scalesWithText: _propTypes.default.bool
|
|
60
63
|
};
|
|
64
|
+
exports.iconComponentPropTypes = iconComponentPropTypes;
|
|
61
65
|
Icon.propTypes = { ...iconComponentPropTypes,
|
|
62
66
|
|
|
63
67
|
/**
|
|
64
|
-
*
|
|
65
|
-
*
|
|
68
|
+
* A valid UDS icon component imported from a UDS palette
|
|
69
|
+
* (e.g.) `import { MyIcon } from @telus-uds/palette-<brand>/build/web/icons`
|
|
66
70
|
*/
|
|
67
|
-
|
|
71
|
+
icon: _propTypes.default.elementType.isRequired
|
|
68
72
|
};
|
|
69
|
-
|
|
73
|
+
var _default = Icon;
|
|
74
|
+
exports.default = _default;
|
|
@@ -0,0 +1,100 @@
|
|
|
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 _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
15
|
+
|
|
16
|
+
var _Icon = _interopRequireWildcard(require("./Icon"));
|
|
17
|
+
|
|
18
|
+
var _StackView = require("../StackView");
|
|
19
|
+
|
|
20
|
+
var _utils = require("../utils");
|
|
21
|
+
|
|
22
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
23
|
+
|
|
24
|
+
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); }
|
|
25
|
+
|
|
26
|
+
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; }
|
|
27
|
+
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Returns an icon and some text with a sized gap between them. This is a utility component
|
|
32
|
+
* intended for use when creating components, not intended for use in applications on its own.
|
|
33
|
+
*
|
|
34
|
+
* IconText does not wrap its children, so should be used either:
|
|
35
|
+
* - inline within a <Text> element
|
|
36
|
+
* - within a container with `flexDirection: 'row'`
|
|
37
|
+
*/
|
|
38
|
+
const IconText = ({
|
|
39
|
+
space,
|
|
40
|
+
iconPosition = 'left',
|
|
41
|
+
icon: IconComponent,
|
|
42
|
+
iconProps,
|
|
43
|
+
children
|
|
44
|
+
}) => {
|
|
45
|
+
var _iconProps$tokens;
|
|
46
|
+
|
|
47
|
+
const iconContent = IconComponent && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
|
|
48
|
+
icon: IconComponent,
|
|
49
|
+
scalesWithText: true,
|
|
50
|
+
...iconProps
|
|
51
|
+
}); // Inline images on Android are always baseline-aligned which makes them look misaligned - offset it.
|
|
52
|
+
// See abandoned issue https://github.com/facebook/react-native/issues/6529
|
|
53
|
+
|
|
54
|
+
const size = iconProps === null || iconProps === void 0 ? void 0 : (_iconProps$tokens = iconProps.tokens) === null || _iconProps$tokens === void 0 ? void 0 : _iconProps$tokens.size;
|
|
55
|
+
const iconAdjusted = _Platform.default.OS === 'android' && iconContent && size ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
56
|
+
style: {
|
|
57
|
+
transform: [{
|
|
58
|
+
translateY: size * 0.2
|
|
59
|
+
}]
|
|
60
|
+
},
|
|
61
|
+
children: iconContent
|
|
62
|
+
}) : iconContent;
|
|
63
|
+
return (0, _StackView.getStackedContent)(iconPosition === 'left' ? [iconAdjusted, children] : [children, iconAdjusted], {
|
|
64
|
+
space,
|
|
65
|
+
direction: 'row'
|
|
66
|
+
});
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
IconText.propTypes = {
|
|
70
|
+
/**
|
|
71
|
+
* Amount of space to separate the text content and icon. Uses the themes's spacing scale
|
|
72
|
+
* (see useSpacingScale for more info).
|
|
73
|
+
*/
|
|
74
|
+
space: _utils.spacingProps.types.spacingValue,
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Whether the icon should be to the left of the content or the right of the content.
|
|
78
|
+
*/
|
|
79
|
+
iconPosition: _propTypes.default.oneOf(['left', 'right']),
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* A valid UDS icon component imported from a UDS palette.
|
|
83
|
+
*/
|
|
84
|
+
icon: _propTypes.default.func,
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Props that will be passed to the icon component. By default the icon's `scalesWithText`
|
|
88
|
+
* prop will be set as "true" so that the icon continues to match the size of the text
|
|
89
|
+
* if users use accessibility settings to increase text size.
|
|
90
|
+
*/
|
|
91
|
+
iconProps: _propTypes.default.exact(_Icon.iconComponentPropTypes),
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Content to be rendered alongside the Icon component. Usually this should be a
|
|
95
|
+
* `<Typography>` component, or a component that renders `<Text>`.
|
|
96
|
+
*/
|
|
97
|
+
children: _propTypes.default.node
|
|
98
|
+
};
|
|
99
|
+
var _default = IconText;
|
|
100
|
+
exports.default = _default;
|
package/lib/Icon/index.js
CHANGED
|
@@ -1,3 +1,31 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "iconComponentPropTypes", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _Icon.iconComponentPropTypes;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "IconText", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _IconText.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
exports.default = void 0;
|
|
19
|
+
|
|
20
|
+
var _Icon = _interopRequireWildcard(require("./Icon"));
|
|
21
|
+
|
|
22
|
+
var _IconText = _interopRequireDefault(require("./IconText"));
|
|
23
|
+
|
|
24
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
25
|
+
|
|
26
|
+
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); }
|
|
27
|
+
|
|
28
|
+
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; }
|
|
29
|
+
|
|
30
|
+
var _default = _Icon.default;
|
|
31
|
+
exports.default = _default;
|
|
@@ -0,0 +1,122 @@
|
|
|
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 _StyleSheet = _interopRequireDefault(require("react-native-web/dist/cjs/exports/StyleSheet"));
|
|
11
|
+
|
|
12
|
+
var _Text = _interopRequireDefault(require("react-native-web/dist/cjs/exports/Text"));
|
|
13
|
+
|
|
14
|
+
var _View = _interopRequireDefault(require("react-native-web/dist/cjs/exports/View"));
|
|
15
|
+
|
|
16
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
17
|
+
|
|
18
|
+
var _ThemeProvider = require("../ThemeProvider");
|
|
19
|
+
|
|
20
|
+
var _utils = require("../utils");
|
|
21
|
+
|
|
22
|
+
var _LabelContent = _interopRequireDefault(require("./LabelContent"));
|
|
23
|
+
|
|
24
|
+
var _Tooltip = _interopRequireDefault(require("../Tooltip"));
|
|
25
|
+
|
|
26
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
|
+
|
|
28
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
29
|
+
|
|
30
|
+
const selectLabelStyles = tokens => (0, _ThemeProvider.applyTextStyles)((0, _utils.selectTokens)('Typography', tokens));
|
|
31
|
+
|
|
32
|
+
const selectHintStyles = ({
|
|
33
|
+
hintColor,
|
|
34
|
+
hintFontName,
|
|
35
|
+
hintFontSize,
|
|
36
|
+
hintFontWeight,
|
|
37
|
+
hintLineHeight
|
|
38
|
+
}) => (0, _ThemeProvider.applyTextStyles)({
|
|
39
|
+
color: hintColor,
|
|
40
|
+
fontName: hintFontName,
|
|
41
|
+
fontSize: hintFontSize,
|
|
42
|
+
fontWeight: hintFontWeight,
|
|
43
|
+
lineHeight: hintLineHeight
|
|
44
|
+
});
|
|
45
|
+
|
|
46
|
+
const selectGapStyles = ({
|
|
47
|
+
gap
|
|
48
|
+
}) => ({
|
|
49
|
+
marginRight: gap
|
|
50
|
+
});
|
|
51
|
+
|
|
52
|
+
function InputLabel({
|
|
53
|
+
label,
|
|
54
|
+
forId,
|
|
55
|
+
hint,
|
|
56
|
+
hintPosition = 'inline',
|
|
57
|
+
hintId,
|
|
58
|
+
tooltip,
|
|
59
|
+
tokens,
|
|
60
|
+
variant
|
|
61
|
+
}) {
|
|
62
|
+
const themeTokens = (0, _ThemeProvider.useThemeTokens)('InputLabel', tokens, variant);
|
|
63
|
+
const hasTooltip = tooltip !== undefined;
|
|
64
|
+
const isHintInline = hintPosition === 'inline';
|
|
65
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_View.default, {
|
|
66
|
+
style: [staticStyles.container, !isHintInline && staticStyles.containerWithHintBelow],
|
|
67
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
|
|
68
|
+
style: [selectLabelStyles(themeTokens), selectGapStyles(themeTokens), staticStyles.label],
|
|
69
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_LabelContent.default, {
|
|
70
|
+
forId: forId,
|
|
71
|
+
children: label
|
|
72
|
+
})
|
|
73
|
+
}), hint && isHintInline && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
|
|
74
|
+
style: [selectHintStyles(themeTokens), hasTooltip && selectGapStyles(themeTokens)],
|
|
75
|
+
nativeID: hintId,
|
|
76
|
+
children: hint
|
|
77
|
+
}), hasTooltip && /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
78
|
+
style: staticStyles.tooltipAlign,
|
|
79
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Tooltip.default, {
|
|
80
|
+
content: tooltip
|
|
81
|
+
})
|
|
82
|
+
}), hint && !isHintInline && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Text.default, {
|
|
83
|
+
style: [selectHintStyles(themeTokens), staticStyles.hintBelow],
|
|
84
|
+
nativeID: hintId,
|
|
85
|
+
children: hint
|
|
86
|
+
})]
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
InputLabel.propTypes = {
|
|
91
|
+
label: _propTypes.default.string.isRequired,
|
|
92
|
+
forId: _propTypes.default.string,
|
|
93
|
+
hint: _propTypes.default.string,
|
|
94
|
+
hintPosition: _propTypes.default.oneOf(['inline', 'below']),
|
|
95
|
+
hintId: _propTypes.default.string,
|
|
96
|
+
tooltip: _propTypes.default.string,
|
|
97
|
+
tokens: (0, _utils.getTokensPropType)('InputLabel'),
|
|
98
|
+
variant: _utils.variantProp.propType
|
|
99
|
+
};
|
|
100
|
+
var _default = InputLabel;
|
|
101
|
+
exports.default = _default;
|
|
102
|
+
|
|
103
|
+
const staticStyles = _StyleSheet.default.create({
|
|
104
|
+
container: {
|
|
105
|
+
display: 'flex',
|
|
106
|
+
flexDirection: 'row',
|
|
107
|
+
alignItems: 'baseline'
|
|
108
|
+
},
|
|
109
|
+
containerWithHintBelow: {
|
|
110
|
+
flexWrap: 'wrap'
|
|
111
|
+
},
|
|
112
|
+
label: {
|
|
113
|
+
flexShrink: 0
|
|
114
|
+
},
|
|
115
|
+
hintBelow: {
|
|
116
|
+
flexBasis: '100%',
|
|
117
|
+
flexShrink: 0
|
|
118
|
+
},
|
|
119
|
+
tooltipAlign: {
|
|
120
|
+
alignSelf: 'center'
|
|
121
|
+
}
|
|
122
|
+
});
|
|
@@ -0,0 +1,31 @@
|
|
|
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 _jsxRuntime = require("react/jsx-runtime");
|
|
13
|
+
|
|
14
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
15
|
+
|
|
16
|
+
function LabelContent({
|
|
17
|
+
children,
|
|
18
|
+
forId
|
|
19
|
+
}) {
|
|
20
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
|
|
21
|
+
htmlFor: forId,
|
|
22
|
+
children: children
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
var _default = LabelContent;
|
|
27
|
+
exports.default = _default;
|
|
28
|
+
LabelContent.propTypes = {
|
|
29
|
+
children: _propTypes.default.string,
|
|
30
|
+
forId: _propTypes.default.string
|
|
31
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
// Since there's no equivalent for web's <label> element we're simply rendering whatever is passed to this component.
|
|
9
|
+
function LabelContent({
|
|
10
|
+
children
|
|
11
|
+
}) {
|
|
12
|
+
return children;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
var _default = LabelContent;
|
|
16
|
+
exports.default = _default;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
|
|
8
|
+
var _InputLabel = _interopRequireDefault(require("./InputLabel"));
|
|
9
|
+
|
|
10
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
+
|
|
12
|
+
var _default = _InputLabel.default;
|
|
13
|
+
exports.default = _default;
|