@royaloperahouse/chord 1.21.0-chord-development → 1.21.1-chord-development
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 +5 -13
- package/dist/chord.cjs.development.js +198 -85
- package/dist/chord.cjs.development.js.map +1 -1
- package/dist/chord.cjs.production.min.js +1 -1
- package/dist/chord.cjs.production.min.js.map +1 -1
- package/dist/chord.esm.js +198 -85
- package/dist/chord.esm.js.map +1 -1
- package/dist/components/atoms/VideoControls/VideoControls.d.ts +1 -0
- package/dist/components/molecules/PageHeading/Compact/Compact.style.d.ts +1 -1
- package/dist/components/molecules/PageHeading/Compact/components/CompactHeaderBranding.d.ts +2 -1
- package/dist/components/molecules/Select/Select.d.ts +1 -1
- package/dist/helpers/devices.d.ts +2 -1
- package/dist/types/formTypes.d.ts +6 -0
- package/dist/types/impactHeader.d.ts +7 -1
- package/dist/types/upsell.d.ts +4 -0
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
## [1.21.1]
|
|
2
|
+
- Compact PageHeading: Refactored to support iOS devices
|
|
1
3
|
|
|
2
4
|
## [1.21.0]
|
|
3
5
|
- TextLogo: add new component
|
|
4
6
|
- Compact PageHeading: swap logo with TextLogo to fix iOS issues
|
|
5
7
|
|
|
8
|
+
## [1.20.2-a]
|
|
9
|
+
- Made select state reset behaviour opt-in
|
|
10
|
+
|
|
6
11
|
## [1.20.2]
|
|
7
12
|
- Card: change cursor to default for cards without buttons
|
|
8
13
|
- HighlightsCarousel: hide button in case there are no text for them
|
|
@@ -12,19 +17,6 @@
|
|
|
12
17
|
|
|
13
18
|
## [1.20.0]
|
|
14
19
|
- Tickbox: Add black-on-white option
|
|
15
|
-
|
|
16
|
-
## [1.19.0-a]
|
|
17
|
-
- Tickbox: Add black-on-white option
|
|
18
|
-
|
|
19
|
-
## [1.18.2-n]
|
|
20
|
-
- Reset the select component's selected value to the first option if options change
|
|
21
|
-
|
|
22
|
-
## [1.18.2-n]
|
|
23
|
-
- Reset the select component's selected value to the first option if options change
|
|
24
|
-
|
|
25
|
-
## [1.18.1]
|
|
26
|
-
## [1.19.0]
|
|
27
|
-
|
|
28
20
|
## [1.19.0]
|
|
29
21
|
- Add timer to navigation basket
|
|
30
22
|
## [1.18.3]
|
|
@@ -3534,44 +3534,21 @@ var VideoPlayButton = /*#__PURE__*/styled__default.button(_templateObject$r || (
|
|
|
3534
3534
|
var VideoControlsWrapper = /*#__PURE__*/styled__default.div(_templateObject2$e || (_templateObject2$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: absolute;\n left: 50px;\n bottom: 24px;\n display: flex;\n align-items: center;\n @media ", " {\n left: 20px;\n bottom: 12px;\n }\n"])), devices.mobile);
|
|
3535
3535
|
var VideoVolume = /*#__PURE__*/styled__default.input(_templateObject3$8 || (_templateObject3$8 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100px;\n margin-left: 24px;\n"])));
|
|
3536
3536
|
var VideoMute = /*#__PURE__*/styled__default.button(_templateObject4$4 || (_templateObject4$4 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 17px;\n height: 17px;\n background: none;\n border: none;\n padding: 0;\n svg {\n width: 100%;\n height: 100%;\n }\n"])));
|
|
3537
|
-
var thumbStyes = /*#__PURE__*/styled.css(_templateObject5$2 || (_templateObject5$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n -webkit-appearance: none;\n border: none;\n height: 8px;\n width: 8px;\n border-radius: 50%;\n background: #ffffff;\n border: none;\n transform: translateY(-25%);\n"])));
|
|
3537
|
+
var thumbStyes = /*#__PURE__*/styled.css(_templateObject5$2 || (_templateObject5$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n -webkit-appearance: none;\n appearance: none;\n border: none;\n height: 8px;\n width: 8px;\n border-radius: 50%;\n background: #ffffff;\n border: none;\n transform: translateY(-25%);\n"])));
|
|
3538
3538
|
var trackStyles = /*#__PURE__*/styled.css(_templateObject6$1 || (_templateObject6$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100%;\n cursor: pointer;\n height: 4px;\n cursor: pointer;\n background: rgb(241, 241, 241, 0.5);\n border-radius: 1.3px;\n border: none;\n"])));
|
|
3539
|
-
var VolumeControlsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$1 || (_templateObject7$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n margin: 12px 12px;\n padding: 0;\n background-color: rgb(26, 26, 26, 0.6);\n height: 36px;\n width: ", ";\n align-items: center;\n justify-content: center;\n\n /* Range slider overrides */\n input[type='range' i] {\n -webkit-appearance: none;\n width: 42px;\n margin: 0;\n margin-left: 7px;\n background: transparent; /* Otherwise white in Chrome */\n\n ::-webkit-slider-runnable-track {\n ", "\n }\n ::-moz-range-track {\n ", "\n }\n ::-ms-track {\n ", "\n }\n ::-ms-fill-lower {\n ", "\n }\n ::-ms-fill-upper {\n ", "\n }\n\n ::-webkit-slider-thumb {\n ", "\n }\n ::-moz-range-thumb {\n ", "\n }\n ::-ms-thumb {\n ", "\n }\n }\n"])), function (_ref) {
|
|
3539
|
+
var VolumeControlsWrapper = /*#__PURE__*/styled__default.div(_templateObject7$1 || (_templateObject7$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n margin: 12px 12px;\n padding: 0;\n background-color: rgb(26, 26, 26, 0.6);\n height: 36px;\n width: ", ";\n align-items: center;\n justify-content: center;\n\n /* Range slider overrides */\n input[type='range' i] {\n -webkit-appearance: none;\n appearance: none;\n width: 42px;\n margin: 0;\n margin-left: 7px;\n background: transparent; /* Otherwise white in Chrome */\n\n ::-webkit-slider-runnable-track {\n ", "\n }\n ::-moz-range-track {\n ", "\n }\n ::-ms-track {\n ", "\n }\n ::-ms-fill-lower {\n ", "\n }\n ::-ms-fill-upper {\n ", "\n }\n\n ::-webkit-slider-thumb {\n ", "\n }\n ::-moz-range-thumb {\n ", "\n }\n ::-ms-thumb {\n ", "\n }\n }\n"])), function (_ref) {
|
|
3540
3540
|
var volumeHidden = _ref.volumeHidden;
|
|
3541
3541
|
return volumeHidden ? '40px' : '100px';
|
|
3542
3542
|
}, trackStyles, trackStyles, trackStyles, trackStyles, trackStyles, thumbStyes, thumbStyes, thumbStyes);
|
|
3543
3543
|
|
|
3544
|
-
var isIOS = function isIOS() {
|
|
3545
|
-
try {
|
|
3546
|
-
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
3547
|
-
if (typeof navigator === 'undefined') return false;
|
|
3548
|
-
return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || // iPad on iOS 13 detection
|
|
3549
|
-
navigator.userAgent.includes('Mac') && 'ontouchend' in document;
|
|
3550
|
-
} catch (e) {
|
|
3551
|
-
console.warn('Error checking if device is iOS.');
|
|
3552
|
-
return false;
|
|
3553
|
-
}
|
|
3554
|
-
}; // React hook version of isIOS
|
|
3555
|
-
|
|
3556
|
-
|
|
3557
|
-
var useIOS = function useIOS() {
|
|
3558
|
-
var _useState = React.useState(false),
|
|
3559
|
-
IOS = _useState[0],
|
|
3560
|
-
setIOS = _useState[1];
|
|
3561
|
-
|
|
3562
|
-
React.useEffect(function () {
|
|
3563
|
-
if (typeof navigator === 'undefined') return;
|
|
3564
|
-
setIOS(isIOS());
|
|
3565
|
-
}, []);
|
|
3566
|
-
return IOS;
|
|
3567
|
-
};
|
|
3568
|
-
|
|
3569
3544
|
var VideoControls = function VideoControls(_ref) {
|
|
3570
3545
|
var videoElementId = _ref.videoElementId,
|
|
3571
3546
|
_ref$defaultMuted = _ref.defaultMuted,
|
|
3572
3547
|
defaultMuted = _ref$defaultMuted === void 0 ? true : _ref$defaultMuted,
|
|
3573
3548
|
_ref$defaultPlaying = _ref.defaultPlaying,
|
|
3574
|
-
defaultPlaying = _ref$defaultPlaying === void 0 ? false : _ref$defaultPlaying
|
|
3549
|
+
defaultPlaying = _ref$defaultPlaying === void 0 ? false : _ref$defaultPlaying,
|
|
3550
|
+
_ref$hideVolume = _ref.hideVolume,
|
|
3551
|
+
hideVolume = _ref$hideVolume === void 0 ? false : _ref$hideVolume;
|
|
3575
3552
|
|
|
3576
3553
|
var _React$useState = React__default.useState(defaultPlaying),
|
|
3577
3554
|
playing = _React$useState[0],
|
|
@@ -3585,8 +3562,6 @@ var VideoControls = function VideoControls(_ref) {
|
|
|
3585
3562
|
volume = _React$useState3[0],
|
|
3586
3563
|
setVolume = _React$useState3[1];
|
|
3587
3564
|
|
|
3588
|
-
var isIOS = useIOS();
|
|
3589
|
-
|
|
3590
3565
|
var getVideoElement = function getVideoElement() {
|
|
3591
3566
|
return document.querySelector("#" + videoElementId);
|
|
3592
3567
|
};
|
|
@@ -3643,7 +3618,7 @@ var VideoControls = function VideoControls(_ref) {
|
|
|
3643
3618
|
}, /*#__PURE__*/React__default.createElement(Icon, {
|
|
3644
3619
|
iconName: !playing ? 'Play' : 'Pause'
|
|
3645
3620
|
})), /*#__PURE__*/React__default.createElement(VolumeControlsWrapper, {
|
|
3646
|
-
volumeHidden:
|
|
3621
|
+
volumeHidden: hideVolume
|
|
3647
3622
|
}, /*#__PURE__*/React__default.createElement(VideoMute, {
|
|
3648
3623
|
id: "mute",
|
|
3649
3624
|
className: "video-mute-button",
|
|
@@ -3654,7 +3629,7 @@ var VideoControls = function VideoControls(_ref) {
|
|
|
3654
3629
|
"data-testid": "mute-icon",
|
|
3655
3630
|
iconName: muted ? 'Muted' : 'Volume',
|
|
3656
3631
|
color: "white"
|
|
3657
|
-
})), !
|
|
3632
|
+
})), !hideVolume && /*#__PURE__*/React__default.createElement(VideoVolume, {
|
|
3658
3633
|
id: "vol-control",
|
|
3659
3634
|
type: "range",
|
|
3660
3635
|
min: "0",
|
|
@@ -6738,11 +6713,20 @@ var PageHeadingStream = function PageHeadingStream(_ref) {
|
|
|
6738
6713
|
}), /*#__PURE__*/React__default.createElement(StreamBadge, null))));
|
|
6739
6714
|
};
|
|
6740
6715
|
|
|
6716
|
+
var BrandingStyle;
|
|
6717
|
+
|
|
6718
|
+
(function (BrandingStyle) {
|
|
6719
|
+
BrandingStyle["BlockText"] = "BlockText";
|
|
6720
|
+
BrandingStyle["BodyText"] = "BodyText";
|
|
6721
|
+
BrandingStyle["StreamLogo"] = "StreamLogo";
|
|
6722
|
+
BrandingStyle["CinemaLogo"] = "CinemaLogo";
|
|
6723
|
+
})(BrandingStyle || (BrandingStyle = {}));
|
|
6724
|
+
|
|
6741
6725
|
var _templateObject$X, _templateObject2$E, _templateObject3$x, _templateObject5$k, _templateObject6$e, _templateObject7$c, _templateObject8$9, _templateObject9$4, _templateObject10$4;
|
|
6742
|
-
var BrandingTextBlock = /*#__PURE__*/styled__default.
|
|
6726
|
+
var BrandingTextBlock = /*#__PURE__*/styled__default.div(_templateObject$X || (_templateObject$X = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: var(--font-size-overline-4);\n font-family: var(--font-family-header);\n text-transform: uppercase;\n margin: 0;\n white-space: nowrap;\n @media screen and (max-width: 920px) {\n white-space: normal;\n }\n @media ", " {\n white-space: nowrap;\n }\n"])), devices.mobile);
|
|
6743
6727
|
var BrandingTextBody = /*#__PURE__*/styled__default.p(_templateObject2$E || (_templateObject2$E = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-family: var(--font-family-body);\n font-size: var(--font-size-heading-6);\n line-height: var(--line-height-heading-6);\n"])));
|
|
6744
6728
|
var ComapctHeaderWrapper = /*#__PURE__*/styled__default.div(_templateObject3$x || (_templateObject3$x = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n display: block;\n"])));
|
|
6745
|
-
var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$k || (_templateObject5$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 37.5vw;\n width: 100%;\n position: relative;\n overflow: hidden;\n background-color: #000;\n img {\n position: relative;\n height: 100%;\n width: 100%;\n object-fit: cover;\n }\n video {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit:
|
|
6729
|
+
var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$k || (_templateObject5$k = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 37.5vw;\n width: 100%;\n position: relative;\n overflow: hidden;\n background-color: #000;\n img {\n position: relative;\n height: 100%;\n width: 100%;\n object-fit: cover;\n }\n video {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n width: 100%;\n object-fit: contain;\n @media ", " {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n margin: auto;\n height: auto;\n max-height: 100vh;\n width: 100%;\n object-fit: contain;\n }\n }\n @media ", " {\n height: 85vw;\n max-height: 100vh;\n }\n"])), devices.mobile, devices.mobile);
|
|
6746
6730
|
var CompactHeaderCopyWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject6$e || (_templateObject6$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n height: 160px;\n grid-template-rows: min-content min-content;\n grid-template-rows: min-content min-content;\n grid-template-columns: [logo] 1fr [title] 3fr [cta] 1fr;\n align-content: center;\n gap: 0;\n background-color: ", ";\n color: ", ";\n svg {\n max-width: 155px;\n fill: ", ";\n }\n @media ", " {\n display: flex;\n flex-direction: column;\n height: auto;\n padding: 32px 20px;\n }\n"])), function (_ref) {
|
|
6747
6731
|
var invert = _ref.invert,
|
|
6748
6732
|
theme = _ref.theme;
|
|
@@ -6781,24 +6765,24 @@ var renderBranding = function renderBranding(brandingStyle, brandingText, invert
|
|
|
6781
6765
|
var color = invert ? exports.Colors.Black : exports.Colors.White;
|
|
6782
6766
|
|
|
6783
6767
|
switch (brandingStyle) {
|
|
6784
|
-
case
|
|
6768
|
+
case BrandingStyle.BlockText:
|
|
6785
6769
|
return /*#__PURE__*/React__default.createElement(BrandingTextBlock, null, truncate(stripAllHtmlTags(brandingText), 25));
|
|
6786
6770
|
|
|
6787
|
-
case
|
|
6771
|
+
case BrandingStyle.BodyText:
|
|
6788
6772
|
return /*#__PURE__*/React__default.createElement(BrandingTextBody, {
|
|
6789
6773
|
dangerouslySetInnerHTML: {
|
|
6790
6774
|
__html: truncateHtmlString(brandingText, 65)
|
|
6791
6775
|
}
|
|
6792
6776
|
});
|
|
6793
6777
|
|
|
6794
|
-
case
|
|
6778
|
+
case BrandingStyle.StreamLogo:
|
|
6795
6779
|
return /*#__PURE__*/React__default.createElement(Logo, {
|
|
6796
6780
|
color: color,
|
|
6797
6781
|
fontSize: 12,
|
|
6798
6782
|
productName: TextLogoProduct.Stream
|
|
6799
6783
|
});
|
|
6800
6784
|
|
|
6801
|
-
case
|
|
6785
|
+
case BrandingStyle.CinemaLogo:
|
|
6802
6786
|
return /*#__PURE__*/React__default.createElement(Logo, {
|
|
6803
6787
|
color: color,
|
|
6804
6788
|
fontSize: 12,
|
|
@@ -6806,7 +6790,7 @@ var renderBranding = function renderBranding(brandingStyle, brandingText, invert
|
|
|
6806
6790
|
});
|
|
6807
6791
|
|
|
6808
6792
|
default:
|
|
6809
|
-
return
|
|
6793
|
+
return null;
|
|
6810
6794
|
}
|
|
6811
6795
|
};
|
|
6812
6796
|
|
|
@@ -6818,70 +6802,194 @@ var CompactHeaderBranding = function CompactHeaderBranding(_ref) {
|
|
|
6818
6802
|
return /*#__PURE__*/React__default.createElement(CompactHeaderLogoWrapper, null, renderBranding(brandingStyle, brandingText, invert));
|
|
6819
6803
|
};
|
|
6820
6804
|
|
|
6805
|
+
var isIOS = function isIOS() {
|
|
6806
|
+
try {
|
|
6807
|
+
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
6808
|
+
if (typeof navigator === 'undefined') return false;
|
|
6809
|
+
return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || // iPad on iOS 13 detection
|
|
6810
|
+
navigator.userAgent.includes('Mac') && 'ontouchend' in document;
|
|
6811
|
+
} catch (e) {
|
|
6812
|
+
console.warn('Error checking if device is iOS.');
|
|
6813
|
+
return false;
|
|
6814
|
+
}
|
|
6815
|
+
}; // React hook version of isIOS
|
|
6816
|
+
|
|
6817
|
+
|
|
6818
|
+
var useIOS = function useIOS() {
|
|
6819
|
+
var _useState = React.useState(false),
|
|
6820
|
+
IOS = _useState[0],
|
|
6821
|
+
setIOS = _useState[1];
|
|
6822
|
+
|
|
6823
|
+
React.useEffect(function () {
|
|
6824
|
+
if (typeof navigator === 'undefined') return;
|
|
6825
|
+
setIOS(isIOS());
|
|
6826
|
+
}, []);
|
|
6827
|
+
return IOS;
|
|
6828
|
+
}; // Checks device size based on window width
|
|
6829
|
+
|
|
6830
|
+
var isMobile = function isMobile() {
|
|
6831
|
+
try {
|
|
6832
|
+
if (typeof window === undefined) return false;
|
|
6833
|
+
return window.innerWidth < breakpoints.sm;
|
|
6834
|
+
} catch (e) {
|
|
6835
|
+
console.warn('Error checking if device is mobile.');
|
|
6836
|
+
return false;
|
|
6837
|
+
}
|
|
6838
|
+
}; // React hook version of isMobile
|
|
6839
|
+
|
|
6840
|
+
var useMobile = function useMobile() {
|
|
6841
|
+
var _useState2 = React.useState(false),
|
|
6842
|
+
mobile = _useState2[0],
|
|
6843
|
+
setMobile = _useState2[1];
|
|
6844
|
+
|
|
6845
|
+
React.useEffect(function () {
|
|
6846
|
+
if (typeof window === undefined) return;
|
|
6847
|
+
setMobile(isMobile());
|
|
6848
|
+
}, []);
|
|
6849
|
+
return mobile;
|
|
6850
|
+
};
|
|
6851
|
+
|
|
6821
6852
|
var _excluded$k = ["text"];
|
|
6822
6853
|
|
|
6823
|
-
var
|
|
6824
|
-
var
|
|
6825
|
-
|
|
6826
|
-
|
|
6827
|
-
|
|
6828
|
-
customSponsorImage = _ref.customSponsorImage,
|
|
6829
|
-
bgUrlDesktop = _ref.bgUrlDesktop,
|
|
6830
|
-
bgUrlDevice = _ref.bgUrlDevice,
|
|
6831
|
-
videoUrlDesktop = _ref.videoUrlDesktop,
|
|
6832
|
-
_ref$bgImageAltText = _ref.bgImageAltText,
|
|
6833
|
-
bgImageAltText = _ref$bgImageAltText === void 0 ? '' : _ref$bgImageAltText,
|
|
6834
|
-
_ref$invert = _ref.invert,
|
|
6835
|
-
invert = _ref$invert === void 0 ? false : _ref$invert,
|
|
6836
|
-
_ref$brandingStyle = _ref.brandingStyle,
|
|
6837
|
-
brandingStyle = _ref$brandingStyle === void 0 ? 'BlockText' : _ref$brandingStyle,
|
|
6838
|
-
_ref$brandingText = _ref.brandingText,
|
|
6839
|
-
brandingText = _ref$brandingText === void 0 ? 'Royal Opera House' : _ref$brandingText;
|
|
6854
|
+
var useResponsiveVideo = function useResponsiveVideo(video, poster) {
|
|
6855
|
+
var mobileVideo = video.mobile || video.desktop;
|
|
6856
|
+
var desktopVideo = video.desktop || video.mobile;
|
|
6857
|
+
var mobilePoster = poster.mobile || poster.desktop;
|
|
6858
|
+
var desktopPoster = poster.desktop || poster.mobile;
|
|
6840
6859
|
|
|
6841
|
-
var
|
|
6842
|
-
|
|
6843
|
-
|
|
6860
|
+
var _useState = React.useState(desktopPoster),
|
|
6861
|
+
posterUrl = _useState[0],
|
|
6862
|
+
setPoster = _useState[1];
|
|
6863
|
+
|
|
6864
|
+
var _useState2 = React.useState(desktopVideo),
|
|
6865
|
+
videoUrl = _useState2[0],
|
|
6866
|
+
setVideoUrl = _useState2[1];
|
|
6867
|
+
|
|
6868
|
+
var isMobile = useMobile();
|
|
6869
|
+
React.useEffect(function () {
|
|
6870
|
+
setPoster(isMobile ? mobilePoster : desktopPoster);
|
|
6871
|
+
setVideoUrl(isMobile ? mobileVideo : desktopVideo);
|
|
6872
|
+
}, [isMobile]);
|
|
6873
|
+
return {
|
|
6874
|
+
posterUrl: posterUrl,
|
|
6875
|
+
videoUrl: videoUrl
|
|
6876
|
+
};
|
|
6877
|
+
};
|
|
6878
|
+
|
|
6879
|
+
var VideoWithControls = function VideoWithControls(_ref) {
|
|
6880
|
+
var video = _ref.video,
|
|
6881
|
+
poster = _ref.poster;
|
|
6882
|
+
|
|
6883
|
+
var _useResponsiveVideo = useResponsiveVideo(video, poster),
|
|
6884
|
+
posterUrl = _useResponsiveVideo.posterUrl,
|
|
6885
|
+
videoUrl = _useResponsiveVideo.videoUrl;
|
|
6844
6886
|
|
|
6845
|
-
var titleSize = title && title.length > 20 ? 4 : 3;
|
|
6846
|
-
var videoElementId = 'compact-header-video';
|
|
6847
6887
|
var isIOS = useIOS();
|
|
6848
|
-
return /*#__PURE__*/React__default.createElement(
|
|
6849
|
-
|
|
6850
|
-
|
|
6851
|
-
|
|
6852
|
-
}, customSponsorImage, {
|
|
6853
|
-
isCustomImage: true
|
|
6854
|
-
})) : /*#__PURE__*/React__default.createElement(Sponsorship, null)) : null, /*#__PURE__*/React__default.createElement(CompactHeaderAssetWrapper, null, !isIOS && videoUrlDesktop ? /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
|
|
6855
|
-
loop: true,
|
|
6888
|
+
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
|
|
6889
|
+
id: video.elementId,
|
|
6890
|
+
width: "100%",
|
|
6891
|
+
height: "100%",
|
|
6856
6892
|
muted: true,
|
|
6857
|
-
|
|
6893
|
+
loop: true,
|
|
6894
|
+
poster: posterUrl,
|
|
6895
|
+
src: videoUrl,
|
|
6858
6896
|
"data-testid": "compact-video",
|
|
6859
|
-
|
|
6897
|
+
playsInline: true
|
|
6860
6898
|
}, /*#__PURE__*/React__default.createElement("source", {
|
|
6861
|
-
src:
|
|
6899
|
+
src: videoUrl
|
|
6862
6900
|
}), /*#__PURE__*/React__default.createElement("img", {
|
|
6863
|
-
src:
|
|
6864
|
-
alt:
|
|
6901
|
+
src: posterUrl,
|
|
6902
|
+
alt: poster.alt,
|
|
6865
6903
|
"data-testid": "compact-image"
|
|
6866
6904
|
})), /*#__PURE__*/React__default.createElement(VideoControls, {
|
|
6867
|
-
videoElementId:
|
|
6905
|
+
videoElementId: video.elementId,
|
|
6868
6906
|
defaultMuted: true,
|
|
6869
|
-
defaultPlaying: false
|
|
6870
|
-
|
|
6907
|
+
defaultPlaying: false,
|
|
6908
|
+
hideVolume: isIOS
|
|
6909
|
+
}));
|
|
6910
|
+
};
|
|
6911
|
+
|
|
6912
|
+
var CompactHeaderImage = function CompactHeaderImage(_ref2) {
|
|
6913
|
+
var mobile = _ref2.mobile,
|
|
6914
|
+
desktop = _ref2.desktop,
|
|
6915
|
+
alt = _ref2.alt;
|
|
6916
|
+
return /*#__PURE__*/React__default.createElement("picture", {
|
|
6871
6917
|
"data-testid": "compact-picture"
|
|
6872
|
-
},
|
|
6873
|
-
srcSet:
|
|
6918
|
+
}, mobile && /*#__PURE__*/React__default.createElement("source", {
|
|
6919
|
+
srcSet: mobile,
|
|
6874
6920
|
media: "" + devices.mobile,
|
|
6875
6921
|
"data-testid": "compact-mobile-image-source"
|
|
6876
6922
|
}), /*#__PURE__*/React__default.createElement("source", {
|
|
6877
|
-
srcSet:
|
|
6923
|
+
srcSet: desktop,
|
|
6878
6924
|
media: "" + devices.desktop,
|
|
6879
6925
|
"data-testid": "compact-desktop-image-source"
|
|
6880
6926
|
}), /*#__PURE__*/React__default.createElement("img", {
|
|
6881
|
-
src:
|
|
6882
|
-
alt:
|
|
6927
|
+
src: desktop,
|
|
6928
|
+
alt: alt,
|
|
6883
6929
|
"data-testid": "compact-image"
|
|
6884
|
-
}))
|
|
6930
|
+
}));
|
|
6931
|
+
};
|
|
6932
|
+
|
|
6933
|
+
var CompactHeaderVideo = function CompactHeaderVideo(_ref3) {
|
|
6934
|
+
var video = _ref3.video,
|
|
6935
|
+
poster = _ref3.poster;
|
|
6936
|
+
// Renders fallback image if no video supplied
|
|
6937
|
+
console.warn('video', video);
|
|
6938
|
+
|
|
6939
|
+
if (!video.desktop && !video.mobile) {
|
|
6940
|
+
return /*#__PURE__*/React__default.createElement(CompactHeaderImage, Object.assign({}, poster));
|
|
6941
|
+
}
|
|
6942
|
+
|
|
6943
|
+
return /*#__PURE__*/React__default.createElement(VideoWithControls, {
|
|
6944
|
+
video: video,
|
|
6945
|
+
poster: poster
|
|
6946
|
+
});
|
|
6947
|
+
};
|
|
6948
|
+
|
|
6949
|
+
var PageHeadingCompact = function PageHeadingCompact(_ref4) {
|
|
6950
|
+
var title = _ref4.title,
|
|
6951
|
+
link = _ref4.link,
|
|
6952
|
+
_ref4$sponsor = _ref4.sponsor,
|
|
6953
|
+
sponsor = _ref4$sponsor === void 0 ? true : _ref4$sponsor,
|
|
6954
|
+
customSponsorImage = _ref4.customSponsorImage,
|
|
6955
|
+
bgUrlDesktop = _ref4.bgUrlDesktop,
|
|
6956
|
+
bgUrlDevice = _ref4.bgUrlDevice,
|
|
6957
|
+
videoUrlDesktop = _ref4.videoUrlDesktop,
|
|
6958
|
+
videoUrlMobile = _ref4.videoUrlMobile,
|
|
6959
|
+
_ref4$bgImageAltText = _ref4.bgImageAltText,
|
|
6960
|
+
bgImageAltText = _ref4$bgImageAltText === void 0 ? '' : _ref4$bgImageAltText,
|
|
6961
|
+
_ref4$invert = _ref4.invert,
|
|
6962
|
+
invert = _ref4$invert === void 0 ? false : _ref4$invert,
|
|
6963
|
+
_ref4$brandingStyle = _ref4.brandingStyle,
|
|
6964
|
+
brandingStyle = _ref4$brandingStyle === void 0 ? BrandingStyle.BlockText : _ref4$brandingStyle,
|
|
6965
|
+
_ref4$brandingText = _ref4.brandingText,
|
|
6966
|
+
brandingText = _ref4$brandingText === void 0 ? 'Royal Opera House' : _ref4$brandingText;
|
|
6967
|
+
|
|
6968
|
+
var _ref5 = link || {},
|
|
6969
|
+
linkText = _ref5.text,
|
|
6970
|
+
restLink = _objectWithoutPropertiesLoose(_ref5, _excluded$k);
|
|
6971
|
+
|
|
6972
|
+
var titleSize = title && title.length > 20 ? 4 : 3;
|
|
6973
|
+
var video = {
|
|
6974
|
+
elementId: 'compact-header-video',
|
|
6975
|
+
desktop: videoUrlDesktop,
|
|
6976
|
+
mobile: videoUrlMobile
|
|
6977
|
+
};
|
|
6978
|
+
var poster = {
|
|
6979
|
+
desktop: bgUrlDesktop,
|
|
6980
|
+
mobile: bgUrlDevice,
|
|
6981
|
+
alt: bgImageAltText
|
|
6982
|
+
};
|
|
6983
|
+
return /*#__PURE__*/React__default.createElement(ComapctHeaderWrapper, null, sponsor ? /*#__PURE__*/React__default.createElement(SponsorWrapper, {
|
|
6984
|
+
"data-testid": "compact-sponsor"
|
|
6985
|
+
}, customSponsorImage ? /*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
|
|
6986
|
+
"data-testid": "compact-custom-sponsor"
|
|
6987
|
+
}, customSponsorImage, {
|
|
6988
|
+
isCustomImage: true
|
|
6989
|
+
})) : /*#__PURE__*/React__default.createElement(Sponsorship, null)) : null, /*#__PURE__*/React__default.createElement(CompactHeaderAssetWrapper, null, /*#__PURE__*/React__default.createElement(CompactHeaderVideo, {
|
|
6990
|
+
video: video,
|
|
6991
|
+
poster: poster
|
|
6992
|
+
})), /*#__PURE__*/React__default.createElement(CompactHeaderCopyWrapper, {
|
|
6885
6993
|
className: "page-heading-compact__background",
|
|
6886
6994
|
invert: invert
|
|
6887
6995
|
}, /*#__PURE__*/React__default.createElement(CompactHeaderBranding, {
|
|
@@ -7764,6 +7872,8 @@ function Select(_ref3) {
|
|
|
7764
7872
|
onSelect = _ref3.onSelect,
|
|
7765
7873
|
_ref3$disabled = _ref3.disabled,
|
|
7766
7874
|
disabled = _ref3$disabled === void 0 ? false : _ref3$disabled,
|
|
7875
|
+
_ref3$resetWhenOption = _ref3.resetWhenOptionsUpdate,
|
|
7876
|
+
resetWhenOptionsUpdate = _ref3$resetWhenOption === void 0 ? false : _ref3$resetWhenOption,
|
|
7767
7877
|
_ref3$width = _ref3.width,
|
|
7768
7878
|
width = _ref3$width === void 0 ? 'default' : _ref3$width,
|
|
7769
7879
|
_ref3$height = _ref3.height,
|
|
@@ -7820,13 +7930,15 @@ function Select(_ref3) {
|
|
|
7820
7930
|
};
|
|
7821
7931
|
}, []);
|
|
7822
7932
|
React.useEffect(function () {
|
|
7933
|
+
if (!resetWhenOptionsUpdate) return;
|
|
7934
|
+
|
|
7823
7935
|
if (options.length === 0) {
|
|
7824
7936
|
setSelectedValue(null);
|
|
7825
7937
|
return;
|
|
7826
7938
|
}
|
|
7827
7939
|
|
|
7828
7940
|
setSelectedValue(options[0]);
|
|
7829
|
-
}, [options]);
|
|
7941
|
+
}, [options, resetWhenOptionsUpdate]);
|
|
7830
7942
|
return /*#__PURE__*/React__default.createElement(Wrapper$5, null, label !== '' && /*#__PURE__*/React__default.createElement(BodyText, {
|
|
7831
7943
|
level: 1,
|
|
7832
7944
|
tag: "p",
|
|
@@ -7986,6 +8098,7 @@ var Quote = function Quote(_ref) {
|
|
|
7986
8098
|
var UpsellSection = function UpsellSection(_ref) {
|
|
7987
8099
|
var title = _ref.title,
|
|
7988
8100
|
richText = _ref.richText,
|
|
8101
|
+
link = _ref.link,
|
|
7989
8102
|
upsellCards = _ref.upsellCards,
|
|
7990
8103
|
_ref$theme = _ref.theme,
|
|
7991
8104
|
theme = _ref$theme === void 0 ? exports.ThemeType.Core : _ref$theme;
|
|
@@ -8011,7 +8124,7 @@ var UpsellSection = function UpsellSection(_ref) {
|
|
|
8011
8124
|
columnSpanDesktop: 14,
|
|
8012
8125
|
columnStartDevice: 1,
|
|
8013
8126
|
columnSpanDevice: 14
|
|
8014
|
-
})), /*#__PURE__*/React__default.createElement(UpsellCards, {
|
|
8127
|
+
}), link && /*#__PURE__*/React__default.createElement(TextLink, null, link.text)), /*#__PURE__*/React__default.createElement(UpsellCards, {
|
|
8015
8128
|
upsellCards: themedUpsellCards
|
|
8016
8129
|
})))));
|
|
8017
8130
|
};
|