@telus-uds/components-base 1.8.1 → 1.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +13 -2
- package/component-docs.json +682 -675
- package/lib/A11yInfoProvider/index.js +4 -3
- package/lib/A11yText/index.js +6 -5
- package/lib/ActivityIndicator/Spinner.js +7 -6
- package/lib/ActivityIndicator/Spinner.native.js +8 -6
- package/lib/ActivityIndicator/index.js +6 -5
- package/lib/ActivityIndicator/shared.js +1 -1
- package/lib/BaseProvider/index.js +13 -10
- package/lib/Box/Box.js +20 -19
- package/lib/Button/Button.js +7 -6
- package/lib/Button/ButtonBase.js +95 -77
- package/lib/Button/ButtonGroup.js +33 -31
- package/lib/Button/ButtonLink.js +9 -7
- package/lib/Button/index.js +4 -4
- package/lib/Button/propTypes.js +1 -1
- package/lib/Card/Card.js +8 -7
- package/lib/Card/CardBase.js +35 -31
- package/lib/Card/PressableCardBase.js +14 -12
- package/lib/Checkbox/Checkbox.js +96 -82
- package/lib/Checkbox/CheckboxGroup.js +27 -25
- package/lib/Checkbox/CheckboxInput.js +12 -10
- package/lib/Divider/Divider.js +8 -7
- package/lib/ExpandCollapse/Control.js +42 -36
- package/lib/ExpandCollapse/ExpandCollapse.js +11 -10
- package/lib/ExpandCollapse/Panel.js +27 -23
- package/lib/Feedback/Feedback.js +48 -35
- package/lib/Fieldset/Fieldset.js +16 -15
- package/lib/Fieldset/FieldsetContainer.js +16 -13
- package/lib/Fieldset/FieldsetContainer.native.js +11 -8
- package/lib/Fieldset/Legend.js +10 -7
- package/lib/Fieldset/Legend.native.js +10 -7
- package/lib/FlexGrid/Col/Col.js +17 -16
- package/lib/FlexGrid/FlexGrid.js +15 -14
- package/lib/FlexGrid/Row/Row.js +13 -12
- package/lib/HorizontalScroll/HorizontalScroll.js +25 -20
- package/lib/HorizontalScroll/HorizontalScrollButton.js +18 -14
- package/lib/HorizontalScroll/ScrollViewEnd.js +6 -5
- package/lib/HorizontalScroll/ScrollViewEnd.native.js +12 -9
- package/lib/HorizontalScroll/itemPositions.js +19 -13
- package/lib/Icon/Icon.js +10 -9
- package/lib/Icon/IconText.js +8 -7
- package/lib/Icon/index.js +5 -5
- package/lib/IconButton/IconButton.js +50 -42
- package/lib/InputLabel/InputLabel.js +37 -30
- package/lib/InputLabel/LabelContent.js +12 -9
- package/lib/InputLabel/LabelContent.native.js +9 -6
- package/lib/InputSupports/InputSupports.js +11 -10
- package/lib/InputSupports/useInputSupports.js +7 -6
- package/lib/Link/ChevronLink.js +9 -8
- package/lib/Link/InlinePressable.js +13 -10
- package/lib/Link/InlinePressable.native.js +20 -16
- package/lib/Link/Link.js +10 -9
- package/lib/Link/LinkBase.js +96 -78
- package/lib/Link/TextButton.js +9 -8
- package/lib/List/List.js +9 -7
- package/lib/List/ListItem.js +99 -74
- package/lib/Modal/Modal.js +72 -59
- package/lib/Notification/Notification.js +46 -33
- package/lib/Pagination/PageButton.js +11 -10
- package/lib/Pagination/Pagination.js +39 -28
- package/lib/Pagination/SideButton.js +21 -18
- package/lib/Pagination/usePagination.js +5 -4
- package/lib/Progress/Progress.js +23 -19
- package/lib/Progress/ProgressBar.js +23 -19
- package/lib/Progress/ProgressBarBackground.js +4 -3
- package/lib/Radio/Radio.js +79 -68
- package/lib/Radio/RadioButton.js +63 -53
- package/lib/Radio/RadioGroup.js +28 -26
- package/lib/Radio/RadioInput.js +12 -10
- package/lib/RadioCard/RadioCard.js +15 -14
- package/lib/RadioCard/RadioCardGroup.js +28 -26
- package/lib/Search/Search.js +51 -31
- package/lib/Select/Group.js +5 -4
- package/lib/Select/Group.native.js +4 -3
- package/lib/Select/Item.js +10 -7
- package/lib/Select/Item.native.js +1 -9
- package/lib/Select/Picker.js +16 -15
- package/lib/Select/Picker.native.js +49 -38
- package/lib/Select/Select.js +134 -113
- package/lib/SideNav/Item.js +39 -33
- package/lib/SideNav/ItemContent.js +15 -12
- package/lib/SideNav/ItemsGroup.js +13 -11
- package/lib/SideNav/SideNav.js +19 -16
- package/lib/Skeleton/Skeleton.js +60 -44
- package/lib/Skeleton/skeleton.constant.js +1 -1
- package/lib/Spacer/Spacer.js +6 -5
- package/lib/StackView/StackView.js +12 -11
- package/lib/StackView/StackWrap.js +2 -2
- package/lib/StackView/StackWrapBox.js +12 -11
- package/lib/StackView/StackWrapGap.js +11 -10
- package/lib/StackView/common.js +14 -11
- package/lib/StackView/getStackedContent.js +8 -7
- package/lib/StackView/index.js +1 -1
- package/lib/StepTracker/Step.js +122 -103
- package/lib/StepTracker/StepTracker.js +48 -38
- package/lib/Tabs/Tabs.js +29 -24
- package/lib/Tabs/TabsItem.js +79 -68
- package/lib/Tags/Tags.js +67 -61
- package/lib/TextInput/TextArea.js +26 -20
- package/lib/TextInput/TextInput.js +20 -15
- package/lib/TextInput/TextInputBase.js +74 -62
- package/lib/TextInput/index.js +4 -4
- package/lib/ThemeProvider/ThemeProvider.js +6 -5
- package/lib/ThemeProvider/index.js +5 -5
- package/lib/ThemeProvider/useSetTheme.js +6 -3
- package/lib/ThemeProvider/useThemeTokens.js +7 -2
- package/lib/ThemeProvider/utils/styles.js +48 -41
- package/lib/ThemeProvider/utils/theme-tokens.js +26 -12
- package/lib/ToggleSwitch/ToggleSwitch.js +89 -73
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +36 -34
- package/lib/Tooltip/Backdrop.js +4 -3
- package/lib/Tooltip/Backdrop.native.js +5 -4
- package/lib/Tooltip/Tooltip.js +81 -65
- package/lib/Tooltip/getTooltipPosition.js +29 -18
- package/lib/TooltipButton/TooltipButton.js +28 -21
- package/lib/Typography/Typography.js +37 -33
- package/lib/ViewportProvider/ViewportProvider.js +4 -3
- package/lib/ViewportProvider/useViewportListener.js +6 -3
- package/lib/index.js +54 -54
- package/lib/utils/a11y/semantics.js +5 -2
- package/lib/utils/a11y/textSize.js +8 -6
- package/lib/utils/animation/useVerticalExpandAnimation.js +6 -5
- package/lib/utils/children.js +2 -1
- package/lib/utils/index.js +10 -10
- package/lib/utils/input.js +22 -17
- package/lib/utils/pressability.js +36 -22
- package/lib/utils/props/clickProps.js +2 -1
- package/lib/utils/props/getPropSelector.js +6 -3
- package/lib/utils/props/handlerProps.js +25 -19
- package/lib/utils/props/hrefAttrsProp.js +14 -11
- package/lib/utils/props/index.js +12 -12
- package/lib/utils/props/inputSupportsProps.js +15 -12
- package/lib/utils/props/linkProps.js +7 -6
- package/lib/utils/props/pressProps.js +1 -1
- package/lib/utils/props/tokens.js +27 -13
- package/lib/utils/ssr.js +6 -2
- package/lib/utils/useCopy.js +6 -4
- package/lib/utils/useHash.js +2 -1
- package/lib/utils/useResponsiveProp.js +1 -1
- package/lib/utils/useUniqueId.js +2 -1
- package/lib/utils/withLinkRouter.js +6 -5
- package/package.json +11 -10
- package/src/Pagination/Pagination.jsx +3 -0
- package/src/Search/Search.jsx +11 -0
- package/src/Select/Item.native.jsx +0 -7
- package/lib-module/A11yInfoProvider/index.js +0 -62
- package/lib-module/A11yText/index.js +0 -55
- package/lib-module/ActivityIndicator/Spinner.js +0 -76
- package/lib-module/ActivityIndicator/Spinner.native.js +0 -143
- package/lib-module/ActivityIndicator/index.js +0 -40
- package/lib-module/ActivityIndicator/shared.js +0 -12
- package/lib-module/BaseProvider/index.js +0 -26
- package/lib-module/Box/Box.js +0 -243
- package/lib-module/Box/index.js +0 -2
- package/lib-module/Button/Button.js +0 -25
- package/lib-module/Button/ButtonBase.js +0 -254
- package/lib-module/Button/ButtonGroup.js +0 -245
- package/lib-module/Button/ButtonLink.js +0 -39
- package/lib-module/Button/index.js +0 -4
- package/lib-module/Button/propTypes.js +0 -36
- package/lib-module/Card/Card.js +0 -83
- package/lib-module/Card/CardBase.js +0 -62
- package/lib-module/Card/PressableCardBase.js +0 -113
- package/lib-module/Card/index.js +0 -4
- package/lib-module/Checkbox/Checkbox.js +0 -332
- package/lib-module/Checkbox/CheckboxGroup.js +0 -231
- package/lib-module/Checkbox/CheckboxInput.js +0 -58
- package/lib-module/Checkbox/CheckboxInput.native.js +0 -6
- package/lib-module/Checkbox/index.js +0 -3
- package/lib-module/Divider/Divider.js +0 -123
- package/lib-module/Divider/index.js +0 -2
- package/lib-module/ExpandCollapse/Accordion.js +0 -15
- package/lib-module/ExpandCollapse/Control.js +0 -130
- package/lib-module/ExpandCollapse/ExpandCollapse.js +0 -94
- package/lib-module/ExpandCollapse/Panel.js +0 -159
- package/lib-module/ExpandCollapse/index.js +0 -7
- package/lib-module/Feedback/Feedback.js +0 -144
- package/lib-module/Feedback/index.js +0 -2
- package/lib-module/Fieldset/Fieldset.js +0 -152
- package/lib-module/Fieldset/FieldsetContainer.js +0 -29
- package/lib-module/Fieldset/FieldsetContainer.native.js +0 -20
- package/lib-module/Fieldset/Legend.js +0 -21
- package/lib-module/Fieldset/Legend.native.js +0 -28
- package/lib-module/Fieldset/cssReset.js +0 -14
- package/lib-module/Fieldset/index.js +0 -2
- package/lib-module/FlexGrid/Col/Col.js +0 -275
- package/lib-module/FlexGrid/Col/index.js +0 -2
- package/lib-module/FlexGrid/FlexGrid.js +0 -147
- package/lib-module/FlexGrid/Row/Row.js +0 -183
- package/lib-module/FlexGrid/Row/index.js +0 -2
- package/lib-module/FlexGrid/helpers/index.js +0 -18
- package/lib-module/FlexGrid/index.js +0 -2
- package/lib-module/FlexGrid/providers/GutterContext.js +0 -3
- package/lib-module/HorizontalScroll/HorizontalScroll.js +0 -170
- package/lib-module/HorizontalScroll/HorizontalScrollButton.js +0 -77
- package/lib-module/HorizontalScroll/ScrollViewEnd.js +0 -47
- package/lib-module/HorizontalScroll/ScrollViewEnd.native.js +0 -24
- package/lib-module/HorizontalScroll/dictionary.js +0 -11
- package/lib-module/HorizontalScroll/index.js +0 -11
- package/lib-module/HorizontalScroll/itemPositions.js +0 -106
- package/lib-module/Icon/Icon.js +0 -61
- package/lib-module/Icon/IconText.js +0 -81
- package/lib-module/Icon/index.js +0 -4
- package/lib-module/IconButton/IconButton.js +0 -115
- package/lib-module/IconButton/index.js +0 -2
- package/lib-module/InputLabel/InputLabel.js +0 -141
- package/lib-module/InputLabel/LabelContent.js +0 -24
- package/lib-module/InputLabel/LabelContent.native.js +0 -16
- package/lib-module/InputLabel/index.js +0 -2
- package/lib-module/InputSupports/InputSupports.js +0 -95
- package/lib-module/InputSupports/index.js +0 -2
- package/lib-module/InputSupports/useInputSupports.js +0 -31
- package/lib-module/Link/ChevronLink.js +0 -51
- package/lib-module/Link/InlinePressable.js +0 -37
- package/lib-module/Link/InlinePressable.native.js +0 -85
- package/lib-module/Link/Link.js +0 -27
- package/lib-module/Link/LinkBase.js +0 -223
- package/lib-module/Link/TextButton.js +0 -34
- package/lib-module/Link/index.js +0 -5
- package/lib-module/List/List.js +0 -55
- package/lib-module/List/ListItem.js +0 -223
- package/lib-module/List/index.js +0 -5
- package/lib-module/Modal/Modal.js +0 -208
- package/lib-module/Modal/dictionary.js +0 -9
- package/lib-module/Modal/index.js +0 -2
- package/lib-module/Notification/Notification.js +0 -196
- package/lib-module/Notification/dictionary.js +0 -8
- package/lib-module/Notification/index.js +0 -2
- package/lib-module/Pagination/PageButton.js +0 -65
- package/lib-module/Pagination/Pagination.js +0 -140
- package/lib-module/Pagination/SideButton.js +0 -103
- package/lib-module/Pagination/dictionary.js +0 -18
- package/lib-module/Pagination/index.js +0 -2
- package/lib-module/Pagination/usePagination.js +0 -72
- package/lib-module/Progress/Progress.js +0 -85
- package/lib-module/Progress/ProgressBar.js +0 -134
- package/lib-module/Progress/ProgressBarBackground.js +0 -41
- package/lib-module/Progress/index.js +0 -4
- package/lib-module/Radio/Radio.js +0 -274
- package/lib-module/Radio/RadioButton.js +0 -128
- package/lib-module/Radio/RadioGroup.js +0 -241
- package/lib-module/Radio/RadioInput.js +0 -60
- package/lib-module/Radio/RadioInput.native.js +0 -6
- package/lib-module/Radio/index.js +0 -3
- package/lib-module/RadioCard/RadioCard.js +0 -218
- package/lib-module/RadioCard/RadioCardGroup.js +0 -248
- package/lib-module/RadioCard/index.js +0 -3
- package/lib-module/Search/Search.js +0 -241
- package/lib-module/Search/dictionary.js +0 -12
- package/lib-module/Search/index.js +0 -2
- package/lib-module/Select/Group.js +0 -20
- package/lib-module/Select/Group.native.js +0 -14
- package/lib-module/Select/Item.js +0 -17
- package/lib-module/Select/Item.native.js +0 -9
- package/lib-module/Select/Picker.js +0 -67
- package/lib-module/Select/Picker.native.js +0 -110
- package/lib-module/Select/Select.js +0 -316
- package/lib-module/Select/index.js +0 -6
- package/lib-module/SideNav/Item.js +0 -139
- package/lib-module/SideNav/ItemContent.js +0 -45
- package/lib-module/SideNav/ItemsGroup.js +0 -115
- package/lib-module/SideNav/SideNav.js +0 -133
- package/lib-module/SideNav/index.js +0 -1
- package/lib-module/Skeleton/Skeleton.js +0 -163
- package/lib-module/Skeleton/index.js +0 -2
- package/lib-module/Skeleton/skeleton.constant.js +0 -3
- package/lib-module/Skeleton/skeletonWebAnimation.js +0 -18
- package/lib-module/Skeleton/useSkeletonNativeAnimation.js +0 -24
- package/lib-module/Spacer/Spacer.js +0 -97
- package/lib-module/Spacer/index.js +0 -2
- package/lib-module/StackView/StackView.js +0 -124
- package/lib-module/StackView/StackWrap.js +0 -48
- package/lib-module/StackView/StackWrap.native.js +0 -3
- package/lib-module/StackView/StackWrapBox.js +0 -114
- package/lib-module/StackView/StackWrapGap.js +0 -58
- package/lib-module/StackView/common.js +0 -32
- package/lib-module/StackView/getStackedContent.js +0 -123
- package/lib-module/StackView/index.js +0 -5
- package/lib-module/StepTracker/Step.js +0 -229
- package/lib-module/StepTracker/StepTracker.js +0 -175
- package/lib-module/StepTracker/dictionary.js +0 -10
- package/lib-module/StepTracker/index.js +0 -2
- package/lib-module/Tabs/Tabs.js +0 -113
- package/lib-module/Tabs/TabsItem.js +0 -215
- package/lib-module/Tabs/index.js +0 -2
- package/lib-module/Tags/Tags.js +0 -245
- package/lib-module/Tags/index.js +0 -2
- package/lib-module/TextInput/TextArea.js +0 -88
- package/lib-module/TextInput/TextInput.js +0 -68
- package/lib-module/TextInput/TextInputBase.js +0 -233
- package/lib-module/TextInput/index.js +0 -3
- package/lib-module/TextInput/propTypes.js +0 -37
- package/lib-module/ThemeProvider/ThemeProvider.js +0 -35
- package/lib-module/ThemeProvider/index.js +0 -6
- package/lib-module/ThemeProvider/useSetTheme.js +0 -22
- package/lib-module/ThemeProvider/useTheme.js +0 -14
- package/lib-module/ThemeProvider/useThemeTokens.js +0 -105
- package/lib-module/ThemeProvider/utils/index.js +0 -2
- package/lib-module/ThemeProvider/utils/styles.js +0 -174
- package/lib-module/ThemeProvider/utils/theme-tokens.js +0 -151
- package/lib-module/ToggleSwitch/ToggleSwitch.js +0 -234
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +0 -218
- package/lib-module/ToggleSwitch/index.js +0 -3
- package/lib-module/Tooltip/Backdrop.js +0 -52
- package/lib-module/Tooltip/Backdrop.native.js +0 -43
- package/lib-module/Tooltip/Tooltip.js +0 -332
- package/lib-module/Tooltip/dictionary.js +0 -8
- package/lib-module/Tooltip/getTooltipPosition.js +0 -164
- package/lib-module/Tooltip/index.js +0 -2
- package/lib-module/TooltipButton/TooltipButton.js +0 -71
- package/lib-module/TooltipButton/index.js +0 -2
- package/lib-module/Typography/Typography.js +0 -120
- package/lib-module/Typography/index.js +0 -2
- package/lib-module/ViewportProvider/ViewportProvider.js +0 -28
- package/lib-module/ViewportProvider/index.js +0 -3
- package/lib-module/ViewportProvider/useViewport.js +0 -3
- package/lib-module/ViewportProvider/useViewportListener.js +0 -43
- package/lib-module/index.js +0 -48
- package/lib-module/utils/a11y/index.js +0 -2
- package/lib-module/utils/a11y/semantics.js +0 -154
- package/lib-module/utils/a11y/textSize.js +0 -34
- package/lib-module/utils/animation/index.js +0 -2
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +0 -61
- package/lib-module/utils/children.js +0 -118
- package/lib-module/utils/containUniqueFields.js +0 -26
- package/lib-module/utils/index.js +0 -16
- package/lib-module/utils/info/index.js +0 -7
- package/lib-module/utils/info/platform/index.js +0 -11
- package/lib-module/utils/info/platform/platform.android.js +0 -1
- package/lib-module/utils/info/platform/platform.ios.js +0 -1
- package/lib-module/utils/info/platform/platform.js +0 -1
- package/lib-module/utils/info/platform/platform.native.js +0 -4
- package/lib-module/utils/info/versions.js +0 -5
- package/lib-module/utils/input.js +0 -180
- package/lib-module/utils/pressability.js +0 -97
- package/lib-module/utils/props/a11yProps.js +0 -140
- package/lib-module/utils/props/clickProps.js +0 -25
- package/lib-module/utils/props/componentPropType.js +0 -63
- package/lib-module/utils/props/copyPropTypes.js +0 -2
- package/lib-module/utils/props/getPropSelector.js +0 -6
- package/lib-module/utils/props/handlerProps.js +0 -59
- package/lib-module/utils/props/hrefAttrsProp.js +0 -30
- package/lib-module/utils/props/index.js +0 -19
- package/lib-module/utils/props/inputSupportsProps.js +0 -59
- package/lib-module/utils/props/linkProps.js +0 -43
- package/lib-module/utils/props/paddingProp.js +0 -9
- package/lib-module/utils/props/pressProps.js +0 -42
- package/lib-module/utils/props/rectProp.js +0 -9
- package/lib-module/utils/props/responsiveProps.js +0 -30
- package/lib-module/utils/props/selectSystemProps.js +0 -24
- package/lib-module/utils/props/spacingProps.js +0 -56
- package/lib-module/utils/props/textInputProps.js +0 -194
- package/lib-module/utils/props/textProps.js +0 -59
- package/lib-module/utils/props/tokens.js +0 -120
- package/lib-module/utils/props/variantProp.js +0 -18
- package/lib-module/utils/props/viewProps.js +0 -22
- package/lib-module/utils/ssr.js +0 -35
- package/lib-module/utils/useCopy.js +0 -42
- package/lib-module/utils/useHash.js +0 -44
- package/lib-module/utils/useHash.native.js +0 -7
- package/lib-module/utils/useResponsiveProp.js +0 -47
- package/lib-module/utils/useSpacingScale.js +0 -123
- package/lib-module/utils/useUniqueId.js +0 -12
- package/lib-module/utils/withLinkRouter.js +0 -82
|
@@ -33,43 +33,49 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
33
33
|
|
|
34
34
|
const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_utils.a11yProps, _utils.viewProps]);
|
|
35
35
|
|
|
36
|
-
const selectOuterStyle =
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
outerBorderWidth,
|
|
40
|
-
outerBorderColor,
|
|
41
|
-
outerBorderGap,
|
|
42
|
-
shadow
|
|
43
|
-
}) => [{
|
|
44
|
-
backgroundColor,
|
|
45
|
-
...(0, _ThemeProvider.applyShadowToken)(shadow),
|
|
46
|
-
...(0, _ThemeProvider.applyOuterBorder)({
|
|
36
|
+
const selectOuterStyle = _ref => {
|
|
37
|
+
let {
|
|
38
|
+
backgroundColor,
|
|
47
39
|
borderRadius,
|
|
48
40
|
outerBorderWidth,
|
|
49
41
|
outerBorderColor,
|
|
50
|
-
outerBorderGap
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
padding: Math.max(0, padding - borderWidth) // Stable size as border changes
|
|
42
|
+
outerBorderGap,
|
|
43
|
+
shadow
|
|
44
|
+
} = _ref;
|
|
45
|
+
return [{
|
|
46
|
+
backgroundColor,
|
|
47
|
+
...(0, _ThemeProvider.applyShadowToken)(shadow),
|
|
48
|
+
...(0, _ThemeProvider.applyOuterBorder)({
|
|
49
|
+
borderRadius,
|
|
50
|
+
outerBorderWidth,
|
|
51
|
+
outerBorderColor,
|
|
52
|
+
outerBorderGap
|
|
53
|
+
}),
|
|
54
|
+
..._Platform.default.select({
|
|
55
|
+
web: {
|
|
56
|
+
outline: 'none',
|
|
57
|
+
display: 'inline-flex'
|
|
58
|
+
}
|
|
59
|
+
})
|
|
60
|
+
}, staticStyles.outer];
|
|
61
|
+
};
|
|
71
62
|
|
|
72
|
-
|
|
63
|
+
const selectInnerStyle = _ref2 => {
|
|
64
|
+
let {
|
|
65
|
+
borderColor,
|
|
66
|
+
borderWidth = 0,
|
|
67
|
+
borderRadius,
|
|
68
|
+
padding = 0
|
|
69
|
+
} = _ref2;
|
|
70
|
+
return {
|
|
71
|
+
// Inner borders animate with the icon and should be treated like a themable feature of the icon
|
|
72
|
+
borderColor,
|
|
73
|
+
borderRadius,
|
|
74
|
+
borderWidth,
|
|
75
|
+
padding: Math.max(0, padding - borderWidth) // Stable size as border changes
|
|
76
|
+
|
|
77
|
+
};
|
|
78
|
+
};
|
|
73
79
|
/**
|
|
74
80
|
* A pressable themeless base component that handles pressable states and passes tokens
|
|
75
81
|
* based on these to an outer border and a base Card component. Not intended to be used in
|
|
@@ -77,15 +83,17 @@ const selectInnerStyle = ({
|
|
|
77
83
|
*/
|
|
78
84
|
|
|
79
85
|
|
|
80
|
-
const IconButton = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
86
|
+
const IconButton = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {
|
|
87
|
+
let {
|
|
88
|
+
tokens,
|
|
89
|
+
variant,
|
|
90
|
+
icon: IconComponent,
|
|
91
|
+
href,
|
|
92
|
+
hrefAttrs,
|
|
93
|
+
accessibilityRole = href ? 'link' : 'button',
|
|
94
|
+
...rawRest
|
|
95
|
+
} = _ref3;
|
|
96
|
+
|
|
89
97
|
const {
|
|
90
98
|
onPress,
|
|
91
99
|
...rest
|
|
@@ -35,38 +35,45 @@ const [selectProps, selectedSystemPropTypes] = (0, _utils.selectSystemProps)([_u
|
|
|
35
35
|
|
|
36
36
|
const selectLabelStyles = tokens => (0, _ThemeProvider.applyTextStyles)((0, _utils.selectTokens)('Typography', tokens));
|
|
37
37
|
|
|
38
|
-
const selectHintStyles =
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
38
|
+
const selectHintStyles = _ref => {
|
|
39
|
+
let {
|
|
40
|
+
hintColor,
|
|
41
|
+
hintFontName,
|
|
42
|
+
hintFontSize,
|
|
43
|
+
hintFontWeight,
|
|
44
|
+
hintLineHeight
|
|
45
|
+
} = _ref;
|
|
46
|
+
return (0, _ThemeProvider.applyTextStyles)({
|
|
47
|
+
color: hintColor,
|
|
48
|
+
fontName: hintFontName,
|
|
49
|
+
fontSize: hintFontSize,
|
|
50
|
+
fontWeight: hintFontWeight,
|
|
51
|
+
lineHeight: hintLineHeight
|
|
52
|
+
});
|
|
53
|
+
};
|
|
51
54
|
|
|
52
|
-
const selectGapStyles =
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
55
|
+
const selectGapStyles = _ref2 => {
|
|
56
|
+
let {
|
|
57
|
+
gap
|
|
58
|
+
} = _ref2;
|
|
59
|
+
return {
|
|
60
|
+
marginRight: gap
|
|
61
|
+
};
|
|
62
|
+
};
|
|
57
63
|
|
|
58
|
-
const InputLabel = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
const InputLabel = /*#__PURE__*/(0, _react.forwardRef)((_ref3, ref) => {
|
|
65
|
+
let {
|
|
66
|
+
copy = 'en',
|
|
67
|
+
label,
|
|
68
|
+
forId,
|
|
69
|
+
hint,
|
|
70
|
+
hintPosition = 'inline',
|
|
71
|
+
hintId,
|
|
72
|
+
tooltip,
|
|
73
|
+
tokens,
|
|
74
|
+
variant,
|
|
75
|
+
...rest
|
|
76
|
+
} = _ref3;
|
|
70
77
|
const themeTokens = (0, _ThemeProvider.useThemeTokens)('InputLabel', tokens, variant);
|
|
71
78
|
const hasTooltip = tooltip !== undefined;
|
|
72
79
|
const isHintInline = hintPosition === 'inline';
|
|
@@ -17,15 +17,18 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
17
17
|
|
|
18
18
|
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; }
|
|
19
19
|
|
|
20
|
-
const LabelContent = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
const LabelContent = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
21
|
+
let {
|
|
22
|
+
children,
|
|
23
|
+
forId
|
|
24
|
+
} = _ref;
|
|
25
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)("label", {
|
|
26
|
+
ref: ref,
|
|
27
|
+
htmlFor: forId,
|
|
28
|
+
style: staticStyles.inheritCursor,
|
|
29
|
+
children: children
|
|
30
|
+
});
|
|
31
|
+
});
|
|
29
32
|
LabelContent.displayName = 'LabelContent';
|
|
30
33
|
LabelContent.propTypes = {
|
|
31
34
|
children: _propTypes.default.string,
|
|
@@ -20,12 +20,15 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
20
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
21
|
|
|
22
22
|
// Since there's no equivalent for web's <label> element we're simply rendering whatever is passed to this component.
|
|
23
|
-
const LabelContent = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
23
|
+
const LabelContent = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
24
|
+
let {
|
|
25
|
+
children
|
|
26
|
+
} = _ref;
|
|
27
|
+
return ref ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_View.default, {
|
|
28
|
+
ref: ref,
|
|
29
|
+
children: children
|
|
30
|
+
}) : children;
|
|
31
|
+
});
|
|
29
32
|
LabelContent.displayName = 'LabelContent';
|
|
30
33
|
LabelContent.propTypes = {
|
|
31
34
|
children: _propTypes.default.node
|
|
@@ -27,16 +27,17 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
27
27
|
|
|
28
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
29
|
|
|
30
|
-
const InputSupports = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
const InputSupports = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
31
|
+
let {
|
|
32
|
+
children,
|
|
33
|
+
copy = 'en',
|
|
34
|
+
label,
|
|
35
|
+
hint,
|
|
36
|
+
hintPosition = 'inline',
|
|
37
|
+
feedback,
|
|
38
|
+
tooltip,
|
|
39
|
+
validation
|
|
40
|
+
} = _ref;
|
|
40
41
|
const {
|
|
41
42
|
space
|
|
42
43
|
} = (0, _ThemeProvider.useThemeTokens)('InputSupports');
|
|
@@ -11,12 +11,13 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
|
|
|
11
11
|
|
|
12
12
|
const joinDefined = array => array.filter(item => item !== undefined).join(' ');
|
|
13
13
|
|
|
14
|
-
const useInputSupports =
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
14
|
+
const useInputSupports = _ref => {
|
|
15
|
+
let {
|
|
16
|
+
label,
|
|
17
|
+
feedback,
|
|
18
|
+
validation,
|
|
19
|
+
hint
|
|
20
|
+
} = _ref;
|
|
20
21
|
const hasValidationError = validation === 'error';
|
|
21
22
|
const inputId = (0, _useUniqueId.default)('input');
|
|
22
23
|
const hintId = (0, _useUniqueId.default)('input-hint');
|
package/lib/Link/ChevronLink.js
CHANGED
|
@@ -29,14 +29,15 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
29
29
|
*
|
|
30
30
|
* ChevronLink is not intended to be deeply themable; variants passed to ChevronLink are forwarded to Link.
|
|
31
31
|
*/
|
|
32
|
-
const ChevronLink = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
32
|
+
const ChevronLink = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
33
|
+
let {
|
|
34
|
+
direction = 'right',
|
|
35
|
+
children,
|
|
36
|
+
tokens,
|
|
37
|
+
variant,
|
|
38
|
+
dataSet,
|
|
39
|
+
...linkProps
|
|
40
|
+
} = _ref;
|
|
40
41
|
const getChevronTokens = (0, _ThemeProvider.useThemeTokensCallback)('ChevronLink', tokens, variant);
|
|
41
42
|
|
|
42
43
|
const applyChevronTokens = linkState => {
|
|
@@ -33,16 +33,19 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
33
33
|
*/
|
|
34
34
|
// React Native exports prop Types but not propTypes, use JSDoc types here rather than duplicate RN
|
|
35
35
|
// eslint-disable-next-line react/prop-types
|
|
36
|
-
const InlinePressable = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
36
|
+
const InlinePressable = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
37
|
+
let {
|
|
38
|
+
children,
|
|
39
|
+
style,
|
|
40
|
+
...props
|
|
41
|
+
} = _ref;
|
|
42
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_Pressable.default, {
|
|
43
|
+
ref: ref,
|
|
44
|
+
style: pressState => [staticStyles.inline, typeof style === 'function' ? style(pressState) : style],
|
|
45
|
+
...props,
|
|
46
|
+
children: pressState => typeof children === 'function' ? children(pressState) : children
|
|
47
|
+
});
|
|
48
|
+
});
|
|
46
49
|
InlinePressable.displayName = 'InlinePressable';
|
|
47
50
|
|
|
48
51
|
const staticStyles = _StyleSheet.default.create({
|
|
@@ -25,16 +25,19 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
25
25
|
* @typedef {import('react-native').PressableProps} PressableProps
|
|
26
26
|
*/
|
|
27
27
|
// TouchableWithoutFeedback and Pressable have similar but not identical props APIs
|
|
28
|
-
const pressablePropsToTouchable =
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
28
|
+
const pressablePropsToTouchable = _ref => {
|
|
29
|
+
let {
|
|
30
|
+
unstable_pressDelay,
|
|
31
|
+
android_disableSound,
|
|
32
|
+
android_ripple,
|
|
33
|
+
// Unsupported, discard it
|
|
34
|
+
...props
|
|
35
|
+
} = _ref;
|
|
36
|
+
return { ...props,
|
|
37
|
+
touchSoundDisabled: android_disableSound,
|
|
38
|
+
delayPressIn: unstable_pressDelay
|
|
39
|
+
};
|
|
40
|
+
};
|
|
38
41
|
/**
|
|
39
42
|
* InlinePressable is an alternative to React Native's Pressable that works better when nested
|
|
40
43
|
* inline inside Text. It accepts the same props as React Native's Pressable.
|
|
@@ -57,12 +60,13 @@ const pressablePropsToTouchable = ({
|
|
|
57
60
|
// eslint-disable-next-line react/prop-types
|
|
58
61
|
|
|
59
62
|
|
|
60
|
-
const InlinePressable = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
63
|
+
const InlinePressable = /*#__PURE__*/(0, _react.forwardRef)((_ref2, ref) => {
|
|
64
|
+
let {
|
|
65
|
+
onPress,
|
|
66
|
+
children,
|
|
67
|
+
style,
|
|
68
|
+
...rest
|
|
69
|
+
} = _ref2;
|
|
66
70
|
const [isFocused, setIsFocused] = (0, _react.useState)(false);
|
|
67
71
|
|
|
68
72
|
const handleFocus = () => setIsFocused(true);
|
package/lib/Link/Link.js
CHANGED
|
@@ -19,15 +19,16 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
19
19
|
|
|
20
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
21
21
|
|
|
22
|
-
const Link = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
22
|
+
const Link = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
23
|
+
let {
|
|
24
|
+
href,
|
|
25
|
+
children,
|
|
26
|
+
accessibilityRole = 'link',
|
|
27
|
+
variant = {},
|
|
28
|
+
tokens,
|
|
29
|
+
dataSet,
|
|
30
|
+
...linkProps
|
|
31
|
+
} = _ref;
|
|
31
32
|
const getTokens = (0, _ThemeProvider.useThemeTokensCallback)('Link', tokens, variant);
|
|
32
33
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_LinkBase.default, {
|
|
33
34
|
href: href,
|
package/lib/Link/LinkBase.js
CHANGED
|
@@ -37,79 +37,95 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
37
37
|
|
|
38
38
|
const [selectProps, selectedSystemPropTypes] = (0, _props.selectSystemProps)([_props.a11yProps, _props.linkProps, _props.viewProps]);
|
|
39
39
|
|
|
40
|
-
const selectOuterBorderStyles =
|
|
41
|
-
|
|
42
|
-
outerBorderWidth,
|
|
43
|
-
outerBorderGap,
|
|
44
|
-
borderRadius,
|
|
45
|
-
outerBorderOutline
|
|
46
|
-
}) => // A view wrapper with a border on native messes up inline text alignment
|
|
47
|
-
// so for now make focus styles strictly web-only
|
|
48
|
-
_Platform.default.OS === 'web' ? {
|
|
49
|
-
// Allow theme to define outline, or, turn off outline and use border if rounded corners required
|
|
50
|
-
outline: outerBorderOutline,
|
|
51
|
-
...(0, _ThemeProvider.applyOuterBorder)({
|
|
40
|
+
const selectOuterBorderStyles = _ref => {
|
|
41
|
+
let {
|
|
52
42
|
outerBorderColor,
|
|
53
43
|
outerBorderWidth,
|
|
54
44
|
outerBorderGap,
|
|
55
|
-
borderRadius
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
//
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
}
|
|
45
|
+
borderRadius,
|
|
46
|
+
outerBorderOutline
|
|
47
|
+
} = _ref;
|
|
48
|
+
return (// A view wrapper with a border on native messes up inline text alignment
|
|
49
|
+
// so for now make focus styles strictly web-only
|
|
50
|
+
_Platform.default.OS === 'web' ? {
|
|
51
|
+
// Allow theme to define outline, or, turn off outline and use border if rounded corners required
|
|
52
|
+
outline: outerBorderOutline,
|
|
53
|
+
...(0, _ThemeProvider.applyOuterBorder)({
|
|
54
|
+
outerBorderColor,
|
|
55
|
+
outerBorderWidth,
|
|
56
|
+
outerBorderGap,
|
|
57
|
+
borderRadius
|
|
58
|
+
}),
|
|
59
|
+
// Stops focus ring stretching horizontally if parent has display: block
|
|
60
|
+
// width: fit-content isn't supported on Firefox; can't cascade props like CSS `width: fit-content; width: --moz-fit-content;`
|
|
61
|
+
display: 'inline-flex'
|
|
62
|
+
} : {}
|
|
63
|
+
);
|
|
64
|
+
};
|
|
73
65
|
|
|
74
|
-
const
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}
|
|
66
|
+
const selectTextStyles = _ref2 => {
|
|
67
|
+
let {
|
|
68
|
+
color
|
|
69
|
+
} = _ref2;
|
|
70
|
+
return {
|
|
71
|
+
color,
|
|
72
|
+
..._Platform.default.select({
|
|
73
|
+
web: {
|
|
74
|
+
// TODO: https://github.com/telus/universal-design-system/issues/487
|
|
75
|
+
transition: 'color 200ms'
|
|
76
|
+
}
|
|
77
|
+
})
|
|
78
|
+
};
|
|
79
|
+
};
|
|
85
80
|
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
});
|
|
81
|
+
const selectBlockStyles = _ref3 => {
|
|
82
|
+
let {
|
|
83
|
+
blockFontWeight,
|
|
84
|
+
blockFontSize,
|
|
85
|
+
blockLineHeight,
|
|
86
|
+
blockFontName
|
|
87
|
+
} = _ref3;
|
|
88
|
+
return (0, _ThemeProvider.applyTextStyles)({
|
|
89
|
+
fontWeight: blockFontWeight,
|
|
90
|
+
fontSize: blockFontSize,
|
|
91
|
+
lineHeight: blockLineHeight,
|
|
92
|
+
fontName: blockFontName
|
|
93
|
+
});
|
|
94
|
+
};
|
|
101
95
|
|
|
102
|
-
const
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
96
|
+
const selectDecorationStyles = _ref4 => {
|
|
97
|
+
let {
|
|
98
|
+
color,
|
|
99
|
+
textLine,
|
|
100
|
+
textLineStyle
|
|
101
|
+
} = _ref4;
|
|
102
|
+
return {
|
|
103
|
+
color,
|
|
104
|
+
textDecorationLine: textLine,
|
|
105
|
+
textDecorationStyle: textLineStyle,
|
|
106
|
+
..._Platform.default.select({
|
|
107
|
+
web: {
|
|
108
|
+
// TODO: https://github.com/telus/universal-design-system/issues/487
|
|
109
|
+
transition: 'color 200ms'
|
|
110
|
+
}
|
|
111
|
+
})
|
|
112
|
+
};
|
|
113
|
+
};
|
|
114
|
+
|
|
115
|
+
const selectIconTokens = _ref5 => {
|
|
116
|
+
let {
|
|
117
|
+
color,
|
|
118
|
+
iconSize,
|
|
119
|
+
iconTranslateX,
|
|
120
|
+
iconTranslateY
|
|
121
|
+
} = _ref5;
|
|
122
|
+
return {
|
|
123
|
+
color,
|
|
124
|
+
translateX: iconTranslateX,
|
|
125
|
+
translateY: iconTranslateY,
|
|
126
|
+
size: iconSize
|
|
127
|
+
};
|
|
128
|
+
};
|
|
113
129
|
/**
|
|
114
130
|
* Renders a pressable text link, with optional icon. This is rendered as a block element
|
|
115
131
|
* only (see 'Current Limitations'). On Web, renders an `<a>` anchor tag if `href` is provided.
|
|
@@ -134,17 +150,19 @@ const selectIconTokens = ({
|
|
|
134
150
|
*/
|
|
135
151
|
|
|
136
152
|
|
|
137
|
-
const LinkBase = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
153
|
+
const LinkBase = /*#__PURE__*/(0, _react.forwardRef)((_ref6, ref) => {
|
|
154
|
+
let {
|
|
155
|
+
href,
|
|
156
|
+
icon,
|
|
157
|
+
iconPosition = icon ? 'left' : undefined,
|
|
158
|
+
iconProps,
|
|
159
|
+
variant,
|
|
160
|
+
tokens = {},
|
|
161
|
+
children,
|
|
162
|
+
accessibilityRole = 'link',
|
|
163
|
+
...rawRest
|
|
164
|
+
} = _ref6;
|
|
165
|
+
|
|
148
166
|
const {
|
|
149
167
|
onPress,
|
|
150
168
|
...props
|
package/lib/Link/TextButton.js
CHANGED
|
@@ -26,14 +26,15 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
26
26
|
* Link but has the accessibility role of a `Button`. It should be used for actions that
|
|
27
27
|
* take place on the current page, or for navigation within an app.
|
|
28
28
|
*/
|
|
29
|
-
const TextButton = /*#__PURE__*/(0, _react.forwardRef)(({
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
29
|
+
const TextButton = /*#__PURE__*/(0, _react.forwardRef)((_ref, ref) => {
|
|
30
|
+
let {
|
|
31
|
+
onPress,
|
|
32
|
+
children,
|
|
33
|
+
variant,
|
|
34
|
+
tokens,
|
|
35
|
+
accessibilityRole = 'button',
|
|
36
|
+
...linkProps
|
|
37
|
+
} = _ref;
|
|
37
38
|
const getTokens = (0, _ThemeProvider.useThemeTokensCallback)('Link', tokens, variant);
|
|
38
39
|
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_LinkBase.default, {
|
|
39
40
|
onPress: onPress,
|