@telus-uds/components-base 1.7.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -2
- package/component-docs.json +264 -18
- package/lib/Button/ButtonGroup.js +118 -45
- package/lib/Checkbox/CheckboxGroup.js +3 -3
- package/lib/ExpandCollapse/Panel.js +2 -1
- package/lib/Fieldset/Fieldset.js +7 -0
- package/lib/InputLabel/InputLabel.js +8 -1
- package/lib/InputSupports/InputSupports.js +7 -0
- package/lib/Notification/Notification.js +1 -1
- package/lib/Radio/RadioGroup.js +12 -5
- package/lib/RadioCard/RadioCardGroup.js +7 -0
- package/lib/Search/Search.js +1 -1
- package/lib/Skeleton/Skeleton.js +48 -2
- package/lib/ToggleSwitch/ToggleSwitch.js +7 -0
- package/lib/ToggleSwitch/ToggleSwitchGroup.js +7 -0
- package/lib/Tooltip/Tooltip.js +1 -1
- package/lib/utils/animation/useVerticalExpandAnimation.js +26 -13
- package/lib/utils/props/inputSupportsProps.js +7 -0
- package/lib/utils/props/textInputProps.js +2 -1
- package/lib-module/Button/ButtonGroup.js +117 -45
- package/lib-module/Checkbox/CheckboxGroup.js +3 -3
- package/lib-module/ExpandCollapse/Panel.js +2 -1
- package/lib-module/Fieldset/Fieldset.js +7 -0
- package/lib-module/InputLabel/InputLabel.js +8 -1
- package/lib-module/InputSupports/InputSupports.js +7 -0
- package/lib-module/Notification/Notification.js +1 -1
- package/lib-module/Radio/RadioGroup.js +12 -5
- package/lib-module/RadioCard/RadioCardGroup.js +7 -0
- package/lib-module/Search/Search.js +1 -1
- package/lib-module/Skeleton/Skeleton.js +49 -3
- package/lib-module/ToggleSwitch/ToggleSwitch.js +7 -0
- package/lib-module/ToggleSwitch/ToggleSwitchGroup.js +7 -0
- package/lib-module/Tooltip/Tooltip.js +1 -1
- package/lib-module/utils/animation/useVerticalExpandAnimation.js +26 -14
- package/lib-module/utils/props/inputSupportsProps.js +7 -0
- package/lib-module/utils/props/textInputProps.js +2 -1
- package/package.json +11 -6
- package/src/Button/ButtonGroup.jsx +106 -41
- package/src/Checkbox/Checkbox.jsx +7 -4
- package/src/Checkbox/CheckboxGroup.jsx +3 -3
- package/src/ExpandCollapse/Panel.jsx +3 -1
- package/src/Fieldset/Fieldset.jsx +6 -0
- package/src/InputLabel/InputLabel.jsx +17 -2
- package/src/InputSupports/InputSupports.jsx +9 -1
- package/src/Notification/Notification.jsx +1 -1
- package/src/Radio/Radio.jsx +5 -1
- package/src/Radio/RadioGroup.jsx +11 -5
- package/src/RadioCard/RadioCard.jsx +5 -1
- package/src/RadioCard/RadioCardGroup.jsx +6 -0
- package/src/Search/Search.jsx +1 -1
- package/src/Skeleton/Skeleton.jsx +56 -3
- package/src/ToggleSwitch/ToggleSwitch.jsx +6 -0
- package/src/ToggleSwitch/ToggleSwitchGroup.jsx +6 -0
- package/src/Tooltip/Tooltip.jsx +1 -1
- package/src/utils/animation/useVerticalExpandAnimation.js +25 -12
- package/src/utils/props/inputSupportsProps.js +6 -1
- package/src/utils/props/textInputProps.js +2 -1
- package/src/utils/props/tokens.js +21 -19
- package/.storybook/main.js +0 -4
- package/.storybook/preview.js +0 -37
- package/.turbo/turbo-build.log +0 -8
- package/.turbo/turbo-lint.log +0 -13
- package/CHANGELOG.json +0 -235
- package/__fixtures__/Accessible.js +0 -35
- package/__fixtures__/Accessible.native.js +0 -35
- package/__fixtures__/Theme.jsx +0 -13
- package/__fixtures__/Viewport.jsx +0 -17
- package/__fixtures__/test-utils.js +0 -25
- package/__fixtures__/testTheme.js +0 -1830
- package/__tests__/A11yText/A11yText.test.jsx +0 -34
- package/__tests__/ActivityIndicator/ActivityIndicator.test.jsx +0 -68
- package/__tests__/ActivityIndicator/__snapshots__/ActivityIndicator.test.jsx.snap +0 -287
- package/__tests__/Box/Box.test.jsx +0 -111
- package/__tests__/Button/Button.test.jsx +0 -86
- package/__tests__/Button/ButtonBase.test.jsx +0 -82
- package/__tests__/Button/ButtonGroup.test.jsx +0 -347
- package/__tests__/Button/ButtonLink.test.jsx +0 -61
- package/__tests__/Card/Card.test.jsx +0 -63
- package/__tests__/Checkbox/Checkbox.test.jsx +0 -94
- package/__tests__/Checkbox/CheckboxGroup.test.jsx +0 -246
- package/__tests__/Divider/Divider.test.jsx +0 -91
- package/__tests__/ExpandCollapse/ExpandCollapse.test.jsx +0 -109
- package/__tests__/Feedback/Feedback.test.jsx +0 -42
- package/__tests__/FlexGrid/Col.test.jsx +0 -256
- package/__tests__/FlexGrid/FlexGrid.test.jsx +0 -136
- package/__tests__/FlexGrid/Row.test.jsx +0 -273
- package/__tests__/HorizontalScroll/HorizontalScroll.test.jsx +0 -165
- package/__tests__/Icon/Icon.test.jsx +0 -61
- package/__tests__/IconButton/IconButton.test.jsx +0 -52
- package/__tests__/InputSupports/InputSupports.test.jsx +0 -50
- package/__tests__/Link/Link.test.jsx +0 -63
- package/__tests__/Link/TextButton.test.jsx +0 -35
- package/__tests__/List/List.test.jsx +0 -60
- package/__tests__/Modal/Modal.test.jsx +0 -47
- package/__tests__/Notification/Notification.test.jsx +0 -20
- package/__tests__/Pagination/Pagination.test.jsx +0 -160
- package/__tests__/Progress/Progress.test.jsx +0 -79
- package/__tests__/Radio/Radio.test.jsx +0 -87
- package/__tests__/Radio/RadioGroup.test.jsx +0 -220
- package/__tests__/RadioCard/RadioCard.test.jsx +0 -87
- package/__tests__/RadioCard/RadioCardGroup.test.jsx +0 -246
- package/__tests__/Search/Search.test.jsx +0 -73
- package/__tests__/Select/Select.test.jsx +0 -94
- package/__tests__/SideNav/SideNav.test.jsx +0 -110
- package/__tests__/Skeleton/Skeleton.test.jsx +0 -61
- package/__tests__/Spacer/Spacer.test.jsx +0 -63
- package/__tests__/StackView/StackView.test.jsx +0 -216
- package/__tests__/StackView/StackWrap.test.jsx +0 -47
- package/__tests__/StackView/getStackedContent.test.jsx +0 -295
- package/__tests__/StepTracker/StepTracker.test.jsx +0 -94
- package/__tests__/Tabs/Tabs.test.jsx +0 -40
- package/__tests__/Tags/Tags.test.jsx +0 -327
- package/__tests__/TextInput/TextArea.test.jsx +0 -35
- package/__tests__/TextInput/TextInputBase.test.jsx +0 -125
- package/__tests__/ThemeProvider/ThemeProvider.test.jsx +0 -77
- package/__tests__/ThemeProvider/useThemeTokens.test.jsx +0 -514
- package/__tests__/ThemeProvider/utils/theme-tokens.test.js +0 -41
- package/__tests__/ToggleSwitch/ToggleSwitch.test.jsx +0 -82
- package/__tests__/ToggleSwitch/ToggleSwitchGroup.test.jsx +0 -192
- package/__tests__/Tooltip/Tooltip.test.jsx +0 -65
- package/__tests__/Tooltip/getTooltipPosition.test.js +0 -79
- package/__tests__/Typography/typography.test.jsx +0 -90
- package/__tests__/utils/children.test.jsx +0 -128
- package/__tests__/utils/containUniqueFields.test.js +0 -25
- package/__tests__/utils/input.test.js +0 -375
- package/__tests__/utils/props.test.js +0 -36
- package/__tests__/utils/semantics.test.jsx +0 -34
- package/__tests__/utils/useCopy.test.js +0 -42
- package/__tests__/utils/useResponsiveProp.test.jsx +0 -202
- package/__tests__/utils/useSpacingScale.test.jsx +0 -273
- package/__tests__/utils/useUniqueId.test.js +0 -31
- package/babel.config.js +0 -35
- package/generate-component-docs.js +0 -72
- package/jest.config.js +0 -32
- package/stories/A11yText/A11yText.stories.jsx +0 -71
- package/stories/ActivityIndicator/ActivityIndicator.stories.jsx +0 -22
- package/stories/Box/Box.stories.jsx +0 -143
- package/stories/Button/Button.stories.jsx +0 -72
- package/stories/Button/ButtonGroup.stories.jsx +0 -81
- package/stories/Button/ButtonLink.stories.jsx +0 -30
- package/stories/Card/Card.stories.jsx +0 -62
- package/stories/Checkbox/Checkbox.stories.jsx +0 -94
- package/stories/Divider/Divider.stories.jsx +0 -68
- package/stories/ExpandCollapse/ExpandCollapse.stories.jsx +0 -112
- package/stories/Feedback/Feedback.stories.jsx +0 -96
- package/stories/FlexGrid/01 FlexGrid.stories.jsx +0 -54
- package/stories/FlexGrid/02 Row.stories.jsx +0 -41
- package/stories/FlexGrid/03 Col.stories.jsx +0 -141
- package/stories/Icon/Icon.stories.jsx +0 -79
- package/stories/IconButton/IconButton.stories.jsx +0 -50
- package/stories/InputLabel/InputLabel.stories.jsx +0 -39
- package/stories/Link/ChevronLink.stories.jsx +0 -48
- package/stories/Link/Link.stories.jsx +0 -90
- package/stories/Link/TextButton.stories.jsx +0 -79
- package/stories/List/List.stories.jsx +0 -117
- package/stories/Modal/Modal.stories.jsx +0 -54
- package/stories/Notification/Notification.stories.jsx +0 -82
- package/stories/Pagination/Pagination.stories.jsx +0 -64
- package/stories/Progress/Progress.stories.jsx +0 -93
- package/stories/Radio/Radio.stories.jsx +0 -100
- package/stories/RadioCard/RadioCard.stories.jsx +0 -98
- package/stories/Search/Search.stories.jsx +0 -66
- package/stories/Select/Select.stories.jsx +0 -55
- package/stories/SideNav/SideNav.stories.jsx +0 -42
- package/stories/SideNav/SideNavItem.stories.jsx +0 -9
- package/stories/SideNav/SideNavItemsGroup.stories.jsx +0 -17
- package/stories/Skeleton/Skeleton.stories.jsx +0 -36
- package/stories/Spacer/Spacer.stories.jsx +0 -38
- package/stories/StackView/StackView.stories.jsx +0 -75
- package/stories/StackView/StackWrap.stories.jsx +0 -64
- package/stories/StepTracker/StepTracker.stories.jsx +0 -71
- package/stories/Tabs/Tabs.stories.jsx +0 -97
- package/stories/Tags/Tags.stories.jsx +0 -69
- package/stories/TextInput/TextArea.stories.jsx +0 -101
- package/stories/TextInput/TextInput.stories.jsx +0 -141
- package/stories/ToggleSwitch/ToggleSwitch.stories.jsx +0 -64
- package/stories/ToggleSwitch/ToggleSwitchGroup.stories.jsx +0 -81
- package/stories/Tooltip/Tooltip.stories.jsx +0 -81
- package/stories/TooltipButton/TooltipButton.stories.jsx +0 -11
- package/stories/Typography/Typography.stories.jsx +0 -49
- package/stories/platform-supports.jsx +0 -32
- package/stories/platform-supports.native.jsx +0 -3
- package/stories/supports.jsx +0 -236
|
@@ -85,6 +85,7 @@ const selectLabelTokens = ({
|
|
|
85
85
|
const ToggleSwitch = forwardRef(
|
|
86
86
|
(
|
|
87
87
|
{
|
|
88
|
+
copy = 'en',
|
|
88
89
|
value,
|
|
89
90
|
initialValue,
|
|
90
91
|
onChange,
|
|
@@ -119,6 +120,7 @@ const ToggleSwitch = forwardRef(
|
|
|
119
120
|
{Boolean(label) && (
|
|
120
121
|
<View style={[selectLabelStyles(themeTokens), staticStyles.containText]}>
|
|
121
122
|
<InputLabel
|
|
123
|
+
copy={copy}
|
|
122
124
|
forId={inputId}
|
|
123
125
|
label={label}
|
|
124
126
|
tokens={selectLabelTokens(themeTokens)}
|
|
@@ -170,6 +172,10 @@ ToggleSwitch.displayName = 'ToggleSwitch'
|
|
|
170
172
|
|
|
171
173
|
ToggleSwitch.propTypes = {
|
|
172
174
|
...selectedSystemPropTypes,
|
|
175
|
+
/**
|
|
176
|
+
* Whether the English or French copy will be used (e.g. for accessibility labels).
|
|
177
|
+
*/
|
|
178
|
+
copy: PropTypes.oneOf(['en', 'fr']),
|
|
173
179
|
tokens: getTokensPropType('ToggleSwitch'),
|
|
174
180
|
variant: variantProp.propType,
|
|
175
181
|
/**
|
|
@@ -28,6 +28,7 @@ const [selectItemProps, selectedItemPropTypes] = selectSystemProps([
|
|
|
28
28
|
const ToggleSwitchGroup = forwardRef(
|
|
29
29
|
(
|
|
30
30
|
{
|
|
31
|
+
copy = 'en',
|
|
31
32
|
variant,
|
|
32
33
|
tokens,
|
|
33
34
|
items = [],
|
|
@@ -105,6 +106,7 @@ const ToggleSwitchGroup = forwardRef(
|
|
|
105
106
|
|
|
106
107
|
return (
|
|
107
108
|
<ToggleSwitch
|
|
109
|
+
copy={copy}
|
|
108
110
|
id={id}
|
|
109
111
|
ref={itemRef}
|
|
110
112
|
key={id}
|
|
@@ -143,6 +145,10 @@ ToggleSwitchGroup.displayName = 'ToggleSwitchGroup'
|
|
|
143
145
|
|
|
144
146
|
ToggleSwitchGroup.propTypes = {
|
|
145
147
|
...selectedSystemPropTypes,
|
|
148
|
+
/**
|
|
149
|
+
* Whether the English or French copy will be used (e.g. for accessibility labels).
|
|
150
|
+
*/
|
|
151
|
+
copy: PropTypes.oneOf(['en', 'fr']),
|
|
146
152
|
tokens: getTokensPropType('ToggleSwitchGroup'),
|
|
147
153
|
variant: variantProp.propType,
|
|
148
154
|
/**
|
package/src/Tooltip/Tooltip.jsx
CHANGED
|
@@ -276,7 +276,7 @@ Tooltip.propTypes = {
|
|
|
276
276
|
*/
|
|
277
277
|
content: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),
|
|
278
278
|
/**
|
|
279
|
-
* Select
|
|
279
|
+
* Select English or French copy for the accessible label.
|
|
280
280
|
*/
|
|
281
281
|
copy: PropTypes.oneOf(['en', 'fr']),
|
|
282
282
|
/**
|
|
@@ -1,16 +1,30 @@
|
|
|
1
|
-
import { useEffect, useRef } from 'react'
|
|
1
|
+
import { useEffect, useRef, useState } from 'react'
|
|
2
2
|
import { Animated, Easing, Platform } from 'react-native'
|
|
3
3
|
|
|
4
4
|
// TODO: systematise animations
|
|
5
5
|
// https://github.com/telus/universal-design-system/issues/487
|
|
6
6
|
function useVerticalExpandAnimation({ containerHeight, isExpanded, tokens }) {
|
|
7
|
+
const [isAnimating, setIsAnimating] = useState(false)
|
|
8
|
+
|
|
7
9
|
const expandAnimatedValue = useRef(new Animated.Value(0)).current
|
|
10
|
+
const elementRef = useRef(null)
|
|
8
11
|
|
|
9
12
|
const { expandDuration, collapseDuration } = tokens
|
|
10
13
|
|
|
14
|
+
// Treat as animating from when expanded state changes, until animation completes
|
|
15
|
+
useEffect(() => setIsAnimating(true), [isExpanded])
|
|
16
|
+
|
|
11
17
|
useEffect(() => {
|
|
18
|
+
const onComplete = () => !isExpanded && setIsAnimating(false)
|
|
19
|
+
|
|
12
20
|
if (Platform.OS === 'web') {
|
|
13
|
-
return
|
|
21
|
+
if (!elementRef.current) return () => {}
|
|
22
|
+
|
|
23
|
+
// React Native Web does not pass `onTransitionEnd` through, must attach manually.
|
|
24
|
+
// https://github.com/necolas/react-native-web/pull/1713
|
|
25
|
+
const element = elementRef.current
|
|
26
|
+
element.addEventListener('transitionend', onComplete)
|
|
27
|
+
return () => element.removeEventListener('transitionend', onComplete)
|
|
14
28
|
}
|
|
15
29
|
|
|
16
30
|
const animationConfig = {
|
|
@@ -20,28 +34,27 @@ function useVerticalExpandAnimation({ containerHeight, isExpanded, tokens }) {
|
|
|
20
34
|
useNativeDriver: false
|
|
21
35
|
}
|
|
22
36
|
|
|
23
|
-
Animated.timing(expandAnimatedValue, animationConfig)
|
|
37
|
+
const animation = Animated.timing(expandAnimatedValue, animationConfig)
|
|
38
|
+
animation.start(onComplete)
|
|
39
|
+
return () => animation.stop()
|
|
24
40
|
}, [isExpanded, expandAnimatedValue, containerHeight, expandDuration, collapseDuration])
|
|
25
41
|
|
|
26
|
-
|
|
42
|
+
// Without `visibility: 'hidden', descendents are focusable on web even when collapsed
|
|
43
|
+
const containerStyles = !isExpanded && !isAnimating ? { visibility: 'hidden' } : {}
|
|
27
44
|
|
|
28
45
|
// don't visually collapse the container until we have it measured
|
|
29
46
|
if (containerHeight !== null) {
|
|
30
47
|
if (Platform.OS === 'web') {
|
|
31
48
|
const transitionDuration = isExpanded ? expandDuration : collapseDuration
|
|
49
|
+
containerStyles.transition = `height ${transitionDuration}ms ease-in-out`
|
|
32
50
|
|
|
33
|
-
containerStyles =
|
|
34
|
-
transition: `height ${transitionDuration}ms ease-in-out`,
|
|
35
|
-
height: isExpanded ? containerHeight : 0
|
|
36
|
-
}
|
|
51
|
+
containerStyles.height = isExpanded ? containerHeight : 0
|
|
37
52
|
} else {
|
|
38
|
-
containerStyles =
|
|
39
|
-
height: expandAnimatedValue
|
|
40
|
-
}
|
|
53
|
+
containerStyles.height = expandAnimatedValue
|
|
41
54
|
}
|
|
42
55
|
}
|
|
43
56
|
|
|
44
|
-
return containerStyles
|
|
57
|
+
return [containerStyles, elementRef]
|
|
45
58
|
}
|
|
46
59
|
|
|
47
60
|
export default useVerticalExpandAnimation
|
|
@@ -2,6 +2,10 @@ import PropTypes from 'prop-types'
|
|
|
2
2
|
|
|
3
3
|
export default {
|
|
4
4
|
types: {
|
|
5
|
+
/**
|
|
6
|
+
* Whether the English or French copy will be used (e.g. for accessibility labels).
|
|
7
|
+
*/
|
|
8
|
+
copy: PropTypes.oneOf(['en', 'fr']),
|
|
5
9
|
/**
|
|
6
10
|
* The input label.
|
|
7
11
|
*/
|
|
@@ -28,8 +32,9 @@ export default {
|
|
|
28
32
|
*/
|
|
29
33
|
validation: PropTypes.oneOf(['error', 'success'])
|
|
30
34
|
},
|
|
31
|
-
select: ({ label, hint, hintPosition, feedback, tooltip, validation }) => ({
|
|
35
|
+
select: ({ copy, label, hint, hintPosition, feedback, tooltip, validation }) => ({
|
|
32
36
|
supportsProps: {
|
|
37
|
+
copy,
|
|
33
38
|
label,
|
|
34
39
|
hint,
|
|
35
40
|
hintPosition,
|
|
@@ -86,33 +86,35 @@ export const selectTokens = (specifier, tokens, prefix) => {
|
|
|
86
86
|
* tokens: getTokensPropType('Component1', 'Component2')
|
|
87
87
|
* }
|
|
88
88
|
*/
|
|
89
|
-
export const getTokensPropType =
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
[propName]: PropTypes.oneOfType([PropTypes.object, PropTypes.func])
|
|
93
|
-
},
|
|
94
|
-
props,
|
|
95
|
-
propName,
|
|
96
|
-
componentName
|
|
97
|
-
)
|
|
98
|
-
|
|
99
|
-
if (typeof props[propName] !== 'function') {
|
|
89
|
+
export const getTokensPropType =
|
|
90
|
+
(...componentsNames) =>
|
|
91
|
+
(props, propName, componentName) => {
|
|
100
92
|
PropTypes.checkPropTypes(
|
|
101
93
|
{
|
|
102
|
-
[propName]: PropTypes.
|
|
103
|
-
Object.fromEntries(
|
|
104
|
-
componentsNames.flatMap((component) =>
|
|
105
|
-
getTokenNames(component).map((key) => [key, tokenValueType])
|
|
106
|
-
)
|
|
107
|
-
)
|
|
108
|
-
)
|
|
94
|
+
[propName]: PropTypes.oneOfType([PropTypes.object, PropTypes.func])
|
|
109
95
|
},
|
|
110
96
|
props,
|
|
111
97
|
propName,
|
|
112
98
|
componentName
|
|
113
99
|
)
|
|
100
|
+
|
|
101
|
+
if (typeof props[propName] !== 'function') {
|
|
102
|
+
PropTypes.checkPropTypes(
|
|
103
|
+
{
|
|
104
|
+
[propName]: PropTypes.exact(
|
|
105
|
+
Object.fromEntries(
|
|
106
|
+
componentsNames.flatMap((component) =>
|
|
107
|
+
getTokenNames(component).map((key) => [key, tokenValueType])
|
|
108
|
+
)
|
|
109
|
+
)
|
|
110
|
+
)
|
|
111
|
+
},
|
|
112
|
+
props,
|
|
113
|
+
propName,
|
|
114
|
+
componentName
|
|
115
|
+
)
|
|
116
|
+
}
|
|
114
117
|
}
|
|
115
|
-
}
|
|
116
118
|
|
|
117
119
|
/**
|
|
118
120
|
* Get a proptypes validator for a set of tokens that is not based on a component in the theme schema.
|
package/.storybook/main.js
DELETED
package/.storybook/preview.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
/* eslint-disable import/no-extraneous-dependencies */
|
|
2
|
-
import '@telus-uds/palette-allium/build/rn/fonts/fonts.css'
|
|
3
|
-
import '@telus-uds/palette-koodo/build/rn/fonts/fonts.css'
|
|
4
|
-
import '@telus-uds/palette-public-mobile/build/rn/fonts/fonts.css'
|
|
5
|
-
|
|
6
|
-
import alliumTheme from '@telus-uds/theme-allium'
|
|
7
|
-
import koodoTheme from '@telus-uds/theme-koodo'
|
|
8
|
-
import pmTheme from '@telus-uds/theme-public-mobile'
|
|
9
|
-
/* eslint-enable import/no-extraneous-dependencies */
|
|
10
|
-
|
|
11
|
-
import testTheme from '../__fixtures__/testTheme'
|
|
12
|
-
|
|
13
|
-
import { BaseProvider } from '../src'
|
|
14
|
-
|
|
15
|
-
const themes = [alliumTheme, koodoTheme, pmTheme, testTheme]
|
|
16
|
-
const themeLookup = themes.reduce((memo, t) => ({ ...memo, [t.metadata.name]: t }), {})
|
|
17
|
-
|
|
18
|
-
const baseDecorator = (Story, { globals }) => (
|
|
19
|
-
<BaseProvider key={globals.theme} defaultTheme={themeLookup[globals.theme]}>
|
|
20
|
-
<Story />
|
|
21
|
-
</BaseProvider>
|
|
22
|
-
)
|
|
23
|
-
|
|
24
|
-
export const decorators = [baseDecorator]
|
|
25
|
-
|
|
26
|
-
// globals persist in browser session store - not fun if you have multiple branded storybooks on the same domain/port
|
|
27
|
-
export const globalTypes = {
|
|
28
|
-
theme: {
|
|
29
|
-
name: 'Theme',
|
|
30
|
-
description: 'UDS theme for components',
|
|
31
|
-
defaultValue: alliumTheme.metadata.name,
|
|
32
|
-
toolbar: {
|
|
33
|
-
icon: 'beaker',
|
|
34
|
-
items: Object.keys(themeLookup)
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
}
|
package/.turbo/turbo-build.log
DELETED
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
[35m@telus-uds/components-base:build: [0mcache hit, replaying output [2m1881992cce187510[0m
|
|
2
|
-
[35m@telus-uds/components-base:build: [0m[2K[1G[2m$ yarn build:code && yarn build:docs[22m
|
|
3
|
-
[35m@telus-uds/components-base:build: [0m[2K[1G[2m$ yarn build:main && yarn build:module[22m
|
|
4
|
-
[35m@telus-uds/components-base:build: [0m[2K[1G[2m$ babel src -d lib[22m
|
|
5
|
-
[35m@telus-uds/components-base:build: [0mSuccessfully compiled 219 files with Babel (6264ms).
|
|
6
|
-
[35m@telus-uds/components-base:build: [0m[2K[1G[2m$ babel src -d lib-module --env-name module[22m
|
|
7
|
-
[35m@telus-uds/components-base:build: [0mSuccessfully compiled 219 files with Babel (4314ms).
|
|
8
|
-
[35m@telus-uds/components-base:build: [0m[2K[1G[2m$ babel-node --plugins=@nearform/babel-plugin-react-docgen generate-component-docs.js[22m
|
package/.turbo/turbo-lint.log
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
[33m@telus-uds/components-base:lint: [0mcache hit, replaying output [2mb72941df2cdfe4ea[0m
|
|
2
|
-
[33m@telus-uds/components-base:lint: [0m[2K[1G[2m$ yarn --cwd ../.. lint:path --color packages/components-base[22m
|
|
3
|
-
[33m@telus-uds/components-base:lint: [0m[2K[1G[2m$ eslint --ignore-path .gitignore --ext .js,.jsx,.mjs,.cjs --color packages/components-base[22m
|
|
4
|
-
[33m@telus-uds/components-base:lint: [0m[0m[0m
|
|
5
|
-
[33m@telus-uds/components-base:lint: [0m[0m[4m/home/runner/work/universal-design-system/universal-design-system/packages/components-base/__tests__/FlexGrid/Col.test.jsx[24m[0m
|
|
6
|
-
[33m@telus-uds/components-base:lint: [0m[0m [2m51:71[22m [33mwarning[39m Expect must have a corresponding matcher call [2mjest/valid-expect[22m[0m
|
|
7
|
-
[33m@telus-uds/components-base:lint: [0m[0m [2m106:71[22m [33mwarning[39m Expect must have a corresponding matcher call [2mjest/valid-expect[22m[0m
|
|
8
|
-
[33m@telus-uds/components-base:lint: [0m[0m [2m155:63[22m [33mwarning[39m Expect must have a corresponding matcher call [2mjest/valid-expect[22m[0m
|
|
9
|
-
[33m@telus-uds/components-base:lint: [0m[0m [2m200:71[22m [33mwarning[39m Expect must have a corresponding matcher call [2mjest/valid-expect[22m[0m
|
|
10
|
-
[33m@telus-uds/components-base:lint: [0m[0m [2m248:71[22m [33mwarning[39m Expect must have a corresponding matcher call [2mjest/valid-expect[22m[0m
|
|
11
|
-
[33m@telus-uds/components-base:lint: [0m[0m[0m
|
|
12
|
-
[33m@telus-uds/components-base:lint: [0m[0m[33m[1m✖ 5 problems (0 errors, 5 warnings)[22m[39m[0m
|
|
13
|
-
[33m@telus-uds/components-base:lint: [0m[0m[33m[1m[22m[39m[0m
|
package/CHANGELOG.json
DELETED
|
@@ -1,235 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@telus-uds/components-base",
|
|
3
|
-
"entries": [
|
|
4
|
-
{
|
|
5
|
-
"date": "Tue, 17 May 2022 15:04:41 GMT",
|
|
6
|
-
"tag": "@telus-uds/components-base_v1.7.0",
|
|
7
|
-
"version": "1.7.0",
|
|
8
|
-
"comments": {
|
|
9
|
-
"patch": [
|
|
10
|
-
{
|
|
11
|
-
"author": "alan.slater@nearform.com",
|
|
12
|
-
"package": "@telus-uds/components-base",
|
|
13
|
-
"commit": "70105ac8b165247e3cd29a78e3247f7a475b287a",
|
|
14
|
-
"comment": "align List bullets like icons"
|
|
15
|
-
},
|
|
16
|
-
{
|
|
17
|
-
"author": "alan.slater@nearform.com",
|
|
18
|
-
"package": "@telus-uds/components-base",
|
|
19
|
-
"commit": "70105ac8b165247e3cd29a78e3247f7a475b287a",
|
|
20
|
-
"comment": "Add text props to Typography"
|
|
21
|
-
},
|
|
22
|
-
{
|
|
23
|
-
"author": "alan.slater@nearform.com",
|
|
24
|
-
"package": "@telus-uds/components-base",
|
|
25
|
-
"commit": "70105ac8b165247e3cd29a78e3247f7a475b287a",
|
|
26
|
-
"comment": "fix(components): support TextInput props"
|
|
27
|
-
}
|
|
28
|
-
],
|
|
29
|
-
"minor": [
|
|
30
|
-
{
|
|
31
|
-
"author": "alan.slater@nearform.com",
|
|
32
|
-
"package": "@telus-uds/components-base",
|
|
33
|
-
"commit": "70105ac8b165247e3cd29a78e3247f7a475b287a",
|
|
34
|
-
"comment": "Allow Search component to be controlled"
|
|
35
|
-
}
|
|
36
|
-
]
|
|
37
|
-
}
|
|
38
|
-
},
|
|
39
|
-
{
|
|
40
|
-
"date": "Fri, 06 May 2022 15:31:28 GMT",
|
|
41
|
-
"tag": "@telus-uds/components-base_v1.6.1",
|
|
42
|
-
"version": "1.6.1",
|
|
43
|
-
"comments": {
|
|
44
|
-
"patch": [
|
|
45
|
-
{
|
|
46
|
-
"author": "alan.slater@nearform.com",
|
|
47
|
-
"package": "@telus-uds/components-base",
|
|
48
|
-
"commit": "d0967886e4328b789fd5490f068c74fa24379b87",
|
|
49
|
-
"comment": "don't throw if no href/onPress in link/button"
|
|
50
|
-
},
|
|
51
|
-
{
|
|
52
|
-
"author": "ruslan.bredikhin@nearform.com",
|
|
53
|
-
"package": "@telus-uds/components-base",
|
|
54
|
-
"commit": "d0967886e4328b789fd5490f068c74fa24379b87",
|
|
55
|
-
"comment": "fix: allow parsing tokens inherited from multiple components"
|
|
56
|
-
}
|
|
57
|
-
]
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
{
|
|
61
|
-
"date": "Thu, 28 Apr 2022 15:40:29 GMT",
|
|
62
|
-
"tag": "@telus-uds/components-base_v1.6.0",
|
|
63
|
-
"version": "1.6.0",
|
|
64
|
-
"comments": {
|
|
65
|
-
"minor": [
|
|
66
|
-
{
|
|
67
|
-
"author": "shahzaibkhalidmalik@outlook.com",
|
|
68
|
-
"package": "@telus-uds/components-base",
|
|
69
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
70
|
-
"comment": "Add `pattern` prop for `TextInput` (web)"
|
|
71
|
-
},
|
|
72
|
-
{
|
|
73
|
-
"author": "ruslan.bredikhin@nearform.com",
|
|
74
|
-
"package": "@telus-uds/components-base",
|
|
75
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
76
|
-
"comment": "feat: add unique ids validation to the group components"
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
"author": "eugene@michasiw.com",
|
|
80
|
-
"package": "@telus-uds/components-base",
|
|
81
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
82
|
-
"comment": "use IconButton for modal close"
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
"author": "alan.slater@nearform.com",
|
|
86
|
-
"package": "@telus-uds/components-base",
|
|
87
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
88
|
-
"comment": "Add flex prop to FlexGrid.Col"
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
"author": "ruslan.bredikhin@nearform.com",
|
|
92
|
-
"package": "@telus-uds/components-base",
|
|
93
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
94
|
-
"comment": "feat: add handler props whitelisting to the input components"
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
"author": "beachball",
|
|
98
|
-
"package": "@telus-uds/components-base",
|
|
99
|
-
"comment": "Bump @telus-uds/system-theme-tokens to v1.5.0",
|
|
100
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5"
|
|
101
|
-
}
|
|
102
|
-
],
|
|
103
|
-
"patch": [
|
|
104
|
-
{
|
|
105
|
-
"author": "alan.slater@nearform.com",
|
|
106
|
-
"package": "@telus-uds/components-base",
|
|
107
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
108
|
-
"comment": "V-align Checkbox/Radio with label first line"
|
|
109
|
-
},
|
|
110
|
-
{
|
|
111
|
-
"author": "shahzaibkhalidmalik@outlook.com",
|
|
112
|
-
"package": "@telus-uds/components-base",
|
|
113
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
114
|
-
"comment": "Fix ExpandCollapse unable to response to window resize"
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
"author": "ruslan.bredikhin@nearform.com",
|
|
118
|
-
"package": "@telus-uds/components-base",
|
|
119
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
120
|
-
"comment": "fix: move link underline to the inline pressable becoming the anchor tag on web"
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
"author": "shahzaibkhalidmalik@outlook.com",
|
|
124
|
-
"package": "@telus-uds/components-base",
|
|
125
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
126
|
-
"comment": "Fix scenario where `reverse` props might not work when elements wrap"
|
|
127
|
-
},
|
|
128
|
-
{
|
|
129
|
-
"author": "alan.slater@nearform.com",
|
|
130
|
-
"package": "@telus-uds/components-base",
|
|
131
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
132
|
-
"comment": "Fix input label text wrap"
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
"author": "alan.slater@nearform.com",
|
|
136
|
-
"package": "@telus-uds/components-base",
|
|
137
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
138
|
-
"comment": "fix Select validation icons"
|
|
139
|
-
}
|
|
140
|
-
],
|
|
141
|
-
"none": [
|
|
142
|
-
{
|
|
143
|
-
"author": "simon.lawrence@nearform.com",
|
|
144
|
-
"package": "@telus-uds/components-base",
|
|
145
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
146
|
-
"comment": "update babel plugin used for docs generation to maintained fork"
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
"author": "cody.zuschlag@nearform.com",
|
|
150
|
-
"package": "@telus-uds/components-base",
|
|
151
|
-
"commit": "3db648cd2964f06f91e5d34140cb9f44ede740d5",
|
|
152
|
-
"comment": "improve linting"
|
|
153
|
-
}
|
|
154
|
-
]
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
"date": "Thu, 07 Apr 2022 20:33:56 GMT",
|
|
159
|
-
"tag": "@telus-uds/components-base_v1.5.0",
|
|
160
|
-
"version": "1.5.0",
|
|
161
|
-
"comments": {
|
|
162
|
-
"minor": [
|
|
163
|
-
{
|
|
164
|
-
"author": "ruslan.bredikhin@nearform.com",
|
|
165
|
-
"package": "@telus-uds/components-base",
|
|
166
|
-
"commit": "63472330f9144ba99c34c7524dcc2d2f4f716e69",
|
|
167
|
-
"comment": "extend HorizontalScrollButton via IconButton"
|
|
168
|
-
},
|
|
169
|
-
{
|
|
170
|
-
"author": "beachball",
|
|
171
|
-
"package": "@telus-uds/components-base",
|
|
172
|
-
"comment": "Bump @telus-uds/system-theme-tokens to v1.4.0",
|
|
173
|
-
"commit": "63472330f9144ba99c34c7524dcc2d2f4f716e69"
|
|
174
|
-
}
|
|
175
|
-
]
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
"date": "Fri, 01 Apr 2022 14:15:21 GMT",
|
|
180
|
-
"tag": "@telus-uds/components-base_v1.4.0",
|
|
181
|
-
"version": "1.4.0",
|
|
182
|
-
"comments": {
|
|
183
|
-
"patch": [
|
|
184
|
-
{
|
|
185
|
-
"author": "simon.lawrence@nearform.com",
|
|
186
|
-
"package": "@telus-uds/components-base",
|
|
187
|
-
"commit": "05e43b4642997ec461094b5d8a439bfef1abaab8",
|
|
188
|
-
"comment": "Refactor children wrapping in the notifications"
|
|
189
|
-
}
|
|
190
|
-
],
|
|
191
|
-
"minor": [
|
|
192
|
-
{
|
|
193
|
-
"author": "beachball",
|
|
194
|
-
"package": "@telus-uds/components-base",
|
|
195
|
-
"comment": "Bump @telus-uds/system-theme-tokens to v1.3.0",
|
|
196
|
-
"commit": "05e43b4642997ec461094b5d8a439bfef1abaab8"
|
|
197
|
-
}
|
|
198
|
-
]
|
|
199
|
-
}
|
|
200
|
-
},
|
|
201
|
-
{
|
|
202
|
-
"date": "Wed, 30 Mar 2022 09:49:18 GMT",
|
|
203
|
-
"tag": "@telus-uds/components-base_v1.3.1",
|
|
204
|
-
"version": "1.3.1",
|
|
205
|
-
"comments": {
|
|
206
|
-
"patch": [
|
|
207
|
-
{
|
|
208
|
-
"author": "cody.zuschlag@nearform.com",
|
|
209
|
-
"package": "@telus-uds/components-base",
|
|
210
|
-
"commit": "cdbb7a9be4572e4a3650b917a80bb6f0f57a471e",
|
|
211
|
-
"comment": "post monorepo reorganization release"
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
"author": "beachball",
|
|
215
|
-
"package": "@telus-uds/components-base",
|
|
216
|
-
"comment": "Bump @telus-uds/system-constants to v1.0.2",
|
|
217
|
-
"commit": "cdbb7a9be4572e4a3650b917a80bb6f0f57a471e"
|
|
218
|
-
},
|
|
219
|
-
{
|
|
220
|
-
"author": "beachball",
|
|
221
|
-
"package": "@telus-uds/components-base",
|
|
222
|
-
"comment": "Bump @telus-uds/system-theme-tokens to v1.2.2",
|
|
223
|
-
"commit": "cdbb7a9be4572e4a3650b917a80bb6f0f57a471e"
|
|
224
|
-
},
|
|
225
|
-
{
|
|
226
|
-
"author": "beachball",
|
|
227
|
-
"package": "@telus-uds/components-base",
|
|
228
|
-
"comment": "Bump @telus-uds/browserslist-config to v1.0.1",
|
|
229
|
-
"commit": "cdbb7a9be4572e4a3650b917a80bb6f0f57a471e"
|
|
230
|
-
}
|
|
231
|
-
]
|
|
232
|
-
}
|
|
233
|
-
}
|
|
234
|
-
]
|
|
235
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// this is a copy of an autogenerated file
|
|
2
|
-
/* eslint-disable spaced-comment */
|
|
3
|
-
/* eslint-disable react/prop-types */
|
|
4
|
-
|
|
5
|
-
import * as React from 'react'
|
|
6
|
-
|
|
7
|
-
const Accessible = ({ title, titleId, size, color }) =>
|
|
8
|
-
/*#__PURE__*/ React.createElement(
|
|
9
|
-
'svg',
|
|
10
|
-
{
|
|
11
|
-
viewBox: '0 0 24 24',
|
|
12
|
-
height: size,
|
|
13
|
-
width: size,
|
|
14
|
-
fill: color,
|
|
15
|
-
role: title ? 'img' : undefined,
|
|
16
|
-
'aria-hidden': !title,
|
|
17
|
-
'aria-labelledby': titleId
|
|
18
|
-
},
|
|
19
|
-
title
|
|
20
|
-
? /*#__PURE__*/ React.createElement(
|
|
21
|
-
'title',
|
|
22
|
-
{
|
|
23
|
-
id: titleId
|
|
24
|
-
},
|
|
25
|
-
title
|
|
26
|
-
)
|
|
27
|
-
: null,
|
|
28
|
-
/*#__PURE__*/ React.createElement('path', {
|
|
29
|
-
d:
|
|
30
|
-
'M4.231 12.257l.662.662a5.87 5.87 0 00-.982 3.235c0 1.585.618 3.078 1.74 4.2a5.903 5.903 0 004.2 1.739 5.839 5.839 0 002.991-.831l.242-.151.647.645c-1.167.81-2.517 1.244-3.88 1.244a6.83 6.83 0 01-4.845-2.003A6.805 6.805 0 013 16.154c0-1.315.378-2.568 1.067-3.65l.165-.247zm5.81-9.99c.178 0 .358.037.527.112l.175.093c.575.334 5.897 3.426 5.907 3.433.307.192.507.492.579.822.124.433.054.913-.22 1.3l-.1.125-2.68 2.738c.106.088.21.178.313.273l.166.162.014.016 5.136-.603.07-.002a1.3 1.3 0 011.3 1.265l-.004.14-.39 6.71a1.46 1.46 0 01-1.455 1.369l-.094-.003a1.456 1.456 0 01-1.362-1.41l.003-.141.337-4.465a.09.09 0 00-.09-.103l-1.71.3a6.86 6.86 0 01-.809 5.367l-.165.254-.66-.66a5.882 5.882 0 00.96-3.206 5.903 5.903 0 00-1.738-4.2 5.904 5.904 0 00-4.201-1.74c-1.06 0-2.073.291-2.966.813l-.24.148-.648-.648a6.827 6.827 0 012.94-1.156l.312-.035 2.507-2.778-1.5-.876L8.33 7.31a1.47 1.47 0 01-2.081.002c-.542-.542-.554-1.423-.078-2.008l.102-.112 2.902-2.596c.244-.217.552-.33.865-.33zm10.24 10.386c.096-.848-.406-.964-.75-.955l-.061.003-3.975.467c.223.338.41.701.576 1.073l.12.28 1.75-.308.077-.022.156-.004c.288 0 .562.125.754.34.15.174.236.392.246.618l-.003.136-.337 4.454a.541.541 0 00.136.389.536.536 0 00.287.171l.086.013c.289 0 .509-.18.567-.422l.015-.093.357-6.14zm-10.24-9.475a.387.387 0 00-.202.056l-.057.043L6.905 5.85c-.215.23-.222.607-.012.817a.558.558 0 00.725.057l.068-.058.027-.027 2.444-2.07 3.024 1.766-2.663 2.952a6.958 6.958 0 012.683.85l.31.183 2.727-2.784a.602.602 0 00.135-.46l-.02-.1-.013-.053a.385.385 0 00-.165-.241l-5.94-3.451a.38.38 0 00-.194-.053zM17.743 1c1.16 0 2.106.945 2.106 2.106a2.11 2.11 0 01-2.106 2.107 2.11 2.11 0 01-2.106-2.107c0-1.161.945-2.106 2.106-2.106zm0 .91a1.196 1.196 0 000 2.392 1.196 1.196 0 000-2.391z',
|
|
31
|
-
fillRule: 'evenodd'
|
|
32
|
-
})
|
|
33
|
-
)
|
|
34
|
-
|
|
35
|
-
export default Accessible
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
// this is a copy of an autogenerated file
|
|
2
|
-
/* eslint-disable spaced-comment */
|
|
3
|
-
/* eslint-disable import/no-extraneous-dependencies */
|
|
4
|
-
/* eslint-disable react/prop-types */
|
|
5
|
-
|
|
6
|
-
import * as React from 'react'
|
|
7
|
-
import Svg, { Path } from 'react-native-svg'
|
|
8
|
-
|
|
9
|
-
const Accessible = ({ title, titleId, size, color }) =>
|
|
10
|
-
/*#__PURE__*/ React.createElement(
|
|
11
|
-
Svg,
|
|
12
|
-
{
|
|
13
|
-
viewBox: '0 0 24 24',
|
|
14
|
-
height: size,
|
|
15
|
-
width: size,
|
|
16
|
-
fill: color,
|
|
17
|
-
'aria-labelledby': titleId
|
|
18
|
-
},
|
|
19
|
-
title
|
|
20
|
-
? /*#__PURE__*/ React.createElement(
|
|
21
|
-
'title',
|
|
22
|
-
{
|
|
23
|
-
id: titleId
|
|
24
|
-
},
|
|
25
|
-
title
|
|
26
|
-
)
|
|
27
|
-
: null,
|
|
28
|
-
/*#__PURE__*/ React.createElement(Path, {
|
|
29
|
-
d:
|
|
30
|
-
'M4.231 12.257l.662.662a5.87 5.87 0 00-.982 3.235c0 1.585.618 3.078 1.74 4.2a5.903 5.903 0 004.2 1.739 5.839 5.839 0 002.991-.831l.242-.151.647.645c-1.167.81-2.517 1.244-3.88 1.244a6.83 6.83 0 01-4.845-2.003A6.805 6.805 0 013 16.154c0-1.315.378-2.568 1.067-3.65l.165-.247zm5.81-9.99c.178 0 .358.037.527.112l.175.093c.575.334 5.897 3.426 5.907 3.433.307.192.507.492.579.822.124.433.054.913-.22 1.3l-.1.125-2.68 2.738c.106.088.21.178.313.273l.166.162.014.016 5.136-.603.07-.002a1.3 1.3 0 011.3 1.265l-.004.14-.39 6.71a1.46 1.46 0 01-1.455 1.369l-.094-.003a1.456 1.456 0 01-1.362-1.41l.003-.141.337-4.465a.09.09 0 00-.09-.103l-1.71.3a6.86 6.86 0 01-.809 5.367l-.165.254-.66-.66a5.882 5.882 0 00.96-3.206 5.903 5.903 0 00-1.738-4.2 5.904 5.904 0 00-4.201-1.74c-1.06 0-2.073.291-2.966.813l-.24.148-.648-.648a6.827 6.827 0 012.94-1.156l.312-.035 2.507-2.778-1.5-.876L8.33 7.31a1.47 1.47 0 01-2.081.002c-.542-.542-.554-1.423-.078-2.008l.102-.112 2.902-2.596c.244-.217.552-.33.865-.33zm10.24 10.386c.096-.848-.406-.964-.75-.955l-.061.003-3.975.467c.223.338.41.701.576 1.073l.12.28 1.75-.308.077-.022.156-.004c.288 0 .562.125.754.34.15.174.236.392.246.618l-.003.136-.337 4.454a.541.541 0 00.136.389.536.536 0 00.287.171l.086.013c.289 0 .509-.18.567-.422l.015-.093.357-6.14zm-10.24-9.475a.387.387 0 00-.202.056l-.057.043L6.905 5.85c-.215.23-.222.607-.012.817a.558.558 0 00.725.057l.068-.058.027-.027 2.444-2.07 3.024 1.766-2.663 2.952a6.958 6.958 0 012.683.85l.31.183 2.727-2.784a.602.602 0 00.135-.46l-.02-.1-.013-.053a.385.385 0 00-.165-.241l-5.94-3.451a.38.38 0 00-.194-.053zM17.743 1c1.16 0 2.106.945 2.106 2.106a2.11 2.11 0 01-2.106 2.107 2.11 2.11 0 01-2.106-2.107c0-1.161.945-2.106 2.106-2.106zm0 .91a1.196 1.196 0 000 2.392 1.196 1.196 0 000-2.391z',
|
|
31
|
-
fillRule: 'evenodd'
|
|
32
|
-
})
|
|
33
|
-
)
|
|
34
|
-
|
|
35
|
-
export default Accessible
|
package/__fixtures__/Theme.jsx
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
import PropTypes from 'prop-types'
|
|
3
|
-
|
|
4
|
-
import testTheme from './testTheme'
|
|
5
|
-
import ThemeProvider from '../src/ThemeProvider'
|
|
6
|
-
|
|
7
|
-
const Theme = ({ children }) => <ThemeProvider defaultTheme={testTheme}>{children}</ThemeProvider>
|
|
8
|
-
|
|
9
|
-
Theme.propTypes = {
|
|
10
|
-
children: PropTypes.node.isRequired
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export default Theme
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import React from 'react'
|
|
2
|
-
import PropTypes from 'prop-types'
|
|
3
|
-
import { viewports } from '@telus-uds/system-constants'
|
|
4
|
-
|
|
5
|
-
import { ViewportContext } from '../src/ViewportProvider'
|
|
6
|
-
|
|
7
|
-
// Mock dimensions provider allowing tests to explicitly set their dimensions viewport size
|
|
8
|
-
const Viewport = ({ viewport = viewports.xs, children }) => (
|
|
9
|
-
<ViewportContext.Provider value={viewport}>{children}</ViewportContext.Provider>
|
|
10
|
-
)
|
|
11
|
-
|
|
12
|
-
Viewport.propTypes = {
|
|
13
|
-
viewport: PropTypes.oneOf(viewports.keys),
|
|
14
|
-
children: PropTypes.node.isRequired
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
export default Viewport
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
// eslint-disable-next-line import/no-extraneous-dependencies
|
|
2
|
-
import { act } from '@testing-library/react-native'
|
|
3
|
-
|
|
4
|
-
// React Native Testing Library does not create or pass event objects on fireEvent,
|
|
5
|
-
// but fireEvent takes additional properties that are passed to the event handlers,
|
|
6
|
-
// where we can create and pass a mock event object to the handler.
|
|
7
|
-
// WARNING: these are passed even if the real RN prop doesn't pass events (e.g onChangeText).
|
|
8
|
-
// https://github.com/callstack/react-native-testing-library/issues/714
|
|
9
|
-
export const getMockEvent = (nativeEvent, eventProps = {}) => ({ nativeEvent, ...eventProps })
|
|
10
|
-
|
|
11
|
-
// React Native Testing Library does not support TextInput's onChange.
|
|
12
|
-
// fireEvent.changeText incorrectly calls onChangeText handlers only.
|
|
13
|
-
// https://github.com/callstack/react-native-testing-library/issues/428
|
|
14
|
-
export const fireChange = (input, text) => {
|
|
15
|
-
if (!input?.props?.onChange) {
|
|
16
|
-
throw new Error(
|
|
17
|
-
`Called fireChange on ${
|
|
18
|
-
!input
|
|
19
|
-
? input
|
|
20
|
-
: `${typeof input} without ${!input.props ? 'props' : 'onChange handler function'}`
|
|
21
|
-
}`
|
|
22
|
-
)
|
|
23
|
-
}
|
|
24
|
-
act(() => input.props.onChange(getMockEvent({ text })))
|
|
25
|
-
}
|