@telus-uds/components-web 2.33.2 → 2.34.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 +20 -3
- package/lib/Badge/Badge.js +4 -2
- package/lib/BlockQuote/BlockQuote.js +4 -2
- package/lib/Breadcrumbs/Breadcrumbs.js +7 -5
- package/lib/Breadcrumbs/Item/Item.js +2 -13
- package/lib/Callout/Callout.js +4 -2
- package/lib/Card/Card.js +3 -5
- package/lib/Card/CardContent.js +4 -2
- package/lib/Countdown/Countdown.js +2 -6
- package/lib/Countdown/Segment.js +4 -2
- package/lib/DatePicker/CalendarContainer.js +2 -2
- package/lib/DatePicker/DatePicker.js +21 -35
- package/lib/Disclaimer/Disclaimer.js +4 -2
- package/lib/ExpandCollapseMini/ExpandCollapseMini.js +5 -11
- package/lib/ExpandCollapseMini/ExpandCollapseMiniControl.js +4 -2
- package/lib/Footnote/Footnote.js +32 -37
- package/lib/Footnote/FootnoteLink.js +5 -6
- package/lib/IconButton/IconButton.js +4 -11
- package/lib/Image/Image.js +5 -3
- package/lib/List/ListItem.js +2 -7
- package/lib/NavigationBar/NavigationBar.js +8 -18
- package/lib/NavigationBar/NavigationItem.js +4 -9
- package/lib/NavigationBar/NavigationSubMenu.js +8 -7
- package/lib/NavigationBar/index.js +2 -0
- package/lib/OptimizeImage/OptimizeImage.js +8 -8
- package/lib/OrderedList/Item.js +3 -9
- package/lib/OrderedList/OrderedList.js +5 -13
- package/lib/OrderedList/OrderedListBase.js +3 -8
- package/lib/Paragraph/Paragraph.js +5 -3
- package/lib/PreviewCard/PreviewCard.js +3 -5
- package/lib/PriceLockup/PriceLockup.js +4 -2
- package/lib/Progress/ProgressBar.js +4 -2
- package/lib/QuantitySelector/QuantitySelector.js +21 -24
- package/lib/QuantitySelector/SideButton.js +12 -20
- package/lib/ResponsiveImage/ResponsiveImage.js +4 -2
- package/lib/Ribbon/Ribbon.js +4 -2
- package/lib/SkeletonProvider/SkeletonImage.js +5 -3
- package/lib/SkeletonProvider/SkeletonProvider.js +3 -5
- package/lib/SkeletonProvider/SkeletonTypography.js +5 -3
- package/lib/Span/Span.js +5 -3
- package/lib/Spinner/Spinner.js +4 -2
- package/lib/Spinner/SpinnerContent.js +4 -2
- package/lib/StoryCard/StoryCard.js +3 -5
- package/lib/Table/Body.js +4 -2
- package/lib/Table/Cell.js +5 -3
- package/lib/Table/Header.js +6 -6
- package/lib/Table/Row.js +6 -6
- package/lib/Table/SubHeading.js +6 -6
- package/lib/Table/Table.js +6 -8
- package/lib/TermsAndConditions/ExpandCollapse.js +2 -7
- package/lib/TermsAndConditions/TermsAndConditions.js +5 -14
- package/lib/Testimonial/Testimonial.js +4 -2
- package/lib/Toast/Toast.js +4 -2
- package/lib/Video/Video.js +19 -55
- package/lib/VideoPicker/VideoPicker.js +38 -9
- package/lib/VideoPicker/VideoPickerPlayer.js +4 -2
- package/lib/VideoPicker/VideoPickerThumbnail.js +4 -2
- package/lib/VideoPicker/VideoSlider.js +7 -7
- package/lib/WaffleGrid/WaffleGrid.js +4 -2
- package/lib/WebVideo/WebVideo.js +51 -13
- package/lib/WebVideo/utils/index.js +58 -0
- package/lib/baseExports.js +6 -0
- package/lib/utils/theming/with-client-theme.js +1 -1
- package/lib/utils/theming/with-server-theme.js +1 -1
- package/lib-module/Badge/Badge.js +4 -2
- package/lib-module/BlockQuote/BlockQuote.js +4 -2
- package/lib-module/Breadcrumbs/Breadcrumbs.js +7 -5
- package/lib-module/Breadcrumbs/Item/Item.js +2 -11
- package/lib-module/Callout/Callout.js +4 -2
- package/lib-module/Card/Card.js +2 -3
- package/lib-module/Card/CardContent.js +4 -2
- package/lib-module/Countdown/Countdown.js +2 -3
- package/lib-module/Countdown/Segment.js +4 -2
- package/lib-module/DatePicker/CalendarContainer.js +2 -2
- package/lib-module/DatePicker/DatePicker.js +21 -33
- package/lib-module/Disclaimer/Disclaimer.js +4 -2
- package/lib-module/ExpandCollapseMini/ExpandCollapseMini.js +5 -9
- package/lib-module/ExpandCollapseMini/ExpandCollapseMiniControl.js +4 -2
- package/lib-module/Footnote/Footnote.js +31 -36
- package/lib-module/Footnote/FootnoteLink.js +5 -7
- package/lib-module/IconButton/IconButton.js +4 -9
- package/lib-module/Image/Image.js +5 -3
- package/lib-module/List/ListItem.js +2 -5
- package/lib-module/NavigationBar/NavigationBar.js +9 -17
- package/lib-module/NavigationBar/NavigationItem.js +5 -8
- package/lib-module/NavigationBar/NavigationSubMenu.js +9 -6
- package/lib-module/NavigationBar/index.js +2 -0
- package/lib-module/OptimizeImage/OptimizeImage.js +8 -6
- package/lib-module/OrderedList/Item.js +3 -7
- package/lib-module/OrderedList/OrderedList.js +6 -12
- package/lib-module/OrderedList/OrderedListBase.js +3 -6
- package/lib-module/Paragraph/Paragraph.js +6 -4
- package/lib-module/PreviewCard/PreviewCard.js +2 -3
- package/lib-module/PriceLockup/PriceLockup.js +4 -2
- package/lib-module/Progress/ProgressBar.js +4 -2
- package/lib-module/QuantitySelector/QuantitySelector.js +22 -23
- package/lib-module/QuantitySelector/SideButton.js +13 -21
- package/lib-module/ResponsiveImage/ResponsiveImage.js +4 -2
- package/lib-module/Ribbon/Ribbon.js +4 -2
- package/lib-module/SkeletonProvider/SkeletonImage.js +5 -3
- package/lib-module/SkeletonProvider/SkeletonProvider.js +3 -3
- package/lib-module/SkeletonProvider/SkeletonTypography.js +5 -3
- package/lib-module/Span/Span.js +6 -4
- package/lib-module/Spinner/Spinner.js +4 -2
- package/lib-module/Spinner/SpinnerContent.js +4 -2
- package/lib-module/StoryCard/StoryCard.js +2 -3
- package/lib-module/Table/Body.js +4 -2
- package/lib-module/Table/Cell.js +5 -3
- package/lib-module/Table/Header.js +6 -4
- package/lib-module/Table/Row.js +6 -4
- package/lib-module/Table/SubHeading.js +6 -4
- package/lib-module/Table/Table.js +6 -6
- package/lib-module/TermsAndConditions/ExpandCollapse.js +2 -5
- package/lib-module/TermsAndConditions/TermsAndConditions.js +5 -12
- package/lib-module/Testimonial/Testimonial.js +4 -2
- package/lib-module/Toast/Toast.js +4 -2
- package/lib-module/Video/Video.js +19 -53
- package/lib-module/VideoPicker/VideoPicker.js +37 -8
- package/lib-module/VideoPicker/VideoPickerPlayer.js +4 -2
- package/lib-module/VideoPicker/VideoPickerThumbnail.js +4 -2
- package/lib-module/VideoPicker/VideoSlider.js +7 -5
- package/lib-module/WaffleGrid/WaffleGrid.js +4 -2
- package/lib-module/WebVideo/WebVideo.js +51 -11
- package/lib-module/WebVideo/utils/index.js +50 -0
- package/lib-module/baseExports.js +1 -1
- package/lib-module/utils/theming/with-client-theme.js +2 -2
- package/lib-module/utils/theming/with-server-theme.js +2 -2
- package/package.json +3 -3
- package/src/Badge/Badge.jsx +5 -2
- package/src/BlockQuote/BlockQuote.jsx +120 -112
- package/src/Breadcrumbs/Breadcrumbs.jsx +84 -77
- package/src/Breadcrumbs/Item/Item.jsx +2 -9
- package/src/Callout/Callout.jsx +37 -40
- package/src/Card/Card.jsx +2 -3
- package/src/Card/CardContent.jsx +19 -14
- package/src/Countdown/Countdown.jsx +72 -71
- package/src/Countdown/Segment.jsx +40 -28
- package/src/DatePicker/CalendarContainer.jsx +2 -2
- package/src/DatePicker/DatePicker.jsx +21 -34
- package/src/Disclaimer/Disclaimer.jsx +5 -3
- package/src/ExpandCollapseMini/ExpandCollapseMini.jsx +37 -40
- package/src/ExpandCollapseMini/ExpandCollapseMiniControl.jsx +52 -44
- package/src/Footnote/Footnote.jsx +32 -38
- package/src/Footnote/FootnoteLink.jsx +41 -49
- package/src/IconButton/IconButton.jsx +19 -20
- package/src/Image/Image.jsx +40 -43
- package/src/List/ListItem.jsx +3 -5
- package/src/NavigationBar/NavigationBar.jsx +9 -18
- package/src/NavigationBar/NavigationItem.jsx +6 -5
- package/src/NavigationBar/NavigationSubMenu.jsx +104 -88
- package/src/NavigationBar/index.js +3 -0
- package/src/OptimizeImage/OptimizeImage.jsx +48 -41
- package/src/OrderedList/Item.jsx +34 -35
- package/src/OrderedList/OrderedList.jsx +4 -6
- package/src/OrderedList/OrderedListBase.jsx +2 -3
- package/src/Paragraph/Paragraph.jsx +21 -16
- package/src/PreviewCard/PreviewCard.jsx +2 -3
- package/src/PriceLockup/PriceLockup.jsx +143 -136
- package/src/Progress/ProgressBar.jsx +11 -3
- package/src/QuantitySelector/QuantitySelector.jsx +162 -154
- package/src/QuantitySelector/SideButton.jsx +52 -56
- package/src/ResponsiveImage/ResponsiveImage.jsx +16 -22
- package/src/Ribbon/Ribbon.jsx +85 -83
- package/src/SkeletonProvider/SkeletonImage.jsx +24 -15
- package/src/SkeletonProvider/SkeletonProvider.jsx +3 -3
- package/src/SkeletonProvider/SkeletonTypography.jsx +18 -13
- package/src/Span/Span.jsx +7 -5
- package/src/Spinner/Spinner.jsx +86 -79
- package/src/Spinner/SpinnerContent.jsx +31 -33
- package/src/StoryCard/StoryCard.jsx +2 -3
- package/src/Table/Body.jsx +5 -3
- package/src/Table/Cell.jsx +77 -67
- package/src/Table/Header.jsx +7 -5
- package/src/Table/Row.jsx +7 -5
- package/src/Table/SubHeading.jsx +7 -5
- package/src/Table/Table.jsx +6 -6
- package/src/TermsAndConditions/ExpandCollapse.jsx +2 -6
- package/src/TermsAndConditions/TermsAndConditions.jsx +5 -13
- package/src/Testimonial/Testimonial.jsx +148 -137
- package/src/Toast/Toast.jsx +68 -63
- package/src/Video/Video.jsx +25 -45
- package/src/VideoPicker/VideoPicker.jsx +114 -75
- package/src/VideoPicker/VideoPickerPlayer.jsx +13 -9
- package/src/VideoPicker/VideoPickerThumbnail.jsx +102 -94
- package/src/VideoPicker/VideoSlider.jsx +8 -6
- package/src/WaffleGrid/WaffleGrid.jsx +36 -40
- package/src/WebVideo/WebVideo.jsx +114 -60
- package/src/WebVideo/utils/index.js +56 -0
- package/src/baseExports.js +1 -0
- package/src/utils/theming/with-client-theme.jsx +2 -2
- package/src/utils/theming/with-server-theme.jsx +2 -2
- package/types/WebVideo.d.ts +2 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { selectSystemProps } from '@telus-uds/components-base';
|
|
4
4
|
import ResponsiveImage from '../ResponsiveImage';
|
|
@@ -6,7 +6,7 @@ import { hasWebpSupport, getImageUrls } from './utils';
|
|
|
6
6
|
import { htmlAttrs } from '../utils';
|
|
7
7
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
8
8
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
9
|
-
const OptimizeImage = _ref => {
|
|
9
|
+
const OptimizeImage = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
10
10
|
let {
|
|
11
11
|
contentfulAssetUrl,
|
|
12
12
|
alt,
|
|
@@ -23,8 +23,8 @@ const OptimizeImage = _ref => {
|
|
|
23
23
|
// `useHeight` is a deprecated TDS prop, replaced by `sizeByHeight`
|
|
24
24
|
const dimension = sizeByHeight || rest.useHeight ? 'h' : 'w';
|
|
25
25
|
// by default assuming webP support for SSR
|
|
26
|
-
const [imgUrls, setImgUrls] = useState(getImageUrls(contentfulAssetUrl, dimension, xs, sm, md, lg, xl, quality, disableRetina, true));
|
|
27
|
-
useEffect(() => {
|
|
26
|
+
const [imgUrls, setImgUrls] = React.useState(getImageUrls(contentfulAssetUrl, dimension, xs, sm, md, lg, xl, quality, disableRetina, true));
|
|
27
|
+
React.useEffect(() => {
|
|
28
28
|
// Checking for webP support for CSR
|
|
29
29
|
hasWebpSupport().then(supportsWebp => {
|
|
30
30
|
const imageUrls = getImageUrls(contentfulAssetUrl, dimension, xs, sm, md, lg, xl, quality, disableRetina, supportsWebp);
|
|
@@ -35,9 +35,11 @@ const OptimizeImage = _ref => {
|
|
|
35
35
|
return /*#__PURE__*/_jsx(ResponsiveImage, {
|
|
36
36
|
...imgUrls,
|
|
37
37
|
alt: alt,
|
|
38
|
-
...selectProps(rest)
|
|
38
|
+
...selectProps(rest),
|
|
39
|
+
ref: ref
|
|
39
40
|
});
|
|
40
|
-
};
|
|
41
|
+
});
|
|
42
|
+
OptimizeImage.displayName = 'OptimizeImage';
|
|
41
43
|
OptimizeImage.propTypes = {
|
|
42
44
|
...selectedSystemPropTypes,
|
|
43
45
|
/**
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
4
|
import { applyTextStyles, getTokensPropType, selectSystemProps, StackView, Typography, useTheme, useThemeTokens, wrapStringsInText } from '@telus-uds/components-base';
|
|
@@ -69,12 +69,12 @@ const ItemContent = /*#__PURE__*/styled.div.withConfig({
|
|
|
69
69
|
})({
|
|
70
70
|
flex: 1
|
|
71
71
|
});
|
|
72
|
-
const Item = /*#__PURE__*/forwardRef((_ref3, ref) => {
|
|
72
|
+
const Item = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
73
73
|
let {
|
|
74
74
|
children,
|
|
75
75
|
counterName,
|
|
76
76
|
title,
|
|
77
|
-
tokens,
|
|
77
|
+
tokens = {},
|
|
78
78
|
variant,
|
|
79
79
|
...rest
|
|
80
80
|
} = _ref3;
|
|
@@ -133,8 +133,4 @@ Item.propTypes = {
|
|
|
133
133
|
*/
|
|
134
134
|
tokens: getTokensPropType('List')
|
|
135
135
|
};
|
|
136
|
-
Item.defaultProps = {
|
|
137
|
-
title: undefined,
|
|
138
|
-
tokens: {}
|
|
139
|
-
};
|
|
140
136
|
export default Item;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
|
-
import { selectSystemProps,
|
|
4
|
+
import { selectSystemProps, variantProp } from '@telus-uds/components-base';
|
|
5
5
|
import { htmlAttrs } from '../utils';
|
|
6
6
|
import OrderedListBase from './OrderedListBase';
|
|
7
7
|
import Item from './Item';
|
|
@@ -25,18 +25,18 @@ const StyledOrderedListBase = /*#__PURE__*/styled(OrderedListBase).withConfig({
|
|
|
25
25
|
/**
|
|
26
26
|
* Themed semantic ordered list.
|
|
27
27
|
*/
|
|
28
|
-
const OrderedList = /*#__PURE__*/forwardRef((_ref2, ref) => {
|
|
28
|
+
const OrderedList = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
29
29
|
let {
|
|
30
30
|
children,
|
|
31
|
-
start,
|
|
32
|
-
variant,
|
|
31
|
+
start = 1,
|
|
32
|
+
variant = {},
|
|
33
33
|
...rest
|
|
34
34
|
} = _ref2;
|
|
35
35
|
// Check if children is an array
|
|
36
36
|
const isChildrenArray = Array.isArray(children);
|
|
37
37
|
|
|
38
38
|
// Pass any variants "OrderedList" receives down to the individual list items.
|
|
39
|
-
const childrenWithParentVariants = useMemo(() => {
|
|
39
|
+
const childrenWithParentVariants = React.useMemo(() => {
|
|
40
40
|
const addVariantToProps = child => {
|
|
41
41
|
var _child$props;
|
|
42
42
|
const existingChildVariants = ((_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.variant) ?? {};
|
|
@@ -65,7 +65,6 @@ const OrderedList = /*#__PURE__*/forwardRef((_ref2, ref) => {
|
|
|
65
65
|
OrderedList.displayName = 'OrderedList';
|
|
66
66
|
OrderedList.propTypes = {
|
|
67
67
|
...selectedSystemPropTypes,
|
|
68
|
-
tokens: getTokensPropType('OrderedList'),
|
|
69
68
|
/**
|
|
70
69
|
* A list of ordered items wrapped in `OrderedList.Item`.
|
|
71
70
|
*/
|
|
@@ -76,10 +75,5 @@ OrderedList.propTypes = {
|
|
|
76
75
|
start: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
|
|
77
76
|
variant: variantProp.propType
|
|
78
77
|
};
|
|
79
|
-
OrderedList.defaultProps = {
|
|
80
|
-
start: 1,
|
|
81
|
-
tokens: {},
|
|
82
|
-
variant: {}
|
|
83
|
-
};
|
|
84
78
|
OrderedList.Item = Item;
|
|
85
79
|
export default OrderedList;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
4
|
import ItemBase from './ItemBase';
|
|
@@ -17,10 +17,10 @@ const StyledList = /*#__PURE__*/styled.ol.withConfig({
|
|
|
17
17
|
/**
|
|
18
18
|
* Semantic ordered list.
|
|
19
19
|
*/
|
|
20
|
-
const OrderedListBase = /*#__PURE__*/forwardRef((_ref, ref) => {
|
|
20
|
+
const OrderedListBase = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
21
21
|
let {
|
|
22
22
|
children,
|
|
23
|
-
start,
|
|
23
|
+
start = 1,
|
|
24
24
|
...rest
|
|
25
25
|
} = _ref;
|
|
26
26
|
return /*#__PURE__*/_jsx(StyledList, {
|
|
@@ -41,8 +41,5 @@ OrderedListBase.propTypes = {
|
|
|
41
41
|
*/
|
|
42
42
|
start: PropTypes.oneOfType([PropTypes.number, PropTypes.string])
|
|
43
43
|
};
|
|
44
|
-
OrderedListBase.defaultProps = {
|
|
45
|
-
start: 1
|
|
46
|
-
};
|
|
47
44
|
OrderedListBase.Item = ItemBase;
|
|
48
45
|
export default OrderedListBase;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
|
-
import { selectSystemProps } from '@telus-uds/components-base';
|
|
4
|
+
import { getTokensPropType, selectSystemProps } from '@telus-uds/components-base';
|
|
5
5
|
import { htmlAttrs, useTypographyTheme } from '../utils';
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
7
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
@@ -33,7 +33,7 @@ const StyledParagraph = /*#__PURE__*/styled.p.withConfig({
|
|
|
33
33
|
contrast.
|
|
34
34
|
* - All Allium Typography variants other than header size variants are supported.
|
|
35
35
|
*/
|
|
36
|
-
const Paragraph = _ref3 => {
|
|
36
|
+
const Paragraph = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
37
37
|
let {
|
|
38
38
|
children,
|
|
39
39
|
variant,
|
|
@@ -45,6 +45,7 @@ const Paragraph = _ref3 => {
|
|
|
45
45
|
} = _ref3;
|
|
46
46
|
const style = useTypographyTheme(variant, tokens);
|
|
47
47
|
return /*#__PURE__*/_jsx(StyledParagraph, {
|
|
48
|
+
ref: ref,
|
|
48
49
|
linesBetween: linesBetween,
|
|
49
50
|
"data-testid": testID,
|
|
50
51
|
align: align,
|
|
@@ -52,7 +53,8 @@ const Paragraph = _ref3 => {
|
|
|
52
53
|
...selectProps(rest),
|
|
53
54
|
children: children
|
|
54
55
|
});
|
|
55
|
-
};
|
|
56
|
+
});
|
|
57
|
+
Paragraph.displayName = 'Paragraph';
|
|
56
58
|
Paragraph.propTypes = {
|
|
57
59
|
...selectedSystemPropTypes,
|
|
58
60
|
children: PropTypes.node.isRequired,
|
|
@@ -74,7 +76,7 @@ Paragraph.propTypes = {
|
|
|
74
76
|
/**
|
|
75
77
|
* Paragraph takes the same tokens overrides as Typography
|
|
76
78
|
*/
|
|
77
|
-
tokens:
|
|
79
|
+
tokens: getTokensPropType('Typography'),
|
|
78
80
|
/**
|
|
79
81
|
* Paragraph takes any of Typography's theme variants except for header sizes
|
|
80
82
|
*/
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import React, { forwardRef } from 'react';
|
|
1
|
+
import React from 'react';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import omit from 'lodash.omit';
|
|
5
4
|
import { Box, getThemeTokens, hrefAttrsProp, PressableCardBase, selectSystemProps, Spacer, StackView, Typography, a11yProps, focusHandlerProps, viewProps, withLinkRouter, useTheme, getTokensPropType } from '@telus-uds/components-base';
|
|
@@ -58,7 +57,7 @@ const defaultTokens = {
|
|
|
58
57
|
* - Use `href` to set the target URL
|
|
59
58
|
* - Use `fullBleedContent` to set the thumbnail image
|
|
60
59
|
*/
|
|
61
|
-
const PreviewCard = /*#__PURE__*/forwardRef((_ref3, ref) => {
|
|
60
|
+
const PreviewCard = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
62
61
|
let {
|
|
63
62
|
tag,
|
|
64
63
|
title,
|
|
@@ -130,7 +130,7 @@ const selectStrikeThroughTokens = _ref13 => {
|
|
|
130
130
|
strikeThroughColor
|
|
131
131
|
};
|
|
132
132
|
};
|
|
133
|
-
const PriceLockup = _ref14 => {
|
|
133
|
+
const PriceLockup = /*#__PURE__*/React.forwardRef((_ref14, ref) => {
|
|
134
134
|
let {
|
|
135
135
|
size = 'medium',
|
|
136
136
|
signDirection = 'left',
|
|
@@ -252,6 +252,7 @@ const PriceLockup = _ref14 => {
|
|
|
252
252
|
}
|
|
253
253
|
return /*#__PURE__*/_jsxs(PriceLockupContainer, {
|
|
254
254
|
...selectProps(rest),
|
|
255
|
+
ref: ref,
|
|
255
256
|
children: [topText && /*#__PURE__*/_jsx(TopTextContainer, {
|
|
256
257
|
topTextMarginBottom: `${topTextMarginBottom}px`,
|
|
257
258
|
children: renderTypography(topText, typographyTokens.topText)
|
|
@@ -263,7 +264,8 @@ const PriceLockup = _ref14 => {
|
|
|
263
264
|
}
|
|
264
265
|
}), bottomText && renderFootnoteContent()]
|
|
265
266
|
});
|
|
266
|
-
};
|
|
267
|
+
});
|
|
268
|
+
PriceLockup.displayName = 'PriceLockup';
|
|
267
269
|
PriceLockup.propTypes = {
|
|
268
270
|
...selectedSystemPropTypes,
|
|
269
271
|
/**
|
|
@@ -44,7 +44,7 @@ const Gradient = /*#__PURE__*/styled.div.attrs({
|
|
|
44
44
|
* `gradient` is being used here to provide gradient filling.
|
|
45
45
|
*
|
|
46
46
|
*/
|
|
47
|
-
const ProgressBar = _ref2 => {
|
|
47
|
+
const ProgressBar = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
48
48
|
let {
|
|
49
49
|
percentage,
|
|
50
50
|
tokens,
|
|
@@ -57,13 +57,15 @@ const ProgressBar = _ref2 => {
|
|
|
57
57
|
percentage: percentage,
|
|
58
58
|
tokens: tokens,
|
|
59
59
|
variant: variant,
|
|
60
|
+
ref: ref,
|
|
60
61
|
...selectedProps,
|
|
61
62
|
children: themeTokens.gradient && /*#__PURE__*/_jsx(Gradient, {
|
|
62
63
|
...themeTokens,
|
|
63
64
|
percentage: percentage
|
|
64
65
|
})
|
|
65
66
|
});
|
|
66
|
-
};
|
|
67
|
+
});
|
|
68
|
+
ProgressBar.displayName = 'ProgressBar';
|
|
67
69
|
ProgressBar.propTypes = {
|
|
68
70
|
...selectedSystemPropTypes,
|
|
69
71
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import { Box, TextInput, Spacer, Feedback, InputLabel, useInputValue, useCopy, useThemeTokensCallback } from '@telus-uds/components-base';
|
|
3
|
+
import { Box, TextInput, Spacer, Feedback, InputLabel, useInputValue, useCopy, useThemeTokensCallback, getTokensPropType, selectSystemProps, a11yProps } from '@telus-uds/components-base';
|
|
4
|
+
import { htmlAttrs } from '../utils';
|
|
4
5
|
import { InputField, InputWrapper } from './styles';
|
|
5
6
|
import defaultDictionary from './dictionary';
|
|
6
7
|
import SideButton from './SideButton';
|
|
@@ -12,29 +13,33 @@ const {
|
|
|
12
13
|
const isNumber = value => {
|
|
13
14
|
return typeof value === 'number' && !isNaN(value);
|
|
14
15
|
};
|
|
15
|
-
const
|
|
16
|
+
const [selectProps, selectedSystemPropTypes] = selectSystemProps([a11yProps, htmlAttrs]);
|
|
17
|
+
const QuantitySelector = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
16
18
|
let {
|
|
17
|
-
id,
|
|
19
|
+
id = 'quantity-selector',
|
|
18
20
|
minNumber,
|
|
19
21
|
maxNumber,
|
|
20
22
|
defaultValue,
|
|
21
23
|
value,
|
|
22
24
|
label,
|
|
23
25
|
hint,
|
|
24
|
-
hintPosition,
|
|
26
|
+
hintPosition = 'inline',
|
|
25
27
|
tooltip,
|
|
26
28
|
onChange,
|
|
27
29
|
dictionary = defaultDictionary,
|
|
28
30
|
accessibilityLabel,
|
|
29
|
-
copy,
|
|
30
|
-
variant
|
|
31
|
+
copy = 'en',
|
|
32
|
+
variant = {
|
|
33
|
+
alternative: false
|
|
34
|
+
},
|
|
31
35
|
tokens,
|
|
32
|
-
testID
|
|
36
|
+
testID = 'quantity-selector-testid',
|
|
37
|
+
...rest
|
|
33
38
|
} = _ref;
|
|
34
39
|
const {
|
|
35
40
|
disabled
|
|
36
41
|
} = variant;
|
|
37
|
-
const [error, setError] = useState('');
|
|
42
|
+
const [error, setError] = React.useState('');
|
|
38
43
|
const getCopy = useCopy({
|
|
39
44
|
dictionary,
|
|
40
45
|
copy
|
|
@@ -93,12 +98,12 @@ const QuantitySelector = _ref => {
|
|
|
93
98
|
inputBorderColor,
|
|
94
99
|
textColor,
|
|
95
100
|
inputBackgroundColor,
|
|
96
|
-
...
|
|
101
|
+
...restOfTokens
|
|
97
102
|
} = getTokens({
|
|
98
103
|
...textInputState
|
|
99
104
|
});
|
|
100
105
|
return {
|
|
101
|
-
...
|
|
106
|
+
...restOfTokens,
|
|
102
107
|
order: 1,
|
|
103
108
|
borderWidth: inputBorderWidth,
|
|
104
109
|
backgroundColor: inputBackgroundColor,
|
|
@@ -124,8 +129,9 @@ const QuantitySelector = _ref => {
|
|
|
124
129
|
order
|
|
125
130
|
});
|
|
126
131
|
return /*#__PURE__*/_jsxs(Box, {
|
|
127
|
-
space: 2,
|
|
128
132
|
testID: testID,
|
|
133
|
+
ref: ref,
|
|
134
|
+
...selectProps(rest),
|
|
129
135
|
children: [renderLabel(), /*#__PURE__*/_jsx(Spacer, {
|
|
130
136
|
space: 2
|
|
131
137
|
}), /*#__PURE__*/_jsxs(InputWrapper, {
|
|
@@ -168,7 +174,7 @@ const QuantitySelector = _ref => {
|
|
|
168
174
|
})
|
|
169
175
|
}) : null]
|
|
170
176
|
});
|
|
171
|
-
};
|
|
177
|
+
});
|
|
172
178
|
|
|
173
179
|
// If a language dictionary entry is provided, it must contain every key
|
|
174
180
|
const dictionaryContentShape = PropTypes.shape({
|
|
@@ -183,7 +189,9 @@ const dictionaryContentShape = PropTypes.shape({
|
|
|
183
189
|
invalidCharacters: PropTypes.string.isRequired
|
|
184
190
|
}).isRequired
|
|
185
191
|
});
|
|
192
|
+
QuantitySelector.displayName = 'QuantitySelector';
|
|
186
193
|
QuantitySelector.propTypes = {
|
|
194
|
+
...selectedSystemPropTypes,
|
|
187
195
|
/**
|
|
188
196
|
* The id of the input field
|
|
189
197
|
*/
|
|
@@ -244,19 +252,10 @@ QuantitySelector.propTypes = {
|
|
|
244
252
|
alternative: PropTypes.bool,
|
|
245
253
|
disabled: PropTypes.bool
|
|
246
254
|
}),
|
|
247
|
-
tokens:
|
|
255
|
+
tokens: getTokensPropType('QuantitySelector'),
|
|
248
256
|
/**
|
|
249
257
|
* Sets `data-testid` attribute on the input field for testing purposes.
|
|
250
258
|
*/
|
|
251
259
|
testID: PropTypes.string
|
|
252
260
|
};
|
|
253
|
-
QuantitySelector.defaultProps = {
|
|
254
|
-
id: 'quantity-selector',
|
|
255
|
-
hintPosition: 'inline',
|
|
256
|
-
copy: 'en',
|
|
257
|
-
variant: {
|
|
258
|
-
alternative: false
|
|
259
|
-
},
|
|
260
|
-
testID: 'quantity-selector-testid'
|
|
261
|
-
};
|
|
262
261
|
export default QuantitySelector;
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { IconButton, useThemeTokensCallback } from '@telus-uds/components-base';
|
|
1
|
+
import { IconButton, getTokensPropType, useThemeTokensCallback } from '@telus-uds/components-base';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
5
|
-
const SideButton = _ref => {
|
|
5
|
+
const SideButton = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
6
6
|
let {
|
|
7
|
-
isEnabled,
|
|
8
|
-
onPress,
|
|
9
|
-
onDoubleClick,
|
|
10
|
-
accessibilityLabel,
|
|
11
|
-
accessibilityDisabled,
|
|
12
|
-
tokens,
|
|
13
|
-
variant
|
|
7
|
+
isEnabled = true,
|
|
8
|
+
onPress = () => {},
|
|
9
|
+
onDoubleClick = () => {},
|
|
10
|
+
accessibilityLabel = '',
|
|
11
|
+
accessibilityDisabled = false,
|
|
12
|
+
tokens = {},
|
|
13
|
+
variant = {}
|
|
14
14
|
} = _ref;
|
|
15
15
|
const getTokens = useThemeTokensCallback('QuantitySelectorSideButton', tokens, variant);
|
|
16
16
|
const getButtonTokens = _ref2 => {
|
|
@@ -53,26 +53,18 @@ const SideButton = _ref => {
|
|
|
53
53
|
onPress: onPress,
|
|
54
54
|
onDoubleClick: onDoubleClick,
|
|
55
55
|
accessibilityLabel: accessibilityLabel,
|
|
56
|
-
accessibilityDisabled: accessibilityDisabled
|
|
56
|
+
accessibilityDisabled: accessibilityDisabled,
|
|
57
|
+
ref: ref
|
|
57
58
|
});
|
|
58
|
-
};
|
|
59
|
+
});
|
|
59
60
|
SideButton.displayName = 'QuantitySelectorSideButton';
|
|
60
|
-
SideButton.defaultProps = {
|
|
61
|
-
isEnabled: true,
|
|
62
|
-
onPress: () => {},
|
|
63
|
-
onDoubleClick: () => {},
|
|
64
|
-
accessibilityLabel: '',
|
|
65
|
-
accessibilityDisabled: false,
|
|
66
|
-
tokens: {},
|
|
67
|
-
variant: {}
|
|
68
|
-
};
|
|
69
61
|
SideButton.propTypes = {
|
|
70
62
|
isEnabled: PropTypes.bool,
|
|
71
63
|
onPress: PropTypes.func,
|
|
72
64
|
onDoubleClick: PropTypes.func,
|
|
73
65
|
accessibilityLabel: PropTypes.string,
|
|
74
66
|
accessibilityDisabled: PropTypes.bool,
|
|
75
|
-
tokens:
|
|
67
|
+
tokens: getTokensPropType('QuantitySelectorSideButton'),
|
|
76
68
|
variant: PropTypes.object
|
|
77
69
|
};
|
|
78
70
|
export default SideButton;
|
|
@@ -16,7 +16,7 @@ const staticStyles = {
|
|
|
16
16
|
/**
|
|
17
17
|
* Provide different image sources for different screen sizes.
|
|
18
18
|
*/
|
|
19
|
-
const ResponsiveImage = _ref => {
|
|
19
|
+
const ResponsiveImage = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
20
20
|
let {
|
|
21
21
|
xsSrc,
|
|
22
22
|
smSrc,
|
|
@@ -30,6 +30,7 @@ const ResponsiveImage = _ref => {
|
|
|
30
30
|
} = _ref;
|
|
31
31
|
return /*#__PURE__*/_jsxs("picture", {
|
|
32
32
|
...selectProps(rest),
|
|
33
|
+
ref: ref,
|
|
33
34
|
children: [/*#__PURE__*/_jsx("source", {
|
|
34
35
|
srcSet: xlSrc,
|
|
35
36
|
media: `(min-width: ${viewports.map.get(viewports.xl)}px)`
|
|
@@ -52,7 +53,8 @@ const ResponsiveImage = _ref => {
|
|
|
52
53
|
loading: loading
|
|
53
54
|
})]
|
|
54
55
|
});
|
|
55
|
-
};
|
|
56
|
+
});
|
|
57
|
+
ResponsiveImage.displayName = 'ResponsiveImage';
|
|
56
58
|
ResponsiveImage.propTypes = {
|
|
57
59
|
...selectedSystemPropTypes,
|
|
58
60
|
/**
|
|
@@ -105,7 +105,7 @@ const RibbonCurve = /*#__PURE__*/styled.div.withConfig({
|
|
|
105
105
|
} = _ref17;
|
|
106
106
|
return curveAfterWidth;
|
|
107
107
|
});
|
|
108
|
-
const Ribbon = _ref18 => {
|
|
108
|
+
const Ribbon = /*#__PURE__*/React.forwardRef((_ref18, ref) => {
|
|
109
109
|
let {
|
|
110
110
|
children,
|
|
111
111
|
tokens,
|
|
@@ -161,6 +161,7 @@ const Ribbon = _ref18 => {
|
|
|
161
161
|
left: left,
|
|
162
162
|
top: top,
|
|
163
163
|
"data-testid": "ribbon-wrapper",
|
|
164
|
+
ref: ref,
|
|
164
165
|
...selectProps(rest),
|
|
165
166
|
children: [/*#__PURE__*/_jsx(RibbonContainer, {
|
|
166
167
|
shouldWrap: shouldWrap,
|
|
@@ -197,7 +198,8 @@ const Ribbon = _ref18 => {
|
|
|
197
198
|
curveAfterBackgroundColor: curveAfterBackgroundColor
|
|
198
199
|
})]
|
|
199
200
|
});
|
|
200
|
-
};
|
|
201
|
+
});
|
|
202
|
+
Ribbon.displayName = 'Ribbon';
|
|
201
203
|
Ribbon.propTypes = {
|
|
202
204
|
...selectedSystemPropTypes,
|
|
203
205
|
tokens: getTokensPropType('Ribbon'),
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { Skeleton } from '@telus-uds/components-base';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
-
const SkeletonImage = _ref => {
|
|
6
|
+
const SkeletonImage = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
7
7
|
let {
|
|
8
8
|
rounded,
|
|
9
9
|
imgHeight,
|
|
@@ -22,9 +22,11 @@ const SkeletonImage = _ref => {
|
|
|
22
22
|
size: size,
|
|
23
23
|
sizePixels: sizePixels,
|
|
24
24
|
sizeIndex: sizeIndex,
|
|
25
|
-
shape: shape
|
|
25
|
+
shape: shape,
|
|
26
|
+
ref: ref
|
|
26
27
|
});
|
|
27
|
-
};
|
|
28
|
+
});
|
|
29
|
+
SkeletonImage.displayName = 'SkeletonImage';
|
|
28
30
|
SkeletonImage.propTypes = {
|
|
29
31
|
imgHeight: PropTypes.number,
|
|
30
32
|
rounded: PropTypes.oneOf(['circle', 'corners']),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React
|
|
1
|
+
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { Typography } from '@telus-uds/components-base';
|
|
4
4
|
import Image from '../Image';
|
|
@@ -24,7 +24,7 @@ const SkeletonProvider = _ref => {
|
|
|
24
24
|
children: elementChildren
|
|
25
25
|
} = childElement.props;
|
|
26
26
|
const mappedChildren = Array.isArray(elementChildren) ? elementChildren.map(mapChild) : mapChild(elementChildren);
|
|
27
|
-
childElement = /*#__PURE__*/cloneElement(childElement, {
|
|
27
|
+
childElement = /*#__PURE__*/React.cloneElement(childElement, {
|
|
28
28
|
children: mappedChildren
|
|
29
29
|
});
|
|
30
30
|
}
|
|
@@ -47,7 +47,7 @@ const SkeletonProvider = _ref => {
|
|
|
47
47
|
return childElement;
|
|
48
48
|
};
|
|
49
49
|
return /*#__PURE__*/_jsx(_Fragment, {
|
|
50
|
-
children: Children.map(children, mapChild)
|
|
50
|
+
children: React.Children.map(children, mapChild)
|
|
51
51
|
});
|
|
52
52
|
};
|
|
53
53
|
SkeletonProvider.propTypes = {
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { Skeleton } from '@telus-uds/components-base';
|
|
5
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
-
const SkeletonTypography = _ref => {
|
|
6
|
+
const SkeletonTypography = /*#__PURE__*/React.forwardRef((_ref, ref) => {
|
|
7
7
|
let {
|
|
8
8
|
show,
|
|
9
9
|
size,
|
|
@@ -21,9 +21,11 @@ const SkeletonTypography = _ref => {
|
|
|
21
21
|
sizeIndex: sizeIndex,
|
|
22
22
|
sizePixels: sizePixels,
|
|
23
23
|
characters: characters,
|
|
24
|
-
lines: lines
|
|
24
|
+
lines: lines,
|
|
25
|
+
ref: ref
|
|
25
26
|
});
|
|
26
|
-
};
|
|
27
|
+
});
|
|
28
|
+
SkeletonTypography.displayName = 'SkeletonTypography';
|
|
27
29
|
SkeletonTypography.propTypes = {
|
|
28
30
|
show: PropTypes.bool.isRequired,
|
|
29
31
|
children: PropTypes.node,
|
package/lib-module/Span/Span.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import styled from 'styled-components';
|
|
4
|
-
import { selectSystemProps } from '@telus-uds/components-base';
|
|
4
|
+
import { getTokensPropType, selectSystemProps } from '@telus-uds/components-base';
|
|
5
5
|
import { htmlAttrs, useTypographyTheme } from '../utils';
|
|
6
6
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
7
7
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
@@ -21,7 +21,7 @@ const StyledSpan = /*#__PURE__*/styled.span.withConfig({
|
|
|
21
21
|
* Span may be used in cases where an inline span or direct access to HTML attributes is required.
|
|
22
22
|
* In most cases, `Typography` should be used for text, or Paragraph for body text.
|
|
23
23
|
*/
|
|
24
|
-
const Span = _ref2 => {
|
|
24
|
+
const Span = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
25
25
|
let {
|
|
26
26
|
children,
|
|
27
27
|
variant,
|
|
@@ -35,10 +35,12 @@ const Span = _ref2 => {
|
|
|
35
35
|
"data-testid": testID,
|
|
36
36
|
flex: flex,
|
|
37
37
|
style: style,
|
|
38
|
+
ref: ref,
|
|
38
39
|
...selectProps(rest),
|
|
39
40
|
children: children
|
|
40
41
|
});
|
|
41
|
-
};
|
|
42
|
+
});
|
|
43
|
+
Span.displayName = 'Span';
|
|
42
44
|
Span.propTypes = {
|
|
43
45
|
...selectedSystemPropTypes,
|
|
44
46
|
children: PropTypes.node.isRequired,
|
|
@@ -54,7 +56,7 @@ Span.propTypes = {
|
|
|
54
56
|
/**
|
|
55
57
|
* Span takes the same tokens overrides as Typography
|
|
56
58
|
*/
|
|
57
|
-
tokens:
|
|
59
|
+
tokens: getTokensPropType('Typography'),
|
|
58
60
|
/**
|
|
59
61
|
* Span can take any of Typography's theme variants
|
|
60
62
|
*/
|
|
@@ -78,7 +78,7 @@ const recursiveMap = (children, fn) => React.Children.map(children, child => {
|
|
|
78
78
|
/**
|
|
79
79
|
* Loading indicator.
|
|
80
80
|
*/
|
|
81
|
-
const Spinner = _ref3 => {
|
|
81
|
+
const Spinner = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
82
82
|
let {
|
|
83
83
|
children,
|
|
84
84
|
fullScreen = false,
|
|
@@ -159,6 +159,7 @@ const Spinner = _ref3 => {
|
|
|
159
159
|
|
|
160
160
|
// Standalone spinner
|
|
161
161
|
return /*#__PURE__*/_jsx(SpinnerContainer, {
|
|
162
|
+
ref: ref,
|
|
162
163
|
...selectProps(rest),
|
|
163
164
|
children: /*#__PURE__*/_jsx(SpinnerContent, {
|
|
164
165
|
label: label,
|
|
@@ -169,7 +170,8 @@ const Spinner = _ref3 => {
|
|
|
169
170
|
isStatic: isStatic
|
|
170
171
|
})
|
|
171
172
|
});
|
|
172
|
-
};
|
|
173
|
+
});
|
|
174
|
+
Spinner.displayName = 'Spinner';
|
|
173
175
|
Spinner.propTypes = {
|
|
174
176
|
...selectedSystemPropTypes,
|
|
175
177
|
tokens: getTokensPropType('Spinner'),
|
|
@@ -27,7 +27,7 @@ const Container = /*#__PURE__*/styled.div.withConfig({
|
|
|
27
27
|
})
|
|
28
28
|
};
|
|
29
29
|
});
|
|
30
|
-
const SpinnerContent = _ref2 => {
|
|
30
|
+
const SpinnerContent = /*#__PURE__*/React.forwardRef((_ref2, ref) => {
|
|
31
31
|
let {
|
|
32
32
|
label,
|
|
33
33
|
labelPosition,
|
|
@@ -46,6 +46,7 @@ const SpinnerContent = _ref2 => {
|
|
|
46
46
|
};
|
|
47
47
|
return /*#__PURE__*/_jsx(Container, {
|
|
48
48
|
overlay: overlay,
|
|
49
|
+
ref: ref,
|
|
49
50
|
children: /*#__PURE__*/_jsxs(StackView, {
|
|
50
51
|
space: 3,
|
|
51
52
|
tokens: {
|
|
@@ -65,7 +66,8 @@ const SpinnerContent = _ref2 => {
|
|
|
65
66
|
})]
|
|
66
67
|
})
|
|
67
68
|
});
|
|
68
|
-
};
|
|
69
|
+
});
|
|
70
|
+
SpinnerContent.displayName = 'SpinnerContent';
|
|
69
71
|
SpinnerContent.propTypes = {
|
|
70
72
|
...selectedSystemPropTypes,
|
|
71
73
|
/**
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
import React, { forwardRef } from 'react';
|
|
1
|
+
import React from 'react';
|
|
3
2
|
import PropTypes from 'prop-types';
|
|
4
3
|
import { Box, Divider, PressableCardBase, selectSystemProps, Spacer, StackView, StackWrap, Typography, hrefAttrsProp, a11yProps, focusHandlerProps, viewProps, withLinkRouter, useThemeTokens, useThemeTokensCallback, getTokensPropType } from '@telus-uds/components-base';
|
|
5
4
|
import styled from 'styled-components';
|
|
@@ -48,7 +47,7 @@ const FullBleedOffsetInner = /*#__PURE__*/styled.div.withConfig({
|
|
|
48
47
|
* - Use `href` to set the target URL
|
|
49
48
|
* - Use `fullBleedContent` to set the thumbnail image
|
|
50
49
|
*/
|
|
51
|
-
const StoryCard = /*#__PURE__*/forwardRef((_ref3, ref) => {
|
|
50
|
+
const StoryCard = /*#__PURE__*/React.forwardRef((_ref3, ref) => {
|
|
52
51
|
let {
|
|
53
52
|
tag,
|
|
54
53
|
date,
|