@itcenteratunihelsinki/huds-lib 0.11.0 → 0.12.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/components/cta-button.js +1 -1
- package/components/cta-link.js +1 -1
- package/components/hy-accordion-item.js +1 -1
- package/components/hy-anchor-link-list.js +1 -1
- package/components/hy-breadcrumbs.js +1 -1
- package/components/hy-checkbox.js +1 -1
- package/components/hy-content-list-item2.js +1 -1
- package/components/hy-crisis-banner.js +1 -1
- package/components/hy-dropdown.js +1 -1
- package/components/hy-event-item.js +1 -1
- package/components/hy-events.js +1 -1
- package/components/hy-filter-group.js +1 -1
- package/components/hy-filter-list-type.js +1 -1
- package/components/hy-filter-visibility-tool.js +1 -1
- package/components/hy-footer-action.js +1 -1
- package/components/hy-footer-base.js +1 -1
- package/components/hy-footer-link-item2.js +1 -1
- package/components/hy-general-list-item2.js +1 -1
- package/components/hy-hero-carousel.js +358 -337
- package/components/hy-menu-main-group2.js +1 -1
- package/components/hy-opening-hours.js +1 -1
- package/components/hy-pager-item.js +1 -1
- package/components/hy-person-card.js +1 -1
- package/components/hy-person-profile.js +4 -4
- package/components/hy-search-field2.js +1 -1
- package/components/hy-shortcuts.js +1 -1
- package/components/hy-site-header.js +2 -2
- package/components/hy-tabs2.js +1 -1
- package/components/link-box.js +1 -1
- package/components/menu-language-item.js +1 -1
- package/components/menu-language.js +1 -1
- package/components/site-logo.js +1 -1
- package/components/site-search.js +1 -1
- package/dist/cjs/hy-accordion-container_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-anchor-link-list.cjs.entry.js +1 -1
- package/dist/cjs/hy-breadcrumbs_15.cjs.entry.js +11 -11
- package/dist/cjs/hy-checkbox.cjs.entry.js +1 -1
- package/dist/cjs/hy-content-list_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-crisis-banner.cjs.entry.js +1 -1
- package/dist/cjs/hy-cta-button.cjs.entry.js +1 -1
- package/dist/cjs/hy-cta-link.cjs.entry.js +1 -1
- package/dist/cjs/hy-dropdown.cjs.entry.js +1 -1
- package/dist/cjs/hy-event-item.cjs.entry.js +1 -1
- package/dist/cjs/hy-events.cjs.entry.js +1 -1
- package/dist/cjs/hy-filter-group_6.cjs.entry.js +3 -3
- package/dist/cjs/hy-general-list_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-hero-carousel.cjs.entry.js +358 -337
- package/dist/cjs/hy-link-box_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-menu-main-group.cjs.entry.js +1 -1
- package/dist/cjs/hy-opening-hours_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-pager_2.cjs.entry.js +1 -1
- package/dist/cjs/hy-person-card.cjs.entry.js +1 -1
- package/dist/cjs/hy-person-profile.cjs.entry.js +4 -4
- package/dist/cjs/hy-shortcuts.cjs.entry.js +1 -1
- package/dist/cjs/hy-tabs_2.cjs.entry.js +1 -1
- package/dist/collection/components/footer/hy-footer-action/hy-footer-action.css +6 -0
- package/dist/collection/components/footer/hy-footer-base/hy-footer-base.css +13 -1
- package/dist/collection/components/footer/hy-footer-link-item/hy-footer-link-item.css +18 -0
- package/dist/collection/components/hy-accordion-item/accordion-item.css +6 -0
- package/dist/collection/components/hy-anchor-link-list/hy-anchor-link-list.css +12 -0
- package/dist/collection/components/hy-breadcrumbs/hy-breadcrumbs.css +12 -0
- package/dist/collection/components/hy-checkbox/hy-checkbox.css +12 -8
- package/dist/collection/components/hy-content-lists/hy-content-list-item/hy-content-list-item.css +6 -0
- package/dist/collection/components/hy-crisis-banner/hy-crisis-banner.css +2 -2
- package/dist/collection/components/hy-cta-button/cta-button.css +63 -15
- package/dist/collection/components/hy-cta-link/cta-link.css +8 -2
- package/dist/collection/components/hy-dropdown/hy-dropdown.css +1 -1
- package/dist/collection/components/hy-event-item/hy-event-item.css +4 -4
- package/dist/collection/components/hy-events/hy-events.css +6 -0
- package/dist/collection/components/hy-filter-group/hy-filter-group.css +6 -0
- package/dist/collection/components/hy-filter-list-type/hy-filter-list-type.css +12 -0
- package/dist/collection/components/hy-filter-visibility-tool/hy-filter-visibility-tool.css +8 -4
- package/dist/collection/components/hy-general-list-item/hy-general-list-item.css +8 -2
- package/dist/collection/components/hy-hero-carousel/hy-hero-carousel.css +3 -22
- package/dist/collection/components/hy-hero-carousel/hy-hero-carousel.js +2 -1
- package/dist/collection/components/hy-link-box/link-box.css +4 -1
- package/dist/collection/components/hy-navigation/hy-menu-main-group/hy-menu-main-group.css +29 -2
- package/dist/collection/components/hy-navigation/menu-language/menu-language.css +11 -3
- package/dist/collection/components/hy-navigation/menu-language-item/menu-language-item.css +6 -0
- package/dist/collection/components/hy-opening-hours/hy-opening-hours.css +9 -2
- package/dist/collection/components/hy-pagination/hy-pager-item/hy-pager-item.css +6 -0
- package/dist/collection/components/hy-person-card/hy-person-card.css +1 -1
- package/dist/collection/components/hy-person-profile/person-profile.js +4 -4
- package/dist/collection/components/hy-search-field/hy-search-field.css +12 -6
- package/dist/collection/components/hy-shortcuts/hy-shortcuts.css +6 -0
- package/dist/collection/components/hy-site-header/site-header.css +24 -4
- package/dist/collection/components/hy-site-header/site-header.js +1 -1
- package/dist/collection/components/hy-site-header/site-logo/site-logo.css +6 -4
- package/dist/collection/components/hy-site-header/site-search/site-search.css +20 -6
- package/dist/collection/components/hy-tabs/hy-tabs.css +12 -4
- package/dist/esm/hy-accordion-container_2.entry.js +1 -1
- package/dist/esm/hy-anchor-link-list.entry.js +1 -1
- package/dist/esm/hy-breadcrumbs_15.entry.js +11 -11
- package/dist/esm/hy-checkbox.entry.js +1 -1
- package/dist/esm/hy-content-list_2.entry.js +1 -1
- package/dist/esm/hy-crisis-banner.entry.js +1 -1
- package/dist/esm/hy-cta-button.entry.js +1 -1
- package/dist/esm/hy-cta-link.entry.js +1 -1
- package/dist/esm/hy-dropdown.entry.js +1 -1
- package/dist/esm/hy-event-item.entry.js +1 -1
- package/dist/esm/hy-events.entry.js +1 -1
- package/dist/esm/hy-filter-group_6.entry.js +3 -3
- package/dist/esm/hy-general-list_2.entry.js +1 -1
- package/dist/esm/hy-hero-carousel.entry.js +358 -337
- package/dist/esm/hy-link-box_2.entry.js +1 -1
- package/dist/esm/hy-menu-main-group.entry.js +1 -1
- package/dist/esm/hy-opening-hours_2.entry.js +1 -1
- package/dist/esm/hy-pager_2.entry.js +1 -1
- package/dist/esm/hy-person-card.entry.js +1 -1
- package/dist/esm/hy-person-profile.entry.js +4 -4
- package/dist/esm/hy-shortcuts.entry.js +1 -1
- package/dist/esm/hy-tabs_2.entry.js +1 -1
- package/dist/huds-lib/hy-accordion-container_2.entry.js +1 -1
- package/dist/huds-lib/hy-anchor-link-list.entry.js +1 -1
- package/dist/huds-lib/hy-breadcrumbs_15.entry.js +1 -1
- package/dist/huds-lib/hy-checkbox.entry.js +1 -1
- package/dist/huds-lib/hy-content-list_2.entry.js +1 -1
- package/dist/huds-lib/hy-crisis-banner.entry.js +1 -1
- package/dist/huds-lib/hy-cta-button.entry.js +1 -1
- package/dist/huds-lib/hy-cta-link.entry.js +1 -1
- package/dist/huds-lib/hy-dropdown.entry.js +1 -1
- package/dist/huds-lib/hy-event-item.entry.js +1 -1
- package/dist/huds-lib/hy-events.entry.js +1 -1
- package/dist/huds-lib/hy-filter-group_6.entry.js +1 -1
- package/dist/huds-lib/hy-general-list_2.entry.js +1 -1
- package/dist/huds-lib/hy-hero-carousel.entry.js +1 -1
- package/dist/huds-lib/hy-link-box_2.entry.js +1 -1
- package/dist/huds-lib/hy-menu-main-group.entry.js +1 -1
- package/dist/huds-lib/hy-opening-hours_2.entry.js +1 -1
- package/dist/huds-lib/hy-pager_2.entry.js +1 -1
- package/dist/huds-lib/hy-person-card.entry.js +1 -1
- package/dist/huds-lib/hy-person-profile.entry.js +1 -1
- package/dist/huds-lib/hy-shortcuts.entry.js +1 -1
- package/dist/huds-lib/hy-tabs_2.entry.js +1 -1
- package/package.json +3 -3
|
@@ -3,28 +3,23 @@ import { j as jsonParserWorker } from './globalScript-3f479486.js';
|
|
|
3
3
|
import { d as CtaLinkButtonVariants } from './utils-1e7f5184.js';
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
-
* SSR Window
|
|
6
|
+
* SSR Window 5.0.1
|
|
7
7
|
* Better handling for window object in SSR environment
|
|
8
8
|
* https://github.com/nolimits4web/ssr-window
|
|
9
9
|
*
|
|
10
|
-
* Copyright
|
|
10
|
+
* Copyright 2025, Vladimir Kharlampidi
|
|
11
11
|
*
|
|
12
12
|
* Licensed under MIT
|
|
13
13
|
*
|
|
14
|
-
* Released on:
|
|
14
|
+
* Released on: June 27, 2025
|
|
15
15
|
*/
|
|
16
16
|
/* eslint-disable no-param-reassign */
|
|
17
17
|
function isObject$1(obj) {
|
|
18
18
|
return obj !== null && typeof obj === 'object' && 'constructor' in obj && obj.constructor === Object;
|
|
19
19
|
}
|
|
20
|
-
function extend$1(target, src) {
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}
|
|
24
|
-
if (src === void 0) {
|
|
25
|
-
src = {};
|
|
26
|
-
}
|
|
27
|
-
Object.keys(src).forEach(key => {
|
|
20
|
+
function extend$1(target = {}, src = {}) {
|
|
21
|
+
const noExtend = ['__proto__', 'constructor', 'prototype'];
|
|
22
|
+
Object.keys(src).filter(key => noExtend.indexOf(key) < 0).forEach(key => {
|
|
28
23
|
if (typeof target[key] === 'undefined') target[key] = src[key];else if (isObject$1(src[key]) && isObject$1(target[key]) && Object.keys(src[key]).length > 0) {
|
|
29
24
|
extend$1(target[key], src[key]);
|
|
30
25
|
}
|
|
@@ -146,10 +141,7 @@ function getWindow() {
|
|
|
146
141
|
return win;
|
|
147
142
|
}
|
|
148
143
|
|
|
149
|
-
function classesToTokens(classes) {
|
|
150
|
-
if (classes === void 0) {
|
|
151
|
-
classes = '';
|
|
152
|
-
}
|
|
144
|
+
function classesToTokens(classes = '') {
|
|
153
145
|
return classes.trim().split(' ').filter(c => !!c.trim());
|
|
154
146
|
}
|
|
155
147
|
|
|
@@ -168,10 +160,7 @@ function deleteProps(obj) {
|
|
|
168
160
|
}
|
|
169
161
|
});
|
|
170
162
|
}
|
|
171
|
-
function nextTick(callback, delay) {
|
|
172
|
-
if (delay === void 0) {
|
|
173
|
-
delay = 0;
|
|
174
|
-
}
|
|
163
|
+
function nextTick(callback, delay = 0) {
|
|
175
164
|
return setTimeout(callback, delay);
|
|
176
165
|
}
|
|
177
166
|
function now() {
|
|
@@ -191,10 +180,7 @@ function getComputedStyle$1(el) {
|
|
|
191
180
|
}
|
|
192
181
|
return style;
|
|
193
182
|
}
|
|
194
|
-
function getTranslate(el, axis) {
|
|
195
|
-
if (axis === void 0) {
|
|
196
|
-
axis = 'x';
|
|
197
|
-
}
|
|
183
|
+
function getTranslate(el, axis = 'x') {
|
|
198
184
|
const window = getWindow();
|
|
199
185
|
let matrix;
|
|
200
186
|
let curTransform;
|
|
@@ -240,13 +226,12 @@ function isNode(node) {
|
|
|
240
226
|
}
|
|
241
227
|
return node && (node.nodeType === 1 || node.nodeType === 11);
|
|
242
228
|
}
|
|
243
|
-
function extend() {
|
|
244
|
-
const to = Object(
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
const nextSource = i < 0 || arguments.length <= i ? undefined : arguments[i];
|
|
229
|
+
function extend(...args) {
|
|
230
|
+
const to = Object(args[0]);
|
|
231
|
+
for (let i = 1; i < args.length; i += 1) {
|
|
232
|
+
const nextSource = args[i];
|
|
248
233
|
if (nextSource !== undefined && nextSource !== null && !isNode(nextSource)) {
|
|
249
|
-
const keysArray = Object.keys(Object(nextSource)).filter(key =>
|
|
234
|
+
const keysArray = Object.keys(Object(nextSource)).filter(key => key !== '__proto__' && key !== 'constructor' && key !== 'prototype');
|
|
250
235
|
for (let nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex += 1) {
|
|
251
236
|
const nextKey = keysArray[nextIndex];
|
|
252
237
|
const desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);
|
|
@@ -276,12 +261,11 @@ function extend() {
|
|
|
276
261
|
function setCSSProperty(el, varName, varValue) {
|
|
277
262
|
el.style.setProperty(varName, varValue);
|
|
278
263
|
}
|
|
279
|
-
function animateCSSModeScroll(
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
|
|
284
|
-
} = _ref;
|
|
264
|
+
function animateCSSModeScroll({
|
|
265
|
+
swiper,
|
|
266
|
+
targetPosition,
|
|
267
|
+
side
|
|
268
|
+
}) {
|
|
285
269
|
const window = getWindow();
|
|
286
270
|
const startPosition = -swiper.translate;
|
|
287
271
|
let startTime = null;
|
|
@@ -326,12 +310,10 @@ function animateCSSModeScroll(_ref) {
|
|
|
326
310
|
function getSlideTransformEl(slideEl) {
|
|
327
311
|
return slideEl.querySelector('.swiper-slide-transform') || slideEl.shadowRoot && slideEl.shadowRoot.querySelector('.swiper-slide-transform') || slideEl;
|
|
328
312
|
}
|
|
329
|
-
function elementChildren(element, selector) {
|
|
330
|
-
|
|
331
|
-
selector = '';
|
|
332
|
-
}
|
|
313
|
+
function elementChildren(element, selector = '') {
|
|
314
|
+
const window = getWindow();
|
|
333
315
|
const children = [...element.children];
|
|
334
|
-
if (element instanceof HTMLSlotElement) {
|
|
316
|
+
if (window.HTMLSlotElement && element instanceof HTMLSlotElement) {
|
|
335
317
|
children.push(...element.assignedElements());
|
|
336
318
|
}
|
|
337
319
|
if (!selector) {
|
|
@@ -339,11 +321,26 @@ function elementChildren(element, selector) {
|
|
|
339
321
|
}
|
|
340
322
|
return children.filter(el => el.matches(selector));
|
|
341
323
|
}
|
|
324
|
+
function elementIsChildOfSlot(el, slot) {
|
|
325
|
+
// Breadth-first search through all parent's children and assigned elements
|
|
326
|
+
const elementsQueue = [slot];
|
|
327
|
+
while (elementsQueue.length > 0) {
|
|
328
|
+
const elementToCheck = elementsQueue.shift();
|
|
329
|
+
if (el === elementToCheck) {
|
|
330
|
+
return true;
|
|
331
|
+
}
|
|
332
|
+
elementsQueue.push(...elementToCheck.children, ...(elementToCheck.shadowRoot ? elementToCheck.shadowRoot.children : []), ...(elementToCheck.assignedElements ? elementToCheck.assignedElements() : []));
|
|
333
|
+
}
|
|
334
|
+
}
|
|
342
335
|
function elementIsChildOf(el, parent) {
|
|
343
|
-
const
|
|
344
|
-
|
|
336
|
+
const window = getWindow();
|
|
337
|
+
let isChild = parent.contains(el);
|
|
338
|
+
if (!isChild && window.HTMLSlotElement && parent instanceof HTMLSlotElement) {
|
|
345
339
|
const children = [...parent.assignedElements()];
|
|
346
|
-
|
|
340
|
+
isChild = children.includes(el);
|
|
341
|
+
if (!isChild) {
|
|
342
|
+
isChild = elementIsChildOfSlot(el, parent);
|
|
343
|
+
}
|
|
347
344
|
}
|
|
348
345
|
return isChild;
|
|
349
346
|
}
|
|
@@ -355,10 +352,7 @@ function showWarning(text) {
|
|
|
355
352
|
// err
|
|
356
353
|
}
|
|
357
354
|
}
|
|
358
|
-
function createElement(tag, classes) {
|
|
359
|
-
if (classes === void 0) {
|
|
360
|
-
classes = [];
|
|
361
|
-
}
|
|
355
|
+
function createElement(tag, classes = []) {
|
|
362
356
|
const el = document.createElement(tag);
|
|
363
357
|
el.classList.add(...(Array.isArray(classes) ? classes : classesToTokens(classes)));
|
|
364
358
|
return el;
|
|
@@ -435,6 +429,15 @@ function elementOuterSize(el, size, includeMargins) {
|
|
|
435
429
|
function makeElementsArray(el) {
|
|
436
430
|
return (Array.isArray(el) ? el : [el]).filter(e => !!e);
|
|
437
431
|
}
|
|
432
|
+
function setInnerHTML(el, html = '') {
|
|
433
|
+
if (typeof trustedTypes !== 'undefined') {
|
|
434
|
+
el.innerHTML = trustedTypes.createPolicy('html', {
|
|
435
|
+
createHTML: s => s
|
|
436
|
+
}).createHTML(html);
|
|
437
|
+
} else {
|
|
438
|
+
el.innerHTML = html;
|
|
439
|
+
}
|
|
440
|
+
}
|
|
438
441
|
|
|
439
442
|
let support;
|
|
440
443
|
function calcSupport() {
|
|
@@ -453,10 +456,9 @@ function getSupport() {
|
|
|
453
456
|
}
|
|
454
457
|
|
|
455
458
|
let deviceCached;
|
|
456
|
-
function calcDevice(
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
} = _temp === void 0 ? {} : _temp;
|
|
459
|
+
function calcDevice({
|
|
460
|
+
userAgent
|
|
461
|
+
} = {}) {
|
|
460
462
|
const support = getSupport();
|
|
461
463
|
const window = getWindow();
|
|
462
464
|
const platform = window.navigator.platform;
|
|
@@ -468,7 +470,7 @@ function calcDevice(_temp) {
|
|
|
468
470
|
const screenWidth = window.screen.width;
|
|
469
471
|
const screenHeight = window.screen.height;
|
|
470
472
|
const android = ua.match(/(Android);?[\s\/]+([\d.]+)?/); // eslint-disable-line
|
|
471
|
-
let ipad = ua.match(/(iPad).*OS\s([\d_]+)/);
|
|
473
|
+
let ipad = ua.match(/(iPad)(?!\1).*OS\s([\d_]+)/);
|
|
472
474
|
const ipod = ua.match(/(iPod)(.*OS\s([\d_]+))?/);
|
|
473
475
|
const iphone = !ipad && ua.match(/(iPhone\sOS|iOS)\s([\d_]+)/);
|
|
474
476
|
const windows = platform === 'Win32';
|
|
@@ -495,10 +497,7 @@ function calcDevice(_temp) {
|
|
|
495
497
|
// Export object
|
|
496
498
|
return device;
|
|
497
499
|
}
|
|
498
|
-
function getDevice(overrides) {
|
|
499
|
-
if (overrides === void 0) {
|
|
500
|
-
overrides = {};
|
|
501
|
-
}
|
|
500
|
+
function getDevice(overrides = {}) {
|
|
502
501
|
if (!deviceCached) {
|
|
503
502
|
deviceCached = calcDevice(overrides);
|
|
504
503
|
}
|
|
@@ -538,12 +537,11 @@ function getBrowser() {
|
|
|
538
537
|
return browser;
|
|
539
538
|
}
|
|
540
539
|
|
|
541
|
-
function Resize(
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
} = _ref;
|
|
540
|
+
function Resize({
|
|
541
|
+
swiper,
|
|
542
|
+
on,
|
|
543
|
+
emit
|
|
544
|
+
}) {
|
|
547
545
|
const window = getWindow();
|
|
548
546
|
let observer = null;
|
|
549
547
|
let animationFrame = null;
|
|
@@ -562,12 +560,11 @@ function Resize(_ref) {
|
|
|
562
560
|
} = swiper;
|
|
563
561
|
let newWidth = width;
|
|
564
562
|
let newHeight = height;
|
|
565
|
-
entries.forEach(
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
} = _ref2;
|
|
563
|
+
entries.forEach(({
|
|
564
|
+
contentBoxSize,
|
|
565
|
+
contentRect,
|
|
566
|
+
target
|
|
567
|
+
}) => {
|
|
571
568
|
if (target && target !== swiper.el) return;
|
|
572
569
|
newWidth = contentRect ? contentRect.width : (contentBoxSize[0] || contentBoxSize).inlineSize;
|
|
573
570
|
newHeight = contentRect ? contentRect.height : (contentBoxSize[0] || contentBoxSize).blockSize;
|
|
@@ -607,19 +604,15 @@ function Resize(_ref) {
|
|
|
607
604
|
});
|
|
608
605
|
}
|
|
609
606
|
|
|
610
|
-
function Observer(
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
} = _ref;
|
|
607
|
+
function Observer({
|
|
608
|
+
swiper,
|
|
609
|
+
extendParams,
|
|
610
|
+
on,
|
|
611
|
+
emit
|
|
612
|
+
}) {
|
|
617
613
|
const observers = [];
|
|
618
614
|
const window = getWindow();
|
|
619
|
-
const attach =
|
|
620
|
-
if (options === void 0) {
|
|
621
|
-
options = {};
|
|
622
|
-
}
|
|
615
|
+
const attach = (target, options = {}) => {
|
|
623
616
|
const ObserverFunc = window.MutationObserver || window.WebkitMutationObserver;
|
|
624
617
|
const observer = new ObserverFunc(mutations => {
|
|
625
618
|
// The observerUpdate event should only be triggered
|
|
@@ -697,14 +690,11 @@ var eventsEmitter = {
|
|
|
697
690
|
const self = this;
|
|
698
691
|
if (!self.eventsListeners || self.destroyed) return self;
|
|
699
692
|
if (typeof handler !== 'function') return self;
|
|
700
|
-
function onceHandler() {
|
|
693
|
+
function onceHandler(...args) {
|
|
701
694
|
self.off(events, onceHandler);
|
|
702
695
|
if (onceHandler.__emitterProxy) {
|
|
703
696
|
delete onceHandler.__emitterProxy;
|
|
704
697
|
}
|
|
705
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
706
|
-
args[_key] = arguments[_key];
|
|
707
|
-
}
|
|
708
698
|
handler.apply(self, args);
|
|
709
699
|
}
|
|
710
700
|
onceHandler.__emitterProxy = handler;
|
|
@@ -747,16 +737,13 @@ var eventsEmitter = {
|
|
|
747
737
|
});
|
|
748
738
|
return self;
|
|
749
739
|
},
|
|
750
|
-
emit() {
|
|
740
|
+
emit(...args) {
|
|
751
741
|
const self = this;
|
|
752
742
|
if (!self.eventsListeners || self.destroyed) return self;
|
|
753
743
|
if (!self.eventsListeners) return self;
|
|
754
744
|
let events;
|
|
755
745
|
let data;
|
|
756
746
|
let context;
|
|
757
|
-
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
758
|
-
args[_key2] = arguments[_key2];
|
|
759
|
-
}
|
|
760
747
|
if (typeof args[0] === 'string' || Array.isArray(args[0])) {
|
|
761
748
|
events = args[0];
|
|
762
749
|
data = args.slice(1, args.length);
|
|
@@ -824,7 +811,6 @@ function updateSlides() {
|
|
|
824
811
|
const {
|
|
825
812
|
wrapperEl,
|
|
826
813
|
slidesEl,
|
|
827
|
-
size: swiperSize,
|
|
828
814
|
rtlTranslate: rtl,
|
|
829
815
|
wrongRTL
|
|
830
816
|
} = swiper;
|
|
@@ -845,6 +831,7 @@ function updateSlides() {
|
|
|
845
831
|
}
|
|
846
832
|
const previousSnapGridLength = swiper.snapGrid.length;
|
|
847
833
|
const previousSlidesGridLength = swiper.slidesGrid.length;
|
|
834
|
+
const swiperSize = swiper.size - offsetBefore - offsetAfter;
|
|
848
835
|
let spaceBetween = params.spaceBetween;
|
|
849
836
|
let slidePosition = -offsetBefore;
|
|
850
837
|
let prevSlideSize = 0;
|
|
@@ -857,7 +844,7 @@ function updateSlides() {
|
|
|
857
844
|
} else if (typeof spaceBetween === 'string') {
|
|
858
845
|
spaceBetween = parseFloat(spaceBetween);
|
|
859
846
|
}
|
|
860
|
-
swiper.virtualSize = -spaceBetween;
|
|
847
|
+
swiper.virtualSize = -spaceBetween - offsetBefore - offsetAfter;
|
|
861
848
|
|
|
862
849
|
// reset margins
|
|
863
850
|
slides.forEach(slideEl => {
|
|
@@ -875,6 +862,12 @@ function updateSlides() {
|
|
|
875
862
|
setCSSProperty(wrapperEl, '--swiper-centered-offset-before', '');
|
|
876
863
|
setCSSProperty(wrapperEl, '--swiper-centered-offset-after', '');
|
|
877
864
|
}
|
|
865
|
+
|
|
866
|
+
// set cssMode offsets
|
|
867
|
+
if (params.cssMode) {
|
|
868
|
+
setCSSProperty(wrapperEl, '--swiper-slides-offset-before', `${offsetBefore}px`);
|
|
869
|
+
setCSSProperty(wrapperEl, '--swiper-slides-offset-after', `${offsetAfter}px`);
|
|
870
|
+
}
|
|
878
871
|
const gridEnabled = params.grid && params.grid.rows > 1 && swiper.grid;
|
|
879
872
|
if (gridEnabled) {
|
|
880
873
|
swiper.grid.initSlides(slides);
|
|
@@ -889,16 +882,25 @@ function updateSlides() {
|
|
|
889
882
|
}).length > 0;
|
|
890
883
|
for (let i = 0; i < slidesLength; i += 1) {
|
|
891
884
|
slideSize = 0;
|
|
892
|
-
|
|
893
|
-
if (
|
|
894
|
-
|
|
895
|
-
|
|
885
|
+
const slide = slides[i];
|
|
886
|
+
if (slide) {
|
|
887
|
+
if (gridEnabled) {
|
|
888
|
+
swiper.grid.updateSlide(i, slide, slides);
|
|
889
|
+
}
|
|
890
|
+
if (elementStyle(slide, 'display') === 'none') continue; // eslint-disable-line
|
|
896
891
|
}
|
|
897
|
-
if (slides[i] && elementStyle(slide, 'display') === 'none') continue; // eslint-disable-line
|
|
898
892
|
|
|
899
|
-
if (params.slidesPerView === 'auto') {
|
|
893
|
+
if (isVirtual && params.slidesPerView === 'auto') {
|
|
894
|
+
if (params.virtual.slidesPerViewAutoSlideSize) {
|
|
895
|
+
slideSize = params.virtual.slidesPerViewAutoSlideSize;
|
|
896
|
+
}
|
|
897
|
+
if (slideSize && slide) {
|
|
898
|
+
if (params.roundLengths) slideSize = Math.floor(slideSize);
|
|
899
|
+
slide.style[swiper.getDirectionLabel('width')] = `${slideSize}px`;
|
|
900
|
+
}
|
|
901
|
+
} else if (params.slidesPerView === 'auto') {
|
|
900
902
|
if (shouldResetSlideSize) {
|
|
901
|
-
|
|
903
|
+
slide.style[swiper.getDirectionLabel('width')] = ``;
|
|
902
904
|
}
|
|
903
905
|
const slideStyles = getComputedStyle(slide);
|
|
904
906
|
const currentTransform = slide.style.transform;
|
|
@@ -939,12 +941,12 @@ function updateSlides() {
|
|
|
939
941
|
} else {
|
|
940
942
|
slideSize = (swiperSize - (params.slidesPerView - 1) * spaceBetween) / params.slidesPerView;
|
|
941
943
|
if (params.roundLengths) slideSize = Math.floor(slideSize);
|
|
942
|
-
if (
|
|
943
|
-
|
|
944
|
+
if (slide) {
|
|
945
|
+
slide.style[swiper.getDirectionLabel('width')] = `${slideSize}px`;
|
|
944
946
|
}
|
|
945
947
|
}
|
|
946
|
-
if (
|
|
947
|
-
|
|
948
|
+
if (slide) {
|
|
949
|
+
slide.swiperSlideSize = slideSize;
|
|
948
950
|
}
|
|
949
951
|
slidesSizesGrid.push(slideSize);
|
|
950
952
|
if (params.centeredSlides) {
|
|
@@ -978,17 +980,52 @@ function updateSlides() {
|
|
|
978
980
|
|
|
979
981
|
// Remove last grid elements depending on width
|
|
980
982
|
if (!params.centeredSlides) {
|
|
983
|
+
// Check if snapToSlideEdge should be applied
|
|
984
|
+
const isFractionalSlidesPerView = params.slidesPerView !== 'auto' && params.slidesPerView % 1 !== 0;
|
|
985
|
+
const shouldSnapToSlideEdge = params.snapToSlideEdge && !params.loop && (params.slidesPerView === 'auto' || isFractionalSlidesPerView);
|
|
986
|
+
|
|
987
|
+
// Calculate the last allowed snap index when snapToSlideEdge is enabled
|
|
988
|
+
// This ensures minimum slides are visible at the end
|
|
989
|
+
let lastAllowedSnapIndex = snapGrid.length;
|
|
990
|
+
if (shouldSnapToSlideEdge) {
|
|
991
|
+
let minVisibleSlides;
|
|
992
|
+
if (params.slidesPerView === 'auto') {
|
|
993
|
+
// For 'auto' mode, calculate how many slides fit based on actual sizes
|
|
994
|
+
minVisibleSlides = 1;
|
|
995
|
+
let accumulatedSize = 0;
|
|
996
|
+
for (let i = slidesSizesGrid.length - 1; i >= 0; i -= 1) {
|
|
997
|
+
accumulatedSize += slidesSizesGrid[i] + (i < slidesSizesGrid.length - 1 ? spaceBetween : 0);
|
|
998
|
+
if (accumulatedSize <= swiperSize) {
|
|
999
|
+
minVisibleSlides = slidesSizesGrid.length - i;
|
|
1000
|
+
} else {
|
|
1001
|
+
break;
|
|
1002
|
+
}
|
|
1003
|
+
}
|
|
1004
|
+
} else {
|
|
1005
|
+
minVisibleSlides = Math.floor(params.slidesPerView);
|
|
1006
|
+
}
|
|
1007
|
+
lastAllowedSnapIndex = Math.max(slidesLength - minVisibleSlides, 0);
|
|
1008
|
+
}
|
|
981
1009
|
const newSlidesGrid = [];
|
|
982
1010
|
for (let i = 0; i < snapGrid.length; i += 1) {
|
|
983
1011
|
let slidesGridItem = snapGrid[i];
|
|
984
1012
|
if (params.roundLengths) slidesGridItem = Math.floor(slidesGridItem);
|
|
985
|
-
if (
|
|
1013
|
+
if (shouldSnapToSlideEdge) {
|
|
1014
|
+
// When snapToSlideEdge is enabled, only keep snaps up to lastAllowedSnapIndex
|
|
1015
|
+
if (i <= lastAllowedSnapIndex) {
|
|
1016
|
+
newSlidesGrid.push(slidesGridItem);
|
|
1017
|
+
}
|
|
1018
|
+
} else if (snapGrid[i] <= swiper.virtualSize - swiperSize) {
|
|
1019
|
+
// When snapToSlideEdge is disabled, keep snaps that fit within scrollable area
|
|
986
1020
|
newSlidesGrid.push(slidesGridItem);
|
|
987
1021
|
}
|
|
988
1022
|
}
|
|
989
1023
|
snapGrid = newSlidesGrid;
|
|
990
1024
|
if (Math.floor(swiper.virtualSize - swiperSize) - Math.floor(snapGrid[snapGrid.length - 1]) > 1) {
|
|
991
|
-
|
|
1025
|
+
// Only add edge-aligned snap if snapToSlideEdge is not enabled
|
|
1026
|
+
if (!shouldSnapToSlideEdge) {
|
|
1027
|
+
snapGrid.push(swiper.virtualSize - swiperSize);
|
|
1028
|
+
}
|
|
992
1029
|
}
|
|
993
1030
|
}
|
|
994
1031
|
if (isVirtual && params.loop) {
|
|
@@ -1040,9 +1077,8 @@ function updateSlides() {
|
|
|
1040
1077
|
allSlidesSize += slideSizeValue + (spaceBetween || 0);
|
|
1041
1078
|
});
|
|
1042
1079
|
allSlidesSize -= spaceBetween;
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
const allSlidesOffset = (swiperSize - allSlidesSize - offsetSize) / 2;
|
|
1080
|
+
if (allSlidesSize < swiperSize) {
|
|
1081
|
+
const allSlidesOffset = (swiperSize - allSlidesSize) / 2;
|
|
1046
1082
|
snapGrid.forEach((snap, snapIndex) => {
|
|
1047
1083
|
snapGrid[snapIndex] = snap - allSlidesOffset;
|
|
1048
1084
|
});
|
|
@@ -1153,10 +1189,7 @@ const toggleSlideClasses$1 = (slideEl, condition, className) => {
|
|
|
1153
1189
|
slideEl.classList.remove(className);
|
|
1154
1190
|
}
|
|
1155
1191
|
};
|
|
1156
|
-
function updateSlidesProgress(translate) {
|
|
1157
|
-
if (translate === void 0) {
|
|
1158
|
-
translate = this && this.translate || 0;
|
|
1159
|
-
}
|
|
1192
|
+
function updateSlidesProgress(translate = this && this.translate || 0) {
|
|
1160
1193
|
const swiper = this;
|
|
1161
1194
|
const params = swiper.params;
|
|
1162
1195
|
const {
|
|
@@ -1296,9 +1329,9 @@ function updateSlidesClasses() {
|
|
|
1296
1329
|
}
|
|
1297
1330
|
} else {
|
|
1298
1331
|
if (gridEnabled) {
|
|
1299
|
-
activeSlide = slides.
|
|
1300
|
-
nextSlide = slides.
|
|
1301
|
-
prevSlide = slides.
|
|
1332
|
+
activeSlide = slides.find(slideEl => slideEl.column === activeIndex);
|
|
1333
|
+
nextSlide = slides.find(slideEl => slideEl.column === activeIndex + 1);
|
|
1334
|
+
prevSlide = slides.find(slideEl => slideEl.column === activeIndex - 1);
|
|
1302
1335
|
} else {
|
|
1303
1336
|
activeSlide = slides[activeIndex];
|
|
1304
1337
|
}
|
|
@@ -1340,12 +1373,13 @@ const processLazyPreloader = (swiper, imageEl) => {
|
|
|
1340
1373
|
requestAnimationFrame(() => {
|
|
1341
1374
|
if (slideEl.shadowRoot) {
|
|
1342
1375
|
lazyEl = slideEl.shadowRoot.querySelector(`.${swiper.params.lazyPreloaderClass}`);
|
|
1343
|
-
if (lazyEl) lazyEl.remove();
|
|
1376
|
+
if (lazyEl && !lazyEl.lazyPreloaderManaged) lazyEl.remove();
|
|
1344
1377
|
}
|
|
1345
1378
|
});
|
|
1346
1379
|
}
|
|
1347
1380
|
}
|
|
1348
|
-
if
|
|
1381
|
+
// Skip removal if managed by React/Vue component
|
|
1382
|
+
if (lazyEl && !lazyEl.lazyPreloaderManaged) lazyEl.remove();
|
|
1349
1383
|
}
|
|
1350
1384
|
};
|
|
1351
1385
|
const unlazy = (swiper, index) => {
|
|
@@ -1460,10 +1494,14 @@ function updateActiveIndex(newActiveIndex) {
|
|
|
1460
1494
|
|
|
1461
1495
|
// Get real index
|
|
1462
1496
|
let realIndex;
|
|
1463
|
-
if (swiper.virtual && params.virtual.enabled
|
|
1464
|
-
|
|
1497
|
+
if (swiper.virtual && params.virtual.enabled) {
|
|
1498
|
+
if (params.loop) {
|
|
1499
|
+
realIndex = getVirtualRealIndex(activeIndex);
|
|
1500
|
+
} else {
|
|
1501
|
+
realIndex = activeIndex;
|
|
1502
|
+
}
|
|
1465
1503
|
} else if (gridEnabled) {
|
|
1466
|
-
const firstSlideInColumn = swiper.slides.
|
|
1504
|
+
const firstSlideInColumn = swiper.slides.find(slideEl => slideEl.column === activeIndex);
|
|
1467
1505
|
let activeSlideIndex = parseInt(firstSlideInColumn.getAttribute('data-swiper-slide-index'), 10);
|
|
1468
1506
|
if (Number.isNaN(activeSlideIndex)) {
|
|
1469
1507
|
activeSlideIndex = Math.max(swiper.slides.indexOf(firstSlideInColumn), 0);
|
|
@@ -1551,10 +1589,7 @@ var update = {
|
|
|
1551
1589
|
updateClickedSlide
|
|
1552
1590
|
};
|
|
1553
1591
|
|
|
1554
|
-
function getSwiperTranslate(axis) {
|
|
1555
|
-
if (axis === void 0) {
|
|
1556
|
-
axis = this.isHorizontal() ? 'x' : 'y';
|
|
1557
|
-
}
|
|
1592
|
+
function getSwiperTranslate(axis = this.isHorizontal() ? 'x' : 'y') {
|
|
1558
1593
|
const swiper = this;
|
|
1559
1594
|
const {
|
|
1560
1595
|
params,
|
|
@@ -1629,19 +1664,7 @@ function maxTranslate() {
|
|
|
1629
1664
|
return -this.snapGrid[this.snapGrid.length - 1];
|
|
1630
1665
|
}
|
|
1631
1666
|
|
|
1632
|
-
function translateTo(translate, speed, runCallbacks, translateBounds, internal) {
|
|
1633
|
-
if (translate === void 0) {
|
|
1634
|
-
translate = 0;
|
|
1635
|
-
}
|
|
1636
|
-
if (speed === void 0) {
|
|
1637
|
-
speed = this.params.speed;
|
|
1638
|
-
}
|
|
1639
|
-
if (runCallbacks === void 0) {
|
|
1640
|
-
runCallbacks = true;
|
|
1641
|
-
}
|
|
1642
|
-
if (translateBounds === void 0) {
|
|
1643
|
-
translateBounds = true;
|
|
1644
|
-
}
|
|
1667
|
+
function translateTo(translate = 0, speed = this.params.speed, runCallbacks = true, translateBounds = true, internal) {
|
|
1645
1668
|
const swiper = this;
|
|
1646
1669
|
const {
|
|
1647
1670
|
params,
|
|
@@ -1729,13 +1752,12 @@ function setTransition(duration, byController) {
|
|
|
1729
1752
|
swiper.emit('setTransition', duration, byController);
|
|
1730
1753
|
}
|
|
1731
1754
|
|
|
1732
|
-
function transitionEmit(
|
|
1733
|
-
|
|
1734
|
-
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
} = _ref;
|
|
1755
|
+
function transitionEmit({
|
|
1756
|
+
swiper,
|
|
1757
|
+
runCallbacks,
|
|
1758
|
+
direction,
|
|
1759
|
+
step
|
|
1760
|
+
}) {
|
|
1739
1761
|
const {
|
|
1740
1762
|
activeIndex,
|
|
1741
1763
|
previousIndex
|
|
@@ -1745,11 +1767,9 @@ function transitionEmit(_ref) {
|
|
|
1745
1767
|
if (activeIndex > previousIndex) dir = 'next';else if (activeIndex < previousIndex) dir = 'prev';else dir = 'reset';
|
|
1746
1768
|
}
|
|
1747
1769
|
swiper.emit(`transition${step}`);
|
|
1748
|
-
if (runCallbacks &&
|
|
1749
|
-
|
|
1750
|
-
|
|
1751
|
-
return;
|
|
1752
|
-
}
|
|
1770
|
+
if (runCallbacks && dir === 'reset') {
|
|
1771
|
+
swiper.emit(`slideResetTransition${step}`);
|
|
1772
|
+
} else if (runCallbacks && activeIndex !== previousIndex) {
|
|
1753
1773
|
swiper.emit(`slideChangeTransition${step}`);
|
|
1754
1774
|
if (dir === 'next') {
|
|
1755
1775
|
swiper.emit(`slideNextTransition${step}`);
|
|
@@ -1759,10 +1779,7 @@ function transitionEmit(_ref) {
|
|
|
1759
1779
|
}
|
|
1760
1780
|
}
|
|
1761
1781
|
|
|
1762
|
-
function transitionStart(runCallbacks, direction) {
|
|
1763
|
-
if (runCallbacks === void 0) {
|
|
1764
|
-
runCallbacks = true;
|
|
1765
|
-
}
|
|
1782
|
+
function transitionStart(runCallbacks = true, direction) {
|
|
1766
1783
|
const swiper = this;
|
|
1767
1784
|
const {
|
|
1768
1785
|
params
|
|
@@ -1779,10 +1796,7 @@ function transitionStart(runCallbacks, direction) {
|
|
|
1779
1796
|
});
|
|
1780
1797
|
}
|
|
1781
1798
|
|
|
1782
|
-
function transitionEnd(runCallbacks, direction) {
|
|
1783
|
-
if (runCallbacks === void 0) {
|
|
1784
|
-
runCallbacks = true;
|
|
1785
|
-
}
|
|
1799
|
+
function transitionEnd(runCallbacks = true, direction) {
|
|
1786
1800
|
const swiper = this;
|
|
1787
1801
|
const {
|
|
1788
1802
|
params
|
|
@@ -1804,13 +1818,7 @@ var transition = {
|
|
|
1804
1818
|
transitionEnd
|
|
1805
1819
|
};
|
|
1806
1820
|
|
|
1807
|
-
function slideTo(index, speed, runCallbacks, internal, initial) {
|
|
1808
|
-
if (index === void 0) {
|
|
1809
|
-
index = 0;
|
|
1810
|
-
}
|
|
1811
|
-
if (runCallbacks === void 0) {
|
|
1812
|
-
runCallbacks = true;
|
|
1813
|
-
}
|
|
1821
|
+
function slideTo(index = 0, speed, runCallbacks = true, internal, initial) {
|
|
1814
1822
|
if (typeof index === 'string') {
|
|
1815
1823
|
index = parseInt(index, 10);
|
|
1816
1824
|
}
|
|
@@ -1932,6 +1940,11 @@ function slideTo(index, speed, runCallbacks, internal, initial) {
|
|
|
1932
1940
|
}
|
|
1933
1941
|
return true;
|
|
1934
1942
|
}
|
|
1943
|
+
const browser = getBrowser();
|
|
1944
|
+
const isSafari = browser.isSafari;
|
|
1945
|
+
if (isVirtual && !initial && isSafari && swiper.isElement) {
|
|
1946
|
+
swiper.virtual.update(false, false, slideIndex);
|
|
1947
|
+
}
|
|
1935
1948
|
swiper.setTransition(speed);
|
|
1936
1949
|
swiper.setTranslate(translate);
|
|
1937
1950
|
swiper.updateActiveIndex(slideIndex);
|
|
@@ -1957,13 +1970,7 @@ function slideTo(index, speed, runCallbacks, internal, initial) {
|
|
|
1957
1970
|
return true;
|
|
1958
1971
|
}
|
|
1959
1972
|
|
|
1960
|
-
function slideToLoop(index, speed, runCallbacks, internal) {
|
|
1961
|
-
if (index === void 0) {
|
|
1962
|
-
index = 0;
|
|
1963
|
-
}
|
|
1964
|
-
if (runCallbacks === void 0) {
|
|
1965
|
-
runCallbacks = true;
|
|
1966
|
-
}
|
|
1973
|
+
function slideToLoop(index = 0, speed, runCallbacks = true, internal) {
|
|
1967
1974
|
if (typeof index === 'string') {
|
|
1968
1975
|
const indexAsNumber = parseInt(index, 10);
|
|
1969
1976
|
index = indexAsNumber;
|
|
@@ -1983,32 +1990,35 @@ function slideToLoop(index, speed, runCallbacks, internal) {
|
|
|
1983
1990
|
let targetSlideIndex;
|
|
1984
1991
|
if (gridEnabled) {
|
|
1985
1992
|
const slideIndex = newIndex * swiper.params.grid.rows;
|
|
1986
|
-
targetSlideIndex = swiper.slides.
|
|
1993
|
+
targetSlideIndex = swiper.slides.find(slideEl => slideEl.getAttribute('data-swiper-slide-index') * 1 === slideIndex).column;
|
|
1987
1994
|
} else {
|
|
1988
1995
|
targetSlideIndex = swiper.getSlideIndexByData(newIndex);
|
|
1989
1996
|
}
|
|
1990
1997
|
const cols = gridEnabled ? Math.ceil(swiper.slides.length / swiper.params.grid.rows) : swiper.slides.length;
|
|
1991
1998
|
const {
|
|
1992
|
-
centeredSlides
|
|
1999
|
+
centeredSlides,
|
|
2000
|
+
slidesOffsetBefore,
|
|
2001
|
+
slidesOffsetAfter
|
|
1993
2002
|
} = swiper.params;
|
|
2003
|
+
const bothDirections = centeredSlides || !!slidesOffsetBefore || !!slidesOffsetAfter;
|
|
1994
2004
|
let slidesPerView = swiper.params.slidesPerView;
|
|
1995
2005
|
if (slidesPerView === 'auto') {
|
|
1996
2006
|
slidesPerView = swiper.slidesPerViewDynamic();
|
|
1997
2007
|
} else {
|
|
1998
2008
|
slidesPerView = Math.ceil(parseFloat(swiper.params.slidesPerView, 10));
|
|
1999
|
-
if (
|
|
2009
|
+
if (bothDirections && slidesPerView % 2 === 0) {
|
|
2000
2010
|
slidesPerView = slidesPerView + 1;
|
|
2001
2011
|
}
|
|
2002
2012
|
}
|
|
2003
2013
|
let needLoopFix = cols - targetSlideIndex < slidesPerView;
|
|
2004
|
-
if (
|
|
2014
|
+
if (bothDirections) {
|
|
2005
2015
|
needLoopFix = needLoopFix || targetSlideIndex < Math.ceil(slidesPerView / 2);
|
|
2006
2016
|
}
|
|
2007
|
-
if (internal &&
|
|
2017
|
+
if (internal && bothDirections && swiper.params.slidesPerView !== 'auto' && !gridEnabled) {
|
|
2008
2018
|
needLoopFix = false;
|
|
2009
2019
|
}
|
|
2010
2020
|
if (needLoopFix) {
|
|
2011
|
-
const direction =
|
|
2021
|
+
const direction = bothDirections ? targetSlideIndex < swiper.activeIndex ? 'prev' : 'next' : targetSlideIndex - swiper.activeIndex - 1 < swiper.params.slidesPerView ? 'next' : 'prev';
|
|
2012
2022
|
swiper.loopFix({
|
|
2013
2023
|
direction,
|
|
2014
2024
|
slideTo: true,
|
|
@@ -2018,7 +2028,7 @@ function slideToLoop(index, speed, runCallbacks, internal) {
|
|
|
2018
2028
|
}
|
|
2019
2029
|
if (gridEnabled) {
|
|
2020
2030
|
const slideIndex = newIndex * swiper.params.grid.rows;
|
|
2021
|
-
newIndex = swiper.slides.
|
|
2031
|
+
newIndex = swiper.slides.find(slideEl => slideEl.getAttribute('data-swiper-slide-index') * 1 === slideIndex).column;
|
|
2022
2032
|
} else {
|
|
2023
2033
|
newIndex = swiper.getSlideIndexByData(newIndex);
|
|
2024
2034
|
}
|
|
@@ -2031,10 +2041,7 @@ function slideToLoop(index, speed, runCallbacks, internal) {
|
|
|
2031
2041
|
}
|
|
2032
2042
|
|
|
2033
2043
|
/* eslint no-unused-vars: "off" */
|
|
2034
|
-
function slideNext(speed, runCallbacks, internal) {
|
|
2035
|
-
if (runCallbacks === void 0) {
|
|
2036
|
-
runCallbacks = true;
|
|
2037
|
-
}
|
|
2044
|
+
function slideNext(speed, runCallbacks = true, internal) {
|
|
2038
2045
|
const swiper = this;
|
|
2039
2046
|
const {
|
|
2040
2047
|
enabled,
|
|
@@ -2072,10 +2079,7 @@ function slideNext(speed, runCallbacks, internal) {
|
|
|
2072
2079
|
}
|
|
2073
2080
|
|
|
2074
2081
|
/* eslint no-unused-vars: "off" */
|
|
2075
|
-
function slidePrev(speed, runCallbacks, internal) {
|
|
2076
|
-
if (runCallbacks === void 0) {
|
|
2077
|
-
runCallbacks = true;
|
|
2078
|
-
}
|
|
2082
|
+
function slidePrev(speed, runCallbacks = true, internal) {
|
|
2079
2083
|
const swiper = this;
|
|
2080
2084
|
const {
|
|
2081
2085
|
params,
|
|
@@ -2105,8 +2109,9 @@ function slidePrev(speed, runCallbacks, internal) {
|
|
|
2105
2109
|
}
|
|
2106
2110
|
const normalizedTranslate = normalize(translate);
|
|
2107
2111
|
const normalizedSnapGrid = snapGrid.map(val => normalize(val));
|
|
2112
|
+
const isFreeMode = params.freeMode && params.freeMode.enabled;
|
|
2108
2113
|
let prevSnap = snapGrid[normalizedSnapGrid.indexOf(normalizedTranslate) - 1];
|
|
2109
|
-
if (typeof prevSnap === 'undefined' && params.cssMode) {
|
|
2114
|
+
if (typeof prevSnap === 'undefined' && (params.cssMode || isFreeMode)) {
|
|
2110
2115
|
let prevSnapIndex;
|
|
2111
2116
|
snapGrid.forEach((snap, snapIndex) => {
|
|
2112
2117
|
if (normalizedTranslate >= snap) {
|
|
@@ -2115,7 +2120,7 @@ function slidePrev(speed, runCallbacks, internal) {
|
|
|
2115
2120
|
}
|
|
2116
2121
|
});
|
|
2117
2122
|
if (typeof prevSnapIndex !== 'undefined') {
|
|
2118
|
-
prevSnap = snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];
|
|
2123
|
+
prevSnap = isFreeMode ? snapGrid[prevSnapIndex] : snapGrid[prevSnapIndex > 0 ? prevSnapIndex - 1 : prevSnapIndex];
|
|
2119
2124
|
}
|
|
2120
2125
|
}
|
|
2121
2126
|
let prevIndex = 0;
|
|
@@ -2140,10 +2145,7 @@ function slidePrev(speed, runCallbacks, internal) {
|
|
|
2140
2145
|
}
|
|
2141
2146
|
|
|
2142
2147
|
/* eslint no-unused-vars: "off" */
|
|
2143
|
-
function slideReset(speed, runCallbacks, internal) {
|
|
2144
|
-
if (runCallbacks === void 0) {
|
|
2145
|
-
runCallbacks = true;
|
|
2146
|
-
}
|
|
2148
|
+
function slideReset(speed, runCallbacks = true, internal) {
|
|
2147
2149
|
const swiper = this;
|
|
2148
2150
|
if (swiper.destroyed) return;
|
|
2149
2151
|
if (typeof speed === 'undefined') {
|
|
@@ -2153,13 +2155,7 @@ function slideReset(speed, runCallbacks, internal) {
|
|
|
2153
2155
|
}
|
|
2154
2156
|
|
|
2155
2157
|
/* eslint no-unused-vars: "off" */
|
|
2156
|
-
function slideToClosest(speed, runCallbacks, internal, threshold) {
|
|
2157
|
-
if (runCallbacks === void 0) {
|
|
2158
|
-
runCallbacks = true;
|
|
2159
|
-
}
|
|
2160
|
-
if (threshold === void 0) {
|
|
2161
|
-
threshold = 0.5;
|
|
2162
|
-
}
|
|
2158
|
+
function slideToClosest(speed, runCallbacks = true, internal, threshold = 0.5) {
|
|
2163
2159
|
const swiper = this;
|
|
2164
2160
|
if (swiper.destroyed) return;
|
|
2165
2161
|
if (typeof speed === 'undefined') {
|
|
@@ -2199,23 +2195,16 @@ function slideToClickedSlide() {
|
|
|
2199
2195
|
slidesEl
|
|
2200
2196
|
} = swiper;
|
|
2201
2197
|
const slidesPerView = params.slidesPerView === 'auto' ? swiper.slidesPerViewDynamic() : params.slidesPerView;
|
|
2202
|
-
let slideToIndex = swiper.clickedIndex;
|
|
2198
|
+
let slideToIndex = swiper.getSlideIndexWhenGrid(swiper.clickedIndex);
|
|
2203
2199
|
let realIndex;
|
|
2204
2200
|
const slideSelector = swiper.isElement ? `swiper-slide` : `.${params.slideClass}`;
|
|
2201
|
+
const isGrid = swiper.grid && swiper.params.grid && swiper.params.grid.rows > 1;
|
|
2205
2202
|
if (params.loop) {
|
|
2206
2203
|
if (swiper.animating) return;
|
|
2207
2204
|
realIndex = parseInt(swiper.clickedSlide.getAttribute('data-swiper-slide-index'), 10);
|
|
2208
2205
|
if (params.centeredSlides) {
|
|
2209
|
-
|
|
2210
|
-
|
|
2211
|
-
slideToIndex = swiper.getSlideIndex(elementChildren(slidesEl, `${slideSelector}[data-swiper-slide-index="${realIndex}"]`)[0]);
|
|
2212
|
-
nextTick(() => {
|
|
2213
|
-
swiper.slideTo(slideToIndex);
|
|
2214
|
-
});
|
|
2215
|
-
} else {
|
|
2216
|
-
swiper.slideTo(slideToIndex);
|
|
2217
|
-
}
|
|
2218
|
-
} else if (slideToIndex > swiper.slides.length - slidesPerView) {
|
|
2206
|
+
swiper.slideToLoop(realIndex);
|
|
2207
|
+
} else if (slideToIndex > (isGrid ? (swiper.slides.length - slidesPerView) / 2 - (swiper.params.grid.rows - 1) : swiper.slides.length - slidesPerView)) {
|
|
2219
2208
|
swiper.loopFix();
|
|
2220
2209
|
slideToIndex = swiper.getSlideIndex(elementChildren(slidesEl, `${slideSelector}[data-swiper-slide-index="${realIndex}"]`)[0]);
|
|
2221
2210
|
nextTick(() => {
|
|
@@ -2239,7 +2228,7 @@ var slide = {
|
|
|
2239
2228
|
slideToClickedSlide
|
|
2240
2229
|
};
|
|
2241
2230
|
|
|
2242
|
-
function loopCreate(slideRealIndex) {
|
|
2231
|
+
function loopCreate(slideRealIndex, initial) {
|
|
2243
2232
|
const swiper = this;
|
|
2244
2233
|
const {
|
|
2245
2234
|
params,
|
|
@@ -2252,7 +2241,20 @@ function loopCreate(slideRealIndex) {
|
|
|
2252
2241
|
el.setAttribute('data-swiper-slide-index', index);
|
|
2253
2242
|
});
|
|
2254
2243
|
};
|
|
2244
|
+
const clearBlankSlides = () => {
|
|
2245
|
+
const slides = elementChildren(slidesEl, `.${params.slideBlankClass}`);
|
|
2246
|
+
slides.forEach(el => {
|
|
2247
|
+
el.remove();
|
|
2248
|
+
});
|
|
2249
|
+
if (slides.length > 0) {
|
|
2250
|
+
swiper.recalcSlides();
|
|
2251
|
+
swiper.updateSlides();
|
|
2252
|
+
}
|
|
2253
|
+
};
|
|
2255
2254
|
const gridEnabled = swiper.grid && params.grid && params.grid.rows > 1;
|
|
2255
|
+
if (params.loopAddBlankSlides && (params.slidesPerGroup > 1 || gridEnabled)) {
|
|
2256
|
+
clearBlankSlides();
|
|
2257
|
+
}
|
|
2256
2258
|
const slidesPerGroup = params.slidesPerGroup * (gridEnabled ? params.grid.rows : 1);
|
|
2257
2259
|
const shouldFillGroup = swiper.slides.length % slidesPerGroup !== 0;
|
|
2258
2260
|
const shouldFillGrid = gridEnabled && swiper.slides.length % params.grid.rows !== 0;
|
|
@@ -2285,22 +2287,24 @@ function loopCreate(slideRealIndex) {
|
|
|
2285
2287
|
} else {
|
|
2286
2288
|
initSlides();
|
|
2287
2289
|
}
|
|
2290
|
+
const bothDirections = params.centeredSlides || !!params.slidesOffsetBefore || !!params.slidesOffsetAfter;
|
|
2288
2291
|
swiper.loopFix({
|
|
2289
2292
|
slideRealIndex,
|
|
2290
|
-
direction:
|
|
2293
|
+
direction: bothDirections ? undefined : 'next',
|
|
2294
|
+
initial
|
|
2291
2295
|
});
|
|
2292
2296
|
}
|
|
2293
2297
|
|
|
2294
|
-
function loopFix(
|
|
2295
|
-
|
|
2296
|
-
|
|
2297
|
-
|
|
2298
|
-
|
|
2299
|
-
|
|
2300
|
-
|
|
2301
|
-
|
|
2302
|
-
|
|
2303
|
-
|
|
2298
|
+
function loopFix({
|
|
2299
|
+
slideRealIndex,
|
|
2300
|
+
slideTo = true,
|
|
2301
|
+
direction,
|
|
2302
|
+
setTranslate,
|
|
2303
|
+
activeSlideIndex,
|
|
2304
|
+
initial,
|
|
2305
|
+
byController,
|
|
2306
|
+
byMousewheel
|
|
2307
|
+
} = {}) {
|
|
2304
2308
|
const swiper = this;
|
|
2305
2309
|
if (!swiper.params.loop) return;
|
|
2306
2310
|
swiper.emit('beforeLoopFix');
|
|
@@ -2312,15 +2316,19 @@ function loopFix(_temp) {
|
|
|
2312
2316
|
params
|
|
2313
2317
|
} = swiper;
|
|
2314
2318
|
const {
|
|
2315
|
-
centeredSlides
|
|
2319
|
+
centeredSlides,
|
|
2320
|
+
slidesOffsetBefore,
|
|
2321
|
+
slidesOffsetAfter,
|
|
2322
|
+
initialSlide
|
|
2316
2323
|
} = params;
|
|
2324
|
+
const bothDirections = centeredSlides || !!slidesOffsetBefore || !!slidesOffsetAfter;
|
|
2317
2325
|
swiper.allowSlidePrev = true;
|
|
2318
2326
|
swiper.allowSlideNext = true;
|
|
2319
2327
|
if (swiper.virtual && params.virtual.enabled) {
|
|
2320
2328
|
if (slideTo) {
|
|
2321
|
-
if (!
|
|
2329
|
+
if (!bothDirections && swiper.snapIndex === 0) {
|
|
2322
2330
|
swiper.slideTo(swiper.virtual.slides.length, 0, false, true);
|
|
2323
|
-
} else if (
|
|
2331
|
+
} else if (bothDirections && swiper.snapIndex < params.slidesPerView) {
|
|
2324
2332
|
swiper.slideTo(swiper.virtual.slides.length + swiper.snapIndex, 0, false, true);
|
|
2325
2333
|
} else if (swiper.snapIndex === swiper.snapGrid.length - 1) {
|
|
2326
2334
|
swiper.slideTo(swiper.virtual.slidesBefore, 0, false, true);
|
|
@@ -2336,28 +2344,30 @@ function loopFix(_temp) {
|
|
|
2336
2344
|
slidesPerView = swiper.slidesPerViewDynamic();
|
|
2337
2345
|
} else {
|
|
2338
2346
|
slidesPerView = Math.ceil(parseFloat(params.slidesPerView, 10));
|
|
2339
|
-
if (
|
|
2347
|
+
if (bothDirections && slidesPerView % 2 === 0) {
|
|
2340
2348
|
slidesPerView = slidesPerView + 1;
|
|
2341
2349
|
}
|
|
2342
2350
|
}
|
|
2343
2351
|
const slidesPerGroup = params.slidesPerGroupAuto ? slidesPerView : params.slidesPerGroup;
|
|
2344
|
-
let loopedSlides = slidesPerGroup;
|
|
2352
|
+
let loopedSlides = bothDirections ? Math.max(slidesPerGroup, Math.ceil(slidesPerView / 2)) : slidesPerGroup;
|
|
2345
2353
|
if (loopedSlides % slidesPerGroup !== 0) {
|
|
2346
2354
|
loopedSlides += slidesPerGroup - loopedSlides % slidesPerGroup;
|
|
2347
2355
|
}
|
|
2348
2356
|
loopedSlides += params.loopAdditionalSlides;
|
|
2349
2357
|
swiper.loopedSlides = loopedSlides;
|
|
2350
2358
|
const gridEnabled = swiper.grid && params.grid && params.grid.rows > 1;
|
|
2351
|
-
if (slides.length < slidesPerView + loopedSlides) {
|
|
2352
|
-
showWarning('Swiper Loop Warning: The number of slides is not enough for loop mode, it will be disabled
|
|
2359
|
+
if (slides.length < slidesPerView + loopedSlides || swiper.params.effect === 'cards' && slides.length < slidesPerView + loopedSlides * 2) {
|
|
2360
|
+
showWarning('Swiper Loop Warning: The number of slides is not enough for loop mode, it will be disabled or not function properly. You need to add more slides (or make duplicates) or lower the values of slidesPerView and slidesPerGroup parameters');
|
|
2353
2361
|
} else if (gridEnabled && params.grid.fill === 'row') {
|
|
2354
2362
|
showWarning('Swiper Loop Warning: Loop mode is not compatible with grid.fill = `row`');
|
|
2355
2363
|
}
|
|
2356
2364
|
const prependSlidesIndexes = [];
|
|
2357
2365
|
const appendSlidesIndexes = [];
|
|
2358
|
-
|
|
2366
|
+
const cols = gridEnabled ? Math.ceil(slides.length / params.grid.rows) : slides.length;
|
|
2367
|
+
const isInitialOverflow = initial && cols - initialSlide < slidesPerView && !bothDirections;
|
|
2368
|
+
let activeIndex = isInitialOverflow ? initialSlide : swiper.activeIndex;
|
|
2359
2369
|
if (typeof activeSlideIndex === 'undefined') {
|
|
2360
|
-
activeSlideIndex = swiper.getSlideIndex(slides.
|
|
2370
|
+
activeSlideIndex = swiper.getSlideIndex(slides.find(el => el.classList.contains(params.slideActiveClass)));
|
|
2361
2371
|
} else {
|
|
2362
2372
|
activeIndex = activeSlideIndex;
|
|
2363
2373
|
}
|
|
@@ -2365,9 +2375,8 @@ function loopFix(_temp) {
|
|
|
2365
2375
|
const isPrev = direction === 'prev' || !direction;
|
|
2366
2376
|
let slidesPrepended = 0;
|
|
2367
2377
|
let slidesAppended = 0;
|
|
2368
|
-
const cols = gridEnabled ? Math.ceil(slides.length / params.grid.rows) : slides.length;
|
|
2369
2378
|
const activeColIndex = gridEnabled ? slides[activeSlideIndex].column : activeSlideIndex;
|
|
2370
|
-
const activeColIndexWithShift = activeColIndex + (
|
|
2379
|
+
const activeColIndexWithShift = activeColIndex + (bothDirections && typeof setTranslate === 'undefined' ? -slidesPerView / 2 + 0.5 : 0);
|
|
2371
2380
|
// prepend last slides before start
|
|
2372
2381
|
if (activeColIndexWithShift < loopedSlides) {
|
|
2373
2382
|
slidesPrepended = Math.max(loopedSlides - activeColIndexWithShift, slidesPerGroup);
|
|
@@ -2387,6 +2396,9 @@ function loopFix(_temp) {
|
|
|
2387
2396
|
}
|
|
2388
2397
|
} else if (activeColIndexWithShift + slidesPerView > cols - loopedSlides) {
|
|
2389
2398
|
slidesAppended = Math.max(activeColIndexWithShift - (cols - loopedSlides * 2), slidesPerGroup);
|
|
2399
|
+
if (isInitialOverflow) {
|
|
2400
|
+
slidesAppended = Math.max(slidesAppended, slidesPerView - cols + initialSlide + 1);
|
|
2401
|
+
}
|
|
2390
2402
|
for (let i = 0; i < slidesAppended; i += 1) {
|
|
2391
2403
|
const index = i - Math.floor(i / cols) * cols;
|
|
2392
2404
|
if (gridEnabled) {
|
|
@@ -2402,6 +2414,14 @@ function loopFix(_temp) {
|
|
|
2402
2414
|
requestAnimationFrame(() => {
|
|
2403
2415
|
swiper.__preventObserver__ = false;
|
|
2404
2416
|
});
|
|
2417
|
+
if (swiper.params.effect === 'cards' && slides.length < slidesPerView + loopedSlides * 2) {
|
|
2418
|
+
if (appendSlidesIndexes.includes(activeSlideIndex)) {
|
|
2419
|
+
appendSlidesIndexes.splice(appendSlidesIndexes.indexOf(activeSlideIndex), 1);
|
|
2420
|
+
}
|
|
2421
|
+
if (prependSlidesIndexes.includes(activeSlideIndex)) {
|
|
2422
|
+
prependSlidesIndexes.splice(prependSlidesIndexes.indexOf(activeSlideIndex), 1);
|
|
2423
|
+
}
|
|
2424
|
+
}
|
|
2405
2425
|
if (isPrev) {
|
|
2406
2426
|
prependSlidesIndexes.forEach(index => {
|
|
2407
2427
|
slides[index].swiperLoopMoveDOM = true;
|
|
@@ -2502,7 +2522,7 @@ function loopDestroy() {
|
|
|
2502
2522
|
params,
|
|
2503
2523
|
slidesEl
|
|
2504
2524
|
} = swiper;
|
|
2505
|
-
if (!params.loop || swiper.virtual && swiper.params.virtual.enabled) return;
|
|
2525
|
+
if (!params.loop || !slidesEl || swiper.virtual && swiper.params.virtual.enabled) return;
|
|
2506
2526
|
swiper.recalcSlides();
|
|
2507
2527
|
const newSlidesOrder = [];
|
|
2508
2528
|
swiper.slides.forEach(slideEl => {
|
|
@@ -2563,10 +2583,7 @@ var grabCursor = {
|
|
|
2563
2583
|
};
|
|
2564
2584
|
|
|
2565
2585
|
// Modified from https://stackoverflow.com/questions/54520554/custom-element-getrootnode-closest-function-crossing-multiple-parent-shadowd
|
|
2566
|
-
function closestElement(selector, base) {
|
|
2567
|
-
if (base === void 0) {
|
|
2568
|
-
base = this;
|
|
2569
|
-
}
|
|
2586
|
+
function closestElement(selector, base = this) {
|
|
2570
2587
|
function __closestFrom(el) {
|
|
2571
2588
|
if (!el || el === getDocument() || el === getWindow()) return null;
|
|
2572
2589
|
if (el.assignedSlot) el = el.assignedSlot;
|
|
@@ -2683,7 +2700,7 @@ function onTouchStart(event) {
|
|
|
2683
2700
|
data.isTouched = false;
|
|
2684
2701
|
}
|
|
2685
2702
|
}
|
|
2686
|
-
if (document.activeElement && document.activeElement.matches(data.focusableElements) && document.activeElement !== targetEl) {
|
|
2703
|
+
if (document.activeElement && document.activeElement.matches(data.focusableElements) && document.activeElement !== targetEl && (e.pointerType === 'mouse' || e.pointerType !== 'mouse' && !targetEl.matches(data.focusableElements))) {
|
|
2687
2704
|
document.activeElement.blur();
|
|
2688
2705
|
}
|
|
2689
2706
|
const shouldPreventDefault = preventDefault && swiper.allowTouchMove && params.touchStartPreventDefault;
|
|
@@ -2717,7 +2734,7 @@ function onTouchMove(event) {
|
|
|
2717
2734
|
}
|
|
2718
2735
|
let targetTouch;
|
|
2719
2736
|
if (e.type === 'touchmove') {
|
|
2720
|
-
targetTouch = [...e.changedTouches].
|
|
2737
|
+
targetTouch = [...e.changedTouches].find(t => t.identifier === data.touchId);
|
|
2721
2738
|
if (!targetTouch || targetTouch.identifier !== data.touchId) return;
|
|
2722
2739
|
} else {
|
|
2723
2740
|
targetTouch = e;
|
|
@@ -2758,10 +2775,15 @@ function onTouchMove(event) {
|
|
|
2758
2775
|
data.isMoved = false;
|
|
2759
2776
|
return;
|
|
2760
2777
|
}
|
|
2761
|
-
} else if (pageX
|
|
2778
|
+
} else if (rtl && (pageX > touches.startX && -swiper.translate <= swiper.maxTranslate() || pageX < touches.startX && -swiper.translate >= swiper.minTranslate())) {
|
|
2779
|
+
return;
|
|
2780
|
+
} else if (!rtl && (pageX < touches.startX && swiper.translate <= swiper.maxTranslate() || pageX > touches.startX && swiper.translate >= swiper.minTranslate())) {
|
|
2762
2781
|
return;
|
|
2763
2782
|
}
|
|
2764
2783
|
}
|
|
2784
|
+
if (document.activeElement && document.activeElement.matches(data.focusableElements) && document.activeElement !== e.target && e.pointerType !== 'mouse') {
|
|
2785
|
+
document.activeElement.blur();
|
|
2786
|
+
}
|
|
2765
2787
|
if (document.activeElement) {
|
|
2766
2788
|
if (e.target === document.activeElement && e.target.matches(data.focusableElements)) {
|
|
2767
2789
|
data.isMoved = true;
|
|
@@ -2857,7 +2879,7 @@ function onTouchMove(event) {
|
|
|
2857
2879
|
}
|
|
2858
2880
|
let loopFixed;
|
|
2859
2881
|
new Date().getTime();
|
|
2860
|
-
if (data.isMoved && data.allowThresholdMove && prevTouchesDirection !== swiper.touchesDirection && isLoop && allowLoopFix && Math.abs(diff) >= 1) {
|
|
2882
|
+
if (params._loopSwapReset !== false && data.isMoved && data.allowThresholdMove && prevTouchesDirection !== swiper.touchesDirection && isLoop && allowLoopFix && Math.abs(diff) >= 1) {
|
|
2861
2883
|
Object.assign(touches, {
|
|
2862
2884
|
startX: pageX,
|
|
2863
2885
|
startY: pageY,
|
|
@@ -2965,7 +2987,7 @@ function onTouchEnd(event) {
|
|
|
2965
2987
|
if (e.pointerId !== data.pointerId) return;
|
|
2966
2988
|
targetTouch = e;
|
|
2967
2989
|
} else {
|
|
2968
|
-
targetTouch = [...e.changedTouches].
|
|
2990
|
+
targetTouch = [...e.changedTouches].find(t => t.identifier === data.touchId);
|
|
2969
2991
|
if (!targetTouch || targetTouch.identifier !== data.touchId) return;
|
|
2970
2992
|
}
|
|
2971
2993
|
if (['pointercancel', 'pointerout', 'pointerleave', 'contextmenu'].includes(e.type)) {
|
|
@@ -3142,7 +3164,8 @@ function onResize() {
|
|
|
3142
3164
|
swiper.updateSlidesClasses();
|
|
3143
3165
|
const isVirtualLoop = isVirtual && params.loop;
|
|
3144
3166
|
if ((params.slidesPerView === 'auto' || params.slidesPerView > 1) && swiper.isEnd && !swiper.isBeginning && !swiper.params.centeredSlides && !isVirtualLoop) {
|
|
3145
|
-
swiper.
|
|
3167
|
+
const slides = isVirtual ? swiper.virtual.slides : swiper.slides;
|
|
3168
|
+
swiper.slideTo(slides.length - 1, 0, false, true);
|
|
3146
3169
|
} else {
|
|
3147
3170
|
if (swiper.params.loop && !isVirtual) {
|
|
3148
3171
|
swiper.slideToLoop(swiper.realIndex, 0, false, true);
|
|
@@ -3339,9 +3362,12 @@ function setBreakpoint() {
|
|
|
3339
3362
|
} = swiper;
|
|
3340
3363
|
const breakpoints = params.breakpoints;
|
|
3341
3364
|
if (!breakpoints || breakpoints && Object.keys(breakpoints).length === 0) return;
|
|
3365
|
+
const document = getDocument();
|
|
3342
3366
|
|
|
3343
|
-
// Get breakpoint for window width and update parameters
|
|
3344
|
-
const
|
|
3367
|
+
// Get breakpoint for window/container width and update parameters
|
|
3368
|
+
const breakpointsBase = params.breakpointsBase === 'window' || !params.breakpointsBase ? params.breakpointsBase : 'container';
|
|
3369
|
+
const breakpointContainer = ['window', 'container'].includes(params.breakpointsBase) || !params.breakpointsBase ? swiper.el : document.querySelector(params.breakpointsBase);
|
|
3370
|
+
const breakpoint = swiper.getBreakpoint(breakpoints, breakpointsBase, breakpointContainer);
|
|
3345
3371
|
if (!breakpoint || swiper.currentBreakpoint === breakpoint) return;
|
|
3346
3372
|
const breakpointOnlyParams = breakpoint in breakpoints ? breakpoints[breakpoint] : undefined;
|
|
3347
3373
|
const breakpointParams = breakpointOnlyParams || swiper.originalParams;
|
|
@@ -3414,10 +3440,7 @@ function setBreakpoint() {
|
|
|
3414
3440
|
swiper.emit('breakpoint', breakpointParams);
|
|
3415
3441
|
}
|
|
3416
3442
|
|
|
3417
|
-
function getBreakpoint(breakpoints, base, containerEl) {
|
|
3418
|
-
if (base === void 0) {
|
|
3419
|
-
base = 'window';
|
|
3420
|
-
}
|
|
3443
|
+
function getBreakpoint(breakpoints, base = 'window', containerEl) {
|
|
3421
3444
|
if (!breakpoints || base === 'container' && !containerEl) return undefined;
|
|
3422
3445
|
let breakpoint = false;
|
|
3423
3446
|
const window = getWindow();
|
|
@@ -3612,6 +3635,7 @@ var defaults = {
|
|
|
3612
3635
|
// in px
|
|
3613
3636
|
normalizeSlideIndex: true,
|
|
3614
3637
|
centerInsufficientSlides: false,
|
|
3638
|
+
snapToSlideEdge: false,
|
|
3615
3639
|
// Disable swiper and hide navigation when container not overflow
|
|
3616
3640
|
watchOverflow: true,
|
|
3617
3641
|
// Round length
|
|
@@ -3682,10 +3706,7 @@ var defaults = {
|
|
|
3682
3706
|
};
|
|
3683
3707
|
|
|
3684
3708
|
function moduleExtendParams(params, allModulesParams) {
|
|
3685
|
-
return function extendParams(obj) {
|
|
3686
|
-
if (obj === void 0) {
|
|
3687
|
-
obj = {};
|
|
3688
|
-
}
|
|
3709
|
+
return function extendParams(obj = {}) {
|
|
3689
3710
|
const moduleParamName = Object.keys(obj)[0];
|
|
3690
3711
|
const moduleParams = obj[moduleParamName];
|
|
3691
3712
|
if (typeof moduleParams !== 'object' || moduleParams === null) {
|
|
@@ -3733,12 +3754,9 @@ const prototypes = {
|
|
|
3733
3754
|
};
|
|
3734
3755
|
const extendedDefaults = {};
|
|
3735
3756
|
class Swiper {
|
|
3736
|
-
constructor() {
|
|
3757
|
+
constructor(...args) {
|
|
3737
3758
|
let el;
|
|
3738
3759
|
let params;
|
|
3739
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
3740
|
-
args[_key] = arguments[_key];
|
|
3741
|
-
}
|
|
3742
3760
|
if (args.length === 1 && args[0].constructor && Object.prototype.toString.call(args[0]).slice(8, -1) === 'Object') {
|
|
3743
3761
|
params = args[0];
|
|
3744
3762
|
} else {
|
|
@@ -3772,7 +3790,11 @@ class Swiper {
|
|
|
3772
3790
|
swiper.eventsAnyListeners = [];
|
|
3773
3791
|
swiper.modules = [...swiper.__modules__];
|
|
3774
3792
|
if (params.modules && Array.isArray(params.modules)) {
|
|
3775
|
-
|
|
3793
|
+
params.modules.forEach(mod => {
|
|
3794
|
+
if (typeof mod === 'function' && swiper.modules.indexOf(mod) < 0) {
|
|
3795
|
+
swiper.modules.push(mod);
|
|
3796
|
+
}
|
|
3797
|
+
});
|
|
3776
3798
|
}
|
|
3777
3799
|
const allModulesParams = {};
|
|
3778
3800
|
swiper.modules.forEach(mod => {
|
|
@@ -3917,7 +3939,17 @@ class Swiper {
|
|
|
3917
3939
|
return elementIndex(slideEl) - firstSlideIndex;
|
|
3918
3940
|
}
|
|
3919
3941
|
getSlideIndexByData(index) {
|
|
3920
|
-
return this.getSlideIndex(this.slides.
|
|
3942
|
+
return this.getSlideIndex(this.slides.find(slideEl => slideEl.getAttribute('data-swiper-slide-index') * 1 === index));
|
|
3943
|
+
}
|
|
3944
|
+
getSlideIndexWhenGrid(index) {
|
|
3945
|
+
if (this.grid && this.params.grid && this.params.grid.rows > 1) {
|
|
3946
|
+
if (this.params.grid.fill === 'column') {
|
|
3947
|
+
index = Math.floor(index / this.params.grid.rows);
|
|
3948
|
+
} else if (this.params.grid.fill === 'row') {
|
|
3949
|
+
index = index % Math.ceil(this.slides.length / this.params.grid.rows);
|
|
3950
|
+
}
|
|
3951
|
+
}
|
|
3952
|
+
return index;
|
|
3921
3953
|
}
|
|
3922
3954
|
recalcSlides() {
|
|
3923
3955
|
const swiper = this;
|
|
@@ -3984,13 +4016,7 @@ class Swiper {
|
|
|
3984
4016
|
});
|
|
3985
4017
|
swiper.emit('_slideClasses', updates);
|
|
3986
4018
|
}
|
|
3987
|
-
slidesPerViewDynamic(view, exact) {
|
|
3988
|
-
if (view === void 0) {
|
|
3989
|
-
view = 'current';
|
|
3990
|
-
}
|
|
3991
|
-
if (exact === void 0) {
|
|
3992
|
-
exact = false;
|
|
3993
|
-
}
|
|
4019
|
+
slidesPerViewDynamic(view = 'current', exact = false) {
|
|
3994
4020
|
const swiper = this;
|
|
3995
4021
|
const {
|
|
3996
4022
|
params,
|
|
@@ -4089,10 +4115,7 @@ class Swiper {
|
|
|
4089
4115
|
}
|
|
4090
4116
|
swiper.emit('update');
|
|
4091
4117
|
}
|
|
4092
|
-
changeDirection(newDirection, needUpdate) {
|
|
4093
|
-
if (needUpdate === void 0) {
|
|
4094
|
-
needUpdate = true;
|
|
4095
|
-
}
|
|
4118
|
+
changeDirection(newDirection, needUpdate = true) {
|
|
4096
4119
|
const swiper = this;
|
|
4097
4120
|
const currentDirection = swiper.params.direction;
|
|
4098
4121
|
if (!newDirection) {
|
|
@@ -4218,7 +4241,7 @@ class Swiper {
|
|
|
4218
4241
|
|
|
4219
4242
|
// Create loop
|
|
4220
4243
|
if (swiper.params.loop) {
|
|
4221
|
-
swiper.loopCreate();
|
|
4244
|
+
swiper.loopCreate(undefined, true);
|
|
4222
4245
|
}
|
|
4223
4246
|
|
|
4224
4247
|
// Attach events
|
|
@@ -4247,13 +4270,7 @@ class Swiper {
|
|
|
4247
4270
|
swiper.emit('afterInit');
|
|
4248
4271
|
return swiper;
|
|
4249
4272
|
}
|
|
4250
|
-
destroy(deleteInstance, cleanStyles) {
|
|
4251
|
-
if (deleteInstance === void 0) {
|
|
4252
|
-
deleteInstance = true;
|
|
4253
|
-
}
|
|
4254
|
-
if (cleanStyles === void 0) {
|
|
4255
|
-
cleanStyles = true;
|
|
4256
|
-
}
|
|
4273
|
+
destroy(deleteInstance = true, cleanStyles = true) {
|
|
4257
4274
|
const swiper = this;
|
|
4258
4275
|
const {
|
|
4259
4276
|
params,
|
|
@@ -4359,17 +4376,18 @@ function createElementIfNotDefined(swiper, originalParams, params, checkProps) {
|
|
|
4359
4376
|
return params;
|
|
4360
4377
|
}
|
|
4361
4378
|
|
|
4362
|
-
|
|
4363
|
-
|
|
4364
|
-
|
|
4365
|
-
|
|
4366
|
-
|
|
4367
|
-
|
|
4368
|
-
|
|
4379
|
+
const arrowSvg = `<svg class="swiper-navigation-icon" width="11" height="20" viewBox="0 0 11 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.38296 20.0762C0.111788 19.805 0.111788 19.3654 0.38296 19.0942L9.19758 10.2796L0.38296 1.46497C0.111788 1.19379 0.111788 0.754138 0.38296 0.482966C0.654131 0.211794 1.09379 0.211794 1.36496 0.482966L10.4341 9.55214C10.8359 9.9539 10.8359 10.6053 10.4341 11.007L1.36496 20.0762C1.09379 20.3474 0.654131 20.3474 0.38296 20.0762Z" fill="currentColor"/></svg>`;
|
|
4380
|
+
function Navigation({
|
|
4381
|
+
swiper,
|
|
4382
|
+
extendParams,
|
|
4383
|
+
on,
|
|
4384
|
+
emit
|
|
4385
|
+
}) {
|
|
4369
4386
|
extendParams({
|
|
4370
4387
|
navigation: {
|
|
4371
4388
|
nextEl: null,
|
|
4372
4389
|
prevEl: null,
|
|
4390
|
+
addIcons: true,
|
|
4373
4391
|
hideOnClick: false,
|
|
4374
4392
|
disabledClass: 'swiper-button-disabled',
|
|
4375
4393
|
hiddenClass: 'swiper-button-hidden',
|
|
@@ -4379,12 +4397,13 @@ function Navigation(_ref) {
|
|
|
4379
4397
|
});
|
|
4380
4398
|
swiper.navigation = {
|
|
4381
4399
|
nextEl: null,
|
|
4382
|
-
prevEl: null
|
|
4400
|
+
prevEl: null,
|
|
4401
|
+
arrowSvg
|
|
4383
4402
|
};
|
|
4384
4403
|
function getEl(el) {
|
|
4385
4404
|
let res;
|
|
4386
4405
|
if (el && typeof el === 'string' && swiper.isElement) {
|
|
4387
|
-
res = swiper.el.querySelector(el);
|
|
4406
|
+
res = swiper.el.querySelector(el) || swiper.hostEl.querySelector(el);
|
|
4388
4407
|
if (res) return res;
|
|
4389
4408
|
}
|
|
4390
4409
|
if (el) {
|
|
@@ -4455,6 +4474,12 @@ function Navigation(_ref) {
|
|
|
4455
4474
|
prevEl = makeElementsArray(prevEl);
|
|
4456
4475
|
const initButton = (el, dir) => {
|
|
4457
4476
|
if (el) {
|
|
4477
|
+
if (params.addIcons && el.matches('.swiper-button-next,.swiper-button-prev') && !el.querySelector('svg')) {
|
|
4478
|
+
const tempEl = document.createElement('div');
|
|
4479
|
+
setInnerHTML(tempEl, arrowSvg);
|
|
4480
|
+
el.appendChild(tempEl.querySelector('svg'));
|
|
4481
|
+
tempEl.remove();
|
|
4482
|
+
}
|
|
4458
4483
|
el.addEventListener('click', dir === 'next' ? onNextClick : onPrevClick);
|
|
4459
4484
|
}
|
|
4460
4485
|
if (!swiper.enabled && el) {
|
|
@@ -4555,21 +4580,18 @@ function Navigation(_ref) {
|
|
|
4555
4580
|
});
|
|
4556
4581
|
}
|
|
4557
4582
|
|
|
4558
|
-
function classesToSelector(classes) {
|
|
4559
|
-
|
|
4560
|
-
|
|
4561
|
-
}
|
|
4562
|
-
return `.${classes.trim().replace(/([\.:!+\/])/g, '\\$1') // eslint-disable-line
|
|
4583
|
+
function classesToSelector(classes = '') {
|
|
4584
|
+
// Escape all CSS selector special characters
|
|
4585
|
+
return `.${classes.trim().replace(/([\.:!+\/()[\]#>~*^$|=,'"@{}\\])/g, '\\$1') // eslint-disable-line
|
|
4563
4586
|
.replace(/ /g, '.')}`;
|
|
4564
4587
|
}
|
|
4565
4588
|
|
|
4566
|
-
function Pagination(
|
|
4567
|
-
|
|
4568
|
-
|
|
4569
|
-
|
|
4570
|
-
|
|
4571
|
-
|
|
4572
|
-
} = _ref;
|
|
4589
|
+
function Pagination({
|
|
4590
|
+
swiper,
|
|
4591
|
+
extendParams,
|
|
4592
|
+
on,
|
|
4593
|
+
emit
|
|
4594
|
+
}) {
|
|
4573
4595
|
const pfx = 'swiper-pagination';
|
|
4574
4596
|
extendParams({
|
|
4575
4597
|
pagination: {
|
|
@@ -4787,7 +4809,7 @@ function Pagination(_ref) {
|
|
|
4787
4809
|
});
|
|
4788
4810
|
}
|
|
4789
4811
|
if (params.type === 'custom' && params.renderCustom) {
|
|
4790
|
-
subEl
|
|
4812
|
+
setInnerHTML(subEl, params.renderCustom(swiper, current + 1, total));
|
|
4791
4813
|
if (subElIndex === 0) emit('paginationRender', subEl);
|
|
4792
4814
|
} else {
|
|
4793
4815
|
if (subElIndex === 0) emit('paginationRender', subEl);
|
|
@@ -4837,7 +4859,7 @@ function Pagination(_ref) {
|
|
|
4837
4859
|
swiper.pagination.bullets = [];
|
|
4838
4860
|
el.forEach(subEl => {
|
|
4839
4861
|
if (params.type !== 'custom') {
|
|
4840
|
-
subEl
|
|
4862
|
+
setInnerHTML(subEl, paginationHTML || '');
|
|
4841
4863
|
}
|
|
4842
4864
|
if (params.type === 'bullets') {
|
|
4843
4865
|
swiper.pagination.bullets.push(...subEl.querySelectorAll(classesToSelector(params.bulletClass)));
|
|
@@ -4868,10 +4890,10 @@ function Pagination(_ref) {
|
|
|
4868
4890
|
el = [...swiper.el.querySelectorAll(params.el)];
|
|
4869
4891
|
// check if it belongs to another nested Swiper
|
|
4870
4892
|
if (el.length > 1) {
|
|
4871
|
-
el = el.
|
|
4893
|
+
el = el.find(subEl => {
|
|
4872
4894
|
if (elementParents(subEl, '.swiper')[0] !== swiper.el) return false;
|
|
4873
4895
|
return true;
|
|
4874
|
-
})
|
|
4896
|
+
});
|
|
4875
4897
|
}
|
|
4876
4898
|
}
|
|
4877
4899
|
if (Array.isArray(el) && el.length === 1) el = el[0];
|
|
@@ -5018,12 +5040,11 @@ function Pagination(_ref) {
|
|
|
5018
5040
|
});
|
|
5019
5041
|
}
|
|
5020
5042
|
|
|
5021
|
-
function A11y(
|
|
5022
|
-
|
|
5023
|
-
|
|
5024
|
-
|
|
5025
|
-
|
|
5026
|
-
} = _ref;
|
|
5043
|
+
function A11y({
|
|
5044
|
+
swiper,
|
|
5045
|
+
extendParams,
|
|
5046
|
+
on
|
|
5047
|
+
}) {
|
|
5027
5048
|
extendParams({
|
|
5028
5049
|
a11y: {
|
|
5029
5050
|
enabled: true,
|
|
@@ -5040,7 +5061,8 @@ function A11y(_ref) {
|
|
|
5040
5061
|
itemRoleDescriptionMessage: null,
|
|
5041
5062
|
slideRole: 'group',
|
|
5042
5063
|
id: null,
|
|
5043
|
-
scrollOnFocus: true
|
|
5064
|
+
scrollOnFocus: true,
|
|
5065
|
+
wrapperLiveRegion: true
|
|
5044
5066
|
}
|
|
5045
5067
|
});
|
|
5046
5068
|
swiper.a11y = {
|
|
@@ -5053,13 +5075,9 @@ function A11y(_ref) {
|
|
|
5053
5075
|
function notify(message) {
|
|
5054
5076
|
const notification = liveRegion;
|
|
5055
5077
|
if (notification.length === 0) return;
|
|
5056
|
-
notification
|
|
5057
|
-
notification.innerHTML = message;
|
|
5078
|
+
setInnerHTML(notification, message);
|
|
5058
5079
|
}
|
|
5059
|
-
function getRandomNumber(size) {
|
|
5060
|
-
if (size === void 0) {
|
|
5061
|
-
size = 16;
|
|
5062
|
-
}
|
|
5080
|
+
function getRandomNumber(size = 16) {
|
|
5063
5081
|
const randomChar = () => Math.round(16 * Math.random()).toString(16);
|
|
5064
5082
|
return 'x'.repeat(size).replace(/x/g, randomChar);
|
|
5065
5083
|
}
|
|
@@ -5241,7 +5259,8 @@ function A11y(_ref) {
|
|
|
5241
5259
|
const slideEl = e.target.closest(`.${swiper.params.slideClass}, swiper-slide`);
|
|
5242
5260
|
if (!slideEl || !swiper.slides.includes(slideEl)) return;
|
|
5243
5261
|
focusTargetSlideEl = slideEl;
|
|
5244
|
-
const
|
|
5262
|
+
const isVirtual = swiper.virtual && swiper.params.virtual.enabled;
|
|
5263
|
+
const isActive = (isVirtual ? parseInt(slideEl.getAttribute('data-swiper-slide-index'), 10) : swiper.slides.indexOf(slideEl)) === swiper.activeIndex;
|
|
5245
5264
|
const isVisible = swiper.params.watchSlidesProgress && swiper.visibleSlides && swiper.visibleSlides.includes(slideEl);
|
|
5246
5265
|
if (isActive || isVisible) return;
|
|
5247
5266
|
if (e.sourceCapabilities && e.sourceCapabilities.firesTouchEvents) return;
|
|
@@ -5253,9 +5272,11 @@ function A11y(_ref) {
|
|
|
5253
5272
|
requestAnimationFrame(() => {
|
|
5254
5273
|
if (preventFocusHandler) return;
|
|
5255
5274
|
if (swiper.params.loop) {
|
|
5256
|
-
swiper.slideToLoop(parseInt(slideEl.getAttribute('data-swiper-slide-index')), 0);
|
|
5275
|
+
swiper.slideToLoop(swiper.getSlideIndexWhenGrid(parseInt(slideEl.getAttribute('data-swiper-slide-index'))), 0);
|
|
5276
|
+
} else if (isVirtual) {
|
|
5277
|
+
swiper.slideTo(swiper.getSlideIndexWhenGrid(parseInt(slideEl.getAttribute('data-swiper-slide-index'), 10)), 0);
|
|
5257
5278
|
} else {
|
|
5258
|
-
swiper.slideTo(swiper.slides.indexOf(slideEl), 0);
|
|
5279
|
+
swiper.slideTo(swiper.getSlideIndexWhenGrid(swiper.slides.indexOf(slideEl)), 0);
|
|
5259
5280
|
}
|
|
5260
5281
|
preventFocusHandler = false;
|
|
5261
5282
|
});
|
|
@@ -5296,9 +5317,11 @@ function A11y(_ref) {
|
|
|
5296
5317
|
// Wrapper
|
|
5297
5318
|
const wrapperEl = swiper.wrapperEl;
|
|
5298
5319
|
const wrapperId = params.id || wrapperEl.getAttribute('id') || `swiper-wrapper-${getRandomNumber(16)}`;
|
|
5299
|
-
const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';
|
|
5300
5320
|
addElId(wrapperEl, wrapperId);
|
|
5301
|
-
|
|
5321
|
+
if (params.wrapperLiveRegion) {
|
|
5322
|
+
const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';
|
|
5323
|
+
addElLive(wrapperEl, live);
|
|
5324
|
+
}
|
|
5302
5325
|
|
|
5303
5326
|
// Slide
|
|
5304
5327
|
initSlides();
|
|
@@ -5329,7 +5352,6 @@ function A11y(_ref) {
|
|
|
5329
5352
|
const document = getDocument();
|
|
5330
5353
|
document.addEventListener('visibilitychange', onVisibilityChange);
|
|
5331
5354
|
swiper.el.addEventListener('focus', handleFocus, true);
|
|
5332
|
-
swiper.el.addEventListener('focus', handleFocus, true);
|
|
5333
5355
|
swiper.el.addEventListener('pointerdown', handlePointerDown, true);
|
|
5334
5356
|
swiper.el.addEventListener('pointerup', handlePointerUp, true);
|
|
5335
5357
|
};
|
|
@@ -5413,7 +5435,7 @@ function effectInit(params) {
|
|
|
5413
5435
|
Object.assign(swiper.params, overwriteParamsResult);
|
|
5414
5436
|
Object.assign(swiper.originalParams, overwriteParamsResult);
|
|
5415
5437
|
});
|
|
5416
|
-
on('setTranslate', () => {
|
|
5438
|
+
on('setTranslate _virtualUpdated', () => {
|
|
5417
5439
|
if (swiper.params.effect !== effect) return;
|
|
5418
5440
|
setTranslate();
|
|
5419
5441
|
});
|
|
@@ -5457,20 +5479,19 @@ function effectTarget(effectParams, slideEl) {
|
|
|
5457
5479
|
return transformEl;
|
|
5458
5480
|
}
|
|
5459
5481
|
|
|
5460
|
-
function effectVirtualTransitionEnd(
|
|
5461
|
-
|
|
5462
|
-
|
|
5463
|
-
|
|
5464
|
-
|
|
5465
|
-
|
|
5466
|
-
} = _ref;
|
|
5482
|
+
function effectVirtualTransitionEnd({
|
|
5483
|
+
swiper,
|
|
5484
|
+
duration,
|
|
5485
|
+
transformElements,
|
|
5486
|
+
allSlides
|
|
5487
|
+
}) {
|
|
5467
5488
|
const {
|
|
5468
5489
|
activeIndex
|
|
5469
5490
|
} = swiper;
|
|
5470
5491
|
const getSlide = el => {
|
|
5471
5492
|
if (!el.parentElement) {
|
|
5472
5493
|
// assume shadow root
|
|
5473
|
-
const slide = swiper.slides.
|
|
5494
|
+
const slide = swiper.slides.find(slideEl => slideEl.shadowRoot && slideEl.shadowRoot === el.parentNode);
|
|
5474
5495
|
return slide;
|
|
5475
5496
|
}
|
|
5476
5497
|
return el.parentElement;
|
|
@@ -5502,12 +5523,11 @@ function effectVirtualTransitionEnd(_ref) {
|
|
|
5502
5523
|
}
|
|
5503
5524
|
}
|
|
5504
5525
|
|
|
5505
|
-
function EffectFade(
|
|
5506
|
-
|
|
5507
|
-
|
|
5508
|
-
|
|
5509
|
-
|
|
5510
|
-
} = _ref;
|
|
5526
|
+
function EffectFade({
|
|
5527
|
+
swiper,
|
|
5528
|
+
extendParams,
|
|
5529
|
+
on
|
|
5530
|
+
}) {
|
|
5511
5531
|
extendParams({
|
|
5512
5532
|
fadeEffect: {
|
|
5513
5533
|
crossFade: false
|
|
@@ -5562,7 +5582,7 @@ function EffectFade(_ref) {
|
|
|
5562
5582
|
});
|
|
5563
5583
|
}
|
|
5564
5584
|
|
|
5565
|
-
const hyHeroCarouselCss = "@font-face{font-family:swiper-icons;src:url(\"data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA\");font-weight:400;font-style:normal}:root{--swiper-theme-color:var(--brand-main)}.swiper,swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px, 0, 0);transform:translate3d(0px, 0, 0)}.swiper-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide,swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height, -webkit-transform;transition-property:height, -webkit-transform;transition-property:transform, height;transition-property:transform, height, -webkit-transform}.swiper-backface-hidden .swiper-slide{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0, 0, 0, 0.15)}.swiper-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:\"\";-ms-flex-negative:0;flex-shrink:0;-webkit-box-ordinal-group:10000;-ms-flex-order:9999;order:9999}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;transform-origin:50%;-webkit-box-sizing:border-box;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader{-webkit-animation:swiper-preloader-spin 1s infinite linear;animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@-webkit-keyframes swiper-preloader-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swiper-preloader-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:\"\";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset, 50%);width:calc(var(--swiper-navigation-size) / 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));z-index:10;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:0.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none !important}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none !important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset, 10px);right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:\"prev\"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:\"next\"}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:0.3s opacity;transition:0.3s opacity;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none !important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transform:scale(0.33);transform:scale(0.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{-webkit-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{-webkit-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{-webkit-transform:scale(0.66);transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{-webkit-transform:scale(0.33);transform:scale(0.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{-webkit-transform:scale(0.66);transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{-webkit-transform:scale(0.33);transform:scale(0.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none !important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;-webkit-transform:translate3d(0px, -50%, 0);transform:translate3d(0px, -50%, 0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;-webkit-transition:0.2s top, 0.2s -webkit-transform;transition:0.2s top, 0.2s -webkit-transform;transition:0.2s transform, 0.2s top;transition:0.2s transform, 0.2s top, 0.2s -webkit-transform}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:0.2s left, 0.2s -webkit-transform;transition:0.2s left, 0.2s -webkit-transform;transition:0.2s transform, 0.2s left;transition:0.2s transform, 0.2s left, 0.2s -webkit-transform}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,:host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:0.2s right, 0.2s -webkit-transform;transition:0.2s right, 0.2s -webkit-transform;transition:0.2s transform, 0.2s right;transition:0.2s transform, 0.2s right, 0.2s -webkit-transform}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius, 10px);position:relative;-ms-touch-action:none;background:var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none !important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset, 1%);bottom:var(--swiper-scrollbar-bottom, 4px);top:var(--swiper-scrollbar-top, auto);z-index:50;height:var(--swiper-scrollbar-size, 4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left, auto);right:var(--swiper-scrollbar-right, 4px);top:var(--swiper-scrollbar-sides-offset, 1%);z-index:50;width:var(--swiper-scrollbar-size, 4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));border-radius:var(--swiper-scrollbar-border-radius, 10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-slide-zoomed{cursor:move;-ms-touch-action:none;touch-action:none}.swiper .swiper-notification,swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;-webkit-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{-webkit-transform-origin:100% 0;transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:0.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:\"\";background:var(--grayscale-black);position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;-webkit-transition-property:opacity, height, -webkit-transform;transition-property:opacity, height, -webkit-transform;transition-property:transform, opacity, height;transition-property:transform, opacity, height, -webkit-transform}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}*{-webkit-box-sizing:border-box;box-sizing:border-box}.swiper-slide{display:grid;height:auto;align-self:stretch}.hero-carousel-container{border-bottom:1px solid var(--grayscale-medium-dark);margin:1.5rem 0;--button-size:35px;--button-offset:0px}@media (min-width: 60rem){.hero-carousel-container{border:none;margin:1.5rem 0 0 0}.hero-carousel-container .swiper{padding:0 10px}}.hero-carousel-container .swiper-button-prev,.hero-carousel-container .swiper-button-next{-webkit-box-align:center;-ms-flex-align:center;align-items:center;aspect-ratio:1;background-color:none;border:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:var(--button-size);z-index:9}@media (min-width: 60rem){.hero-carousel-container .swiper-button-prev,.hero-carousel-container .swiper-button-next{background-color:var(--brand-main-light);width:40px}.hero-carousel-container .swiper-button-prev:hover,.hero-carousel-container .swiper-button-next:hover{background-color:var(--brand-main-active)}}.hero-carousel-container .swiper-button-prev::after,.hero-carousel-container .swiper-button-next::after{display:none}.swiper .hero-carousel-container .swiper-button-prev-fade .swiper-slide-prev,.swiper .hero-carousel-container .swiper-button-prev-fade .swiper-slide-next,.swiper .hero-carousel-container .swiper-button-next-fade .swiper-slide-prev,.swiper .hero-carousel-container .swiper-button-next-fade .swiper-slide-next{z-index:-1}@media (min-width: 60rem){.hero-carousel-container .swiper-button-next{bottom:50%;position:absolute;right:var(--button-offset);-webkit-transform:translateY(-50%);transform:translateY(-50%)}}@media (min-width: 60rem){.hero-carousel-container .swiper-button-prev{bottom:50%;left:var(--button-offset);position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%)}}.hero-carousel-container .arrow svg{display:none}@media (min-width: 60rem){.hero-carousel-container .arrow svg{display:block}}.hero-carousel-container .caret svg{display:block}@media (min-width: 60rem){.hero-carousel-container .caret svg{display:none}}.hero-carousel-container svg{fill:var(--grayscale-medium-dark);height:16px;width:16px}@media (min-width: 60rem){.hero-carousel-container svg{fill:var(--grayscale-white)}}.hero-carousel--controls{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:30px 0;padding:0 1rem;position:relative;width:100%}@media (min-width: 60rem){.hero-carousel--controls{display:block;margin:0;padding:0;position:initial;width:auto}}.hero-carousel--pagination--mobile{bottom:auto !important;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:12px;left:auto !important;position:relative;top:auto !important;width:100px !important}@media (min-width: 60rem){.hero-carousel--pagination--mobile{display:none}}.hero-carousel--controls__buttons{position:relative;margin-right:-15px;width:100px}@media (min-width: 60rem){.hero-carousel--controls__buttons{margin:0;position:initial;width:auto}}.hero-carousel--pagination__bullet{background-color:var(--grayscale-medium);content:\"\";display:block;height:12px;width:12px}.hero-carousel--pagination__bullet--active{background-color:var(--brand-main-active)}.hero-carousel--item__pagination ul{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;display:none;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style-type:none;margin:24px 0 0 0;padding:0;gap:1rem}@media (min-width: 60rem){.hero-carousel--item__pagination ul{display:-webkit-box;display:-ms-flexbox;display:flex}}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button{font-size:1.125rem;line-height:24px;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;background:none;border:none;-webkit-box-shadow:none;box-shadow:none;color:var(--grayscale-white);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--main-font-family);font-style:normal;font-weight:700;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-hyphens:auto;hyphens:auto;letter-spacing:-0.36px;opacity:0.8;text-align:left}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button:is(:hover,:focus){cursor:pointer;opacity:1}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button .hero-carousel--item__pagination__button__theme{font-size:0.875rem;line-height:18px;font-family:var(--main-font-family);font-weight:600;letter-spacing:-0.5px;text-transform:uppercase;text-align:left;margin-bottom:0.4rem}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button.is-current button{opacity:1}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button.is-current button:after{border-bottom:4px solid var(--grayscale-white, #FFF);content:\"\";display:block;margin-top:0.45rem;width:33.3333333333%}.hero-carousel--item{display:grid;-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;height:auto;align-self:stretch}@media (min-width: 60rem){.hero-carousel--item{display:grid;grid-template-columns:1fr 1fr}}.hero-carousel--item__content{background-color:var(--brand-main);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:1rem 0.95rem}@media (min-width: 48rem){.hero-carousel--item__content{padding:clamp(15px, 8%, 62px) clamp(24px, 10%, 52px) clamp(15px, 8%, 55px) clamp(24px, 10%, 52px)}}@media (min-width: 1601px){.hero-carousel--item__content{padding:clamp(15px, 10%, 72px) clamp(24px, 15%, 102px) clamp(15px, 10%, 65px) clamp(24px, 15%, 102px)}}.hero-carousel--item__content hy-cta-button{margin-bottom:30px}@media (min-width: 48rem){.hero-carousel--item__content hy-cta-button{margin-bottom:48px}}@media (min-width: 75.0625rem){.hero-carousel--item__content hy-cta-button{margin-bottom:60px}}.hero-carousel--item__title{color:var(--ds-palette-white);font-family:var(--ds-fontFamily-heading);font-size:var(--ds-fontSize-40);font-weight:var(--ds-fontWeight-bold);letter-spacing:-1.2px;font-stretch:var(--ds-fontWidth-normal);line-height:48px;text-transform:uppercase;text-wrap:balance;margin:1rem 0;}@media (min-width: 60rem){.hero-carousel--item__title{font-size:var(--ds-fontSize-56);letter-spacing:var(--ds-letterSpacing-tight);line-height:64px;font-stretch:var(--ds-fontWidth-condense)}}.hero-carousel--item__desc{color:var(--ds-palette-black-95);font-family:var(--ds-fontFamily-body);font-size:var(--ds-fontSize-20);font-weight:var(--ds-fontWeight-regular);letter-spacing:var(--ds-letterSpacing-wide);line-height:var(--ds-lineHeight-large);-ms-hyphens:auto;hyphens:auto;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:5;color:var(--grayscale-white);display:-webkit-box;font-style:normal;line-clamp:3;margin-bottom:2rem;overflow:hidden;text-overflow:ellipsis;text-wrap:pretty}@media (min-width: 60rem){.hero-carousel--item__desc{font-size:var(--ds-fontSize-22)}}@media (min-width: 60rem){.hero-carousel--item__desc{margin-bottom:2.5rem}}.hero-carousel--item__image{--swiper-preloader-color:var(--brand-main-light);position:relative;-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}@media (min-width: 60rem){.hero-carousel--item__image{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;margin:10px 0}}.hero-carousel--item__image .hy-image__image{display:block;height:100%;min-height:205px;width:100%}.hero-carousel--item__image img{-o-object-fit:cover;object-fit:cover}";
|
|
5585
|
+
const hyHeroCarouselCss = ":root{--swiper-theme-color:var(--brand-main)}.swiper,swiper-container{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1;display:block}.swiper-vertical>.swiper-wrapper{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;-webkit-transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);transition-timing-function:var(--swiper-wrapper-transition-timing-function, initial);-webkit-box-sizing:content-box;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{-webkit-transform:translate3d(0px, 0, 0);transform:translate3d(0px, 0, 0)}.swiper-horizontal{-ms-touch-action:pan-y;touch-action:pan-y}.swiper-vertical{-ms-touch-action:pan-x;touch-action:pan-x}.swiper-slide,swiper-slide{-ms-flex-negative:0;flex-shrink:0;width:100%;height:100%;position:relative;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform, -webkit-transform;display:block}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-transition-property:height, -webkit-transform;transition-property:height, -webkit-transform;transition-property:transform, height;transition-property:transform, height, -webkit-transform}.swiper-backface-hidden .swiper-slide{-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d.swiper-css-mode .swiper-wrapper{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-wrapper{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d{-webkit-perspective:1200px;perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:none;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0, 0, 0, 0.15)}.swiper-3d .swiper-slide-shadow-left{background-image:-webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-right{background-image:-webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-top{background-image:-webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-3d .swiper-slide-shadow-bottom{background-image:-webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));background-image:linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:x mandatory;scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{-ms-scroll-snap-type:y mandatory;scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:\"\";-ms-flex-negative:0;flex-shrink:0;-webkit-box-ordinal-group:10000;-ms-flex-order:9999;order:9999}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-start:var(--swiper-centered-offset-before);margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{-webkit-margin-before:var(--swiper-centered-offset-before);margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-lazy-preloader{width:42px;height:42px;position:absolute;left:50%;top:50%;margin-left:-21px;margin-top:-21px;z-index:10;-webkit-transform-origin:50%;transform-origin:50%;-webkit-box-sizing:border-box;box-sizing:border-box;border:4px solid var(--swiper-preloader-color, var(--swiper-theme-color));border-radius:50%;border-top-color:transparent}.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,swiper-container:not(.swiper-watch-progress) .swiper-lazy-preloader{-webkit-animation:swiper-preloader-spin 1s infinite linear;animation:swiper-preloader-spin 1s infinite linear}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@-webkit-keyframes swiper-preloader-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes swiper-preloader-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0);transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:\"\";position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset, 50%);width:calc(var(--swiper-navigation-size) / 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size) / 2));z-index:10;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;color:var(--swiper-navigation-color, var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:0.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none !important}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset, 10px);right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:\"prev\"}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset, 10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:\"next\"}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;-webkit-transition:0.3s opacity;transition:0.3s opacity;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);z-index:10}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-pagination-disabled>.swiper-pagination,.swiper-pagination.swiper-pagination-disabled{display:none !important}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:var(--swiper-pagination-bottom, 8px);top:var(--swiper-pagination-top, auto);left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transform:scale(0.33);transform:scale(0.33);position:relative}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active{-webkit-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main{-webkit-transform:scale(1);transform:scale(1)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev{-webkit-transform:scale(0.66);transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{-webkit-transform:scale(0.33);transform:scale(0.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{-webkit-transform:scale(0.66);transform:scale(0.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{-webkit-transform:scale(0.33);transform:scale(0.33)}.swiper-pagination-bullet{width:var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));height:var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));display:inline-block;border-radius:var(--swiper-pagination-bullet-border-radius, 50%);background:var(--swiper-pagination-bullet-inactive-color, #000);opacity:var(--swiper-pagination-bullet-inactive-opacity, 0.2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;-webkit-box-shadow:none;box-shadow:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none !important}.swiper-pagination-bullet-active{opacity:var(--swiper-pagination-bullet-opacity, 1);background:var(--swiper-pagination-color, var(--swiper-theme-color))}.swiper-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:var(--swiper-pagination-right, 8px);left:var(--swiper-pagination-left, auto);top:50%;-webkit-transform:translate3d(0px, -50%, 0);transform:translate3d(0px, -50%, 0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap, 6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;-webkit-transition:0.2s top, 0.2s -webkit-transform;transition:0.2s top, 0.2s -webkit-transform;transition:0.2s transform, 0.2s top;transition:0.2s transform, 0.2s top, 0.2s -webkit-transform}.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{margin:0 var(--swiper-pagination-bullet-horizontal-gap, 4px)}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{left:50%;-webkit-transform:translateX(-50%);transform:translateX(-50%);white-space:nowrap}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:0.2s left, 0.2s -webkit-transform;transition:0.2s left, 0.2s -webkit-transform;transition:0.2s transform, 0.2s left;transition:0.2s transform, 0.2s left, 0.2s -webkit-transform}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,:host(.swiper-horizontal.swiper-rtl) .swiper-pagination-bullets-dynamic .swiper-pagination-bullet{-webkit-transition:0.2s right, 0.2s -webkit-transform;transition:0.2s right, 0.2s -webkit-transform;transition:0.2s transform, 0.2s right;transition:0.2s transform, 0.2s right, 0.2s -webkit-transform}.swiper-pagination-fraction{color:var(--swiper-pagination-fraction-color, inherit)}.swiper-pagination-progressbar{background:var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background:var(--swiper-pagination-color, var(--swiper-theme-color));position:absolute;left:0;top:0;width:100%;height:100%;-webkit-transform:scale(0);transform:scale(0);-webkit-transform-origin:left top;transform-origin:left top}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{-webkit-transform-origin:right top;transform-origin:right top}.swiper-horizontal>.swiper-pagination-progressbar,.swiper-pagination-progressbar.swiper-pagination-horizontal,.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:var(--swiper-pagination-progressbar-size, 4px);left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:var(--swiper-pagination-progressbar-size, 4px);height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:var(--swiper-scrollbar-border-radius, 10px);position:relative;-ms-touch-action:none;background:var(--swiper-scrollbar-bg-color, rgba(0, 0, 0, 0.1))}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none !important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:var(--swiper-scrollbar-sides-offset, 1%);bottom:var(--swiper-scrollbar-bottom, 4px);top:var(--swiper-scrollbar-top, auto);z-index:50;height:var(--swiper-scrollbar-size, 4px);width:calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;left:var(--swiper-scrollbar-left, auto);right:var(--swiper-scrollbar-right, 4px);top:var(--swiper-scrollbar-sides-offset, 1%);z-index:50;width:var(--swiper-scrollbar-size, 4px);height:calc(100% - 2 * var(--swiper-scrollbar-sides-offset, 1%))}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:var(--swiper-scrollbar-drag-bg-color, rgba(0, 0, 0, 0.5));border-radius:var(--swiper-scrollbar-border-radius, 10px);left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;-o-object-fit:contain;object-fit:contain}.swiper-slide-zoomed{cursor:move;-ms-touch-action:none;touch-action:none}.swiper .swiper-notification,swiper-container .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{-webkit-transition-timing-function:ease-out;transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;-webkit-transition-property:opacity;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;-webkit-transform-origin:0 0;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{-webkit-transform-origin:100% 0;transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:0.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:\"\";background:var(--grayscale-black);position:absolute;left:0;top:0;bottom:0;right:0;-webkit-filter:blur(50px);filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;-webkit-transition-property:opacity, height, -webkit-transform;transition-property:opacity, height, -webkit-transform;transition-property:transform, opacity, height;transition-property:transform, opacity, height, -webkit-transform}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}*{-webkit-box-sizing:border-box;box-sizing:border-box}.swiper-slide{display:grid;height:auto;align-self:stretch}.hero-carousel-container{border-bottom:1px solid var(--grayscale-medium-dark);margin:1.5rem 0;--button-size:35px;--button-offset:0px}@media (min-width: 60rem){.hero-carousel-container{border:none;margin:1.5rem 0 0 0}.hero-carousel-container .swiper{padding:0 10px}}.hero-carousel-container .swiper-button-prev,.hero-carousel-container .swiper-button-next{-webkit-box-align:center;-ms-flex-align:center;align-items:center;aspect-ratio:1;background-color:none;border:none;-webkit-box-shadow:none;box-shadow:none;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:var(--button-size);z-index:9}@media (min-width: 60rem){.hero-carousel-container .swiper-button-prev,.hero-carousel-container .swiper-button-next{background-color:var(--brand-main-light);width:40px}.hero-carousel-container .swiper-button-prev:hover,.hero-carousel-container .swiper-button-next:hover{background-color:var(--brand-main-active)}}.hero-carousel-container .swiper-button-prev::after,.hero-carousel-container .swiper-button-next::after{display:none}.swiper .hero-carousel-container .swiper-button-prev-fade .swiper-slide-prev,.swiper .hero-carousel-container .swiper-button-prev-fade .swiper-slide-next,.swiper .hero-carousel-container .swiper-button-next-fade .swiper-slide-prev,.swiper .hero-carousel-container .swiper-button-next-fade .swiper-slide-next{z-index:-1}@media (min-width: 60rem){.hero-carousel-container .swiper-button-next{bottom:50%;position:absolute;right:var(--button-offset);-webkit-transform:translateY(-50%);transform:translateY(-50%)}}@media (min-width: 60rem){.hero-carousel-container .swiper-button-prev{bottom:50%;left:var(--button-offset);position:absolute;-webkit-transform:translateY(-50%);transform:translateY(-50%)}}.hero-carousel-container .arrow svg{display:none}@media (min-width: 60rem){.hero-carousel-container .arrow svg{display:block}}.hero-carousel-container .caret svg{display:block}@media (min-width: 60rem){.hero-carousel-container .caret svg{display:none}}.hero-carousel-container svg{fill:var(--grayscale-medium-dark);height:16px;width:16px}@media (min-width: 60rem){.hero-carousel-container svg{fill:var(--grayscale-white)}}.hero-carousel--controls{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:30px 0;padding:0 1rem;position:relative;width:100%}@media (min-width: 60rem){.hero-carousel--controls{display:block;margin:0;padding:0;position:initial;width:auto}}.hero-carousel--pagination--mobile{bottom:auto !important;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;gap:12px;left:auto !important;position:relative;top:auto !important;width:100px !important}@media (min-width: 60rem){.hero-carousel--pagination--mobile{display:none}}.hero-carousel--controls__buttons{position:relative;margin-right:-15px;width:100px}@media (min-width: 60rem){.hero-carousel--controls__buttons{margin:0;position:initial;width:auto}}.hero-carousel--pagination__bullet{background-color:var(--grayscale-medium);content:\"\";display:block;height:12px;width:12px}.hero-carousel--pagination__bullet--active{background-color:var(--brand-main-active)}.hero-carousel--item__pagination ul{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;display:none;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;list-style-type:none;margin:24px 0 0 0;padding:0;gap:1rem}@media (min-width: 60rem){.hero-carousel--item__pagination ul{display:-webkit-box;display:-ms-flexbox;display:flex}}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-preferred-size:33.3333333333%;flex-basis:33.3333333333%}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button{font-size:1.125rem;line-height:24px;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;background:none;border:none;-webkit-box-shadow:none;box-shadow:none;color:var(--grayscale-white);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--main-font-family);font-style:normal;font-weight:700;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-hyphens:auto;hyphens:auto;letter-spacing:-0.36px;opacity:0.8;text-align:left}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button:is(:hover,:focus-visible){cursor:pointer;opacity:1}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button button .hero-carousel--item__pagination__button__theme{font-size:0.875rem;line-height:18px;font-family:var(--main-font-family);font-weight:600;letter-spacing:-0.5px;text-transform:uppercase;text-align:left;margin-bottom:0.4rem}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button.is-current button{opacity:1}.hero-carousel--item__pagination ul li.hero-carousel--item__pagination__button.is-current button:after{border-bottom:4px solid var(--grayscale-white, #FFF);content:\"\";display:block;margin-top:0.45rem;width:33.3333333333%}.hero-carousel--item{display:grid;-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;height:auto;align-self:stretch}@media (min-width: 60rem){.hero-carousel--item{display:grid;grid-template-columns:1fr 1fr}}.hero-carousel--item__content{background-color:var(--brand-main);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:1rem 0.95rem}@media (min-width: 48rem){.hero-carousel--item__content{padding:clamp(15px, 8%, 62px) clamp(24px, 10%, 52px) clamp(15px, 8%, 55px) clamp(24px, 10%, 52px)}}@media (min-width: 1601px){.hero-carousel--item__content{padding:clamp(15px, 10%, 72px) clamp(24px, 15%, 102px) clamp(15px, 10%, 65px) clamp(24px, 15%, 102px)}}.hero-carousel--item__content hy-cta-button{margin-bottom:30px}@media (min-width: 48rem){.hero-carousel--item__content hy-cta-button{margin-bottom:48px}}@media (min-width: 75.0625rem){.hero-carousel--item__content hy-cta-button{margin-bottom:60px}}.hero-carousel--item__title{color:var(--ds-palette-white);font-family:var(--ds-fontFamily-heading);font-size:var(--ds-fontSize-40);font-weight:var(--ds-fontWeight-bold);letter-spacing:-1.2px;font-stretch:var(--ds-fontWidth-normal);line-height:48px;text-transform:uppercase;text-wrap:balance;margin:1rem 0;}@media (min-width: 60rem){.hero-carousel--item__title{font-size:var(--ds-fontSize-56);letter-spacing:var(--ds-letterSpacing-tight);line-height:64px;font-stretch:var(--ds-fontWidth-condense)}}.hero-carousel--item__desc{color:var(--ds-palette-black-95);font-family:var(--ds-fontFamily-body);font-size:var(--ds-fontSize-20);font-weight:var(--ds-fontWeight-regular);letter-spacing:var(--ds-letterSpacing-wide);line-height:var(--ds-lineHeight-large);-ms-hyphens:auto;hyphens:auto;text-wrap:pretty;-webkit-box-orient:vertical;-webkit-line-clamp:5;color:var(--grayscale-white);display:-webkit-box;font-style:normal;line-clamp:3;margin-bottom:2rem;overflow:hidden;text-overflow:ellipsis;text-wrap:pretty}@media (min-width: 60rem){.hero-carousel--item__desc{font-size:var(--ds-fontSize-22)}}@media (min-width: 60rem){.hero-carousel--item__desc{margin-bottom:2.5rem}}.hero-carousel--item__image{--swiper-preloader-color:var(--brand-main-light);position:relative;-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}@media (min-width: 60rem){.hero-carousel--item__image{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;margin:10px 0}}.hero-carousel--item__image .hy-image__image{display:block;height:100%;min-height:205px;width:100%}.hero-carousel--item__image img{-o-object-fit:cover;object-fit:cover}";
|
|
5566
5586
|
const HyHeroCarouselStyle0 = hyHeroCarouselCss;
|
|
5567
5587
|
|
|
5568
5588
|
const HyHeroCarousel = class {
|
|
@@ -5593,6 +5613,7 @@ const HyHeroCarousel = class {
|
|
|
5593
5613
|
navigation: {
|
|
5594
5614
|
nextEl: ".swiper-button-next",
|
|
5595
5615
|
prevEl: ".swiper-button-prev",
|
|
5616
|
+
addIcons: false,
|
|
5596
5617
|
},
|
|
5597
5618
|
pagination: {
|
|
5598
5619
|
el: ".swiper-pagination",
|
|
@@ -5619,7 +5640,7 @@ const HyHeroCarousel = class {
|
|
|
5619
5640
|
}
|
|
5620
5641
|
render() {
|
|
5621
5642
|
const carouselContentClasses = ["hero-carousel--item__content", this.itemCount > 1 ? "has-pagination" : ""].join(" ");
|
|
5622
|
-
return (h("div", { key: '
|
|
5643
|
+
return (h("div", { key: '6edb4f0431901d93792c815d98c3d1b0530b028d', class: "hero-carousel-container" }, h("div", { key: '56818055b029489cd68ec5bd242c7fa0f6cbda65', class: "swiper" }, h("div", { key: '10e2871e58c3eac5fe6a5793d435a0ebe126bb25', class: "swiper-wrapper" }, this._data["items"] &&
|
|
5623
5644
|
this._data["items"].map((i, index) => {
|
|
5624
5645
|
const currentIndex = index;
|
|
5625
5646
|
const srcSet = JSON.parse(i.image_sources);
|