@royaloperahouse/harmonic 0.1.8-k → 0.1.8-m
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/dist/components/molecules/Swipe/Swipe.d.ts +1 -0
- package/dist/components/molecules/Swipe/helper.d.ts +1 -0
- package/dist/components/organisms/Carousels/Carousel/helper.d.ts +3 -1
- package/dist/harmonic.cjs.development.js +257 -149
- package/dist/harmonic.cjs.development.js.map +1 -1
- package/dist/harmonic.cjs.production.min.js +1 -1
- package/dist/harmonic.cjs.production.min.js.map +1 -1
- package/dist/harmonic.esm.js +257 -149
- package/dist/harmonic.esm.js.map +1 -1
- package/dist/types/carousel.d.ts +4 -0
- package/package.json +1 -1
|
@@ -5097,8 +5097,82 @@ var _templateObject$w, _templateObject2$n;
|
|
|
5097
5097
|
var MediaLinksWrapper = /*#__PURE__*/styled__default.div(_templateObject$w || (_templateObject$w = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n gap: var(--footer-media-gap);\n"])));
|
|
5098
5098
|
var MediaIconWrapper = /*#__PURE__*/styled__default.a(_templateObject2$n || (_templateObject2$n = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: var(--footer-media-icon-height);\n width: var(--footer-media-icon-width);\n\n &:focus {\n outline: 2px solid var(--color-base-white);\n }\n"])));
|
|
5099
5099
|
|
|
5100
|
+
// WARNING: Do not use this on server side rendering, it may throw an error.
|
|
5101
|
+
var isIOS = function isIOS() {
|
|
5102
|
+
try {
|
|
5103
|
+
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
5104
|
+
if (typeof navigator === undefined) return false;
|
|
5105
|
+
return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||
|
|
5106
|
+
// iPad on iOS 13 detection
|
|
5107
|
+
navigator.userAgent.includes('Mac') && 'ontouchend' in document;
|
|
5108
|
+
} catch (e) {
|
|
5109
|
+
console.warn('Error checking if device is iOS.', e);
|
|
5110
|
+
return false;
|
|
5111
|
+
}
|
|
5112
|
+
};
|
|
5113
|
+
// React hook version of isIOS (for server side rendering)
|
|
5114
|
+
var useIOS = function useIOS() {
|
|
5115
|
+
var _useState = React.useState(false),
|
|
5116
|
+
IOS = _useState[0],
|
|
5117
|
+
setIOS = _useState[1];
|
|
5118
|
+
React.useEffect(function () {
|
|
5119
|
+
if (typeof navigator === undefined) return;
|
|
5120
|
+
setIOS(isIOS());
|
|
5121
|
+
}, []);
|
|
5122
|
+
return IOS;
|
|
5123
|
+
};
|
|
5124
|
+
// Checks device size based on window width
|
|
5125
|
+
var isMobile = function isMobile() {
|
|
5126
|
+
try {
|
|
5127
|
+
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
5128
|
+
if (typeof window === undefined) return false;
|
|
5129
|
+
return window.innerWidth < breakpoints.sm;
|
|
5130
|
+
} catch (e) {
|
|
5131
|
+
console.warn('Error checking if device is mobile.', e);
|
|
5132
|
+
return false;
|
|
5133
|
+
}
|
|
5134
|
+
};
|
|
5135
|
+
// React hook version of isMobile (for server side rendering)
|
|
5136
|
+
var useMobile = function useMobile() {
|
|
5137
|
+
var _useState2 = React.useState(false),
|
|
5138
|
+
mobile = _useState2[0],
|
|
5139
|
+
setMobile = _useState2[1];
|
|
5140
|
+
React.useEffect(function () {
|
|
5141
|
+
if (typeof window === undefined) return;
|
|
5142
|
+
setMobile(isMobile());
|
|
5143
|
+
}, []);
|
|
5144
|
+
return mobile;
|
|
5145
|
+
};
|
|
5146
|
+
var useViewport = function useViewport() {
|
|
5147
|
+
var _useState3 = React.useState({
|
|
5148
|
+
width: window.innerWidth,
|
|
5149
|
+
isMobile: window.innerWidth < breakpoints.sm,
|
|
5150
|
+
isTablet: window.innerWidth >= breakpoints.sm && window.innerWidth < breakpoints.md,
|
|
5151
|
+
isDesktop: window.innerWidth >= breakpoints.md
|
|
5152
|
+
}),
|
|
5153
|
+
viewport = _useState3[0],
|
|
5154
|
+
setViewport = _useState3[1];
|
|
5155
|
+
React.useEffect(function () {
|
|
5156
|
+
var handleResize = function handleResize() {
|
|
5157
|
+
setViewport({
|
|
5158
|
+
width: window.innerWidth,
|
|
5159
|
+
isMobile: window.innerWidth < breakpoints.sm,
|
|
5160
|
+
isTablet: window.innerWidth >= breakpoints.sm && window.innerWidth < breakpoints.md,
|
|
5161
|
+
isDesktop: window.innerWidth >= breakpoints.md
|
|
5162
|
+
});
|
|
5163
|
+
};
|
|
5164
|
+
window.addEventListener('resize', handleResize);
|
|
5165
|
+
return function () {
|
|
5166
|
+
return window.removeEventListener('resize', handleResize);
|
|
5167
|
+
};
|
|
5168
|
+
}, []);
|
|
5169
|
+
return viewport;
|
|
5170
|
+
};
|
|
5171
|
+
|
|
5100
5172
|
var SocialLinks = function SocialLinks(_ref) {
|
|
5101
5173
|
var items = _ref.items;
|
|
5174
|
+
var _useViewport = useViewport(),
|
|
5175
|
+
isMobile = _useViewport.isMobile;
|
|
5102
5176
|
return /*#__PURE__*/React__default.createElement(MediaLinksWrapper, null, items.map(function (mediaLink, idx) {
|
|
5103
5177
|
return /*#__PURE__*/React__default.createElement(MediaIconWrapper, {
|
|
5104
5178
|
key: mediaLink.name + "-" + idx,
|
|
@@ -5107,7 +5181,8 @@ var SocialLinks = function SocialLinks(_ref) {
|
|
|
5107
5181
|
"aria-label": mediaLink.name,
|
|
5108
5182
|
rel: "noopener noreferrer" // Ensures security for external links
|
|
5109
5183
|
,
|
|
5110
|
-
target: "_blank"
|
|
5184
|
+
target: "_blank",
|
|
5185
|
+
tabIndex: isMobile ? 1 : undefined
|
|
5111
5186
|
}, /*#__PURE__*/React__default.createElement(Icon, {
|
|
5112
5187
|
iconName: mediaLink.name,
|
|
5113
5188
|
color: "white",
|
|
@@ -5121,8 +5196,8 @@ var NavigationWrapper = /*#__PURE__*/styled__default.div(_templateObject$x || (_
|
|
|
5121
5196
|
var isMenuOpen = _ref.isMenuOpen;
|
|
5122
5197
|
return isMenuOpen && "\n position: fixed;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: " + zIndexes.overlay + ";\n background-color: var(--color-base-white);\n overflow-y: auto;\n scrollbar-width: none;\n ::-webkit-scrollbar {\n display: none;\n }\n ";
|
|
5123
5198
|
});
|
|
5124
|
-
var FullScreenContainer = /*#__PURE__*/styled__default.div(_templateObject2$o || (_templateObject2$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--color-base-white);\n
|
|
5125
|
-
var NavigationGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$e || (_templateObject3$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n background-color: var(--color-base-white);\n height: 140px;\n width: 100%;\n z-index: ", ";\n\n @media ", " {\n height: 60px;\n }\n"])), zIndexes.navigation, devices.mobileAndTablet);
|
|
5199
|
+
var FullScreenContainer = /*#__PURE__*/styled__default.div(_templateObject2$o || (_templateObject2$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n background-color: var(--color-base-white);\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n width: 100%;\n z-index: ", ";\n opacity: 0;\n animation: fadeIn 0.3s ease forwards;\n\n @media ", " {\n top: 230px;\n background-color: var(--color-base-black);\n }\n\n @keyframes fadeIn {\n to {\n opacity: 0.5;\n }\n }\n"])), zIndexes.searchOverlay, devices.mobileAndTablet);
|
|
5200
|
+
var NavigationGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$e || (_templateObject3$e = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n background-color: var(--color-base-white);\n height: 140px;\n justify-content: space-evenly;\n width: 100%;\n z-index: ", ";\n\n @media ", " {\n height: 60px;\n }\n"])), zIndexes.navigation, devices.mobileAndTablet);
|
|
5126
5201
|
var SearchBackground = /*#__PURE__*/styled__default.div(_templateObject4$b || (_templateObject4$b = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n visibility: ", ";\n opacity: ", ";\n transform: ", ";\n transition:\n opacity 0.3s ease,\n transform 0.3s ease,\n visibility 0.3s ease;\n background-color: var(--color-base-white);\n height: 100px;\n border-top: 1px solid var(--color-base-light-grey);\n width: 100%;\n position: absolute;\n top: 140px;\n z-index: ", ";\n\n @media ", " {\n height: 86px;\n top: 144px;\n }\n"])), function (_ref2) {
|
|
5127
5202
|
var visible = _ref2.visible;
|
|
5128
5203
|
return visible ? 'visible' : 'hidden';
|
|
@@ -5148,13 +5223,13 @@ var MobileMenuContainer = /*#__PURE__*/styled__default(Grid)(_templateObject7$2
|
|
|
5148
5223
|
var showSearch = _ref8.showSearch;
|
|
5149
5224
|
return showSearch ? '110px' : '12px';
|
|
5150
5225
|
});
|
|
5151
|
-
var LogoContainer = /*#__PURE__*/styled__default.a(_templateObject8$2 || (_templateObject8$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n
|
|
5152
|
-
var LogoContainerMobile = /*#__PURE__*/styled__default.div(_templateObject9$1 || (_templateObject9$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n display: flex;\n align-items: center;\n justify-content: center;\n
|
|
5153
|
-
var MenuContainer = /*#__PURE__*/styled__default.div(_templateObject10$1 || (_templateObject10$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n align-items: center;\n height: 140px;\n width: 100%;\n\n @media ", " {\n flex-direction: row;\n justify-content: space-between;\n height: 60px;\n width 100%;\n }\n"])), devices.mobileAndTablet);
|
|
5154
|
-
var NavWrapper = /*#__PURE__*/styled__default.div(_templateObject11 || (_templateObject11 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n
|
|
5155
|
-
var NavContainer = /*#__PURE__*/styled__default.div(_templateObject12 || (_templateObject12 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n
|
|
5226
|
+
var LogoContainer = /*#__PURE__*/styled__default.a(_templateObject8$2 || (_templateObject8$2 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n &&& .logoImg {\n height: 96px;\n width: 80px;\n }\n\n span > svg path,\n span > svg g path {\n fill: var(--color-primary-black);\n }\n\n @media ", " {\n display: none;\n }\n"])), devices.mobileAndTablet);
|
|
5227
|
+
var LogoContainerMobile = /*#__PURE__*/styled__default.div(_templateObject9$1 || (_templateObject9$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 16px;\n\n span > svg path {\n fill: var(--color-primary-black);\n }\n }\n"])), devices.mobileAndTablet);
|
|
5228
|
+
var MenuContainer = /*#__PURE__*/styled__default.div(_templateObject10$1 || (_templateObject10$1 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: column;\n align-items: center;\n height: 140px;\n justify-content: space-evenly;\n width: 100%;\n\n @media ", " {\n flex-direction: row;\n justify-content: space-between;\n height: 60px;\n width 100%;\n }\n"])), devices.mobileAndTablet);
|
|
5229
|
+
var NavWrapper = /*#__PURE__*/styled__default.div(_templateObject11 || (_templateObject11 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n width: 100%;\n gap: 32px;\n\n @media ", " {\n flex-direction: row;\n height: 60px;\n justify-content: flex-end;\n }\n"])), devices.mobileAndTablet);
|
|
5230
|
+
var NavContainer = /*#__PURE__*/styled__default.div(_templateObject12 || (_templateObject12 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n flex-direction: row;\n align-items: center;\n justify-content: flex-end;\n flex-gap: 32px;\n width: fit-content;\n\n @media ", " {\n flex-gap: 0;\n height: auto;\n width: fit-content;\n margin-left: 20px;\n margin-right: 20px;\n }\n"])), devices.mobileAndTablet);
|
|
5156
5231
|
var NavContainerGridItem = /*#__PURE__*/styled__default(GridItem)(_templateObject13 || (_templateObject13 = /*#__PURE__*/_taggedTemplateLiteralLoose([""])));
|
|
5157
|
-
var NavTopContainer = /*#__PURE__*/styled__default.div(_templateObject14 || (_templateObject14 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n
|
|
5232
|
+
var NavTopContainer = /*#__PURE__*/styled__default.div(_templateObject14 || (_templateObject14 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n align-items: center;\n\n @media ", " {\n display: none;\n }\n"])), devices.mobileAndTablet);
|
|
5158
5233
|
var NavTopContainerMobile = /*#__PURE__*/styled__default.div(_templateObject15 || (_templateObject15 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: none;\n\n @media ", " {\n display: flex;\n width: fit-content;\n align-items: center;\n height: 10%;\n margin-left: 20px;\n padding-bottom: 36px;\n }\n"])), devices.mobileAndTablet);
|
|
5159
5234
|
|
|
5160
5235
|
var _templateObject$y;
|
|
@@ -5176,7 +5251,7 @@ var BasketContainer = /*#__PURE__*/styled__default.div(_templateObject$z || (_te
|
|
|
5176
5251
|
});
|
|
5177
5252
|
var SvgContainer = /*#__PURE__*/styled__default.div(_templateObject2$p || (_templateObject2$p = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n\n svg {\n width: var(--navigation-large-gap);\n height: var(--navigation-large-gap);\n }\n"])));
|
|
5178
5253
|
var NumContainer = /*#__PURE__*/styled__default.div(_templateObject3$f || (_templateObject3$f = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n justify-content: center;\n width: 12px;\n height: 12px;\n position: absolute;\n top: 8px;\n margin-left: 6px;\n"])));
|
|
5179
|
-
var BasketInfo = /*#__PURE__*/styled__default.div(_templateObject4$c || (_templateObject4$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n @media ", " {\n width: max-content;\n }\n"])), devices.mobileAndTablet);
|
|
5254
|
+
var BasketInfo = /*#__PURE__*/styled__default.div(_templateObject4$c || (_templateObject4$c = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n\n @media ", " {\n width: max-content;\n }\n"])), devices.mobileAndTablet);
|
|
5180
5255
|
var BasketNum = /*#__PURE__*/styled__default.span(_templateObject5$9 || (_templateObject5$9 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-base-white);\n font-size: 10px;\n font-family: var(--font-family-sans);\n"])));
|
|
5181
5256
|
var BasketText = /*#__PURE__*/styled__default.a(_templateObject6$6 || (_templateObject6$6 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n font-size: var(--harmonic-font-size-navigation);\n font-family: var(--font-family-sans);\n font-weight: var(--font-weight-navigation);\n color: var(--color-primary-black);\n margin-left: 6px;\n text-decoration: none;\n"])));
|
|
5182
5257
|
|
|
@@ -5721,78 +5796,6 @@ var InputContainer = /*#__PURE__*/styled__default.div(_templateObject5$a || (_te
|
|
|
5721
5796
|
var TextLinkWrapper$1 = /*#__PURE__*/styled__default(TextLink)(_templateObject6$7 || (_templateObject6$7 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n color: var(--color-primary-red);\n"])));
|
|
5722
5797
|
var SearchArrowContainer = /*#__PURE__*/styled__default.a(_templateObject7$3 || (_templateObject7$3 = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-right: 8px;\n\n svg {\n width: var(--navigation-large-gap);\n height: var(--navigation-large-gap);\n }\n"])));
|
|
5723
5798
|
|
|
5724
|
-
// WARNING: Do not use this on server side rendering, it may throw an error.
|
|
5725
|
-
var isIOS = function isIOS() {
|
|
5726
|
-
try {
|
|
5727
|
-
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
5728
|
-
if (typeof navigator === undefined) return false;
|
|
5729
|
-
return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||
|
|
5730
|
-
// iPad on iOS 13 detection
|
|
5731
|
-
navigator.userAgent.includes('Mac') && 'ontouchend' in document;
|
|
5732
|
-
} catch (e) {
|
|
5733
|
-
console.warn('Error checking if device is iOS.', e);
|
|
5734
|
-
return false;
|
|
5735
|
-
}
|
|
5736
|
-
};
|
|
5737
|
-
// React hook version of isIOS (for server side rendering)
|
|
5738
|
-
var useIOS = function useIOS() {
|
|
5739
|
-
var _useState = React.useState(false),
|
|
5740
|
-
IOS = _useState[0],
|
|
5741
|
-
setIOS = _useState[1];
|
|
5742
|
-
React.useEffect(function () {
|
|
5743
|
-
if (typeof navigator === undefined) return;
|
|
5744
|
-
setIOS(isIOS());
|
|
5745
|
-
}, []);
|
|
5746
|
-
return IOS;
|
|
5747
|
-
};
|
|
5748
|
-
// Checks device size based on window width
|
|
5749
|
-
var isMobile = function isMobile() {
|
|
5750
|
-
try {
|
|
5751
|
-
console.warn('Do not use this on server side rendering, it may throw an error.');
|
|
5752
|
-
if (typeof window === undefined) return false;
|
|
5753
|
-
return window.innerWidth < breakpoints.sm;
|
|
5754
|
-
} catch (e) {
|
|
5755
|
-
console.warn('Error checking if device is mobile.', e);
|
|
5756
|
-
return false;
|
|
5757
|
-
}
|
|
5758
|
-
};
|
|
5759
|
-
// React hook version of isMobile (for server side rendering)
|
|
5760
|
-
var useMobile = function useMobile() {
|
|
5761
|
-
var _useState2 = React.useState(false),
|
|
5762
|
-
mobile = _useState2[0],
|
|
5763
|
-
setMobile = _useState2[1];
|
|
5764
|
-
React.useEffect(function () {
|
|
5765
|
-
if (typeof window === undefined) return;
|
|
5766
|
-
setMobile(isMobile());
|
|
5767
|
-
}, []);
|
|
5768
|
-
return mobile;
|
|
5769
|
-
};
|
|
5770
|
-
var useViewport = function useViewport() {
|
|
5771
|
-
var _useState3 = React.useState({
|
|
5772
|
-
width: window.innerWidth,
|
|
5773
|
-
isMobile: window.innerWidth < breakpoints.sm,
|
|
5774
|
-
isTablet: window.innerWidth >= breakpoints.sm && window.innerWidth < breakpoints.md,
|
|
5775
|
-
isDesktop: window.innerWidth >= breakpoints.md
|
|
5776
|
-
}),
|
|
5777
|
-
viewport = _useState3[0],
|
|
5778
|
-
setViewport = _useState3[1];
|
|
5779
|
-
React.useEffect(function () {
|
|
5780
|
-
var handleResize = function handleResize() {
|
|
5781
|
-
setViewport({
|
|
5782
|
-
width: window.innerWidth,
|
|
5783
|
-
isMobile: window.innerWidth < breakpoints.sm,
|
|
5784
|
-
isTablet: window.innerWidth >= breakpoints.sm && window.innerWidth < breakpoints.md,
|
|
5785
|
-
isDesktop: window.innerWidth >= breakpoints.md
|
|
5786
|
-
});
|
|
5787
|
-
};
|
|
5788
|
-
window.addEventListener('resize', handleResize);
|
|
5789
|
-
return function () {
|
|
5790
|
-
return window.removeEventListener('resize', handleResize);
|
|
5791
|
-
};
|
|
5792
|
-
}, []);
|
|
5793
|
-
return viewport;
|
|
5794
|
-
};
|
|
5795
|
-
|
|
5796
5799
|
var SearchBar = function SearchBar(_ref) {
|
|
5797
5800
|
var onClick = _ref.onClick,
|
|
5798
5801
|
onClose = _ref.onClose,
|
|
@@ -6047,13 +6050,16 @@ var PolicyLinksTextLinkWrapper = /*#__PURE__*/styled__default(TextLink)(_templat
|
|
|
6047
6050
|
|
|
6048
6051
|
var PolicyLinks = function PolicyLinks(_ref) {
|
|
6049
6052
|
var items = _ref.items;
|
|
6053
|
+
var _useViewport = useViewport(),
|
|
6054
|
+
isMobile = _useViewport.isMobile;
|
|
6050
6055
|
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, items.map(function (link, idx) {
|
|
6051
6056
|
return /*#__PURE__*/React__default.createElement(PolicyLinksTextLinkWrapper, {
|
|
6052
6057
|
key: link.href + "-" + idx,
|
|
6053
6058
|
target: link.href,
|
|
6054
6059
|
href: link.href,
|
|
6055
6060
|
"data-roh": link.dataRoh,
|
|
6056
|
-
"aria-label": link.title
|
|
6061
|
+
"aria-label": link.title,
|
|
6062
|
+
tabIndex: isMobile ? 4 : undefined
|
|
6057
6063
|
}, link.title);
|
|
6058
6064
|
}));
|
|
6059
6065
|
};
|
|
@@ -6073,7 +6079,9 @@ var Footer = function Footer(_ref) {
|
|
|
6073
6079
|
var _useViewport = useViewport(),
|
|
6074
6080
|
isMobile = _useViewport.isMobile;
|
|
6075
6081
|
return /*#__PURE__*/React__default.createElement(FooterSection, {
|
|
6076
|
-
className: className
|
|
6082
|
+
className: className,
|
|
6083
|
+
"aria-label": "Footer",
|
|
6084
|
+
role: "contentinfo"
|
|
6077
6085
|
}, /*#__PURE__*/React__default.createElement(FooterContainer, null, /*#__PURE__*/React__default.createElement(PolicyLinksSection, {
|
|
6078
6086
|
"data-testid": "policy-links"
|
|
6079
6087
|
}, /*#__PURE__*/React__default.createElement(PolicyLinks, {
|
|
@@ -6084,14 +6092,16 @@ var Footer = function Footer(_ref) {
|
|
|
6084
6092
|
items: rawSocialMediaLinks
|
|
6085
6093
|
}), /*#__PURE__*/React__default.createElement(TextLinkWrapper$2, {
|
|
6086
6094
|
href: contact.href,
|
|
6087
|
-
"aria-label": contact.title
|
|
6095
|
+
"aria-label": contact.title,
|
|
6096
|
+
tabIndex: isMobile ? 2 : undefined
|
|
6088
6097
|
}, contact.title)), /*#__PURE__*/React__default.createElement(SectionWrapper, null, /*#__PURE__*/React__default.createElement(BodyCopyHarmonic, {
|
|
6089
6098
|
size: "large",
|
|
6090
6099
|
color: "white"
|
|
6091
6100
|
}, newsletter.text), /*#__PURE__*/React__default.createElement(TextLinkWrapper$2, {
|
|
6092
6101
|
href: newsletter.link.href,
|
|
6093
6102
|
"data-roh": newsletter.link.dataRoh,
|
|
6094
|
-
"aria-label": newsletter.link.title
|
|
6103
|
+
"aria-label": newsletter.link.title,
|
|
6104
|
+
tabIndex: isMobile ? 3 : undefined
|
|
6095
6105
|
}, newsletter.link.title))), /*#__PURE__*/React__default.createElement(LogoAndDescriptionSection, null, /*#__PURE__*/React__default.createElement("div", {
|
|
6096
6106
|
"data-testid": "arts-logo"
|
|
6097
6107
|
}, /*#__PURE__*/React__default.createElement("a", Object.assign({
|
|
@@ -7316,6 +7326,8 @@ var GRID_VALUES = {
|
|
|
7316
7326
|
desktop: {
|
|
7317
7327
|
gapsNumber: 13,
|
|
7318
7328
|
columnsNumber: 13,
|
|
7329
|
+
gapsNumberOffset: 15,
|
|
7330
|
+
columnsNumberOffset: 14,
|
|
7319
7331
|
largeCard: {
|
|
7320
7332
|
gapsPerSlide: 4,
|
|
7321
7333
|
columnsPerSlide: 5
|
|
@@ -7343,16 +7355,20 @@ var calculateSlideGapsSpace = function calculateSlideGapsSpace(gapsPerSlide) {
|
|
|
7343
7355
|
return "calc(" + GRID_COLUMN_GAP + " * " + gapsPerSlide + ")";
|
|
7344
7356
|
};
|
|
7345
7357
|
// Slide styles
|
|
7346
|
-
var getCardSlideDesktopStyles = function getCardSlideDesktopStyles(type) {
|
|
7358
|
+
var getCardSlideDesktopStyles = function getCardSlideDesktopStyles(type, isActive) {
|
|
7347
7359
|
var _GRID_VALUES$desktop = GRID_VALUES.desktop,
|
|
7348
7360
|
gapsNumber = _GRID_VALUES$desktop.gapsNumber,
|
|
7349
|
-
columnsNumber = _GRID_VALUES$desktop.columnsNumber
|
|
7361
|
+
columnsNumber = _GRID_VALUES$desktop.columnsNumber,
|
|
7362
|
+
columnsNumberOffset = _GRID_VALUES$desktop.columnsNumberOffset,
|
|
7363
|
+
gapsNumberOffset = _GRID_VALUES$desktop.gapsNumberOffset;
|
|
7350
7364
|
var _ref = type === exports.CarouselType.LargeCard ? GRID_VALUES.desktop.largeCard : GRID_VALUES.desktop.smallCard,
|
|
7351
7365
|
gapsPerSlide = _ref.gapsPerSlide,
|
|
7352
7366
|
columnsPerSlide = _ref.columnsPerSlide;
|
|
7353
|
-
var
|
|
7367
|
+
var columns = isActive ? columnsNumberOffset : columnsNumber;
|
|
7368
|
+
var gaps = isActive ? gapsNumberOffset : gapsNumber;
|
|
7369
|
+
var gapsSpaceInMainGrid = calculateGapsSpaceInMainGrid(gaps);
|
|
7354
7370
|
var slideGapsSpace = calculateSlideGapsSpace(gapsPerSlide);
|
|
7355
|
-
return "\n width: calc( (" + columnsPerSlide + " * (100% - " + gapsSpaceInMainGrid + ") / " +
|
|
7371
|
+
return "\n width: calc( (" + columnsPerSlide + " * (100% - " + gapsSpaceInMainGrid + ") / " + columns + ") + " + slideGapsSpace + " );\n margin-right: " + GRID_COLUMN_GAP + ";\n ";
|
|
7356
7372
|
};
|
|
7357
7373
|
var getCardSlideMobileStyles = function getCardSlideMobileStyles() {
|
|
7358
7374
|
var _GRID_VALUES$mobile = GRID_VALUES.mobile,
|
|
@@ -7376,8 +7392,9 @@ var ImageCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject$N ||
|
|
|
7376
7392
|
return "&&& {\n .swipe-slide > figure {\n " + getImageSlideStyles(imagesHeightDevice) + "\n }\n }";
|
|
7377
7393
|
});
|
|
7378
7394
|
var CardsCarouselWrapper = /*#__PURE__*/styled__default.div(_templateObject2$A || (_templateObject2$A = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n ", "\n\n @media ", " {\n && {\n .swipe-slide {\n ", "\n }\n }\n}}"])), function (_ref3) {
|
|
7379
|
-
var type = _ref3.type
|
|
7380
|
-
|
|
7395
|
+
var type = _ref3.type,
|
|
7396
|
+
isActive = _ref3.isActive;
|
|
7397
|
+
return "\n & {\n .swipe-slide {\n " + getCardSlideDesktopStyles(type, isActive) + "\n }\n }\n ";
|
|
7381
7398
|
}, devices.mobile, /*#__PURE__*/getCardSlideMobileStyles());
|
|
7382
7399
|
var TitleButtonsGrid = /*#__PURE__*/styled__default(Grid)(_templateObject3$o || (_templateObject3$o = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n margin-bottom: 28px;\n\n @media ", " {\n padding-bottom: 0;\n }\n\n @media ", " {\n margin-bottom: 20px;\n }\n"])), devices.mobile, devices.mobile);
|
|
7383
7400
|
var CarouselInfoWrapper = /*#__PURE__*/styled__default.div(_templateObject4$j || (_templateObject4$j = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n user-select: text;\n"])));
|
|
@@ -7395,10 +7412,12 @@ var SwipeGridWrapper = /*#__PURE__*/styled__default(GridItem)(_templateObject8$5
|
|
|
7395
7412
|
var _templateObject$O, _templateObject2$B;
|
|
7396
7413
|
var SWIPE_SLIDE_CLASS_NAME = 'swipe-slide';
|
|
7397
7414
|
var SwipeContainer = /*#__PURE__*/styled__default.div(_templateObject$O || (_templateObject$O = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n position: relative;\n overflow: hidden;\n width: 100%;\n touch-action: pan-y;\n"])));
|
|
7398
|
-
var SwipeTrack = /*#__PURE__*/styled__default.div(_templateObject2$B || (_templateObject2$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n transition: ", ";\n transform: translateX(", "
|
|
7399
|
-
|
|
7400
|
-
|
|
7401
|
-
|
|
7415
|
+
var SwipeTrack = /*#__PURE__*/styled__default.div(_templateObject2$B || (_templateObject2$B = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n display: flex;\n transition: ", ";\n transform: translateX(", ");\n\n .", " {\n flex-shrink: 0;\n }\n"])), function (_ref) {
|
|
7416
|
+
var transitioning = _ref.transitioning;
|
|
7417
|
+
return transitioning ? 'transform 0.3s ease' : 'none';
|
|
7418
|
+
}, function (_ref2) {
|
|
7419
|
+
var translateX = _ref2.translateX;
|
|
7420
|
+
return translateX + "px";
|
|
7402
7421
|
}, SWIPE_SLIDE_CLASS_NAME);
|
|
7403
7422
|
|
|
7404
7423
|
/**
|
|
@@ -7426,9 +7445,26 @@ var getVisibleIndexes = function getVisibleIndexes(currentIndex, slideWidths, co
|
|
|
7426
7445
|
}
|
|
7427
7446
|
return visible;
|
|
7428
7447
|
};
|
|
7448
|
+
var getMovedSlides = function getMovedSlides(delta, slideWidths) {
|
|
7449
|
+
var absDelta = Math.abs(delta);
|
|
7450
|
+
var movedSlides = 0;
|
|
7451
|
+
var accumulated = 0;
|
|
7452
|
+
for (var i = 0; i < slideWidths.length; i++) {
|
|
7453
|
+
accumulated += slideWidths[i];
|
|
7454
|
+
// Allow partial slide (e.g. 50% of next slide) to count
|
|
7455
|
+
var partialThreshold = slideWidths[i] * 0.5;
|
|
7456
|
+
if (absDelta > accumulated - partialThreshold) {
|
|
7457
|
+
movedSlides++;
|
|
7458
|
+
} else {
|
|
7459
|
+
break;
|
|
7460
|
+
}
|
|
7461
|
+
}
|
|
7462
|
+
return movedSlides;
|
|
7463
|
+
};
|
|
7429
7464
|
|
|
7430
|
-
var _excluded$h = ["children", "infinite", "onIndexChange", "slidesOffsetBefore"];
|
|
7465
|
+
var _excluded$h = ["children", "infinite", "onIndexChange", "slidesOffsetBefore", "onActiveChange"];
|
|
7431
7466
|
var MAX_CLONES_NUMBER = 6;
|
|
7467
|
+
var CLICK_DRAG_THRESHOLD = 20;
|
|
7432
7468
|
var getClonesCount = function getClonesCount(infinite, childrenLength) {
|
|
7433
7469
|
if (!infinite) return 0;
|
|
7434
7470
|
if (childrenLength > MAX_CLONES_NUMBER) return MAX_CLONES_NUMBER;
|
|
@@ -7448,13 +7484,29 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7448
7484
|
onIndexChange = _ref.onIndexChange,
|
|
7449
7485
|
_ref$slidesOffsetBefo = _ref.slidesOffsetBefore,
|
|
7450
7486
|
slidesOffsetBefore = _ref$slidesOffsetBefo === void 0 ? 0 : _ref$slidesOffsetBefo,
|
|
7487
|
+
onActiveChange = _ref.onActiveChange,
|
|
7451
7488
|
props = _objectWithoutPropertiesLoose(_ref, _excluded$h);
|
|
7452
7489
|
var containerRef = React.useRef(null);
|
|
7453
7490
|
var childRefs = React.useRef([]);
|
|
7454
7491
|
var startX = React.useRef(0);
|
|
7455
7492
|
var currentTranslate = React.useRef(0);
|
|
7456
7493
|
var isDragging = React.useRef(false);
|
|
7494
|
+
var isMouseDown = React.useRef(false);
|
|
7495
|
+
var isActive = React.useRef(false);
|
|
7496
|
+
var isClickPrevented = React.useRef(false);
|
|
7457
7497
|
var uniqueIdRef = React.useRef(generateDomElementId());
|
|
7498
|
+
var _useState = React.useState(null),
|
|
7499
|
+
dragTranslateX = _useState[0],
|
|
7500
|
+
setDragTranslateX = _useState[1];
|
|
7501
|
+
var _useState2 = React.useState(false),
|
|
7502
|
+
transitioning = _useState2[0],
|
|
7503
|
+
setTransitioning = _useState2[1];
|
|
7504
|
+
var _useState3 = React.useState([]),
|
|
7505
|
+
slideWidths = _useState3[0],
|
|
7506
|
+
setSlideWidths = _useState3[1];
|
|
7507
|
+
var _useState4 = React.useState(0),
|
|
7508
|
+
containerWidth = _useState4[0],
|
|
7509
|
+
setContainerWidth = _useState4[1];
|
|
7458
7510
|
var _useMemo = React.useMemo(function () {
|
|
7459
7511
|
var count = getClonesCount(infinite, children.length);
|
|
7460
7512
|
var leftClones = infinite ? children.slice(-count) : [];
|
|
@@ -7467,65 +7519,74 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7467
7519
|
}, [children, infinite]),
|
|
7468
7520
|
slides = _useMemo.slides,
|
|
7469
7521
|
clonesCount = _useMemo.clonesCount;
|
|
7470
|
-
|
|
7471
|
-
|
|
7472
|
-
|
|
7473
|
-
setCurrentIndex = _useState[1];
|
|
7474
|
-
var _useState2 = React.useState(false),
|
|
7475
|
-
transitioning = _useState2[0],
|
|
7476
|
-
setTransitioning = _useState2[1];
|
|
7477
|
-
var _useState3 = React.useState([]),
|
|
7478
|
-
slideWidths = _useState3[0],
|
|
7479
|
-
setSlideWidths = _useState3[1];
|
|
7480
|
-
var _useState4 = React.useState(0),
|
|
7481
|
-
containerWidth = _useState4[0],
|
|
7482
|
-
setContainerWidth = _useState4[1];
|
|
7522
|
+
var _useState5 = React.useState(infinite ? clonesCount : 0),
|
|
7523
|
+
currentIndex = _useState5[0],
|
|
7524
|
+
setCurrentIndex = _useState5[1];
|
|
7483
7525
|
React.useEffect(function () {
|
|
7484
7526
|
if (!onIndexChange) return;
|
|
7485
7527
|
if (!infinite) {
|
|
7486
7528
|
onIndexChange(currentIndex);
|
|
7487
|
-
|
|
7529
|
+
} else {
|
|
7530
|
+
var offset = currentIndex - clonesCount + children.length;
|
|
7531
|
+
var realIndex = offset % children.length;
|
|
7532
|
+
onIndexChange(realIndex);
|
|
7488
7533
|
}
|
|
7489
|
-
|
|
7490
|
-
var realIndex = offset % children.length;
|
|
7491
|
-
onIndexChange(realIndex);
|
|
7492
|
-
}, [currentIndex, onIndexChange, infinite, children.length]);
|
|
7493
|
-
// Update dimensions
|
|
7534
|
+
}, [currentIndex, onIndexChange, infinite, children.length, clonesCount]);
|
|
7494
7535
|
var updateDimensions = React.useCallback(function () {
|
|
7495
7536
|
if (containerRef.current) setContainerWidth(containerRef.current.offsetWidth);
|
|
7496
7537
|
if (childRefs.current.length) setSlideWidths(childRefs.current.map(getSlidedWidth));
|
|
7497
7538
|
}, []);
|
|
7498
7539
|
React.useEffect(function () {
|
|
7499
|
-
var animationFrameRequestId = requestAnimationFrame(
|
|
7500
|
-
updateDimensions();
|
|
7501
|
-
});
|
|
7540
|
+
var animationFrameRequestId = requestAnimationFrame(updateDimensions);
|
|
7502
7541
|
return function () {
|
|
7503
|
-
cancelAnimationFrame(animationFrameRequestId);
|
|
7542
|
+
return cancelAnimationFrame(animationFrameRequestId);
|
|
7504
7543
|
};
|
|
7505
7544
|
}, [children]);
|
|
7506
7545
|
React.useEffect(function () {
|
|
7507
7546
|
var observer = new ResizeObserver(updateDimensions);
|
|
7508
7547
|
if (containerRef.current) observer.observe(containerRef.current);
|
|
7509
7548
|
return function () {
|
|
7510
|
-
observer.disconnect();
|
|
7549
|
+
return observer.disconnect();
|
|
7511
7550
|
};
|
|
7512
7551
|
}, [children]);
|
|
7513
|
-
|
|
7552
|
+
var setIsActive = function setIsActive() {
|
|
7553
|
+
if (!isActive.current) {
|
|
7554
|
+
isActive.current = true;
|
|
7555
|
+
onActiveChange == null || onActiveChange(true);
|
|
7556
|
+
}
|
|
7557
|
+
};
|
|
7514
7558
|
var getTranslateX = function getTranslateX() {
|
|
7515
|
-
var
|
|
7559
|
+
var offset = slidesOffsetBefore - slideWidths.slice(0, currentIndex).reduce(function (acc, width) {
|
|
7516
7560
|
return acc + width;
|
|
7517
7561
|
}, 0);
|
|
7518
|
-
return
|
|
7562
|
+
return offset + (slidesOffsetBefore || 0);
|
|
7563
|
+
};
|
|
7564
|
+
var navigateOnSwipeEnd = function navigateOnSwipeEnd() {
|
|
7565
|
+
var delta = currentTranslate.current - getTranslateX();
|
|
7566
|
+
var direction = delta > 0 ? -1 : 1;
|
|
7567
|
+
var movedSlides = getMovedSlides(delta, slideWidths);
|
|
7568
|
+
if (Math.abs(delta) > 20) {
|
|
7569
|
+
movedSlides = Math.max(1, movedSlides);
|
|
7570
|
+
var targetIndex = currentIndex + direction * movedSlides;
|
|
7571
|
+
var finalIndex = infinite ? targetIndex : Math.max(0, Math.min(slides.length - 1, targetIndex));
|
|
7572
|
+
setTransitioning(true);
|
|
7573
|
+
setCurrentIndex(finalIndex);
|
|
7574
|
+
} else {
|
|
7575
|
+
setTransitioning(true);
|
|
7576
|
+
setCurrentIndex(function (prev) {
|
|
7577
|
+
return prev;
|
|
7578
|
+
});
|
|
7579
|
+
}
|
|
7580
|
+
setDragTranslateX(null);
|
|
7519
7581
|
};
|
|
7520
7582
|
var canMoveNext = function canMoveNext() {
|
|
7521
7583
|
var totalVisibleWidth = slideWidths.slice(currentIndex).reduce(function (acc, width) {
|
|
7522
7584
|
return acc + width;
|
|
7523
7585
|
}, 0);
|
|
7524
|
-
// In non-infinite mode, only move if there is more to show
|
|
7525
7586
|
return infinite || totalVisibleWidth > containerWidth - (slidesOffsetBefore || 0);
|
|
7526
7587
|
};
|
|
7527
7588
|
var handleTransitionEnd = function handleTransitionEnd() {
|
|
7528
|
-
setTransitioning(false);
|
|
7589
|
+
setTransitioning(false);
|
|
7529
7590
|
if (!infinite) return;
|
|
7530
7591
|
if (currentIndex >= children.length + clonesCount) {
|
|
7531
7592
|
setCurrentIndex(clonesCount);
|
|
@@ -7534,22 +7595,16 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7534
7595
|
}
|
|
7535
7596
|
};
|
|
7536
7597
|
var goToPrev = function goToPrev() {
|
|
7537
|
-
if (transitioning) return;
|
|
7538
|
-
|
|
7539
|
-
setTransitioning(false); // Reset immediately if no more slides
|
|
7540
|
-
return;
|
|
7541
|
-
}
|
|
7598
|
+
if (transitioning) return;
|
|
7599
|
+
setIsActive();
|
|
7542
7600
|
setTransitioning(true);
|
|
7543
7601
|
setCurrentIndex(function (prev) {
|
|
7544
7602
|
return infinite ? prev - 1 : Math.max(0, prev - 1);
|
|
7545
7603
|
});
|
|
7546
7604
|
};
|
|
7547
7605
|
var goToNext = function goToNext() {
|
|
7548
|
-
if (transitioning || !canMoveNext()) return;
|
|
7549
|
-
|
|
7550
|
-
setTransitioning(false); // Reset immediately if no more slides
|
|
7551
|
-
return;
|
|
7552
|
-
}
|
|
7606
|
+
if (transitioning || !canMoveNext()) return;
|
|
7607
|
+
setIsActive();
|
|
7553
7608
|
setTransitioning(true);
|
|
7554
7609
|
setCurrentIndex(function (prev) {
|
|
7555
7610
|
return infinite ? prev + 1 : Math.min(children.length - 1, prev + 1);
|
|
@@ -7562,26 +7617,70 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7562
7617
|
};
|
|
7563
7618
|
});
|
|
7564
7619
|
var handleTouchStart = function handleTouchStart(e) {
|
|
7620
|
+
setIsActive();
|
|
7565
7621
|
startX.current = e.touches[0].clientX;
|
|
7566
7622
|
isDragging.current = true;
|
|
7623
|
+
isClickPrevented.current = false;
|
|
7567
7624
|
setTransitioning(false);
|
|
7568
7625
|
};
|
|
7569
7626
|
var handleTouchMove = function handleTouchMove(e) {
|
|
7570
7627
|
if (!isDragging.current) return;
|
|
7571
7628
|
var deltaX = e.touches[0].clientX - startX.current;
|
|
7572
|
-
|
|
7629
|
+
if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
|
|
7630
|
+
isClickPrevented.current = true;
|
|
7631
|
+
}
|
|
7632
|
+
var visualOffset = getTranslateX() + deltaX;
|
|
7633
|
+
currentTranslate.current = visualOffset;
|
|
7634
|
+
setDragTranslateX(visualOffset);
|
|
7573
7635
|
};
|
|
7574
7636
|
var handleTouchEnd = function handleTouchEnd() {
|
|
7575
7637
|
isDragging.current = false;
|
|
7576
|
-
|
|
7577
|
-
|
|
7578
|
-
|
|
7579
|
-
|
|
7580
|
-
|
|
7638
|
+
navigateOnSwipeEnd();
|
|
7639
|
+
};
|
|
7640
|
+
var handleMouseMove = function handleMouseMove(e) {
|
|
7641
|
+
if (!isDragging.current || !isMouseDown.current || transitioning) return;
|
|
7642
|
+
var deltaX = e.clientX - startX.current;
|
|
7643
|
+
if (Math.abs(deltaX) > CLICK_DRAG_THRESHOLD) {
|
|
7644
|
+
isClickPrevented.current = true;
|
|
7645
|
+
}
|
|
7646
|
+
var visualOffset = getTranslateX() + deltaX;
|
|
7647
|
+
currentTranslate.current = visualOffset;
|
|
7648
|
+
setDragTranslateX(visualOffset);
|
|
7649
|
+
};
|
|
7650
|
+
var _handleMouseUp = function handleMouseUp() {
|
|
7651
|
+
if (!isDragging.current || !isMouseDown.current) return;
|
|
7652
|
+
isDragging.current = false;
|
|
7653
|
+
isMouseDown.current = false;
|
|
7654
|
+
window.removeEventListener('mousemove', handleMouseMove);
|
|
7655
|
+
window.removeEventListener('mouseup', _handleMouseUp);
|
|
7656
|
+
if (!isClickPrevented.current) {
|
|
7657
|
+
setDragTranslateX(null);
|
|
7658
|
+
return;
|
|
7581
7659
|
}
|
|
7660
|
+
navigateOnSwipeEnd();
|
|
7661
|
+
};
|
|
7662
|
+
var handleMouseDown = function handleMouseDown(e) {
|
|
7663
|
+
if (transitioning || e.button !== 0) return;
|
|
7664
|
+
e.preventDefault();
|
|
7665
|
+
setIsActive();
|
|
7666
|
+
startX.current = e.clientX;
|
|
7667
|
+
isDragging.current = true;
|
|
7668
|
+
isMouseDown.current = true;
|
|
7669
|
+
isClickPrevented.current = false;
|
|
7670
|
+
setTransitioning(false);
|
|
7671
|
+
window.addEventListener('mousemove', handleMouseMove);
|
|
7672
|
+
window.addEventListener('mouseup', _handleMouseUp);
|
|
7582
7673
|
};
|
|
7583
7674
|
var onSlideFocus = function onSlideFocus(isVisible, index) {
|
|
7584
|
-
if (!isVisible)
|
|
7675
|
+
if (!isVisible) {
|
|
7676
|
+
setCurrentIndex(index);
|
|
7677
|
+
}
|
|
7678
|
+
};
|
|
7679
|
+
var onClickCapture = function onClickCapture(e) {
|
|
7680
|
+
if (isClickPrevented.current) {
|
|
7681
|
+
e.preventDefault();
|
|
7682
|
+
e.stopPropagation();
|
|
7683
|
+
}
|
|
7585
7684
|
};
|
|
7586
7685
|
var visibleIndexes = getVisibleIndexes(currentIndex, slideWidths, containerWidth, slides.length);
|
|
7587
7686
|
return /*#__PURE__*/React__default.createElement(SwipeContainer, Object.assign({
|
|
@@ -7589,11 +7688,12 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7589
7688
|
onTouchStart: handleTouchStart,
|
|
7590
7689
|
onTouchMove: handleTouchMove,
|
|
7591
7690
|
onTouchEnd: handleTouchEnd,
|
|
7691
|
+
onMouseDown: handleMouseDown,
|
|
7592
7692
|
className: "swipe"
|
|
7593
7693
|
}, props), /*#__PURE__*/React__default.createElement(SwipeTrack, {
|
|
7594
7694
|
className: "swipe-track-wrapper",
|
|
7595
|
-
translateX: getTranslateX(),
|
|
7596
|
-
transitioning: transitioning,
|
|
7695
|
+
translateX: dragTranslateX !== null ? dragTranslateX : getTranslateX(),
|
|
7696
|
+
transitioning: transitioning && dragTranslateX === null,
|
|
7597
7697
|
onTransitionEnd: handleTransitionEnd
|
|
7598
7698
|
}, slides.map(function (child, index) {
|
|
7599
7699
|
var isVisible = visibleIndexes.includes(index);
|
|
@@ -7606,7 +7706,8 @@ var Swipe = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
7606
7706
|
},
|
|
7607
7707
|
onFocus: function onFocus() {
|
|
7608
7708
|
return onSlideFocus(isVisible, index);
|
|
7609
|
-
}
|
|
7709
|
+
},
|
|
7710
|
+
onClickCapture: onClickCapture
|
|
7610
7711
|
});
|
|
7611
7712
|
})));
|
|
7612
7713
|
});
|
|
@@ -7660,19 +7761,23 @@ var Carousel = function Carousel(_ref) {
|
|
|
7660
7761
|
}, [useOffset, active]);
|
|
7661
7762
|
var onNext = function onNext() {
|
|
7662
7763
|
var _swipeRef$current;
|
|
7663
|
-
if (useOffset && !active) setActive(true);
|
|
7664
7764
|
(_swipeRef$current = swipeRef.current) == null || _swipeRef$current.nextSlide();
|
|
7665
7765
|
};
|
|
7666
7766
|
var onPrev = function onPrev() {
|
|
7667
7767
|
var _swipeRef$current2;
|
|
7668
|
-
if (useOffset && !active) setActive(true);
|
|
7669
7768
|
(_swipeRef$current2 = swipeRef.current) == null || _swipeRef$current2.prevSlide();
|
|
7670
7769
|
};
|
|
7770
|
+
var onActiveChangeHandler = function onActiveChangeHandler(value) {
|
|
7771
|
+
if (useOffset && !active) {
|
|
7772
|
+
setActive(value);
|
|
7773
|
+
}
|
|
7774
|
+
};
|
|
7671
7775
|
var carouselTitleId = "carousel-title-" + title;
|
|
7672
7776
|
var Wrapper = type === exports.CarouselType.Image ? ImageCarouselWrapper : CardsCarouselWrapper;
|
|
7673
7777
|
return /*#__PURE__*/React__default.createElement(Wrapper, {
|
|
7674
7778
|
className: className,
|
|
7675
7779
|
type: type,
|
|
7780
|
+
isActive: active,
|
|
7676
7781
|
imagesHeightDevice: imagesHeightDevice,
|
|
7677
7782
|
imagesHeightDesktop: imagesHeightDesktop,
|
|
7678
7783
|
role: "region",
|
|
@@ -7711,6 +7816,9 @@ var Carousel = function Carousel(_ref) {
|
|
|
7711
7816
|
columnStartDevice: 2,
|
|
7712
7817
|
columnSpanDevice: 13
|
|
7713
7818
|
}, /*#__PURE__*/React__default.createElement(Swipe, {
|
|
7819
|
+
onActiveChange: function onActiveChange(value) {
|
|
7820
|
+
return onActiveChangeHandler(value);
|
|
7821
|
+
},
|
|
7714
7822
|
"data-testid": "carousel-swipe",
|
|
7715
7823
|
ref: swipeRef,
|
|
7716
7824
|
infinite: infinite,
|
|
@@ -8047,7 +8155,7 @@ var SvgContainer$2 = /*#__PURE__*/styled__default.div(_templateObject2$E || (_te
|
|
|
8047
8155
|
var isClickable = _ref2.isClickable;
|
|
8048
8156
|
return isClickable && "\n :hover:not(:active) {\n && svg path {\n fill: var(--announcement-banner-hover-color);\n }\n }\n :active {\n && svg path {\n fill: var(--announcement-banner-pressed-color);\n }\n }\n ";
|
|
8049
8157
|
});
|
|
8050
|
-
var ContentContainer$1 = /*#__PURE__*/styled__default.div(_templateObject3$r || (_templateObject3$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow: auto;\n transition: max-height 0.2s ease;\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-sans);\n font-feature-settings: var(--font-feature-settings-body);\n font-weight: var(--font-weight-body-1);\n letter-spacing: var(--letter-spacing-body-1);\n line-height: var(--line-height-body-1);\n text-transform: var(--text-transform-body);\n color: var(--announcement-banner-color);\n a {\n color: var(--announcement-banner-color);\n text-decoration: underline;\n }\n"])));
|
|
8158
|
+
var ContentContainer$1 = /*#__PURE__*/styled__default.div(_templateObject3$r || (_templateObject3$r = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n overflow: auto;\n transition: max-height 0.2s ease;\n font-size: var(--font-size-body-1);\n font-family: var(--font-family-sans);\n font-feature-settings: var(--font-feature-settings-body);\n font-weight: var(--font-weight-body-1);\n letter-spacing: var(--letter-spacing-body-1);\n line-height: var(--line-height-body-1);\n text-transform: var(--text-transform-body);\n color: var(--announcement-banner-color);\n a {\n color: var(--announcement-banner-color);\n text-decoration: underline;\n }\n\n * {\n margin-block-start: 0;\n margin-block-end: 0;\n margin-inline-start: 0;\n margin-inline-end: 0;\n }\n"])));
|
|
8051
8159
|
var OverlineWrapper = /*#__PURE__*/styled__default(HarmonicOverline)(_templateObject4$m || (_templateObject4$m = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n padding-bottom: 4px;\n && {\n color: var(--announcement-banner-color);\n }\n"])));
|
|
8052
8160
|
var BannerContentWrapper = /*#__PURE__*/styled__default(GridItem)(_templateObject5$h || (_templateObject5$h = /*#__PURE__*/_taggedTemplateLiteralLoose(["\n && {\n grid-column: 3 / span 10;\n }\n\n @media ", ", ", " {\n && {\n grid-column: 3 / span 12;\n }\n }\n\n @media ", " {\n margin-left: ", ";\n margin-right: ", ";\n }\n"])), devices.desktop, devices.largeDesktop, devices.mobile, function (_ref3) {
|
|
8053
8161
|
var variant = _ref3.variant;
|