@ed.yakovich/component-library 0.0.15 → 0.0.17

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.
Files changed (125) hide show
  1. package/dist/components/Accordion/context/index.js +7 -0
  2. package/dist/components/Accordion/index.js +38 -0
  3. package/dist/components/Accordion/types/index.js +1 -0
  4. package/dist/components/Cart/index.js +34 -0
  5. package/dist/components/EquipmentSummary/context/index.js +10 -0
  6. package/dist/components/EquipmentSummary/index.js +65 -0
  7. package/dist/components/EquipmentSummary/types/index.js +1 -0
  8. package/dist/components/Grid/index.js +19 -0
  9. package/dist/components/HeroBanner/context/index.js +7 -0
  10. package/dist/components/HeroBanner/index.js +33 -0
  11. package/dist/components/HeroBanner/types/index.js +1 -0
  12. package/dist/components/InfoBanner/index.js +24 -4
  13. package/dist/components/Nav/index.js +19 -0
  14. package/dist/components/OfferCards/context/index.js +7 -0
  15. package/dist/components/OfferCards/index.js +30 -0
  16. package/dist/components/OfferCards/subComponents/OfferCard.js +61 -0
  17. package/dist/components/OfferCards/types/index.js +1 -0
  18. package/dist/components/SaleBanner/context/index.js +7 -0
  19. package/dist/components/SaleBanner/index.js +58 -0
  20. package/dist/components/SaleBanner/types/index.js +1 -0
  21. package/dist/{index-ba31999b-V1s4iffq.js → index-0d8e0844-BJzWsYCM.js} +2443 -2491
  22. package/dist/index-CIJ0X8ia.js +29141 -0
  23. package/dist/index-b30029d4-CYulIFrS.js +12 -0
  24. package/dist/index-e6818ded-r_t6ryaW.js +57 -0
  25. package/dist/{index.esm-a7c99373-DUoLYEEM.js → index.esm-322571ff-D1REhsOg.js} +1 -1
  26. package/dist/lib/components/Accordion/context/index.d.ts +10 -0
  27. package/dist/lib/components/Accordion/index.d.ts +2 -0
  28. package/dist/lib/components/Accordion/types/index.d.ts +13 -0
  29. package/dist/lib/components/Cart/index.d.ts +6 -0
  30. package/dist/lib/components/EquipmentSummary/context/index.d.ts +10 -0
  31. package/dist/lib/components/EquipmentSummary/index.d.ts +2 -0
  32. package/dist/lib/components/EquipmentSummary/types/index.d.ts +14 -0
  33. package/dist/lib/components/Grid/index.d.ts +13 -0
  34. package/dist/lib/components/HeroBanner/context/index.d.ts +10 -0
  35. package/dist/lib/components/HeroBanner/index.d.ts +2 -0
  36. package/dist/lib/components/HeroBanner/types/index.d.ts +11 -0
  37. package/dist/lib/components/Nav/index.d.ts +8 -0
  38. package/dist/lib/components/OfferCards/context/index.d.ts +9 -0
  39. package/dist/lib/components/OfferCards/index.d.ts +2 -0
  40. package/dist/lib/components/OfferCards/subComponents/OfferCard.d.ts +3 -0
  41. package/dist/lib/components/OfferCards/types/index.d.ts +26 -0
  42. package/dist/lib/components/SaleBanner/context/index.d.ts +10 -0
  43. package/dist/lib/components/SaleBanner/index.d.ts +2 -0
  44. package/dist/lib/components/SaleBanner/types/index.d.ts +11 -0
  45. package/dist/lib/main.d.ts +13 -0
  46. package/dist/main.js +32 -6
  47. package/dist/prism-accordion.entry-BxWxJTzN.js +51 -0
  48. package/dist/prism-avatar_2.entry-D13WJm8L.js +68 -0
  49. package/dist/prism-badge.entry-DxUacM3U.js +58 -0
  50. package/dist/prism-banner.entry-C2PB-eYg.js +82 -0
  51. package/dist/prism-breadcrumb.entry-Xs2uvtMJ.js +33 -0
  52. package/dist/prism-button_2.entry-Bu7aTvL3.js +110 -0
  53. package/dist/prism-card.entry-DN_z84zN.js +119 -0
  54. package/dist/prism-carousel.entry-R9W3QWAj.js +3111 -0
  55. package/dist/prism-checkbox-group.entry-D6r-q0Hm.js +62 -0
  56. package/dist/prism-checkbox.entry-w99uqUBB.js +99 -0
  57. package/dist/prism-data-table.entry-Ckducvo-.js +10475 -0
  58. package/dist/prism-datepicker.entry-QpabfLme.js +249 -0
  59. package/dist/{prism-form.entry-C8VzGp6c.js → prism-form.entry-B0of8RQh.js} +11 -11
  60. package/dist/prism-grid.entry-CFnOi_Vc.js +28 -0
  61. package/dist/prism-header.entry-0LjtG822.js +202 -0
  62. package/dist/prism-hero.entry-DVipQrOc.js +23 -0
  63. package/dist/prism-icon_2.entry-FQ8c7tJr.js +118 -0
  64. package/dist/prism-image.entry-BtjBPMeE.js +38 -0
  65. package/dist/prism-input-file.entry-CXYV9xtO.js +119 -0
  66. package/dist/prism-input-otp.entry-CXBN1WBi.js +63 -0
  67. package/dist/prism-input-text.entry-D5yPqcBS.js +228 -0
  68. package/dist/prism-input-textarea.entry-6O7qdk_r.js +140 -0
  69. package/dist/prism-layout.entry-CJcjgXky.js +20 -0
  70. package/dist/prism-lineitem.entry-BSBcpGKE.js +44 -0
  71. package/dist/prism-menu.entry-hxjFECbL.js +231 -0
  72. package/dist/prism-modal.entry-BIavEySL.js +94 -0
  73. package/dist/prism-pagination.entry-cJjWcUeH.js +60 -0
  74. package/dist/prism-popover.entry-EiL6rh8c.js +1013 -0
  75. package/dist/prism-popper.entry-B3NAqQHK.js +959 -0
  76. package/dist/prism-progress.entry-DkyB0j-F.js +79 -0
  77. package/dist/prism-radio-group.entry-nR5BA0H-.js +66 -0
  78. package/dist/prism-radio.entry-2oHibUZp.js +101 -0
  79. package/dist/prism-select.entry-DaSGr0dP.js +230 -0
  80. package/dist/prism-switch.entry-CiUr8IHK.js +95 -0
  81. package/dist/prism-tab.entry-Db7WSxCT.js +20 -0
  82. package/dist/prism-tabs.entry-BSS5u08w.js +70 -0
  83. package/dist/prism-tooltip.entry-Dqu6PskB.js +52 -0
  84. package/dist/prism-typeahead.entry-BMyMjXSV.js +1234 -0
  85. package/package.json +3 -2
  86. package/dist/index-44540db3-BN5vFHKr.js +0 -44
  87. package/dist/index-4d46d9ca-BtyZMEt1.js +0 -12
  88. package/dist/index-D9BZSjMp.js +0 -21158
  89. package/dist/prism-accordion.entry-D4g7wdXB.js +0 -51
  90. package/dist/prism-avatar_3.entry-C1H9bg9y.js +0 -335
  91. package/dist/prism-badge.entry-CWLalQsR.js +0 -56
  92. package/dist/prism-banner.entry-D1sce4tY.js +0 -105
  93. package/dist/prism-breadcrumb.entry-C282yHQl.js +0 -33
  94. package/dist/prism-button_3.entry-DIg1AEXF.js +0 -240
  95. package/dist/prism-card.entry-DaxGD-uX.js +0 -152
  96. package/dist/prism-carousel.entry-BGmaoDVM.js +0 -3346
  97. package/dist/prism-checkbox-group.entry-Dwa_mvjd.js +0 -62
  98. package/dist/prism-checkbox.entry-CZvx2AHI.js +0 -116
  99. package/dist/prism-data-table.entry-DACAS8BE.js +0 -3591
  100. package/dist/prism-datepicker.entry-CHUyjilE.js +0 -279
  101. package/dist/prism-dialog.entry-DdO9Kt32.js +0 -73
  102. package/dist/prism-drawer.entry-Dn0rvW9U.js +0 -43
  103. package/dist/prism-header.entry-D0PypuC3.js +0 -227
  104. package/dist/prism-hero.entry-DQ8G7Jb_.js +0 -23
  105. package/dist/prism-image.entry-tx9Pc3k_.js +0 -38
  106. package/dist/prism-input-file.entry-CO-2LZxG.js +0 -119
  107. package/dist/prism-input-otp.entry-ZAxExI2D.js +0 -79
  108. package/dist/prism-input-text.entry-EXsN4rgi.js +0 -278
  109. package/dist/prism-input-textarea.entry-CRqY4mr9.js +0 -145
  110. package/dist/prism-input-time.entry-BJ9he6MX.js +0 -85
  111. package/dist/prism-layout.entry-ulDWjtj8.js +0 -20
  112. package/dist/prism-lineitem.entry-DJk6X6mR.js +0 -47
  113. package/dist/prism-modal.entry-C795YZic.js +0 -95
  114. package/dist/prism-pagination.entry-DYQieAu3.js +0 -69
  115. package/dist/prism-popover.entry-BgLcACZw.js +0 -1114
  116. package/dist/prism-progress.entry-Z21rpoTm.js +0 -79
  117. package/dist/prism-radio_2.entry-C0HPCb3G.js +0 -159
  118. package/dist/prism-select.entry-B_l-ab1d.js +0 -286
  119. package/dist/prism-switch.entry-OkC8X1bD.js +0 -95
  120. package/dist/prism-tab.entry-szftB_wL.js +0 -20
  121. package/dist/prism-tabs.entry-0UR3WF52.js +0 -72
  122. package/dist/prism-text.entry-BEAZ8xEV.js +0 -28
  123. package/dist/prism-treelist.entry-UX4FM4Bi.js +0 -135
  124. package/dist/prism-typeahead.entry-CwOiAFQE.js +0 -1264
  125. package/dist/purify-9647b094-0-ZyuBNz.js +0 -572
