js-cloudimage-360-view 4.5.2 → 4.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/js-cloudimage-360-view.min.js +7 -7
- package/dist/react/{ci360-BYB2MAi0.mjs → ci360-CAu4PLFX.mjs} +432 -427
- package/dist/react/ci360-CAu4PLFX.mjs.map +1 -0
- package/dist/react/{ci360-ykJDvJbg.js → ci360-keaPW9wo.js} +7 -7
- package/dist/react/ci360-keaPW9wo.js.map +1 -0
- package/dist/react/index.cjs +1 -1
- package/dist/react/index.js +1 -1
- package/package.json +1 -1
- package/dist/react/ci360-BYB2MAi0.mjs.map +0 -1
- package/dist/react/ci360-ykJDvJbg.js.map +0 -1
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
var
|
|
2
|
-
var
|
|
3
|
-
var ye = (e, t, i) =>
|
|
1
|
+
var fi = Object.defineProperty;
|
|
2
|
+
var vi = (e, t, i) => t in e ? fi(e, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[t] = i;
|
|
3
|
+
var ye = (e, t, i) => vi(e, typeof t != "symbol" ? t + "" : t, i);
|
|
4
4
|
var Xt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
|
|
5
|
-
function
|
|
5
|
+
function gi(e) {
|
|
6
6
|
return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
|
|
7
7
|
}
|
|
8
|
-
var
|
|
9
|
-
return
|
|
8
|
+
var Je = "Expected a function", be = NaN, yi = "[object Symbol]", bi = /^\s+|\s+$/g, wi = /^[-+]0x[0-9a-f]+$/i, Ci = /^0b[01]+$/i, Ii = /^0o[0-7]+$/i, xi = parseInt, Oi = typeof Xt == "object" && Xt && Xt.Object === Object && Xt, Ei = typeof self == "object" && self && self.Object === Object && self, ki = Oi || Ei || Function("return this")(), Ai = Object.prototype, Si = Ai.toString, Ti = Math.max, Li = Math.min, te = function() {
|
|
9
|
+
return ki.Date.now();
|
|
10
10
|
};
|
|
11
|
-
function
|
|
11
|
+
function Pi(e, t, i) {
|
|
12
12
|
var o, s, n, l, a, r, h = 0, c = !1, p = !1, f = !0;
|
|
13
13
|
if (typeof e != "function")
|
|
14
|
-
throw new TypeError(
|
|
15
|
-
t = we(t) || 0, Ft(i) && (c = !!i.leading, p = "maxWait" in i, n = p ?
|
|
14
|
+
throw new TypeError(Je);
|
|
15
|
+
t = we(t) || 0, Ft(i) && (c = !!i.leading, p = "maxWait" in i, n = p ? Ti(we(i.maxWait) || 0, t) : n, f = "trailing" in i ? !!i.trailing : f);
|
|
16
16
|
function u(m) {
|
|
17
|
-
var
|
|
18
|
-
return o = s = void 0, h = m, l = e.apply(I,
|
|
17
|
+
var y = o, I = s;
|
|
18
|
+
return o = s = void 0, h = m, l = e.apply(I, y), l;
|
|
19
19
|
}
|
|
20
|
-
function
|
|
20
|
+
function C(m) {
|
|
21
21
|
return h = m, a = setTimeout(x, t), c ? u(m) : l;
|
|
22
22
|
}
|
|
23
23
|
function b(m) {
|
|
24
|
-
var
|
|
25
|
-
return p ?
|
|
24
|
+
var y = m - r, I = m - h, k = t - y;
|
|
25
|
+
return p ? Li(k, n - I) : k;
|
|
26
26
|
}
|
|
27
27
|
function v(m) {
|
|
28
|
-
var
|
|
29
|
-
return r === void 0 ||
|
|
28
|
+
var y = m - r, I = m - h;
|
|
29
|
+
return r === void 0 || y >= t || y < 0 || p && I >= n;
|
|
30
30
|
}
|
|
31
31
|
function x() {
|
|
32
32
|
var m = te();
|
|
@@ -37,29 +37,29 @@ function Li(e, t, i) {
|
|
|
37
37
|
function E(m) {
|
|
38
38
|
return a = void 0, f && o ? u(m) : (o = s = void 0, l);
|
|
39
39
|
}
|
|
40
|
-
function
|
|
40
|
+
function w() {
|
|
41
41
|
a !== void 0 && clearTimeout(a), h = 0, o = r = s = a = void 0;
|
|
42
42
|
}
|
|
43
|
-
function
|
|
43
|
+
function g() {
|
|
44
44
|
return a === void 0 ? l : E(te());
|
|
45
45
|
}
|
|
46
46
|
function O() {
|
|
47
|
-
var m = te(),
|
|
48
|
-
if (o = arguments, s = this, r = m,
|
|
47
|
+
var m = te(), y = v(m);
|
|
48
|
+
if (o = arguments, s = this, r = m, y) {
|
|
49
49
|
if (a === void 0)
|
|
50
|
-
return
|
|
50
|
+
return C(r);
|
|
51
51
|
if (p)
|
|
52
52
|
return a = setTimeout(x, t), u(r);
|
|
53
53
|
}
|
|
54
54
|
return a === void 0 && (a = setTimeout(x, t)), l;
|
|
55
55
|
}
|
|
56
|
-
return O.cancel =
|
|
56
|
+
return O.cancel = w, O.flush = g, O;
|
|
57
57
|
}
|
|
58
|
-
function
|
|
58
|
+
function Mi(e, t, i) {
|
|
59
59
|
var o = !0, s = !0;
|
|
60
60
|
if (typeof e != "function")
|
|
61
|
-
throw new TypeError(
|
|
62
|
-
return Ft(i) && (o = "leading" in i ? !!i.leading : o, s = "trailing" in i ? !!i.trailing : s),
|
|
61
|
+
throw new TypeError(Je);
|
|
62
|
+
return Ft(i) && (o = "leading" in i ? !!i.leading : o, s = "trailing" in i ? !!i.trailing : s), Pi(e, t, {
|
|
63
63
|
leading: o,
|
|
64
64
|
maxWait: t,
|
|
65
65
|
trailing: s
|
|
@@ -69,16 +69,16 @@ function Ft(e) {
|
|
|
69
69
|
var t = typeof e;
|
|
70
70
|
return !!e && (t == "object" || t == "function");
|
|
71
71
|
}
|
|
72
|
-
function
|
|
72
|
+
function Ri(e) {
|
|
73
73
|
return !!e && typeof e == "object";
|
|
74
74
|
}
|
|
75
|
-
function
|
|
76
|
-
return typeof e == "symbol" ||
|
|
75
|
+
function Yi(e) {
|
|
76
|
+
return typeof e == "symbol" || Ri(e) && Si.call(e) == yi;
|
|
77
77
|
}
|
|
78
78
|
function we(e) {
|
|
79
79
|
if (typeof e == "number")
|
|
80
80
|
return e;
|
|
81
|
-
if (
|
|
81
|
+
if (Yi(e))
|
|
82
82
|
return be;
|
|
83
83
|
if (Ft(e)) {
|
|
84
84
|
var t = typeof e.valueOf == "function" ? e.valueOf() : e;
|
|
@@ -86,20 +86,20 @@ function we(e) {
|
|
|
86
86
|
}
|
|
87
87
|
if (typeof e != "string")
|
|
88
88
|
return e === 0 ? e : +e;
|
|
89
|
-
e = e.replace(
|
|
90
|
-
var i =
|
|
91
|
-
return i ||
|
|
89
|
+
e = e.replace(bi, "");
|
|
90
|
+
var i = Ci.test(e);
|
|
91
|
+
return i || Ii.test(e) ? xi(e.slice(2), i ? 2 : 8) : wi.test(e) ? be : +e;
|
|
92
92
|
}
|
|
93
|
-
var
|
|
94
|
-
const Ce = /* @__PURE__ */
|
|
93
|
+
var Hi = Mi;
|
|
94
|
+
const Ce = /* @__PURE__ */ gi(Hi), H = {
|
|
95
95
|
SPIN_X: "spin-x",
|
|
96
96
|
SPIN_Y: "spin-y",
|
|
97
97
|
SPIN_XY: "spin-xy",
|
|
98
98
|
SPIN_YX: "spin-yx"
|
|
99
|
-
},
|
|
99
|
+
}, Xi = [!1, 0, null, void 0, "false", "0", "null", "undefined"], R = {
|
|
100
100
|
X: "x-axis",
|
|
101
101
|
Y: "y-axis"
|
|
102
|
-
},
|
|
102
|
+
}, Zi = [37, 39], Di = [38, 40], Bi = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), Ie = Bi ? 32 : 10, Wi = 150, Zt = 800, Fi = 150, Vi = 200, xe = 50, Ni = 50, zi = 5, Oe = 5, d = {
|
|
103
103
|
folder: "/",
|
|
104
104
|
apiVersion: "v7",
|
|
105
105
|
filenameX: "image-{index}.jpg",
|
|
@@ -162,7 +162,7 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
162
162
|
onHotspotOpen: null,
|
|
163
163
|
onHotspotClose: null,
|
|
164
164
|
onProductClick: null
|
|
165
|
-
},
|
|
165
|
+
}, $i = (e) => ({
|
|
166
166
|
folder: S(e, "folder", d.folder),
|
|
167
167
|
apiVersion: S(e, "api-version", d.apiVersion),
|
|
168
168
|
filenameX: S(e, "filename") || S(e, "filename-x") || d.filenameX,
|
|
@@ -212,14 +212,14 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
212
212
|
aspectRatio: S(e, "aspect-ratio", d.aspectRatio),
|
|
213
213
|
cropAspectRatio: S(e, "crop-aspect-ratio", d.cropAspectRatio),
|
|
214
214
|
cropGravity: S(e, "crop-gravity", d.cropGravity)
|
|
215
|
-
}),
|
|
215
|
+
}), ji = (e) => {
|
|
216
216
|
const t = [];
|
|
217
217
|
e.amountX !== void 0 && e.amountX < 0 && t.push("amountX should be a positive number"), e.amountY !== void 0 && e.amountY < 0 && t.push("amountY should be a positive number"), e.speed !== void 0 && e.speed <= 0 && t.push("speed should be a positive number"), e.dragSpeed !== void 0 && e.dragSpeed <= 0 && t.push("dragSpeed should be a positive number"), e.pointerZoom !== void 0 && e.pointerZoom !== 0 && (e.pointerZoom < 1 || e.pointerZoom > 5) && t.push("pointerZoom should be between 1 and 5 (or 0 to disable)"), e.magnifier !== void 0 && e.magnifier !== null && e.magnifier !== 0 && (e.magnifier < 1 || e.magnifier > 5) && t.push("magnifier should be between 1 and 5 (or 0/null to disable)"), !e.folder && !e.imageListX && !e.imageListY && t.push("Either folder or imageListX/imageListY is required"), e.folder && !e.amountX && !e.imageListX && t.push("amountX is required when using folder (unless imageListX is provided)");
|
|
218
218
|
const i = ["spin-x", "spin-y", "spin-xy", "spin-yx"];
|
|
219
219
|
return e.autoplayBehavior && !i.includes(e.autoplayBehavior) && t.push(`autoplayBehavior should be one of: ${i.join(", ")}`), t.forEach((o) => {
|
|
220
220
|
console.warn(`CloudImage 360: ${o}`);
|
|
221
221
|
}), t.length === 0;
|
|
222
|
-
},
|
|
222
|
+
}, Gi = (e) => (ji(e), {
|
|
223
223
|
folder: e.folder || d.folder,
|
|
224
224
|
apiVersion: e.apiVersion || d.apiVersion,
|
|
225
225
|
filenameX: e.filenameX || e.filename || d.filenameX,
|
|
@@ -286,28 +286,33 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
286
286
|
if (!(e.hasAttribute(t) || e.hasAttribute(`data-${t}`))) return i;
|
|
287
287
|
const s = S(e, t, null);
|
|
288
288
|
return s !== "false" && s !== "0";
|
|
289
|
-
}, Dt = (e, t) => S(e, t, null) === "false",
|
|
289
|
+
}, Dt = (e, t) => S(e, t, null) === "false", _i = (e = 1) => {
|
|
290
290
|
const t = Math.round(window.devicePixelRatio || 1);
|
|
291
291
|
return parseInt(e) * t;
|
|
292
|
-
},
|
|
292
|
+
}, Ui = (e, t, i) => new URL(e).origin.includes("cloudimg") ? e : `https://${t}.cloudimg.io/${i}${e}`, Ee = (e, t) => e ? `ar=${e}&gravity=${t || "auto"}` : "", Ki = ({ ciTransformation: e, responsiveWidth: t, ciFilters: i }) => {
|
|
293
293
|
const o = `width=${t}`, s = e || o, n = i ? `&f=${i}` : "";
|
|
294
294
|
return `${s}${n}`;
|
|
295
295
|
}, Ct = (e, t) => {
|
|
296
296
|
const { folder: i, apiVersion: o, filename: s = "", ciParams: n } = e, { ciToken: l, ciFilters: a, ciTransformation: r, cropAspectRatio: h, cropGravity: c } = n || {}, p = `${i}${s}`;
|
|
297
|
-
if (!l || !t)
|
|
298
|
-
|
|
297
|
+
if (!l || !t) {
|
|
298
|
+
const w = Ee(h, c);
|
|
299
|
+
if (!w) return p;
|
|
300
|
+
const g = p.includes("?") ? "&" : "?";
|
|
301
|
+
return `${p}${g}${w}`;
|
|
302
|
+
}
|
|
303
|
+
const f = Xi.includes(o) ? null : o, u = f ? `${f}/` : "", C = _i(t), b = Ui(p, l, u), v = Ki({
|
|
299
304
|
ciTransformation: r,
|
|
300
|
-
responsiveWidth:
|
|
305
|
+
responsiveWidth: C,
|
|
301
306
|
ciFilters: a
|
|
302
|
-
}), x = h
|
|
307
|
+
}), x = Ee(h, c), E = [v, x].filter(Boolean).join("&");
|
|
303
308
|
return `${b}${E ? "?" : ""}${E}`;
|
|
304
|
-
},
|
|
309
|
+
}, qi = (e, t, i) => {
|
|
305
310
|
const [o, s] = e.split("?"), n = `${t}=${encodeURIComponent(i)}`;
|
|
306
311
|
if (!s)
|
|
307
312
|
return `${o}?${n}`;
|
|
308
313
|
const l = new URLSearchParams(s);
|
|
309
314
|
return l.set(t, i), `${o}?${l.toString()}`;
|
|
310
|
-
},
|
|
315
|
+
}, Ji = (e, t) => qi(e, "width", t), Qe = (e, t = 0) => (e += "", e.length >= t ? e : new Array(t - e.length + 1).join("0") + e), Qi = (e, { amount: t = 0, indexZeroBase: i = 0 } = {}) => Array.from({ length: t }, (o, s) => e.replace("{index}", Qe(s + 1, i))), to = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), eo = to ? 3 : 6, io = ({
|
|
311
316
|
imagesUrls: e,
|
|
312
317
|
onFirstImageLoad: t,
|
|
313
318
|
onImageLoad: i,
|
|
@@ -318,11 +323,11 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
318
323
|
let l = 0, a = 0;
|
|
319
324
|
const r = e.length, h = [], c = [];
|
|
320
325
|
let p = 0, f = 0;
|
|
321
|
-
const u = [],
|
|
326
|
+
const u = [], C = (m, y, I = !1) => {
|
|
322
327
|
const k = {
|
|
323
328
|
message: `Failed to load image: ${m}`,
|
|
324
329
|
url: m,
|
|
325
|
-
index:
|
|
330
|
+
index: y,
|
|
326
331
|
isFirstImage: I
|
|
327
332
|
};
|
|
328
333
|
c.push(k), a++, s == null || s({
|
|
@@ -334,11 +339,11 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
334
339
|
}, b = () => {
|
|
335
340
|
l === r && (o == null || o(h, { errorCount: a, errors: c }));
|
|
336
341
|
}, v = () => {
|
|
337
|
-
for (; p <
|
|
342
|
+
for (; p < eo && f < u.length; ) {
|
|
338
343
|
const m = u[f];
|
|
339
344
|
f++, x(e[m], m);
|
|
340
345
|
}
|
|
341
|
-
}, x = (m,
|
|
346
|
+
}, x = (m, y) => {
|
|
342
347
|
p++;
|
|
343
348
|
const I = new Image();
|
|
344
349
|
I.crossOrigin = "anonymous", I.src = m, I.onload = async () => {
|
|
@@ -349,34 +354,34 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
349
354
|
naturalWidth: I.naturalWidth,
|
|
350
355
|
naturalHeight: I.naturalHeight
|
|
351
356
|
};
|
|
352
|
-
I.onload = null, I.onerror = null, I.src = "", l++, p--, h[
|
|
357
|
+
I.onload = null, I.onerror = null, I.src = "", l++, p--, h[y] = A, i == null || i(A, y), b(), v();
|
|
353
358
|
} catch {
|
|
354
|
-
I.onload = null, I.onerror = null, I.src = "", l++, p--,
|
|
359
|
+
I.onload = null, I.onerror = null, I.src = "", l++, p--, C(m, y), b(), v();
|
|
355
360
|
}
|
|
356
361
|
}, I.onerror = () => {
|
|
357
|
-
I.onload = null, I.onerror = null, I.src = "", l++, p--,
|
|
362
|
+
I.onload = null, I.onerror = null, I.src = "", l++, p--, C(m, y), b(), v();
|
|
358
363
|
};
|
|
359
364
|
}, E = (m) => {
|
|
360
|
-
for (let
|
|
361
|
-
|
|
365
|
+
for (let y = 0; y < e.length; y++)
|
|
366
|
+
y !== m && u.push(y);
|
|
362
367
|
f = 0, v();
|
|
363
|
-
},
|
|
364
|
-
|
|
368
|
+
}, w = new Image(), g = n ? e.length - 1 : 0, O = e[g];
|
|
369
|
+
w.crossOrigin = "anonymous", w.src = O, w.onload = async () => {
|
|
365
370
|
try {
|
|
366
|
-
const m = await createImageBitmap(
|
|
371
|
+
const m = await createImageBitmap(w), y = {
|
|
367
372
|
src: O,
|
|
368
373
|
bitmapImage: m,
|
|
369
|
-
naturalWidth:
|
|
370
|
-
naturalHeight:
|
|
374
|
+
naturalWidth: w.naturalWidth,
|
|
375
|
+
naturalHeight: w.naturalHeight
|
|
371
376
|
};
|
|
372
|
-
|
|
377
|
+
w.onload = null, w.onerror = null, w.src = "", h[g] = y, l++, t == null || t(y), i == null || i(y, g), r === 1 ? b() : E(g);
|
|
373
378
|
} catch {
|
|
374
|
-
|
|
379
|
+
w.onload = null, w.onerror = null, w.src = "", l++, C(O, g, !0), r === 1 ? b() : E(g);
|
|
375
380
|
}
|
|
376
|
-
},
|
|
377
|
-
|
|
381
|
+
}, w.onerror = () => {
|
|
382
|
+
w.onload = null, w.onerror = null, w.src = "", l++, C(O, g, !0), r === 1 ? b() : E(g);
|
|
378
383
|
};
|
|
379
|
-
},
|
|
384
|
+
}, ke = ({
|
|
380
385
|
cdnPathX: e,
|
|
381
386
|
cdnPathY: t,
|
|
382
387
|
configX: i,
|
|
@@ -387,7 +392,7 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
387
392
|
onError: a
|
|
388
393
|
}) => {
|
|
389
394
|
let r = { x: !1, y: !1 }, h = [], c = [], p = { errorCount: 0, errors: [] }, f = { errorCount: 0, errors: [] };
|
|
390
|
-
const u = e || i.imageList.length,
|
|
395
|
+
const u = e || i.imageList.length, C = t || o.imageList.length, b = () => {
|
|
391
396
|
if (r.x && r.y) {
|
|
392
397
|
const x = {
|
|
393
398
|
errorCount: p.errorCount + f.errorCount,
|
|
@@ -395,21 +400,21 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
395
400
|
};
|
|
396
401
|
l == null || l(h, c, x);
|
|
397
402
|
}
|
|
398
|
-
}, v = ({ cdnPath: x, config: E, orientation:
|
|
399
|
-
const
|
|
400
|
-
|
|
403
|
+
}, v = ({ cdnPath: x, config: E, orientation: w, loadedImages: g, loadStats: O, onFirstImageLoad: m }) => {
|
|
404
|
+
const y = w === R.X, I = E.imageList.length ? E.imageList : Qi(x, E);
|
|
405
|
+
io({
|
|
401
406
|
imagesUrls: I,
|
|
402
407
|
onFirstImageLoad: m,
|
|
403
408
|
onImageLoad: (k, A) => {
|
|
404
|
-
n == null || n(k, A,
|
|
409
|
+
n == null || n(k, A, w), g[A] = k;
|
|
405
410
|
},
|
|
406
411
|
onError: (k) => {
|
|
407
|
-
a == null || a({ ...k, orientation:
|
|
412
|
+
a == null || a({ ...k, orientation: w });
|
|
408
413
|
},
|
|
409
414
|
onAllImagesLoad: (k, A) => {
|
|
410
|
-
|
|
411
|
-
T && (
|
|
412
|
-
}), O.errorCount = A.errorCount, O.errors = A.errors.map((T) => ({ ...T, orientation:
|
|
415
|
+
g.length = 0, k.forEach((T, Y) => {
|
|
416
|
+
T && (g[Y] = T);
|
|
417
|
+
}), O.errorCount = A.errorCount, O.errors = A.errors.map((T) => ({ ...T, orientation: w })), r[y ? "x" : "y"] = !0, b();
|
|
413
418
|
},
|
|
414
419
|
autoplayReverse: E.autoplayReverse
|
|
415
420
|
});
|
|
@@ -421,15 +426,15 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
421
426
|
loadedImages: h,
|
|
422
427
|
loadStats: p,
|
|
423
428
|
onFirstImageLoad: s
|
|
424
|
-
}) : r.x = !0,
|
|
429
|
+
}) : r.x = !0, C ? v({
|
|
425
430
|
cdnPath: t,
|
|
426
431
|
config: o,
|
|
427
432
|
orientation: R.Y,
|
|
428
433
|
loadedImages: c,
|
|
429
434
|
loadStats: f,
|
|
430
435
|
onFirstImageLoad: u ? void 0 : s
|
|
431
|
-
}) : r.y = !0, !u && !
|
|
432
|
-
},
|
|
436
|
+
}) : r.y = !0, !u && !C && b();
|
|
437
|
+
}, oo = `
|
|
433
438
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1052 156" aria-hidden="true">
|
|
434
439
|
<path fill="currentColor" d="M409.9,145.6c-42.7-1.7-85.5-4.4-128.1-8.4c-21.3-2-42.6-4.3-63.8-7.1c-21.2-2.8-42.4-5.9-63.4-9.7c-21.1-3.8-42-8.2-62.7-13.7c-10.3-2.8-20.6-5.8-30.7-9.4c-10.1-3.5-20.1-7.6-29.5-12.7c-4.7-2.6-9.3-5.4-13.5-8.8c-2.1-1.7-4-3.6-5.8-5.6c-1.8-2-3.3-4.3-4.3-6.8c-1.1-2.5-1.6-5.3-1.4-8c0.2-2.7,1.1-5.4,2.4-7.7c2.7-4.8,6.7-8.5,11-11.7c8.6-6.4,18.4-10.9,28.3-15c9.9-4,20.1-7.3,30.4-10.3c-10.2,3.1-20.4,6.5-30.3,10.5c-9.8,4.1-19.6,8.7-28.1,15.1c-4.2,3.2-8.2,6.9-10.7,11.6c-1.2,2.3-2.1,4.8-2.3,7.5c-0.1,2.6,0.4,5.2,1.4,7.6c2.1,4.8,5.9,8.7,10,12.1c4.1,3.3,8.7,6.1,13.4,8.6c9.4,5,19.4,8.9,29.4,12.4c10.1,3.5,20.4,6.4,30.7,9.1c20.7,5.3,41.6,9.5,62.7,13.2c21,3.6,42.2,6.6,63.4,9.2c21.2,2.6,42.5,4.8,63.7,6.6c42.6,3.7,85.2,6,127.9,7.4L409.9,145.6z"/>
|
|
435
440
|
<path fill="currentColor" d="M977.1,11.6c13.8,4.1,27.4,8.8,40.4,15.2c6.4,3.2,12.7,6.9,18.3,11.5c2.7,2.4,5.3,5,7.3,8c2,3,3.3,6.6,3.3,10.3c0,3.7-1.4,7.2-3.3,10.3c-2,3.1-4.5,5.7-7.3,8.1c-2.7,2.4-5.7,4.4-8.8,6.3c-1.6,0.9-3.1,1.9-4.7,2.7l-2.4,1.3l-2.4,1.2C1004.5,93,990.8,97.8,977,102c-6.9,2.1-13.8,4-20.8,5.8c-7,1.8-14,3.5-21,5c-14.1,3.1-28.2,5.9-42.4,8.3c-28.4,4.9-57,8.8-85.6,12c-57.3,6.4-114.8,10.2-172.4,12.2c-57.6,2-115.2,2.3-172.9,0.8l0.1-4c57.5,1.8,115.1,1.9,172.6,0.2c57.5-1.7,115-5.2,172.3-11.2c28.6-3.1,57.2-6.7,85.6-11.5c14.2-2.4,28.3-5,42.4-8.1c7-1.5,14-3.1,21-4.9c7-1.7,13.9-3.6,20.8-5.7c13.8-4.1,27.4-8.8,40.3-15.2l2.4-1.2l2.4-1.3c1.6-0.8,3.1-1.8,4.7-2.7c3-1.9,6-3.9,8.7-6.2c2.7-2.3,5.2-4.9,7.2-7.9c1.9-3,3.2-6.4,3.3-10c0-3.6-1.2-7-3.1-10c-1.9-3-4.4-5.6-7.1-8c-5.5-4.7-11.7-8.3-18.1-11.6C1004.5,20.6,990.8,15.8,977.1,11.6z"/>
|
|
@@ -440,10 +445,10 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
440
445
|
<path fill="currentColor" d="M10.9,9.7c0-1.1-0.8-2-2.5-2.5c1.3-0.5,1.9-1.3,1.9-2.3c0-1.7-1.7-2.8-4.6-2.8c-1.5,0-2.7,0.3-3.6,0.8v1.7c0.9-0.4,2.3-0.7,3.4-0.7C7,3.9,8,4.4,8,5.1c0,0.8-0.7,1.3-2.4,1.3H4.3v1.6h1.3c2,0,2.9,0.8,2.9,1.6c0,0.8-1,1.5-2.8,1.5c-1.5,0-2.8-0.3-3.7-0.6v1.7c0.9,0.3,2.1,0.6,3.8,0.6C9.2,12.8,10.9,11.4,10.9,9.7"/>
|
|
441
446
|
</g>
|
|
442
447
|
</svg>
|
|
443
|
-
`,
|
|
448
|
+
`, so = (e) => {
|
|
444
449
|
const t = document.createElement("div");
|
|
445
|
-
return t.innerHTML =
|
|
446
|
-
},
|
|
450
|
+
return t.innerHTML = oo, t.style.bottom = `${e}%`, t.className = "cloudimage-360-view-360-circle", t;
|
|
451
|
+
}, no = `
|
|
447
452
|
<svg width="150" height="87" viewBox="0 0 150 87" xmlns="http://www.w3.org/2000/svg">
|
|
448
453
|
<g clip-path="url(#clip0_751_188)">
|
|
449
454
|
<g filter="url(#filter0_d_751_188)">
|
|
@@ -484,36 +489,36 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
484
489
|
</clipPath>
|
|
485
490
|
</defs>
|
|
486
491
|
</svg>
|
|
487
|
-
`,
|
|
492
|
+
`, ro = (e) => {
|
|
488
493
|
const t = document.createElement("div");
|
|
489
|
-
return t.className = "cloudimage-initial-icon", t.setAttribute("aria-label", "360 degree view - drag to rotate"), e ? (t.style.backgroundImage = `url('${e}')`, t.style.backgroundPosition = "50% 50%", t.style.backgroundSize = "contain", t.style.backgroundRepeat = "no-repeat") : t.innerHTML =
|
|
490
|
-
},
|
|
494
|
+
return t.className = "cloudimage-initial-icon", t.setAttribute("aria-label", "360 degree view - drag to rotate"), e ? (t.style.backgroundImage = `url('${e}')`, t.style.backgroundPosition = "50% 50%", t.style.backgroundSize = "contain", t.style.backgroundRepeat = "no-repeat") : t.innerHTML = no, t;
|
|
495
|
+
}, ao = (e, t) => {
|
|
491
496
|
const { width: i, height: o } = t, s = document.createElement("canvas");
|
|
492
497
|
return s.width = i, s.height = o, s.style.width = "100%", s.style.height = "auto", e.appendChild(s), s;
|
|
493
|
-
},
|
|
498
|
+
}, lo = () => {
|
|
494
499
|
const e = document.createElement("button");
|
|
495
500
|
return e.className = "cloudimage-360-button cloudimage-360-close-icon", e.setAttribute("aria-label", "Close fullscreen"), e.setAttribute("type", "button"), e.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 6 6 18"/><path d="m6 6 12 12"/></svg>', e;
|
|
496
|
-
},
|
|
501
|
+
}, co = () => {
|
|
497
502
|
const e = document.createElement("button");
|
|
498
503
|
return e.className = "cloudimage-360-button cloudimage-360-fullscreen-button", e.setAttribute("aria-label", "View fullscreen"), e.setAttribute("type", "button"), e.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="15 3 21 3 21 9"/><polyline points="9 21 3 21 3 15"/><line x1="21" x2="14" y1="3" y2="10"/><line x1="3" x2="10" y1="21" y2="14"/></svg>', e;
|
|
499
|
-
},
|
|
504
|
+
}, Ae = (e) => {
|
|
500
505
|
const t = document.createElement("div");
|
|
501
506
|
return t.className = "cloudimage-360-icons-container", e.appendChild(t), t;
|
|
502
|
-
},
|
|
507
|
+
}, ho = (e) => {
|
|
503
508
|
const t = document.createElement("div");
|
|
504
509
|
return t.className = "cloudimage-360-inner-box", t.setAttribute("role", "img"), t.setAttribute("aria-label", "360 degree product view. Use mouse drag or arrow keys to rotate."), e.appendChild(t), t;
|
|
505
|
-
},
|
|
510
|
+
}, po = () => {
|
|
506
511
|
const e = document.createElement("button");
|
|
507
512
|
return e.className = "cloudimage-360-button cloudimage-360-magnifier-button", e.setAttribute("aria-label", "Magnify image"), e.setAttribute("type", "button"), e.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/><path d="M11 8v6"/><path d="M8 11h6"/></svg>', e;
|
|
508
|
-
},
|
|
513
|
+
}, uo = () => {
|
|
509
514
|
const e = document.createElement("button");
|
|
510
515
|
return e.className = "cloudimage-360-button cloudimage-360-zoom-out-button", e.setAttribute("aria-label", "Zoom out"), e.setAttribute("type", "button"), e.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/><path d="M8 11h6"/></svg>', e;
|
|
511
|
-
},
|
|
516
|
+
}, mo = (e) => {
|
|
512
517
|
const t = document.createElement("div");
|
|
513
518
|
t.className = "cloudimage-360-loader";
|
|
514
519
|
const i = document.createElement("span");
|
|
515
520
|
return i.className = "percentage", i.innerText = "0%", t.appendChild(i), e.appendChild(t), t;
|
|
516
|
-
},
|
|
521
|
+
}, fo = (e) => {
|
|
517
522
|
const t = document.createElement("div");
|
|
518
523
|
t.className = "cloudimage-360-fullscreen-modal";
|
|
519
524
|
const i = e.cloneNode();
|
|
@@ -521,30 +526,30 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
521
526
|
}, ie = (e, t) => {
|
|
522
527
|
const i = e.querySelector(t);
|
|
523
528
|
i && i.parentNode.removeChild(i);
|
|
524
|
-
},
|
|
529
|
+
}, vo = () => {
|
|
525
530
|
const e = document.createElement("div");
|
|
526
531
|
return e.className = "cloudimage-loading-spinner", e;
|
|
527
|
-
},
|
|
532
|
+
}, go = () => {
|
|
528
533
|
const e = document.createElement("div");
|
|
529
534
|
return e.className = "cloudimage-360-transition-overlay", e;
|
|
530
|
-
},
|
|
535
|
+
}, yo = (e) => {
|
|
531
536
|
const t = document.createElement("div");
|
|
532
537
|
return t.className = "cloudimage-360-hotspot-container", e.appendChild(t), t;
|
|
533
|
-
},
|
|
538
|
+
}, bo = (e) => {
|
|
534
539
|
const t = document.createElement("div");
|
|
535
540
|
return t.className = "cloudimage-360-sr-only", t.setAttribute("role", "status"), t.setAttribute("aria-live", "polite"), t.setAttribute("aria-atomic", "true"), e.appendChild(t), t;
|
|
536
|
-
},
|
|
541
|
+
}, wo = (e, t) => {
|
|
537
542
|
e && (e.textContent = "", setTimeout(() => {
|
|
538
543
|
e.textContent = t;
|
|
539
544
|
}, 50));
|
|
540
|
-
},
|
|
545
|
+
}, ti = {
|
|
541
546
|
drag: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 11V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2"/><path d="M14 10V4a2 2 0 0 0-2-2a2 2 0 0 0-2 2v2"/><path d="M10 10.5V6a2 2 0 0 0-2-2a2 2 0 0 0-2 2v8"/><path d="M18 8a2 2 0 1 1 4 0v6a8 8 0 0 1-8 8h-2c-2.8 0-4.5-.86-5.99-2.34l-3.6-3.6a2 2 0 0 1 2.83-2.82L7 15"/></svg>',
|
|
542
547
|
swipe: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m18 16 4-4-4-4"/><path d="m6 8-4 4 4 4"/><path d="M8 12h8"/></svg>',
|
|
543
548
|
click: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m9 9 5 12 1.8-5.2L21 14Z"/><path d="M7.2 2.2 8 5.1"/><path d="m5.1 8-2.9-.8"/><path d="M14 4.1 12 6"/><path d="m6 12-1.9 2"/></svg>',
|
|
544
549
|
pinch: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M6 6l4 4"/><path d="M18 6l-4 4"/><path d="M6 18l4-4"/><path d="M18 18l-4-4"/><circle cx="12" cy="12" r="2"/></svg>',
|
|
545
550
|
keys: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect width="20" height="16" x="2" y="4" rx="2"/><path d="m9 10 3 3 3-3"/></svg>',
|
|
546
551
|
fullscreen: '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><polyline points="15 3 21 3 21 9"/><polyline points="9 21 3 21 3 15"/><line x1="21" x2="14" y1="3" y2="10"/><line x1="3" x2="10" y1="21" y2="14"/></svg>'
|
|
547
|
-
},
|
|
552
|
+
}, Se = {
|
|
548
553
|
drag: "Drag to rotate",
|
|
549
554
|
swipe: "Swipe to rotate",
|
|
550
555
|
click: "Click to zoom",
|
|
@@ -552,45 +557,45 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
552
557
|
pinch: "Pinch to zoom",
|
|
553
558
|
keys: "Use arrow keys",
|
|
554
559
|
fullscreen: "Click for fullscreen"
|
|
555
|
-
},
|
|
560
|
+
}, Co = (e, t = {}) => {
|
|
556
561
|
const i = document.createElement("div");
|
|
557
562
|
i.className = "cloudimage-360-hint-item";
|
|
558
|
-
let o =
|
|
559
|
-
return e === "click" && t.pointerZoomTrigger === "dblclick" && (o =
|
|
560
|
-
${
|
|
563
|
+
let o = Se[e];
|
|
564
|
+
return e === "click" && t.pointerZoomTrigger === "dblclick" && (o = Se.dblclick), i.innerHTML = `
|
|
565
|
+
${ti[e]}
|
|
561
566
|
<span>${o}</span>
|
|
562
567
|
`, i;
|
|
563
|
-
},
|
|
568
|
+
}, Te = (e, t = [], i = {}) => {
|
|
564
569
|
if (!t || t.length === 0) return null;
|
|
565
570
|
const o = document.createElement("div");
|
|
566
571
|
o.className = "cloudimage-360-hints-overlay", o.setAttribute("role", "tooltip"), o.setAttribute("aria-label", "Interaction hints");
|
|
567
572
|
const s = document.createElement("div");
|
|
568
573
|
return s.className = "cloudimage-360-hints-container", t.forEach((n) => {
|
|
569
|
-
|
|
574
|
+
ti[n] && s.appendChild(Co(n, i));
|
|
570
575
|
}), o.appendChild(s), e.appendChild(o), o;
|
|
571
|
-
},
|
|
576
|
+
}, Le = (e, t) => t ? ["swipe", "pinch"] : ["drag", "click"], Pe = (e) => {
|
|
572
577
|
e && e.classList.add("visible");
|
|
573
|
-
},
|
|
578
|
+
}, Io = (e) => {
|
|
574
579
|
e && (e.classList.remove("visible"), e.classList.add("hiding"), setTimeout(() => {
|
|
575
580
|
e.classList.remove("hiding");
|
|
576
581
|
}, 300));
|
|
577
|
-
},
|
|
582
|
+
}, xo = (e) => {
|
|
578
583
|
if (!e || typeof e != "object") return null;
|
|
579
584
|
const t = Object.keys(e).map((o) => parseInt(o, 10)).filter((o) => !isNaN(o)).sort((o, s) => o - s);
|
|
580
585
|
if (t.length === 0) return null;
|
|
581
586
|
const i = Math.floor(t.length / 2);
|
|
582
587
|
return t[i];
|
|
583
|
-
},
|
|
588
|
+
}, Oo = (e) => {
|
|
584
589
|
const t = [];
|
|
585
590
|
return !e || !Array.isArray(e) || e.forEach((i, o) => {
|
|
586
|
-
const s =
|
|
591
|
+
const s = xo(i.positions);
|
|
587
592
|
s !== null && t.push({
|
|
588
593
|
id: i.id || `hotspot-${o}`,
|
|
589
594
|
frame: s,
|
|
590
595
|
label: i.label || null
|
|
591
596
|
});
|
|
592
597
|
}), t;
|
|
593
|
-
},
|
|
598
|
+
}, Eo = 400, ko = (e, t, i, o) => {
|
|
594
599
|
const s = document.createElement("button");
|
|
595
600
|
s.className = "cloudimage-360-hotspot-timeline-dot", s.setAttribute("type", "button"), s.setAttribute("aria-label", o || `Go to hotspot at frame ${t + 1}`), s.setAttribute("data-frame", t.toString()), s.setAttribute("data-hotspot-id", e);
|
|
596
601
|
const n = i > 1 ? t / (i - 1) * 100 : 0;
|
|
@@ -601,7 +606,7 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
601
606
|
s.addEventListener("mouseenter", () => {
|
|
602
607
|
a = setTimeout(() => {
|
|
603
608
|
l.classList.add("visible");
|
|
604
|
-
},
|
|
609
|
+
}, Eo);
|
|
605
610
|
}), s.addEventListener("mouseleave", () => {
|
|
606
611
|
a && (clearTimeout(a), a = null), l.classList.remove("visible");
|
|
607
612
|
}), s.addEventListener("click", () => {
|
|
@@ -609,8 +614,8 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
609
614
|
});
|
|
610
615
|
}
|
|
611
616
|
return s;
|
|
612
|
-
},
|
|
613
|
-
const o =
|
|
617
|
+
}, Ao = (e, t, i) => {
|
|
618
|
+
const o = Oo(i);
|
|
614
619
|
if (o.length === 0) return null;
|
|
615
620
|
const s = document.createElement("div");
|
|
616
621
|
s.className = "cloudimage-360-hotspot-timeline", s.setAttribute("role", "navigation"), s.setAttribute("aria-label", "Hotspot timeline navigation");
|
|
@@ -618,20 +623,20 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
618
623
|
n.className = "cloudimage-360-hotspot-timeline-track";
|
|
619
624
|
const l = document.createElement("div");
|
|
620
625
|
return l.className = "cloudimage-360-hotspot-timeline-indicator", o.forEach(({ id: a, frame: r, label: h }) => {
|
|
621
|
-
const c =
|
|
626
|
+
const c = ko(a, r, t, h);
|
|
622
627
|
n.appendChild(c);
|
|
623
628
|
}), n.appendChild(l), s.appendChild(n), e.appendChild(s), {
|
|
624
629
|
element: s,
|
|
625
630
|
indicator: l,
|
|
626
631
|
hotspotFrames: o
|
|
627
632
|
};
|
|
628
|
-
},
|
|
633
|
+
}, So = (e, t, i) => {
|
|
629
634
|
if (!e) return;
|
|
630
635
|
const o = i > 1 ? t / (i - 1) * 100 : 0;
|
|
631
636
|
e.style.left = `${o}%`;
|
|
632
|
-
}, So = (e) => {
|
|
633
|
-
e && e.classList.add("visible");
|
|
634
637
|
}, To = (e) => {
|
|
638
|
+
e && e.classList.add("visible");
|
|
639
|
+
}, Lo = (e) => {
|
|
635
640
|
e && e.classList.remove("visible");
|
|
636
641
|
}, oe = (e, t = []) => {
|
|
637
642
|
if (!e) return t;
|
|
@@ -641,15 +646,15 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
641
646
|
} catch (i) {
|
|
642
647
|
return console.warn("CloudImage 360: Failed to parse JSON:", i.message), t;
|
|
643
648
|
}
|
|
644
|
-
},
|
|
649
|
+
}, Po = (e, t) => {
|
|
645
650
|
const [i, o] = e.split("?");
|
|
646
651
|
if (!o) return e;
|
|
647
652
|
const s = new RegExp(`^${t}=|&${t}=`), n = o.split("&").filter((l) => !s.test(l)).join("&");
|
|
648
653
|
return n ? `${i}?${n}` : i;
|
|
649
|
-
}, Po = (e) => {
|
|
650
|
-
const t = Lo(e, "width"), i = t.includes("?") ? "&" : "?";
|
|
651
|
-
return `${t}${i}width=${150 * devicePixelRatio}`;
|
|
652
654
|
}, Mo = (e) => {
|
|
655
|
+
const t = Po(e, "width"), i = t.includes("?") ? "&" : "?";
|
|
656
|
+
return `${t}${i}width=${150 * devicePixelRatio}`;
|
|
657
|
+
}, Ro = (e) => {
|
|
653
658
|
const t = {
|
|
654
659
|
root: null,
|
|
655
660
|
rootMargin: "0px",
|
|
@@ -663,25 +668,25 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
663
668
|
l.isIntersecting && (i(l.target), n.unobserve(l.target));
|
|
664
669
|
});
|
|
665
670
|
}, t).observe(e);
|
|
666
|
-
}, Ro = (e, t) => {
|
|
667
|
-
const i = Je(1, t);
|
|
668
|
-
return e.replace("{index}", i);
|
|
669
671
|
}, Yo = (e, t) => {
|
|
672
|
+
const i = Qe(1, t);
|
|
673
|
+
return e.replace("{index}", i);
|
|
674
|
+
}, Ho = (e, t) => {
|
|
670
675
|
const [i] = e, o = /(https?):\/\//i.test(i);
|
|
671
676
|
return Ct({
|
|
672
677
|
...t,
|
|
673
678
|
folder: o ? "" : t.folder,
|
|
674
679
|
filename: i
|
|
675
680
|
});
|
|
676
|
-
},
|
|
681
|
+
}, Xo = (e, t) => {
|
|
677
682
|
const { imageList: i, indexZeroBase: o } = t;
|
|
678
683
|
if (i.length) {
|
|
679
684
|
const s = oe(i, null);
|
|
680
685
|
if (s)
|
|
681
|
-
return
|
|
686
|
+
return Ho(s, t);
|
|
682
687
|
}
|
|
683
|
-
return
|
|
684
|
-
},
|
|
688
|
+
return Yo(e, o);
|
|
689
|
+
}, Me = (e, t, i) => {
|
|
685
690
|
const o = new Image();
|
|
686
691
|
return o.setAttribute(t ? "data-src" : "src", e), o.className = i, o.style.cssText = `
|
|
687
692
|
position: ${t ? "absolute" : "static"};
|
|
@@ -692,8 +697,8 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
692
697
|
object-position: center;
|
|
693
698
|
filter: blur(10px);
|
|
694
699
|
`, o;
|
|
695
|
-
},
|
|
696
|
-
const { innerBox: o, imageList: s, lazyload: n } = t || {}, [l] = s, a = l ||
|
|
700
|
+
}, Re = (e, t, i) => {
|
|
701
|
+
const { innerBox: o, imageList: s, lazyload: n } = t || {}, [l] = s, a = l || Xo(e, t), r = Mo(a), h = Me(r, n, "cloudimage-lazy"), c = Me(r, !1, "cloudimage-360-placeholder"), p = (f) => {
|
|
697
702
|
ie(o, ".cloudimage-lazy"), i && i({
|
|
698
703
|
event: f,
|
|
699
704
|
width: h.width,
|
|
@@ -703,8 +708,8 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
703
708
|
src: r
|
|
704
709
|
});
|
|
705
710
|
};
|
|
706
|
-
h.onload = p, o.appendChild(h), o.appendChild(c),
|
|
707
|
-
},
|
|
711
|
+
h.onload = p, o.appendChild(h), o.appendChild(c), Ro(h);
|
|
712
|
+
}, Zo = (e, t, i) => {
|
|
708
713
|
const o = new Image();
|
|
709
714
|
o.src = e, o.onload = (s) => {
|
|
710
715
|
t && t({
|
|
@@ -719,19 +724,19 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
719
724
|
const n = new Error(`Failed to load image: ${e}`);
|
|
720
725
|
n.url = e, n.event = s, i ? i(n) : console.error(n.message);
|
|
721
726
|
};
|
|
722
|
-
},
|
|
727
|
+
}, Do = (e, t) => {
|
|
723
728
|
const i = t.getBoundingClientRect(), o = e.touches ? e.touches[0].clientX : e.clientX, s = e.touches ? e.touches[0].clientY : e.clientY;
|
|
724
729
|
return {
|
|
725
730
|
x: o - i.left,
|
|
726
731
|
y: s - i.top
|
|
727
732
|
};
|
|
728
733
|
}, ee = (e, t, i) => {
|
|
729
|
-
const { container: o, w: s, h: n, zoom: l, bw: a, offsetX: r, offsetY: h } = t, c =
|
|
734
|
+
const { container: o, w: s, h: n, zoom: l, bw: a, offsetX: r, offsetY: h } = t, c = Do(e, o);
|
|
730
735
|
let p = c.x, f = c.y;
|
|
731
736
|
p = Math.max(s / l, Math.min(p, o.offsetWidth - s / l)), f = Math.max(n / l, Math.min(f, o.offsetHeight - n / l)), i.style.left = `${p - s}px`, i.style.top = `${f - n}px`;
|
|
732
|
-
const u = (p - r) * l - s + a,
|
|
733
|
-
i.style.backgroundPosition = `-${u}px -${
|
|
734
|
-
},
|
|
737
|
+
const u = (p - r) * l - s + a, C = (f - h) * l - n + a;
|
|
738
|
+
i.style.backgroundPosition = `-${u}px -${C}px`;
|
|
739
|
+
}, Bo = (e, t, i, o, s, n) => {
|
|
735
740
|
const { x: l = 0, y: a = 0 } = i || {}, r = (t.offsetWidth - l * 2) * n, h = (t.offsetHeight - a * 2) * n;
|
|
736
741
|
if (!s) return;
|
|
737
742
|
s.setAttribute("class", "cloudimage-360-img-magnifier-glass"), t.prepend(s), s.style.backgroundImage = `url('${o.src}')`, s.style.backgroundSize = `${r}px ${h}px`;
|
|
@@ -745,19 +750,19 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
745
750
|
offsetY: a
|
|
746
751
|
};
|
|
747
752
|
ee(e, u, s);
|
|
748
|
-
const
|
|
753
|
+
const C = (v) => {
|
|
749
754
|
ee(v, u, s);
|
|
750
755
|
}, b = (v) => {
|
|
751
756
|
v.preventDefault(), ee(v, u, s);
|
|
752
757
|
};
|
|
753
|
-
s.addEventListener("mousemove",
|
|
754
|
-
},
|
|
758
|
+
s.addEventListener("mousemove", C), t.addEventListener("mousemove", C), t.addEventListener("touchmove", b);
|
|
759
|
+
}, Wo = (e, t, i) => {
|
|
755
760
|
const { clientX: o, clientY: s } = e, n = t.getBoundingClientRect(), l = t.width / (n.width * i), a = t.height / (n.height * i), r = (o - n.left) * l, h = (s - n.top) * a;
|
|
756
761
|
return { offsetX: r, offsetY: h };
|
|
757
|
-
},
|
|
762
|
+
}, Fo = (e, t, i) => {
|
|
758
763
|
const o = e / i, s = t / i;
|
|
759
764
|
return { zoomedWidth: o, zoomedHeight: s };
|
|
760
|
-
},
|
|
765
|
+
}, Vo = ({
|
|
761
766
|
pointerX: e,
|
|
762
767
|
pointerY: t,
|
|
763
768
|
imageData: i,
|
|
@@ -770,24 +775,24 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
770
775
|
let h = e / n * a - o / 2, c = t / l * r - s / 2;
|
|
771
776
|
const p = Math.max(0, a - o), f = Math.max(0, r - s);
|
|
772
777
|
return h = Math.max(0, Math.min(h, p)), c = Math.max(0, Math.min(c, f)), { zoomOffsetX: h, zoomOffsetY: c };
|
|
773
|
-
},
|
|
778
|
+
}, Ye = (e, { bottom: t, top: i }) => {
|
|
774
779
|
e ? t() : i();
|
|
775
|
-
},
|
|
780
|
+
}, He = (e, { left: t, right: i }) => {
|
|
776
781
|
e ? t() : i();
|
|
777
|
-
},
|
|
782
|
+
}, No = ({ autoplayBehavior: e, spinY: t, reversed: i, loopTriggers: o }) => {
|
|
778
783
|
switch (e) {
|
|
779
784
|
case H.SPIN_XY:
|
|
780
785
|
case H.SPIN_YX:
|
|
781
|
-
t ?
|
|
786
|
+
t ? Ye(i, o) : He(i, o);
|
|
782
787
|
break;
|
|
783
788
|
case H.SPIN_Y:
|
|
784
|
-
|
|
789
|
+
Ye(i, o);
|
|
785
790
|
break;
|
|
786
791
|
case H.SPIN_X:
|
|
787
792
|
default:
|
|
788
|
-
|
|
793
|
+
He(i, o);
|
|
789
794
|
}
|
|
790
|
-
},
|
|
795
|
+
}, zo = ({
|
|
791
796
|
autoplayBehavior: e,
|
|
792
797
|
activeImageX: t,
|
|
793
798
|
activeImageY: i,
|
|
@@ -808,7 +813,7 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
808
813
|
default:
|
|
809
814
|
return l(t, o);
|
|
810
815
|
}
|
|
811
|
-
},
|
|
816
|
+
}, $o = ({
|
|
812
817
|
autoplayBehavior: e,
|
|
813
818
|
activeImageX: t,
|
|
814
819
|
activeImageY: i,
|
|
@@ -819,7 +824,7 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
819
824
|
}) => {
|
|
820
825
|
const a = t === (n ? 0 : o - 1), r = i === (n ? 0 : s - 1);
|
|
821
826
|
return e === H.SPIN_XY || e === H.SPIN_YX ? l === "x" && a || l === "y" && r : !1;
|
|
822
|
-
},
|
|
827
|
+
}, jo = (e, t, i) => {
|
|
823
828
|
if (!i) return "x";
|
|
824
829
|
if (!t) return "y";
|
|
825
830
|
switch (e) {
|
|
@@ -833,24 +838,24 @@ const Ce = /* @__PURE__ */ vi(Yi), H = {
|
|
|
833
838
|
default:
|
|
834
839
|
return "x";
|
|
835
840
|
}
|
|
836
|
-
},
|
|
837
|
-
const i = [...
|
|
838
|
-
return t ? [...i, ...
|
|
839
|
-
},
|
|
841
|
+
}, Go = (e) => e === "x" ? "y" : "x", Xe = (e, t) => {
|
|
842
|
+
const i = [...Zi];
|
|
843
|
+
return t ? [...i, ...Di].includes(e) : i.includes(e);
|
|
844
|
+
}, Ze = ({ deltaX: e, deltaY: t, reversed: i, allowSpinX: o, allowSpinY: s, threshold: n = 0 }) => {
|
|
840
845
|
const l = o && !s || s && !o ? 0 : n, a = Math.abs(e), r = Math.abs(t);
|
|
841
846
|
return o && a - l > r ? i ? e > 0 ? "left" : "right" : e > 0 ? "right" : "left" : s && r - l > a ? i ? t > 0 ? "up" : "down" : t > 0 ? "down" : "up" : null;
|
|
842
|
-
},
|
|
847
|
+
}, _o = () => "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0, Uo = (e, t = 150) => {
|
|
843
848
|
let i;
|
|
844
849
|
return function(...o) {
|
|
845
850
|
clearTimeout(i), i = setTimeout(() => {
|
|
846
851
|
e.apply(this, o);
|
|
847
852
|
}, t);
|
|
848
853
|
};
|
|
849
|
-
},
|
|
850
|
-
function
|
|
854
|
+
}, ei = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHY9KHQsYSxlKT0+e2NvbnN0IHM9dC9lLG49YS9lO3JldHVybnt6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpufX0sej0oe3BvaW50ZXJYOnQscG9pbnRlclk6YSxpbWFnZURhdGE6ZSx6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpuLGRyYXdXaWR0aDppLGRyYXdIZWlnaHQ6Y30pPT57Y29uc3R7bmF0dXJhbFdpZHRoOmcsbmF0dXJhbEhlaWdodDp1fT1lO2xldCBmPXQvaSpnLXMvMixtPWEvYyp1LW4vMjtjb25zdCB4PU1hdGgubWF4KDAsZy1zKSxPPU1hdGgubWF4KDAsdS1uKTtyZXR1cm4gZj1NYXRoLm1heCgwLE1hdGgubWluKGYseCkpLG09TWF0aC5tYXgoMCxNYXRoLm1pbihtLE8pKSx7em9vbU9mZnNldFg6Zix6b29tT2Zmc2V0WTptfX07bGV0IG8saCxyLGQsbCx3O3NlbGYub25tZXNzYWdlPWFzeW5jIHQ9Pntjb25zdHthY3Rpb246YSxvZmZzY3JlZW46ZSxkZXZpY2VQaXhlbFJhdGlvOnMsaW1hZ2VEYXRhOm4sem9vbVNjYWxlOmkscG9pbnRlclg6Yyxwb2ludGVyWTpnLGltYWdlQXNwZWN0UmF0aW86dSxjb250YWluZXJXaWR0aDpmLGNvbnRhaW5lckhlaWdodDptfT10LmRhdGE7c3dpdGNoKGEpe2Nhc2UiaW5pdENhbnZhcyI6QyhlLHMpO2JyZWFrO2Nhc2UiYWRhcHRDYW52YXNTaXplIjpwKHUsZixtKTticmVhaztjYXNlImRyYXdJbWFnZU9uQ2FudmFzIjpJKG4saSxjLGcpO2JyZWFrfX07Y29uc3QgQz0odCxhKT0+e289dCxoPW8uZ2V0Q29udGV4dCgiMmQiKSxyPWF9LHA9KHQsYSxlKT0+e2NvbnN0IHM9YS9lO3c9dD5zLG8ud2lkdGg9YSpyLG8uaGVpZ2h0PWUqcixoLnNjYWxlKHIsciksdz8oZD1hLGw9YS90KToobD1lLGQ9ZSp0KSxoLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxoLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCJ9LEk9KHQ9e30sYT0xLGU9MCxzPTApPT57Y29uc3R7Yml0bWFwSW1hZ2U6bn09dDtpZighb3x8IW4pcmV0dXJuO2xldCBpLGM7aWYodz8oaT0wLGM9KG8uaGVpZ2h0L3ItbCkvMik6KGk9KG8ud2lkdGgvci1kKS8yLGM9MCksaC5jbGVhclJlY3QoMCwwLG8ud2lkdGgsby5oZWlnaHQpLGEhPT0xKXtjb25zdHtuYXR1cmFsV2lkdGg6ZyxuYXR1cmFsSGVpZ2h0OnV9PXQse3pvb21lZFdpZHRoOmYsem9vbWVkSGVpZ2h0Om19PXYoZyx1LGEpLHt6b29tT2Zmc2V0WDp4LHpvb21PZmZzZXRZOk99PXooe3BvaW50ZXJYOmUscG9pbnRlclk6cyxpbWFnZURhdGE6dCx6b29tZWRXaWR0aDpmLHpvb21lZEhlaWdodDptLGRyYXdXaWR0aDpkLGRyYXdIZWlnaHQ6bH0pO2guZHJhd0ltYWdlKG4seCxPLGYsbSxpLGMsZCxsKX1lbHNlIGguZHJhd0ltYWdlKG4saSxjLGQsbCl9fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FudmFzLndvcmtlci1DZzBma3BEMS5qcy5tYXAK", Ko = (e) => Uint8Array.from(atob(e), (t) => t.charCodeAt(0)), De = typeof self < "u" && self.Blob && new Blob([Ko(ei)], { type: "text/javascript;charset=utf-8" });
|
|
855
|
+
function qo(e) {
|
|
851
856
|
let t;
|
|
852
857
|
try {
|
|
853
|
-
if (t =
|
|
858
|
+
if (t = De && (self.URL || self.webkitURL).createObjectURL(De), !t) throw "";
|
|
854
859
|
const i = new Worker(t, {
|
|
855
860
|
name: e == null ? void 0 : e.name
|
|
856
861
|
});
|
|
@@ -859,7 +864,7 @@ function Ko(e) {
|
|
|
859
864
|
}), i;
|
|
860
865
|
} catch {
|
|
861
866
|
return new Worker(
|
|
862
|
-
"data:text/javascript;base64," +
|
|
867
|
+
"data:text/javascript;base64," + ei,
|
|
863
868
|
{
|
|
864
869
|
name: e == null ? void 0 : e.name
|
|
865
870
|
}
|
|
@@ -868,7 +873,7 @@ function Ko(e) {
|
|
|
868
873
|
t && (self.URL || self.webkitURL).revokeObjectURL(t);
|
|
869
874
|
}
|
|
870
875
|
}
|
|
871
|
-
class
|
|
876
|
+
class Jo {
|
|
872
877
|
constructor() {
|
|
873
878
|
this.canvas = null, this.ctx = null, this.dpr = 1, this.drawWidth = 0, this.drawHeight = 0, this.wideImage = !1;
|
|
874
879
|
}
|
|
@@ -921,7 +926,7 @@ class qo {
|
|
|
921
926
|
if (!this.canvas || !this.ctx || !n) return;
|
|
922
927
|
let l, a;
|
|
923
928
|
if (this.wideImage ? (l = 0, a = (this.canvas.height / this.dpr - this.drawHeight) / 2) : (l = (this.canvas.width / this.dpr - this.drawWidth) / 2, a = 0), this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height), i !== 1) {
|
|
924
|
-
const { naturalWidth: r, naturalHeight: h } = t, { zoomedWidth: c, zoomedHeight: p } =
|
|
929
|
+
const { naturalWidth: r, naturalHeight: h } = t, { zoomedWidth: c, zoomedHeight: p } = Fo(r, h, i), { zoomOffsetX: f, zoomOffsetY: u } = Vo({
|
|
925
930
|
pointerX: o,
|
|
926
931
|
pointerY: s,
|
|
927
932
|
imageData: t,
|
|
@@ -945,7 +950,7 @@ class qo {
|
|
|
945
950
|
this.ctx.drawImage(n, l, a, this.drawWidth, this.drawHeight);
|
|
946
951
|
}
|
|
947
952
|
}
|
|
948
|
-
const
|
|
953
|
+
const Qo = /* @__PURE__ */ new Set([
|
|
949
954
|
// Basic HTML
|
|
950
955
|
"p",
|
|
951
956
|
"span",
|
|
@@ -1004,7 +1009,7 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1004
1009
|
"lineargradient",
|
|
1005
1010
|
"radialgradient",
|
|
1006
1011
|
"stop"
|
|
1007
|
-
]),
|
|
1012
|
+
]), Be = {
|
|
1008
1013
|
a: ["href", "title", "target", "rel"],
|
|
1009
1014
|
img: ["src", "alt", "title", "width", "height"],
|
|
1010
1015
|
button: ["type", "disabled", "name", "value"],
|
|
@@ -1032,12 +1037,12 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1032
1037
|
clippath: ["id"],
|
|
1033
1038
|
mask: ["id"],
|
|
1034
1039
|
"*": ["class", "id", "style"]
|
|
1035
|
-
},
|
|
1040
|
+
}, ts = [
|
|
1036
1041
|
/javascript:/gi,
|
|
1037
1042
|
/vbscript:/gi,
|
|
1038
1043
|
/data:/gi,
|
|
1039
1044
|
/on\w+\s*=/gi
|
|
1040
|
-
],
|
|
1045
|
+
], es = (e) => {
|
|
1041
1046
|
if (typeof e != "string")
|
|
1042
1047
|
return "";
|
|
1043
1048
|
const t = document.createElement("template");
|
|
@@ -1045,7 +1050,7 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1045
1050
|
const i = (o) => {
|
|
1046
1051
|
if (Array.from(o.childNodes).forEach(i), o.nodeType === Node.ELEMENT_NODE) {
|
|
1047
1052
|
const n = o.tagName.toLowerCase();
|
|
1048
|
-
if (!
|
|
1053
|
+
if (!Qo.has(n)) {
|
|
1049
1054
|
if (n === "script" || n === "style") {
|
|
1050
1055
|
o.remove();
|
|
1051
1056
|
return;
|
|
@@ -1055,8 +1060,8 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1055
1060
|
return;
|
|
1056
1061
|
}
|
|
1057
1062
|
const l = [
|
|
1058
|
-
...
|
|
1059
|
-
...
|
|
1063
|
+
...Be[n] || [],
|
|
1064
|
+
...Be["*"] || []
|
|
1060
1065
|
];
|
|
1061
1066
|
if (Array.from(o.attributes).forEach((r) => {
|
|
1062
1067
|
const h = r.name.toLowerCase();
|
|
@@ -1069,7 +1074,7 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1069
1074
|
return;
|
|
1070
1075
|
}
|
|
1071
1076
|
let c = r.value;
|
|
1072
|
-
|
|
1077
|
+
ts.forEach((p) => {
|
|
1073
1078
|
p.test(c) && o.removeAttribute(r.name);
|
|
1074
1079
|
});
|
|
1075
1080
|
}), n === "a") {
|
|
@@ -1083,9 +1088,9 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1083
1088
|
}
|
|
1084
1089
|
};
|
|
1085
1090
|
return i(t.content), t.innerHTML;
|
|
1086
|
-
},
|
|
1087
|
-
(o) =>
|
|
1088
|
-
),
|
|
1091
|
+
}, is = (e) => e === "y" ? R.Y : R.X, os = (e, t, i) => e.filter(
|
|
1092
|
+
(o) => is(o.orientation) === i && t in o.positions
|
|
1093
|
+
), ss = (e, t, i) => {
|
|
1089
1094
|
const o = document.createElement("button");
|
|
1090
1095
|
if (o.id = e, o.className = "cloudimage-360-hotspot cloudimage-360-hotspot--pulse", o.dataset.hotspotId = e, o.setAttribute("type", "button"), o.setAttribute("aria-label", t || `Hotspot ${e}`), o.setAttribute("aria-haspopup", "true"), o.setAttribute("aria-expanded", "false"), i === "dot-label" && t) {
|
|
1091
1096
|
o.classList.add("cloudimage-360-hotspot--dot-label");
|
|
@@ -1093,7 +1098,7 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1093
1098
|
s.className = "cloudimage-360-hotspot-label", s.textContent = t, o.appendChild(s);
|
|
1094
1099
|
}
|
|
1095
1100
|
return o;
|
|
1096
|
-
},
|
|
1101
|
+
}, ns = (e) => {
|
|
1097
1102
|
const t = Object.entries(e).sort(([n], [l]) => Number(n) - Number(l));
|
|
1098
1103
|
let i = null, o = null;
|
|
1099
1104
|
const s = {};
|
|
@@ -1108,7 +1113,7 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1108
1113
|
};
|
|
1109
1114
|
}
|
|
1110
1115
|
return s;
|
|
1111
|
-
},
|
|
1116
|
+
}, rs = (e) => ({
|
|
1112
1117
|
placement: "top",
|
|
1113
1118
|
modifiers: [
|
|
1114
1119
|
{
|
|
@@ -1131,16 +1136,16 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1131
1136
|
}
|
|
1132
1137
|
}
|
|
1133
1138
|
]
|
|
1134
|
-
}),
|
|
1139
|
+
}), as = (e, t) => {
|
|
1135
1140
|
const i = document.createElement("div");
|
|
1136
|
-
return i.className = "cloudimage-360-popper", i.id = `cloudimage-360-popper-${t}`, i.dataset.popperId = t, i.setAttribute("role", "tooltip"), i.setAttribute("aria-hidden", "false"), typeof e == "string" && /<\/?[a-z][\s\S]*>/i.test(e) ? i.innerHTML =
|
|
1137
|
-
},
|
|
1141
|
+
return i.className = "cloudimage-360-popper", i.id = `cloudimage-360-popper-${t}`, i.dataset.popperId = t, i.setAttribute("role", "tooltip"), i.setAttribute("aria-hidden", "false"), typeof e == "string" && /<\/?[a-z][\s\S]*>/i.test(e) ? i.innerHTML = es(e) : i.textContent = e, document.body.appendChild(i), i;
|
|
1142
|
+
}, ls = (e) => {
|
|
1138
1143
|
const t = [...e];
|
|
1139
1144
|
return t.forEach((i, o) => {
|
|
1140
|
-
const s = { ...
|
|
1145
|
+
const s = { ...ns(i.positions) };
|
|
1141
1146
|
t[o].initialPositions = s, t[o].positions = s;
|
|
1142
1147
|
}), t;
|
|
1143
|
-
},
|
|
1148
|
+
}, cs = ({
|
|
1144
1149
|
newWidth: e,
|
|
1145
1150
|
newHeight: t,
|
|
1146
1151
|
initialContainerSize: i,
|
|
@@ -1151,18 +1156,18 @@ const Jo = /* @__PURE__ */ new Set([
|
|
|
1151
1156
|
let a = e, r = t, h = 0, c = 0;
|
|
1152
1157
|
const p = e / t;
|
|
1153
1158
|
o > p ? (r = e / o, c = (t - r) / 2) : (a = t * o, h = (e - a) / 2);
|
|
1154
|
-
const u = a / n,
|
|
1159
|
+
const u = a / n, C = r / l;
|
|
1155
1160
|
return s.map((b) => {
|
|
1156
1161
|
const v = {};
|
|
1157
1162
|
return Object.entries(b.initialPositions).forEach(([x, E]) => {
|
|
1158
1163
|
v[x] = {
|
|
1159
1164
|
x: E.x * u + h,
|
|
1160
|
-
y: E.y *
|
|
1165
|
+
y: E.y * C + c
|
|
1161
1166
|
};
|
|
1162
1167
|
}), { ...b, positions: v };
|
|
1163
1168
|
});
|
|
1164
1169
|
};
|
|
1165
|
-
function
|
|
1170
|
+
function hs(e) {
|
|
1166
1171
|
const t = [];
|
|
1167
1172
|
e.image && t.push(
|
|
1168
1173
|
`<div class="ci360-popper-image-wrapper"><img class="ci360-popper-image" src="${bt(e.image)}" alt="${bt(e.title || "")}"></div>`
|
|
@@ -1172,7 +1177,7 @@ function cs(e) {
|
|
|
1172
1177
|
let o = "";
|
|
1173
1178
|
e.originalPrice && (o += `<span class="ci360-popper-original-price">${dt(e.originalPrice)}</span>`), e.price && (o += `<span class="ci360-popper-price">${dt(e.price)}</span>`), i.push(`<div class="ci360-popper-price-row">${o}</div>`);
|
|
1174
1179
|
}
|
|
1175
|
-
if (e.description && i.push(`<p class="ci360-popper-description">${dt(e.description)}</p>`), e.url &&
|
|
1180
|
+
if (e.description && i.push(`<p class="ci360-popper-description">${dt(e.description)}</p>`), e.url && ds(e.url)) {
|
|
1176
1181
|
const o = e.ctaText || "View details", s = e.id ? ` data-product-id="${bt(e.id)}"` : "";
|
|
1177
1182
|
i.push(
|
|
1178
1183
|
`<a class="ci360-popper-cta" href="${bt(e.url)}"${s}>${dt(String(o))}</a>`
|
|
@@ -1185,8 +1190,8 @@ function cs(e) {
|
|
|
1185
1190
|
}
|
|
1186
1191
|
return i.length > 0 && t.push(`<div class="ci360-popper-body">${i.join("")}</div>`), t.join("");
|
|
1187
1192
|
}
|
|
1188
|
-
function
|
|
1189
|
-
return e.content ? e.content : e.data ?
|
|
1193
|
+
function We(e) {
|
|
1194
|
+
return e.content ? e.content : e.data ? hs(e.data) : "";
|
|
1190
1195
|
}
|
|
1191
1196
|
function dt(e) {
|
|
1192
1197
|
return e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
@@ -1194,15 +1199,15 @@ function dt(e) {
|
|
|
1194
1199
|
function bt(e) {
|
|
1195
1200
|
return e.replace(/&/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<").replace(/>/g, ">");
|
|
1196
1201
|
}
|
|
1197
|
-
function
|
|
1202
|
+
function ds(e) {
|
|
1198
1203
|
const t = e.replace(/[\s\x00-\x1f]/g, "");
|
|
1199
1204
|
return /^https?:\/\//i.test(t) || /^\/(?!\/)/.test(t) || /^#/.test(t);
|
|
1200
1205
|
}
|
|
1201
|
-
var X = "top", F = "bottom", V = "right", Z = "left", re = "auto", kt = [X, F, V, Z], pt = "start", Ot = "end",
|
|
1206
|
+
var X = "top", F = "bottom", V = "right", Z = "left", re = "auto", kt = [X, F, V, Z], pt = "start", Ot = "end", ps = "clippingParents", ii = "viewport", wt = "popper", us = "reference", Fe = /* @__PURE__ */ kt.reduce(function(e, t) {
|
|
1202
1207
|
return e.concat([t + "-" + pt, t + "-" + Ot]);
|
|
1203
|
-
}, []),
|
|
1208
|
+
}, []), oi = /* @__PURE__ */ [].concat(kt, [re]).reduce(function(e, t) {
|
|
1204
1209
|
return e.concat([t, t + "-" + pt, t + "-" + Ot]);
|
|
1205
|
-
}, []),
|
|
1210
|
+
}, []), ms = "beforeRead", fs = "read", vs = "afterRead", gs = "beforeMain", ys = "main", bs = "afterMain", ws = "beforeWrite", Cs = "write", Is = "afterWrite", xs = [ms, fs, vs, gs, ys, bs, ws, Cs, Is];
|
|
1206
1211
|
function $(e) {
|
|
1207
1212
|
return e ? (e.nodeName || "").toLowerCase() : null;
|
|
1208
1213
|
}
|
|
@@ -1229,7 +1234,7 @@ function ae(e) {
|
|
|
1229
1234
|
var t = B(e).ShadowRoot;
|
|
1230
1235
|
return e instanceof t || e instanceof ShadowRoot;
|
|
1231
1236
|
}
|
|
1232
|
-
function
|
|
1237
|
+
function Os(e) {
|
|
1233
1238
|
var t = e.state;
|
|
1234
1239
|
Object.keys(t.elements).forEach(function(i) {
|
|
1235
1240
|
var o = t.styles[i] || {}, s = t.attributes[i] || {}, n = t.elements[i];
|
|
@@ -1239,7 +1244,7 @@ function xs(e) {
|
|
|
1239
1244
|
}));
|
|
1240
1245
|
});
|
|
1241
1246
|
}
|
|
1242
|
-
function
|
|
1247
|
+
function Es(e) {
|
|
1243
1248
|
var t = e.state, i = {
|
|
1244
1249
|
popper: {
|
|
1245
1250
|
position: t.options.strategy,
|
|
@@ -1263,12 +1268,12 @@ function Os(e) {
|
|
|
1263
1268
|
});
|
|
1264
1269
|
};
|
|
1265
1270
|
}
|
|
1266
|
-
const
|
|
1271
|
+
const ks = {
|
|
1267
1272
|
name: "applyStyles",
|
|
1268
1273
|
enabled: !0,
|
|
1269
1274
|
phase: "write",
|
|
1270
|
-
fn:
|
|
1271
|
-
effect:
|
|
1275
|
+
fn: Os,
|
|
1276
|
+
effect: Es,
|
|
1272
1277
|
requires: ["computeStyles"]
|
|
1273
1278
|
};
|
|
1274
1279
|
function z(e) {
|
|
@@ -1281,14 +1286,14 @@ function se() {
|
|
|
1281
1286
|
return t.brand + "/" + t.version;
|
|
1282
1287
|
}).join(" ") : navigator.userAgent;
|
|
1283
1288
|
}
|
|
1284
|
-
function
|
|
1289
|
+
function si() {
|
|
1285
1290
|
return !/^((?!chrome|android).)*safari/i.test(se());
|
|
1286
1291
|
}
|
|
1287
1292
|
function mt(e, t, i) {
|
|
1288
1293
|
t === void 0 && (t = !1), i === void 0 && (i = !1);
|
|
1289
1294
|
var o = e.getBoundingClientRect(), s = 1, n = 1;
|
|
1290
1295
|
t && W(e) && (s = e.offsetWidth > 0 && ut(o.width) / e.offsetWidth || 1, n = e.offsetHeight > 0 && ut(o.height) / e.offsetHeight || 1);
|
|
1291
|
-
var l = ot(e) ? B(e) : window, a = l.visualViewport, r = !
|
|
1296
|
+
var l = ot(e) ? B(e) : window, a = l.visualViewport, r = !si() && i, h = (o.left + (r && a ? a.offsetLeft : 0)) / s, c = (o.top + (r && a ? a.offsetTop : 0)) / n, p = o.width / s, f = o.height / n;
|
|
1292
1297
|
return {
|
|
1293
1298
|
width: p,
|
|
1294
1299
|
height: f,
|
|
@@ -1309,7 +1314,7 @@ function le(e) {
|
|
|
1309
1314
|
height: o
|
|
1310
1315
|
};
|
|
1311
1316
|
}
|
|
1312
|
-
function
|
|
1317
|
+
function ni(e, t) {
|
|
1313
1318
|
var i = t.getRootNode && t.getRootNode();
|
|
1314
1319
|
if (e.contains(t))
|
|
1315
1320
|
return !0;
|
|
@@ -1326,7 +1331,7 @@ function si(e, t) {
|
|
|
1326
1331
|
function q(e) {
|
|
1327
1332
|
return B(e).getComputedStyle(e);
|
|
1328
1333
|
}
|
|
1329
|
-
function
|
|
1334
|
+
function As(e) {
|
|
1330
1335
|
return ["table", "td", "th"].indexOf($(e)) >= 0;
|
|
1331
1336
|
}
|
|
1332
1337
|
function Q(e) {
|
|
@@ -1347,11 +1352,11 @@ function zt(e) {
|
|
|
1347
1352
|
Q(e)
|
|
1348
1353
|
);
|
|
1349
1354
|
}
|
|
1350
|
-
function
|
|
1355
|
+
function Ve(e) {
|
|
1351
1356
|
return !W(e) || // https://github.com/popperjs/popper-core/issues/837
|
|
1352
1357
|
q(e).position === "fixed" ? null : e.offsetParent;
|
|
1353
1358
|
}
|
|
1354
|
-
function
|
|
1359
|
+
function Ss(e) {
|
|
1355
1360
|
var t = /firefox/i.test(se()), i = /Trident/i.test(se());
|
|
1356
1361
|
if (i && W(e)) {
|
|
1357
1362
|
var o = q(e);
|
|
@@ -1368,9 +1373,9 @@ function As(e) {
|
|
|
1368
1373
|
return null;
|
|
1369
1374
|
}
|
|
1370
1375
|
function At(e) {
|
|
1371
|
-
for (var t = B(e), i =
|
|
1372
|
-
i =
|
|
1373
|
-
return i && ($(i) === "html" || $(i) === "body" && q(i).position === "static") ? t : i ||
|
|
1376
|
+
for (var t = B(e), i = Ve(e); i && As(i) && q(i).position === "static"; )
|
|
1377
|
+
i = Ve(i);
|
|
1378
|
+
return i && ($(i) === "html" || $(i) === "body" && q(i).position === "static") ? t : i || Ss(e) || t;
|
|
1374
1379
|
}
|
|
1375
1380
|
function ce(e) {
|
|
1376
1381
|
return ["top", "bottom"].indexOf(e) >= 0 ? "x" : "y";
|
|
@@ -1378,11 +1383,11 @@ function ce(e) {
|
|
|
1378
1383
|
function It(e, t, i) {
|
|
1379
1384
|
return it(e, Vt(t, i));
|
|
1380
1385
|
}
|
|
1381
|
-
function
|
|
1386
|
+
function Ts(e, t, i) {
|
|
1382
1387
|
var o = It(e, t, i);
|
|
1383
1388
|
return o > i ? i : o;
|
|
1384
1389
|
}
|
|
1385
|
-
function
|
|
1390
|
+
function ri() {
|
|
1386
1391
|
return {
|
|
1387
1392
|
top: 0,
|
|
1388
1393
|
right: 0,
|
|
@@ -1390,57 +1395,57 @@ function ni() {
|
|
|
1390
1395
|
left: 0
|
|
1391
1396
|
};
|
|
1392
1397
|
}
|
|
1393
|
-
function
|
|
1394
|
-
return Object.assign({},
|
|
1398
|
+
function ai(e) {
|
|
1399
|
+
return Object.assign({}, ri(), e);
|
|
1395
1400
|
}
|
|
1396
|
-
function
|
|
1401
|
+
function li(e, t) {
|
|
1397
1402
|
return t.reduce(function(i, o) {
|
|
1398
1403
|
return i[o] = e, i;
|
|
1399
1404
|
}, {});
|
|
1400
1405
|
}
|
|
1401
|
-
var
|
|
1406
|
+
var Ls = function(t, i) {
|
|
1402
1407
|
return t = typeof t == "function" ? t(Object.assign({}, i.rects, {
|
|
1403
1408
|
placement: i.placement
|
|
1404
|
-
})) : t,
|
|
1409
|
+
})) : t, ai(typeof t != "number" ? t : li(t, kt));
|
|
1405
1410
|
};
|
|
1406
|
-
function
|
|
1411
|
+
function Ps(e) {
|
|
1407
1412
|
var t, i = e.state, o = e.name, s = e.options, n = i.elements.arrow, l = i.modifiersData.popperOffsets, a = z(i.placement), r = ce(a), h = [Z, V].indexOf(a) >= 0, c = h ? "height" : "width";
|
|
1408
1413
|
if (!(!n || !l)) {
|
|
1409
|
-
var p =
|
|
1410
|
-
i.modifiersData[o] = (t = {}, t[I] =
|
|
1414
|
+
var p = Ls(s.padding, i), f = le(n), u = r === "y" ? X : Z, C = r === "y" ? F : V, b = i.rects.reference[c] + i.rects.reference[r] - l[r] - i.rects.popper[c], v = l[r] - i.rects.reference[r], x = At(n), E = x ? r === "y" ? x.clientHeight || 0 : x.clientWidth || 0 : 0, w = b / 2 - v / 2, g = p[u], O = E - f[c] - p[C], m = E / 2 - f[c] / 2 + w, y = It(g, m, O), I = r;
|
|
1415
|
+
i.modifiersData[o] = (t = {}, t[I] = y, t.centerOffset = y - m, t);
|
|
1411
1416
|
}
|
|
1412
1417
|
}
|
|
1413
|
-
function
|
|
1418
|
+
function Ms(e) {
|
|
1414
1419
|
var t = e.state, i = e.options, o = i.element, s = o === void 0 ? "[data-popper-arrow]" : o;
|
|
1415
|
-
s != null && (typeof s == "string" && (s = t.elements.popper.querySelector(s), !s) ||
|
|
1420
|
+
s != null && (typeof s == "string" && (s = t.elements.popper.querySelector(s), !s) || ni(t.elements.popper, s) && (t.elements.arrow = s));
|
|
1416
1421
|
}
|
|
1417
|
-
const
|
|
1422
|
+
const Rs = {
|
|
1418
1423
|
name: "arrow",
|
|
1419
1424
|
enabled: !0,
|
|
1420
1425
|
phase: "main",
|
|
1421
|
-
fn:
|
|
1422
|
-
effect:
|
|
1426
|
+
fn: Ps,
|
|
1427
|
+
effect: Ms,
|
|
1423
1428
|
requires: ["popperOffsets"],
|
|
1424
1429
|
requiresIfExists: ["preventOverflow"]
|
|
1425
1430
|
};
|
|
1426
1431
|
function ft(e) {
|
|
1427
1432
|
return e.split("-")[1];
|
|
1428
1433
|
}
|
|
1429
|
-
var
|
|
1434
|
+
var Ys = {
|
|
1430
1435
|
top: "auto",
|
|
1431
1436
|
right: "auto",
|
|
1432
1437
|
bottom: "auto",
|
|
1433
1438
|
left: "auto"
|
|
1434
1439
|
};
|
|
1435
|
-
function
|
|
1440
|
+
function Hs(e, t) {
|
|
1436
1441
|
var i = e.x, o = e.y, s = t.devicePixelRatio || 1;
|
|
1437
1442
|
return {
|
|
1438
1443
|
x: ut(i * s) / s || 0,
|
|
1439
1444
|
y: ut(o * s) / s || 0
|
|
1440
1445
|
};
|
|
1441
1446
|
}
|
|
1442
|
-
function
|
|
1443
|
-
var t, i = e.popper, o = e.popperRect, s = e.placement, n = e.variation, l = e.offsets, a = e.position, r = e.gpuAcceleration, h = e.adaptive, c = e.roundOffsets, p = e.isFixed, f = l.x, u = f === void 0 ? 0 : f,
|
|
1447
|
+
function Ne(e) {
|
|
1448
|
+
var t, i = e.popper, o = e.popperRect, s = e.placement, n = e.variation, l = e.offsets, a = e.position, r = e.gpuAcceleration, h = e.adaptive, c = e.roundOffsets, p = e.isFixed, f = l.x, u = f === void 0 ? 0 : f, C = l.y, b = C === void 0 ? 0 : C, v = typeof c == "function" ? c({
|
|
1444
1449
|
x: u,
|
|
1445
1450
|
y: b
|
|
1446
1451
|
}) : {
|
|
@@ -1448,19 +1453,19 @@ function Ve(e) {
|
|
|
1448
1453
|
y: b
|
|
1449
1454
|
};
|
|
1450
1455
|
u = v.x, b = v.y;
|
|
1451
|
-
var x = l.hasOwnProperty("x"), E = l.hasOwnProperty("y"),
|
|
1456
|
+
var x = l.hasOwnProperty("x"), E = l.hasOwnProperty("y"), w = Z, g = X, O = window;
|
|
1452
1457
|
if (h) {
|
|
1453
|
-
var m = At(i),
|
|
1454
|
-
if (m === B(i) && (m = Q(i), q(m).position !== "static" && a === "absolute" && (
|
|
1455
|
-
|
|
1458
|
+
var m = At(i), y = "clientHeight", I = "clientWidth";
|
|
1459
|
+
if (m === B(i) && (m = Q(i), q(m).position !== "static" && a === "absolute" && (y = "scrollHeight", I = "scrollWidth")), m = m, s === X || (s === Z || s === V) && n === Ot) {
|
|
1460
|
+
g = F;
|
|
1456
1461
|
var k = p && m === O && O.visualViewport ? O.visualViewport.height : (
|
|
1457
1462
|
// $FlowFixMe[prop-missing]
|
|
1458
|
-
m[
|
|
1463
|
+
m[y]
|
|
1459
1464
|
);
|
|
1460
1465
|
b -= k - o.height, b *= r ? 1 : -1;
|
|
1461
1466
|
}
|
|
1462
1467
|
if (s === Z || (s === X || s === F) && n === Ot) {
|
|
1463
|
-
|
|
1468
|
+
w = V;
|
|
1464
1469
|
var A = p && m === O && O.visualViewport ? O.visualViewport.width : (
|
|
1465
1470
|
// $FlowFixMe[prop-missing]
|
|
1466
1471
|
m[I]
|
|
@@ -1470,7 +1475,7 @@ function Ve(e) {
|
|
|
1470
1475
|
}
|
|
1471
1476
|
var T = Object.assign({
|
|
1472
1477
|
position: a
|
|
1473
|
-
}, h &&
|
|
1478
|
+
}, h && Ys), Y = c === !0 ? Hs({
|
|
1474
1479
|
x: u,
|
|
1475
1480
|
y: b
|
|
1476
1481
|
}, B(i)) : {
|
|
@@ -1479,11 +1484,11 @@ function Ve(e) {
|
|
|
1479
1484
|
};
|
|
1480
1485
|
if (u = Y.x, b = Y.y, r) {
|
|
1481
1486
|
var L;
|
|
1482
|
-
return Object.assign({}, T, (L = {}, L[
|
|
1487
|
+
return Object.assign({}, T, (L = {}, L[g] = E ? "0" : "", L[w] = x ? "0" : "", L.transform = (O.devicePixelRatio || 1) <= 1 ? "translate(" + u + "px, " + b + "px)" : "translate3d(" + u + "px, " + b + "px, 0)", L));
|
|
1483
1488
|
}
|
|
1484
|
-
return Object.assign({}, T, (t = {}, t[
|
|
1489
|
+
return Object.assign({}, T, (t = {}, t[g] = E ? b + "px" : "", t[w] = x ? u + "px" : "", t.transform = "", t));
|
|
1485
1490
|
}
|
|
1486
|
-
function
|
|
1491
|
+
function Xs(e) {
|
|
1487
1492
|
var t = e.state, i = e.options, o = i.gpuAcceleration, s = o === void 0 ? !0 : o, n = i.adaptive, l = n === void 0 ? !0 : n, a = i.roundOffsets, r = a === void 0 ? !0 : a, h = {
|
|
1488
1493
|
placement: z(t.placement),
|
|
1489
1494
|
variation: ft(t.placement),
|
|
@@ -1492,12 +1497,12 @@ function Hs(e) {
|
|
|
1492
1497
|
gpuAcceleration: s,
|
|
1493
1498
|
isFixed: t.options.strategy === "fixed"
|
|
1494
1499
|
};
|
|
1495
|
-
t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper,
|
|
1500
|
+
t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Ne(Object.assign({}, h, {
|
|
1496
1501
|
offsets: t.modifiersData.popperOffsets,
|
|
1497
1502
|
position: t.options.strategy,
|
|
1498
1503
|
adaptive: l,
|
|
1499
1504
|
roundOffsets: r
|
|
1500
|
-
})))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow,
|
|
1505
|
+
})))), t.modifiersData.arrow != null && (t.styles.arrow = Object.assign({}, t.styles.arrow, Ne(Object.assign({}, h, {
|
|
1501
1506
|
offsets: t.modifiersData.arrow,
|
|
1502
1507
|
position: "absolute",
|
|
1503
1508
|
adaptive: !1,
|
|
@@ -1506,17 +1511,17 @@ function Hs(e) {
|
|
|
1506
1511
|
"data-popper-placement": t.placement
|
|
1507
1512
|
});
|
|
1508
1513
|
}
|
|
1509
|
-
const
|
|
1514
|
+
const Zs = {
|
|
1510
1515
|
name: "computeStyles",
|
|
1511
1516
|
enabled: !0,
|
|
1512
1517
|
phase: "beforeWrite",
|
|
1513
|
-
fn:
|
|
1518
|
+
fn: Xs,
|
|
1514
1519
|
data: {}
|
|
1515
1520
|
};
|
|
1516
1521
|
var Bt = {
|
|
1517
1522
|
passive: !0
|
|
1518
1523
|
};
|
|
1519
|
-
function
|
|
1524
|
+
function Ds(e) {
|
|
1520
1525
|
var t = e.state, i = e.instance, o = e.options, s = o.scroll, n = s === void 0 ? !0 : s, l = o.resize, a = l === void 0 ? !0 : l, r = B(t.elements.popper), h = [].concat(t.scrollParents.reference, t.scrollParents.popper);
|
|
1521
1526
|
return n && h.forEach(function(c) {
|
|
1522
1527
|
c.addEventListener("scroll", i.update, Bt);
|
|
@@ -1526,16 +1531,16 @@ function Zs(e) {
|
|
|
1526
1531
|
}), a && r.removeEventListener("resize", i.update, Bt);
|
|
1527
1532
|
};
|
|
1528
1533
|
}
|
|
1529
|
-
const
|
|
1534
|
+
const Bs = {
|
|
1530
1535
|
name: "eventListeners",
|
|
1531
1536
|
enabled: !0,
|
|
1532
1537
|
phase: "write",
|
|
1533
1538
|
fn: function() {
|
|
1534
1539
|
},
|
|
1535
|
-
effect:
|
|
1540
|
+
effect: Ds,
|
|
1536
1541
|
data: {}
|
|
1537
1542
|
};
|
|
1538
|
-
var
|
|
1543
|
+
var Ws = {
|
|
1539
1544
|
left: "right",
|
|
1540
1545
|
right: "left",
|
|
1541
1546
|
bottom: "top",
|
|
@@ -1543,16 +1548,16 @@ var Bs = {
|
|
|
1543
1548
|
};
|
|
1544
1549
|
function Wt(e) {
|
|
1545
1550
|
return e.replace(/left|right|bottom|top/g, function(t) {
|
|
1546
|
-
return
|
|
1551
|
+
return Ws[t];
|
|
1547
1552
|
});
|
|
1548
1553
|
}
|
|
1549
|
-
var
|
|
1554
|
+
var Fs = {
|
|
1550
1555
|
start: "end",
|
|
1551
1556
|
end: "start"
|
|
1552
1557
|
};
|
|
1553
|
-
function
|
|
1558
|
+
function ze(e) {
|
|
1554
1559
|
return e.replace(/start|end/g, function(t) {
|
|
1555
|
-
return
|
|
1560
|
+
return Fs[t];
|
|
1556
1561
|
});
|
|
1557
1562
|
}
|
|
1558
1563
|
function he(e) {
|
|
@@ -1565,11 +1570,11 @@ function he(e) {
|
|
|
1565
1570
|
function de(e) {
|
|
1566
1571
|
return mt(Q(e)).left + he(e).scrollLeft;
|
|
1567
1572
|
}
|
|
1568
|
-
function
|
|
1573
|
+
function Vs(e, t) {
|
|
1569
1574
|
var i = B(e), o = Q(e), s = i.visualViewport, n = o.clientWidth, l = o.clientHeight, a = 0, r = 0;
|
|
1570
1575
|
if (s) {
|
|
1571
1576
|
n = s.width, l = s.height;
|
|
1572
|
-
var h =
|
|
1577
|
+
var h = si();
|
|
1573
1578
|
(h || !h && t === "fixed") && (a = s.offsetLeft, r = s.offsetTop);
|
|
1574
1579
|
}
|
|
1575
1580
|
return {
|
|
@@ -1579,7 +1584,7 @@ function Fs(e, t) {
|
|
|
1579
1584
|
y: r
|
|
1580
1585
|
};
|
|
1581
1586
|
}
|
|
1582
|
-
function
|
|
1587
|
+
function Ns(e) {
|
|
1583
1588
|
var t, i = Q(e), o = he(e), s = (t = e.ownerDocument) == null ? void 0 : t.body, n = it(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), l = it(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), a = -o.scrollLeft + de(e), r = -o.scrollTop;
|
|
1584
1589
|
return q(s || i).direction === "rtl" && (a += it(i.clientWidth, s ? s.clientWidth : 0) - n), {
|
|
1585
1590
|
width: n,
|
|
@@ -1592,13 +1597,13 @@ function pe(e) {
|
|
|
1592
1597
|
var t = q(e), i = t.overflow, o = t.overflowX, s = t.overflowY;
|
|
1593
1598
|
return /auto|scroll|overlay|hidden/.test(i + s + o);
|
|
1594
1599
|
}
|
|
1595
|
-
function
|
|
1596
|
-
return ["html", "body", "#document"].indexOf($(e)) >= 0 ? e.ownerDocument.body : W(e) && pe(e) ? e :
|
|
1600
|
+
function ci(e) {
|
|
1601
|
+
return ["html", "body", "#document"].indexOf($(e)) >= 0 ? e.ownerDocument.body : W(e) && pe(e) ? e : ci(zt(e));
|
|
1597
1602
|
}
|
|
1598
1603
|
function xt(e, t) {
|
|
1599
1604
|
var i;
|
|
1600
1605
|
t === void 0 && (t = []);
|
|
1601
|
-
var o =
|
|
1606
|
+
var o = ci(e), s = o === ((i = e.ownerDocument) == null ? void 0 : i.body), n = B(o), l = s ? [n].concat(n.visualViewport || [], pe(o) ? o : []) : o, a = t.concat(l);
|
|
1602
1607
|
return s ? a : (
|
|
1603
1608
|
// $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
|
|
1604
1609
|
a.concat(xt(zt(l)))
|
|
@@ -1612,27 +1617,27 @@ function ne(e) {
|
|
|
1612
1617
|
bottom: e.y + e.height
|
|
1613
1618
|
});
|
|
1614
1619
|
}
|
|
1615
|
-
function
|
|
1620
|
+
function zs(e, t) {
|
|
1616
1621
|
var i = mt(e, !1, t === "fixed");
|
|
1617
1622
|
return i.top = i.top + e.clientTop, i.left = i.left + e.clientLeft, i.bottom = i.top + e.clientHeight, i.right = i.left + e.clientWidth, i.width = e.clientWidth, i.height = e.clientHeight, i.x = i.left, i.y = i.top, i;
|
|
1618
1623
|
}
|
|
1619
|
-
function
|
|
1620
|
-
return t ===
|
|
1624
|
+
function $e(e, t, i) {
|
|
1625
|
+
return t === ii ? ne(Vs(e, i)) : ot(t) ? zs(t, i) : ne(Ns(Q(e)));
|
|
1621
1626
|
}
|
|
1622
|
-
function
|
|
1627
|
+
function $s(e) {
|
|
1623
1628
|
var t = xt(zt(e)), i = ["absolute", "fixed"].indexOf(q(e).position) >= 0, o = i && W(e) ? At(e) : e;
|
|
1624
1629
|
return ot(o) ? t.filter(function(s) {
|
|
1625
|
-
return ot(s) &&
|
|
1630
|
+
return ot(s) && ni(s, o) && $(s) !== "body";
|
|
1626
1631
|
}) : [];
|
|
1627
1632
|
}
|
|
1628
|
-
function
|
|
1629
|
-
var s = t === "clippingParents" ?
|
|
1630
|
-
var c =
|
|
1633
|
+
function js(e, t, i, o) {
|
|
1634
|
+
var s = t === "clippingParents" ? $s(e) : [].concat(t), n = [].concat(s, [i]), l = n[0], a = n.reduce(function(r, h) {
|
|
1635
|
+
var c = $e(e, h, o);
|
|
1631
1636
|
return r.top = it(c.top, r.top), r.right = Vt(c.right, r.right), r.bottom = Vt(c.bottom, r.bottom), r.left = it(c.left, r.left), r;
|
|
1632
|
-
},
|
|
1637
|
+
}, $e(e, l, o));
|
|
1633
1638
|
return a.width = a.right - a.left, a.height = a.bottom - a.top, a.x = a.left, a.y = a.top, a;
|
|
1634
1639
|
}
|
|
1635
|
-
function
|
|
1640
|
+
function hi(e) {
|
|
1636
1641
|
var t = e.reference, i = e.element, o = e.placement, s = o ? z(o) : null, n = o ? ft(o) : null, l = t.x + t.width / 2 - i.width / 2, a = t.y + t.height / 2 - i.height / 2, r;
|
|
1637
1642
|
switch (s) {
|
|
1638
1643
|
case X:
|
|
@@ -1681,11 +1686,11 @@ function ci(e) {
|
|
|
1681
1686
|
}
|
|
1682
1687
|
function Et(e, t) {
|
|
1683
1688
|
t === void 0 && (t = {});
|
|
1684
|
-
var i = t, o = i.placement, s = o === void 0 ? e.placement : o, n = i.strategy, l = n === void 0 ? e.strategy : n, a = i.boundary, r = a === void 0 ?
|
|
1689
|
+
var i = t, o = i.placement, s = o === void 0 ? e.placement : o, n = i.strategy, l = n === void 0 ? e.strategy : n, a = i.boundary, r = a === void 0 ? ps : a, h = i.rootBoundary, c = h === void 0 ? ii : h, p = i.elementContext, f = p === void 0 ? wt : p, u = i.altBoundary, C = u === void 0 ? !1 : u, b = i.padding, v = b === void 0 ? 0 : b, x = ai(typeof v != "number" ? v : li(v, kt)), E = f === wt ? us : wt, w = e.rects.popper, g = e.elements[C ? E : f], O = js(ot(g) ? g : g.contextElement || Q(e.elements.popper), r, c, l), m = mt(e.elements.reference), y = hi({
|
|
1685
1690
|
reference: m,
|
|
1686
|
-
element:
|
|
1691
|
+
element: w,
|
|
1687
1692
|
placement: s
|
|
1688
|
-
}), I = ne(Object.assign({},
|
|
1693
|
+
}), I = ne(Object.assign({}, w, y)), k = f === wt ? I : m, A = {
|
|
1689
1694
|
top: O.top - k.top + x.top,
|
|
1690
1695
|
bottom: k.bottom - O.bottom + x.bottom,
|
|
1691
1696
|
left: O.left - k.left + x.left,
|
|
@@ -1700,46 +1705,46 @@ function Et(e, t) {
|
|
|
1700
1705
|
}
|
|
1701
1706
|
return A;
|
|
1702
1707
|
}
|
|
1703
|
-
function
|
|
1708
|
+
function Gs(e, t) {
|
|
1704
1709
|
t === void 0 && (t = {});
|
|
1705
|
-
var i = t, o = i.placement, s = i.boundary, n = i.rootBoundary, l = i.padding, a = i.flipVariations, r = i.allowedAutoPlacements, h = r === void 0 ?
|
|
1706
|
-
return ft(
|
|
1707
|
-
}) : kt, f = p.filter(function(
|
|
1708
|
-
return h.indexOf(
|
|
1710
|
+
var i = t, o = i.placement, s = i.boundary, n = i.rootBoundary, l = i.padding, a = i.flipVariations, r = i.allowedAutoPlacements, h = r === void 0 ? oi : r, c = ft(o), p = c ? a ? Fe : Fe.filter(function(C) {
|
|
1711
|
+
return ft(C) === c;
|
|
1712
|
+
}) : kt, f = p.filter(function(C) {
|
|
1713
|
+
return h.indexOf(C) >= 0;
|
|
1709
1714
|
});
|
|
1710
1715
|
f.length === 0 && (f = p);
|
|
1711
|
-
var u = f.reduce(function(
|
|
1712
|
-
return
|
|
1716
|
+
var u = f.reduce(function(C, b) {
|
|
1717
|
+
return C[b] = Et(e, {
|
|
1713
1718
|
placement: b,
|
|
1714
1719
|
boundary: s,
|
|
1715
1720
|
rootBoundary: n,
|
|
1716
1721
|
padding: l
|
|
1717
|
-
})[z(b)],
|
|
1722
|
+
})[z(b)], C;
|
|
1718
1723
|
}, {});
|
|
1719
|
-
return Object.keys(u).sort(function(
|
|
1720
|
-
return u[
|
|
1724
|
+
return Object.keys(u).sort(function(C, b) {
|
|
1725
|
+
return u[C] - u[b];
|
|
1721
1726
|
});
|
|
1722
1727
|
}
|
|
1723
|
-
function
|
|
1728
|
+
function _s(e) {
|
|
1724
1729
|
if (z(e) === re)
|
|
1725
1730
|
return [];
|
|
1726
1731
|
var t = Wt(e);
|
|
1727
|
-
return [
|
|
1732
|
+
return [ze(e), t, ze(t)];
|
|
1728
1733
|
}
|
|
1729
|
-
function
|
|
1734
|
+
function Us(e) {
|
|
1730
1735
|
var t = e.state, i = e.options, o = e.name;
|
|
1731
1736
|
if (!t.modifiersData[o]._skip) {
|
|
1732
|
-
for (var s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, a = l === void 0 ? !0 : l, r = i.fallbackPlacements, h = i.padding, c = i.boundary, p = i.rootBoundary, f = i.altBoundary, u = i.flipVariations,
|
|
1733
|
-
return J.concat(z(N) === re ?
|
|
1737
|
+
for (var s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, a = l === void 0 ? !0 : l, r = i.fallbackPlacements, h = i.padding, c = i.boundary, p = i.rootBoundary, f = i.altBoundary, u = i.flipVariations, C = u === void 0 ? !0 : u, b = i.allowedAutoPlacements, v = t.options.placement, x = z(v), E = x === v, w = r || (E || !C ? [Wt(v)] : _s(v)), g = [v].concat(w).reduce(function(J, N) {
|
|
1738
|
+
return J.concat(z(N) === re ? Gs(t, {
|
|
1734
1739
|
placement: N,
|
|
1735
1740
|
boundary: c,
|
|
1736
1741
|
rootBoundary: p,
|
|
1737
1742
|
padding: h,
|
|
1738
|
-
flipVariations:
|
|
1743
|
+
flipVariations: C,
|
|
1739
1744
|
allowedAutoPlacements: b
|
|
1740
1745
|
}) : N);
|
|
1741
|
-
}, []), O = t.rects.reference, m = t.rects.popper,
|
|
1742
|
-
var T =
|
|
1746
|
+
}, []), O = t.rects.reference, m = t.rects.popper, y = /* @__PURE__ */ new Map(), I = !0, k = g[0], A = 0; A < g.length; A++) {
|
|
1747
|
+
var T = g[A], Y = z(T), L = ft(T) === pt, j = [X, F].indexOf(Y) >= 0, G = j ? "width" : "height", P = Et(t, {
|
|
1743
1748
|
placement: T,
|
|
1744
1749
|
boundary: c,
|
|
1745
1750
|
rootBoundary: p,
|
|
@@ -1754,12 +1759,12 @@ function _s(e) {
|
|
|
1754
1759
|
k = T, I = !1;
|
|
1755
1760
|
break;
|
|
1756
1761
|
}
|
|
1757
|
-
|
|
1762
|
+
y.set(T, _);
|
|
1758
1763
|
}
|
|
1759
1764
|
if (I)
|
|
1760
|
-
for (var nt =
|
|
1761
|
-
var et =
|
|
1762
|
-
var U =
|
|
1765
|
+
for (var nt = C ? 3 : 1, vt = function(N) {
|
|
1766
|
+
var et = g.find(function(at) {
|
|
1767
|
+
var U = y.get(at);
|
|
1763
1768
|
if (U)
|
|
1764
1769
|
return U.slice(0, N).every(function(lt) {
|
|
1765
1770
|
return lt;
|
|
@@ -1774,17 +1779,17 @@ function _s(e) {
|
|
|
1774
1779
|
t.placement !== k && (t.modifiersData[o]._skip = !0, t.placement = k, t.reset = !0);
|
|
1775
1780
|
}
|
|
1776
1781
|
}
|
|
1777
|
-
const
|
|
1782
|
+
const Ks = {
|
|
1778
1783
|
name: "flip",
|
|
1779
1784
|
enabled: !0,
|
|
1780
1785
|
phase: "main",
|
|
1781
|
-
fn:
|
|
1786
|
+
fn: Us,
|
|
1782
1787
|
requiresIfExists: ["offset"],
|
|
1783
1788
|
data: {
|
|
1784
1789
|
_skip: !1
|
|
1785
1790
|
}
|
|
1786
1791
|
};
|
|
1787
|
-
function
|
|
1792
|
+
function je(e, t, i) {
|
|
1788
1793
|
return i === void 0 && (i = {
|
|
1789
1794
|
x: 0,
|
|
1790
1795
|
y: 0
|
|
@@ -1795,17 +1800,17 @@ function $e(e, t, i) {
|
|
|
1795
1800
|
left: e.left - t.width - i.x
|
|
1796
1801
|
};
|
|
1797
1802
|
}
|
|
1798
|
-
function
|
|
1803
|
+
function Ge(e) {
|
|
1799
1804
|
return [X, V, F, Z].some(function(t) {
|
|
1800
1805
|
return e[t] >= 0;
|
|
1801
1806
|
});
|
|
1802
1807
|
}
|
|
1803
|
-
function
|
|
1808
|
+
function qs(e) {
|
|
1804
1809
|
var t = e.state, i = e.name, o = t.rects.reference, s = t.rects.popper, n = t.modifiersData.preventOverflow, l = Et(t, {
|
|
1805
1810
|
elementContext: "reference"
|
|
1806
1811
|
}), a = Et(t, {
|
|
1807
1812
|
altBoundary: !0
|
|
1808
|
-
}), r =
|
|
1813
|
+
}), r = je(l, o), h = je(a, s, n), c = Ge(r), p = Ge(h);
|
|
1809
1814
|
t.modifiersData[i] = {
|
|
1810
1815
|
referenceClippingOffsets: r,
|
|
1811
1816
|
popperEscapeOffsets: h,
|
|
@@ -1816,14 +1821,14 @@ function Ks(e) {
|
|
|
1816
1821
|
"data-popper-escaped": p
|
|
1817
1822
|
});
|
|
1818
1823
|
}
|
|
1819
|
-
const
|
|
1824
|
+
const Js = {
|
|
1820
1825
|
name: "hide",
|
|
1821
1826
|
enabled: !0,
|
|
1822
1827
|
phase: "main",
|
|
1823
1828
|
requiresIfExists: ["preventOverflow"],
|
|
1824
|
-
fn:
|
|
1829
|
+
fn: qs
|
|
1825
1830
|
};
|
|
1826
|
-
function
|
|
1831
|
+
function Qs(e, t, i) {
|
|
1827
1832
|
var o = z(e), s = [Z, X].indexOf(o) >= 0 ? -1 : 1, n = typeof i == "function" ? i(Object.assign({}, t, {
|
|
1828
1833
|
placement: e
|
|
1829
1834
|
})) : i, l = n[0], a = n[1];
|
|
@@ -1835,44 +1840,44 @@ function Js(e, t, i) {
|
|
|
1835
1840
|
y: a
|
|
1836
1841
|
};
|
|
1837
1842
|
}
|
|
1838
|
-
function
|
|
1839
|
-
var t = e.state, i = e.options, o = e.name, s = i.offset, n = s === void 0 ? [0, 0] : s, l =
|
|
1840
|
-
return c[p] =
|
|
1843
|
+
function tn(e) {
|
|
1844
|
+
var t = e.state, i = e.options, o = e.name, s = i.offset, n = s === void 0 ? [0, 0] : s, l = oi.reduce(function(c, p) {
|
|
1845
|
+
return c[p] = Qs(p, t.rects, n), c;
|
|
1841
1846
|
}, {}), a = l[t.placement], r = a.x, h = a.y;
|
|
1842
1847
|
t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += r, t.modifiersData.popperOffsets.y += h), t.modifiersData[o] = l;
|
|
1843
1848
|
}
|
|
1844
|
-
const
|
|
1849
|
+
const en = {
|
|
1845
1850
|
name: "offset",
|
|
1846
1851
|
enabled: !0,
|
|
1847
1852
|
phase: "main",
|
|
1848
1853
|
requires: ["popperOffsets"],
|
|
1849
|
-
fn:
|
|
1854
|
+
fn: tn
|
|
1850
1855
|
};
|
|
1851
|
-
function
|
|
1856
|
+
function on(e) {
|
|
1852
1857
|
var t = e.state, i = e.name;
|
|
1853
|
-
t.modifiersData[i] =
|
|
1858
|
+
t.modifiersData[i] = hi({
|
|
1854
1859
|
reference: t.rects.reference,
|
|
1855
1860
|
element: t.rects.popper,
|
|
1856
1861
|
placement: t.placement
|
|
1857
1862
|
});
|
|
1858
1863
|
}
|
|
1859
|
-
const
|
|
1864
|
+
const sn = {
|
|
1860
1865
|
name: "popperOffsets",
|
|
1861
1866
|
enabled: !0,
|
|
1862
1867
|
phase: "read",
|
|
1863
|
-
fn:
|
|
1868
|
+
fn: on,
|
|
1864
1869
|
data: {}
|
|
1865
1870
|
};
|
|
1866
|
-
function
|
|
1871
|
+
function nn(e) {
|
|
1867
1872
|
return e === "x" ? "y" : "x";
|
|
1868
1873
|
}
|
|
1869
|
-
function
|
|
1870
|
-
var t = e.state, i = e.options, o = e.name, s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, a = l === void 0 ? !1 : l, r = i.boundary, h = i.rootBoundary, c = i.altBoundary, p = i.padding, f = i.tether, u = f === void 0 ? !0 : f,
|
|
1874
|
+
function rn(e) {
|
|
1875
|
+
var t = e.state, i = e.options, o = e.name, s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, a = l === void 0 ? !1 : l, r = i.boundary, h = i.rootBoundary, c = i.altBoundary, p = i.padding, f = i.tether, u = f === void 0 ? !0 : f, C = i.tetherOffset, b = C === void 0 ? 0 : C, v = Et(t, {
|
|
1871
1876
|
boundary: r,
|
|
1872
1877
|
rootBoundary: h,
|
|
1873
1878
|
padding: p,
|
|
1874
1879
|
altBoundary: c
|
|
1875
|
-
}), x = z(t.placement), E = ft(t.placement),
|
|
1880
|
+
}), x = z(t.placement), E = ft(t.placement), w = !E, g = ce(x), O = nn(g), m = t.modifiersData.popperOffsets, y = t.rects.reference, I = t.rects.popper, k = typeof b == "function" ? b(Object.assign({}, t.rects, {
|
|
1876
1881
|
placement: t.placement
|
|
1877
1882
|
})) : b, A = typeof k == "number" ? {
|
|
1878
1883
|
mainAxis: k,
|
|
@@ -1886,42 +1891,42 @@ function nn(e) {
|
|
|
1886
1891
|
};
|
|
1887
1892
|
if (m) {
|
|
1888
1893
|
if (n) {
|
|
1889
|
-
var L, j =
|
|
1894
|
+
var L, j = g === "y" ? X : Z, G = g === "y" ? F : V, P = g === "y" ? "height" : "width", D = m[g], st = D + v[j], _ = D - v[G], nt = u ? -I[P] / 2 : 0, vt = E === pt ? y[P] : I[P], tt = E === pt ? -I[P] : -y[P], rt = t.elements.arrow, J = u && rt ? le(rt) : {
|
|
1890
1895
|
width: 0,
|
|
1891
1896
|
height: 0
|
|
1892
|
-
}, N = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding :
|
|
1893
|
-
m[
|
|
1897
|
+
}, N = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : ri(), et = N[j], at = N[G], U = It(0, y[P], J[P]), lt = w ? y[P] / 2 - nt - U - et - A.mainAxis : vt - U - et - A.mainAxis, St = w ? -y[P] / 2 + nt + U + at + A.mainAxis : tt + U + at + A.mainAxis, ct = t.elements.arrow && At(t.elements.arrow), $t = ct ? g === "y" ? ct.clientTop || 0 : ct.clientLeft || 0 : 0, Tt = (L = T == null ? void 0 : T[g]) != null ? L : 0, jt = D + lt - Tt - $t, Gt = D + St - Tt, Lt = It(u ? Vt(st, jt) : st, D, u ? it(_, Gt) : _);
|
|
1898
|
+
m[g] = Lt, Y[g] = Lt - D;
|
|
1894
1899
|
}
|
|
1895
1900
|
if (a) {
|
|
1896
|
-
var Pt, _t =
|
|
1901
|
+
var Pt, _t = g === "x" ? X : Z, Ut = g === "x" ? F : V, K = m[O], ht = O === "y" ? "height" : "width", Mt = K + v[_t], Rt = K - v[Ut], gt = [X, Z].indexOf(x) !== -1, Yt = (Pt = T == null ? void 0 : T[O]) != null ? Pt : 0, Ht = gt ? Mt : K - y[ht] - I[ht] - Yt + A.altAxis, Kt = gt ? K + y[ht] + I[ht] - Yt - A.altAxis : Rt, qt = u && gt ? Ts(Ht, K, Kt) : It(u ? Ht : Mt, K, u ? Kt : Rt);
|
|
1897
1902
|
m[O] = qt, Y[O] = qt - K;
|
|
1898
1903
|
}
|
|
1899
1904
|
t.modifiersData[o] = Y;
|
|
1900
1905
|
}
|
|
1901
1906
|
}
|
|
1902
|
-
const
|
|
1907
|
+
const an = {
|
|
1903
1908
|
name: "preventOverflow",
|
|
1904
1909
|
enabled: !0,
|
|
1905
1910
|
phase: "main",
|
|
1906
|
-
fn:
|
|
1911
|
+
fn: rn,
|
|
1907
1912
|
requiresIfExists: ["offset"]
|
|
1908
1913
|
};
|
|
1909
|
-
function
|
|
1914
|
+
function ln(e) {
|
|
1910
1915
|
return {
|
|
1911
1916
|
scrollLeft: e.scrollLeft,
|
|
1912
1917
|
scrollTop: e.scrollTop
|
|
1913
1918
|
};
|
|
1914
1919
|
}
|
|
1915
|
-
function ln(e) {
|
|
1916
|
-
return e === B(e) || !W(e) ? he(e) : an(e);
|
|
1917
|
-
}
|
|
1918
1920
|
function cn(e) {
|
|
1921
|
+
return e === B(e) || !W(e) ? he(e) : ln(e);
|
|
1922
|
+
}
|
|
1923
|
+
function hn(e) {
|
|
1919
1924
|
var t = e.getBoundingClientRect(), i = ut(t.width) / e.offsetWidth || 1, o = ut(t.height) / e.offsetHeight || 1;
|
|
1920
1925
|
return i !== 1 || o !== 1;
|
|
1921
1926
|
}
|
|
1922
|
-
function
|
|
1927
|
+
function dn(e, t, i) {
|
|
1923
1928
|
i === void 0 && (i = !1);
|
|
1924
|
-
var o = W(t), s = W(t) &&
|
|
1929
|
+
var o = W(t), s = W(t) && hn(t), n = Q(t), l = mt(e, s, i), a = {
|
|
1925
1930
|
scrollLeft: 0,
|
|
1926
1931
|
scrollTop: 0
|
|
1927
1932
|
}, r = {
|
|
@@ -1929,14 +1934,14 @@ function hn(e, t, i) {
|
|
|
1929
1934
|
y: 0
|
|
1930
1935
|
};
|
|
1931
1936
|
return (o || !o && !i) && (($(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
|
|
1932
|
-
pe(n)) && (a =
|
|
1937
|
+
pe(n)) && (a = cn(t)), W(t) ? (r = mt(t, !0), r.x += t.clientLeft, r.y += t.clientTop) : n && (r.x = de(n))), {
|
|
1933
1938
|
x: l.left + a.scrollLeft - r.x,
|
|
1934
1939
|
y: l.top + a.scrollTop - r.y,
|
|
1935
1940
|
width: l.width,
|
|
1936
1941
|
height: l.height
|
|
1937
1942
|
};
|
|
1938
1943
|
}
|
|
1939
|
-
function
|
|
1944
|
+
function pn(e) {
|
|
1940
1945
|
var t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set(), o = [];
|
|
1941
1946
|
e.forEach(function(n) {
|
|
1942
1947
|
t.set(n.name, n);
|
|
@@ -1955,15 +1960,15 @@ function dn(e) {
|
|
|
1955
1960
|
i.has(n.name) || s(n);
|
|
1956
1961
|
}), o;
|
|
1957
1962
|
}
|
|
1958
|
-
function
|
|
1959
|
-
var t =
|
|
1960
|
-
return
|
|
1963
|
+
function un(e) {
|
|
1964
|
+
var t = pn(e);
|
|
1965
|
+
return xs.reduce(function(i, o) {
|
|
1961
1966
|
return i.concat(t.filter(function(s) {
|
|
1962
1967
|
return s.phase === o;
|
|
1963
1968
|
}));
|
|
1964
1969
|
}, []);
|
|
1965
1970
|
}
|
|
1966
|
-
function
|
|
1971
|
+
function mn(e) {
|
|
1967
1972
|
var t;
|
|
1968
1973
|
return function() {
|
|
1969
1974
|
return t || (t = new Promise(function(i) {
|
|
@@ -1973,7 +1978,7 @@ function un(e) {
|
|
|
1973
1978
|
})), t;
|
|
1974
1979
|
};
|
|
1975
1980
|
}
|
|
1976
|
-
function
|
|
1981
|
+
function fn(e) {
|
|
1977
1982
|
var t = e.reduce(function(i, o) {
|
|
1978
1983
|
var s = i[o.name];
|
|
1979
1984
|
return i[o.name] = s ? Object.assign({}, s, o, {
|
|
@@ -1985,27 +1990,27 @@ function mn(e) {
|
|
|
1985
1990
|
return t[i];
|
|
1986
1991
|
});
|
|
1987
1992
|
}
|
|
1988
|
-
var
|
|
1993
|
+
var _e = {
|
|
1989
1994
|
placement: "bottom",
|
|
1990
1995
|
modifiers: [],
|
|
1991
1996
|
strategy: "absolute"
|
|
1992
1997
|
};
|
|
1993
|
-
function
|
|
1998
|
+
function Ue() {
|
|
1994
1999
|
for (var e = arguments.length, t = new Array(e), i = 0; i < e; i++)
|
|
1995
2000
|
t[i] = arguments[i];
|
|
1996
2001
|
return !t.some(function(o) {
|
|
1997
2002
|
return !(o && typeof o.getBoundingClientRect == "function");
|
|
1998
2003
|
});
|
|
1999
2004
|
}
|
|
2000
|
-
function
|
|
2005
|
+
function vn(e) {
|
|
2001
2006
|
e === void 0 && (e = {});
|
|
2002
|
-
var t = e, i = t.defaultModifiers, o = i === void 0 ? [] : i, s = t.defaultOptions, n = s === void 0 ?
|
|
2007
|
+
var t = e, i = t.defaultModifiers, o = i === void 0 ? [] : i, s = t.defaultOptions, n = s === void 0 ? _e : s;
|
|
2003
2008
|
return function(a, r, h) {
|
|
2004
2009
|
h === void 0 && (h = n);
|
|
2005
2010
|
var c = {
|
|
2006
2011
|
placement: "bottom",
|
|
2007
2012
|
orderedModifiers: [],
|
|
2008
|
-
options: Object.assign({},
|
|
2013
|
+
options: Object.assign({}, _e, n),
|
|
2009
2014
|
modifiersData: {},
|
|
2010
2015
|
elements: {
|
|
2011
2016
|
reference: a,
|
|
@@ -2021,10 +2026,10 @@ function fn(e) {
|
|
|
2021
2026
|
reference: ot(a) ? xt(a) : a.contextElement ? xt(a.contextElement) : [],
|
|
2022
2027
|
popper: xt(r)
|
|
2023
2028
|
};
|
|
2024
|
-
var
|
|
2025
|
-
return c.orderedModifiers =
|
|
2026
|
-
return
|
|
2027
|
-
}),
|
|
2029
|
+
var w = un(fn([].concat(o, c.options.modifiers)));
|
|
2030
|
+
return c.orderedModifiers = w.filter(function(g) {
|
|
2031
|
+
return g.enabled;
|
|
2032
|
+
}), C(), u.update();
|
|
2028
2033
|
},
|
|
2029
2034
|
// Sync update – it will always be executed, even if not necessary. This
|
|
2030
2035
|
// is useful for low frequency updates where sync behavior simplifies the
|
|
@@ -2033,20 +2038,20 @@ function fn(e) {
|
|
|
2033
2038
|
// prefer the async Popper#update method
|
|
2034
2039
|
forceUpdate: function() {
|
|
2035
2040
|
if (!f) {
|
|
2036
|
-
var x = c.elements, E = x.reference,
|
|
2037
|
-
if (
|
|
2041
|
+
var x = c.elements, E = x.reference, w = x.popper;
|
|
2042
|
+
if (Ue(E, w)) {
|
|
2038
2043
|
c.rects = {
|
|
2039
|
-
reference:
|
|
2040
|
-
popper: le(
|
|
2044
|
+
reference: dn(E, At(w), c.options.strategy === "fixed"),
|
|
2045
|
+
popper: le(w)
|
|
2041
2046
|
}, c.reset = !1, c.placement = c.options.placement, c.orderedModifiers.forEach(function(A) {
|
|
2042
2047
|
return c.modifiersData[A.name] = Object.assign({}, A.data);
|
|
2043
2048
|
});
|
|
2044
|
-
for (var
|
|
2049
|
+
for (var g = 0; g < c.orderedModifiers.length; g++) {
|
|
2045
2050
|
if (c.reset === !0) {
|
|
2046
|
-
c.reset = !1,
|
|
2051
|
+
c.reset = !1, g = -1;
|
|
2047
2052
|
continue;
|
|
2048
2053
|
}
|
|
2049
|
-
var O = c.orderedModifiers[
|
|
2054
|
+
var O = c.orderedModifiers[g], m = O.fn, y = O.options, I = y === void 0 ? {} : y, k = O.name;
|
|
2050
2055
|
typeof m == "function" && (c = m({
|
|
2051
2056
|
state: c,
|
|
2052
2057
|
options: I,
|
|
@@ -2059,7 +2064,7 @@ function fn(e) {
|
|
|
2059
2064
|
},
|
|
2060
2065
|
// Async and optimistically optimized update – it will not be executed if
|
|
2061
2066
|
// not necessary (debounced to run at most once-per-tick)
|
|
2062
|
-
update:
|
|
2067
|
+
update: mn(function() {
|
|
2063
2068
|
return new Promise(function(v) {
|
|
2064
2069
|
u.forceUpdate(), v(c);
|
|
2065
2070
|
});
|
|
@@ -2068,20 +2073,20 @@ function fn(e) {
|
|
|
2068
2073
|
b(), f = !0;
|
|
2069
2074
|
}
|
|
2070
2075
|
};
|
|
2071
|
-
if (!
|
|
2076
|
+
if (!Ue(a, r))
|
|
2072
2077
|
return u;
|
|
2073
2078
|
u.setOptions(h).then(function(v) {
|
|
2074
2079
|
!f && h.onFirstUpdate && h.onFirstUpdate(v);
|
|
2075
2080
|
});
|
|
2076
|
-
function
|
|
2081
|
+
function C() {
|
|
2077
2082
|
c.orderedModifiers.forEach(function(v) {
|
|
2078
|
-
var x = v.name, E = v.options,
|
|
2079
|
-
if (typeof
|
|
2080
|
-
var O =
|
|
2083
|
+
var x = v.name, E = v.options, w = E === void 0 ? {} : E, g = v.effect;
|
|
2084
|
+
if (typeof g == "function") {
|
|
2085
|
+
var O = g({
|
|
2081
2086
|
state: c,
|
|
2082
2087
|
name: x,
|
|
2083
2088
|
instance: u,
|
|
2084
|
-
options:
|
|
2089
|
+
options: w
|
|
2085
2090
|
}), m = function() {
|
|
2086
2091
|
};
|
|
2087
2092
|
p.push(O || m);
|
|
@@ -2096,10 +2101,10 @@ function fn(e) {
|
|
|
2096
2101
|
return u;
|
|
2097
2102
|
};
|
|
2098
2103
|
}
|
|
2099
|
-
var
|
|
2100
|
-
defaultModifiers:
|
|
2104
|
+
var gn = [Bs, sn, Zs, ks, en, Ks, an, Rs, Js], yn = /* @__PURE__ */ vn({
|
|
2105
|
+
defaultModifiers: gn
|
|
2101
2106
|
});
|
|
2102
|
-
class
|
|
2107
|
+
class bn {
|
|
2103
2108
|
/**
|
|
2104
2109
|
* @param {Array} hotspotsConfig - Hotspot configuration array
|
|
2105
2110
|
* @param {HTMLElement} container - Container element
|
|
@@ -2110,10 +2115,10 @@ class yn {
|
|
|
2110
2115
|
constructor(t, i, o, s = {}) {
|
|
2111
2116
|
ye(this, "updateHotspotPosition", (t, i) => {
|
|
2112
2117
|
this.currentActiveIndex = t, this.currentOrientation = i;
|
|
2113
|
-
const o =
|
|
2118
|
+
const o = os(this.hotspotsConfig, t, i);
|
|
2114
2119
|
this.hideHotspots(), o.forEach((s) => this.updateAndShowHotspot(s, t));
|
|
2115
2120
|
});
|
|
2116
|
-
this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer =
|
|
2121
|
+
this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer = yo(this.container), this.hotspotsConfig = ls(t), this.shouldHidePopper = !0, this.hidePopper = this.hidePopper.bind(this), this.forceHidePopper = this.forceHidePopper.bind(this), this.imageAspectRatio = o, this.hotspotElements = /* @__PURE__ */ new Map(), this.popperListeners = [], this.trigger = s.trigger || "hover", this.onOpen = s.onOpen || null, this.onClose = s.onClose || null, this.onProductClick = s.onProductClick || null;
|
|
2117
2122
|
const { containerSize: n } = t[0];
|
|
2118
2123
|
this.initialContainerSize = n || [i.offsetWidth, i.offsetHeight], this.initHotspots(), this.updateHotspotsForResize(i.offsetWidth, i.offsetHeight), this.observeContainerResize();
|
|
2119
2124
|
}
|
|
@@ -2124,7 +2129,7 @@ class yn {
|
|
|
2124
2129
|
}), this.resizeObserver.observe(this.container);
|
|
2125
2130
|
}
|
|
2126
2131
|
updateHotspotsForResize(t, i) {
|
|
2127
|
-
this.hotspotsConfig =
|
|
2132
|
+
this.hotspotsConfig = cs({
|
|
2128
2133
|
newWidth: t,
|
|
2129
2134
|
newHeight: i,
|
|
2130
2135
|
initialContainerSize: this.initialContainerSize,
|
|
@@ -2140,8 +2145,8 @@ class yn {
|
|
|
2140
2145
|
showPopper({ hotspotElement: t, content: i, id: o, keepOpen: s }) {
|
|
2141
2146
|
var c;
|
|
2142
2147
|
this.popperInstance && this.hidePopper();
|
|
2143
|
-
const n =
|
|
2144
|
-
this.popper =
|
|
2148
|
+
const n = rs(this.container);
|
|
2149
|
+
this.popper = as(i, o), this.popper.setAttribute("data-show", ""), this.currentHotspotElement = t, t.setAttribute("aria-expanded", "true"), t.setAttribute("aria-describedby", `cloudimage-360-popper-${o}`);
|
|
2145
2150
|
const l = () => {
|
|
2146
2151
|
this.shouldHidePopper = !1;
|
|
2147
2152
|
}, a = () => {
|
|
@@ -2158,15 +2163,15 @@ class yn {
|
|
|
2158
2163
|
{ element: t, event: "mouseenter", handler: h }
|
|
2159
2164
|
), this.onProductClick) {
|
|
2160
2165
|
const p = this.onProductClick, f = (u) => {
|
|
2161
|
-
const
|
|
2162
|
-
|
|
2166
|
+
const C = u.target.closest(".ci360-popper-cta[data-product-id]");
|
|
2167
|
+
C && p(C.dataset.productId, o);
|
|
2163
2168
|
};
|
|
2164
2169
|
this.popper.addEventListener("click", f), this.popperListeners.push(
|
|
2165
2170
|
{ element: this.popper, event: "click", handler: f }
|
|
2166
2171
|
);
|
|
2167
2172
|
}
|
|
2168
2173
|
this.popperInstance = {
|
|
2169
|
-
...
|
|
2174
|
+
...yn(t, this.popper, n),
|
|
2170
2175
|
keepOpen: s,
|
|
2171
2176
|
instanceId: o
|
|
2172
2177
|
};
|
|
@@ -2180,7 +2185,7 @@ class yn {
|
|
|
2180
2185
|
var t;
|
|
2181
2186
|
this.shouldHidePopper && !((t = this.popperInstance) != null && t.keepOpen) && (this.hidePopperTimeout = setTimeout(() => {
|
|
2182
2187
|
this.shouldHidePopper && this.hidePopper();
|
|
2183
|
-
},
|
|
2188
|
+
}, Fi));
|
|
2184
2189
|
}
|
|
2185
2190
|
hidePopper() {
|
|
2186
2191
|
var i, o;
|
|
@@ -2197,7 +2202,7 @@ class yn {
|
|
|
2197
2202
|
const s = this.popper;
|
|
2198
2203
|
this.popper = null, setTimeout(() => {
|
|
2199
2204
|
s.remove();
|
|
2200
|
-
},
|
|
2205
|
+
}, Vi);
|
|
2201
2206
|
}
|
|
2202
2207
|
this.shouldHidePopper = !0;
|
|
2203
2208
|
}
|
|
@@ -2209,7 +2214,7 @@ class yn {
|
|
|
2209
2214
|
this.shouldHidePopper = !0, this.popperInstance && (this.popperInstance.keepOpen = !1), this.hidePopper();
|
|
2210
2215
|
}
|
|
2211
2216
|
createHotspot(t) {
|
|
2212
|
-
const { id: i, keepOpen: o, onClick: s, label: n, markerStyle: l } = t, a =
|
|
2217
|
+
const { id: i, keepOpen: o, onClick: s, label: n, markerStyle: l } = t, a = We(t), r = ss(i, n, l);
|
|
2213
2218
|
(s || a && this.trigger === "click") && (r.style.cursor = "pointer"), r.onclick = (h) => {
|
|
2214
2219
|
var c;
|
|
2215
2220
|
h.stopPropagation(), a && this.trigger === "click" && (((c = this.popperInstance) == null ? void 0 : c.instanceId) === i ? this.hidePopper() : this.showPopper({ hotspotElement: r, content: a, id: i, keepOpen: o })), s == null || s(h, this.popperInstance, i);
|
|
@@ -2241,7 +2246,7 @@ class yn {
|
|
|
2241
2246
|
showHotspotById(t) {
|
|
2242
2247
|
const i = this.hotspotsConfig.find((n) => n.id === t);
|
|
2243
2248
|
if (!i) return;
|
|
2244
|
-
const o =
|
|
2249
|
+
const o = We(i);
|
|
2245
2250
|
if (!o) return;
|
|
2246
2251
|
const s = this.hotspotsContainer.querySelector(`[data-hotspot-id="${t}"]`);
|
|
2247
2252
|
s && s.style.opacity === "1" && this.showPopper({
|
|
@@ -2261,12 +2266,12 @@ class yn {
|
|
|
2261
2266
|
this.hidePopperTimeout && clearTimeout(this.hidePopperTimeout), this.resizeObserver.disconnect(), this.hidePopper(), this.hotspotElements.clear(), this.hotspotsContainer.innerHTML = "";
|
|
2262
2267
|
}
|
|
2263
2268
|
}
|
|
2264
|
-
const
|
|
2269
|
+
const Ke = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
|
2265
2270
|
class Nt {
|
|
2266
2271
|
constructor(t, i, o) {
|
|
2267
2272
|
this.container = t, this.isClicked = !1, this.fullscreenView = !!o, this.imagesX = [], this.imagesY = [];
|
|
2268
2273
|
const s = Math.round(window.devicePixelRatio || 1);
|
|
2269
|
-
this.devicePixelRatio =
|
|
2274
|
+
this.devicePixelRatio = Ke ? Math.min(s, 2) : s, this.id = t.id, this.movementStart = { x: 0, y: 0 }, this.draggingDirection = null, this.isReady = !1, this.velocityX = 0, this.velocityY = 0, this.lastDragTime = 0, this.lastDragX = 0, this.lastDragY = 0, this.inertiaAnimationId = null, this.hasInteracted = !1, this.currentZoomScale = 1, this.touchDevice = _o(), this.dragJustEnded = !1, this.isPinching = !1, this.initialPinchDistance = 0, this.pinchZoomLevel = 1, this.pinchZoomEmitted = !1, this.lastEmittedZoom = 1, this.panOffsetX = 0, this.panOffsetY = 0, this.useMainThreadCanvas = Ke, this.canvasWorker = this.useMainThreadCanvas ? new Jo() : new qo(), this.hotspotTimeline = null, this.hotspotTimelineIndicator = null, this.isAnimatingToFrame = !1, this.onMoveHandler = this.onMoveHandler.bind(this), this.destroy = this.destroy.bind(this), this.init(this.container, i);
|
|
2270
2275
|
}
|
|
2271
2276
|
/**
|
|
2272
2277
|
* Close ImageBitmap objects to free GPU memory
|
|
@@ -2283,7 +2288,7 @@ class Nt {
|
|
|
2283
2288
|
typeof o == "function" && o({ ...i, viewerId: this.id });
|
|
2284
2289
|
}
|
|
2285
2290
|
announce(t) {
|
|
2286
|
-
|
|
2291
|
+
wo(this.ariaLiveRegion, t);
|
|
2287
2292
|
}
|
|
2288
2293
|
mouseDown(t) {
|
|
2289
2294
|
if (!this.isReady || this.glass) return;
|
|
@@ -2302,7 +2307,7 @@ class Nt {
|
|
|
2302
2307
|
this.inertiaAnimationId = null;
|
|
2303
2308
|
return;
|
|
2304
2309
|
}
|
|
2305
|
-
const r = this.velocityX * 16, h = this.velocityY * 16, c =
|
|
2310
|
+
const r = this.velocityX * 16, h = this.velocityY * 16, c = Ze({
|
|
2306
2311
|
deltaX: r,
|
|
2307
2312
|
deltaY: h,
|
|
2308
2313
|
reversed: this.dragReverse,
|
|
@@ -2324,7 +2329,7 @@ class Nt {
|
|
|
2324
2329
|
const f = performance.now(), u = f - this.lastDragTime;
|
|
2325
2330
|
u > 0 && u < 100 && (this.velocityX = (t - this.lastDragX) / u, this.velocityY = (i - this.lastDragY) / u), this.lastDragTime = f, this.lastDragX = t, this.lastDragY = i;
|
|
2326
2331
|
}
|
|
2327
|
-
this.draggingDirection =
|
|
2332
|
+
this.draggingDirection = Ze({
|
|
2328
2333
|
deltaX: o,
|
|
2329
2334
|
deltaY: s,
|
|
2330
2335
|
reversed: this.dragReverse,
|
|
@@ -2334,7 +2339,7 @@ class Nt {
|
|
|
2334
2339
|
const n = this.fullscreenView ? document.body : this.container, l = this.dragSpeed / xe, a = l * (this.amountX / n.offsetWidth), r = l * (this.amountY / n.offsetHeight), h = this.allowSpinX ? Math.abs(Math.round(o * a)) : 0, c = this.allowSpinY ? Math.abs(Math.round(s * r)) : 0;
|
|
2335
2340
|
(this.allowSpinX && h !== 0 || this.allowSpinY && c !== 0) && (this.hasInteracted = !0, this.hideHotspotPopper(), this.onMoveHandler(this.draggingDirection, h, c), this.movementStart = { x: t, y: i }, setTimeout(() => {
|
|
2336
2341
|
this.isDragging || (this.isDragging = !0, this.emit("onDragStart"));
|
|
2337
|
-
},
|
|
2342
|
+
}, Wi));
|
|
2338
2343
|
}
|
|
2339
2344
|
mouseMove(t) {
|
|
2340
2345
|
!this.isReady || !this.isClicked && !this.isZoomed || this.glass || (this.isZoomed || this.hideAllIcons(), this.drag(t.pageX, t.pageY), this.isZoomed && this.applyZoom(t));
|
|
@@ -2365,7 +2370,7 @@ class Nt {
|
|
|
2365
2370
|
}
|
|
2366
2371
|
loadHigherQualityImages(t, i) {
|
|
2367
2372
|
const o = Ct(this.srcXConfig, t), s = this.allowSpinY ? Ct(this.srcYConfig, t) : null;
|
|
2368
|
-
|
|
2373
|
+
ke({
|
|
2369
2374
|
cdnPathX: o,
|
|
2370
2375
|
cdnPathY: s,
|
|
2371
2376
|
configX: this.srcXConfig,
|
|
@@ -2418,7 +2423,7 @@ class Nt {
|
|
|
2418
2423
|
this.isZoomed && this.removeZoom();
|
|
2419
2424
|
}
|
|
2420
2425
|
applyZoom(t) {
|
|
2421
|
-
const { offsetX: i, offsetY: o } =
|
|
2426
|
+
const { offsetX: i, offsetY: o } = Wo(t, this.canvas, this.devicePixelRatio);
|
|
2422
2427
|
this.isZoomed || (this.isZoomed = !0, this.hideAllIcons(), this.hideLoadingSpinner(), this.hideTransitionOverlay(), this.showZoomOutIcon(), this.emit("onZoomIn", { zoomLevel: this.pointerZoom }), this.announce("Zoomed in. Move mouse to pan. Click to zoom out.")), this.updateView(this.pointerZoom, i, o);
|
|
2423
2428
|
}
|
|
2424
2429
|
touchOutside(t) {
|
|
@@ -2498,7 +2503,7 @@ class Nt {
|
|
|
2498
2503
|
keyDown(t) {
|
|
2499
2504
|
if (!this.isReady) return;
|
|
2500
2505
|
const { keyCode: i } = t, o = this.keysReverse;
|
|
2501
|
-
switch (this.autoplay && this.stopAutoplay(),
|
|
2506
|
+
switch (this.autoplay && this.stopAutoplay(), Xe(i, this.allowSpinY) && (this.hasInteracted = !0, this.hideAllIcons(), this.hideHints()), i) {
|
|
2502
2507
|
case 37:
|
|
2503
2508
|
o ? this.moveLeft() : this.moveRight();
|
|
2504
2509
|
break;
|
|
@@ -2515,7 +2520,7 @@ class Nt {
|
|
|
2515
2520
|
}
|
|
2516
2521
|
keyUp(t) {
|
|
2517
2522
|
const { keyCode: i } = t;
|
|
2518
|
-
|
|
2523
|
+
Xe(i, this.allowSpinY) && this.showAllIcons();
|
|
2519
2524
|
}
|
|
2520
2525
|
moveActiveXIndexUp(t) {
|
|
2521
2526
|
this.orientation = R.X, this.activeImageX = (this.activeImageX + t) % this.amountX;
|
|
@@ -2597,24 +2602,24 @@ class Nt {
|
|
|
2597
2602
|
this.createContainers(t), this.adaptCanvasSize(i), this.drawImageOnCanvas(i);
|
|
2598
2603
|
}
|
|
2599
2604
|
onAllImagesLoaded() {
|
|
2600
|
-
if (this.addAllIcons(), this.isReady = !0, this.amountX = this.imagesX.length, this.amountY = this.imagesY.length, this.activeImageX = this.autoplayReverse ? this.amountX - 1 : 0, this.activeImageY = this.autoplayReverse ? this.amountY - 1 : 0, this.hotspots && (this.hotspotsInstance = new
|
|
2605
|
+
if (this.addAllIcons(), this.isReady = !0, this.amountX = this.imagesX.length, this.amountY = this.imagesY.length, this.activeImageX = this.autoplayReverse ? this.amountX - 1 : 0, this.activeImageY = this.autoplayReverse ? this.amountY - 1 : 0, this.hotspots && (this.hotspotsInstance = new bn(this.hotspots, this.innerBox, this.imageAspectRatio, {
|
|
2601
2606
|
trigger: this.hotspotTrigger,
|
|
2602
2607
|
onOpen: onHotspotOpen,
|
|
2603
2608
|
onClose: onHotspotClose,
|
|
2604
2609
|
onProductClick
|
|
2605
2610
|
}), this.hotspotsInstance.updateHotspotPosition(this.activeImageX, this.orientation), this.addHotspotTimeline(), this.showHotspotTimeline()), this.emit("onLoad", { imagesX: this.imagesX.length, imagesY: this.imagesY.length }), this.emit("onReady"), this.announce("360 degree view loaded. Use mouse drag or arrow keys to rotate."), this.hints !== !1 && !this.autoplay) {
|
|
2606
|
-
const t = this.hints === !0 || this.hints === void 0 ?
|
|
2607
|
-
t && t.length > 0 && (this.hintsOverlay =
|
|
2611
|
+
const t = this.hints === !0 || this.hints === void 0 ? Le(this.viewerConfig, this.touchDevice) : this.hints;
|
|
2612
|
+
t && t.length > 0 && (this.hintsOverlay = Te(this.innerBox, t, {
|
|
2608
2613
|
pointerZoomTrigger: this.pointerZoomTrigger
|
|
2609
|
-
}),
|
|
2614
|
+
}), Pe(this.hintsOverlay));
|
|
2610
2615
|
}
|
|
2611
|
-
this.autoplay && (this.hideAllIcons(),
|
|
2616
|
+
this.autoplay && (this.hideAllIcons(), Uo(this.play.bind(this))());
|
|
2612
2617
|
}
|
|
2613
2618
|
magnify(t) {
|
|
2614
2619
|
t.stopPropagation();
|
|
2615
|
-
const { src: i } = this.orientation === R.Y ? this.imagesY[this.activeImageY] : this.imagesX[this.activeImageX], s = (this.fullscreenView ? document.body : this.container).offsetWidth * this.magnifier, n =
|
|
2616
|
-
this.showLoadingSpinner(), this.createGlass(),
|
|
2617
|
-
this.hideLoadingSpinner(), this.magnified = !0,
|
|
2620
|
+
const { src: i } = this.orientation === R.Y ? this.imagesY[this.activeImageY] : this.imagesX[this.activeImageX], s = (this.fullscreenView ? document.body : this.container).offsetWidth * this.magnifier, n = Ji(i, s);
|
|
2621
|
+
this.showLoadingSpinner(), this.createGlass(), Zo(n, (r) => {
|
|
2622
|
+
this.hideLoadingSpinner(), this.magnified = !0, Bo(t, this.innerBox, this.offset, r, this.glass, this.magnifier);
|
|
2618
2623
|
}, (r) => {
|
|
2619
2624
|
this.hideLoadingSpinner(), this.removeGlass(), this.emit("onError", {
|
|
2620
2625
|
error: { message: r.message, url: r.url },
|
|
@@ -2626,7 +2631,7 @@ class Nt {
|
|
|
2626
2631
|
}
|
|
2627
2632
|
openFullscreenModal(t) {
|
|
2628
2633
|
t.stopPropagation(), this.hideHotspotPopper(), this.releaseMemory(), window.document.body.style.overflow = "hidden";
|
|
2629
|
-
const i =
|
|
2634
|
+
const i = fo(this.container);
|
|
2630
2635
|
this.fullscreenInstance = new Nt(i, this.viewerConfig, !0), this.fullscreenInstance.originalViewer = this, this.boundResizeHandler = () => {
|
|
2631
2636
|
this.fullscreenInstance && this.closeFullscreenModal(new Event("resize"));
|
|
2632
2637
|
}, window.addEventListener("resize", this.boundResizeHandler), this.emit("onFullscreenOpen"), this.announce("Opened fullscreen mode. Press Escape to exit.");
|
|
@@ -2651,7 +2656,7 @@ class Nt {
|
|
|
2651
2656
|
bottom: this.moveBottom.bind(this)
|
|
2652
2657
|
};
|
|
2653
2658
|
this.loopTimeoutId = window.setInterval(() => {
|
|
2654
|
-
if (this.playOnce &&
|
|
2659
|
+
if (this.playOnce && zo({
|
|
2655
2660
|
autoplayBehavior: this.autoplayBehavior,
|
|
2656
2661
|
activeImageX: this.activeImageX,
|
|
2657
2662
|
activeImageY: this.activeImageY,
|
|
@@ -2662,7 +2667,7 @@ class Nt {
|
|
|
2662
2667
|
this.stopAutoplay();
|
|
2663
2668
|
return;
|
|
2664
2669
|
}
|
|
2665
|
-
|
|
2670
|
+
$o({
|
|
2666
2671
|
autoplayBehavior: this.autoplayBehavior,
|
|
2667
2672
|
activeImageX: this.activeImageX,
|
|
2668
2673
|
activeImageY: this.activeImageY,
|
|
@@ -2670,9 +2675,9 @@ class Nt {
|
|
|
2670
2675
|
amountY: this.amountY,
|
|
2671
2676
|
autoplayReverse: this.autoplayReverse,
|
|
2672
2677
|
spinDirection: this.spinDirection
|
|
2673
|
-
}) && (this.spinDirection =
|
|
2678
|
+
}) && (this.spinDirection = Go(this.spinDirection));
|
|
2674
2679
|
const n = this.spinDirection === "y";
|
|
2675
|
-
|
|
2680
|
+
No({
|
|
2676
2681
|
autoplayBehavior: this.autoplayBehavior,
|
|
2677
2682
|
spinY: n,
|
|
2678
2683
|
reversed: this.autoplayReverse,
|
|
@@ -2682,10 +2687,10 @@ class Nt {
|
|
|
2682
2687
|
}
|
|
2683
2688
|
stopAutoplay() {
|
|
2684
2689
|
if (this.showAllIcons(), this.autoplay = !1, window.clearTimeout(this.loopTimeoutId), this.loopTimeoutId = null, this.emit("onAutoplayStop"), this.hints !== !1 && !this.hintsOverlay && !this.hintsHidden) {
|
|
2685
|
-
const t = this.hints === !0 ?
|
|
2686
|
-
t && t.length > 0 && (this.hintsOverlay =
|
|
2690
|
+
const t = this.hints === !0 ? Le(this.viewerConfig, this.touchDevice) : this.hints;
|
|
2691
|
+
t && t.length > 0 && (this.hintsOverlay = Te(this.innerBox, t, {
|
|
2687
2692
|
pointerZoomTrigger: this.pointerZoomTrigger
|
|
2688
|
-
}),
|
|
2693
|
+
}), Pe(this.hintsOverlay));
|
|
2689
2694
|
}
|
|
2690
2695
|
}
|
|
2691
2696
|
destroy() {
|
|
@@ -2712,7 +2717,7 @@ class Nt {
|
|
|
2712
2717
|
});
|
|
2713
2718
|
}
|
|
2714
2719
|
addInitialIcon() {
|
|
2715
|
-
this.initialIcon || this.hide360Logo || (this.initialIcon =
|
|
2720
|
+
this.initialIcon || this.hide360Logo || (this.initialIcon = ro(this.logoSrc), this.innerBox.appendChild(this.initialIcon));
|
|
2716
2721
|
}
|
|
2717
2722
|
showInitialIcon() {
|
|
2718
2723
|
!this.initialIcon || this.hasInteracted || (this.initialIcon.style.opacity = 1);
|
|
@@ -2727,7 +2732,7 @@ class Nt {
|
|
|
2727
2732
|
this.showAllIcons(), this.innerBox.removeChild(this.glass), this.glass = null, this.magnified = !1;
|
|
2728
2733
|
}
|
|
2729
2734
|
addMagnifierIcon() {
|
|
2730
|
-
this.pointerZoom && (this.magnifierIcon =
|
|
2735
|
+
this.pointerZoom && (this.magnifierIcon = po(), this.magnifierIcon.onclick = this.zoomIn.bind(this), this.iconsContainer.appendChild(this.magnifierIcon), this.zoomOutIcon = uo(), this.zoomOutIcon.onclick = this.zoomOut.bind(this), this.zoomOutIcon.style.display = "none", this.iconsContainer.appendChild(this.zoomOutIcon));
|
|
2731
2736
|
}
|
|
2732
2737
|
showMagnifierIcon() {
|
|
2733
2738
|
this.magnifierIcon && (this.magnifierIcon.style.display = "", this.magnifierIcon.style.visibility = "visible", this.magnifierIcon.style.opacity = 1);
|
|
@@ -2742,10 +2747,10 @@ class Nt {
|
|
|
2742
2747
|
this.zoomOutIcon && (this.zoomOutIcon.style.display = "none", this.zoomOutIcon.style.visibility = "hidden", this.zoomOutIcon.style.opacity = 0);
|
|
2743
2748
|
}
|
|
2744
2749
|
addFullscreenIcon() {
|
|
2745
|
-
this.fullscreen && (this.fullscreenIcon =
|
|
2750
|
+
this.fullscreen && (this.fullscreenIcon = co(), this.fullscreenIcon.onclick = this.openFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenIcon));
|
|
2746
2751
|
}
|
|
2747
2752
|
addCloseFullscreenIcon() {
|
|
2748
|
-
this.fullscreenCloseIcon =
|
|
2753
|
+
this.fullscreenCloseIcon = lo(), this.fullscreenCloseIcon.onclick = this.closeFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenCloseIcon);
|
|
2749
2754
|
}
|
|
2750
2755
|
showFullscreenIcon() {
|
|
2751
2756
|
this.fullscreenIcon && (this.fullscreenIcon.style.opacity = 1);
|
|
@@ -2754,7 +2759,7 @@ class Nt {
|
|
|
2754
2759
|
this.fullscreenIcon && (this.fullscreenIcon.style.opacity = 0);
|
|
2755
2760
|
}
|
|
2756
2761
|
add360ViewCircleIcon() {
|
|
2757
|
-
this.view360CircleIcon || (this.view360CircleIcon =
|
|
2762
|
+
this.view360CircleIcon || (this.view360CircleIcon = so(this.bottomCircleOffset), this.innerBox.appendChild(this.view360CircleIcon));
|
|
2758
2763
|
}
|
|
2759
2764
|
show360ViewCircleIcon() {
|
|
2760
2765
|
this.view360CircleIcon && (this.view360CircleIcon.style.opacity = 1);
|
|
@@ -2763,13 +2768,13 @@ class Nt {
|
|
|
2763
2768
|
this.view360CircleIcon && (this.view360CircleIcon.style.opacity = 0);
|
|
2764
2769
|
}
|
|
2765
2770
|
addLoadingSpinner() {
|
|
2766
|
-
this.loadingSpinner =
|
|
2771
|
+
this.loadingSpinner = vo(), this.innerBox.appendChild(this.loadingSpinner);
|
|
2767
2772
|
}
|
|
2768
2773
|
showLoadingSpinner() {
|
|
2769
2774
|
this.loadingSpinner && (this.hideAllIcons(), this.loadingSpinner.style.opacity = 1);
|
|
2770
2775
|
}
|
|
2771
2776
|
createTransitionOverlay() {
|
|
2772
|
-
this.transitionOverlay =
|
|
2777
|
+
this.transitionOverlay = go(), this.innerBox.appendChild(this.transitionOverlay);
|
|
2773
2778
|
}
|
|
2774
2779
|
showTransitionOverlay() {
|
|
2775
2780
|
this.transitionOverlay && (this.hideAllIcons(), this.transitionOverlay.style.opacity = 1);
|
|
@@ -2781,11 +2786,11 @@ class Nt {
|
|
|
2781
2786
|
this.loadingSpinner && (this.loadingSpinner.style.opacity = 0);
|
|
2782
2787
|
}
|
|
2783
2788
|
hideHints() {
|
|
2784
|
-
!this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0,
|
|
2789
|
+
!this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0, Io(this.hintsOverlay));
|
|
2785
2790
|
}
|
|
2786
2791
|
addHotspotTimeline() {
|
|
2787
2792
|
if (!this.hotspots || this.hotspotTimeline) return;
|
|
2788
|
-
const t =
|
|
2793
|
+
const t = Ao(this.innerBox, this.amountX, this.hotspots);
|
|
2789
2794
|
if (!t) return;
|
|
2790
2795
|
this.hotspotTimeline = t.element, this.hotspotTimelineIndicator = t.indicator, this.innerBox.classList.add("has-hotspot-timeline"), this.hotspotTimeline.querySelectorAll(".cloudimage-360-hotspot-timeline-dot").forEach((o) => {
|
|
2791
2796
|
o.addEventListener("click", (s) => {
|
|
@@ -2796,13 +2801,13 @@ class Nt {
|
|
|
2796
2801
|
}), this.updateHotspotTimelinePosition();
|
|
2797
2802
|
}
|
|
2798
2803
|
showHotspotTimeline() {
|
|
2799
|
-
|
|
2804
|
+
To(this.hotspotTimeline);
|
|
2800
2805
|
}
|
|
2801
2806
|
hideHotspotTimeline() {
|
|
2802
|
-
|
|
2807
|
+
Lo(this.hotspotTimeline);
|
|
2803
2808
|
}
|
|
2804
2809
|
updateHotspotTimelinePosition() {
|
|
2805
|
-
|
|
2810
|
+
So(this.hotspotTimelineIndicator, this.activeImageX, this.amountX);
|
|
2806
2811
|
}
|
|
2807
2812
|
/**
|
|
2808
2813
|
* Animates the viewer to a target frame, optionally showing a hotspot popup on arrival
|
|
@@ -2883,7 +2888,7 @@ class Nt {
|
|
|
2883
2888
|
document.removeEventListener("keydown", this.boundKeyDown), document.removeEventListener("keyup", this.boundKeyUp);
|
|
2884
2889
|
}
|
|
2885
2890
|
createContainers(t) {
|
|
2886
|
-
if (this.iconsContainer =
|
|
2891
|
+
if (this.iconsContainer = Ae(this.innerBox), this.canvas = ao(this.innerBox, t), this.loader = mo(this.innerBox), this.ariaLiveRegion = bo(this.innerBox), this.useMainThreadCanvas)
|
|
2887
2892
|
this.canvasWorker.postMessage({
|
|
2888
2893
|
action: "initCanvas",
|
|
2889
2894
|
offscreen: this.canvas,
|
|
@@ -2903,10 +2908,10 @@ class Nt {
|
|
|
2903
2908
|
this.fullscreenView && this.addCloseFullscreenIcon(), ie(this.innerBox, ".cloudimage-360-placeholder");
|
|
2904
2909
|
}
|
|
2905
2910
|
update(t) {
|
|
2906
|
-
this.isReady && (this.stopAutoplay(), ie(this.innerBox, ".cloudimage-360-icons-container"), this.init(this.container, t, !0), this.iconsContainer =
|
|
2911
|
+
this.isReady && (this.stopAutoplay(), ie(this.innerBox, ".cloudimage-360-icons-container"), this.init(this.container, t, !0), this.iconsContainer = Ae(this.innerBox), this.onAllImagesLoaded());
|
|
2907
2912
|
}
|
|
2908
2913
|
init(t, i, o) {
|
|
2909
|
-
const s = i ?
|
|
2914
|
+
const s = i ? Gi(i) : $i(t), {
|
|
2910
2915
|
folder: n,
|
|
2911
2916
|
apiVersion: l,
|
|
2912
2917
|
filenameX: a,
|
|
@@ -2916,16 +2921,16 @@ class Nt {
|
|
|
2916
2921
|
indexZeroBase: p,
|
|
2917
2922
|
amountX: f,
|
|
2918
2923
|
amountY: u,
|
|
2919
|
-
draggable:
|
|
2924
|
+
draggable: C = !0,
|
|
2920
2925
|
swipeable: b = !0,
|
|
2921
2926
|
keys: v,
|
|
2922
2927
|
keysReverse: x,
|
|
2923
2928
|
bottomCircleOffset: E,
|
|
2924
|
-
autoplay:
|
|
2925
|
-
autoplayBehavior:
|
|
2929
|
+
autoplay: w,
|
|
2930
|
+
autoplayBehavior: g,
|
|
2926
2931
|
playOnce: O,
|
|
2927
2932
|
speed: m,
|
|
2928
|
-
autoplayReverse:
|
|
2933
|
+
autoplayReverse: y,
|
|
2929
2934
|
fullscreen: I,
|
|
2930
2935
|
magnifier: k,
|
|
2931
2936
|
ciToken: A,
|
|
@@ -2968,10 +2973,10 @@ class Nt {
|
|
|
2968
2973
|
onDragEnd: Ht,
|
|
2969
2974
|
onHotspotOpen: Kt,
|
|
2970
2975
|
onHotspotClose: qt,
|
|
2971
|
-
onProductClick:
|
|
2972
|
-
onError:
|
|
2976
|
+
onProductClick: wn,
|
|
2977
|
+
onError: di
|
|
2973
2978
|
} = s, ue = { ciToken: A, ciFilters: T, ciTransformation: Y, cropAspectRatio: jt, cropGravity: Gt }, Jt = oe(h, []), Qt = oe(c, []);
|
|
2974
|
-
if (this.viewerConfig = s, this.amountX = Jt.length || f, this.amountY = Qt.length || u, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX =
|
|
2979
|
+
if (this.viewerConfig = s, this.amountX = Jt.length || f, this.amountY = Qt.length || u, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX = y ? this.amountX - 1 : 0, this.activeImageY = y ? this.amountY - 1 : 0, this.bottomCircleOffset = E, this.autoplay = w, this.autoplayBehavior = g, this.playOnce = O, this.speed = m, this.autoplayReverse = y, this.fullscreen = I, this.magnifier = k > 1 ? Math.min(k, zi) : 0, this.dragSpeed = Math.max(j, Ni), this.stopAtEdges = G, this.ciParams = ue, this.apiVersion = l, this.pointerZoom = P > 1 ? Math.min(P, Oe) : null, this.pointerZoomTrigger = D, this.keysReverse = x, this.info = st, this.keys = v, this.innerBox = this.innerBox ?? ho(this.container), this.container.style.aspectRatio = Tt || "", this.initialIconShown = _, this.bottomCircle = nt, this.spinDirection = jo(this.autoplayBehavior, this.allowSpinX, this.allowSpinY), this.dragReverse = rt, this.hotspots = vt, this.hotspotTrigger = tt, this.hide360Logo = J, this.logoSrc = N, this.inertia = et, this.pinchZoom = at, this.hints = U, this.hotspotTimelineOnClick = $t, lt === "dark" ? this.container.classList.add("ci360-theme-dark") : lt === "light" && this.container.classList.remove("ci360-theme-dark"), this.container.classList.remove("ci360-hotspot-marker-inverted", "ci360-hotspot-marker-brand"), St === "inverted" ? this.container.classList.add("ci360-hotspot-marker-inverted") : St === "brand" && (this.container.classList.add("ci360-hotspot-marker-brand"), ct && this.container.style.setProperty("--ci360-hotspot-brand-color", ct)), this.onReady = Lt, this.onLoad = Pt, this.onSpin = _t, this.onAutoplayStart = Ut, this.onAutoplayStop = K, this.onFullscreenOpen = ht, this.onFullscreenClose = Mt, this.onZoomIn = Rt, this.onZoomOut = gt, this.onDragStart = Yt, this.onDragEnd = Ht, this.onError = di, this.srcXConfig = {
|
|
2975
2980
|
folder: n,
|
|
2976
2981
|
filename: a,
|
|
2977
2982
|
imageList: Jt,
|
|
@@ -2982,7 +2987,7 @@ class Nt {
|
|
|
2982
2987
|
lazyload: L,
|
|
2983
2988
|
amount: this.amountX,
|
|
2984
2989
|
indexZeroBase: p,
|
|
2985
|
-
autoplayReverse:
|
|
2990
|
+
autoplayReverse: y,
|
|
2986
2991
|
orientation: R.X
|
|
2987
2992
|
}, this.srcYConfig = {
|
|
2988
2993
|
...this.srcXConfig,
|
|
@@ -2990,24 +2995,24 @@ class Nt {
|
|
|
2990
2995
|
imageList: Qt,
|
|
2991
2996
|
orientation: R.Y,
|
|
2992
2997
|
amount: this.amountY
|
|
2993
|
-
}, o && this.removeEvents(), this.attachEvents(
|
|
2994
|
-
const me = (this.fullscreenView ? document.body : this.container).offsetWidth, fe = this.allowSpinX && !Jt.length ? Ct(this.srcXConfig, me) : null, ve = this.allowSpinY && !Qt.length ? Ct(this.srcYConfig, me) : null, ge = (
|
|
2995
|
-
|
|
2998
|
+
}, o && this.removeEvents(), this.attachEvents(C, b, v), o) return;
|
|
2999
|
+
const me = (this.fullscreenView ? document.body : this.container).offsetWidth, fe = this.allowSpinX && !Jt.length ? Ct(this.srcXConfig, me) : null, ve = this.allowSpinY && !Qt.length ? Ct(this.srcYConfig, me) : null, ge = (pi) => {
|
|
3000
|
+
ke({
|
|
2996
3001
|
cdnPathX: fe,
|
|
2997
3002
|
cdnPathY: ve,
|
|
2998
3003
|
configX: this.srcXConfig,
|
|
2999
3004
|
configY: this.srcYConfig,
|
|
3000
|
-
onImageLoad: (yt,
|
|
3001
|
-
onFirstImageLoad: (yt) => this.onFirstImageLoaded(
|
|
3005
|
+
onImageLoad: (yt, ui, mi) => this.onImageLoad(yt, ui, mi),
|
|
3006
|
+
onFirstImageLoad: (yt) => this.onFirstImageLoaded(pi, yt),
|
|
3002
3007
|
onAllImagesLoad: this.onAllImagesLoaded.bind(this),
|
|
3003
3008
|
onError: (yt) => this.emit("onError", yt)
|
|
3004
3009
|
});
|
|
3005
3010
|
};
|
|
3006
|
-
this.allowSpinX ?
|
|
3011
|
+
this.allowSpinX ? Re(fe, this.srcXConfig, ge) : this.allowSpinY && Re(ve, this.srcYConfig, ge);
|
|
3007
3012
|
}
|
|
3008
3013
|
}
|
|
3009
|
-
const
|
|
3010
|
-
class
|
|
3014
|
+
const qe = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
|
|
3015
|
+
class In {
|
|
3011
3016
|
constructor() {
|
|
3012
3017
|
this.views = /* @__PURE__ */ new Map(), this.initAll = this.initAll.bind(this), this.getViews = this.getViews.bind(this), this.memoryObserver = null, this.memoryManagementAutoEnabled = !1;
|
|
3013
3018
|
}
|
|
@@ -3019,7 +3024,7 @@ class Cn {
|
|
|
3019
3024
|
const s = t.id || this.generateId();
|
|
3020
3025
|
t.id || (t.id = s);
|
|
3021
3026
|
const n = new Nt(t, i, o);
|
|
3022
|
-
return this.views.set(s, n),
|
|
3027
|
+
return this.views.set(s, n), qe && !this.memoryManagementAutoEnabled && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100)), n;
|
|
3023
3028
|
}
|
|
3024
3029
|
initAll(t = "cloudimage-360") {
|
|
3025
3030
|
[...document.querySelectorAll(`.${t}`)].filter(Boolean).forEach((o) => {
|
|
@@ -3027,7 +3032,7 @@ class Cn {
|
|
|
3027
3032
|
o.id || (o.id = s);
|
|
3028
3033
|
const n = new Nt(o);
|
|
3029
3034
|
this.views.set(s, n);
|
|
3030
|
-
}),
|
|
3035
|
+
}), qe && !this.memoryManagementAutoEnabled && this.views.size > 0 && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100));
|
|
3031
3036
|
}
|
|
3032
3037
|
destroy(t) {
|
|
3033
3038
|
const i = this.getViewById(t);
|
|
@@ -3096,6 +3101,6 @@ class Cn {
|
|
|
3096
3101
|
}
|
|
3097
3102
|
}
|
|
3098
3103
|
export {
|
|
3099
|
-
|
|
3104
|
+
In as default
|
|
3100
3105
|
};
|
|
3101
|
-
//# sourceMappingURL=ci360-
|
|
3106
|
+
//# sourceMappingURL=ci360-CAu4PLFX.mjs.map
|