@telus-uds/components-web 3.2.0 → 3.3.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 +31 -2
- package/lib/Badge/Badge.js +19 -11
- package/lib/BlockQuote/BlockQuote.js +31 -17
- package/lib/Breadcrumbs/Breadcrumbs.js +23 -17
- package/lib/Breadcrumbs/Item/Item.js +6 -10
- package/lib/Callout/Callout.js +5 -6
- package/lib/Card/Card.js +5 -5
- package/lib/Card/CardContent.js +5 -6
- package/lib/Card/CardFooter.js +5 -6
- package/lib/Countdown/Countdown.js +5 -6
- package/lib/Countdown/Segment.js +6 -6
- package/lib/DatePicker/CalendarContainer.js +5 -5
- package/lib/DatePicker/DatePicker.js +26 -28
- package/lib/DatePicker/reactDatesCss.js +829 -2
- package/lib/Disclaimer/Disclaimer.js +5 -6
- package/lib/Footnote/Footnote.js +15 -39
- package/lib/Footnote/FootnoteLink.js +5 -6
- package/lib/NavigationBar/NavigationBar.js +5 -6
- package/lib/NavigationBar/NavigationItem.js +5 -6
- package/lib/OrderedList/Item.js +7 -11
- package/lib/OrderedList/ItemBase.js +5 -5
- package/lib/OrderedList/OrderedList.js +5 -6
- package/lib/OrderedList/OrderedListBase.js +5 -5
- package/lib/Paragraph/Paragraph.js +16 -8
- package/lib/PreviewCard/PreviewCard.js +7 -10
- package/lib/PriceLockup/PriceLockup.js +90 -64
- package/lib/PriceLockup/tokens.js +6 -2
- package/lib/Progress/ProgressBar.js +6 -6
- package/lib/QuantitySelector/styles.js +18 -9
- package/lib/Ribbon/Ribbon.js +57 -31
- package/lib/Span/Span.js +6 -7
- package/lib/Spinner/Spinner.js +8 -18
- package/lib/Spinner/SpinnerContent.js +5 -6
- package/lib/StoryCard/StoryCard.js +7 -10
- package/lib/Table/Cell.js +43 -12
- package/lib/Table/Table.js +15 -11
- package/lib/TermsAndConditions/ExpandCollapse.js +7 -13
- package/lib/TermsAndConditions/TermsAndConditions.js +9 -22
- package/lib/Testimonial/Testimonial.js +10 -26
- package/lib/Toast/Toast.js +64 -13
- package/lib/Video/ControlBar/ControlBar.js +8 -18
- package/lib/Video/ControlBar/Controls/VideoButton/VideoButton.js +5 -6
- package/lib/Video/ControlBar/Controls/VideoMenu/VideoMenu.js +7 -14
- package/lib/Video/ControlBar/Controls/VideoProgressBar/VideoProgressBar.js +7 -14
- package/lib/Video/ControlBar/Controls/VolumeSlider/VolumeSlider.js +6 -10
- package/lib/Video/MiddleControlButton/MiddleControlButton.js +5 -6
- package/lib/Video/Video.js +10 -26
- package/lib/VideoPicker/VideoPicker.js +44 -20
- package/lib/VideoPicker/VideoPickerThumbnail.js +52 -18
- package/lib/WaffleGrid/WaffleGrid.js +7 -14
- package/lib/WebVideo/WebVideo.js +9 -14
- package/lib/index.js +1 -1
- package/lib/shared/FullBleedContent/FullBleedContent.js +5 -5
- package/lib/shared/VideoSplash/SplashButton/SplashButton.js +6 -9
- package/lib/shared/VideoSplash/SplashButtonWithDetails/SplashButtonWithDetails.js +8 -17
- package/lib/shared/VideoSplash/VideoSplash.js +5 -6
- package/lib/utils/index.js +2 -1
- package/lib/utils/ssr.js +4 -1
- package/lib/utils/theming/styled-components.js +26 -0
- package/package.json +3 -3
- package/src/Badge/Badge.jsx +3 -2
- package/src/BlockQuote/BlockQuote.jsx +3 -2
- package/src/Breadcrumbs/Breadcrumbs.jsx +23 -13
- package/src/Breadcrumbs/Item/Item.jsx +3 -2
- package/src/Callout/Callout.jsx +3 -2
- package/src/Card/Card.jsx +3 -1
- package/src/Card/CardContent.jsx +3 -2
- package/src/Card/CardFooter.jsx +3 -2
- package/src/Countdown/Countdown.jsx +3 -2
- package/src/Countdown/Segment.jsx +3 -1
- package/src/DatePicker/CalendarContainer.jsx +3 -1
- package/src/DatePicker/DatePicker.jsx +22 -13
- package/src/DatePicker/reactDatesCss.js +3 -1
- package/src/Disclaimer/Disclaimer.jsx +3 -2
- package/src/Footnote/Footnote.jsx +9 -2
- package/src/Footnote/FootnoteLink.jsx +3 -2
- package/src/NavigationBar/NavigationBar.jsx +3 -2
- package/src/NavigationBar/NavigationItem.jsx +3 -2
- package/src/OrderedList/Item.jsx +4 -3
- package/src/OrderedList/ItemBase.jsx +3 -1
- package/src/OrderedList/OrderedList.jsx +3 -2
- package/src/OrderedList/OrderedListBase.jsx +3 -1
- package/src/Paragraph/Paragraph.jsx +3 -2
- package/src/PreviewCard/PreviewCard.jsx +3 -1
- package/src/PriceLockup/PriceLockup.jsx +15 -4
- package/src/PriceLockup/tokens.js +15 -3
- package/src/Progress/ProgressBar.jsx +3 -1
- package/src/QuantitySelector/styles.js +3 -1
- package/src/Ribbon/Ribbon.jsx +3 -2
- package/src/Span/Span.jsx +3 -2
- package/src/Spinner/Spinner.jsx +3 -2
- package/src/Spinner/SpinnerContent.jsx +3 -2
- package/src/StoryCard/StoryCard.jsx +3 -1
- package/src/Table/Cell.jsx +3 -1
- package/src/Table/Table.jsx +3 -2
- package/src/TermsAndConditions/ExpandCollapse.jsx +3 -1
- package/src/TermsAndConditions/TermsAndConditions.jsx +3 -2
- package/src/Testimonial/Testimonial.jsx +3 -2
- package/src/Toast/Toast.jsx +3 -2
- package/src/Video/ControlBar/ControlBar.jsx +3 -3
- package/src/Video/ControlBar/Controls/VideoButton/VideoButton.jsx +4 -3
- package/src/Video/ControlBar/Controls/VideoMenu/VideoMenu.jsx +3 -3
- package/src/Video/ControlBar/Controls/VideoProgressBar/VideoProgressBar.jsx +3 -3
- package/src/Video/ControlBar/Controls/VolumeSlider/VolumeSlider.jsx +3 -3
- package/src/Video/MiddleControlButton/MiddleControlButton.jsx +4 -3
- package/src/Video/Video.jsx +3 -2
- package/src/VideoPicker/VideoPicker.jsx +3 -2
- package/src/VideoPicker/VideoPickerThumbnail.jsx +3 -1
- package/src/WaffleGrid/WaffleGrid.jsx +3 -2
- package/src/WebVideo/WebVideo.jsx +4 -3
- package/src/index.js +1 -1
- package/src/shared/FullBleedContent/FullBleedContent.jsx +3 -2
- package/src/shared/VideoSplash/SplashButton/SplashButton.jsx +3 -1
- package/src/shared/VideoSplash/SplashButtonWithDetails/SplashButtonWithDetails.jsx +4 -2
- package/src/shared/VideoSplash/VideoSplash.jsx +3 -2
- package/src/utils/index.js +3 -1
- package/src/utils/ssr.js +2 -1
- package/src/utils/theming/styled-components.js +23 -0
- package/types/common.d.ts +1 -1
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { Icon, selectSystemProps, Typography, useThemeTokens, useViewport, getTokensPropType } from '@telus-uds/components-base';
|
|
5
4
|
import Image from '../Image';
|
|
6
|
-
import { htmlAttrs } from '../utils';
|
|
5
|
+
import { htmlAttrs, styledComponents } from '../utils';
|
|
7
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
const {
|
|
8
|
+
styled
|
|
9
|
+
} = styledComponents;
|
|
8
10
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
9
|
-
const TestimonialContainer =
|
|
10
|
-
displayName: "Testimonial__TestimonialContainer",
|
|
11
|
-
componentId: "components-web__sc-1az53gr-0"
|
|
12
|
-
})(_ref => {
|
|
11
|
+
const TestimonialContainer = styled.figure(_ref => {
|
|
13
12
|
let {
|
|
14
13
|
testimonialContainerGap
|
|
15
14
|
} = _ref;
|
|
@@ -20,10 +19,7 @@ const TestimonialContainer = /*#__PURE__*/styled.figure.withConfig({
|
|
|
20
19
|
margin: 0
|
|
21
20
|
};
|
|
22
21
|
});
|
|
23
|
-
const QuoteContainer =
|
|
24
|
-
displayName: "Testimonial__QuoteContainer",
|
|
25
|
-
componentId: "components-web__sc-1az53gr-1"
|
|
26
|
-
})(_ref2 => {
|
|
22
|
+
const QuoteContainer = styled.div(_ref2 => {
|
|
27
23
|
let {
|
|
28
24
|
quoteContainerGap
|
|
29
25
|
} = _ref2;
|
|
@@ -33,10 +29,7 @@ const QuoteContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
33
29
|
gap: quoteContainerGap
|
|
34
30
|
};
|
|
35
31
|
});
|
|
36
|
-
const Divider =
|
|
37
|
-
displayName: "Testimonial__Divider",
|
|
38
|
-
componentId: "components-web__sc-1az53gr-2"
|
|
39
|
-
})(_ref3 => {
|
|
32
|
+
const Divider = styled.div(_ref3 => {
|
|
40
33
|
let {
|
|
41
34
|
dividerBorder,
|
|
42
35
|
dividerBackgroundColor
|
|
@@ -47,23 +40,14 @@ const Divider = /*#__PURE__*/styled.div.withConfig({
|
|
|
47
40
|
width: '100%'
|
|
48
41
|
};
|
|
49
42
|
});
|
|
50
|
-
const BlockQuote =
|
|
51
|
-
displayName: "Testimonial__BlockQuote",
|
|
52
|
-
componentId: "components-web__sc-1az53gr-3"
|
|
53
|
-
})({
|
|
43
|
+
const BlockQuote = styled.blockquote({
|
|
54
44
|
margin: 0
|
|
55
45
|
});
|
|
56
|
-
const AuthorInfoContainer =
|
|
57
|
-
displayName: "Testimonial__AuthorInfoContainer",
|
|
58
|
-
componentId: "components-web__sc-1az53gr-4"
|
|
59
|
-
})({
|
|
46
|
+
const AuthorInfoContainer = styled.div({
|
|
60
47
|
display: 'flex',
|
|
61
48
|
flexDirection: 'column'
|
|
62
49
|
});
|
|
63
|
-
const Figcaption =
|
|
64
|
-
displayName: "Testimonial__Figcaption",
|
|
65
|
-
componentId: "components-web__sc-1az53gr-5"
|
|
66
|
-
})(_ref4 => {
|
|
50
|
+
const Figcaption = styled.figcaption(_ref4 => {
|
|
67
51
|
let {
|
|
68
52
|
figcaptionGap
|
|
69
53
|
} = _ref4;
|
package/lib/Toast/Toast.js
CHANGED
|
@@ -2,40 +2,91 @@ var _withLinkRouter$propT, _withLinkRouter$propT2;
|
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import PropTypes from 'prop-types';
|
|
4
4
|
import { ChevronLink, selectSystemProps, useThemeTokens, Typography, withLinkRouter, Spacer, useViewport, getTokensPropType } from '@telus-uds/components-base';
|
|
5
|
-
import
|
|
6
|
-
import { htmlAttrs } from '../utils';
|
|
5
|
+
import { htmlAttrs, styledComponents } from '../utils';
|
|
7
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
const {
|
|
8
|
+
styled,
|
|
9
|
+
css,
|
|
10
|
+
keyframes
|
|
11
|
+
} = styledComponents;
|
|
8
12
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
9
|
-
const transform = property => (from, to) => keyframes
|
|
13
|
+
const transform = property => (from, to) => keyframes`
|
|
14
|
+
from {
|
|
15
|
+
${property}: ${from};
|
|
16
|
+
}
|
|
17
|
+
to {
|
|
18
|
+
${property}: ${to};
|
|
19
|
+
}
|
|
20
|
+
`;
|
|
10
21
|
const slideDown = property => function (from, to) {
|
|
11
22
|
let end = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : to;
|
|
12
|
-
return keyframes
|
|
23
|
+
return keyframes`
|
|
24
|
+
0% {
|
|
25
|
+
${property}: ${from};
|
|
26
|
+
}
|
|
27
|
+
99% {
|
|
28
|
+
${property}: ${to};
|
|
29
|
+
}
|
|
30
|
+
100% {
|
|
31
|
+
${property}: ${end};
|
|
32
|
+
}
|
|
33
|
+
`;
|
|
13
34
|
};
|
|
14
|
-
const animation = props => css
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
35
|
+
const animation = props => css`
|
|
36
|
+
${slideDown('height')(`${props.animationHeightBefore}px`, `${props.animationHeightAfter}px`, 'auto')} 1s ease-in-out 2s forwards,
|
|
37
|
+
${transform('padding-bottom')(`${props.animationPaddingBottomBefore}px`, `${props.animationPaddingBottomAfter}px`)} 1s ease-in-out 2s forwards,
|
|
38
|
+
${transform('padding-top')(`${props.animationPaddingTopBefore}px`, `${props.animationPaddingTopAfter}px`)} 1s ease-in-out 2s forwards,
|
|
39
|
+
${transform('background')(props.animationBackgroundColorBefore, props.animationBackgroundColorAfter)} 1s ease-in-out 3.2s forwards;
|
|
40
|
+
& * {
|
|
41
|
+
animation: ${transform('color')(props.animationColorBefore, props.animationColorAfter)} 1s
|
|
42
|
+
ease-in-out 3s forwards;
|
|
43
|
+
}
|
|
44
|
+
& > a div {
|
|
45
|
+
animation: ${transform('color')(props.animationDivColorBefore, props.animationDivColorAfter)} 1s
|
|
46
|
+
ease-in-out 3s forwards;
|
|
47
|
+
}
|
|
48
|
+
& > a svg {
|
|
49
|
+
animation: ${transform('fill')(props.animationFillColorBefore, props.animationFillColorAfter)}
|
|
50
|
+
1s ease-in-out 3s forwards;
|
|
51
|
+
}
|
|
52
|
+
& > a div {
|
|
53
|
+
animation: ${transform('color')(props.animationFillColorBefore, props.animationFillColorAfter)}
|
|
54
|
+
1s ease-in-out 3s forwards;
|
|
55
|
+
}
|
|
56
|
+
`;
|
|
57
|
+
const ToastContainer = styled.div`
|
|
58
|
+
display: flex;
|
|
59
|
+
justify-content: center;
|
|
60
|
+
align-items: center;
|
|
61
|
+
flex-wrap: wrap;
|
|
62
|
+
padding-left: ${_ref => {
|
|
19
63
|
let {
|
|
20
64
|
padding
|
|
21
65
|
} = _ref;
|
|
22
66
|
return padding;
|
|
23
|
-
}
|
|
67
|
+
}}px;
|
|
68
|
+
padding-right: ${_ref2 => {
|
|
24
69
|
let {
|
|
25
70
|
padding
|
|
26
71
|
} = _ref2;
|
|
27
72
|
return padding;
|
|
28
|
-
}
|
|
73
|
+
}}px;
|
|
74
|
+
background: ${_ref3 => {
|
|
29
75
|
let {
|
|
30
76
|
containerBackgroundColor
|
|
31
77
|
} = _ref3;
|
|
32
78
|
return containerBackgroundColor;
|
|
33
|
-
}
|
|
79
|
+
}};
|
|
80
|
+
gap: ${_ref4 => {
|
|
34
81
|
let {
|
|
35
82
|
containerGap
|
|
36
83
|
} = _ref4;
|
|
37
84
|
return containerGap;
|
|
38
|
-
}
|
|
85
|
+
}};
|
|
86
|
+
height: 0;
|
|
87
|
+
overflow: hidden;
|
|
88
|
+
animation: ${animation};
|
|
89
|
+
`;
|
|
39
90
|
const Toast = /*#__PURE__*/React.forwardRef((_ref5, ref) => {
|
|
40
91
|
let {
|
|
41
92
|
toast,
|
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { StackView, useThemeTokens, selectSystemProps, Icon, useViewport } from '@telus-uds/components-base';
|
|
5
4
|
import VideoProgressBar from './Controls/VideoProgressBar/VideoProgressBar';
|
|
6
5
|
import VolumeSlider from './Controls/VolumeSlider/VolumeSlider';
|
|
7
6
|
import VideoButton from './Controls/VideoButton/VideoButton';
|
|
8
7
|
import VideoMenu from './Controls/VideoMenu/VideoMenu';
|
|
9
8
|
import videoText from '../videoText';
|
|
10
|
-
import { htmlAttrs } from '../../utils';
|
|
9
|
+
import { htmlAttrs, styledComponents } from '../../utils';
|
|
11
10
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
+
const {
|
|
12
|
+
styled
|
|
13
|
+
} = styledComponents;
|
|
12
14
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
13
15
|
const getIcon = icon => /*#__PURE__*/_jsx(Icon, {
|
|
14
16
|
icon: icon
|
|
15
17
|
});
|
|
16
|
-
const ControlBarContainer =
|
|
17
|
-
displayName: "ControlBar__ControlBarContainer",
|
|
18
|
-
componentId: "components-web__sc-13y61ky-0"
|
|
19
|
-
})(_ref => {
|
|
18
|
+
const ControlBarContainer = styled.div(_ref => {
|
|
20
19
|
let {
|
|
21
20
|
isHidden,
|
|
22
21
|
isMobile
|
|
@@ -29,10 +28,7 @@ const ControlBarContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
29
28
|
display: isMobile ? 'none' : undefined
|
|
30
29
|
};
|
|
31
30
|
});
|
|
32
|
-
const StyledControlBar =
|
|
33
|
-
displayName: "ControlBar__StyledControlBar",
|
|
34
|
-
componentId: "components-web__sc-13y61ky-1"
|
|
35
|
-
})(_ref2 => {
|
|
31
|
+
const StyledControlBar = styled.div(_ref2 => {
|
|
36
32
|
let {
|
|
37
33
|
padding,
|
|
38
34
|
height
|
|
@@ -52,17 +48,11 @@ const StyledControlBar = /*#__PURE__*/styled.div.withConfig({
|
|
|
52
48
|
zIndex: 9
|
|
53
49
|
};
|
|
54
50
|
});
|
|
55
|
-
const VideoProgressBarContainer =
|
|
56
|
-
displayName: "ControlBar__VideoProgressBarContainer",
|
|
57
|
-
componentId: "components-web__sc-13y61ky-2"
|
|
58
|
-
})({
|
|
51
|
+
const VideoProgressBarContainer = styled.div({
|
|
59
52
|
display: 'flex',
|
|
60
53
|
flexGrow: 1
|
|
61
54
|
});
|
|
62
|
-
const MenuContainer =
|
|
63
|
-
displayName: "ControlBar__MenuContainer",
|
|
64
|
-
componentId: "components-web__sc-13y61ky-3"
|
|
65
|
-
})(_ref3 => {
|
|
55
|
+
const MenuContainer = styled.div(_ref3 => {
|
|
66
56
|
let {
|
|
67
57
|
isOpen,
|
|
68
58
|
menuBottom,
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { useThemeTokens, selectSystemProps } from '@telus-uds/components-base';
|
|
5
|
-
import { htmlAttrs } from '../../../../utils';
|
|
4
|
+
import { htmlAttrs, styledComponents } from '../../../../utils';
|
|
6
5
|
import { jsxs as _jsxs } from "react/jsx-runtime";
|
|
6
|
+
const {
|
|
7
|
+
styled
|
|
8
|
+
} = styledComponents;
|
|
7
9
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
8
|
-
const StyledButton =
|
|
9
|
-
displayName: "VideoButton__StyledButton",
|
|
10
|
-
componentId: "components-web__sc-kfw0tr-0"
|
|
11
|
-
})(_ref => {
|
|
10
|
+
const StyledButton = styled.button(_ref => {
|
|
12
11
|
let {
|
|
13
12
|
color
|
|
14
13
|
} = _ref;
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { StackView, Typography, useThemeTokens, selectSystemProps, Icon } from '@telus-uds/components-base';
|
|
5
4
|
import videoText from '../../../videoText';
|
|
6
|
-
import { htmlAttrs } from '../../../../utils';
|
|
5
|
+
import { htmlAttrs, styledComponents } from '../../../../utils';
|
|
7
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
const {
|
|
8
|
+
styled
|
|
9
|
+
} = styledComponents;
|
|
8
10
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
9
|
-
const MenuContainer =
|
|
10
|
-
displayName: "VideoMenu__MenuContainer",
|
|
11
|
-
componentId: "components-web__sc-nllbhw-0"
|
|
12
|
-
})(_ref => {
|
|
11
|
+
const MenuContainer = styled.div(_ref => {
|
|
13
12
|
let {
|
|
14
13
|
padding,
|
|
15
14
|
background
|
|
@@ -21,10 +20,7 @@ const MenuContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
21
20
|
borderRadius: 5
|
|
22
21
|
};
|
|
23
22
|
});
|
|
24
|
-
const MenuButton =
|
|
25
|
-
displayName: "VideoMenu__MenuButton",
|
|
26
|
-
componentId: "components-web__sc-nllbhw-1"
|
|
27
|
-
})({
|
|
23
|
+
const MenuButton = styled.button({
|
|
28
24
|
background: 'none',
|
|
29
25
|
border: 'none',
|
|
30
26
|
padding: 0,
|
|
@@ -34,10 +30,7 @@ const MenuButton = /*#__PURE__*/styled.button.withConfig({
|
|
|
34
30
|
justifyContent: 'space-between',
|
|
35
31
|
verticalAlign: 'middle'
|
|
36
32
|
});
|
|
37
|
-
const CheckmarkContainer =
|
|
38
|
-
displayName: "VideoMenu__CheckmarkContainer",
|
|
39
|
-
componentId: "components-web__sc-nllbhw-2"
|
|
40
|
-
})(_ref2 => {
|
|
33
|
+
const CheckmarkContainer = styled.div(_ref2 => {
|
|
41
34
|
let {
|
|
42
35
|
isSelectedItem,
|
|
43
36
|
checkMarkWidth,
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { Typography, useThemeTokens, selectSystemProps } from '@telus-uds/components-base';
|
|
5
4
|
import videoText from '../../../videoText';
|
|
6
|
-
import { htmlAttrs } from '../../../../utils';
|
|
5
|
+
import { htmlAttrs, styledComponents } from '../../../../utils';
|
|
7
6
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
7
|
+
const {
|
|
8
|
+
styled
|
|
9
|
+
} = styledComponents;
|
|
8
10
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
9
|
-
const ProgressBarContainer =
|
|
10
|
-
displayName: "VideoProgressBar__ProgressBarContainer",
|
|
11
|
-
componentId: "components-web__sc-d9tm07-0"
|
|
12
|
-
})({
|
|
11
|
+
const ProgressBarContainer = styled.div({
|
|
13
12
|
display: 'flex',
|
|
14
13
|
width: '100%',
|
|
15
14
|
alignItems: 'center'
|
|
@@ -44,16 +43,13 @@ const sharedStyles = _ref => {
|
|
|
44
43
|
})
|
|
45
44
|
};
|
|
46
45
|
};
|
|
47
|
-
const StyledProgressBar =
|
|
46
|
+
const StyledProgressBar = styled.input.attrs(_ref2 => {
|
|
48
47
|
let {
|
|
49
48
|
videoCurrentTime
|
|
50
49
|
} = _ref2;
|
|
51
50
|
return {
|
|
52
51
|
value: videoCurrentTime
|
|
53
52
|
};
|
|
54
|
-
}).withConfig({
|
|
55
|
-
displayName: "VideoProgressBar__StyledProgressBar",
|
|
56
|
-
componentId: "components-web__sc-d9tm07-1"
|
|
57
53
|
})(_ref3 => {
|
|
58
54
|
let {
|
|
59
55
|
videoBufferDisplay,
|
|
@@ -97,10 +93,7 @@ const StyledProgressBar = /*#__PURE__*/styled.input.attrs(_ref2 => {
|
|
|
97
93
|
}
|
|
98
94
|
};
|
|
99
95
|
});
|
|
100
|
-
const StyledTimestamp =
|
|
101
|
-
displayName: "VideoProgressBar__StyledTimestamp",
|
|
102
|
-
componentId: "components-web__sc-d9tm07-2"
|
|
103
|
-
})(_ref4 => {
|
|
96
|
+
const StyledTimestamp = styled.span(_ref4 => {
|
|
104
97
|
let {
|
|
105
98
|
margin
|
|
106
99
|
} = _ref4;
|
|
@@ -1,16 +1,15 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { Icon, useThemeTokens, selectSystemProps } from '@telus-uds/components-base';
|
|
5
4
|
import VideoButton from '../VideoButton/VideoButton';
|
|
6
5
|
import videoText from '../../../videoText';
|
|
7
|
-
import { htmlAttrs } from '../../../../utils';
|
|
6
|
+
import { htmlAttrs, styledComponents } from '../../../../utils';
|
|
8
7
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
8
|
+
const {
|
|
9
|
+
styled
|
|
10
|
+
} = styledComponents;
|
|
9
11
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
10
|
-
const VolumeSliderContainer =
|
|
11
|
-
displayName: "VolumeSlider__VolumeSliderContainer",
|
|
12
|
-
componentId: "components-web__sc-apixz4-0"
|
|
13
|
-
})(_ref => {
|
|
12
|
+
const VolumeSliderContainer = styled.div(_ref => {
|
|
14
13
|
let {
|
|
15
14
|
videoPlayerWidth,
|
|
16
15
|
compactModeThreshold,
|
|
@@ -54,16 +53,13 @@ const sharedStyles = _ref2 => {
|
|
|
54
53
|
})
|
|
55
54
|
};
|
|
56
55
|
};
|
|
57
|
-
const StyledVolumeSlider =
|
|
56
|
+
const StyledVolumeSlider = styled.input.attrs(_ref3 => {
|
|
58
57
|
let {
|
|
59
58
|
videoCurrentVolume
|
|
60
59
|
} = _ref3;
|
|
61
60
|
return {
|
|
62
61
|
value: videoCurrentVolume
|
|
63
62
|
};
|
|
64
|
-
}).withConfig({
|
|
65
|
-
displayName: "VolumeSlider__StyledVolumeSlider",
|
|
66
|
-
componentId: "components-web__sc-apixz4-1"
|
|
67
63
|
})(_ref4 => {
|
|
68
64
|
let {
|
|
69
65
|
videoCurrentVolume,
|
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import { useThemeTokens, selectSystemProps } from '@telus-uds/components-base';
|
|
5
|
-
import { htmlAttrs } from '../../utils';
|
|
4
|
+
import { htmlAttrs, styledComponents } from '../../utils';
|
|
6
5
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
6
|
+
const {
|
|
7
|
+
styled
|
|
8
|
+
} = styledComponents;
|
|
7
9
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
8
|
-
const StyledMiddleControlButton =
|
|
9
|
-
displayName: "MiddleControlButton__StyledMiddleControlButton",
|
|
10
|
-
componentId: "components-web__sc-1um2s37-0"
|
|
11
|
-
})(_ref => {
|
|
10
|
+
const StyledMiddleControlButton = styled.button(_ref => {
|
|
12
11
|
let {
|
|
13
12
|
isHidden,
|
|
14
13
|
width,
|
package/lib/Video/Video.js
CHANGED
|
@@ -1,22 +1,21 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
|
-
import styled from 'styled-components';
|
|
4
3
|
import fscreen from 'fscreen';
|
|
5
4
|
import { useThemeTokens, selectSystemProps, getTokensPropType, variantProp } from '@telus-uds/components-base';
|
|
6
5
|
import Spinner from '../Spinner';
|
|
7
|
-
import { warn, htmlAttrs } from '../utils';
|
|
6
|
+
import { warn, htmlAttrs, styledComponents } from '../utils';
|
|
8
7
|
import VideoSplash from '../shared/VideoSplash/VideoSplash';
|
|
9
8
|
import MiddleControlButton from './MiddleControlButton/MiddleControlButton';
|
|
10
9
|
import ControlBar from './ControlBar/ControlBar';
|
|
11
10
|
import videoText from './videoText';
|
|
12
11
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
12
|
+
const {
|
|
13
|
+
styled
|
|
14
|
+
} = styledComponents;
|
|
13
15
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
14
16
|
|
|
15
17
|
// TODO: replace with the actual spinner component from UDS
|
|
16
|
-
const VideoPlayerContainer =
|
|
17
|
-
displayName: "Video__VideoPlayerContainer",
|
|
18
|
-
componentId: "components-web__sc-12ltnuw-0"
|
|
19
|
-
})(_ref => {
|
|
18
|
+
const VideoPlayerContainer = styled.div(_ref => {
|
|
20
19
|
let {
|
|
21
20
|
videoBorder,
|
|
22
21
|
borderColor
|
|
@@ -28,26 +27,17 @@ const VideoPlayerContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
28
27
|
border: videoBorder ? `20px solid ${borderColor}` : undefined
|
|
29
28
|
};
|
|
30
29
|
});
|
|
31
|
-
const VideoElementContainer =
|
|
32
|
-
displayName: "Video__VideoElementContainer",
|
|
33
|
-
componentId: "components-web__sc-12ltnuw-1"
|
|
34
|
-
})({
|
|
30
|
+
const VideoElementContainer = styled.div({
|
|
35
31
|
outline: 'none',
|
|
36
32
|
width: '100%',
|
|
37
33
|
height: '100%',
|
|
38
34
|
fontSize: 0
|
|
39
35
|
});
|
|
40
|
-
const VideoPlayer =
|
|
41
|
-
displayName: "Video__VideoPlayer",
|
|
42
|
-
componentId: "components-web__sc-12ltnuw-2"
|
|
43
|
-
})({
|
|
36
|
+
const VideoPlayer = styled.video({
|
|
44
37
|
width: '100%',
|
|
45
38
|
height: '100%'
|
|
46
39
|
});
|
|
47
|
-
const VideoOverlayContainer =
|
|
48
|
-
displayName: "Video__VideoOverlayContainer",
|
|
49
|
-
componentId: "components-web__sc-12ltnuw-3"
|
|
50
|
-
})(_ref2 => {
|
|
40
|
+
const VideoOverlayContainer = styled.div(_ref2 => {
|
|
51
41
|
let {
|
|
52
42
|
mouseInactive
|
|
53
43
|
} = _ref2;
|
|
@@ -58,19 +48,13 @@ const VideoOverlayContainer = /*#__PURE__*/styled.div.withConfig({
|
|
|
58
48
|
cursor: mouseInactive ? 'none' : 'pointer'
|
|
59
49
|
};
|
|
60
50
|
});
|
|
61
|
-
const VideoSplashContainer =
|
|
62
|
-
displayName: "Video__VideoSplashContainer",
|
|
63
|
-
componentId: "components-web__sc-12ltnuw-4"
|
|
64
|
-
})({
|
|
51
|
+
const VideoSplashContainer = styled.div({
|
|
65
52
|
position: 'absolute',
|
|
66
53
|
width: '100%',
|
|
67
54
|
height: '100%',
|
|
68
55
|
zIndex: 5
|
|
69
56
|
});
|
|
70
|
-
const VideoOverlayElementContainer =
|
|
71
|
-
displayName: "Video__VideoOverlayElementContainer",
|
|
72
|
-
componentId: "components-web__sc-12ltnuw-5"
|
|
73
|
-
})({
|
|
57
|
+
const VideoOverlayElementContainer = styled.div({
|
|
74
58
|
position: 'absolute',
|
|
75
59
|
zIndex: 4,
|
|
76
60
|
display: 'flex',
|
|
@@ -2,13 +2,16 @@ import React from 'react';
|
|
|
2
2
|
import PropTypes from 'prop-types';
|
|
3
3
|
import { viewports } from '@telus-uds/system-constants';
|
|
4
4
|
import { selectSystemProps, StackView, useThemeTokens, useViewport, getTokensPropType } from '@telus-uds/components-base';
|
|
5
|
-
import styled, { css } from 'styled-components';
|
|
6
5
|
import { VideoPropType } from './videoPropType';
|
|
7
6
|
import VideoPickerThumbnail from './VideoPickerThumbnail';
|
|
8
7
|
import VideoPickerPlayer from './VideoPickerPlayer';
|
|
9
8
|
import VideoSlider from './VideoSlider';
|
|
10
|
-
import { htmlAttrs } from '../utils';
|
|
9
|
+
import { htmlAttrs, styledComponents } from '../utils';
|
|
11
10
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
11
|
+
const {
|
|
12
|
+
styled,
|
|
13
|
+
css
|
|
14
|
+
} = styledComponents;
|
|
12
15
|
const [selectProps, selectedSystemPropTypes] = selectSystemProps([htmlAttrs]);
|
|
13
16
|
const framedContainerStyles = _ref => {
|
|
14
17
|
let {
|
|
@@ -18,45 +21,66 @@ const framedContainerStyles = _ref => {
|
|
|
18
21
|
framedContainerBorderRadius,
|
|
19
22
|
framedMaxHeight
|
|
20
23
|
} = _ref;
|
|
21
|
-
return css
|
|
24
|
+
return css`
|
|
25
|
+
background-color: ${framedContainerBackgroundColor};
|
|
26
|
+
border: ${framedContainerBorderWidth}px solid ${framedContainerBorderColor};
|
|
27
|
+
border-radius: ${framedContainerBorderRadius}px;
|
|
28
|
+
|
|
29
|
+
& > div {
|
|
30
|
+
max-height: ${framedMaxHeight}px;
|
|
31
|
+
}
|
|
32
|
+
`;
|
|
22
33
|
};
|
|
23
|
-
const VideoPickerContainer =
|
|
24
|
-
|
|
25
|
-
componentId: "components-web__sc-x6lxp0-0"
|
|
26
|
-
})(["", ""], _ref2 => {
|
|
34
|
+
const VideoPickerContainer = styled.div`
|
|
35
|
+
${_ref2 => {
|
|
27
36
|
let {
|
|
28
37
|
isFramed,
|
|
29
38
|
...tokens
|
|
30
39
|
} = _ref2;
|
|
31
40
|
return isFramed && framedContainerStyles(tokens);
|
|
32
|
-
}
|
|
41
|
+
}}
|
|
42
|
+
`;
|
|
33
43
|
const framedPlayerContainerStyles = _ref3 => {
|
|
34
44
|
let {
|
|
35
45
|
framedMaxHeight,
|
|
36
46
|
framedContainerPadding
|
|
37
47
|
} = _ref3;
|
|
38
|
-
return css
|
|
48
|
+
return css`
|
|
49
|
+
width: 66.67%;
|
|
50
|
+
padding: ${framedContainerPadding}px;
|
|
51
|
+
max-height: ${framedMaxHeight}px;
|
|
52
|
+
flex-shrink: 0;
|
|
53
|
+
box-sizing: border-box;
|
|
54
|
+
`;
|
|
39
55
|
};
|
|
40
|
-
const VideoPlayerContainer =
|
|
41
|
-
|
|
42
|
-
componentId: "components-web__sc-x6lxp0-1"
|
|
43
|
-
})(["", " overflow:auto;"], _ref4 => {
|
|
56
|
+
const VideoPlayerContainer = styled.div`
|
|
57
|
+
${_ref4 => {
|
|
44
58
|
let {
|
|
45
59
|
isFramed,
|
|
46
60
|
...tokens
|
|
47
61
|
} = _ref4;
|
|
48
62
|
return isFramed && framedPlayerContainerStyles(tokens);
|
|
49
|
-
}
|
|
50
|
-
|
|
63
|
+
}}
|
|
64
|
+
overflow: auto;
|
|
65
|
+
`;
|
|
66
|
+
const framedVideoListContainerStyle = css`
|
|
67
|
+
max-height: ${_ref5 => {
|
|
51
68
|
let {
|
|
52
69
|
framedMaxHeight
|
|
53
70
|
} = _ref5;
|
|
54
71
|
return framedMaxHeight;
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
72
|
+
}}px;
|
|
73
|
+
overflow: auto;
|
|
74
|
+
flex-direction: column;
|
|
75
|
+
`;
|
|
76
|
+
const VideoListContainer = styled.div`
|
|
77
|
+
display: flex;
|
|
78
|
+
justify-content: flex-start;
|
|
79
|
+
position: relative;
|
|
80
|
+
flex-grow: 1;
|
|
81
|
+
flex-direction: column;
|
|
82
|
+
${props => props.isFramed && framedVideoListContainerStyle}
|
|
83
|
+
`;
|
|
60
84
|
const VideoPicker = /*#__PURE__*/React.forwardRef((_ref6, ref) => {
|
|
61
85
|
var _videoList$;
|
|
62
86
|
let {
|