@telus-uds/components-web 1.9.0 → 1.11.0
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 +40 -2
- package/lib/Breadcrumbs/Breadcrumbs.js +8 -3
- package/lib/Breadcrumbs/Item/Item.js +31 -6
- package/lib/Callout/Callout.js +24 -3
- package/lib/Disclaimer/Disclaimer.js +72 -0
- package/lib/Disclaimer/index.js +15 -0
- package/lib/Footnote/Footnote.js +70 -28
- package/lib/Footnote/FootnoteLink.js +11 -13
- package/lib/NavigationBar/NavigationBar.js +231 -0
- package/lib/NavigationBar/NavigationItem.js +111 -0
- package/lib/NavigationBar/NavigationSubMenu.js +179 -0
- package/lib/NavigationBar/collapseItems.js +51 -0
- package/lib/NavigationBar/index.js +13 -0
- package/lib/PriceLockup/PriceLockup.js +40 -17
- package/lib/PriceLockup/tokens.js +49 -116
- package/lib/Progress/ProgressBar.js +100 -0
- package/lib/Progress/index.js +16 -0
- package/lib/Ribbon/Ribbon.js +53 -32
- package/lib/Spinner/Spinner.js +18 -14
- package/lib/Table/Cell.js +15 -1
- package/lib/Toast/Toast.js +15 -8
- package/lib/VideoPicker/VideoPicker.js +177 -0
- package/lib/VideoPicker/VideoPickerPlayer.js +54 -0
- package/lib/VideoPicker/VideoPickerThumbnail.js +201 -0
- package/lib/VideoPicker/VideoSlider.js +100 -0
- package/lib/VideoPicker/index.js +13 -0
- package/lib/VideoPicker/videoPropType.js +25 -0
- package/lib/index.js +37 -1
- package/lib-module/Breadcrumbs/Breadcrumbs.js +8 -3
- package/lib-module/Breadcrumbs/Item/Item.js +32 -7
- package/lib-module/Callout/Callout.js +24 -3
- package/lib-module/Disclaimer/Disclaimer.js +54 -0
- package/lib-module/Disclaimer/index.js +1 -0
- package/lib-module/Footnote/Footnote.js +68 -27
- package/lib-module/Footnote/FootnoteLink.js +12 -14
- package/lib-module/NavigationBar/NavigationBar.js +207 -0
- package/lib-module/NavigationBar/NavigationItem.js +87 -0
- package/lib-module/NavigationBar/NavigationSubMenu.js +161 -0
- package/lib-module/NavigationBar/collapseItems.js +43 -0
- package/lib-module/NavigationBar/index.js +2 -0
- package/lib-module/PriceLockup/PriceLockup.js +42 -19
- package/lib-module/PriceLockup/tokens.js +54 -119
- package/lib-module/Progress/ProgressBar.js +83 -0
- package/lib-module/Progress/index.js +4 -0
- package/lib-module/Ribbon/Ribbon.js +53 -32
- package/lib-module/Spinner/Spinner.js +17 -14
- package/lib-module/Table/Cell.js +15 -1
- package/lib-module/Toast/Toast.js +15 -8
- package/lib-module/VideoPicker/VideoPicker.js +151 -0
- package/lib-module/VideoPicker/VideoPickerPlayer.js +41 -0
- package/lib-module/VideoPicker/VideoPickerThumbnail.js +180 -0
- package/lib-module/VideoPicker/VideoSlider.js +83 -0
- package/lib-module/VideoPicker/index.js +2 -0
- package/lib-module/VideoPicker/videoPropType.js +9 -0
- package/lib-module/index.js +4 -0
- package/package.json +3 -3
- package/src/Breadcrumbs/Breadcrumbs.jsx +4 -3
- package/src/Breadcrumbs/Item/Item.jsx +18 -4
- package/src/Callout/Callout.jsx +27 -3
- package/src/Disclaimer/Disclaimer.jsx +39 -0
- package/src/Disclaimer/index.js +1 -0
- package/src/Footnote/Footnote.jsx +76 -26
- package/src/Footnote/FootnoteLink.jsx +28 -18
- package/src/NavigationBar/NavigationBar.jsx +217 -0
- package/src/NavigationBar/NavigationItem.jsx +83 -0
- package/src/NavigationBar/NavigationSubMenu.jsx +121 -0
- package/src/NavigationBar/collapseItems.js +29 -0
- package/src/NavigationBar/index.js +3 -0
- package/src/PriceLockup/PriceLockup.jsx +47 -21
- package/src/PriceLockup/tokens.js +34 -54
- package/src/Progress/ProgressBar.jsx +67 -0
- package/src/Progress/index.js +6 -0
- package/src/Ribbon/Ribbon.jsx +21 -9
- package/src/Spinner/Spinner.jsx +20 -17
- package/src/Table/Cell.jsx +22 -5
- package/src/Toast/Toast.jsx +12 -5
- package/src/VideoPicker/VideoPicker.jsx +144 -0
- package/src/VideoPicker/VideoPickerPlayer.jsx +21 -0
- package/src/VideoPicker/VideoPickerThumbnail.jsx +182 -0
- package/src/VideoPicker/VideoSlider.jsx +85 -0
- package/src/VideoPicker/index.js +3 -0
- package/src/VideoPicker/videoPropType.js +12 -0
- package/src/index.js +4 -0
|
@@ -1,120 +1,55 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
},
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
lineHeight: ratio9to8
|
|
54
|
-
}
|
|
55
|
-
},
|
|
56
|
-
// TODO - fontWeight should have its own const on palette
|
|
57
|
-
amount: {
|
|
58
|
-
small: {
|
|
59
|
-
fontSize: size28,
|
|
60
|
-
lineHeight: ratio1to1,
|
|
61
|
-
letterSpacing: condensed,
|
|
62
|
-
fontWeight: '300'
|
|
63
|
-
},
|
|
64
|
-
medium: {
|
|
65
|
-
fontSize: size40,
|
|
66
|
-
lineHeight: ratio1to1,
|
|
67
|
-
letterSpacing: condensed,
|
|
68
|
-
fontWeight: '300'
|
|
69
|
-
},
|
|
70
|
-
large: {
|
|
71
|
-
fontSize: size64,
|
|
72
|
-
lineHeight: ratio1to1,
|
|
73
|
-
letterSpacing: condensed,
|
|
74
|
-
fontWeight: '300'
|
|
75
|
-
}
|
|
76
|
-
},
|
|
77
|
-
cents: {
|
|
78
|
-
small: {
|
|
79
|
-
fontSize: size16,
|
|
80
|
-
lineHeight: ratio4to3
|
|
81
|
-
},
|
|
82
|
-
medium: {
|
|
83
|
-
fontSize: size20,
|
|
84
|
-
lineHeight: ratio6to5
|
|
85
|
-
},
|
|
86
|
-
large: {
|
|
87
|
-
fontSize: size36,
|
|
88
|
-
lineHeight: ratio9to8
|
|
89
|
-
}
|
|
90
|
-
},
|
|
91
|
-
rate: {
|
|
92
|
-
small: {
|
|
93
|
-
fontSize: size14,
|
|
94
|
-
lineHeight: ratio8to7
|
|
95
|
-
},
|
|
96
|
-
medium: {
|
|
97
|
-
fontSize: size16,
|
|
98
|
-
lineHeight: ratio5to4
|
|
99
|
-
},
|
|
100
|
-
large: {
|
|
101
|
-
fontSize: size20,
|
|
102
|
-
lineHeight: ratio8to5
|
|
103
|
-
}
|
|
104
|
-
},
|
|
105
|
-
bottomText: {
|
|
106
|
-
small: {
|
|
107
|
-
fontSize: size14,
|
|
108
|
-
lineHeight: ratio10to7
|
|
109
|
-
},
|
|
110
|
-
medium: {
|
|
111
|
-
fontSize: size16,
|
|
112
|
-
lineHeight: ratio3to2
|
|
113
|
-
},
|
|
114
|
-
large: {
|
|
115
|
-
fontSize: size20,
|
|
116
|
-
lineHeight: ratio8to5
|
|
1
|
+
// map typography tokens accordenly
|
|
2
|
+
export default (_ref => {
|
|
3
|
+
let {
|
|
4
|
+
topTextFontSize,
|
|
5
|
+
fontColor,
|
|
6
|
+
topTextLineHeight,
|
|
7
|
+
currencySymbolFontSize,
|
|
8
|
+
currencySymbolLineHeight,
|
|
9
|
+
currencySymbolFontWeight,
|
|
10
|
+
amountFontSize,
|
|
11
|
+
amountLineHeight,
|
|
12
|
+
amountLetterSpacing,
|
|
13
|
+
amountFontWeight,
|
|
14
|
+
centsFontSize,
|
|
15
|
+
centsLineHeight,
|
|
16
|
+
rateFontSize,
|
|
17
|
+
rateLineHeight,
|
|
18
|
+
bottomTextFontSize,
|
|
19
|
+
bottomTextLineHeight,
|
|
20
|
+
rateFontWeight,
|
|
21
|
+
centsFontWeight
|
|
22
|
+
} = _ref;
|
|
23
|
+
return {
|
|
24
|
+
topText: {
|
|
25
|
+
fontSize: topTextFontSize,
|
|
26
|
+
lineHeight: topTextLineHeight
|
|
27
|
+
},
|
|
28
|
+
dollarSign: {
|
|
29
|
+
fontSize: currencySymbolFontSize,
|
|
30
|
+
lineHeight: currencySymbolLineHeight,
|
|
31
|
+
fontWeight: currencySymbolFontWeight
|
|
32
|
+
},
|
|
33
|
+
amount: {
|
|
34
|
+
color: fontColor,
|
|
35
|
+
fontSize: amountFontSize,
|
|
36
|
+
lineHeight: amountLineHeight,
|
|
37
|
+
letterSpacing: amountLetterSpacing,
|
|
38
|
+
fontWeight: amountFontWeight
|
|
39
|
+
},
|
|
40
|
+
cents: {
|
|
41
|
+
fontSize: centsFontSize,
|
|
42
|
+
lineHeight: centsLineHeight,
|
|
43
|
+
fontWeight: centsFontWeight
|
|
44
|
+
},
|
|
45
|
+
rate: {
|
|
46
|
+
fontSize: rateFontSize,
|
|
47
|
+
lineHeight: rateLineHeight,
|
|
48
|
+
fontWeight: rateFontWeight
|
|
49
|
+
},
|
|
50
|
+
bottomText: {
|
|
51
|
+
fontSize: bottomTextFontSize,
|
|
52
|
+
lineHeight: bottomTextLineHeight
|
|
117
53
|
}
|
|
118
|
-
}
|
|
119
|
-
};
|
|
120
|
-
export default typographyTokens;
|
|
54
|
+
};
|
|
55
|
+
});
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import PropTypes from 'prop-types';
|
|
3
|
+
import { getTokensPropType, Progress, selectSystemProps, useThemeTokens, a11yProps, viewProps, variantProp } from '@telus-uds/components-base';
|
|
4
|
+
import styled from 'styled-components'; // Passes React Native-oriented system props through UDS Progress
|
|
5
|
+
|
|
6
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
|
+
const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, viewProps]);
|
|
8
|
+
const {
|
|
9
|
+
Bar: ProgressBarBase
|
|
10
|
+
} = Progress;
|
|
11
|
+
const Gradient = /*#__PURE__*/styled.div.attrs({
|
|
12
|
+
'data-testid': 'ProgressBar-Gradient'
|
|
13
|
+
}).withConfig({
|
|
14
|
+
displayName: "ProgressBar__Gradient",
|
|
15
|
+
componentId: "components-web__sc-1vmzyq5-0"
|
|
16
|
+
})(_ref => {
|
|
17
|
+
let {
|
|
18
|
+
percentage,
|
|
19
|
+
gradient: {
|
|
20
|
+
angle,
|
|
21
|
+
stops,
|
|
22
|
+
type
|
|
23
|
+
}
|
|
24
|
+
} = _ref;
|
|
25
|
+
return {
|
|
26
|
+
height: '100%',
|
|
27
|
+
// As per the design specs, we need to have the gradient expanding to 100% and being
|
|
28
|
+
// revealed by bar width, so we need to stretch it beyond the parent (progress element)
|
|
29
|
+
// to the full length of the progress bar
|
|
30
|
+
width: `${100 * 100 / percentage}%`,
|
|
31
|
+
background: `${type}-gradient(${angle}deg, ${stops[0].color}, ${stops[1].color})`
|
|
32
|
+
};
|
|
33
|
+
});
|
|
34
|
+
/**
|
|
35
|
+
* The `ProgressBar` is a visual representation of linear progression.
|
|
36
|
+
* It provides simple but important information at a quick glance.
|
|
37
|
+
* This is a Web-specific progress bar.
|
|
38
|
+
*
|
|
39
|
+
* ## Component API
|
|
40
|
+
*
|
|
41
|
+
* Use props and tokens from the base ProgressBar component. The difference is that the
|
|
42
|
+
* `gradient` is being used here to provide gradient filling.
|
|
43
|
+
*
|
|
44
|
+
*/
|
|
45
|
+
|
|
46
|
+
const ProgressBar = _ref2 => {
|
|
47
|
+
let {
|
|
48
|
+
percentage,
|
|
49
|
+
tokens,
|
|
50
|
+
variant,
|
|
51
|
+
...rest
|
|
52
|
+
} = _ref2;
|
|
53
|
+
const themeTokens = useThemeTokens('ProgressBar', tokens, variant);
|
|
54
|
+
const selectedProps = selectProps(rest);
|
|
55
|
+
return /*#__PURE__*/_jsx(ProgressBarBase, {
|
|
56
|
+
percentage: percentage,
|
|
57
|
+
tokens: tokens,
|
|
58
|
+
variant: variant,
|
|
59
|
+
...selectedProps,
|
|
60
|
+
children: themeTokens.gradient && /*#__PURE__*/_jsx(Gradient, { ...themeTokens,
|
|
61
|
+
percentage: percentage
|
|
62
|
+
})
|
|
63
|
+
});
|
|
64
|
+
};
|
|
65
|
+
|
|
66
|
+
ProgressBar.propTypes = { ...selectedSystemPropTypes,
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Percentage of completion.
|
|
70
|
+
*/
|
|
71
|
+
percentage: PropTypes.number,
|
|
72
|
+
|
|
73
|
+
/**
|
|
74
|
+
* ProgressBar tokens.
|
|
75
|
+
*/
|
|
76
|
+
tokens: getTokensPropType('ProgressBar'),
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* ProgressBar variant.
|
|
80
|
+
*/
|
|
81
|
+
variant: variantProp.propType
|
|
82
|
+
};
|
|
83
|
+
export default ProgressBar;
|
|
@@ -29,7 +29,7 @@ const RibbonWrapper = /*#__PURE__*/styled.div.withConfig({
|
|
|
29
29
|
const RibbonContainer = /*#__PURE__*/styled.div.withConfig({
|
|
30
30
|
displayName: "Ribbon__RibbonContainer",
|
|
31
31
|
componentId: "components-web__sc-186270k-1"
|
|
32
|
-
})(["display:flex;justify-content:center;background:", ";padding:", ";border-radius:", ";width:fit-content;box-shadow:", ";"], _ref4 => {
|
|
32
|
+
})(["display:flex;justify-content:center;background:", ";padding:", ";border-radius:", ";width:fit-content;box-shadow:", ";border-bottom-right-radius:", ";border-bottom-left-radius:", ";"], _ref4 => {
|
|
33
33
|
let {
|
|
34
34
|
backgroundColor
|
|
35
35
|
} = _ref4;
|
|
@@ -50,53 +50,63 @@ const RibbonContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
50
50
|
shouldWrap
|
|
51
51
|
} = _ref7;
|
|
52
52
|
return shouldWrap && boxShadow;
|
|
53
|
+
}, _ref8 => {
|
|
54
|
+
let {
|
|
55
|
+
borderRadiusBottomLeft
|
|
56
|
+
} = _ref8;
|
|
57
|
+
return borderRadiusBottomLeft;
|
|
58
|
+
}, _ref9 => {
|
|
59
|
+
let {
|
|
60
|
+
borderRadiusBottomRight
|
|
61
|
+
} = _ref9;
|
|
62
|
+
return borderRadiusBottomRight;
|
|
53
63
|
});
|
|
54
64
|
const RibbonCurve = /*#__PURE__*/styled.div.withConfig({
|
|
55
65
|
displayName: "Ribbon__RibbonCurve",
|
|
56
66
|
componentId: "components-web__sc-186270k-2"
|
|
57
|
-
})(["background:", ";width:", ";height:", ";margin-top:-", ";border-radius:0 0 0 100%;position:relative;z-index:-1;&::after{content:'';border-bottom-left-radius:", ";position:absolute;height:", ";background:", ";width:", ";}"],
|
|
67
|
+
})(["background:", ";width:", ";height:", ";margin-top:-", ";border-radius:0 0 0 100%;position:relative;z-index:-1;&::after{content:'';border-bottom-left-radius:", ";position:absolute;height:", ";background:", ";width:", ";}"], _ref10 => {
|
|
58
68
|
let {
|
|
59
69
|
curveBackgroundColor
|
|
60
|
-
} =
|
|
70
|
+
} = _ref10;
|
|
61
71
|
return curveBackgroundColor;
|
|
62
|
-
},
|
|
72
|
+
}, _ref11 => {
|
|
63
73
|
let {
|
|
64
74
|
curveWidth
|
|
65
|
-
} =
|
|
75
|
+
} = _ref11;
|
|
66
76
|
return curveWidth;
|
|
67
|
-
},
|
|
77
|
+
}, _ref12 => {
|
|
68
78
|
let {
|
|
69
79
|
curveHeight
|
|
70
|
-
} =
|
|
80
|
+
} = _ref12;
|
|
71
81
|
return curveHeight;
|
|
72
|
-
},
|
|
82
|
+
}, _ref13 => {
|
|
73
83
|
let {
|
|
74
84
|
curveMarginTop
|
|
75
|
-
} =
|
|
85
|
+
} = _ref13;
|
|
76
86
|
return curveMarginTop;
|
|
77
|
-
},
|
|
87
|
+
}, _ref14 => {
|
|
78
88
|
let {
|
|
79
89
|
curveAfterRadius
|
|
80
|
-
} =
|
|
90
|
+
} = _ref14;
|
|
81
91
|
return curveAfterRadius;
|
|
82
|
-
},
|
|
92
|
+
}, _ref15 => {
|
|
83
93
|
let {
|
|
84
94
|
curveAfterHeight
|
|
85
|
-
} =
|
|
95
|
+
} = _ref15;
|
|
86
96
|
return curveAfterHeight;
|
|
87
|
-
},
|
|
97
|
+
}, _ref16 => {
|
|
88
98
|
let {
|
|
89
99
|
curveAfterBackgroundColor
|
|
90
|
-
} =
|
|
100
|
+
} = _ref16;
|
|
91
101
|
return curveAfterBackgroundColor;
|
|
92
|
-
},
|
|
102
|
+
}, _ref17 => {
|
|
93
103
|
let {
|
|
94
104
|
curveAfterWidth
|
|
95
|
-
} =
|
|
105
|
+
} = _ref17;
|
|
96
106
|
return curveAfterWidth;
|
|
97
107
|
});
|
|
98
108
|
|
|
99
|
-
const Ribbon =
|
|
109
|
+
const Ribbon = _ref18 => {
|
|
100
110
|
let {
|
|
101
111
|
children,
|
|
102
112
|
tokens,
|
|
@@ -105,7 +115,7 @@ const Ribbon = _ref16 => {
|
|
|
105
115
|
top,
|
|
106
116
|
variant = {},
|
|
107
117
|
...rest
|
|
108
|
-
} =
|
|
118
|
+
} = _ref18;
|
|
109
119
|
const {
|
|
110
120
|
backgroundColor,
|
|
111
121
|
borderRadius,
|
|
@@ -126,19 +136,25 @@ const Ribbon = _ref16 => {
|
|
|
126
136
|
paddingLeft,
|
|
127
137
|
paddingRight,
|
|
128
138
|
paddingTop,
|
|
129
|
-
gradient
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
} = variant
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
139
|
+
gradient,
|
|
140
|
+
fontColor,
|
|
141
|
+
borderRadiusBottomLeft,
|
|
142
|
+
borderRadiusBottomRight
|
|
143
|
+
} = useThemeTokens('Ribbon', tokens, { ...variant,
|
|
144
|
+
wrap: shouldWrap
|
|
145
|
+
});
|
|
146
|
+
let background = backgroundColor;
|
|
147
|
+
|
|
148
|
+
if (gradient) {
|
|
149
|
+
const {
|
|
150
|
+
type: gradientType,
|
|
151
|
+
angle: gradientAngle,
|
|
152
|
+
stops: gradientColors
|
|
153
|
+
} = gradient;
|
|
154
|
+
const gradientBackground = `${gradientType}-gradient(${gradientAngle}deg, ${gradientColors[0].color}, ${gradientColors[1].color})`;
|
|
155
|
+
background = gradientBackground;
|
|
156
|
+
}
|
|
157
|
+
|
|
142
158
|
return /*#__PURE__*/_jsxs(RibbonWrapper, {
|
|
143
159
|
left: left,
|
|
144
160
|
top: top,
|
|
@@ -150,12 +166,17 @@ const Ribbon = _ref16 => {
|
|
|
150
166
|
padding: `${paddingTop}px ${paddingRight}px ${paddingBottom}px ${paddingLeft}px`,
|
|
151
167
|
borderRadius: `${borderRadius}px`,
|
|
152
168
|
boxShadow: `${boxShadowPaddingTop}px ${boxShadowPaddingRight}px ${boxShadowPaddingBottom}px ${boxShadowPaddingLeft}px ${boxShadowColor}`,
|
|
169
|
+
borderRadiusBottomLeft: `${borderRadiusBottomLeft}px`,
|
|
170
|
+
borderRadiusBottomRight: `${borderRadiusBottomRight}px`,
|
|
153
171
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
154
172
|
variant: {
|
|
155
173
|
size: 'micro',
|
|
156
174
|
bold: true,
|
|
157
175
|
inverse: true
|
|
158
176
|
},
|
|
177
|
+
tokens: {
|
|
178
|
+
color: fontColor
|
|
179
|
+
},
|
|
159
180
|
children: children
|
|
160
181
|
})
|
|
161
182
|
}), shouldWrap && /*#__PURE__*/_jsx(RibbonCurve, {
|
|
@@ -2,6 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
4
|
import { selectSystemProps, useScrollBlocking, useThemeTokens } from '@telus-uds/components-base';
|
|
5
|
+
import { Portal } from '@gorhom/portal';
|
|
5
6
|
import SpinnerContent from './SpinnerContent';
|
|
6
7
|
import { htmlAttrs, media } from '../utils';
|
|
7
8
|
import { BACKDROP_OPACITY, BACKDROP_Z_INDEX } from './constants';
|
|
@@ -109,20 +110,22 @@ const Spinner = _ref3 => {
|
|
|
109
110
|
|
|
110
111
|
|
|
111
112
|
if (fullScreen) {
|
|
112
|
-
return /*#__PURE__*/_jsx(
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
113
|
+
return /*#__PURE__*/_jsx(Portal, {
|
|
114
|
+
children: /*#__PURE__*/_jsx(FullscreenOverlay, {
|
|
115
|
+
fullScreenOverLayBackground: fullScreenOverLayBackground,
|
|
116
|
+
children: /*#__PURE__*/_jsx(SpinnerContainer, {
|
|
117
|
+
inline: inline,
|
|
118
|
+
fullScreen: fullScreen,
|
|
119
|
+
"aria-live": "assertive",
|
|
120
|
+
...selectProps(rest),
|
|
121
|
+
children: /*#__PURE__*/_jsx(SpinnerContent, {
|
|
122
|
+
label: label,
|
|
123
|
+
overlay: true,
|
|
124
|
+
size: size,
|
|
125
|
+
thickness: thickness,
|
|
126
|
+
sizeVariant: sizeVariant,
|
|
127
|
+
isStatic: isStatic
|
|
128
|
+
})
|
|
126
129
|
})
|
|
127
130
|
})
|
|
128
131
|
});
|
package/lib-module/Table/Cell.js
CHANGED
|
@@ -86,7 +86,10 @@ const Cell = _ref7 => {
|
|
|
86
86
|
cellPaddingTop,
|
|
87
87
|
cellPaddingRight,
|
|
88
88
|
cellPaddingLeft,
|
|
89
|
-
cellPaddingBottom
|
|
89
|
+
cellPaddingBottom,
|
|
90
|
+
fontName,
|
|
91
|
+
fontWeight,
|
|
92
|
+
fontSize
|
|
90
93
|
} = useThemeTokens('Table', tokens, variant);
|
|
91
94
|
const sharedProps = {
|
|
92
95
|
align,
|
|
@@ -98,6 +101,11 @@ const Cell = _ref7 => {
|
|
|
98
101
|
cellPaddingBottom,
|
|
99
102
|
cellBoxShadowColor
|
|
100
103
|
};
|
|
104
|
+
const typographyTokens = {
|
|
105
|
+
fontName,
|
|
106
|
+
fontWeight,
|
|
107
|
+
fontSize
|
|
108
|
+
};
|
|
101
109
|
|
|
102
110
|
switch (type) {
|
|
103
111
|
case 'heading':
|
|
@@ -107,6 +115,7 @@ const Cell = _ref7 => {
|
|
|
107
115
|
cellHeadingBoxShadowColor: cellHeadingBoxShadowColor,
|
|
108
116
|
...sharedProps,
|
|
109
117
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
118
|
+
tokens: typographyTokens,
|
|
110
119
|
variant: {
|
|
111
120
|
size: 'h4'
|
|
112
121
|
},
|
|
@@ -120,6 +129,7 @@ const Cell = _ref7 => {
|
|
|
120
129
|
cellSubheadingBackground: cellSubheadingBackground,
|
|
121
130
|
...sharedProps,
|
|
122
131
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
132
|
+
tokens: typographyTokens,
|
|
123
133
|
variant: {
|
|
124
134
|
size: 'h5'
|
|
125
135
|
},
|
|
@@ -133,6 +143,7 @@ const Cell = _ref7 => {
|
|
|
133
143
|
cellRowHeadingBackground: cellRowHeadingBackground,
|
|
134
144
|
...sharedProps,
|
|
135
145
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
146
|
+
tokens: typographyTokens,
|
|
136
147
|
variant: {
|
|
137
148
|
size: text === 'small' ? 'h5' : 'h4'
|
|
138
149
|
},
|
|
@@ -145,6 +156,9 @@ const Cell = _ref7 => {
|
|
|
145
156
|
cellBackground: cellBackground,
|
|
146
157
|
...sharedProps,
|
|
147
158
|
children: /*#__PURE__*/_jsx(Typography, {
|
|
159
|
+
tokens: {
|
|
160
|
+
fontSize
|
|
161
|
+
},
|
|
148
162
|
variant: {
|
|
149
163
|
size: text
|
|
150
164
|
},
|
|
@@ -16,12 +16,12 @@ const slideDown = property => function (from, to) {
|
|
|
16
16
|
return keyframes(["0%{", ":", ";}99%{", ":", ";}100%{", ":", ";}"], property, from, property, to, property, end);
|
|
17
17
|
};
|
|
18
18
|
|
|
19
|
-
const animation = props => css(["", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 3.2s forwards;& *{animation:", " 1s ease-in-out 3s forwards;}& > a div{animation:", " 1s ease-in-out 3s forwards;}& > a svg{animation:", " 1s ease-in-out 3s forwards;}"], slideDown('height')(`${props.animationHeightBefore}px`, `${props.animationHeightAfter}px`, 'auto'), transform('padding-bottom')(`${props.animationPaddingBottomBefore}px`, `${props.animationPaddingBottomAfter}px`), transform('padding-top')(`${props.animationPaddingTopBefore}px`, `${props.animationPaddingTopAfter}px`), transform('background')(props.animationBackgroundColorBefore, props.animationBackgroundColorAfter), transform('color')(props.animationColorBefore, props.animationColorAfter), transform('color')(props.animationDivColorBefore, props.animationDivColorAfter), transform('fill')(props.animationFillColorBefore, props.animationFillColorAfter));
|
|
19
|
+
const animation = props => css(["", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 2s forwards,", " 1s ease-in-out 3.2s forwards;& *{animation:", " 1s ease-in-out 3s forwards;}& > a div{animation:", " 1s ease-in-out 3s forwards;}& > a svg{animation:", " 1s ease-in-out 3s forwards;}& > a div{animation:", " 1s ease-in-out 3s forwards;}"], slideDown('height')(`${props.animationHeightBefore}px`, `${props.animationHeightAfter}px`, 'auto'), transform('padding-bottom')(`${props.animationPaddingBottomBefore}px`, `${props.animationPaddingBottomAfter}px`), transform('padding-top')(`${props.animationPaddingTopBefore}px`, `${props.animationPaddingTopAfter}px`), transform('background')(props.animationBackgroundColorBefore, props.animationBackgroundColorAfter), transform('color')(props.animationColorBefore, props.animationColorAfter), transform('color')(props.animationDivColorBefore, props.animationDivColorAfter), transform('fill')(props.animationFillColorBefore, props.animationFillColorAfter), transform('color')(props.animationFillColorBefore, props.animationFillColorAfter));
|
|
20
20
|
|
|
21
21
|
const ToastContainer = /*#__PURE__*/styled.div.withConfig({
|
|
22
22
|
displayName: "Toast__ToastContainer",
|
|
23
23
|
componentId: "components-web__sc-p78jdh-0"
|
|
24
|
-
})(["display:flex;justify-content:center;background:", ";gap:", ";height:0;overflow:hidden;animation:", ";"], _ref => {
|
|
24
|
+
})(["display:flex;justify-content:center;align-items:center;background:", ";gap:", ";height:0;overflow:hidden;animation:", ";"], _ref => {
|
|
25
25
|
let {
|
|
26
26
|
containerBackgroundColor
|
|
27
27
|
} = _ref;
|
|
@@ -55,10 +55,17 @@ const Toast = _ref3 => {
|
|
|
55
55
|
animationBackgroundColorBefore,
|
|
56
56
|
animationBackgroundColorAfter,
|
|
57
57
|
animationColorBefore,
|
|
58
|
-
animationColorAfter
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
58
|
+
animationColorAfter
|
|
59
|
+
} = useThemeTokens('Toast', tokens, variant); // inherit ChevronLink tokens for animation colors
|
|
60
|
+
|
|
61
|
+
const {
|
|
62
|
+
color: chevronDefaultColor
|
|
63
|
+
} = useThemeTokens('ChevronLink', {}, {});
|
|
64
|
+
const {
|
|
65
|
+
color: chevronInverseColor
|
|
66
|
+
} = useThemeTokens('ChevronLink', {}, {
|
|
67
|
+
inverse: true
|
|
68
|
+
});
|
|
62
69
|
|
|
63
70
|
if (!toast) {
|
|
64
71
|
return null;
|
|
@@ -77,8 +84,8 @@ const Toast = _ref3 => {
|
|
|
77
84
|
animationBackgroundColorAfter: animationBackgroundColorAfter,
|
|
78
85
|
animationColorBefore: animationColorBefore,
|
|
79
86
|
animationColorAfter: animationColorAfter,
|
|
80
|
-
animationFillColorBefore:
|
|
81
|
-
animationFillColorAfter:
|
|
87
|
+
animationFillColorBefore: chevronInverseColor,
|
|
88
|
+
animationFillColorAfter: chevronDefaultColor,
|
|
82
89
|
...selectProps(rest),
|
|
83
90
|
children: [headline && /*#__PURE__*/_jsx(Typography, {
|
|
84
91
|
variant: {
|