@royaloperahouse/chord 1.22.0 → 1.23.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 CHANGED
@@ -1,3 +1,6 @@
1
+ ## [1.23.0]
2
+ - Re-enabled compact header on iOS
3
+
1
4
  ## [1.22.0]
2
5
  - TextArea: Added new TextArea component
3
6
  - TickBox: Added disabled and error states
@@ -3697,44 +3697,21 @@ var VideoPlayButton = /*#__PURE__*/styled__default.button(_templateObject$s || (
3697
3697
  var VideoControlsWrapper = /*#__PURE__*/styled__default.div(_templateObject2$f || (_templateObject2$f = /*#__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);
3698
3698
  var VideoVolume = /*#__PURE__*/styled__default.input(_templateObject3$9 || (_templateObject3$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n width: 100px;\n margin-left: 24px;\n"])));
3699
3699
  var VideoMute = /*#__PURE__*/styled__default.button(_templateObject4$6 || (_templateObject4$6 = /*#__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"])));
3700
- 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"])));
3700
+ 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"])));
3701
3701
  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"])));
3702
- 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) {
3702
+ 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) {
3703
3703
  var volumeHidden = _ref.volumeHidden;
3704
3704
  return volumeHidden ? '40px' : '100px';
3705
3705
  }, trackStyles, trackStyles, trackStyles, trackStyles, trackStyles, thumbStyes, thumbStyes, thumbStyes);
3706
3706
 
3707
- var isIOS = function isIOS() {
3708
- try {
3709
- console.warn('Do not use this on server side rendering, it may throw an error.');
3710
- if (typeof navigator === undefined) return false;
3711
- return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || // iPad on iOS 13 detection
3712
- navigator.userAgent.includes('Mac') && 'ontouchend' in document;
3713
- } catch (e) {
3714
- console.warn('Error checking if device is iOS.');
3715
- return false;
3716
- }
3717
- }; // React hook version of isIOS
3718
-
3719
-
3720
- var useIOS = function useIOS() {
3721
- var _useState = React.useState(false),
3722
- IOS = _useState[0],
3723
- setIOS = _useState[1];
3724
-
3725
- React.useEffect(function () {
3726
- if (typeof navigator === undefined) return;
3727
- setIOS(isIOS());
3728
- }, []);
3729
- return IOS;
3730
- };
3731
-
3732
3707
  var VideoControls = function VideoControls(_ref) {
3733
3708
  var videoElementId = _ref.videoElementId,
3734
3709
  _ref$defaultMuted = _ref.defaultMuted,
3735
3710
  defaultMuted = _ref$defaultMuted === void 0 ? true : _ref$defaultMuted,
3736
3711
  _ref$defaultPlaying = _ref.defaultPlaying,
3737
- defaultPlaying = _ref$defaultPlaying === void 0 ? false : _ref$defaultPlaying;
3712
+ defaultPlaying = _ref$defaultPlaying === void 0 ? false : _ref$defaultPlaying,
3713
+ _ref$hideVolume = _ref.hideVolume,
3714
+ hideVolume = _ref$hideVolume === void 0 ? false : _ref$hideVolume;
3738
3715
 
3739
3716
  var _React$useState = React__default.useState(defaultPlaying),
3740
3717
  playing = _React$useState[0],
@@ -3748,8 +3725,6 @@ var VideoControls = function VideoControls(_ref) {
3748
3725
  volume = _React$useState3[0],
3749
3726
  setVolume = _React$useState3[1];
3750
3727
 
3751
- var isIOS = useIOS();
3752
-
3753
3728
  var getVideoElement = function getVideoElement() {
3754
3729
  return document.querySelector("#" + videoElementId);
3755
3730
  };
@@ -3806,7 +3781,7 @@ var VideoControls = function VideoControls(_ref) {
3806
3781
  }, /*#__PURE__*/React__default.createElement(Icon, {
3807
3782
  iconName: !playing ? 'Play' : 'Pause'
3808
3783
  })), /*#__PURE__*/React__default.createElement(VolumeControlsWrapper, {
3809
- volumeHidden: isIOS
3784
+ volumeHidden: hideVolume
3810
3785
  }, /*#__PURE__*/React__default.createElement(VideoMute, {
3811
3786
  id: "mute",
3812
3787
  className: "video-mute-button",
@@ -3817,7 +3792,7 @@ var VideoControls = function VideoControls(_ref) {
3817
3792
  "data-testid": "mute-icon",
3818
3793
  iconName: muted ? 'Muted' : 'Volume',
3819
3794
  color: "white"
3820
- })), !isIOS && /*#__PURE__*/React__default.createElement(VideoVolume, {
3795
+ })), !hideVolume && /*#__PURE__*/React__default.createElement(VideoVolume, {
3821
3796
  id: "vol-control",
3822
3797
  type: "range",
3823
3798
  min: "0",
@@ -6876,11 +6851,20 @@ var PageHeadingStream = function PageHeadingStream(_ref) {
6876
6851
  }), /*#__PURE__*/React__default.createElement(StreamBadge, null))));
6877
6852
  };
6878
6853
 
6854
+ var BrandingStyle;
6855
+
6856
+ (function (BrandingStyle) {
6857
+ BrandingStyle["BlockText"] = "BlockText";
6858
+ BrandingStyle["BodyText"] = "BodyText";
6859
+ BrandingStyle["StreamLogo"] = "StreamLogo";
6860
+ BrandingStyle["CinemaLogo"] = "CinemaLogo";
6861
+ })(BrandingStyle || (BrandingStyle = {}));
6862
+
6879
6863
  var _templateObject$W, _templateObject2$F, _templateObject3$w, _templateObject5$j, _templateObject6$d, _templateObject7$b, _templateObject8$8, _templateObject9$4, _templateObject10$4;
6880
- var BrandingTextBlock = /*#__PURE__*/styled__default.p(_templateObject$W || (_templateObject$W = /*#__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);
6864
+ var BrandingTextBlock = /*#__PURE__*/styled__default.div(_templateObject$W || (_templateObject$W = /*#__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);
6881
6865
  var BrandingTextBody = /*#__PURE__*/styled__default.p(_templateObject2$F || (_templateObject2$F = /*#__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"])));
6882
6866
  var ComapctHeaderWrapper = /*#__PURE__*/styled__default.div(_templateObject3$w || (_templateObject3$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n display: block;\n"])));
6883
- var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$j || (_templateObject5$j = /*#__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: cover;\n }\n @media ", " {\n height: 85vw;\n }\n"])), devices.mobile);
6867
+ var CompactHeaderAssetWrapper = /*#__PURE__*/styled__default.div(_templateObject5$j || (_templateObject5$j = /*#__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);
6884
6868
  var CompactHeaderCopyWrapper = /*#__PURE__*/styled__default(Grid)(_templateObject6$d || (_templateObject6$d = /*#__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) {
6885
6869
  var invert = _ref.invert,
6886
6870
  theme = _ref.theme;
@@ -6919,24 +6903,24 @@ var renderBranding = function renderBranding(brandingStyle, brandingText, invert
6919
6903
  var color = invert ? exports.Colors.Black : exports.Colors.White;
6920
6904
 
6921
6905
  switch (brandingStyle) {
6922
- case 'BlockText':
6906
+ case BrandingStyle.BlockText:
6923
6907
  return /*#__PURE__*/React__default.createElement(BrandingTextBlock, null, truncate(stripAllHtmlTags(brandingText), 25));
6924
6908
 
6925
- case 'BodyText':
6909
+ case BrandingStyle.BodyText:
6926
6910
  return /*#__PURE__*/React__default.createElement(BrandingTextBody, {
6927
6911
  dangerouslySetInnerHTML: {
6928
6912
  __html: truncateHtmlString(brandingText, 65)
6929
6913
  }
6930
6914
  });
6931
6915
 
6932
- case 'StreamLogo':
6916
+ case BrandingStyle.StreamLogo:
6933
6917
  return /*#__PURE__*/React__default.createElement(Logo, {
6934
6918
  color: color,
6935
6919
  fontSize: 12,
6936
6920
  productName: TextLogoProduct.Stream
6937
6921
  });
6938
6922
 
6939
- case 'CinemaLogo':
6923
+ case BrandingStyle.CinemaLogo:
6940
6924
  return /*#__PURE__*/React__default.createElement(Logo, {
6941
6925
  color: color,
6942
6926
  fontSize: 12,
@@ -6944,7 +6928,7 @@ var renderBranding = function renderBranding(brandingStyle, brandingText, invert
6944
6928
  });
6945
6929
 
6946
6930
  default:
6947
- return /*#__PURE__*/React__default.createElement("p", null, "Royal Opera House");
6931
+ return null;
6948
6932
  }
6949
6933
  };
6950
6934
 
@@ -6956,73 +6940,196 @@ var CompactHeaderBranding = function CompactHeaderBranding(_ref) {
6956
6940
  return /*#__PURE__*/React__default.createElement(CompactHeaderLogoWrapper, null, renderBranding(brandingStyle, brandingText, invert));
6957
6941
  };
6958
6942
 
6943
+ var isIOS = function isIOS() {
6944
+ try {
6945
+ console.warn('Do not use this on server side rendering, it may throw an error.');
6946
+ if (typeof navigator === undefined) return false;
6947
+ return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) || // iPad on iOS 13 detection
6948
+ navigator.userAgent.includes('Mac') && 'ontouchend' in document;
6949
+ } catch (e) {
6950
+ console.warn('Error checking if device is iOS.');
6951
+ return false;
6952
+ }
6953
+ }; // React hook version of isIOS
6954
+
6955
+
6956
+ var useIOS = function useIOS() {
6957
+ var _useState = React.useState(false),
6958
+ IOS = _useState[0],
6959
+ setIOS = _useState[1];
6960
+
6961
+ React.useEffect(function () {
6962
+ if (typeof navigator === undefined) return;
6963
+ setIOS(isIOS());
6964
+ }, []);
6965
+ return IOS;
6966
+ }; // Checks device size based on window width
6967
+
6968
+ var isMobile = function isMobile() {
6969
+ try {
6970
+ if (typeof window === undefined) return false;
6971
+ return window.innerWidth < breakpoints.sm;
6972
+ } catch (e) {
6973
+ console.warn('Error checking if device is mobile.');
6974
+ return false;
6975
+ }
6976
+ }; // React hook version of isMobile
6977
+
6978
+ var useMobile = function useMobile() {
6979
+ var _useState2 = React.useState(false),
6980
+ mobile = _useState2[0],
6981
+ setMobile = _useState2[1];
6982
+
6983
+ React.useEffect(function () {
6984
+ if (typeof window === undefined) return;
6985
+ setMobile(isMobile());
6986
+ }, []);
6987
+ return mobile;
6988
+ };
6989
+
6959
6990
  var _excluded$l = ["text"];
6960
6991
 
6961
- var PageHeadingCompact = function PageHeadingCompact(_ref) {
6962
- var title = _ref.title,
6963
- link = _ref.link,
6964
- _ref$sponsor = _ref.sponsor,
6965
- sponsor = _ref$sponsor === void 0 ? true : _ref$sponsor,
6966
- customSponsorImage = _ref.customSponsorImage,
6967
- bgUrlDesktop = _ref.bgUrlDesktop,
6968
- bgUrlDevice = _ref.bgUrlDevice,
6969
- videoUrlDesktop = _ref.videoUrlDesktop,
6970
- _ref$bgImageAltText = _ref.bgImageAltText,
6971
- bgImageAltText = _ref$bgImageAltText === void 0 ? '' : _ref$bgImageAltText,
6972
- _ref$invert = _ref.invert,
6973
- invert = _ref$invert === void 0 ? false : _ref$invert,
6974
- _ref$brandingStyle = _ref.brandingStyle,
6975
- brandingStyle = _ref$brandingStyle === void 0 ? 'BlockText' : _ref$brandingStyle,
6976
- _ref$brandingText = _ref.brandingText,
6977
- brandingText = _ref$brandingText === void 0 ? 'Royal Opera House' : _ref$brandingText;
6992
+ var useResponsiveVideo = function useResponsiveVideo(video, poster) {
6993
+ var mobileVideo = video.mobile || video.desktop;
6994
+ var desktopVideo = video.desktop || video.mobile;
6995
+ var mobilePoster = poster.mobile || poster.desktop;
6996
+ var desktopPoster = poster.desktop || poster.mobile;
6978
6997
 
6979
- var _ref2 = link || {},
6980
- linkText = _ref2.text,
6981
- restLink = _objectWithoutPropertiesLoose(_ref2, _excluded$l);
6998
+ var _useState = React.useState(desktopPoster),
6999
+ posterUrl = _useState[0],
7000
+ setPoster = _useState[1];
7001
+
7002
+ var _useState2 = React.useState(desktopVideo),
7003
+ videoUrl = _useState2[0],
7004
+ setVideoUrl = _useState2[1];
7005
+
7006
+ var isMobile = useMobile();
7007
+ React.useEffect(function () {
7008
+ setPoster(isMobile ? mobilePoster : desktopPoster);
7009
+ setVideoUrl(isMobile ? mobileVideo : desktopVideo);
7010
+ }, [isMobile]);
7011
+ return {
7012
+ posterUrl: posterUrl,
7013
+ videoUrl: videoUrl
7014
+ };
7015
+ };
7016
+
7017
+ var VideoWithControls = function VideoWithControls(_ref) {
7018
+ var video = _ref.video,
7019
+ poster = _ref.poster;
7020
+
7021
+ var _useResponsiveVideo = useResponsiveVideo(video, poster),
7022
+ posterUrl = _useResponsiveVideo.posterUrl,
7023
+ videoUrl = _useResponsiveVideo.videoUrl;
6982
7024
 
6983
- var titleSize = title && title.length > 20 ? 4 : 3;
6984
- var videoElementId = 'compact-header-video';
6985
7025
  var isIOS = useIOS();
6986
- return /*#__PURE__*/React__default.createElement(ComapctHeaderWrapper, null, sponsor ? /*#__PURE__*/React__default.createElement(SponsorWrapper, {
6987
- "data-testid": "compact-sponsor"
6988
- }, customSponsorImage ? /*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
6989
- "data-testid": "compact-custom-sponsor"
6990
- }, customSponsorImage, {
6991
- isCustomImage: true
6992
- })) : /*#__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", {
6993
- loop: true,
7026
+ return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("video", {
7027
+ id: video.elementId,
7028
+ width: "100%",
7029
+ height: "100%",
6994
7030
  muted: true,
6995
- playsInline: true,
7031
+ loop: true,
7032
+ poster: posterUrl,
7033
+ src: videoUrl,
6996
7034
  "data-testid": "compact-video",
6997
- id: videoElementId
7035
+ playsInline: true
6998
7036
  }, /*#__PURE__*/React__default.createElement("source", {
6999
- src: videoUrlDesktop
7037
+ src: videoUrl
7000
7038
  }), /*#__PURE__*/React__default.createElement("img", {
7001
- src: bgUrlDesktop,
7002
- alt: bgImageAltText,
7039
+ src: posterUrl,
7040
+ alt: poster.alt,
7003
7041
  "data-testid": "compact-image"
7004
7042
  })), /*#__PURE__*/React__default.createElement(VideoControls, {
7005
- videoElementId: videoElementId,
7043
+ videoElementId: video.elementId,
7006
7044
  defaultMuted: true,
7007
- defaultPlaying: false
7008
- })) : /*#__PURE__*/React__default.createElement("picture", {
7045
+ defaultPlaying: false,
7046
+ hideVolume: isIOS
7047
+ }));
7048
+ };
7049
+
7050
+ var CompactHeaderImage = function CompactHeaderImage(_ref2) {
7051
+ var mobile = _ref2.mobile,
7052
+ desktop = _ref2.desktop,
7053
+ alt = _ref2.alt;
7054
+ return /*#__PURE__*/React__default.createElement("picture", {
7009
7055
  "data-testid": "compact-picture"
7010
- }, bgUrlDevice && /*#__PURE__*/React__default.createElement("source", {
7011
- srcSet: bgUrlDevice,
7056
+ }, mobile && /*#__PURE__*/React__default.createElement("source", {
7057
+ srcSet: mobile,
7012
7058
  media: "" + devices.mobile,
7013
7059
  "data-testid": "compact-mobile-image-source"
7014
7060
  }), /*#__PURE__*/React__default.createElement("source", {
7015
- srcSet: bgUrlDesktop,
7061
+ srcSet: desktop,
7016
7062
  media: "" + devices.desktop,
7017
7063
  "data-testid": "compact-desktop-image-source"
7018
7064
  }), /*#__PURE__*/React__default.createElement("img", {
7019
- src: bgUrlDesktop,
7020
- alt: bgImageAltText,
7065
+ src: desktop,
7066
+ alt: alt,
7021
7067
  "data-testid": "compact-image"
7022
- }))), /*#__PURE__*/React__default.createElement(CompactHeaderCopyWrapper, {
7068
+ }));
7069
+ };
7070
+
7071
+ var CompactHeaderVideo = function CompactHeaderVideo(_ref3) {
7072
+ var video = _ref3.video,
7073
+ poster = _ref3.poster;
7074
+ // Renders fallback image if no video supplied
7075
+ console.warn('video', video);
7076
+
7077
+ if (!video.desktop && !video.mobile) {
7078
+ return /*#__PURE__*/React__default.createElement(CompactHeaderImage, Object.assign({}, poster));
7079
+ }
7080
+
7081
+ return /*#__PURE__*/React__default.createElement(VideoWithControls, {
7082
+ video: video,
7083
+ poster: poster
7084
+ });
7085
+ };
7086
+
7087
+ var PageHeadingCompact = function PageHeadingCompact(_ref4) {
7088
+ var title = _ref4.title,
7089
+ link = _ref4.link,
7090
+ _ref4$sponsor = _ref4.sponsor,
7091
+ sponsor = _ref4$sponsor === void 0 ? true : _ref4$sponsor,
7092
+ customSponsorImage = _ref4.customSponsorImage,
7093
+ bgUrlDesktop = _ref4.bgUrlDesktop,
7094
+ bgUrlDevice = _ref4.bgUrlDevice,
7095
+ videoUrlDesktop = _ref4.videoUrlDesktop,
7096
+ videoUrlMobile = _ref4.videoUrlMobile,
7097
+ _ref4$bgImageAltText = _ref4.bgImageAltText,
7098
+ bgImageAltText = _ref4$bgImageAltText === void 0 ? '' : _ref4$bgImageAltText,
7099
+ _ref4$invert = _ref4.invert,
7100
+ invert = _ref4$invert === void 0 ? false : _ref4$invert,
7101
+ _ref4$brandingStyle = _ref4.brandingStyle,
7102
+ brandingStyle = _ref4$brandingStyle === void 0 ? BrandingStyle.BlockText : _ref4$brandingStyle,
7103
+ brandingText = _ref4.brandingText;
7104
+
7105
+ var _ref5 = link || {},
7106
+ linkText = _ref5.text,
7107
+ restLink = _objectWithoutPropertiesLoose(_ref5, _excluded$l);
7108
+
7109
+ var titleSize = title && title.length > 20 ? 4 : 3;
7110
+ var video = {
7111
+ elementId: 'compact-header-video',
7112
+ desktop: videoUrlDesktop,
7113
+ mobile: videoUrlMobile
7114
+ };
7115
+ var poster = {
7116
+ desktop: bgUrlDesktop,
7117
+ mobile: bgUrlDevice,
7118
+ alt: bgImageAltText
7119
+ };
7120
+ return /*#__PURE__*/React__default.createElement(ComapctHeaderWrapper, null, sponsor ? /*#__PURE__*/React__default.createElement(SponsorWrapper, {
7121
+ "data-testid": "compact-sponsor"
7122
+ }, customSponsorImage ? /*#__PURE__*/React__default.createElement(Sponsorship, Object.assign({
7123
+ "data-testid": "compact-custom-sponsor"
7124
+ }, customSponsorImage, {
7125
+ isCustomImage: true
7126
+ })) : /*#__PURE__*/React__default.createElement(Sponsorship, null)) : null, /*#__PURE__*/React__default.createElement(CompactHeaderAssetWrapper, null, /*#__PURE__*/React__default.createElement(CompactHeaderVideo, {
7127
+ video: video,
7128
+ poster: poster
7129
+ })), /*#__PURE__*/React__default.createElement(CompactHeaderCopyWrapper, {
7023
7130
  className: "page-heading-compact__background",
7024
7131
  invert: invert
7025
- }, /*#__PURE__*/React__default.createElement(CompactHeaderBranding, {
7132
+ }, (brandingText == null ? void 0 : brandingText.trim()) && /*#__PURE__*/React__default.createElement(CompactHeaderBranding, {
7026
7133
  brandingStyle: brandingStyle,
7027
7134
  brandingText: brandingText,
7028
7135
  invert: invert