@@ -1,3346 +0,0 @@
1
- import { r as Oe, h as F, H as De, g as Be } from "./index-D9BZSjMp.js";
2
- import { g as Ge, a as we } from "./index-44540db3-BN5vFHKr.js";
3
- /*!
4
- * Copyright (c) 2025 Comcast. Prism UI - v8.28.0 - made with ❤️ in Philadelphia
5
- */
6
- function ve(i) {
7
- return i !== null && typeof i == "object" && "constructor" in i && i.constructor === Object;
8
- }
9
- function ge(i, e) {
10
- i === void 0 && (i = {}), e === void 0 && (e = {});
11
- const t = ["__proto__", "constructor", "prototype"];
12
- Object.keys(e).filter((s) => t.indexOf(s) < 0).forEach((s) => {
13
- typeof i[s] > "u" ? i[s] = e[s] : ve(e[s]) && ve(i[s]) && Object.keys(e[s]).length > 0 && ge(i[s], e[s]);
14
- });
15
- }
16
- const Ee = {
17
- body: {},
18
- addEventListener() {
19
- },
20
- removeEventListener() {
21
- },
22
- activeElement: {
23
- blur() {
24
- },
25
- nodeName: ""
26
- },
27
- querySelector() {
28
- return null;
29
- },
30
- querySelectorAll() {
31
- return [];
32
- },
33
- getElementById() {
34
- return null;
35
- },
36
- createEvent() {
37
- return {
38
- initEvent() {
39
- }
40
- };
41
- },
42
- createElement() {
43
- return {
44
- children: [],
45
- childNodes: [],
46
- style: {},
47
- setAttribute() {
48
- },
49
- getElementsByTagName() {
50
- return [];
51
- }
52
- };
53
- },
54
- createElementNS() {
55
- return {};
56
- },
57
- importNode() {
58
- return null;
59
- },
60
- location: {
61
- hash: "",
62
- host: "",
63
- hostname: "",
64
- href: "",
65
- origin: "",
66
- pathname: "",
67
- protocol: "",
68
- search: ""
69
- }
70
- };
71
- function R() {
72
- const i = typeof document < "u" ? document : {};
73
- return ge(i, Ee), i;
74
- }
75
- const $e = {
76
- document: Ee,
77
- navigator: {
78
- userAgent: ""
79
- },
80
- location: {
81
- hash: "",
82
- host: "",
83
- hostname: "",
84
- href: "",
85
- origin: "",
86
- pathname: "",
87
- protocol: "",
88
- search: ""
89
- },
90
- history: {
91
- replaceState() {
92
- },
93
- pushState() {
94
- },
95
- go() {
96
- },
97
- back() {
98
- }
99
- },
100
- CustomEvent: function() {
101
- return this;
102
- },
103
- addEventListener() {
104
- },
105
- removeEventListener() {
106
- },
107
- getComputedStyle() {
108
- return {
109
- getPropertyValue() {
110
- return "";
111
- }
112
- };
113
- },
114
- Image() {
115
- },
116
- Date() {
117
- },
118
- screen: {},
119
- setTimeout() {
120
- },
121
- clearTimeout() {
122
- },
123
- matchMedia() {
124
- return {};
125
- },
126
- requestAnimationFrame(i) {
127
- return typeof setTimeout > "u" ? (i(), null) : setTimeout(i, 0);
128
- },
129
- cancelAnimationFrame(i) {
130
- typeof setTimeout > "u" || clearTimeout(i);
131
- }
132
- };
133
- function V() {
134
- const i = typeof window < "u" ? window : {};
135
- return ge(i, $e), i;
136
- }
137
- function Y(i) {
138
- return i === void 0 && (i = ""), i.trim().split(" ").filter((e) => !!e.trim());
139
- }
140
- function Fe(i) {
141
- const e = i;
142
- Object.keys(e).forEach((t) => {
143
- try {
144
- e[t] = null;
145
- } catch {
146
- }
147
- try {
148
- delete e[t];
149
- } catch {
150
- }
151
- });
152
- }
153
- function ie(i, e) {
154
- return e === void 0 && (e = 0), setTimeout(i, e);
155
- }
156
- function se() {
157
- return Date.now();
158
- }
159
- function Ve(i) {
160
- const e = V();
161
- let t;
162
- return e.getComputedStyle && (t = e.getComputedStyle(i, null)), !t && i.currentStyle && (t = i.currentStyle), t || (t = i.style), t;
163
- }
164
- function _e(i, e) {
165
- e === void 0 && (e = "x");
166
- const t = V();
167
- let s, n, r;
168
- const o = Ve(i);
169
- return t.WebKitCSSMatrix ? (n = o.transform || o.webkitTransform, n.split(",").length > 6 && (n = n.split(", ").map((a) => a.replace(",", ".")).join(", ")), r = new t.WebKitCSSMatrix(n === "none" ? "" : n)) : (r = o.MozTransform || o.OTransform || o.MsTransform || o.msTransform || o.transform || o.getPropertyValue("transform").replace("translate(", "matrix(1, 0, 0, 1,"), s = r.toString().split(",")), e === "x" && (t.WebKitCSSMatrix ? n = r.m41 : s.length === 16 ? n = parseFloat(s[12]) : n = parseFloat(s[4])), e === "y" && (t.WebKitCSSMatrix ? n = r.m42 : s.length === 16 ? n = parseFloat(s[13]) : n = parseFloat(s[5])), n || 0;
170
- }
171
- function J(i) {
172
- return typeof i == "object" && i !== null && i.constructor && Object.prototype.toString.call(i).slice(8, -1) === "Object";
173
- }
174
- function Re(i) {
175
- return typeof window < "u" && typeof window.HTMLElement < "u" ? i instanceof HTMLElement : i && (i.nodeType === 1 || i.nodeType === 11);
176
- }
177
- function N() {
178
- const i = Object(arguments.length <= 0 ? void 0 : arguments[0]), e = ["__proto__", "constructor", "prototype"];
179
- for (let t = 1; t < arguments.length; t += 1) {
180
- const s = t < 0 || arguments.length <= t ? void 0 : arguments[t];
181
- if (s != null && !Re(s)) {
182
- const n = Object.keys(Object(s)).filter((r) => e.indexOf(r) < 0);
183
- for (let r = 0, o = n.length; r < o; r += 1) {
184
- const a = n[r], d = Object.getOwnPropertyDescriptor(s, a);
185
- d !== void 0 && d.enumerable && (J(i[a]) && J(s[a]) ? s[a].__swiper__ ? i[a] = s[a] : N(i[a], s[a]) : !J(i[a]) && J(s[a]) ? (i[a] = {}, s[a].__swiper__ ? i[a] = s[a] : N(i[a], s[a])) : i[a] = s[a]);
186
- }
187
- }
188
- }
189
- return i;
190
- }
191
- function ee(i, e, t) {
192
- i.style.setProperty(e, t);
193
- }
194
- function Ce(i) {
195
- let {
196
- swiper: e,
197
- targetPosition: t,
198
- side: s
199
- } = i;
200
- const n = V(), r = -e.translate;
201
- let o = null, a;
202
- const d = e.params.speed;
203
- e.wrapperEl.style.scrollSnapType = "none", n.cancelAnimationFrame(e.cssModeFrameID);
204
- const l = t > r ? "next" : "prev", p = (h, S) => l === "next" && h >= S || l === "prev" && h <= S, f = () => {
205
- a = (/* @__PURE__ */ new Date()).getTime(), o === null && (o = a);
206
- const h = Math.max(Math.min((a - o) / d, 1), 0), S = 0.5 - Math.cos(h * Math.PI) / 2;
207
- let m = r + S * (t - r);
208
- if (p(m, t) && (m = t), e.wrapperEl.scrollTo({
209
- [s]: m
210
- }), p(m, t)) {
211
- e.wrapperEl.style.overflow = "hidden", e.wrapperEl.style.scrollSnapType = "", setTimeout(() => {
212
- e.wrapperEl.style.overflow = "", e.wrapperEl.scrollTo({
213
- [s]: m
214
- });
215
- }), n.cancelAnimationFrame(e.cssModeFrameID);
216
- return;
217
- }
218
- e.cssModeFrameID = n.requestAnimationFrame(f);
219
- };
220
- f();
221
- }
222
- function q(i, e) {
223
- e === void 0 && (e = "");
224
- const t = V(), s = [...i.children];
225
- return t.HTMLSlotElement && i instanceof HTMLSlotElement && s.push(...i.assignedElements()), e ? s.filter((n) => n.matches(e)) : s;
226
- }
227
- function Ne(i, e) {
228
- const t = [e];
229
- for (; t.length > 0; ) {
230
- const s = t.shift();
231
- if (i === s)
232
- return !0;
233
- t.push(...s.children, ...s.shadowRoot ? s.shadowRoot.children : [], ...s.assignedElements ? s.assignedElements() : []);
234
- }
235
- }
236
- function He(i, e) {
237
- const t = V();
238
- let s = e.contains(i);
239
- return !s && t.HTMLSlotElement && e instanceof HTMLSlotElement && (s = [...e.assignedElements()].includes(i), s || (s = Ne(i, e))), s;
240
- }
241
- function re(i) {
242
- try {
243
- console.warn(i);
244
- return;
245
- } catch {
246
- }
247
- }
248
- function U(i, e) {
249
- e === void 0 && (e = []);
250
- const t = document.createElement(i);
251
- return t.classList.add(...Array.isArray(e) ? e : Y(e)), t;
252
- }
253
- function je(i) {
254
- const e = V(), t = R(), s = i.getBoundingClientRect(), n = t.body, r = i.clientTop || n.clientTop || 0, o = i.clientLeft || n.clientLeft || 0, a = i === e ? e.scrollY : i.scrollTop, d = i === e ? e.scrollX : i.scrollLeft;
255
- return {
256
- top: s.top + a - r,
257
- left: s.left + d - o
258
- };
259
- }
260
- function qe(i, e) {
261
- const t = [];
262
- for (; i.previousElementSibling; ) {
263
- const s = i.previousElementSibling;
264
- e ? s.matches(e) && t.push(s) : t.push(s), i = s;
265
- }
266
- return t;
267
- }
268
- function We(i, e) {
269
- const t = [];
270
- for (; i.nextElementSibling; ) {
271
- const s = i.nextElementSibling;
272
- e ? s.matches(e) && t.push(s) : t.push(s), i = s;
273
- }
274
- return t;
275
- }
276
- function X(i, e) {
277
- return V().getComputedStyle(i, null).getPropertyValue(e);
278
- }
279
- function K(i) {
280
- let e = i, t;
281
- if (e) {
282
- for (t = 0; (e = e.previousSibling) !== null; )
283
- e.nodeType === 1 && (t += 1);
284
- return t;
285
- }
286
- }
287
- function Me(i, e) {
288
- const t = [];
289
- let s = i.parentElement;
290
- for (; s; )
291
- e ? s.matches(e) && t.push(s) : t.push(s), s = s.parentElement;
292
- return t;
293
- }
294
- function ue(i, e, t) {
295
- const s = V();
296
- return i[e === "width" ? "offsetWidth" : "offsetHeight"] + parseFloat(s.getComputedStyle(i, null).getPropertyValue(e === "width" ? "margin-right" : "margin-top")) + parseFloat(s.getComputedStyle(i, null).getPropertyValue(e === "width" ? "margin-left" : "margin-bottom"));
297
- }
298
- function G(i) {
299
- return (Array.isArray(i) ? i : [i]).filter((e) => !!e);
300
- }
301
- function fe(i, e) {
302
- e === void 0 && (e = ""), typeof trustedTypes < "u" ? i.innerHTML = trustedTypes.createPolicy("html", {
303
- createHTML: (t) => t
304
- }).createHTML(e) : i.innerHTML = e;
305
- }
306
- let ne;
307
- function Ye() {
308
- const i = V(), e = R();
309
- return {
310
- smoothScroll: e.documentElement && e.documentElement.style && "scrollBehavior" in e.documentElement.style,
311
- touch: !!("ontouchstart" in i || i.DocumentTouch && e instanceof i.DocumentTouch)
312
- };
313
- }
314
- function Le() {
315
- return ne || (ne = Ye()), ne;
316
- }
317
- let ae;
318
- function Xe(i) {
319
- let {
320
- userAgent: e
321
- } = i === void 0 ? {} : i;
322
- const t = Le(), s = V(), n = s.navigator.platform, r = e || s.navigator.userAgent, o = {
323
- ios: !1,
324
- android: !1
325
- }, a = s.screen.width, d = s.screen.height, l = r.match(/(Android);?[\s\/]+([\d.]+)?/);
326
- let p = r.match(/(iPad).*OS\s([\d_]+)/);
327
- const f = r.match(/(iPod)(.*OS\s([\d_]+))?/), h = !p && r.match(/(iPhone\sOS|iOS)\s([\d_]+)/), S = n === "Win32";
328
- let m = n === "MacIntel";
329
- const g = ["1024x1366", "1366x1024", "834x1194", "1194x834", "834x1112", "1112x834", "768x1024", "1024x768", "820x1180", "1180x820", "810x1080", "1080x810"];
330
- return !p && m && t.touch && g.indexOf(`${a}x${d}`) >= 0 && (p = r.match(/(Version)\/([\d.]+)/), p || (p = [0, 1, "13_0_0"]), m = !1), l && !S && (o.os = "android", o.android = !0), (p || h || f) && (o.os = "ios", o.ios = !0), o;
331
- }
332
- function Pe(i) {
333
- return i === void 0 && (i = {}), ae || (ae = Xe(i)), ae;
334
- }
335
- let oe;
336
- function Ue() {
337
- const i = V(), e = Pe();
338
- let t = !1;
339
- function s() {
340
- const a = i.navigator.userAgent.toLowerCase();
341
- return a.indexOf("safari") >= 0 && a.indexOf("chrome") < 0 && a.indexOf("android") < 0;
342
- }
343
- if (s()) {
344
- const a = String(i.navigator.userAgent);
345
- if (a.includes("Version/")) {
346
- const [d, l] = a.split("Version/")[1].split(" ")[0].split(".").map((p) => Number(p));
347
- t = d < 16 || d === 16 && l < 2;
348
- }
349
- }
350
- const n = /(iPhone|iPod|iPad).*AppleWebKit(?!.*Safari)/i.test(i.navigator.userAgent), r = s(), o = r || n && e.ios;
351
- return {
352
- isSafari: t || r,
353
- needPerspectiveFix: t,
354
- need3dFix: o,
355
- isWebView: n
356
- };
357
- }
358
- function ke() {
359
- return oe || (oe = Ue()), oe;
360
- }
361
- function Ke(i) {
362
- let {
363
- swiper: e,
364
- on: t,
365
- emit: s
366
- } = i;
367
- const n = V();
368
- let r = null, o = null;
369
- const a = () => {
370
- !e || e.destroyed || !e.initialized || (s("beforeResize"), s("resize"));
371
- }, d = () => {
372
- !e || e.destroyed || !e.initialized || (r = new ResizeObserver((f) => {
373
- o = n.requestAnimationFrame(() => {
374
- const {
375
- width: h,
376
- height: S
377
- } = e;
378
- let m = h, g = S;
379
- f.forEach((E) => {
380
- let {
381
- contentBoxSize: y,
382
- contentRect: c,
383
- target: u
384
- } = E;
385
- u && u !== e.el || (m = c ? c.width : (y[0] || y).inlineSize, g = c ? c.height : (y[0] || y).blockSize);
386
- }), (m !== h || g !== S) && a();
387
- });
388
- }), r.observe(e.el));
389
- }, l = () => {
390
- o && n.cancelAnimationFrame(o), r && r.unobserve && e.el && (r.unobserve(e.el), r = null);
391
- }, p = () => {
392
- !e || e.destroyed || !e.initialized || s("orientationchange");
393
- };
394
- t("init", () => {
395
- if (e.params.resizeObserver && typeof n.ResizeObserver < "u") {
396
- d();
397
- return;
398
- }
399
- n.addEventListener("resize", a), n.addEventListener("orientationchange", p);
400
- }), t("destroy", () => {
401
- l(), n.removeEventListener("resize", a), n.removeEventListener("orientationchange", p);
402
- });
403
- }
404
- function Ze(i) {
405
- let {
406
- swiper: e,
407
- extendParams: t,
408
- on: s,
409
- emit: n
410
- } = i;
411
- const r = [], o = V(), a = function(p, f) {
412
- f === void 0 && (f = {});
413
- const h = o.MutationObserver || o.WebkitMutationObserver, S = new h((m) => {
414
- if (e.__preventObserver__) return;
415
- if (m.length === 1) {
416
- n("observerUpdate", m[0]);
417
- return;
418
- }
419
- const g = function() {
420
- n("observerUpdate", m[0]);
421
- };
422
- o.requestAnimationFrame ? o.requestAnimationFrame(g) : o.setTimeout(g, 0);
423
- });
424
- S.observe(p, {
425
- attributes: typeof f.attributes > "u" ? !0 : f.attributes,
426
- childList: e.isElement || (typeof f.childList > "u" ? !0 : f).childList,
427
- characterData: typeof f.characterData > "u" ? !0 : f.characterData
428
- }), r.push(S);
429
- }, d = () => {
430
- if (e.params.observer) {
431
- if (e.params.observeParents) {
432
- const p = Me(e.hostEl);
433
- for (let f = 0; f < p.length; f += 1)
434
- a(p[f]);
435
- }
436
- a(e.hostEl, {
437
- childList: e.params.observeSlideChildren
438
- }), a(e.wrapperEl, {
439
- attributes: !1
440
- });
441
- }
442
- }, l = () => {
443
- r.forEach((p) => {
444
- p.disconnect();
445
- }), r.splice(0, r.length);
446
- };
447
- t({
448
- observer: !1,
449
- observeParents: !1,
450
- observeSlideChildren: !1
451
- }), s("init", d), s("destroy", l);
452
- }
453
- var Qe = {
454
- on(i, e, t) {
455
- const s = this;
456
- if (!s.eventsListeners || s.destroyed || typeof e != "function") return s;
457
- const n = t ? "unshift" : "push";
458
- return i.split(" ").forEach((r) => {
459
- s.eventsListeners[r] || (s.eventsListeners[r] = []), s.eventsListeners[r][n](e);
460
- }), s;
461
- },
462
- once(i, e, t) {
463
- const s = this;
464
- if (!s.eventsListeners || s.destroyed || typeof e != "function") return s;
465
- function n() {
466
- s.off(i, n), n.__emitterProxy && delete n.__emitterProxy;
467
- for (var r = arguments.length, o = new Array(r), a = 0; a < r; a++)
468
- o[a] = arguments[a];
469
- e.apply(s, o);
470
- }
471
- return n.__emitterProxy = e, s.on(i, n, t);
472
- },
473
- onAny(i, e) {
474
- const t = this;
475
- if (!t.eventsListeners || t.destroyed || typeof i != "function") return t;
476
- const s = e ? "unshift" : "push";
477
- return t.eventsAnyListeners.indexOf(i) < 0 && t.eventsAnyListeners[s](i), t;
478
- },
479
- offAny(i) {
480
- const e = this;
481
- if (!e.eventsListeners || e.destroyed || !e.eventsAnyListeners) return e;
482
- const t = e.eventsAnyListeners.indexOf(i);
483
- return t >= 0 && e.eventsAnyListeners.splice(t, 1), e;
484
- },
485
- off(i, e) {
486
- const t = this;
487
- return !t.eventsListeners || t.destroyed || !t.eventsListeners || i.split(" ").forEach((s) => {
488
- typeof e > "u" ? t.eventsListeners[s] = [] : t.eventsListeners[s] && t.eventsListeners[s].forEach((n, r) => {
489
- (n === e || n.__emitterProxy && n.__emitterProxy === e) && t.eventsListeners[s].splice(r, 1);
490
- });
491
- }), t;
492
- },
493
- emit() {
494
- const i = this;
495
- if (!i.eventsListeners || i.destroyed || !i.eventsListeners) return i;
496
- let e, t, s;
497
- for (var n = arguments.length, r = new Array(n), o = 0; o < n; o++)
498
- r[o] = arguments[o];
499
- return typeof r[0] == "string" || Array.isArray(r[0]) ? (e = r[0], t = r.slice(1, r.length), s = i) : (e = r[0].events, t = r[0].data, s = r[0].context || i), t.unshift(s), (Array.isArray(e) ? e : e.split(" ")).forEach((d) => {
500
- i.eventsAnyListeners && i.eventsAnyListeners.length && i.eventsAnyListeners.forEach((l) => {
501
- l.apply(s, [d, ...t]);
502
- }), i.eventsListeners && i.eventsListeners[d] && i.eventsListeners[d].forEach((l) => {
503
- l.apply(s, t);
504
- });
505
- }), i;
506
- }
507
- };
508
- function Je() {
509
- const i = this;
510
- let e, t;
511
- const s = i.el;
512
- typeof i.params.width < "u" && i.params.width !== null ? e = i.params.width : e = s.clientWidth, typeof i.params.height < "u" && i.params.height !== null ? t = i.params.height : t = s.clientHeight, !(e === 0 && i.isHorizontal() || t === 0 && i.isVertical()) && (e = e - parseInt(X(s, "padding-left") || 0, 10) - parseInt(X(s, "padding-right") || 0, 10), t = t - parseInt(X(s, "padding-top") || 0, 10) - parseInt(X(s, "padding-bottom") || 0, 10), Number.isNaN(e) && (e = 0), Number.isNaN(t) && (t = 0), Object.assign(i, {
513
- width: e,
514
- height: t,
515
- size: i.isHorizontal() ? e : t
516
- }));
517
- }
518
- function et() {
519
- const i = this;
520
- function e(C, k) {
521
- return parseFloat(C.getPropertyValue(i.getDirectionLabel(k)) || 0);
522
- }
523
- const t = i.params, {
524
- wrapperEl: s,
525
- slidesEl: n,
526
- size: r,
527
- rtlTranslate: o,
528
- wrongRTL: a
529
- } = i, d = i.virtual && t.virtual.enabled, l = d ? i.virtual.slides.length : i.slides.length, p = q(n, `.${i.params.slideClass}, swiper-slide`), f = d ? i.virtual.slides.length : p.length;
530
- let h = [];
531
- const S = [], m = [];
532
- let g = t.slidesOffsetBefore;
533
- typeof g == "function" && (g = t.slidesOffsetBefore.call(i));
534
- let E = t.slidesOffsetAfter;
535
- typeof E == "function" && (E = t.slidesOffsetAfter.call(i));
536
- const y = i.snapGrid.length, c = i.slidesGrid.length;
537
- let u = t.spaceBetween, v = -g, T = 0, P = 0;
538
- if (typeof r > "u")
539
- return;
540
- typeof u == "string" && u.indexOf("%") >= 0 ? u = parseFloat(u.replace("%", "")) / 100 * r : typeof u == "string" && (u = parseFloat(u)), i.virtualSize = -u, p.forEach((C) => {
541
- o ? C.style.marginLeft = "" : C.style.marginRight = "", C.style.marginBottom = "", C.style.marginTop = "";
542
- }), t.centeredSlides && t.cssMode && (ee(s, "--swiper-centered-offset-before", ""), ee(s, "--swiper-centered-offset-after", ""));
543
- const B = t.grid && t.grid.rows > 1 && i.grid;
544
- B ? i.grid.initSlides(p) : i.grid && i.grid.unsetSlides();
545
- let O;
546
- const A = t.slidesPerView === "auto" && t.breakpoints && Object.keys(t.breakpoints).filter((C) => typeof t.breakpoints[C].slidesPerView < "u").length > 0;
547
- for (let C = 0; C < f; C += 1) {
548
- O = 0;
549
- let k;
550
- if (p[C] && (k = p[C]), B && i.grid.updateSlide(C, k, p), !(p[C] && X(k, "display") === "none")) {
551
- if (t.slidesPerView === "auto") {
552
- A && (p[C].style[i.getDirectionLabel("width")] = "");
553
- const x = getComputedStyle(k), M = k.style.transform, z = k.style.webkitTransform;
554
- if (M && (k.style.transform = "none"), z && (k.style.webkitTransform = "none"), t.roundLengths)
555
- O = i.isHorizontal() ? ue(k, "width") : ue(k, "height");
556
- else {
557
- const D = e(x, "width"), L = e(x, "padding-left"), w = e(x, "padding-right"), b = e(x, "margin-left"), I = e(x, "margin-right"), $ = x.getPropertyValue("box-sizing");
558
- if ($ && $ === "border-box")
559
- O = D + b + I;
560
- else {
561
- const {
562
- clientWidth: _,
563
- offsetWidth: j
564
- } = k;
565
- O = D + L + w + b + I + (j - _);
566
- }
567
- }
568
- M && (k.style.transform = M), z && (k.style.webkitTransform = z), t.roundLengths && (O = Math.floor(O));
569
- } else
570
- O = (r - (t.slidesPerView - 1) * u) / t.slidesPerView, t.roundLengths && (O = Math.floor(O)), p[C] && (p[C].style[i.getDirectionLabel("width")] = `${O}px`);
571
- p[C] && (p[C].swiperSlideSize = O), m.push(O), t.centeredSlides ? (v = v + O / 2 + T / 2 + u, T === 0 && C !== 0 && (v = v - r / 2 - u), C === 0 && (v = v - r / 2 - u), Math.abs(v) < 1 / 1e3 && (v = 0), t.roundLengths && (v = Math.floor(v)), P % t.slidesPerGroup === 0 && h.push(v), S.push(v)) : (t.roundLengths && (v = Math.floor(v)), (P - Math.min(i.params.slidesPerGroupSkip, P)) % i.params.slidesPerGroup === 0 && h.push(v), S.push(v), v = v + O + u), i.virtualSize += O + u, T = O, P += 1;
572
- }
573
- }
574
- if (i.virtualSize = Math.max(i.virtualSize, r) + E, o && a && (t.effect === "slide" || t.effect === "coverflow") && (s.style.width = `${i.virtualSize + u}px`), t.setWrapperSize && (s.style[i.getDirectionLabel("width")] = `${i.virtualSize + u}px`), B && i.grid.updateWrapperSize(O, h), !t.centeredSlides) {
575
- const C = [];
576
- for (let k = 0; k < h.length; k += 1) {
577
- let x = h[k];
578
- t.roundLengths && (x = Math.floor(x)), h[k] <= i.virtualSize - r && C.push(x);
579
- }
580
- h = C, Math.floor(i.virtualSize - r) - Math.floor(h[h.length - 1]) > 1 && h.push(i.virtualSize - r);
581
- }
582
- if (d && t.loop) {
583
- const C = m[0] + u;
584
- if (t.slidesPerGroup > 1) {
585
- const k = Math.ceil((i.virtual.slidesBefore + i.virtual.slidesAfter) / t.slidesPerGroup), x = C * t.slidesPerGroup;
586
- for (let M = 0; M < k; M += 1)
587
- h.push(h[h.length - 1] + x);
588
- }
589
- for (let k = 0; k < i.virtual.slidesBefore + i.virtual.slidesAfter; k += 1)
590
- t.slidesPerGroup === 1 && h.push(h[h.length - 1] + C), S.push(S[S.length - 1] + C), i.virtualSize += C;
591
- }
592
- if (h.length === 0 && (h = [0]), u !== 0) {
593
- const C = i.isHorizontal() && o ? "marginLeft" : i.getDirectionLabel("marginRight");
594
- p.filter((k, x) => !t.cssMode || t.loop ? !0 : x !== p.length - 1).forEach((k) => {
595
- k.style[C] = `${u}px`;
596
- });
597
- }
598
- if (t.centeredSlides && t.centeredSlidesBounds) {
599
- let C = 0;
600
- m.forEach((x) => {
601
- C += x + (u || 0);
602
- }), C -= u;
603
- const k = C > r ? C - r : 0;
604
- h = h.map((x) => x <= 0 ? -g : x > k ? k + E : x);
605
- }
606
- if (t.centerInsufficientSlides) {
607
- let C = 0;
608
- m.forEach((x) => {
609
- C += x + (u || 0);
610
- }), C -= u;
611
- const k = (t.slidesOffsetBefore || 0) + (t.slidesOffsetAfter || 0);
612
- if (C + k < r) {
613
- const x = (r - C - k) / 2;
614
- h.forEach((M, z) => {
615
- h[z] = M - x;
616
- }), S.forEach((M, z) => {
617
- S[z] = M + x;
618
- });
619
- }
620
- }
621
- if (Object.assign(i, {
622
- slides: p,
623
- snapGrid: h,
624
- slidesGrid: S,
625
- slidesSizesGrid: m
626
- }), t.centeredSlides && t.cssMode && !t.centeredSlidesBounds) {
627
- ee(s, "--swiper-centered-offset-before", `${-h[0]}px`), ee(s, "--swiper-centered-offset-after", `${i.size / 2 - m[m.length - 1] / 2}px`);
628
- const C = -i.snapGrid[0], k = -i.slidesGrid[0];
629
- i.snapGrid = i.snapGrid.map((x) => x + C), i.slidesGrid = i.slidesGrid.map((x) => x + k);
630
- }
631
- if (f !== l && i.emit("slidesLengthChange"), h.length !== y && (i.params.watchOverflow && i.checkOverflow(), i.emit("snapGridLengthChange")), S.length !== c && i.emit("slidesGridLengthChange"), t.watchSlidesProgress && i.updateSlidesOffset(), i.emit("slidesUpdated"), !d && !t.cssMode && (t.effect === "slide" || t.effect === "fade")) {
632
- const C = `${t.containerModifierClass}backface-hidden`, k = i.el.classList.contains(C);
633
- f <= t.maxBackfaceHiddenSlides ? k || i.el.classList.add(C) : k && i.el.classList.remove(C);
634
- }
635
- }
636
- function tt(i) {
637
- const e = this, t = [], s = e.virtual && e.params.virtual.enabled;
638
- let n = 0, r;
639
- typeof i == "number" ? e.setTransition(i) : i === !0 && e.setTransition(e.params.speed);
640
- const o = (a) => s ? e.slides[e.getSlideIndexByData(a)] : e.slides[a];
641
- if (e.params.slidesPerView !== "auto" && e.params.slidesPerView > 1)
642
- if (e.params.centeredSlides)
643
- (e.visibleSlides || []).forEach((a) => {
644
- t.push(a);
645
- });
646
- else
647
- for (r = 0; r < Math.ceil(e.params.slidesPerView); r += 1) {
648
- const a = e.activeIndex + r;
649
- if (a > e.slides.length && !s) break;
650
- t.push(o(a));
651
- }
652
- else
653
- t.push(o(e.activeIndex));
654
- for (r = 0; r < t.length; r += 1)
655
- if (typeof t[r] < "u") {
656
- const a = t[r].offsetHeight;
657
- n = a > n ? a : n;
658
- }
659
- (n || n === 0) && (e.wrapperEl.style.height = `${n}px`);
660
- }
661
- function it() {
662
- const i = this, e = i.slides, t = i.isElement ? i.isHorizontal() ? i.wrapperEl.offsetLeft : i.wrapperEl.offsetTop : 0;
663
- for (let s = 0; s < e.length; s += 1)
664
- e[s].swiperSlideOffset = (i.isHorizontal() ? e[s].offsetLeft : e[s].offsetTop) - t - i.cssOverflowAdjustment();
665
- }
666
- const be = (i, e, t) => {
667
- e && !i.classList.contains(t) ? i.classList.add(t) : !e && i.classList.contains(t) && i.classList.remove(t);
668
- };
669
- function st(i) {
670
- i === void 0 && (i = this && this.translate || 0);
671
- const e = this, t = e.params, {
672
- slides: s,
673
- rtlTranslate: n,
674
- snapGrid: r
675
- } = e;
676
- if (s.length === 0) return;
677
- typeof s[0].swiperSlideOffset > "u" && e.updateSlidesOffset();
678
- let o = -i;
679
- n && (o = i), e.visibleSlidesIndexes = [], e.visibleSlides = [];
680
- let a = t.spaceBetween;
681
- typeof a == "string" && a.indexOf("%") >= 0 ? a = parseFloat(a.replace("%", "")) / 100 * e.size : typeof a == "string" && (a = parseFloat(a));
682
- for (let d = 0; d < s.length; d += 1) {
683
- const l = s[d];
684
- let p = l.swiperSlideOffset;
685
- t.cssMode && t.centeredSlides && (p -= s[0].swiperSlideOffset);
686
- const f = (o + (t.centeredSlides ? e.minTranslate() : 0) - p) / (l.swiperSlideSize + a), h = (o - r[0] + (t.centeredSlides ? e.minTranslate() : 0) - p) / (l.swiperSlideSize + a), S = -(o - p), m = S + e.slidesSizesGrid[d], g = S >= 0 && S <= e.size - e.slidesSizesGrid[d], E = S >= 0 && S < e.size - 1 || m > 1 && m <= e.size || S <= 0 && m >= e.size;
687
- E && (e.visibleSlides.push(l), e.visibleSlidesIndexes.push(d)), be(l, E, t.slideVisibleClass), be(l, g, t.slideFullyVisibleClass), l.progress = n ? -f : f, l.originalProgress = n ? -h : h;
688
- }
689
- }
690
- function rt(i) {
691
- const e = this;
692
- if (typeof i > "u") {
693
- const p = e.rtlTranslate ? -1 : 1;
694
- i = e && e.translate && e.translate * p || 0;
695
- }
696
- const t = e.params, s = e.maxTranslate() - e.minTranslate();
697
- let {
698
- progress: n,
699
- isBeginning: r,
700
- isEnd: o,
701
- progressLoop: a
702
- } = e;
703
- const d = r, l = o;
704
- if (s === 0)
705
- n = 0, r = !0, o = !0;
706
- else {
707
- n = (i - e.minTranslate()) / s;
708
- const p = Math.abs(i - e.minTranslate()) < 1, f = Math.abs(i - e.maxTranslate()) < 1;
709
- r = p || n <= 0, o = f || n >= 1, p && (n = 0), f && (n = 1);
710
- }
711
- if (t.loop) {
712
- const p = e.getSlideIndexByData(0), f = e.getSlideIndexByData(e.slides.length - 1), h = e.slidesGrid[p], S = e.slidesGrid[f], m = e.slidesGrid[e.slidesGrid.length - 1], g = Math.abs(i);
713
- g >= h ? a = (g - h) / m : a = (g + m - S) / m, a > 1 && (a -= 1);
714
- }
715
- Object.assign(e, {
716
- progress: n,
717
- progressLoop: a,
718
- isBeginning: r,
719
- isEnd: o
720
- }), (t.watchSlidesProgress || t.centeredSlides && t.autoHeight) && e.updateSlidesProgress(i), r && !d && e.emit("reachBeginning toEdge"), o && !l && e.emit("reachEnd toEdge"), (d && !r || l && !o) && e.emit("fromEdge"), e.emit("progress", n);
721
- }
722
- const le = (i, e, t) => {
723
- e && !i.classList.contains(t) ? i.classList.add(t) : !e && i.classList.contains(t) && i.classList.remove(t);
724
- };
725
- function nt() {
726
- const i = this, {
727
- slides: e,
728
- params: t,
729
- slidesEl: s,
730
- activeIndex: n
731
- } = i, r = i.virtual && t.virtual.enabled, o = i.grid && t.grid && t.grid.rows > 1, a = (f) => q(s, `.${t.slideClass}${f}, swiper-slide${f}`)[0];
732
- let d, l, p;
733
- if (r)
734
- if (t.loop) {
735
- let f = n - i.virtual.slidesBefore;
736
- f < 0 && (f = i.virtual.slides.length + f), f >= i.virtual.slides.length && (f -= i.virtual.slides.length), d = a(`[data-swiper-slide-index="${f}"]`);
737
- } else
738
- d = a(`[data-swiper-slide-index="${n}"]`);
739
- else
740
- o ? (d = e.find((f) => f.column === n), p = e.find((f) => f.column === n + 1), l = e.find((f) => f.column === n - 1)) : d = e[n];
741
- d && (o || (p = We(d, `.${t.slideClass}, swiper-slide`)[0], t.loop && !p && (p = e[0]), l = qe(d, `.${t.slideClass}, swiper-slide`)[0], t.loop && !l === 0 && (l = e[e.length - 1]))), e.forEach((f) => {
742
- le(f, f === d, t.slideActiveClass), le(f, f === p, t.slideNextClass), le(f, f === l, t.slidePrevClass);
743
- }), i.emitSlidesClasses();
744
- }
745
- const te = (i, e) => {
746
- if (!i || i.destroyed || !i.params) return;
747
- const t = () => i.isElement ? "swiper-slide" : `.${i.params.slideClass}`, s = e.closest(t());
748
- if (s) {
749
- let n = s.querySelector(`.${i.params.lazyPreloaderClass}`);
750
- !n && i.isElement && (s.shadowRoot ? n = s.shadowRoot.querySelector(`.${i.params.lazyPreloaderClass}`) : requestAnimationFrame(() => {
751
- s.shadowRoot && (n = s.shadowRoot.querySelector(`.${i.params.lazyPreloaderClass}`), n && n.remove());
752
- })), n && n.remove();
753
- }
754
- }, de = (i, e) => {
755
- if (!i.slides[e]) return;
756
- const t = i.slides[e].querySelector('[loading="lazy"]');
757
- t && t.removeAttribute("loading");
758
- }, me = (i) => {
759
- if (!i || i.destroyed || !i.params) return;
760
- let e = i.params.lazyPreloadPrevNext;
761
- const t = i.slides.length;
762
- if (!t || !e || e < 0) return;
763
- e = Math.min(e, t);
764
- const s = i.params.slidesPerView === "auto" ? i.slidesPerViewDynamic() : Math.ceil(i.params.slidesPerView), n = i.activeIndex;
765
- if (i.params.grid && i.params.grid.rows > 1) {
766
- const o = n, a = [o - e];
767
- a.push(...Array.from({
768
- length: e
769
- }).map((d, l) => o + s + l)), i.slides.forEach((d, l) => {
770
- a.includes(d.column) && de(i, l);
771
- });
772
- return;
773
- }
774
- const r = n + s - 1;
775
- if (i.params.rewind || i.params.loop)
776
- for (let o = n - e; o <= r + e; o += 1) {
777
- const a = (o % t + t) % t;
778
- (a < n || a > r) && de(i, a);
779
- }
780
- else
781
- for (let o = Math.max(n - e, 0); o <= Math.min(r + e, t - 1); o += 1)
782
- o !== n && (o > r || o < n) && de(i, o);
783
- };
784
- function at(i) {
785
- const {
786
- slidesGrid: e,
787
- params: t
788
- } = i, s = i.rtlTranslate ? i.translate : -i.translate;
789
- let n;
790
- for (let r = 0; r < e.length; r += 1)
791
- typeof e[r + 1] < "u" ? s >= e[r] && s < e[r + 1] - (e[r + 1] - e[r]) / 2 ? n = r : s >= e[r] && s < e[r + 1] && (n = r + 1) : s >= e[r] && (n = r);
792
- return t.normalizeSlideIndex && (n < 0 || typeof n > "u") && (n = 0), n;
793
- }
794
- function ot(i) {
795
- const e = this, t = e.rtlTranslate ? e.translate : -e.translate, {
796
- snapGrid: s,
797
- params: n,
798
- activeIndex: r,
799
- realIndex: o,
800
- snapIndex: a
801
- } = e;
802
- let d = i, l;
803
- const p = (S) => {
804
- let m = S - e.virtual.slidesBefore;
805
- return m < 0 && (m = e.virtual.slides.length + m), m >= e.virtual.slides.length && (m -= e.virtual.slides.length), m;
806
- };
807
- if (typeof d > "u" && (d = at(e)), s.indexOf(t) >= 0)
808
- l = s.indexOf(t);
809
- else {
810
- const S = Math.min(n.slidesPerGroupSkip, d);
811
- l = S + Math.floor((d - S) / n.slidesPerGroup);
812
- }
813
- if (l >= s.length && (l = s.length - 1), d === r && !e.params.loop) {
814
- l !== a && (e.snapIndex = l, e.emit("snapIndexChange"));
815
- return;
816
- }
817
- if (d === r && e.params.loop && e.virtual && e.params.virtual.enabled) {
818
- e.realIndex = p(d);
819
- return;
820
- }
821
- const f = e.grid && n.grid && n.grid.rows > 1;
822
- let h;
823
- if (e.virtual && n.virtual.enabled && n.loop)
824
- h = p(d);
825
- else if (f) {
826
- const S = e.slides.find((g) => g.column === d);
827
- let m = parseInt(S.getAttribute("data-swiper-slide-index"), 10);
828
- Number.isNaN(m) && (m = Math.max(e.slides.indexOf(S), 0)), h = Math.floor(m / n.grid.rows);
829
- } else if (e.slides[d]) {
830
- const S = e.slides[d].getAttribute("data-swiper-slide-index");
831
- S ? h = parseInt(S, 10) : h = d;
832
- } else
833
- h = d;
834
- Object.assign(e, {
835
- previousSnapIndex: a,
836
- snapIndex: l,
837
- previousRealIndex: o,
838
- realIndex: h,
839
- previousIndex: r,
840
- activeIndex: d
841
- }), e.initialized && me(e), e.emit("activeIndexChange"), e.emit("snapIndexChange"), (e.initialized || e.params.runCallbacksOnInit) && (o !== h && e.emit("realIndexChange"), e.emit("slideChange"));
842
- }
843
- function lt(i, e) {
844
- const t = this, s = t.params;
845
- let n = i.closest(`.${s.slideClass}, swiper-slide`);
846
- !n && t.isElement && e && e.length > 1 && e.includes(i) && [...e.slice(e.indexOf(i) + 1, e.length)].forEach((a) => {
847
- !n && a.matches && a.matches(`.${s.slideClass}, swiper-slide`) && (n = a);
848
- });
849
- let r = !1, o;
850
- if (n) {
851
- for (let a = 0; a < t.slides.length; a += 1)
852
- if (t.slides[a] === n) {
853
- r = !0, o = a;
854
- break;
855
- }
856
- }
857
- if (n && r)
858
- t.clickedSlide = n, t.virtual && t.params.virtual.enabled ? t.clickedIndex = parseInt(n.getAttribute("data-swiper-slide-index"), 10) : t.clickedIndex = o;
859
- else {
860
- t.clickedSlide = void 0, t.clickedIndex = void 0;
861
- return;
862
- }
863
- s.slideToClickedSlide && t.clickedIndex !== void 0 && t.clickedIndex !== t.activeIndex && t.slideToClickedSlide();
864
- }
865
- var dt = {
866
- updateSize: Je,
867
- updateSlides: et,
868
- updateAutoHeight: tt,
869
- updateSlidesOffset: it,
870
- updateSlidesProgress: st,
871
- updateProgress: rt,
872
- updateSlidesClasses: nt,
873
- updateActiveIndex: ot,
874
- updateClickedSlide: lt
875
- };
876
- function ct(i) {
877
- i === void 0 && (i = this.isHorizontal() ? "x" : "y");
878
- const e = this, {
879
- params: t,
880
- rtlTranslate: s,
881
- translate: n,
882
- wrapperEl: r
883
- } = e;
884
- if (t.virtualTranslate)
885
- return s ? -n : n;
886
- if (t.cssMode)
887
- return n;
888
- let o = _e(r, i);
889
- return o += e.cssOverflowAdjustment(), s && (o = -o), o || 0;
890
- }
891
- function pt(i, e) {
892
- const t = this, {
893
- rtlTranslate: s,
894
- params: n,
895
- wrapperEl: r,
896
- progress: o
897
- } = t;
898
- let a = 0, d = 0;
899
- const l = 0;
900
- t.isHorizontal() ? a = s ? -i : i : d = i, n.roundLengths && (a = Math.floor(a), d = Math.floor(d)), t.previousTranslate = t.translate, t.translate = t.isHorizontal() ? a : d, n.cssMode ? r[t.isHorizontal() ? "scrollLeft" : "scrollTop"] = t.isHorizontal() ? -a : -d : n.virtualTranslate || (t.isHorizontal() ? a -= t.cssOverflowAdjustment() : d -= t.cssOverflowAdjustment(), r.style.transform = `translate3d(${a}px, ${d}px, ${l}px)`);
901
- let p;
902
- const f = t.maxTranslate() - t.minTranslate();
903
- f === 0 ? p = 0 : p = (i - t.minTranslate()) / f, p !== o && t.updateProgress(i), t.emit("setTranslate", t.translate, e);
904
- }
905
- function ut() {
906
- return -this.snapGrid[0];
907
- }
908
- function ft() {
909
- return -this.snapGrid[this.snapGrid.length - 1];
910
- }
911
- function mt(i, e, t, s, n) {
912
- i === void 0 && (i = 0), e === void 0 && (e = this.params.speed), t === void 0 && (t = !0), s === void 0 && (s = !0);
913
- const r = this, {
914
- params: o,
915
- wrapperEl: a
916
- } = r;
917
- if (r.animating && o.preventInteractionOnTransition)
918
- return !1;
919
- const d = r.minTranslate(), l = r.maxTranslate();
920
- let p;
921
- if (s && i > d ? p = d : s && i < l ? p = l : p = i, r.updateProgress(p), o.cssMode) {
922
- const f = r.isHorizontal();
923
- if (e === 0)
924
- a[f ? "scrollLeft" : "scrollTop"] = -p;
925
- else {
926
- if (!r.support.smoothScroll)
927
- return Ce({
928
- swiper: r,
929
- targetPosition: -p,
930
- side: f ? "left" : "top"
931
- }), !0;
932
- a.scrollTo({
933
- [f ? "left" : "top"]: -p,
934
- behavior: "smooth"
935
- });
936
- }
937
- return !0;
938
- }
939
- return e === 0 ? (r.setTransition(0), r.setTranslate(p), t && (r.emit("beforeTransitionStart", e, n), r.emit("transitionEnd"))) : (r.setTransition(e), r.setTranslate(p), t && (r.emit("beforeTransitionStart", e, n), r.emit("transitionStart")), r.animating || (r.animating = !0, r.onTranslateToWrapperTransitionEnd || (r.onTranslateToWrapperTransitionEnd = function(h) {
940
- !r || r.destroyed || h.target === this && (r.wrapperEl.removeEventListener("transitionend", r.onTranslateToWrapperTransitionEnd), r.onTranslateToWrapperTransitionEnd = null, delete r.onTranslateToWrapperTransitionEnd, r.animating = !1, t && r.emit("transitionEnd"));
941
- }), r.wrapperEl.addEventListener("transitionend", r.onTranslateToWrapperTransitionEnd))), !0;
942
- }
943
- var gt = {
944
- getTranslate: ct,
945
- setTranslate: pt,
946
- minTranslate: ut,
947
- maxTranslate: ft,
948
- translateTo: mt
949
- };
950
- function ht(i, e) {
951
- const t = this;
952
- t.params.cssMode || (t.wrapperEl.style.transitionDuration = `${i}ms`, t.wrapperEl.style.transitionDelay = i === 0 ? "0ms" : ""), t.emit("setTransition", i, e);
953
- }
954
- function ze(i) {
955
- let {
956
- swiper: e,
957
- runCallbacks: t,
958
- direction: s,
959
- step: n
960
- } = i;
961
- const {
962
- activeIndex: r,
963
- previousIndex: o
964
- } = e;
965
- let a = s;
966
- a || (r > o ? a = "next" : r < o ? a = "prev" : a = "reset"), e.emit(`transition${n}`), t && a === "reset" ? e.emit(`slideResetTransition${n}`) : t && r !== o && (e.emit(`slideChangeTransition${n}`), a === "next" ? e.emit(`slideNextTransition${n}`) : e.emit(`slidePrevTransition${n}`));
967
- }
968
- function wt(i, e) {
969
- i === void 0 && (i = !0);
970
- const t = this, {
971
- params: s
972
- } = t;
973
- s.cssMode || (s.autoHeight && t.updateAutoHeight(), ze({
974
- swiper: t,
975
- runCallbacks: i,
976
- direction: e,
977
- step: "Start"
978
- }));
979
- }
980
- function vt(i, e) {
981
- i === void 0 && (i = !0);
982
- const t = this, {
983
- params: s
984
- } = t;
985
- t.animating = !1, !s.cssMode && (t.setTransition(0), ze({
986
- swiper: t,
987
- runCallbacks: i,
988
- direction: e,
989
- step: "End"
990
- }));
991
- }
992
- var bt = {
993
- setTransition: ht,
994
- transitionStart: wt,
995
- transitionEnd: vt
996
- };
997
- function yt(i, e, t, s, n) {
998
- i === void 0 && (i = 0), t === void 0 && (t = !0), typeof i == "string" && (i = parseInt(i, 10));
999
- const r = this;
1000
- let o = i;
1001
- o < 0 && (o = 0);
1002
- const {
1003
- params: a,
1004
- snapGrid: d,
1005
- slidesGrid: l,
1006
- previousIndex: p,
1007
- activeIndex: f,
1008
- rtlTranslate: h,
1009
- wrapperEl: S,
1010
- enabled: m
1011
- } = r;
1012
- if (!m && !s && !n || r.destroyed || r.animating && a.preventInteractionOnTransition)
1013
- return !1;
1014
- typeof e > "u" && (e = r.params.speed);
1015
- const g = Math.min(r.params.slidesPerGroupSkip, o);
1016
- let E = g + Math.floor((o - g) / r.params.slidesPerGroup);
1017
- E >= d.length && (E = d.length - 1);
1018
- const y = -d[E];
1019
- if (a.normalizeSlideIndex)
1020
- for (let B = 0; B < l.length; B += 1) {
1021
- const O = -Math.floor(y * 100), A = Math.floor(l[B] * 100), C = Math.floor(l[B + 1] * 100);
1022
- typeof l[B + 1] < "u" ? O >= A && O < C - (C - A) / 2 ? o = B : O >= A && O < C && (o = B + 1) : O >= A && (o = B);
1023
- }
1024
- if (r.initialized && o !== f && (!r.allowSlideNext && (h ? y > r.translate && y > r.minTranslate() : y < r.translate && y < r.minTranslate()) || !r.allowSlidePrev && y > r.translate && y > r.maxTranslate() && (f || 0) !== o))
1025
- return !1;
1026
- o !== (p || 0) && t && r.emit("beforeSlideChangeStart"), r.updateProgress(y);
1027
- let c;
1028
- o > f ? c = "next" : o < f ? c = "prev" : c = "reset";
1029
- const u = r.virtual && r.params.virtual.enabled;
1030
- if (!(u && n) && (h && -y === r.translate || !h && y === r.translate))
1031
- return r.updateActiveIndex(o), a.autoHeight && r.updateAutoHeight(), r.updateSlidesClasses(), a.effect !== "slide" && r.setTranslate(y), c !== "reset" && (r.transitionStart(t, c), r.transitionEnd(t, c)), !1;
1032
- if (a.cssMode) {
1033
- const B = r.isHorizontal(), O = h ? y : -y;
1034
- if (e === 0)
1035
- u && (r.wrapperEl.style.scrollSnapType = "none", r._immediateVirtual = !0), u && !r._cssModeVirtualInitialSet && r.params.initialSlide > 0 ? (r._cssModeVirtualInitialSet = !0, requestAnimationFrame(() => {
1036
- S[B ? "scrollLeft" : "scrollTop"] = O;
1037
- })) : S[B ? "scrollLeft" : "scrollTop"] = O, u && requestAnimationFrame(() => {
1038
- r.wrapperEl.style.scrollSnapType = "", r._immediateVirtual = !1;
1039
- });
1040
- else {
1041
- if (!r.support.smoothScroll)
1042
- return Ce({
1043
- swiper: r,
1044
- targetPosition: O,
1045
- side: B ? "left" : "top"
1046
- }), !0;
1047
- S.scrollTo({
1048
- [B ? "left" : "top"]: O,
1049
- behavior: "smooth"
1050
- });
1051
- }
1052
- return !0;
1053
- }
1054
- const P = ke().isSafari;
1055
- return u && !n && P && r.isElement && r.virtual.update(!1, !1, o), r.setTransition(e), r.setTranslate(y), r.updateActiveIndex(o), r.updateSlidesClasses(), r.emit("beforeTransitionStart", e, s), r.transitionStart(t, c), e === 0 ? r.transitionEnd(t, c) : r.animating || (r.animating = !0, r.onSlideToWrapperTransitionEnd || (r.onSlideToWrapperTransitionEnd = function(O) {
1056
- !r || r.destroyed || O.target === this && (r.wrapperEl.removeEventListener("transitionend", r.onSlideToWrapperTransitionEnd), r.onSlideToWrapperTransitionEnd = null, delete r.onSlideToWrapperTransitionEnd, r.transitionEnd(t, c));
1057
- }), r.wrapperEl.addEventListener("transitionend", r.onSlideToWrapperTransitionEnd)), !0;
1058
- }
1059
- function St(i, e, t, s) {
1060
- i === void 0 && (i = 0), t === void 0 && (t = !0), typeof i == "string" && (i = parseInt(i, 10));
1061
- const n = this;
1062
- if (n.destroyed) return;
1063
- typeof e > "u" && (e = n.params.speed);
1064
- const r = n.grid && n.params.grid && n.params.grid.rows > 1;
1065
- let o = i;
1066
- if (n.params.loop)
1067
- if (n.virtual && n.params.virtual.enabled)
1068
- o = o + n.virtual.slidesBefore;
1069
- else {
1070
- let a;
1071
- if (r) {
1072
- const h = o * n.params.grid.rows;
1073
- a = n.slides.find((S) => S.getAttribute("data-swiper-slide-index") * 1 === h).column;
1074
- } else
1075
- a = n.getSlideIndexByData(o);
1076
- const d = r ? Math.ceil(n.slides.length / n.params.grid.rows) : n.slides.length, {
1077
- centeredSlides: l
1078
- } = n.params;
1079
- let p = n.params.slidesPerView;
1080
- p === "auto" ? p = n.slidesPerViewDynamic() : (p = Math.ceil(parseFloat(n.params.slidesPerView, 10)), l && p % 2 === 0 && (p = p + 1));
1081
- let f = d - a < p;
1082
- if (l && (f = f || a < Math.ceil(p / 2)), s && l && n.params.slidesPerView !== "auto" && !r && (f = !1), f) {
1083
- const h = l ? a < n.activeIndex ? "prev" : "next" : a - n.activeIndex - 1 < n.params.slidesPerView ? "next" : "prev";
1084
- n.loopFix({
1085
- direction: h,
1086
- slideTo: !0,
1087
- activeSlideIndex: h === "next" ? a + 1 : a - d + 1,
1088
- slideRealIndex: h === "next" ? n.realIndex : void 0
1089
- });
1090
- }
1091
- if (r) {
1092
- const h = o * n.params.grid.rows;
1093
- o = n.slides.find((S) => S.getAttribute("data-swiper-slide-index") * 1 === h).column;
1094
- } else
1095
- o = n.getSlideIndexByData(o);
1096
- }
1097
- return requestAnimationFrame(() => {
1098
- n.slideTo(o, e, t, s);
1099
- }), n;
1100
- }
1101
- function xt(i, e, t) {
1102
- e === void 0 && (e = !0);
1103
- const s = this, {
1104
- enabled: n,
1105
- params: r,
1106
- animating: o
1107
- } = s;
1108
- if (!n || s.destroyed) return s;
1109
- typeof i > "u" && (i = s.params.speed);
1110
- let a = r.slidesPerGroup;
1111
- r.slidesPerView === "auto" && r.slidesPerGroup === 1 && r.slidesPerGroupAuto && (a = Math.max(s.slidesPerViewDynamic("current", !0), 1));
1112
- const d = s.activeIndex < r.slidesPerGroupSkip ? 1 : a, l = s.virtual && r.virtual.enabled;
1113
- if (r.loop) {
1114
- if (o && !l && r.loopPreventsSliding) return !1;
1115
- if (s.loopFix({
1116
- direction: "next"
1117
- }), s._clientLeft = s.wrapperEl.clientLeft, s.activeIndex === s.slides.length - 1 && r.cssMode)
1118
- return requestAnimationFrame(() => {
1119
- s.slideTo(s.activeIndex + d, i, e, t);
1120
- }), !0;
1121
- }
1122
- return r.rewind && s.isEnd ? s.slideTo(0, i, e, t) : s.slideTo(s.activeIndex + d, i, e, t);
1123
- }
1124
- function Tt(i, e, t) {
1125
- e === void 0 && (e = !0);
1126
- const s = this, {
1127
- params: n,
1128
- snapGrid: r,
1129
- slidesGrid: o,
1130
- rtlTranslate: a,
1131
- enabled: d,
1132
- animating: l
1133
- } = s;
1134
- if (!d || s.destroyed) return s;
1135
- typeof i > "u" && (i = s.params.speed);
1136
- const p = s.virtual && n.virtual.enabled;
1137
- if (n.loop) {
1138
- if (l && !p && n.loopPreventsSliding) return !1;
1139
- s.loopFix({
1140
- direction: "prev"
1141
- }), s._clientLeft = s.wrapperEl.clientLeft;
1142
- }
1143
- const f = a ? s.translate : -s.translate;
1144
- function h(c) {
1145
- return c < 0 ? -Math.floor(Math.abs(c)) : Math.floor(c);
1146
- }
1147
- const S = h(f), m = r.map((c) => h(c)), g = n.freeMode && n.freeMode.enabled;
1148
- let E = r[m.indexOf(S) - 1];
1149
- if (typeof E > "u" && (n.cssMode || g)) {
1150
- let c;
1151
- r.forEach((u, v) => {
1152
- S >= u && (c = v);
1153
- }), typeof c < "u" && (E = g ? r[c] : r[c > 0 ? c - 1 : c]);
1154
- }
1155
- let y = 0;
1156
- if (typeof E < "u" && (y = o.indexOf(E), y < 0 && (y = s.activeIndex - 1), n.slidesPerView === "auto" && n.slidesPerGroup === 1 && n.slidesPerGroupAuto && (y = y - s.slidesPerViewDynamic("previous", !0) + 1, y = Math.max(y, 0))), n.rewind && s.isBeginning) {
1157
- const c = s.params.virtual && s.params.virtual.enabled && s.virtual ? s.virtual.slides.length - 1 : s.slides.length - 1;
1158
- return s.slideTo(c, i, e, t);
1159
- } else if (n.loop && s.activeIndex === 0 && n.cssMode)
1160
- return requestAnimationFrame(() => {
1161
- s.slideTo(y, i, e, t);
1162
- }), !0;
1163
- return s.slideTo(y, i, e, t);
1164
- }
1165
- function Et(i, e, t) {
1166
- e === void 0 && (e = !0);
1167
- const s = this;
1168
- if (!s.destroyed)
1169
- return typeof i > "u" && (i = s.params.speed), s.slideTo(s.activeIndex, i, e, t);
1170
- }
1171
- function Ct(i, e, t, s) {
1172
- e === void 0 && (e = !0), s === void 0 && (s = 0.5);
1173
- const n = this;
1174
- if (n.destroyed) return;
1175
- typeof i > "u" && (i = n.params.speed);
1176
- let r = n.activeIndex;
1177
- const o = Math.min(n.params.slidesPerGroupSkip, r), a = o + Math.floor((r - o) / n.params.slidesPerGroup), d = n.rtlTranslate ? n.translate : -n.translate;
1178
- if (d >= n.snapGrid[a]) {
1179
- const l = n.snapGrid[a], p = n.snapGrid[a + 1];
1180
- d - l > (p - l) * s && (r += n.params.slidesPerGroup);
1181
- } else {
1182
- const l = n.snapGrid[a - 1], p = n.snapGrid[a];
1183
- d - l <= (p - l) * s && (r -= n.params.slidesPerGroup);
1184
- }
1185
- return r = Math.max(r, 0), r = Math.min(r, n.slidesGrid.length - 1), n.slideTo(r, i, e, t);
1186
- }
1187
- function Mt() {
1188
- const i = this;
1189
- if (i.destroyed) return;
1190
- const {
1191
- params: e,
1192
- slidesEl: t
1193
- } = i, s = e.slidesPerView === "auto" ? i.slidesPerViewDynamic() : e.slidesPerView;
1194
- let n = i.clickedIndex, r;
1195
- const o = i.isElement ? "swiper-slide" : `.${e.slideClass}`;
1196
- if (e.loop) {
1197
- if (i.animating) return;
1198
- r = parseInt(i.clickedSlide.getAttribute("data-swiper-slide-index"), 10), e.centeredSlides ? n < i.loopedSlides - s / 2 || n > i.slides.length - i.loopedSlides + s / 2 ? (i.loopFix(), n = i.getSlideIndex(q(t, `${o}[data-swiper-slide-index="${r}"]`)[0]), ie(() => {
1199
- i.slideTo(n);
1200
- })) : i.slideTo(n) : n > i.slides.length - s ? (i.loopFix(), n = i.getSlideIndex(q(t, `${o}[data-swiper-slide-index="${r}"]`)[0]), ie(() => {
1201
- i.slideTo(n);
1202
- })) : i.slideTo(n);
1203
- } else
1204
- i.slideTo(n);
1205
- }
1206
- var Lt = {
1207
- slideTo: yt,
1208
- slideToLoop: St,
1209
- slideNext: xt,
1210
- slidePrev: Tt,
1211
- slideReset: Et,
1212
- slideToClosest: Ct,
1213
- slideToClickedSlide: Mt
1214
- };
1215
- function Pt(i, e) {
1216
- const t = this, {
1217
- params: s,
1218
- slidesEl: n
1219
- } = t;
1220
- if (!s.loop || t.virtual && t.params.virtual.enabled) return;
1221
- const r = () => {
1222
- q(n, `.${s.slideClass}, swiper-slide`).forEach((h, S) => {
1223
- h.setAttribute("data-swiper-slide-index", S);
1224
- });
1225
- }, o = t.grid && s.grid && s.grid.rows > 1, a = s.slidesPerGroup * (o ? s.grid.rows : 1), d = t.slides.length % a !== 0, l = o && t.slides.length % s.grid.rows !== 0, p = (f) => {
1226
- for (let h = 0; h < f; h += 1) {
1227
- const S = t.isElement ? U("swiper-slide", [s.slideBlankClass]) : U("div", [s.slideClass, s.slideBlankClass]);
1228
- t.slidesEl.append(S);
1229
- }
1230
- };
1231
- if (d) {
1232
- if (s.loopAddBlankSlides) {
1233
- const f = a - t.slides.length % a;
1234
- p(f), t.recalcSlides(), t.updateSlides();
1235
- } else
1236
- re("Swiper Loop Warning: The number of slides is not even to slidesPerGroup, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");
1237
- r();
1238
- } else if (l) {
1239
- if (s.loopAddBlankSlides) {
1240
- const f = s.grid.rows - t.slides.length % s.grid.rows;
1241
- p(f), t.recalcSlides(), t.updateSlides();
1242
- } else
1243
- re("Swiper Loop Warning: The number of slides is not even to grid.rows, loop mode may not function properly. You need to add more slides (or make duplicates, or empty slides)");
1244
- r();
1245
- } else
1246
- r();
1247
- t.loopFix({
1248
- slideRealIndex: i,
1249
- direction: s.centeredSlides ? void 0 : "next",
1250
- initial: e
1251
- });
1252
- }
1253
- function kt(i) {
1254
- let {
1255
- slideRealIndex: e,
1256
- slideTo: t = !0,
1257
- direction: s,
1258
- setTranslate: n,
1259
- activeSlideIndex: r,
1260
- initial: o,
1261
- byController: a,
1262
- byMousewheel: d
1263
- } = i === void 0 ? {} : i;
1264
- const l = this;
1265
- if (!l.params.loop) return;
1266
- l.emit("beforeLoopFix");
1267
- const {
1268
- slides: p,
1269
- allowSlidePrev: f,
1270
- allowSlideNext: h,
1271
- slidesEl: S,
1272
- params: m
1273
- } = l, {
1274
- centeredSlides: g,
1275
- initialSlide: E
1276
- } = m;
1277
- if (l.allowSlidePrev = !0, l.allowSlideNext = !0, l.virtual && m.virtual.enabled) {
1278
- t && (!m.centeredSlides && l.snapIndex === 0 ? l.slideTo(l.virtual.slides.length, 0, !1, !0) : m.centeredSlides && l.snapIndex < m.slidesPerView ? l.slideTo(l.virtual.slides.length + l.snapIndex, 0, !1, !0) : l.snapIndex === l.snapGrid.length - 1 && l.slideTo(l.virtual.slidesBefore, 0, !1, !0)), l.allowSlidePrev = f, l.allowSlideNext = h, l.emit("loopFix");
1279
- return;
1280
- }
1281
- let y = m.slidesPerView;
1282
- y === "auto" ? y = l.slidesPerViewDynamic() : (y = Math.ceil(parseFloat(m.slidesPerView, 10)), g && y % 2 === 0 && (y = y + 1));
1283
- const c = m.slidesPerGroupAuto ? y : m.slidesPerGroup;
1284
- let u = c;
1285
- u % c !== 0 && (u += c - u % c), u += m.loopAdditionalSlides, l.loopedSlides = u;
1286
- const v = l.grid && m.grid && m.grid.rows > 1;
1287
- p.length < y + u || l.params.effect === "cards" && p.length < y + u * 2 ? re("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") : v && m.grid.fill === "row" && re("Swiper Loop Warning: Loop mode is not compatible with grid.fill = `row`");
1288
- const T = [], P = [], B = v ? Math.ceil(p.length / m.grid.rows) : p.length, O = o && B - E < y && !g;
1289
- let A = O ? E : l.activeIndex;
1290
- typeof r > "u" ? r = l.getSlideIndex(p.find((L) => L.classList.contains(m.slideActiveClass))) : A = r;
1291
- const C = s === "next" || !s, k = s === "prev" || !s;
1292
- let x = 0, M = 0;
1293
- const D = (v ? p[r].column : r) + (g && typeof n > "u" ? -y / 2 + 0.5 : 0);
1294
- if (D < u) {
1295
- x = Math.max(u - D, c);
1296
- for (let L = 0; L < u - D; L += 1) {
1297
- const w = L - Math.floor(L / B) * B;
1298
- if (v) {
1299
- const b = B - w - 1;
1300
- for (let I = p.length - 1; I >= 0; I -= 1)
1301
- p[I].column === b && T.push(I);
1302
- } else
1303
- T.push(B - w - 1);
1304
- }
1305
- } else if (D + y > B - u) {
1306
- M = Math.max(D - (B - u * 2), c), O && (M = Math.max(M, y - B + E + 1));
1307
- for (let L = 0; L < M; L += 1) {
1308
- const w = L - Math.floor(L / B) * B;
1309
- v ? p.forEach((b, I) => {
1310
- b.column === w && P.push(I);
1311
- }) : P.push(w);
1312
- }
1313
- }
1314
- if (l.__preventObserver__ = !0, requestAnimationFrame(() => {
1315
- l.__preventObserver__ = !1;
1316
- }), l.params.effect === "cards" && p.length < y + u * 2 && (P.includes(r) && P.splice(P.indexOf(r), 1), T.includes(r) && T.splice(T.indexOf(r), 1)), k && T.forEach((L) => {
1317
- p[L].swiperLoopMoveDOM = !0, S.prepend(p[L]), p[L].swiperLoopMoveDOM = !1;
1318
- }), C && P.forEach((L) => {
1319
- p[L].swiperLoopMoveDOM = !0, S.append(p[L]), p[L].swiperLoopMoveDOM = !1;
1320
- }), l.recalcSlides(), m.slidesPerView === "auto" ? l.updateSlides() : v && (T.length > 0 && k || P.length > 0 && C) && l.slides.forEach((L, w) => {
1321
- l.grid.updateSlide(w, L, l.slides);
1322
- }), m.watchSlidesProgress && l.updateSlidesOffset(), t) {
1323
- if (T.length > 0 && k) {
1324
- if (typeof e > "u") {
1325
- const L = l.slidesGrid[A], b = l.slidesGrid[A + x] - L;
1326
- d ? l.setTranslate(l.translate - b) : (l.slideTo(A + Math.ceil(x), 0, !1, !0), n && (l.touchEventsData.startTranslate = l.touchEventsData.startTranslate - b, l.touchEventsData.currentTranslate = l.touchEventsData.currentTranslate - b));
1327
- } else if (n) {
1328
- const L = v ? T.length / m.grid.rows : T.length;
1329
- l.slideTo(l.activeIndex + L, 0, !1, !0), l.touchEventsData.currentTranslate = l.translate;
1330
- }
1331
- } else if (P.length > 0 && C)
1332
- if (typeof e > "u") {
1333
- const L = l.slidesGrid[A], b = l.slidesGrid[A - M] - L;
1334
- d ? l.setTranslate(l.translate - b) : (l.slideTo(A - M, 0, !1, !0), n && (l.touchEventsData.startTranslate = l.touchEventsData.startTranslate - b, l.touchEventsData.currentTranslate = l.touchEventsData.currentTranslate - b));
1335
- } else {
1336
- const L = v ? P.length / m.grid.rows : P.length;
1337
- l.slideTo(l.activeIndex - L, 0, !1, !0);
1338
- }
1339
- }
1340
- if (l.allowSlidePrev = f, l.allowSlideNext = h, l.controller && l.controller.control && !a) {
1341
- const L = {
1342
- slideRealIndex: e,
1343
- direction: s,
1344
- setTranslate: n,
1345
- activeSlideIndex: r,
1346
- byController: !0
1347
- };
1348
- Array.isArray(l.controller.control) ? l.controller.control.forEach((w) => {
1349
- !w.destroyed && w.params.loop && w.loopFix({
1350
- ...L,
1351
- slideTo: w.params.slidesPerView === m.slidesPerView ? t : !1
1352
- });
1353
- }) : l.controller.control instanceof l.constructor && l.controller.control.params.loop && l.controller.control.loopFix({
1354
- ...L,
1355
- slideTo: l.controller.control.params.slidesPerView === m.slidesPerView ? t : !1
1356
- });
1357
- }
1358
- l.emit("loopFix");
1359
- }
1360
- function zt() {
1361
- const i = this, {
1362
- params: e,
1363
- slidesEl: t
1364
- } = i;
1365
- if (!e.loop || !t || i.virtual && i.params.virtual.enabled) return;
1366
- i.recalcSlides();
1367
- const s = [];
1368
- i.slides.forEach((n) => {
1369
- const r = typeof n.swiperSlideIndex > "u" ? n.getAttribute("data-swiper-slide-index") * 1 : n.swiperSlideIndex;
1370
- s[r] = n;
1371
- }), i.slides.forEach((n) => {
1372
- n.removeAttribute("data-swiper-slide-index");
1373
- }), s.forEach((n) => {
1374
- t.append(n);
1375
- }), i.recalcSlides(), i.slideTo(i.realIndex, 0);
1376
- }
1377
- var It = {
1378
- loopCreate: Pt,
1379
- loopFix: kt,
1380
- loopDestroy: zt
1381
- };
1382
- function At(i) {
1383
- const e = this;
1384
- if (!e.params.simulateTouch || e.params.watchOverflow && e.isLocked || e.params.cssMode) return;
1385
- const t = e.params.touchEventsTarget === "container" ? e.el : e.wrapperEl;
1386
- e.isElement && (e.__preventObserver__ = !0), t.style.cursor = "move", t.style.cursor = i ? "grabbing" : "grab", e.isElement && requestAnimationFrame(() => {
1387
- e.__preventObserver__ = !1;
1388
- });
1389
- }
1390
- function Ot() {
1391
- const i = this;
1392
- i.params.watchOverflow && i.isLocked || i.params.cssMode || (i.isElement && (i.__preventObserver__ = !0), i[i.params.touchEventsTarget === "container" ? "el" : "wrapperEl"].style.cursor = "", i.isElement && requestAnimationFrame(() => {
1393
- i.__preventObserver__ = !1;
1394
- }));
1395
- }
1396
- var Dt = {
1397
- setGrabCursor: At,
1398
- unsetGrabCursor: Ot
1399
- };
1400
- function Bt(i, e) {
1401
- e === void 0 && (e = this);
1402
- function t(s) {
1403
- if (!s || s === R() || s === V()) return null;
1404
- s.assignedSlot && (s = s.assignedSlot);
1405
- const n = s.closest(i);
1406
- return !n && !s.getRootNode ? null : n || t(s.getRootNode().host);
1407
- }
1408
- return t(e);
1409
- }
1410
- function ye(i, e, t) {
1411
- const s = V(), {
1412
- params: n
1413
- } = i, r = n.edgeSwipeDetection, o = n.edgeSwipeThreshold;
1414
- return r && (t <= o || t >= s.innerWidth - o) ? r === "prevent" ? (e.preventDefault(), !0) : !1 : !0;
1415
- }
1416
- function Gt(i) {
1417
- const e = this, t = R();
1418
- let s = i;
1419
- s.originalEvent && (s = s.originalEvent);
1420
- const n = e.touchEventsData;
1421
- if (s.type === "pointerdown") {
1422
- if (n.pointerId !== null && n.pointerId !== s.pointerId)
1423
- return;
1424
- n.pointerId = s.pointerId;
1425
- } else s.type === "touchstart" && s.targetTouches.length === 1 && (n.touchId = s.targetTouches[0].identifier);
1426
- if (s.type === "touchstart") {
1427
- ye(e, s, s.targetTouches[0].pageX);
1428
- return;
1429
- }
1430
- const {
1431
- params: r,
1432
- touches: o,
1433
- enabled: a
1434
- } = e;
1435
- if (!a || !r.simulateTouch && s.pointerType === "mouse" || e.animating && r.preventInteractionOnTransition)
1436
- return;
1437
- !e.animating && r.cssMode && r.loop && e.loopFix();
1438
- let d = s.target;
1439
- if (r.touchEventsTarget === "wrapper" && !He(d, e.wrapperEl) || "which" in s && s.which === 3 || "button" in s && s.button > 0 || n.isTouched && n.isMoved) return;
1440
- const l = !!r.noSwipingClass && r.noSwipingClass !== "", p = s.composedPath ? s.composedPath() : s.path;
1441
- l && s.target && s.target.shadowRoot && p && (d = p[0]);
1442
- const f = r.noSwipingSelector ? r.noSwipingSelector : `.${r.noSwipingClass}`, h = !!(s.target && s.target.shadowRoot);
1443
- if (r.noSwiping && (h ? Bt(f, d) : d.closest(f))) {
1444
- e.allowClick = !0;
1445
- return;
1446
- }
1447
- if (r.swipeHandler && !d.closest(r.swipeHandler))
1448
- return;
1449
- o.currentX = s.pageX, o.currentY = s.pageY;
1450
- const S = o.currentX, m = o.currentY;
1451
- if (!ye(e, s, S))
1452
- return;
1453
- Object.assign(n, {
1454
- isTouched: !0,
1455
- isMoved: !1,
1456
- allowTouchCallbacks: !0,
1457
- isScrolling: void 0,
1458
- startMoving: void 0
1459
- }), o.startX = S, o.startY = m, n.touchStartTime = se(), e.allowClick = !0, e.updateSize(), e.swipeDirection = void 0, r.threshold > 0 && (n.allowThresholdMove = !1);
1460
- let g = !0;
1461
- d.matches(n.focusableElements) && (g = !1, d.nodeName === "SELECT" && (n.isTouched = !1)), t.activeElement && t.activeElement.matches(n.focusableElements) && t.activeElement !== d && (s.pointerType === "mouse" || s.pointerType !== "mouse" && !d.matches(n.focusableElements)) && t.activeElement.blur();
1462
- const E = g && e.allowTouchMove && r.touchStartPreventDefault;
1463
- (r.touchStartForcePreventDefault || E) && !d.isContentEditable && s.preventDefault(), r.freeMode && r.freeMode.enabled && e.freeMode && e.animating && !r.cssMode && e.freeMode.onTouchStart(), e.emit("touchStart", s);
1464
- }
1465
- function $t(i) {
1466
- const e = R(), t = this, s = t.touchEventsData, {
1467
- params: n,
1468
- touches: r,
1469
- rtlTranslate: o,
1470
- enabled: a
1471
- } = t;
1472
- if (!a || !n.simulateTouch && i.pointerType === "mouse") return;
1473
- let d = i;
1474
- if (d.originalEvent && (d = d.originalEvent), d.type === "pointermove" && (s.touchId !== null || d.pointerId !== s.pointerId))
1475
- return;
1476
- let l;
1477
- if (d.type === "touchmove") {
1478
- if (l = [...d.changedTouches].find((P) => P.identifier === s.touchId), !l || l.identifier !== s.touchId) return;
1479
- } else
1480
- l = d;
1481
- if (!s.isTouched) {
1482
- s.startMoving && s.isScrolling && t.emit("touchMoveOpposite", d);
1483
- return;
1484
- }
1485
- const p = l.pageX, f = l.pageY;
1486
- if (d.preventedByNestedSwiper) {
1487
- r.startX = p, r.startY = f;
1488
- return;
1489
- }
1490
- if (!t.allowTouchMove) {
1491
- d.target.matches(s.focusableElements) || (t.allowClick = !1), s.isTouched && (Object.assign(r, {
1492
- startX: p,
1493
- startY: f,
1494
- currentX: p,
1495
- currentY: f
1496
- }), s.touchStartTime = se());
1497
- return;
1498
- }
1499
- if (n.touchReleaseOnEdges && !n.loop)
1500
- if (t.isVertical()) {
1501
- if (f < r.startY && t.translate <= t.maxTranslate() || f > r.startY && t.translate >= t.minTranslate()) {
1502
- s.isTouched = !1, s.isMoved = !1;
1503
- return;
1504
- }
1505
- } else {
1506
- if (o && (p > r.startX && -t.translate <= t.maxTranslate() || p < r.startX && -t.translate >= t.minTranslate()))
1507
- return;
1508
- if (!o && (p < r.startX && t.translate <= t.maxTranslate() || p > r.startX && t.translate >= t.minTranslate()))
1509
- return;
1510
- }
1511
- if (e.activeElement && e.activeElement.matches(s.focusableElements) && e.activeElement !== d.target && d.pointerType !== "mouse" && e.activeElement.blur(), e.activeElement && d.target === e.activeElement && d.target.matches(s.focusableElements)) {
1512
- s.isMoved = !0, t.allowClick = !1;
1513
- return;
1514
- }
1515
- s.allowTouchCallbacks && t.emit("touchMove", d), r.previousX = r.currentX, r.previousY = r.currentY, r.currentX = p, r.currentY = f;
1516
- const h = r.currentX - r.startX, S = r.currentY - r.startY;
1517
- if (t.params.threshold && Math.sqrt(h ** 2 + S ** 2) < t.params.threshold) return;
1518
- if (typeof s.isScrolling > "u") {
1519
- let P;
1520
- t.isHorizontal() && r.currentY === r.startY || t.isVertical() && r.currentX === r.startX ? s.isScrolling = !1 : h * h + S * S >= 25 && (P = Math.atan2(Math.abs(S), Math.abs(h)) * 180 / Math.PI, s.isScrolling = t.isHorizontal() ? P > n.touchAngle : 90 - P > n.touchAngle);
1521
- }
1522
- if (s.isScrolling && t.emit("touchMoveOpposite", d), typeof s.startMoving > "u" && (r.currentX !== r.startX || r.currentY !== r.startY) && (s.startMoving = !0), s.isScrolling || d.type === "touchmove" && s.preventTouchMoveFromPointerMove) {
1523
- s.isTouched = !1;
1524
- return;
1525
- }
1526
- if (!s.startMoving)
1527
- return;
1528
- t.allowClick = !1, !n.cssMode && d.cancelable && d.preventDefault(), n.touchMoveStopPropagation && !n.nested && d.stopPropagation();
1529
- let m = t.isHorizontal() ? h : S, g = t.isHorizontal() ? r.currentX - r.previousX : r.currentY - r.previousY;
1530
- n.oneWayMovement && (m = Math.abs(m) * (o ? 1 : -1), g = Math.abs(g) * (o ? 1 : -1)), r.diff = m, m *= n.touchRatio, o && (m = -m, g = -g);
1531
- const E = t.touchesDirection;
1532
- t.swipeDirection = m > 0 ? "prev" : "next", t.touchesDirection = g > 0 ? "prev" : "next";
1533
- const y = t.params.loop && !n.cssMode, c = t.touchesDirection === "next" && t.allowSlideNext || t.touchesDirection === "prev" && t.allowSlidePrev;
1534
- if (!s.isMoved) {
1535
- if (y && c && t.loopFix({
1536
- direction: t.swipeDirection
1537
- }), s.startTranslate = t.getTranslate(), t.setTransition(0), t.animating) {
1538
- const P = new window.CustomEvent("transitionend", {
1539
- bubbles: !0,
1540
- cancelable: !0,
1541
- detail: {
1542
- bySwiperTouchMove: !0
1543
- }
1544
- });
1545
- t.wrapperEl.dispatchEvent(P);
1546
- }
1547
- s.allowMomentumBounce = !1, n.grabCursor && (t.allowSlideNext === !0 || t.allowSlidePrev === !0) && t.setGrabCursor(!0), t.emit("sliderFirstMove", d);
1548
- }
1549
- let u;
1550
- if ((/* @__PURE__ */ new Date()).getTime(), n._loopSwapReset !== !1 && s.isMoved && s.allowThresholdMove && E !== t.touchesDirection && y && c && Math.abs(m) >= 1) {
1551
- Object.assign(r, {
1552
- startX: p,
1553
- startY: f,
1554
- currentX: p,
1555
- currentY: f,
1556
- startTranslate: s.currentTranslate
1557
- }), s.loopSwapReset = !0, s.startTranslate = s.currentTranslate;
1558
- return;
1559
- }
1560
- t.emit("sliderMove", d), s.isMoved = !0, s.currentTranslate = m + s.startTranslate;
1561
- let v = !0, T = n.resistanceRatio;
1562
- if (n.touchReleaseOnEdges && (T = 0), m > 0 ? (y && c && !u && s.allowThresholdMove && s.currentTranslate > (n.centeredSlides ? t.minTranslate() - t.slidesSizesGrid[t.activeIndex + 1] - (n.slidesPerView !== "auto" && t.slides.length - n.slidesPerView >= 2 ? t.slidesSizesGrid[t.activeIndex + 1] + t.params.spaceBetween : 0) - t.params.spaceBetween : t.minTranslate()) && t.loopFix({
1563
- direction: "prev",
1564
- setTranslate: !0,
1565
- activeSlideIndex: 0
1566
- }), s.currentTranslate > t.minTranslate() && (v = !1, n.resistance && (s.currentTranslate = t.minTranslate() - 1 + (-t.minTranslate() + s.startTranslate + m) ** T))) : m < 0 && (y && c && !u && s.allowThresholdMove && s.currentTranslate < (n.centeredSlides ? t.maxTranslate() + t.slidesSizesGrid[t.slidesSizesGrid.length - 1] + t.params.spaceBetween + (n.slidesPerView !== "auto" && t.slides.length - n.slidesPerView >= 2 ? t.slidesSizesGrid[t.slidesSizesGrid.length - 1] + t.params.spaceBetween : 0) : t.maxTranslate()) && t.loopFix({
1567
- direction: "next",
1568
- setTranslate: !0,
1569
- activeSlideIndex: t.slides.length - (n.slidesPerView === "auto" ? t.slidesPerViewDynamic() : Math.ceil(parseFloat(n.slidesPerView, 10)))
1570
- }), s.currentTranslate < t.maxTranslate() && (v = !1, n.resistance && (s.currentTranslate = t.maxTranslate() + 1 - (t.maxTranslate() - s.startTranslate - m) ** T))), v && (d.preventedByNestedSwiper = !0), !t.allowSlideNext && t.swipeDirection === "next" && s.currentTranslate < s.startTranslate && (s.currentTranslate = s.startTranslate), !t.allowSlidePrev && t.swipeDirection === "prev" && s.currentTranslate > s.startTranslate && (s.currentTranslate = s.startTranslate), !t.allowSlidePrev && !t.allowSlideNext && (s.currentTranslate = s.startTranslate), n.threshold > 0)
1571
- if (Math.abs(m) > n.threshold || s.allowThresholdMove) {
1572
- if (!s.allowThresholdMove) {
1573
- s.allowThresholdMove = !0, r.startX = r.currentX, r.startY = r.currentY, s.currentTranslate = s.startTranslate, r.diff = t.isHorizontal() ? r.currentX - r.startX : r.currentY - r.startY;
1574
- return;
1575
- }
1576
- } else {
1577
- s.currentTranslate = s.startTranslate;
1578
- return;
1579
- }
1580
- !n.followFinger || n.cssMode || ((n.freeMode && n.freeMode.enabled && t.freeMode || n.watchSlidesProgress) && (t.updateActiveIndex(), t.updateSlidesClasses()), n.freeMode && n.freeMode.enabled && t.freeMode && t.freeMode.onTouchMove(), t.updateProgress(s.currentTranslate), t.setTranslate(s.currentTranslate));
1581
- }
1582
- function Ft(i) {
1583
- const e = this, t = e.touchEventsData;
1584
- let s = i;
1585
- s.originalEvent && (s = s.originalEvent);
1586
- let n;
1587
- if (s.type === "touchend" || s.type === "touchcancel") {
1588
- if (n = [...s.changedTouches].find((T) => T.identifier === t.touchId), !n || n.identifier !== t.touchId) return;
1589
- } else {
1590
- if (t.touchId !== null || s.pointerId !== t.pointerId) return;
1591
- n = s;
1592
- }
1593
- if (["pointercancel", "pointerout", "pointerleave", "contextmenu"].includes(s.type) && !(["pointercancel", "contextmenu"].includes(s.type) && (e.browser.isSafari || e.browser.isWebView)))
1594
- return;
1595
- t.pointerId = null, t.touchId = null;
1596
- const {
1597
- params: o,
1598
- touches: a,
1599
- rtlTranslate: d,
1600
- slidesGrid: l,
1601
- enabled: p
1602
- } = e;
1603
- if (!p || !o.simulateTouch && s.pointerType === "mouse") return;
1604
- if (t.allowTouchCallbacks && e.emit("touchEnd", s), t.allowTouchCallbacks = !1, !t.isTouched) {
1605
- t.isMoved && o.grabCursor && e.setGrabCursor(!1), t.isMoved = !1, t.startMoving = !1;
1606
- return;
1607
- }
1608
- o.grabCursor && t.isMoved && t.isTouched && (e.allowSlideNext === !0 || e.allowSlidePrev === !0) && e.setGrabCursor(!1);
1609
- const f = se(), h = f - t.touchStartTime;
1610
- if (e.allowClick) {
1611
- const T = s.path || s.composedPath && s.composedPath();
1612
- e.updateClickedSlide(T && T[0] || s.target, T), e.emit("tap click", s), h < 300 && f - t.lastClickTime < 300 && e.emit("doubleTap doubleClick", s);
1613
- }
1614
- if (t.lastClickTime = se(), ie(() => {
1615
- e.destroyed || (e.allowClick = !0);
1616
- }), !t.isTouched || !t.isMoved || !e.swipeDirection || a.diff === 0 && !t.loopSwapReset || t.currentTranslate === t.startTranslate && !t.loopSwapReset) {
1617
- t.isTouched = !1, t.isMoved = !1, t.startMoving = !1;
1618
- return;
1619
- }
1620
- t.isTouched = !1, t.isMoved = !1, t.startMoving = !1;
1621
- let S;
1622
- if (o.followFinger ? S = d ? e.translate : -e.translate : S = -t.currentTranslate, o.cssMode)
1623
- return;
1624
- if (o.freeMode && o.freeMode.enabled) {
1625
- e.freeMode.onTouchEnd({
1626
- currentPos: S
1627
- });
1628
- return;
1629
- }
1630
- const m = S >= -e.maxTranslate() && !e.params.loop;
1631
- let g = 0, E = e.slidesSizesGrid[0];
1632
- for (let T = 0; T < l.length; T += T < o.slidesPerGroupSkip ? 1 : o.slidesPerGroup) {
1633
- const P = T < o.slidesPerGroupSkip - 1 ? 1 : o.slidesPerGroup;
1634
- typeof l[T + P] < "u" ? (m || S >= l[T] && S < l[T + P]) && (g = T, E = l[T + P] - l[T]) : (m || S >= l[T]) && (g = T, E = l[l.length - 1] - l[l.length - 2]);
1635
- }
1636
- let y = null, c = null;
1637
- o.rewind && (e.isBeginning ? c = o.virtual && o.virtual.enabled && e.virtual ? e.virtual.slides.length - 1 : e.slides.length - 1 : e.isEnd && (y = 0));
1638
- const u = (S - l[g]) / E, v = g < o.slidesPerGroupSkip - 1 ? 1 : o.slidesPerGroup;
1639
- if (h > o.longSwipesMs) {
1640
- if (!o.longSwipes) {
1641
- e.slideTo(e.activeIndex);
1642
- return;
1643
- }
1644
- e.swipeDirection === "next" && (u >= o.longSwipesRatio ? e.slideTo(o.rewind && e.isEnd ? y : g + v) : e.slideTo(g)), e.swipeDirection === "prev" && (u > 1 - o.longSwipesRatio ? e.slideTo(g + v) : c !== null && u < 0 && Math.abs(u) > o.longSwipesRatio ? e.slideTo(c) : e.slideTo(g));
1645
- } else {
1646
- if (!o.shortSwipes) {
1647
- e.slideTo(e.activeIndex);
1648
- return;
1649
- }
1650
- e.navigation && (s.target === e.navigation.nextEl || s.target === e.navigation.prevEl) ? s.target === e.navigation.nextEl ? e.slideTo(g + v) : e.slideTo(g) : (e.swipeDirection === "next" && e.slideTo(y !== null ? y : g + v), e.swipeDirection === "prev" && e.slideTo(c !== null ? c : g));
1651
- }
1652
- }
1653
- function Se() {
1654
- const i = this, {
1655
- params: e,
1656
- el: t
1657
- } = i;
1658
- if (t && t.offsetWidth === 0) return;
1659
- e.breakpoints && i.setBreakpoint();
1660
- const {
1661
- allowSlideNext: s,
1662
- allowSlidePrev: n,
1663
- snapGrid: r
1664
- } = i, o = i.virtual && i.params.virtual.enabled;
1665
- i.allowSlideNext = !0, i.allowSlidePrev = !0, i.updateSize(), i.updateSlides(), i.updateSlidesClasses();
1666
- const a = o && e.loop;
1667
- (e.slidesPerView === "auto" || e.slidesPerView > 1) && i.isEnd && !i.isBeginning && !i.params.centeredSlides && !a ? i.slideTo(i.slides.length - 1, 0, !1, !0) : i.params.loop && !o ? i.slideToLoop(i.realIndex, 0, !1, !0) : i.slideTo(i.activeIndex, 0, !1, !0), i.autoplay && i.autoplay.running && i.autoplay.paused && (clearTimeout(i.autoplay.resizeTimeout), i.autoplay.resizeTimeout = setTimeout(() => {
1668
- i.autoplay && i.autoplay.running && i.autoplay.paused && i.autoplay.resume();
1669
- }, 500)), i.allowSlidePrev = n, i.allowSlideNext = s, i.params.watchOverflow && r !== i.snapGrid && i.checkOverflow();
1670
- }
1671
- function Vt(i) {
1672
- const e = this;
1673
- e.enabled && (e.allowClick || (e.params.preventClicks && i.preventDefault(), e.params.preventClicksPropagation && e.animating && (i.stopPropagation(), i.stopImmediatePropagation())));
1674
- }
1675
- function _t() {
1676
- const i = this, {
1677
- wrapperEl: e,
1678
- rtlTranslate: t,
1679
- enabled: s
1680
- } = i;
1681
- if (!s) return;
1682
- i.previousTranslate = i.translate, i.isHorizontal() ? i.translate = -e.scrollLeft : i.translate = -e.scrollTop, i.translate === 0 && (i.translate = 0), i.updateActiveIndex(), i.updateSlidesClasses();
1683
- let n;
1684
- const r = i.maxTranslate() - i.minTranslate();
1685
- r === 0 ? n = 0 : n = (i.translate - i.minTranslate()) / r, n !== i.progress && i.updateProgress(t ? -i.translate : i.translate), i.emit("setTranslate", i.translate, !1);
1686
- }
1687
- function Rt(i) {
1688
- const e = this;
1689
- te(e, i.target), !(e.params.cssMode || e.params.slidesPerView !== "auto" && !e.params.autoHeight) && e.update();
1690
- }
1691
- function Nt() {
1692
- const i = this;
1693
- i.documentTouchHandlerProceeded || (i.documentTouchHandlerProceeded = !0, i.params.touchReleaseOnEdges && (i.el.style.touchAction = "auto"));
1694
- }
1695
- const Ie = (i, e) => {
1696
- const t = R(), {
1697
- params: s,
1698
- el: n,
1699
- wrapperEl: r,
1700
- device: o
1701
- } = i, a = !!s.nested, d = e === "on" ? "addEventListener" : "removeEventListener", l = e;
1702
- !n || typeof n == "string" || (t[d]("touchstart", i.onDocumentTouchStart, {
1703
- passive: !1,
1704
- capture: a
1705
- }), n[d]("touchstart", i.onTouchStart, {
1706
- passive: !1
1707
- }), n[d]("pointerdown", i.onTouchStart, {
1708
- passive: !1
1709
- }), t[d]("touchmove", i.onTouchMove, {
1710
- passive: !1,
1711
- capture: a
1712
- }), t[d]("pointermove", i.onTouchMove, {
1713
- passive: !1,
1714
- capture: a
1715
- }), t[d]("touchend", i.onTouchEnd, {
1716
- passive: !0
1717
- }), t[d]("pointerup", i.onTouchEnd, {
1718
- passive: !0
1719
- }), t[d]("pointercancel", i.onTouchEnd, {
1720
- passive: !0
1721
- }), t[d]("touchcancel", i.onTouchEnd, {
1722
- passive: !0
1723
- }), t[d]("pointerout", i.onTouchEnd, {
1724
- passive: !0
1725
- }), t[d]("pointerleave", i.onTouchEnd, {
1726
- passive: !0
1727
- }), t[d]("contextmenu", i.onTouchEnd, {
1728
- passive: !0
1729
- }), (s.preventClicks || s.preventClicksPropagation) && n[d]("click", i.onClick, !0), s.cssMode && r[d]("scroll", i.onScroll), s.updateOnWindowResize ? i[l](o.ios || o.android ? "resize orientationchange observerUpdate" : "resize observerUpdate", Se, !0) : i[l]("observerUpdate", Se, !0), n[d]("load", i.onLoad, {
1730
- capture: !0
1731
- }));
1732
- };
1733
- function Ht() {
1734
- const i = this, {
1735
- params: e
1736
- } = i;
1737
- i.onTouchStart = Gt.bind(i), i.onTouchMove = $t.bind(i), i.onTouchEnd = Ft.bind(i), i.onDocumentTouchStart = Nt.bind(i), e.cssMode && (i.onScroll = _t.bind(i)), i.onClick = Vt.bind(i), i.onLoad = Rt.bind(i), Ie(i, "on");
1738
- }
1739
- function jt() {
1740
- Ie(this, "off");
1741
- }
1742
- var qt = {
1743
- attachEvents: Ht,
1744
- detachEvents: jt
1745
- };
1746
- const xe = (i, e) => i.grid && e.grid && e.grid.rows > 1;
1747
- function Wt() {
1748
- const i = this, {
1749
- realIndex: e,
1750
- initialized: t,
1751
- params: s,
1752
- el: n
1753
- } = i, r = s.breakpoints;
1754
- if (!r || r && Object.keys(r).length === 0) return;
1755
- const o = R(), a = s.breakpointsBase === "window" || !s.breakpointsBase ? s.breakpointsBase : "container", d = ["window", "container"].includes(s.breakpointsBase) || !s.breakpointsBase ? i.el : o.querySelector(s.breakpointsBase), l = i.getBreakpoint(r, a, d);
1756
- if (!l || i.currentBreakpoint === l) return;
1757
- const f = (l in r ? r[l] : void 0) || i.originalParams, h = xe(i, s), S = xe(i, f), m = i.params.grabCursor, g = f.grabCursor, E = s.enabled;
1758
- h && !S ? (n.classList.remove(`${s.containerModifierClass}grid`, `${s.containerModifierClass}grid-column`), i.emitContainerClasses()) : !h && S && (n.classList.add(`${s.containerModifierClass}grid`), (f.grid.fill && f.grid.fill === "column" || !f.grid.fill && s.grid.fill === "column") && n.classList.add(`${s.containerModifierClass}grid-column`), i.emitContainerClasses()), m && !g ? i.unsetGrabCursor() : !m && g && i.setGrabCursor(), ["navigation", "pagination", "scrollbar"].forEach((P) => {
1759
- if (typeof f[P] > "u") return;
1760
- const B = s[P] && s[P].enabled, O = f[P] && f[P].enabled;
1761
- B && !O && i[P].disable(), !B && O && i[P].enable();
1762
- });
1763
- const y = f.direction && f.direction !== s.direction, c = s.loop && (f.slidesPerView !== s.slidesPerView || y), u = s.loop;
1764
- y && t && i.changeDirection(), N(i.params, f);
1765
- const v = i.params.enabled, T = i.params.loop;
1766
- Object.assign(i, {
1767
- allowTouchMove: i.params.allowTouchMove,
1768
- allowSlideNext: i.params.allowSlideNext,
1769
- allowSlidePrev: i.params.allowSlidePrev
1770
- }), E && !v ? i.disable() : !E && v && i.enable(), i.currentBreakpoint = l, i.emit("_beforeBreakpoint", f), t && (c ? (i.loopDestroy(), i.loopCreate(e), i.updateSlides()) : !u && T ? (i.loopCreate(e), i.updateSlides()) : u && !T && i.loopDestroy()), i.emit("breakpoint", f);
1771
- }
1772
- function Yt(i, e, t) {
1773
- if (e === void 0 && (e = "window"), !i || e === "container" && !t) return;
1774
- let s = !1;
1775
- const n = V(), r = e === "window" ? n.innerHeight : t.clientHeight, o = Object.keys(i).map((a) => {
1776
- if (typeof a == "string" && a.indexOf("@") === 0) {
1777
- const d = parseFloat(a.substr(1));
1778
- return {
1779
- value: r * d,
1780
- point: a
1781
- };
1782
- }
1783
- return {
1784
- value: a,
1785
- point: a
1786
- };
1787
- });
1788
- o.sort((a, d) => parseInt(a.value, 10) - parseInt(d.value, 10));
1789
- for (let a = 0; a < o.length; a += 1) {
1790
- const {
1791
- point: d,
1792
- value: l
1793
- } = o[a];
1794
- e === "window" ? n.matchMedia(`(min-width: ${l}px)`).matches && (s = d) : l <= t.clientWidth && (s = d);
1795
- }
1796
- return s || "max";
1797
- }
1798
- var Xt = {
1799
- setBreakpoint: Wt,
1800
- getBreakpoint: Yt
1801
- };
1802
- function Ut(i, e) {
1803
- const t = [];
1804
- return i.forEach((s) => {
1805
- typeof s == "object" ? Object.keys(s).forEach((n) => {
1806
- s[n] && t.push(e + n);
1807
- }) : typeof s == "string" && t.push(e + s);
1808
- }), t;
1809
- }
1810
- function Kt() {
1811
- const i = this, {
1812
- classNames: e,
1813
- params: t,
1814
- rtl: s,
1815
- el: n,
1816
- device: r
1817
- } = i, o = Ut(["initialized", t.direction, {
1818
- "free-mode": i.params.freeMode && t.freeMode.enabled
1819
- }, {
1820
- autoheight: t.autoHeight
1821
- }, {
1822
- rtl: s
1823
- }, {
1824
- grid: t.grid && t.grid.rows > 1
1825
- }, {
1826
- "grid-column": t.grid && t.grid.rows > 1 && t.grid.fill === "column"
1827
- }, {
1828
- android: r.android
1829
- }, {
1830
- ios: r.ios
1831
- }, {
1832
- "css-mode": t.cssMode
1833
- }, {
1834
- centered: t.cssMode && t.centeredSlides
1835
- }, {
1836
- "watch-progress": t.watchSlidesProgress
1837
- }], t.containerModifierClass);
1838
- e.push(...o), n.classList.add(...e), i.emitContainerClasses();
1839
- }
1840
- function Zt() {
1841
- const i = this, {
1842
- el: e,
1843
- classNames: t
1844
- } = i;
1845
- !e || typeof e == "string" || (e.classList.remove(...t), i.emitContainerClasses());
1846
- }
1847
- var Qt = {
1848
- addClasses: Kt,
1849
- removeClasses: Zt
1850
- };
1851
- function Jt() {
1852
- const i = this, {
1853
- isLocked: e,
1854
- params: t
1855
- } = i, {
1856
- slidesOffsetBefore: s
1857
- } = t;
1858
- if (s) {
1859
- const n = i.slides.length - 1, r = i.slidesGrid[n] + i.slidesSizesGrid[n] + s * 2;
1860
- i.isLocked = i.size > r;
1861
- } else
1862
- i.isLocked = i.snapGrid.length === 1;
1863
- t.allowSlideNext === !0 && (i.allowSlideNext = !i.isLocked), t.allowSlidePrev === !0 && (i.allowSlidePrev = !i.isLocked), e && e !== i.isLocked && (i.isEnd = !1), e !== i.isLocked && i.emit(i.isLocked ? "lock" : "unlock");
1864
- }
1865
- var ei = {
1866
- checkOverflow: Jt
1867
- }, Te = {
1868
- init: !0,
1869
- direction: "horizontal",
1870
- oneWayMovement: !1,
1871
- swiperElementNodeName: "SWIPER-CONTAINER",
1872
- touchEventsTarget: "wrapper",
1873
- initialSlide: 0,
1874
- speed: 300,
1875
- cssMode: !1,
1876
- updateOnWindowResize: !0,
1877
- resizeObserver: !0,
1878
- nested: !1,
1879
- createElements: !1,
1880
- eventsPrefix: "swiper",
1881
- enabled: !0,
1882
- focusableElements: "input, select, option, textarea, button, video, label",
1883
- // Overrides
1884
- width: null,
1885
- height: null,
1886
- //
1887
- preventInteractionOnTransition: !1,
1888
- // ssr
1889
- userAgent: null,
1890
- url: null,
1891
- // To support iOS's swipe-to-go-back gesture (when being used in-app).
1892
- edgeSwipeDetection: !1,
1893
- edgeSwipeThreshold: 20,
1894
- // Autoheight
1895
- autoHeight: !1,
1896
- // Set wrapper width
1897
- setWrapperSize: !1,
1898
- // Virtual Translate
1899
- virtualTranslate: !1,
1900
- // Effects
1901
- effect: "slide",
1902
- // 'slide' or 'fade' or 'cube' or 'coverflow' or 'flip'
1903
- // Breakpoints
1904
- breakpoints: void 0,
1905
- breakpointsBase: "window",
1906
- // Slides grid
1907
- spaceBetween: 0,
1908
- slidesPerView: 1,
1909
- slidesPerGroup: 1,
1910
- slidesPerGroupSkip: 0,
1911
- slidesPerGroupAuto: !1,
1912
- centeredSlides: !1,
1913
- centeredSlidesBounds: !1,
1914
- slidesOffsetBefore: 0,
1915
- // in px
1916
- slidesOffsetAfter: 0,
1917
- // in px
1918
- normalizeSlideIndex: !0,
1919
- centerInsufficientSlides: !1,
1920
- // Disable swiper and hide navigation when container not overflow
1921
- watchOverflow: !0,
1922
- // Round length
1923
- roundLengths: !1,
1924
- // Touches
1925
- touchRatio: 1,
1926
- touchAngle: 45,
1927
- simulateTouch: !0,
1928
- shortSwipes: !0,
1929
- longSwipes: !0,
1930
- longSwipesRatio: 0.5,
1931
- longSwipesMs: 300,
1932
- followFinger: !0,
1933
- allowTouchMove: !0,
1934
- threshold: 5,
1935
- touchMoveStopPropagation: !1,
1936
- touchStartPreventDefault: !0,
1937
- touchStartForcePreventDefault: !1,
1938
- touchReleaseOnEdges: !1,
1939
- // Unique Navigation Elements
1940
- uniqueNavElements: !0,
1941
- // Resistance
1942
- resistance: !0,
1943
- resistanceRatio: 0.85,
1944
- // Progress
1945
- watchSlidesProgress: !1,
1946
- // Cursor
1947
- grabCursor: !1,
1948
- // Clicks
1949
- preventClicks: !0,
1950
- preventClicksPropagation: !0,
1951
- slideToClickedSlide: !1,
1952
- // loop
1953
- loop: !1,
1954
- loopAddBlankSlides: !0,
1955
- loopAdditionalSlides: 0,
1956
- loopPreventsSliding: !0,
1957
- // rewind
1958
- rewind: !1,
1959
- // Swiping/no swiping
1960
- allowSlidePrev: !0,
1961
- allowSlideNext: !0,
1962
- swipeHandler: null,
1963
- // '.swipe-handler',
1964
- noSwiping: !0,
1965
- noSwipingClass: "swiper-no-swiping",
1966
- noSwipingSelector: null,
1967
- // Passive Listeners
1968
- passiveListeners: !0,
1969
- maxBackfaceHiddenSlides: 10,
1970
- // NS
1971
- containerModifierClass: "swiper-",
1972
- // NEW
1973
- slideClass: "swiper-slide",
1974
- slideBlankClass: "swiper-slide-blank",
1975
- slideActiveClass: "swiper-slide-active",
1976
- slideVisibleClass: "swiper-slide-visible",
1977
- slideFullyVisibleClass: "swiper-slide-fully-visible",
1978
- slideNextClass: "swiper-slide-next",
1979
- slidePrevClass: "swiper-slide-prev",
1980
- wrapperClass: "swiper-wrapper",
1981
- lazyPreloaderClass: "swiper-lazy-preloader",
1982
- lazyPreloadPrevNext: 0,
1983
- // Callbacks
1984
- runCallbacksOnInit: !0,
1985
- // Internals
1986
- _emitClasses: !1
1987
- };
1988
- function ti(i, e) {
1989
- return function(s) {
1990
- s === void 0 && (s = {});
1991
- const n = Object.keys(s)[0], r = s[n];
1992
- if (typeof r != "object" || r === null) {
1993
- N(e, s);
1994
- return;
1995
- }
1996
- if (i[n] === !0 && (i[n] = {
1997
- enabled: !0
1998
- }), n === "navigation" && i[n] && i[n].enabled && !i[n].prevEl && !i[n].nextEl && (i[n].auto = !0), ["pagination", "scrollbar"].indexOf(n) >= 0 && i[n] && i[n].enabled && !i[n].el && (i[n].auto = !0), !(n in i && "enabled" in r)) {
1999
- N(e, s);
2000
- return;
2001
- }
2002
- typeof i[n] == "object" && !("enabled" in i[n]) && (i[n].enabled = !0), i[n] || (i[n] = {
2003
- enabled: !1
2004
- }), N(e, s);
2005
- };
2006
- }
2007
- const ce = {
2008
- eventsEmitter: Qe,
2009
- update: dt,
2010
- translate: gt,
2011
- transition: bt,
2012
- slide: Lt,
2013
- loop: It,
2014
- grabCursor: Dt,
2015
- events: qt,
2016
- breakpoints: Xt,
2017
- checkOverflow: ei,
2018
- classes: Qt
2019
- }, pe = {};
2020
- class H {
2021
- constructor() {
2022
- let e, t;
2023
- for (var s = arguments.length, n = new Array(s), r = 0; r < s; r++)
2024
- n[r] = arguments[r];
2025
- n.length === 1 && n[0].constructor && Object.prototype.toString.call(n[0]).slice(8, -1) === "Object" ? t = n[0] : [e, t] = n, t || (t = {}), t = N({}, t), e && !t.el && (t.el = e);
2026
- const o = R();
2027
- if (t.el && typeof t.el == "string" && o.querySelectorAll(t.el).length > 1) {
2028
- const p = [];
2029
- return o.querySelectorAll(t.el).forEach((f) => {
2030
- const h = N({}, t, {
2031
- el: f
2032
- });
2033
- p.push(new H(h));
2034
- }), p;
2035
- }
2036
- const a = this;
2037
- a.__swiper__ = !0, a.support = Le(), a.device = Pe({
2038
- userAgent: t.userAgent
2039
- }), a.browser = ke(), a.eventsListeners = {}, a.eventsAnyListeners = [], a.modules = [...a.__modules__], t.modules && Array.isArray(t.modules) && a.modules.push(...t.modules);
2040
- const d = {};
2041
- a.modules.forEach((p) => {
2042
- p({
2043
- params: t,
2044
- swiper: a,
2045
- extendParams: ti(t, d),
2046
- on: a.on.bind(a),
2047
- once: a.once.bind(a),
2048
- off: a.off.bind(a),
2049
- emit: a.emit.bind(a)
2050
- });
2051
- });
2052
- const l = N({}, Te, d);
2053
- return a.params = N({}, l, pe, t), a.originalParams = N({}, a.params), a.passedParams = N({}, t), a.params && a.params.on && Object.keys(a.params.on).forEach((p) => {
2054
- a.on(p, a.params.on[p]);
2055
- }), a.params && a.params.onAny && a.onAny(a.params.onAny), Object.assign(a, {
2056
- enabled: a.params.enabled,
2057
- el: e,
2058
- // Classes
2059
- classNames: [],
2060
- // Slides
2061
- slides: [],
2062
- slidesGrid: [],
2063
- snapGrid: [],
2064
- slidesSizesGrid: [],
2065
- // isDirection
2066
- isHorizontal() {
2067
- return a.params.direction === "horizontal";
2068
- },
2069
- isVertical() {
2070
- return a.params.direction === "vertical";
2071
- },
2072
- // Indexes
2073
- activeIndex: 0,
2074
- realIndex: 0,
2075
- //
2076
- isBeginning: !0,
2077
- isEnd: !1,
2078
- // Props
2079
- translate: 0,
2080
- previousTranslate: 0,
2081
- progress: 0,
2082
- velocity: 0,
2083
- animating: !1,
2084
- cssOverflowAdjustment() {
2085
- return Math.trunc(this.translate / 2 ** 23) * 2 ** 23;
2086
- },
2087
- // Locks
2088
- allowSlideNext: a.params.allowSlideNext,
2089
- allowSlidePrev: a.params.allowSlidePrev,
2090
- // Touch Events
2091
- touchEventsData: {
2092
- isTouched: void 0,
2093
- isMoved: void 0,
2094
- allowTouchCallbacks: void 0,
2095
- touchStartTime: void 0,
2096
- isScrolling: void 0,
2097
- currentTranslate: void 0,
2098
- startTranslate: void 0,
2099
- allowThresholdMove: void 0,
2100
- // Form elements to match
2101
- focusableElements: a.params.focusableElements,
2102
- // Last click time
2103
- lastClickTime: 0,
2104
- clickTimeout: void 0,
2105
- // Velocities
2106
- velocities: [],
2107
- allowMomentumBounce: void 0,
2108
- startMoving: void 0,
2109
- pointerId: null,
2110
- touchId: null
2111
- },
2112
- // Clicks
2113
- allowClick: !0,
2114
- // Touches
2115
- allowTouchMove: a.params.allowTouchMove,
2116
- touches: {
2117
- startX: 0,
2118
- startY: 0,
2119
- currentX: 0,
2120
- currentY: 0,
2121
- diff: 0
2122
- },
2123
- // Images
2124
- imagesToLoad: [],
2125
- imagesLoaded: 0
2126
- }), a.emit("_swiper"), a.params.init && a.init(), a;
2127
- }
2128
- getDirectionLabel(e) {
2129
- return this.isHorizontal() ? e : {
2130
- width: "height",
2131
- "margin-top": "margin-left",
2132
- "margin-bottom ": "margin-right",
2133
- "margin-left": "margin-top",
2134
- "margin-right": "margin-bottom",
2135
- "padding-left": "padding-top",
2136
- "padding-right": "padding-bottom",
2137
- marginRight: "marginBottom"
2138
- }[e];
2139
- }
2140
- getSlideIndex(e) {
2141
- const {
2142
- slidesEl: t,
2143
- params: s
2144
- } = this, n = q(t, `.${s.slideClass}, swiper-slide`), r = K(n[0]);
2145
- return K(e) - r;
2146
- }
2147
- getSlideIndexByData(e) {
2148
- return this.getSlideIndex(this.slides.find((t) => t.getAttribute("data-swiper-slide-index") * 1 === e));
2149
- }
2150
- recalcSlides() {
2151
- const e = this, {
2152
- slidesEl: t,
2153
- params: s
2154
- } = e;
2155
- e.slides = q(t, `.${s.slideClass}, swiper-slide`);
2156
- }
2157
- enable() {
2158
- const e = this;
2159
- e.enabled || (e.enabled = !0, e.params.grabCursor && e.setGrabCursor(), e.emit("enable"));
2160
- }
2161
- disable() {
2162
- const e = this;
2163
- e.enabled && (e.enabled = !1, e.params.grabCursor && e.unsetGrabCursor(), e.emit("disable"));
2164
- }
2165
- setProgress(e, t) {
2166
- const s = this;
2167
- e = Math.min(Math.max(e, 0), 1);
2168
- const n = s.minTranslate(), o = (s.maxTranslate() - n) * e + n;
2169
- s.translateTo(o, typeof t > "u" ? 0 : t), s.updateActiveIndex(), s.updateSlidesClasses();
2170
- }
2171
- emitContainerClasses() {
2172
- const e = this;
2173
- if (!e.params._emitClasses || !e.el) return;
2174
- const t = e.el.className.split(" ").filter((s) => s.indexOf("swiper") === 0 || s.indexOf(e.params.containerModifierClass) === 0);
2175
- e.emit("_containerClasses", t.join(" "));
2176
- }
2177
- getSlideClasses(e) {
2178
- const t = this;
2179
- return t.destroyed ? "" : e.className.split(" ").filter((s) => s.indexOf("swiper-slide") === 0 || s.indexOf(t.params.slideClass) === 0).join(" ");
2180
- }
2181
- emitSlidesClasses() {
2182
- const e = this;
2183
- if (!e.params._emitClasses || !e.el) return;
2184
- const t = [];
2185
- e.slides.forEach((s) => {
2186
- const n = e.getSlideClasses(s);
2187
- t.push({
2188
- slideEl: s,
2189
- classNames: n
2190
- }), e.emit("_slideClass", s, n);
2191
- }), e.emit("_slideClasses", t);
2192
- }
2193
- slidesPerViewDynamic(e, t) {
2194
- e === void 0 && (e = "current"), t === void 0 && (t = !1);
2195
- const s = this, {
2196
- params: n,
2197
- slides: r,
2198
- slidesGrid: o,
2199
- slidesSizesGrid: a,
2200
- size: d,
2201
- activeIndex: l
2202
- } = s;
2203
- let p = 1;
2204
- if (typeof n.slidesPerView == "number") return n.slidesPerView;
2205
- if (n.centeredSlides) {
2206
- let f = r[l] ? Math.ceil(r[l].swiperSlideSize) : 0, h;
2207
- for (let S = l + 1; S < r.length; S += 1)
2208
- r[S] && !h && (f += Math.ceil(r[S].swiperSlideSize), p += 1, f > d && (h = !0));
2209
- for (let S = l - 1; S >= 0; S -= 1)
2210
- r[S] && !h && (f += r[S].swiperSlideSize, p += 1, f > d && (h = !0));
2211
- } else if (e === "current")
2212
- for (let f = l + 1; f < r.length; f += 1)
2213
- (t ? o[f] + a[f] - o[l] < d : o[f] - o[l] < d) && (p += 1);
2214
- else
2215
- for (let f = l - 1; f >= 0; f -= 1)
2216
- o[l] - o[f] < d && (p += 1);
2217
- return p;
2218
- }
2219
- update() {
2220
- const e = this;
2221
- if (!e || e.destroyed) return;
2222
- const {
2223
- snapGrid: t,
2224
- params: s
2225
- } = e;
2226
- s.breakpoints && e.setBreakpoint(), [...e.el.querySelectorAll('[loading="lazy"]')].forEach((o) => {
2227
- o.complete && te(e, o);
2228
- }), e.updateSize(), e.updateSlides(), e.updateProgress(), e.updateSlidesClasses();
2229
- function n() {
2230
- const o = e.rtlTranslate ? e.translate * -1 : e.translate, a = Math.min(Math.max(o, e.maxTranslate()), e.minTranslate());
2231
- e.setTranslate(a), e.updateActiveIndex(), e.updateSlidesClasses();
2232
- }
2233
- let r;
2234
- if (s.freeMode && s.freeMode.enabled && !s.cssMode)
2235
- n(), s.autoHeight && e.updateAutoHeight();
2236
- else {
2237
- if ((s.slidesPerView === "auto" || s.slidesPerView > 1) && e.isEnd && !s.centeredSlides) {
2238
- const o = e.virtual && s.virtual.enabled ? e.virtual.slides : e.slides;
2239
- r = e.slideTo(o.length - 1, 0, !1, !0);
2240
- } else
2241
- r = e.slideTo(e.activeIndex, 0, !1, !0);
2242
- r || n();
2243
- }
2244
- s.watchOverflow && t !== e.snapGrid && e.checkOverflow(), e.emit("update");
2245
- }
2246
- changeDirection(e, t) {
2247
- t === void 0 && (t = !0);
2248
- const s = this, n = s.params.direction;
2249
- return e || (e = n === "horizontal" ? "vertical" : "horizontal"), e === n || e !== "horizontal" && e !== "vertical" || (s.el.classList.remove(`${s.params.containerModifierClass}${n}`), s.el.classList.add(`${s.params.containerModifierClass}${e}`), s.emitContainerClasses(), s.params.direction = e, s.slides.forEach((r) => {
2250
- e === "vertical" ? r.style.width = "" : r.style.height = "";
2251
- }), s.emit("changeDirection"), t && s.update()), s;
2252
- }
2253
- changeLanguageDirection(e) {
2254
- const t = this;
2255
- t.rtl && e === "rtl" || !t.rtl && e === "ltr" || (t.rtl = e === "rtl", t.rtlTranslate = t.params.direction === "horizontal" && t.rtl, t.rtl ? (t.el.classList.add(`${t.params.containerModifierClass}rtl`), t.el.dir = "rtl") : (t.el.classList.remove(`${t.params.containerModifierClass}rtl`), t.el.dir = "ltr"), t.update());
2256
- }
2257
- mount(e) {
2258
- const t = this;
2259
- if (t.mounted) return !0;
2260
- let s = e || t.params.el;
2261
- if (typeof s == "string" && (s = document.querySelector(s)), !s)
2262
- return !1;
2263
- s.swiper = t, s.parentNode && s.parentNode.host && s.parentNode.host.nodeName === t.params.swiperElementNodeName.toUpperCase() && (t.isElement = !0);
2264
- const n = () => `.${(t.params.wrapperClass || "").trim().split(" ").join(".")}`;
2265
- let o = s && s.shadowRoot && s.shadowRoot.querySelector ? s.shadowRoot.querySelector(n()) : q(s, n())[0];
2266
- return !o && t.params.createElements && (o = U("div", t.params.wrapperClass), s.append(o), q(s, `.${t.params.slideClass}`).forEach((a) => {
2267
- o.append(a);
2268
- })), Object.assign(t, {
2269
- el: s,
2270
- wrapperEl: o,
2271
- slidesEl: t.isElement && !s.parentNode.host.slideSlots ? s.parentNode.host : o,
2272
- hostEl: t.isElement ? s.parentNode.host : s,
2273
- mounted: !0,
2274
- // RTL
2275
- rtl: s.dir.toLowerCase() === "rtl" || X(s, "direction") === "rtl",
2276
- rtlTranslate: t.params.direction === "horizontal" && (s.dir.toLowerCase() === "rtl" || X(s, "direction") === "rtl"),
2277
- wrongRTL: X(o, "display") === "-webkit-box"
2278
- }), !0;
2279
- }
2280
- init(e) {
2281
- const t = this;
2282
- if (t.initialized || t.mount(e) === !1) return t;
2283
- t.emit("beforeInit"), t.params.breakpoints && t.setBreakpoint(), t.addClasses(), t.updateSize(), t.updateSlides(), t.params.watchOverflow && t.checkOverflow(), t.params.grabCursor && t.enabled && t.setGrabCursor(), t.params.loop && t.virtual && t.params.virtual.enabled ? t.slideTo(t.params.initialSlide + t.virtual.slidesBefore, 0, t.params.runCallbacksOnInit, !1, !0) : t.slideTo(t.params.initialSlide, 0, t.params.runCallbacksOnInit, !1, !0), t.params.loop && t.loopCreate(void 0, !0), t.attachEvents();
2284
- const n = [...t.el.querySelectorAll('[loading="lazy"]')];
2285
- return t.isElement && n.push(...t.hostEl.querySelectorAll('[loading="lazy"]')), n.forEach((r) => {
2286
- r.complete ? te(t, r) : r.addEventListener("load", (o) => {
2287
- te(t, o.target);
2288
- });
2289
- }), me(t), t.initialized = !0, me(t), t.emit("init"), t.emit("afterInit"), t;
2290
- }
2291
- destroy(e, t) {
2292
- e === void 0 && (e = !0), t === void 0 && (t = !0);
2293
- const s = this, {
2294
- params: n,
2295
- el: r,
2296
- wrapperEl: o,
2297
- slides: a
2298
- } = s;
2299
- return typeof s.params > "u" || s.destroyed || (s.emit("beforeDestroy"), s.initialized = !1, s.detachEvents(), n.loop && s.loopDestroy(), t && (s.removeClasses(), r && typeof r != "string" && r.removeAttribute("style"), o && o.removeAttribute("style"), a && a.length && a.forEach((d) => {
2300
- d.classList.remove(n.slideVisibleClass, n.slideFullyVisibleClass, n.slideActiveClass, n.slideNextClass, n.slidePrevClass), d.removeAttribute("style"), d.removeAttribute("data-swiper-slide-index");
2301
- })), s.emit("destroy"), Object.keys(s.eventsListeners).forEach((d) => {
2302
- s.off(d);
2303
- }), e !== !1 && (s.el && typeof s.el != "string" && (s.el.swiper = null), Fe(s)), s.destroyed = !0), null;
2304
- }
2305
- static extendDefaults(e) {
2306
- N(pe, e);
2307
- }
2308
- static get extendedDefaults() {
2309
- return pe;
2310
- }
2311
- static get defaults() {
2312
- return Te;
2313
- }
2314
- static installModule(e) {
2315
- H.prototype.__modules__ || (H.prototype.__modules__ = []);
2316
- const t = H.prototype.__modules__;
2317
- typeof e == "function" && t.indexOf(e) < 0 && t.push(e);
2318
- }
2319
- static use(e) {
2320
- return Array.isArray(e) ? (e.forEach((t) => H.installModule(t)), H) : (H.installModule(e), H);
2321
- }
2322
- }
2323
- Object.keys(ce).forEach((i) => {
2324
- Object.keys(ce[i]).forEach((e) => {
2325
- H.prototype[e] = ce[i][e];
2326
- });
2327
- });
2328
- H.use([Ke, Ze]);
2329
- function he(i, e, t, s) {
2330
- return i.params.createElements && Object.keys(s).forEach((n) => {
2331
- if (!t[n] && t.auto === !0) {
2332
- let r = q(i.el, `.${s[n]}`)[0];
2333
- r || (r = U("div", s[n]), r.className = s[n], i.el.append(r)), t[n] = r, e[n] = r;
2334
- }
2335
- }), t;
2336
- }
2337
- function ii(i) {
2338
- let {
2339
- swiper: e,
2340
- extendParams: t,
2341
- on: s,
2342
- emit: n
2343
- } = i;
2344
- t({
2345
- navigation: {
2346
- nextEl: null,
2347
- prevEl: null,
2348
- hideOnClick: !1,
2349
- disabledClass: "swiper-button-disabled",
2350
- hiddenClass: "swiper-button-hidden",
2351
- lockClass: "swiper-button-lock",
2352
- navigationDisabledClass: "swiper-navigation-disabled"
2353
- }
2354
- }), e.navigation = {
2355
- nextEl: null,
2356
- prevEl: null
2357
- };
2358
- function r(m) {
2359
- let g;
2360
- return m && typeof m == "string" && e.isElement && (g = e.el.querySelector(m) || e.hostEl.querySelector(m), g) ? g : (m && (typeof m == "string" && (g = [...document.querySelectorAll(m)]), e.params.uniqueNavElements && typeof m == "string" && g && g.length > 1 && e.el.querySelectorAll(m).length === 1 ? g = e.el.querySelector(m) : g && g.length === 1 && (g = g[0])), m && !g ? m : g);
2361
- }
2362
- function o(m, g) {
2363
- const E = e.params.navigation;
2364
- m = G(m), m.forEach((y) => {
2365
- y && (y.classList[g ? "add" : "remove"](...E.disabledClass.split(" ")), y.tagName === "BUTTON" && (y.disabled = g), e.params.watchOverflow && e.enabled && y.classList[e.isLocked ? "add" : "remove"](E.lockClass));
2366
- });
2367
- }
2368
- function a() {
2369
- const {
2370
- nextEl: m,
2371
- prevEl: g
2372
- } = e.navigation;
2373
- if (e.params.loop) {
2374
- o(g, !1), o(m, !1);
2375
- return;
2376
- }
2377
- o(g, e.isBeginning && !e.params.rewind), o(m, e.isEnd && !e.params.rewind);
2378
- }
2379
- function d(m) {
2380
- m.preventDefault(), !(e.isBeginning && !e.params.loop && !e.params.rewind) && (e.slidePrev(), n("navigationPrev"));
2381
- }
2382
- function l(m) {
2383
- m.preventDefault(), !(e.isEnd && !e.params.loop && !e.params.rewind) && (e.slideNext(), n("navigationNext"));
2384
- }
2385
- function p() {
2386
- const m = e.params.navigation;
2387
- if (e.params.navigation = he(e, e.originalParams.navigation, e.params.navigation, {
2388
- nextEl: "swiper-button-next",
2389
- prevEl: "swiper-button-prev"
2390
- }), !(m.nextEl || m.prevEl)) return;
2391
- let g = r(m.nextEl), E = r(m.prevEl);
2392
- Object.assign(e.navigation, {
2393
- nextEl: g,
2394
- prevEl: E
2395
- }), g = G(g), E = G(E);
2396
- const y = (c, u) => {
2397
- c && c.addEventListener("click", u === "next" ? l : d), !e.enabled && c && c.classList.add(...m.lockClass.split(" "));
2398
- };
2399
- g.forEach((c) => y(c, "next")), E.forEach((c) => y(c, "prev"));
2400
- }
2401
- function f() {
2402
- let {
2403
- nextEl: m,
2404
- prevEl: g
2405
- } = e.navigation;
2406
- m = G(m), g = G(g);
2407
- const E = (y, c) => {
2408
- y.removeEventListener("click", c === "next" ? l : d), y.classList.remove(...e.params.navigation.disabledClass.split(" "));
2409
- };
2410
- m.forEach((y) => E(y, "next")), g.forEach((y) => E(y, "prev"));
2411
- }
2412
- s("init", () => {
2413
- e.params.navigation.enabled === !1 ? S() : (p(), a());
2414
- }), s("toEdge fromEdge lock unlock", () => {
2415
- a();
2416
- }), s("destroy", () => {
2417
- f();
2418
- }), s("enable disable", () => {
2419
- let {
2420
- nextEl: m,
2421
- prevEl: g
2422
- } = e.navigation;
2423
- if (m = G(m), g = G(g), e.enabled) {
2424
- a();
2425
- return;
2426
- }
2427
- [...m, ...g].filter((E) => !!E).forEach((E) => E.classList.add(e.params.navigation.lockClass));
2428
- }), s("click", (m, g) => {
2429
- let {
2430
- nextEl: E,
2431
- prevEl: y
2432
- } = e.navigation;
2433
- E = G(E), y = G(y);
2434
- const c = g.target;
2435
- let u = y.includes(c) || E.includes(c);
2436
- if (e.isElement && !u) {
2437
- const v = g.path || g.composedPath && g.composedPath();
2438
- v && (u = v.find((T) => E.includes(T) || y.includes(T)));
2439
- }
2440
- if (e.params.navigation.hideOnClick && !u) {
2441
- if (e.pagination && e.params.pagination && e.params.pagination.clickable && (e.pagination.el === c || e.pagination.el.contains(c))) return;
2442
- let v;
2443
- E.length ? v = E[0].classList.contains(e.params.navigation.hiddenClass) : y.length && (v = y[0].classList.contains(e.params.navigation.hiddenClass)), n(v === !0 ? "navigationShow" : "navigationHide"), [...E, ...y].filter((T) => !!T).forEach((T) => T.classList.toggle(e.params.navigation.hiddenClass));
2444
- }
2445
- });
2446
- const h = () => {
2447
- e.el.classList.remove(...e.params.navigation.navigationDisabledClass.split(" ")), p(), a();
2448
- }, S = () => {
2449
- e.el.classList.add(...e.params.navigation.navigationDisabledClass.split(" ")), f();
2450
- };
2451
- Object.assign(e.navigation, {
2452
- enable: h,
2453
- disable: S,
2454
- update: a,
2455
- init: p,
2456
- destroy: f
2457
- });
2458
- }
2459
- function W(i) {
2460
- return i === void 0 && (i = ""), `.${i.trim().replace(/([\.:!+\/])/g, "\\$1").replace(/ /g, ".")}`;
2461
- }
2462
- function si(i) {
2463
- let {
2464
- swiper: e,
2465
- extendParams: t,
2466
- on: s,
2467
- emit: n
2468
- } = i;
2469
- const r = "swiper-pagination";
2470
- t({
2471
- pagination: {
2472
- el: null,
2473
- bulletElement: "span",
2474
- clickable: !1,
2475
- hideOnClick: !1,
2476
- renderBullet: null,
2477
- renderProgressbar: null,
2478
- renderFraction: null,
2479
- renderCustom: null,
2480
- progressbarOpposite: !1,
2481
- type: "bullets",
2482
- // 'bullets' or 'progressbar' or 'fraction' or 'custom'
2483
- dynamicBullets: !1,
2484
- dynamicMainBullets: 1,
2485
- formatFractionCurrent: (c) => c,
2486
- formatFractionTotal: (c) => c,
2487
- bulletClass: `${r}-bullet`,
2488
- bulletActiveClass: `${r}-bullet-active`,
2489
- modifierClass: `${r}-`,
2490
- currentClass: `${r}-current`,
2491
- totalClass: `${r}-total`,
2492
- hiddenClass: `${r}-hidden`,
2493
- progressbarFillClass: `${r}-progressbar-fill`,
2494
- progressbarOppositeClass: `${r}-progressbar-opposite`,
2495
- clickableClass: `${r}-clickable`,
2496
- lockClass: `${r}-lock`,
2497
- horizontalClass: `${r}-horizontal`,
2498
- verticalClass: `${r}-vertical`,
2499
- paginationDisabledClass: `${r}-disabled`
2500
- }
2501
- }), e.pagination = {
2502
- el: null,
2503
- bullets: []
2504
- };
2505
- let o, a = 0;
2506
- function d() {
2507
- return !e.params.pagination.el || !e.pagination.el || Array.isArray(e.pagination.el) && e.pagination.el.length === 0;
2508
- }
2509
- function l(c, u) {
2510
- const {
2511
- bulletActiveClass: v
2512
- } = e.params.pagination;
2513
- c && (c = c[`${u === "prev" ? "previous" : "next"}ElementSibling`], c && (c.classList.add(`${v}-${u}`), c = c[`${u === "prev" ? "previous" : "next"}ElementSibling`], c && c.classList.add(`${v}-${u}-${u}`)));
2514
- }
2515
- function p(c, u, v) {
2516
- if (c = c % v, u = u % v, u === c + 1)
2517
- return "next";
2518
- if (u === c - 1)
2519
- return "previous";
2520
- }
2521
- function f(c) {
2522
- const u = c.target.closest(W(e.params.pagination.bulletClass));
2523
- if (!u)
2524
- return;
2525
- c.preventDefault();
2526
- const v = K(u) * e.params.slidesPerGroup;
2527
- if (e.params.loop) {
2528
- if (e.realIndex === v) return;
2529
- const T = p(e.realIndex, v, e.slides.length);
2530
- T === "next" ? e.slideNext() : T === "previous" ? e.slidePrev() : e.slideToLoop(v);
2531
- } else
2532
- e.slideTo(v);
2533
- }
2534
- function h() {
2535
- const c = e.rtl, u = e.params.pagination;
2536
- if (d()) return;
2537
- let v = e.pagination.el;
2538
- v = G(v);
2539
- let T, P;
2540
- const B = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : e.slides.length, O = e.params.loop ? Math.ceil(B / e.params.slidesPerGroup) : e.snapGrid.length;
2541
- if (e.params.loop ? (P = e.previousRealIndex || 0, T = e.params.slidesPerGroup > 1 ? Math.floor(e.realIndex / e.params.slidesPerGroup) : e.realIndex) : typeof e.snapIndex < "u" ? (T = e.snapIndex, P = e.previousSnapIndex) : (P = e.previousIndex || 0, T = e.activeIndex || 0), u.type === "bullets" && e.pagination.bullets && e.pagination.bullets.length > 0) {
2542
- const A = e.pagination.bullets;
2543
- let C, k, x;
2544
- if (u.dynamicBullets && (o = ue(A[0], e.isHorizontal() ? "width" : "height"), v.forEach((M) => {
2545
- M.style[e.isHorizontal() ? "width" : "height"] = `${o * (u.dynamicMainBullets + 4)}px`;
2546
- }), u.dynamicMainBullets > 1 && P !== void 0 && (a += T - (P || 0), a > u.dynamicMainBullets - 1 ? a = u.dynamicMainBullets - 1 : a < 0 && (a = 0)), C = Math.max(T - a, 0), k = C + (Math.min(A.length, u.dynamicMainBullets) - 1), x = (k + C) / 2), A.forEach((M) => {
2547
- const z = [...["", "-next", "-next-next", "-prev", "-prev-prev", "-main"].map((D) => `${u.bulletActiveClass}${D}`)].map((D) => typeof D == "string" && D.includes(" ") ? D.split(" ") : D).flat();
2548
- M.classList.remove(...z);
2549
- }), v.length > 1)
2550
- A.forEach((M) => {
2551
- const z = K(M);
2552
- z === T ? M.classList.add(...u.bulletActiveClass.split(" ")) : e.isElement && M.setAttribute("part", "bullet"), u.dynamicBullets && (z >= C && z <= k && M.classList.add(...`${u.bulletActiveClass}-main`.split(" ")), z === C && l(M, "prev"), z === k && l(M, "next"));
2553
- });
2554
- else {
2555
- const M = A[T];
2556
- if (M && M.classList.add(...u.bulletActiveClass.split(" ")), e.isElement && A.forEach((z, D) => {
2557
- z.setAttribute("part", D === T ? "bullet-active" : "bullet");
2558
- }), u.dynamicBullets) {
2559
- const z = A[C], D = A[k];
2560
- for (let L = C; L <= k; L += 1)
2561
- A[L] && A[L].classList.add(...`${u.bulletActiveClass}-main`.split(" "));
2562
- l(z, "prev"), l(D, "next");
2563
- }
2564
- }
2565
- if (u.dynamicBullets) {
2566
- const M = Math.min(A.length, u.dynamicMainBullets + 4), z = (o * M - o) / 2 - x * o, D = c ? "right" : "left";
2567
- A.forEach((L) => {
2568
- L.style[e.isHorizontal() ? D : "top"] = `${z}px`;
2569
- });
2570
- }
2571
- }
2572
- v.forEach((A, C) => {
2573
- if (u.type === "fraction" && (A.querySelectorAll(W(u.currentClass)).forEach((k) => {
2574
- k.textContent = u.formatFractionCurrent(T + 1);
2575
- }), A.querySelectorAll(W(u.totalClass)).forEach((k) => {
2576
- k.textContent = u.formatFractionTotal(O);
2577
- })), u.type === "progressbar") {
2578
- let k;
2579
- u.progressbarOpposite ? k = e.isHorizontal() ? "vertical" : "horizontal" : k = e.isHorizontal() ? "horizontal" : "vertical";
2580
- const x = (T + 1) / O;
2581
- let M = 1, z = 1;
2582
- k === "horizontal" ? M = x : z = x, A.querySelectorAll(W(u.progressbarFillClass)).forEach((D) => {
2583
- D.style.transform = `translate3d(0,0,0) scaleX(${M}) scaleY(${z})`, D.style.transitionDuration = `${e.params.speed}ms`;
2584
- });
2585
- }
2586
- u.type === "custom" && u.renderCustom ? (fe(A, u.renderCustom(e, T + 1, O)), C === 0 && n("paginationRender", A)) : (C === 0 && n("paginationRender", A), n("paginationUpdate", A)), e.params.watchOverflow && e.enabled && A.classList[e.isLocked ? "add" : "remove"](u.lockClass);
2587
- });
2588
- }
2589
- function S() {
2590
- const c = e.params.pagination;
2591
- if (d()) return;
2592
- const u = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : e.grid && e.params.grid.rows > 1 ? e.slides.length / Math.ceil(e.params.grid.rows) : e.slides.length;
2593
- let v = e.pagination.el;
2594
- v = G(v);
2595
- let T = "";
2596
- if (c.type === "bullets") {
2597
- let P = e.params.loop ? Math.ceil(u / e.params.slidesPerGroup) : e.snapGrid.length;
2598
- e.params.freeMode && e.params.freeMode.enabled && P > u && (P = u);
2599
- for (let B = 0; B < P; B += 1)
2600
- c.renderBullet ? T += c.renderBullet.call(e, B, c.bulletClass) : T += `<${c.bulletElement} ${e.isElement ? 'part="bullet"' : ""} class="${c.bulletClass}"></${c.bulletElement}>`;
2601
- }
2602
- c.type === "fraction" && (c.renderFraction ? T = c.renderFraction.call(e, c.currentClass, c.totalClass) : T = `<span class="${c.currentClass}"></span> / <span class="${c.totalClass}"></span>`), c.type === "progressbar" && (c.renderProgressbar ? T = c.renderProgressbar.call(e, c.progressbarFillClass) : T = `<span class="${c.progressbarFillClass}"></span>`), e.pagination.bullets = [], v.forEach((P) => {
2603
- c.type !== "custom" && fe(P, T || ""), c.type === "bullets" && e.pagination.bullets.push(...P.querySelectorAll(W(c.bulletClass)));
2604
- }), c.type !== "custom" && n("paginationRender", v[0]);
2605
- }
2606
- function m() {
2607
- e.params.pagination = he(e, e.originalParams.pagination, e.params.pagination, {
2608
- el: "swiper-pagination"
2609
- });
2610
- const c = e.params.pagination;
2611
- if (!c.el) return;
2612
- let u;
2613
- typeof c.el == "string" && e.isElement && (u = e.el.querySelector(c.el)), !u && typeof c.el == "string" && (u = [...document.querySelectorAll(c.el)]), u || (u = c.el), !(!u || u.length === 0) && (e.params.uniqueNavElements && typeof c.el == "string" && Array.isArray(u) && u.length > 1 && (u = [...e.el.querySelectorAll(c.el)], u.length > 1 && (u = u.find((v) => Me(v, ".swiper")[0] === e.el))), Array.isArray(u) && u.length === 1 && (u = u[0]), Object.assign(e.pagination, {
2614
- el: u
2615
- }), u = G(u), u.forEach((v) => {
2616
- c.type === "bullets" && c.clickable && v.classList.add(...(c.clickableClass || "").split(" ")), v.classList.add(c.modifierClass + c.type), v.classList.add(e.isHorizontal() ? c.horizontalClass : c.verticalClass), c.type === "bullets" && c.dynamicBullets && (v.classList.add(`${c.modifierClass}${c.type}-dynamic`), a = 0, c.dynamicMainBullets < 1 && (c.dynamicMainBullets = 1)), c.type === "progressbar" && c.progressbarOpposite && v.classList.add(c.progressbarOppositeClass), c.clickable && v.addEventListener("click", f), e.enabled || v.classList.add(c.lockClass);
2617
- }));
2618
- }
2619
- function g() {
2620
- const c = e.params.pagination;
2621
- if (d()) return;
2622
- let u = e.pagination.el;
2623
- u && (u = G(u), u.forEach((v) => {
2624
- v.classList.remove(c.hiddenClass), v.classList.remove(c.modifierClass + c.type), v.classList.remove(e.isHorizontal() ? c.horizontalClass : c.verticalClass), c.clickable && (v.classList.remove(...(c.clickableClass || "").split(" ")), v.removeEventListener("click", f));
2625
- })), e.pagination.bullets && e.pagination.bullets.forEach((v) => v.classList.remove(...c.bulletActiveClass.split(" ")));
2626
- }
2627
- s("changeDirection", () => {
2628
- if (!e.pagination || !e.pagination.el) return;
2629
- const c = e.params.pagination;
2630
- let {
2631
- el: u
2632
- } = e.pagination;
2633
- u = G(u), u.forEach((v) => {
2634
- v.classList.remove(c.horizontalClass, c.verticalClass), v.classList.add(e.isHorizontal() ? c.horizontalClass : c.verticalClass);
2635
- });
2636
- }), s("init", () => {
2637
- e.params.pagination.enabled === !1 ? y() : (m(), S(), h());
2638
- }), s("activeIndexChange", () => {
2639
- typeof e.snapIndex > "u" && h();
2640
- }), s("snapIndexChange", () => {
2641
- h();
2642
- }), s("snapGridLengthChange", () => {
2643
- S(), h();
2644
- }), s("destroy", () => {
2645
- g();
2646
- }), s("enable disable", () => {
2647
- let {
2648
- el: c
2649
- } = e.pagination;
2650
- c && (c = G(c), c.forEach((u) => u.classList[e.enabled ? "remove" : "add"](e.params.pagination.lockClass)));
2651
- }), s("lock unlock", () => {
2652
- h();
2653
- }), s("click", (c, u) => {
2654
- const v = u.target, T = G(e.pagination.el);
2655
- if (e.params.pagination.el && e.params.pagination.hideOnClick && T && T.length > 0 && !v.classList.contains(e.params.pagination.bulletClass)) {
2656
- if (e.navigation && (e.navigation.nextEl && v === e.navigation.nextEl || e.navigation.prevEl && v === e.navigation.prevEl)) return;
2657
- const P = T[0].classList.contains(e.params.pagination.hiddenClass);
2658
- n(P === !0 ? "paginationShow" : "paginationHide"), T.forEach((B) => B.classList.toggle(e.params.pagination.hiddenClass));
2659
- }
2660
- });
2661
- const E = () => {
2662
- e.el.classList.remove(e.params.pagination.paginationDisabledClass);
2663
- let {
2664
- el: c
2665
- } = e.pagination;
2666
- c && (c = G(c), c.forEach((u) => u.classList.remove(e.params.pagination.paginationDisabledClass))), m(), S(), h();
2667
- }, y = () => {
2668
- e.el.classList.add(e.params.pagination.paginationDisabledClass);
2669
- let {
2670
- el: c
2671
- } = e.pagination;
2672
- c && (c = G(c), c.forEach((u) => u.classList.add(e.params.pagination.paginationDisabledClass))), g();
2673
- };
2674
- Object.assign(e.pagination, {
2675
- enable: E,
2676
- disable: y,
2677
- render: S,
2678
- update: h,
2679
- init: m,
2680
- destroy: g
2681
- });
2682
- }
2683
- function ri(i) {
2684
- let {
2685
- swiper: e,
2686
- extendParams: t,
2687
- on: s,
2688
- emit: n
2689
- } = i;
2690
- const r = R();
2691
- let o = !1, a = null, d = null, l, p, f, h;
2692
- t({
2693
- scrollbar: {
2694
- el: null,
2695
- dragSize: "auto",
2696
- hide: !1,
2697
- draggable: !1,
2698
- snapOnRelease: !0,
2699
- lockClass: "swiper-scrollbar-lock",
2700
- dragClass: "swiper-scrollbar-drag",
2701
- scrollbarDisabledClass: "swiper-scrollbar-disabled",
2702
- horizontalClass: "swiper-scrollbar-horizontal",
2703
- verticalClass: "swiper-scrollbar-vertical"
2704
- }
2705
- }), e.scrollbar = {
2706
- el: null,
2707
- dragEl: null
2708
- };
2709
- function S() {
2710
- if (!e.params.scrollbar.el || !e.scrollbar.el) return;
2711
- const {
2712
- scrollbar: x,
2713
- rtlTranslate: M
2714
- } = e, {
2715
- dragEl: z,
2716
- el: D
2717
- } = x, L = e.params.scrollbar, w = e.params.loop ? e.progressLoop : e.progress;
2718
- let b = p, I = (f - p) * w;
2719
- M ? (I = -I, I > 0 ? (b = p - I, I = 0) : -I + p > f && (b = f + I)) : I < 0 ? (b = p + I, I = 0) : I + p > f && (b = f - I), e.isHorizontal() ? (z.style.transform = `translate3d(${I}px, 0, 0)`, z.style.width = `${b}px`) : (z.style.transform = `translate3d(0px, ${I}px, 0)`, z.style.height = `${b}px`), L.hide && (clearTimeout(a), D.style.opacity = 1, a = setTimeout(() => {
2720
- D.style.opacity = 0, D.style.transitionDuration = "400ms";
2721
- }, 1e3));
2722
- }
2723
- function m(x) {
2724
- !e.params.scrollbar.el || !e.scrollbar.el || (e.scrollbar.dragEl.style.transitionDuration = `${x}ms`);
2725
- }
2726
- function g() {
2727
- if (!e.params.scrollbar.el || !e.scrollbar.el) return;
2728
- const {
2729
- scrollbar: x
2730
- } = e, {
2731
- dragEl: M,
2732
- el: z
2733
- } = x;
2734
- M.style.width = "", M.style.height = "", f = e.isHorizontal() ? z.offsetWidth : z.offsetHeight, h = e.size / (e.virtualSize + e.params.slidesOffsetBefore - (e.params.centeredSlides ? e.snapGrid[0] : 0)), e.params.scrollbar.dragSize === "auto" ? p = f * h : p = parseInt(e.params.scrollbar.dragSize, 10), e.isHorizontal() ? M.style.width = `${p}px` : M.style.height = `${p}px`, h >= 1 ? z.style.display = "none" : z.style.display = "", e.params.scrollbar.hide && (z.style.opacity = 0), e.params.watchOverflow && e.enabled && x.el.classList[e.isLocked ? "add" : "remove"](e.params.scrollbar.lockClass);
2735
- }
2736
- function E(x) {
2737
- return e.isHorizontal() ? x.clientX : x.clientY;
2738
- }
2739
- function y(x) {
2740
- const {
2741
- scrollbar: M,
2742
- rtlTranslate: z
2743
- } = e, {
2744
- el: D
2745
- } = M;
2746
- let L;
2747
- L = (E(x) - je(D)[e.isHorizontal() ? "left" : "top"] - (l !== null ? l : p / 2)) / (f - p), L = Math.max(Math.min(L, 1), 0), z && (L = 1 - L);
2748
- const w = e.minTranslate() + (e.maxTranslate() - e.minTranslate()) * L;
2749
- e.updateProgress(w), e.setTranslate(w), e.updateActiveIndex(), e.updateSlidesClasses();
2750
- }
2751
- function c(x) {
2752
- const M = e.params.scrollbar, {
2753
- scrollbar: z,
2754
- wrapperEl: D
2755
- } = e, {
2756
- el: L,
2757
- dragEl: w
2758
- } = z;
2759
- o = !0, l = x.target === w ? E(x) - x.target.getBoundingClientRect()[e.isHorizontal() ? "left" : "top"] : null, x.preventDefault(), x.stopPropagation(), D.style.transitionDuration = "100ms", w.style.transitionDuration = "100ms", y(x), clearTimeout(d), L.style.transitionDuration = "0ms", M.hide && (L.style.opacity = 1), e.params.cssMode && (e.wrapperEl.style["scroll-snap-type"] = "none"), n("scrollbarDragStart", x);
2760
- }
2761
- function u(x) {
2762
- const {
2763
- scrollbar: M,
2764
- wrapperEl: z
2765
- } = e, {
2766
- el: D,
2767
- dragEl: L
2768
- } = M;
2769
- o && (x.preventDefault && x.cancelable ? x.preventDefault() : x.returnValue = !1, y(x), z.style.transitionDuration = "0ms", D.style.transitionDuration = "0ms", L.style.transitionDuration = "0ms", n("scrollbarDragMove", x));
2770
- }
2771
- function v(x) {
2772
- const M = e.params.scrollbar, {
2773
- scrollbar: z,
2774
- wrapperEl: D
2775
- } = e, {
2776
- el: L
2777
- } = z;
2778
- o && (o = !1, e.params.cssMode && (e.wrapperEl.style["scroll-snap-type"] = "", D.style.transitionDuration = ""), M.hide && (clearTimeout(d), d = ie(() => {
2779
- L.style.opacity = 0, L.style.transitionDuration = "400ms";
2780
- }, 1e3)), n("scrollbarDragEnd", x), M.snapOnRelease && e.slideToClosest());
2781
- }
2782
- function T(x) {
2783
- const {
2784
- scrollbar: M,
2785
- params: z
2786
- } = e, D = M.el;
2787
- if (!D) return;
2788
- const L = D, w = z.passiveListeners ? {
2789
- passive: !1,
2790
- capture: !1
2791
- } : !1, b = z.passiveListeners ? {
2792
- passive: !0,
2793
- capture: !1
2794
- } : !1;
2795
- if (!L) return;
2796
- const I = x === "on" ? "addEventListener" : "removeEventListener";
2797
- L[I]("pointerdown", c, w), r[I]("pointermove", u, w), r[I]("pointerup", v, b);
2798
- }
2799
- function P() {
2800
- !e.params.scrollbar.el || !e.scrollbar.el || T("on");
2801
- }
2802
- function B() {
2803
- !e.params.scrollbar.el || !e.scrollbar.el || T("off");
2804
- }
2805
- function O() {
2806
- const {
2807
- scrollbar: x,
2808
- el: M
2809
- } = e;
2810
- e.params.scrollbar = he(e, e.originalParams.scrollbar, e.params.scrollbar, {
2811
- el: "swiper-scrollbar"
2812
- });
2813
- const z = e.params.scrollbar;
2814
- if (!z.el) return;
2815
- let D;
2816
- if (typeof z.el == "string" && e.isElement && (D = e.el.querySelector(z.el)), !D && typeof z.el == "string") {
2817
- if (D = r.querySelectorAll(z.el), !D.length) return;
2818
- } else D || (D = z.el);
2819
- e.params.uniqueNavElements && typeof z.el == "string" && D.length > 1 && M.querySelectorAll(z.el).length === 1 && (D = M.querySelector(z.el)), D.length > 0 && (D = D[0]), D.classList.add(e.isHorizontal() ? z.horizontalClass : z.verticalClass);
2820
- let L;
2821
- D && (L = D.querySelector(W(e.params.scrollbar.dragClass)), L || (L = U("div", e.params.scrollbar.dragClass), D.append(L))), Object.assign(x, {
2822
- el: D,
2823
- dragEl: L
2824
- }), z.draggable && P(), D && D.classList[e.enabled ? "remove" : "add"](...Y(e.params.scrollbar.lockClass));
2825
- }
2826
- function A() {
2827
- const x = e.params.scrollbar, M = e.scrollbar.el;
2828
- M && M.classList.remove(...Y(e.isHorizontal() ? x.horizontalClass : x.verticalClass)), B();
2829
- }
2830
- s("changeDirection", () => {
2831
- if (!e.scrollbar || !e.scrollbar.el) return;
2832
- const x = e.params.scrollbar;
2833
- let {
2834
- el: M
2835
- } = e.scrollbar;
2836
- M = G(M), M.forEach((z) => {
2837
- z.classList.remove(x.horizontalClass, x.verticalClass), z.classList.add(e.isHorizontal() ? x.horizontalClass : x.verticalClass);
2838
- });
2839
- }), s("init", () => {
2840
- e.params.scrollbar.enabled === !1 ? k() : (O(), g(), S());
2841
- }), s("update resize observerUpdate lock unlock changeDirection", () => {
2842
- g();
2843
- }), s("setTranslate", () => {
2844
- S();
2845
- }), s("setTransition", (x, M) => {
2846
- m(M);
2847
- }), s("enable disable", () => {
2848
- const {
2849
- el: x
2850
- } = e.scrollbar;
2851
- x && x.classList[e.enabled ? "remove" : "add"](...Y(e.params.scrollbar.lockClass));
2852
- }), s("destroy", () => {
2853
- A();
2854
- });
2855
- const C = () => {
2856
- e.el.classList.remove(...Y(e.params.scrollbar.scrollbarDisabledClass)), e.scrollbar.el && e.scrollbar.el.classList.remove(...Y(e.params.scrollbar.scrollbarDisabledClass)), O(), g(), S();
2857
- }, k = () => {
2858
- e.el.classList.add(...Y(e.params.scrollbar.scrollbarDisabledClass)), e.scrollbar.el && e.scrollbar.el.classList.add(...Y(e.params.scrollbar.scrollbarDisabledClass)), A();
2859
- };
2860
- Object.assign(e.scrollbar, {
2861
- enable: C,
2862
- disable: k,
2863
- updateSize: g,
2864
- setTranslate: S,
2865
- init: O,
2866
- destroy: A
2867
- });
2868
- }
2869
- function ni(i) {
2870
- let {
2871
- swiper: e,
2872
- extendParams: t,
2873
- on: s
2874
- } = i;
2875
- t({
2876
- a11y: {
2877
- enabled: !0,
2878
- notificationClass: "swiper-notification",
2879
- prevSlideMessage: "Previous slide",
2880
- nextSlideMessage: "Next slide",
2881
- firstSlideMessage: "This is the first slide",
2882
- lastSlideMessage: "This is the last slide",
2883
- paginationBulletMessage: "Go to slide {{index}}",
2884
- slideLabelMessage: "{{index}} / {{slidesLength}}",
2885
- containerMessage: null,
2886
- containerRoleDescriptionMessage: null,
2887
- containerRole: null,
2888
- itemRoleDescriptionMessage: null,
2889
- slideRole: "group",
2890
- id: null,
2891
- scrollOnFocus: !0
2892
- }
2893
- }), e.a11y = {
2894
- clicked: !1
2895
- };
2896
- let n = null, r, o, a = (/* @__PURE__ */ new Date()).getTime();
2897
- function d(w) {
2898
- const b = n;
2899
- b.length !== 0 && fe(b, w);
2900
- }
2901
- function l(w) {
2902
- const b = () => Math.round(16 * Math.random()).toString(16);
2903
- return "x".repeat(w).replace(/x/g, b);
2904
- }
2905
- function p(w) {
2906
- w = G(w), w.forEach((b) => {
2907
- b.setAttribute("tabIndex", "0");
2908
- });
2909
- }
2910
- function f(w) {
2911
- w = G(w), w.forEach((b) => {
2912
- b.setAttribute("tabIndex", "-1");
2913
- });
2914
- }
2915
- function h(w, b) {
2916
- w = G(w), w.forEach((I) => {
2917
- I.setAttribute("role", b);
2918
- });
2919
- }
2920
- function S(w, b) {
2921
- w = G(w), w.forEach((I) => {
2922
- I.setAttribute("aria-roledescription", b);
2923
- });
2924
- }
2925
- function m(w, b) {
2926
- w = G(w), w.forEach((I) => {
2927
- I.setAttribute("aria-controls", b);
2928
- });
2929
- }
2930
- function g(w, b) {
2931
- w = G(w), w.forEach((I) => {
2932
- I.setAttribute("aria-label", b);
2933
- });
2934
- }
2935
- function E(w, b) {
2936
- w = G(w), w.forEach((I) => {
2937
- I.setAttribute("id", b);
2938
- });
2939
- }
2940
- function y(w, b) {
2941
- w = G(w), w.forEach((I) => {
2942
- I.setAttribute("aria-live", b);
2943
- });
2944
- }
2945
- function c(w) {
2946
- w = G(w), w.forEach((b) => {
2947
- b.setAttribute("aria-disabled", !0);
2948
- });
2949
- }
2950
- function u(w) {
2951
- w = G(w), w.forEach((b) => {
2952
- b.setAttribute("aria-disabled", !1);
2953
- });
2954
- }
2955
- function v(w) {
2956
- if (w.keyCode !== 13 && w.keyCode !== 32) return;
2957
- const b = e.params.a11y, I = w.target;
2958
- if (!(e.pagination && e.pagination.el && (I === e.pagination.el || e.pagination.el.contains(w.target)) && !w.target.matches(W(e.params.pagination.bulletClass)))) {
2959
- if (e.navigation && e.navigation.prevEl && e.navigation.nextEl) {
2960
- const $ = G(e.navigation.prevEl);
2961
- G(e.navigation.nextEl).includes(I) && (e.isEnd && !e.params.loop || e.slideNext(), e.isEnd ? d(b.lastSlideMessage) : d(b.nextSlideMessage)), $.includes(I) && (e.isBeginning && !e.params.loop || e.slidePrev(), e.isBeginning ? d(b.firstSlideMessage) : d(b.prevSlideMessage));
2962
- }
2963
- e.pagination && I.matches(W(e.params.pagination.bulletClass)) && I.click();
2964
- }
2965
- }
2966
- function T() {
2967
- if (e.params.loop || e.params.rewind || !e.navigation) return;
2968
- const {
2969
- nextEl: w,
2970
- prevEl: b
2971
- } = e.navigation;
2972
- b && (e.isBeginning ? (c(b), f(b)) : (u(b), p(b))), w && (e.isEnd ? (c(w), f(w)) : (u(w), p(w)));
2973
- }
2974
- function P() {
2975
- return e.pagination && e.pagination.bullets && e.pagination.bullets.length;
2976
- }
2977
- function B() {
2978
- return P() && e.params.pagination.clickable;
2979
- }
2980
- function O() {
2981
- const w = e.params.a11y;
2982
- P() && e.pagination.bullets.forEach((b) => {
2983
- e.params.pagination.clickable && (p(b), e.params.pagination.renderBullet || (h(b, "button"), g(b, w.paginationBulletMessage.replace(/\{\{index\}\}/, K(b) + 1)))), b.matches(W(e.params.pagination.bulletActiveClass)) ? b.setAttribute("aria-current", "true") : b.removeAttribute("aria-current");
2984
- });
2985
- }
2986
- const A = (w, b, I) => {
2987
- p(w), w.tagName !== "BUTTON" && (h(w, "button"), w.addEventListener("keydown", v)), g(w, I), m(w, b);
2988
- }, C = (w) => {
2989
- o && o !== w.target && !o.contains(w.target) && (r = !0), e.a11y.clicked = !0;
2990
- }, k = () => {
2991
- r = !1, requestAnimationFrame(() => {
2992
- requestAnimationFrame(() => {
2993
- e.destroyed || (e.a11y.clicked = !1);
2994
- });
2995
- });
2996
- }, x = (w) => {
2997
- a = (/* @__PURE__ */ new Date()).getTime();
2998
- }, M = (w) => {
2999
- if (e.a11y.clicked || !e.params.a11y.scrollOnFocus || (/* @__PURE__ */ new Date()).getTime() - a < 100) return;
3000
- const b = w.target.closest(`.${e.params.slideClass}, swiper-slide`);
3001
- if (!b || !e.slides.includes(b)) return;
3002
- o = b;
3003
- const I = e.slides.indexOf(b) === e.activeIndex, $ = e.params.watchSlidesProgress && e.visibleSlides && e.visibleSlides.includes(b);
3004
- I || $ || w.sourceCapabilities && w.sourceCapabilities.firesTouchEvents || (e.isHorizontal() ? e.el.scrollLeft = 0 : e.el.scrollTop = 0, requestAnimationFrame(() => {
3005
- r || (e.params.loop ? e.slideToLoop(parseInt(b.getAttribute("data-swiper-slide-index")), 0) : e.slideTo(e.slides.indexOf(b), 0), r = !1);
3006
- }));
3007
- }, z = () => {
3008
- const w = e.params.a11y;
3009
- w.itemRoleDescriptionMessage && S(e.slides, w.itemRoleDescriptionMessage), w.slideRole && h(e.slides, w.slideRole);
3010
- const b = e.slides.length;
3011
- w.slideLabelMessage && e.slides.forEach((I, $) => {
3012
- const _ = e.params.loop ? parseInt(I.getAttribute("data-swiper-slide-index"), 10) : $, j = w.slideLabelMessage.replace(/\{\{index\}\}/, _ + 1).replace(/\{\{slidesLength\}\}/, b);
3013
- g(I, j);
3014
- });
3015
- }, D = () => {
3016
- const w = e.params.a11y;
3017
- e.el.append(n);
3018
- const b = e.el;
3019
- w.containerRoleDescriptionMessage && S(b, w.containerRoleDescriptionMessage), w.containerMessage && g(b, w.containerMessage), w.containerRole && h(b, w.containerRole);
3020
- const I = e.wrapperEl, $ = w.id || I.getAttribute("id") || `swiper-wrapper-${l(16)}`, _ = e.params.autoplay && e.params.autoplay.enabled ? "off" : "polite";
3021
- E(I, $), y(I, _), z();
3022
- let {
3023
- nextEl: j,
3024
- prevEl: Z
3025
- } = e.navigation ? e.navigation : {};
3026
- j = G(j), Z = G(Z), j && j.forEach((Q) => A(Q, $, w.nextSlideMessage)), Z && Z.forEach((Q) => A(Q, $, w.prevSlideMessage)), B() && G(e.pagination.el).forEach((Ae) => {
3027
- Ae.addEventListener("keydown", v);
3028
- }), R().addEventListener("visibilitychange", x), e.el.addEventListener("focus", M, !0), e.el.addEventListener("focus", M, !0), e.el.addEventListener("pointerdown", C, !0), e.el.addEventListener("pointerup", k, !0);
3029
- };
3030
- function L() {
3031
- n && n.remove();
3032
- let {
3033
- nextEl: w,
3034
- prevEl: b
3035
- } = e.navigation ? e.navigation : {};
3036
- w = G(w), b = G(b), w && w.forEach(($) => $.removeEventListener("keydown", v)), b && b.forEach(($) => $.removeEventListener("keydown", v)), B() && G(e.pagination.el).forEach((_) => {
3037
- _.removeEventListener("keydown", v);
3038
- }), R().removeEventListener("visibilitychange", x), e.el && typeof e.el != "string" && (e.el.removeEventListener("focus", M, !0), e.el.removeEventListener("pointerdown", C, !0), e.el.removeEventListener("pointerup", k, !0));
3039
- }
3040
- s("beforeInit", () => {
3041
- n = U("span", e.params.a11y.notificationClass), n.setAttribute("aria-live", "assertive"), n.setAttribute("aria-atomic", "true");
3042
- }), s("afterInit", () => {
3043
- e.params.a11y.enabled && D();
3044
- }), s("slidesLengthChange snapGridLengthChange slidesGridLengthChange", () => {
3045
- e.params.a11y.enabled && z();
3046
- }), s("fromEdge toEdge afterInit lock unlock", () => {
3047
- e.params.a11y.enabled && T();
3048
- }), s("paginationUpdate", () => {
3049
- e.params.a11y.enabled && O();
3050
- }), s("destroy", () => {
3051
- e.params.a11y.enabled && L();
3052
- });
3053
- }
3054
- function ai(i) {
3055
- let {
3056
- swiper: e,
3057
- extendParams: t,
3058
- on: s,
3059
- emit: n,
3060
- params: r
3061
- } = i;
3062
- e.autoplay = {
3063
- running: !1,
3064
- paused: !1,
3065
- timeLeft: 0
3066
- }, t({
3067
- autoplay: {
3068
- enabled: !1,
3069
- delay: 3e3,
3070
- waitForTransition: !0,
3071
- disableOnInteraction: !1,
3072
- stopOnLastSlide: !1,
3073
- reverseDirection: !1,
3074
- pauseOnMouseEnter: !1
3075
- }
3076
- });
3077
- let o, a, d = r && r.autoplay ? r.autoplay.delay : 3e3, l = r && r.autoplay ? r.autoplay.delay : 3e3, p, f = (/* @__PURE__ */ new Date()).getTime(), h, S, m, g, E, y, c;
3078
- function u(b) {
3079
- !e || e.destroyed || !e.wrapperEl || b.target === e.wrapperEl && (e.wrapperEl.removeEventListener("transitionend", u), !(c || b.detail && b.detail.bySwiperTouchMove) && C());
3080
- }
3081
- const v = () => {
3082
- if (e.destroyed || !e.autoplay.running) return;
3083
- e.autoplay.paused ? h = !0 : h && (l = p, h = !1);
3084
- const b = e.autoplay.paused ? p : f + l - (/* @__PURE__ */ new Date()).getTime();
3085
- e.autoplay.timeLeft = b, n("autoplayTimeLeft", b, b / d), a = requestAnimationFrame(() => {
3086
- v();
3087
- });
3088
- }, T = () => {
3089
- let b;
3090
- return e.virtual && e.params.virtual.enabled ? b = e.slides.find(($) => $.classList.contains("swiper-slide-active")) : b = e.slides[e.activeIndex], b ? parseInt(b.getAttribute("data-swiper-autoplay"), 10) : void 0;
3091
- }, P = (b) => {
3092
- if (e.destroyed || !e.autoplay.running) return;
3093
- cancelAnimationFrame(a), v();
3094
- let I = typeof b > "u" ? e.params.autoplay.delay : b;
3095
- d = e.params.autoplay.delay, l = e.params.autoplay.delay;
3096
- const $ = T();
3097
- !Number.isNaN($) && $ > 0 && typeof b > "u" && (I = $, d = $, l = $), p = I;
3098
- const _ = e.params.speed, j = () => {
3099
- !e || e.destroyed || (e.params.autoplay.reverseDirection ? !e.isBeginning || e.params.loop || e.params.rewind ? (e.slidePrev(_, !0, !0), n("autoplay")) : e.params.autoplay.stopOnLastSlide || (e.slideTo(e.slides.length - 1, _, !0, !0), n("autoplay")) : !e.isEnd || e.params.loop || e.params.rewind ? (e.slideNext(_, !0, !0), n("autoplay")) : e.params.autoplay.stopOnLastSlide || (e.slideTo(0, _, !0, !0), n("autoplay")), e.params.cssMode && (f = (/* @__PURE__ */ new Date()).getTime(), requestAnimationFrame(() => {
3100
- P();
3101
- })));
3102
- };
3103
- return I > 0 ? (clearTimeout(o), o = setTimeout(() => {
3104
- j();
3105
- }, I)) : requestAnimationFrame(() => {
3106
- j();
3107
- }), I;
3108
- }, B = () => {
3109
- f = (/* @__PURE__ */ new Date()).getTime(), e.autoplay.running = !0, P(), n("autoplayStart");
3110
- }, O = () => {
3111
- e.autoplay.running = !1, clearTimeout(o), cancelAnimationFrame(a), n("autoplayStop");
3112
- }, A = (b, I) => {
3113
- if (e.destroyed || !e.autoplay.running) return;
3114
- clearTimeout(o), b || (y = !0);
3115
- const $ = () => {
3116
- n("autoplayPause"), e.params.autoplay.waitForTransition ? e.wrapperEl.addEventListener("transitionend", u) : C();
3117
- };
3118
- if (e.autoplay.paused = !0, I) {
3119
- E && (p = e.params.autoplay.delay), E = !1, $();
3120
- return;
3121
- }
3122
- p = (p || e.params.autoplay.delay) - ((/* @__PURE__ */ new Date()).getTime() - f), !(e.isEnd && p < 0 && !e.params.loop) && (p < 0 && (p = 0), $());
3123
- }, C = () => {
3124
- e.isEnd && p < 0 && !e.params.loop || e.destroyed || !e.autoplay.running || (f = (/* @__PURE__ */ new Date()).getTime(), y ? (y = !1, P(p)) : P(), e.autoplay.paused = !1, n("autoplayResume"));
3125
- }, k = () => {
3126
- if (e.destroyed || !e.autoplay.running) return;
3127
- const b = R();
3128
- b.visibilityState === "hidden" && (y = !0, A(!0)), b.visibilityState === "visible" && C();
3129
- }, x = (b) => {
3130
- b.pointerType === "mouse" && (y = !0, c = !0, !(e.animating || e.autoplay.paused) && A(!0));
3131
- }, M = (b) => {
3132
- b.pointerType === "mouse" && (c = !1, e.autoplay.paused && C());
3133
- }, z = () => {
3134
- e.params.autoplay.pauseOnMouseEnter && (e.el.addEventListener("pointerenter", x), e.el.addEventListener("pointerleave", M));
3135
- }, D = () => {
3136
- e.el && typeof e.el != "string" && (e.el.removeEventListener("pointerenter", x), e.el.removeEventListener("pointerleave", M));
3137
- }, L = () => {
3138
- R().addEventListener("visibilitychange", k);
3139
- }, w = () => {
3140
- R().removeEventListener("visibilitychange", k);
3141
- };
3142
- s("init", () => {
3143
- e.params.autoplay.enabled && (z(), L(), B());
3144
- }), s("destroy", () => {
3145
- D(), w(), e.autoplay.running && O();
3146
- }), s("_freeModeStaticRelease", () => {
3147
- (m || y) && C();
3148
- }), s("_freeModeNoMomentumRelease", () => {
3149
- e.params.autoplay.disableOnInteraction ? O() : A(!0, !0);
3150
- }), s("beforeTransitionStart", (b, I, $) => {
3151
- e.destroyed || !e.autoplay.running || ($ || !e.params.autoplay.disableOnInteraction ? A(!0, !0) : O());
3152
- }), s("sliderFirstMove", () => {
3153
- if (!(e.destroyed || !e.autoplay.running)) {
3154
- if (e.params.autoplay.disableOnInteraction) {
3155
- O();
3156
- return;
3157
- }
3158
- S = !0, m = !1, y = !1, g = setTimeout(() => {
3159
- y = !0, m = !0, A(!0);
3160
- }, 200);
3161
- }
3162
- }), s("touchEnd", () => {
3163
- if (!(e.destroyed || !e.autoplay.running || !S)) {
3164
- if (clearTimeout(g), clearTimeout(o), e.params.autoplay.disableOnInteraction) {
3165
- m = !1, S = !1;
3166
- return;
3167
- }
3168
- m && e.params.cssMode && C(), m = !1, S = !1;
3169
- }
3170
- }), s("slideChange", () => {
3171
- e.destroyed || !e.autoplay.running || (E = !0);
3172
- }), Object.assign(e.autoplay, {
3173
- start: B,
3174
- stop: O,
3175
- pause: A,
3176
- resume: C
3177
- });
3178
- }
3179
- function oi(i) {
3180
- let {
3181
- swiper: e,
3182
- extendParams: t,
3183
- on: s
3184
- } = i;
3185
- t({
3186
- grid: {
3187
- rows: 1,
3188
- fill: "column"
3189
- }
3190
- });
3191
- let n, r, o, a;
3192
- const d = () => {
3193
- let g = e.params.spaceBetween;
3194
- return typeof g == "string" && g.indexOf("%") >= 0 ? g = parseFloat(g.replace("%", "")) / 100 * e.size : typeof g == "string" && (g = parseFloat(g)), g;
3195
- }, l = (g) => {
3196
- const {
3197
- slidesPerView: E
3198
- } = e.params, {
3199
- rows: y,
3200
- fill: c
3201
- } = e.params.grid, u = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : g.length;
3202
- o = Math.floor(u / y), Math.floor(u / y) === u / y ? n = u : n = Math.ceil(u / y) * y, E !== "auto" && c === "row" && (n = Math.max(n, E * y)), r = n / y;
3203
- }, p = () => {
3204
- e.slides && e.slides.forEach((g) => {
3205
- g.swiperSlideGridSet && (g.style.height = "", g.style[e.getDirectionLabel("margin-top")] = "");
3206
- });
3207
- }, f = (g, E, y) => {
3208
- const {
3209
- slidesPerGroup: c
3210
- } = e.params, u = d(), {
3211
- rows: v,
3212
- fill: T
3213
- } = e.params.grid, P = e.virtual && e.params.virtual.enabled ? e.virtual.slides.length : y.length;
3214
- let B, O, A;
3215
- if (T === "row" && c > 1) {
3216
- const C = Math.floor(g / (c * v)), k = g - v * c * C, x = C === 0 ? c : Math.min(Math.ceil((P - C * v * c) / v), c);
3217
- A = Math.floor(k / x), O = k - A * x + C * c, B = O + A * n / v, E.style.order = B;
3218
- } else T === "column" ? (O = Math.floor(g / v), A = g - O * v, (O > o || O === o && A === v - 1) && (A += 1, A >= v && (A = 0, O += 1))) : (A = Math.floor(g / r), O = g - A * r);
3219
- E.row = A, E.column = O, E.style.height = `calc((100% - ${(v - 1) * u}px) / ${v})`, E.style[e.getDirectionLabel("margin-top")] = A !== 0 ? u && `${u}px` : "", E.swiperSlideGridSet = !0;
3220
- }, h = (g, E) => {
3221
- const {
3222
- centeredSlides: y,
3223
- roundLengths: c
3224
- } = e.params, u = d(), {
3225
- rows: v
3226
- } = e.params.grid;
3227
- if (e.virtualSize = (g + u) * n, e.virtualSize = Math.ceil(e.virtualSize / v) - u, e.params.cssMode || (e.wrapperEl.style[e.getDirectionLabel("width")] = `${e.virtualSize + u}px`), y) {
3228
- const T = [];
3229
- for (let P = 0; P < E.length; P += 1) {
3230
- let B = E[P];
3231
- c && (B = Math.floor(B)), E[P] < e.virtualSize + E[0] && T.push(B);
3232
- }
3233
- E.splice(0, E.length), E.push(...T);
3234
- }
3235
- }, S = () => {
3236
- a = e.params.grid && e.params.grid.rows > 1;
3237
- }, m = () => {
3238
- const {
3239
- params: g,
3240
- el: E
3241
- } = e, y = g.grid && g.grid.rows > 1;
3242
- a && !y ? (E.classList.remove(`${g.containerModifierClass}grid`, `${g.containerModifierClass}grid-column`), o = 1, e.emitContainerClasses()) : !a && y && (E.classList.add(`${g.containerModifierClass}grid`), g.grid.fill === "column" && E.classList.add(`${g.containerModifierClass}grid-column`), e.emitContainerClasses()), a = y;
3243
- };
3244
- s("init", S), s("update", m), e.grid = {
3245
- initSlides: l,
3246
- unsetSlides: p,
3247
- updateSlide: f,
3248
- updateWrapperSize: h
3249
- };
3250
- }
3251
- const li = '.prism-carousel{--swiper-max-width:1536px;--tw-bg-opacity:1;display:block;max-width:var(--swiper-max-width);position:relative;width:100%}.pagination-fraction{display:flex;font-family:var(--prism-font-callout-md-family);font-size:var(--prism-font-callout-md-size);font-weight:var(--prism-font-callout-md-weight);gap:var(--prism-spacer-size-xxs);letter-spacing:var(--prism-font-callout-md-tracking);line-height:var(--prism-font-callout-md-leading);text-transform:var(--prism-font-callout-md-transform)}.vh{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;position:absolute;white-space:nowrap;width:1px}.swiper-container,.vh{overflow:hidden;padding:0}.swiper-container{display:block;height:100%;list-style:none;margin-left:auto;margin-right:auto;position:relative;width:100%;z-index:1}.swiper-controls{display:grid;grid-template-areas:". .";grid-template-columns:1fr -webkit-min-content;grid-template-columns:1fr min-content;grid-template-rows:1fr;padding-bottom:.75rem;padding-top:.75rem}.swiper-controls.swiper-direction-vertical{display:grid;grid-template-areas:"." ".";grid-template-columns:1fr;grid-template-rows:1fr -webkit-min-content;grid-template-rows:1fr min-content;margin-bottom:0;margin-top:0;padding:.25rem}.swiper-controls.swiper-direction-vertical .swiper-controls-pagination{flex-direction:column}.swiper-controls:not(.swiper-direction-vertical) .next-button,.swiper-controls:not(.swiper-direction-vertical) .previous-button{margin-left:.25rem;margin-right:.25rem}.swiper-controls:not(.swiper-direction-horizontal) .next-button,.swiper-controls:not(.swiper-direction-horizontal) .previous-button{margin-bottom:.25rem;margin-top:.25rem}.swiper-controls:not(.swiper-direction-vertical).centered .next-button,.swiper-controls:not(.swiper-direction-vertical).centered .previous-button{position:absolute;top:calc(50% - var(--swiper-control-height))}.swiper-controls:not(.swiper-direction-vertical).centered .next-button{right:0}.swiper-controls:not(.swiper-direction-vertical).centered .previous-button{left:0}.swiper-controls prism-button>button.fill{--prism-button-spacing-padding:0.75rem;border-radius:50%;box-shadow:var(--prism-shadow-xs-base)}.swiper-direction-vertical{display:flex}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{box-sizing:initial;display:flex;height:100%;position:relative;transition-property:transform;width:100%;z-index:1}.swiper-controls-pagination{align-items:center;display:flex;justify-content:center;z-index:10}.swiper-android .swiper-slide,.swiper-wrapper{transform:translateZ(0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;height:unset;position:relative;transition-property:transform;width:100%}.swiper-slide-invisible-blank{visibility:hidden}.swiper-autoheight,.swiper-autoheight .swiper-slide{height:auto}.swiper-autoheight .swiper-wrapper{align-items:flex-start;transition-property:transform,height}.swiper-backface-hidden .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{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,.swiper-3d .swiper-wrapper{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{height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:10}.swiper-3d .swiper-slide-shadow{background:rgba(0,0,0,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(270deg,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-right{background-image:linear-gradient(90deg,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(0deg,rgba(0,0,0,.5),transparent)}.swiper-3d .swiper-slide-shadow-bottom{background-image:linear-gradient(180deg,rgba(0,0,0,.5),transparent)}.swiper-css-mode>.swiper-wrapper{-ms-overflow-style:none;overflow:auto;scrollbar-width: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{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper:before{content:"";flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-left: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{margin-top:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper:before{height:var(--swiper-centered-offset-after);min-width:1px;width:100%}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper:after{content:"";left:0;pointer-events:none;position:absolute;top:0}.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{height:var(--swiper-virtual-size);width:1px}.swiper-button-lock{display:none}.swiper-pagination{text-align:center;transform:translateZ(0);transition:opacity .3s}.swiper-pagination.swiper-pagination-hidden{opacity:0}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{align-items:center;display:flex;justify-content:center}.swiper-pagination-bullet{display:inline-block;height:1.5rem;position:relative;width:1.5rem}.swiper-pagination-bullet:after{border-color:var(--prism-color-border-brand-primary-base);border-radius:50%;border-style:solid;border-width:1px;content:"";display:block;height:.75rem;margin:auto;transition:all .2s ease-in;transition-property:background-color,border-color,outline,outline-color,outline-size;width:.75rem}.swiper-pagination-bullet:hover:after{background-color:var(--prism-color-fill-brand-primary-hover)}button.swiper-pagination-bullet{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;box-shadow:none;margin:0;outline:none;padding:0}button.swiper-pagination-bullet:focus-visible:after{outline-color:var(--prism-color-border-brand-primary-base);outline-offset:2px;outline-style:solid;outline-width:1px}.swiper-pagination-clickable .swiper-pagination-bullet{cursor:pointer}.swiper-pagination-bullet:only-child{display:none!important}.swiper-pagination-bullet-active:after{background-color:var(--prism-color-fill-brand-primary-base);opacity:1}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{display:block;margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top: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;transition:transform .2s,top .2s}.swiper-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{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{transition:transform .2s,left .2s}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:transform .2s,right .2s}.swiper-pagination-progressbar{background:rgba(0,0,0,.25);position:absolute}.swiper-pagination-progressbar .swiper-pagination-progressbar-fill{background-color:var(--prism-color-fill-brand-primary-base);height:100%;left:0;position:absolute;top:0;transform:scale(0);transform-origin:left top;width:100%}.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill{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{height:4px;left:0;top:0;width:100%}.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{height:100%;left:0;top:0;width:4px}.swiper-pagination-lock{display:none}.swiper-scrollbar{background:rgba(0,0,0,.1);border-radius:10px;position:relative;touch-action:none}.swiper-horizontal>.swiper-scrollbar{bottom:3px;height:5px;left:1%;position:absolute;width:98%;z-index:50}.swiper-vertical>.swiper-scrollbar{height:98%;position:absolute;right:3px;top:1%;width:5px;z-index:50}.swiper-scrollbar-drag{background:rgba(0,0,0,.5);border-radius:10px;height:100%;left:0;position:relative;top:0;width:100%}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{align-items:center;display:flex;height:100%;justify-content:center;text-align:center;width:100%}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-height:100%;max-width:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.swiper-lazy-preloader{border-color:var(--prism-color-border-brand-primary-base);border-radius:50%;border-style:solid;border-top:solid transparent;border-width:4px;box-sizing:border-box;height:42px;left:50%;margin-left:-21px;margin-top:-21px;position:absolute;top:50%;transform-origin:50%;width:42px;z-index:10}.swiper-slide-visible .swiper-lazy-preloader{animation:swiper-preloader-spin 1s linear infinite}.swiper-lazy-preloader-white{--swiper-preloader-color:#fff}.swiper-lazy-preloader-black{--swiper-preloader-color:#000}@keyframes swiper-preloader-spin{to{transform:rotate(1turn)}}.swiper .swiper-notification{left:0;opacity:0;pointer-events:none;position:absolute;top:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{margin:0 auto;transition-timing-function:ease-out}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-flow:column;flex-wrap:wrap}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;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{-webkit-backface-visibility:hidden;backface-visibility:hidden;height:100%;pointer-events:none;transform-origin:0 0;visibility:hidden;width:100%;z-index:1}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{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{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.swiper-cube .swiper-cube-shadow{bottom:0;height:100%;left:0;opacity:.6;position:absolute;width:100%;z-index:0}.swiper-cube .swiper-cube-shadow:before{background:#000;bottom:0;content:"";filter:blur(50px);left:0;position:absolute;right:0;top:0}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;pointer-events:none;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{-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:0}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transform-origin:center bottom}@media (prefers-reduced-motion){.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-pagination,.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:none}.swiper-slide-visible .swiper-lazy-preloader{animation:none}.swiper-button-next,.swiper-button-prev,.swiper-pagination-bullet{transition:none}}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}', di = li;
3252
- var ci = function(i, e) {
3253
- var t = {};
3254
- for (var s in i)
3255
- Object.prototype.hasOwnProperty.call(i, s) && e.indexOf(s) < 0 && (t[s] = i[s]);
3256
- if (i != null && typeof Object.getOwnPropertySymbols == "function")
3257
- for (var n = 0, s = Object.getOwnPropertySymbols(i); n < s.length; n++)
3258
- e.indexOf(s[n]) < 0 && Object.prototype.propertyIsEnumerable.call(i, s[n]) && (t[s[n]] = i[s[n]]);
3259
- return t;
3260
- };
3261
- const pi = class {
3262
- constructor(i) {
3263
- Oe(this, i), this.uid = Ge(), this._slides = (e) => {
3264
- Array.from(e).forEach((t) => {
3265
- t.classList.add("swiper-slide");
3266
- });
3267
- }, this._slideModifications = (e, t) => {
3268
- e.getBoundingClientRect().x > this.el.getBoundingClientRect().width || e.getBoundingClientRect().x < 0 ? (e.setAttribute("aria-hidden", "true"), we(e).forEach((s) => {
3269
- s.setAttribute("tabindex", "-1");
3270
- })) : (e.setAttribute("aria-hidden", "false"), we(e).forEach((s) => {
3271
- s.removeAttribute("tabindex");
3272
- })), e.setAttribute("slide", t.toString());
3273
- }, this.a11yModifications = (e) => {
3274
- e.slides.map((n, r) => {
3275
- r = r + 1, this._slideModifications(n, r);
3276
- });
3277
- const t = [], s = `${this.label} showing slide: `;
3278
- Array.from(e.slides).filter((n) => n.getAttribute("aria-hidden") === "false").forEach((n) => {
3279
- t.push(n.getAttribute("slide") || ""), e.el.setAttribute("aria-label", s + t.join(" , "));
3280
- }), e.wrapperEl.removeAttribute("aria-live");
3281
- }, this._removeAttributes = (e, ...t) => t.forEach((s) => e.removeAttribute(s)), this._swiperSetup = (e) => {
3282
- this._removeAttributes(e.navigation.prevEl, "aria-label", "disabled", "tabindex", "role"), this._removeAttributes(e.navigation.nextEl, "aria-label", "disabled", "tabindex", "role"), e.isBeginning && e.navigation.prevEl.setAttribute("disabled", "true"), e.isEnd && e.navigation.nextEl.setAttribute("disabled", "true");
3283
- }, this._autoPlay = (e) => {
3284
- this.swiper.autoplay.running ? (this.swiper.autoplay.stop(), this.autoplaying = !1) : (this.swiper.autoplay.start(), this.autoplaying = !0);
3285
- }, this.prismId = `prism-carousel-${this.uid}`, this.label = "", this.options = { mousewheel: !0, keyboard: !0 }, this.controlDisplay = "ghost-icon", this.controlTone = "primary", this.controlLayout = "below", this.height = "100%", this.scrollbar = !0, this.autoplaying = !1, this.cssVarSwiperControlHeight = "";
3286
- }
3287
- componentWillRender() {
3288
- this.displayPauseButton = this.options.hasOwnProperty("autoplay"), this.swiperPreviousButton && this.swiperNextButton && (this._removeAttributes(this.swiperPreviousButton, "aria-label", "tabindex", "role"), this._removeAttributes(this.swiperNextButton, "aria-label", "tabindex", "role"));
3289
- }
3290
- componentDidRender() {
3291
- const i = this.options, { modules: e } = i, t = ci(i, ["modules"]), s = [ii, si, ni, ri, ai, oi];
3292
- this.cssVarSwiperControlHeight = `${this.swiperControlBar.getBoundingClientRect().height}px`, this.swiperSlides && (this._slides(this.swiperSlides.children), this.swiperSlides.removeAttribute("aria-live"));
3293
- const n = {
3294
- scrollbar: {
3295
- el: this.swiperScrollbar,
3296
- hide: !0
3297
- }
3298
- };
3299
- this.swiper || (this.swiper = new H(this.swiperContainer, Object.assign(Object.assign(Object.assign(Object.assign({}, n), { breakpointsBase: "container" }), t), { initialSlide: 0, cssMode: !1, pagination: {
3300
- type: typeof t.pagination == "object" && t.pagination.type ? t.pagination.type : "bullets",
3301
- el: this.swiperPagination,
3302
- clickable: !0,
3303
- renderFraction(r, o) {
3304
- return `<div class="pagination-fraction" aria-live="polite"><span class="${r}"></span>
3305
- <span aria-hidden="true">/</span><span class="vh">of</span><span class="${o}"></span></div>`;
3306
- },
3307
- renderBullet: (r, o) => (r = r + 1, `<button role="button" data-testid="slide-${r}-${this.prismId}" aria-label="Go to slide ${r}" class="${o}"></button>`)
3308
- }, navigation: {
3309
- nextEl: this.swiperNextButton,
3310
- prevEl: this.swiperPreviousButton
3311
- }, a11y: {
3312
- slideLabelMessage: "{{index}} of {{slidesLength}}"
3313
- }, modules: [...e || [], ...s], on: {
3314
- init: (r) => {
3315
- this.a11yModifications(r), this._swiperSetup(r);
3316
- },
3317
- slideChangeTransitionEnd: (r) => {
3318
- this.a11yModifications(r), this._swiperSetup(r);
3319
- },
3320
- navigationNext: (r) => {
3321
- r.isEnd && r.navigation.prevEl.setFocus();
3322
- },
3323
- navigationPrev: (r) => {
3324
- r.isBeginning && r.navigation.nextEl.setFocus();
3325
- }
3326
- } })), this.autoplaying = this.swiper.autoplay.running);
3327
- }
3328
- /** Public Method for Accessing the SwiperJS Instance https://swiperjs.com/swiper-api#methods-and-properties */
3329
- async getInstance() {
3330
- return this.swiper;
3331
- }
3332
- render() {
3333
- return F(De, { key: "4f036e048ed9314b1759e167b49d6158a0aa00af", style: { "--swiper-control-height": this.cssVarSwiperControlHeight }, class: { "prism-carousel": !0, "swiper-direction-vertical": this.options.direction === "vertical" } }, F("section", { key: "f18116d7722fedda1bf25371673e1aa420366c98" }, F("slot", { key: "99acf6cd90bb41c19b67ea2b83046e6fd9ba876e", name: "header" }), F("div", { key: "08726738743eb21aaaff57c008ccc4d5f24ac05a", style: { height: this.height }, ref: (i) => this.swiperContainer = i, class: { "swiper-container": !0 }, "aria-label": this.label, id: this.prismId }, F("div", { key: "10b548e594014a89d6593fa778f73e48fc23b059", ref: (i) => this.swiperSlides = i, class: "swiper-wrapper" }, F("slot", { key: "f8260d508628b47c702cd475607eb7e1af827e7c" })), F("div", { key: "bd499a02cb9600c704c7cf7219701bdade63cb26", ref: (i) => this.swiperScrollbar = i, class: "swiper-scrollbar" })), F("div", { key: "e4c7586fa8ba5be6ebcf44f455550a83c16d611d", ref: (i) => this.swiperControlBar = i, class: {
3334
- "swiper-controls": !0,
3335
- "swiper-direction-vertical": this.options.direction === "vertical",
3336
- [this.controlLayout]: !0
3337
- } }, F("div", { key: "c3a48be0c16797acb59a151ed8999232cf31911a", class: "swiper-controls-pagination" }, F("prism-button", { key: "bbf9b0a0e895803f8c53deb633f08d6febaa9e64", size: "xs", "data-testid": `previous-button-${this.prismId}`, class: "previous-button", display: this.controlDisplay, tone: this.controlTone, label: "Previous slide", ref: (i) => this.swiperPreviousButton = i }, F("prism-icon", { key: "9de3cee6c7da9fa9f46d34a52721a77d99958ece", name: this.options.direction === "vertical" ? "caret_up_button" : "caret_left_button" })), F("div", { key: "539df9349c520e1593e855a7d6520f7b4364e5a9", ref: (i) => this.swiperPagination = i, class: "swiper-pagination" }), F("prism-button", { key: "44051de685f10ad5c98fe69e651e3c0752cd7501", size: "xs", "data-testid": `next-button-${this.prismId}`, class: "next-button", display: this.controlDisplay, tone: this.controlTone, label: "Next slide", ref: (i) => this.swiperNextButton = i }, F("prism-icon", { key: "e14ace7623c83c343c8f83bbef4fe80738bb6005", name: this.options.direction === "vertical" ? "caret_down_button" : "caret_right_button" }))), this.displayPauseButton && F("prism-button", { key: "62511b48449cd6c2602777e17b532584cba7eaf2", "data-testid": "pause-play-button", onPrismClick: (i) => this._autoPlay(i), size: "xs", label: `${this.autoplaying ? "pause" : "play"} carousel`, display: "ghost-icon", tone: "primary-brand" }, F("prism-icon", { key: "6f8262725ac3c7b9a811e0e8cddd47b7fa5da4c0", tone: "primary-brand", name: this.autoplaying ? "pause" : "play" })))));
3338
- }
3339
- get el() {
3340
- return Be(this);
3341
- }
3342
- };
3343
- pi.style = di;
3344
- export {
3345
- pi as prism_carousel
3346
- };