js-cloudimage-360-view 4.1.2 → 4.1.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.
@@ -1,32 +1,32 @@
1
- var Qe = Object.defineProperty;
2
- var ti = (e, t, i) => t in e ? Qe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[t] = i;
3
- var le = (e, t, i) => ti(e, typeof t != "symbol" ? t + "" : t, i);
1
+ var ti = Object.defineProperty;
2
+ var ei = (e, t, i) => t in e ? ti(e, t, { enumerable: !0, configurable: !0, writable: !0, value: i }) : e[t] = i;
3
+ var le = (e, t, i) => ei(e, typeof t != "symbol" ? t + "" : t, i);
4
4
  var Mt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : typeof global < "u" ? global : typeof self < "u" ? self : {};
5
- function ei(e) {
5
+ function ii(e) {
6
6
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
7
7
  }
8
- var Ze = "Expected a function", ce = NaN, ii = "[object Symbol]", ni = /^\s+|\s+$/g, oi = /^[-+]0x[0-9a-f]+$/i, si = /^0b[01]+$/i, ri = /^0o[0-7]+$/i, ai = parseInt, li = typeof Mt == "object" && Mt && Mt.Object === Object && Mt, ci = typeof self == "object" && self && self.Object === Object && self, hi = li || ci || Function("return this")(), di = Object.prototype, ui = di.toString, pi = Math.max, fi = Math.min, Kt = function() {
9
- return hi.Date.now();
8
+ var Ze = "Expected a function", ce = NaN, oi = "[object Symbol]", si = /^\s+|\s+$/g, ni = /^[-+]0x[0-9a-f]+$/i, ri = /^0b[01]+$/i, ai = /^0o[0-7]+$/i, li = parseInt, ci = typeof Mt == "object" && Mt && Mt.Object === Object && Mt, hi = typeof self == "object" && self && self.Object === Object && self, di = ci || hi || Function("return this")(), ui = Object.prototype, pi = ui.toString, fi = Math.max, mi = Math.min, Kt = function() {
9
+ return di.Date.now();
10
10
  };
11
- function mi(e, t, i) {
12
- var n, o, s, l, r, a, c = 0, h = !1, p = !1, f = !0;
11
+ function vi(e, t, i) {
12
+ var o, s, n, l, r, a, c = 0, h = !1, p = !1, f = !0;
13
13
  if (typeof e != "function")
14
14
  throw new TypeError(Ze);
15
- t = he(t) || 0, Bt(i) && (h = !!i.leading, p = "maxWait" in i, s = p ? pi(he(i.maxWait) || 0, t) : s, f = "trailing" in i ? !!i.trailing : f);
15
+ t = he(t) || 0, Bt(i) && (h = !!i.leading, p = "maxWait" in i, n = p ? fi(he(i.maxWait) || 0, t) : n, f = "trailing" in i ? !!i.trailing : f);
16
16
  function u(y) {
17
- var O = n, S = o;
18
- return n = o = void 0, c = y, l = e.apply(S, O), l;
17
+ var O = o, S = s;
18
+ return o = s = void 0, c = y, l = e.apply(S, O), l;
19
19
  }
20
20
  function I(y) {
21
21
  return c = y, r = setTimeout(m, t), h ? u(y) : l;
22
22
  }
23
23
  function g(y) {
24
24
  var O = y - a, S = y - c, E = t - O;
25
- return p ? fi(E, s - S) : E;
25
+ return p ? mi(E, n - S) : E;
26
26
  }
27
27
  function v(y) {
28
28
  var O = y - a, S = y - c;
29
- return a === void 0 || O >= t || O < 0 || p && S >= s;
29
+ return a === void 0 || O >= t || O < 0 || p && S >= n;
30
30
  }
31
31
  function m() {
32
32
  var y = Kt();
@@ -35,17 +35,17 @@ function mi(e, t, i) {
35
35
  r = setTimeout(m, g(y));
36
36
  }
37
37
  function b(y) {
38
- return r = void 0, f && n ? u(y) : (n = o = void 0, l);
38
+ return r = void 0, f && o ? u(y) : (o = s = void 0, l);
39
39
  }
40
40
  function x() {
41
- r !== void 0 && clearTimeout(r), c = 0, n = a = o = r = void 0;
41
+ r !== void 0 && clearTimeout(r), c = 0, o = a = s = r = void 0;
42
42
  }
43
43
  function w() {
44
44
  return r === void 0 ? l : b(Kt());
45
45
  }
46
46
  function C() {
47
47
  var y = Kt(), O = v(y);
48
- if (n = arguments, o = this, a = y, O) {
48
+ if (o = arguments, s = this, a = y, O) {
49
49
  if (r === void 0)
50
50
  return I(a);
51
51
  if (p)
@@ -55,30 +55,30 @@ function mi(e, t, i) {
55
55
  }
56
56
  return C.cancel = x, C.flush = w, C;
57
57
  }
58
- function vi(e, t, i) {
59
- var n = !0, o = !0;
58
+ function gi(e, t, i) {
59
+ var o = !0, s = !0;
60
60
  if (typeof e != "function")
61
61
  throw new TypeError(Ze);
62
- return Bt(i) && (n = "leading" in i ? !!i.leading : n, o = "trailing" in i ? !!i.trailing : o), mi(e, t, {
63
- leading: n,
62
+ return Bt(i) && (o = "leading" in i ? !!i.leading : o, s = "trailing" in i ? !!i.trailing : s), vi(e, t, {
63
+ leading: o,
64
64
  maxWait: t,
65
- trailing: o
65
+ trailing: s
66
66
  });
67
67
  }
68
68
  function Bt(e) {
69
69
  var t = typeof e;
70
70
  return !!e && (t == "object" || t == "function");
71
71
  }
72
- function gi(e) {
72
+ function yi(e) {
73
73
  return !!e && typeof e == "object";
74
74
  }
75
- function yi(e) {
76
- return typeof e == "symbol" || gi(e) && ui.call(e) == ii;
75
+ function bi(e) {
76
+ return typeof e == "symbol" || yi(e) && pi.call(e) == oi;
77
77
  }
78
78
  function he(e) {
79
79
  if (typeof e == "number")
80
80
  return e;
81
- if (yi(e))
81
+ if (bi(e))
82
82
  return ce;
83
83
  if (Bt(e)) {
84
84
  var t = typeof e.valueOf == "function" ? e.valueOf() : e;
@@ -86,20 +86,20 @@ function he(e) {
86
86
  }
87
87
  if (typeof e != "string")
88
88
  return e === 0 ? e : +e;
89
- e = e.replace(ni, "");
90
- var i = si.test(e);
91
- return i || ri.test(e) ? ai(e.slice(2), i ? 2 : 8) : oi.test(e) ? ce : +e;
89
+ e = e.replace(si, "");
90
+ var i = ri.test(e);
91
+ return i || ai.test(e) ? li(e.slice(2), i ? 2 : 8) : ni.test(e) ? ce : +e;
92
92
  }
93
- var bi = vi;
94
- const de = /* @__PURE__ */ ei(bi), M = {
93
+ var wi = gi;
94
+ const de = /* @__PURE__ */ ii(wi), M = {
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
- }, wi = [!1, 0, null, void 0, "false", "0", "null", "undefined"], P = {
99
+ }, Ii = [!1, 0, null, void 0, "false", "0", "null", "undefined"], P = {
100
100
  X: "x-axis",
101
101
  Y: "y-axis"
102
- }, Ii = [37, 39], xi = [38, 40], ue = 10, Ci = 150, pe = 800, Oi = 150, Ei = 200, fe = 50, Si = 50, Ai = 5, me = 5, Li = "https://scaleflex.cloudimg.io/v7/filerobot/js-cloudimage-360-view/360_view.svg", d = {
102
+ }, xi = [37, 39], Ci = [38, 40], ue = 10, Oi = 150, pe = 800, Ei = 150, Si = 200, fe = 50, Ai = 50, Li = 5, me = 5, ki = "https://scaleflex.cloudimg.io/v7/filerobot/js-cloudimage-360-view/360_view.svg", d = {
103
103
  folder: "/",
104
104
  apiVersion: "v7",
105
105
  filenameX: "image-{index}.jpg",
@@ -134,12 +134,13 @@ const de = /* @__PURE__ */ ei(bi), M = {
134
134
  initialIconShown: !0,
135
135
  hotspots: null,
136
136
  hide360Logo: !1,
137
- logoSrc: Li,
137
+ logoSrc: ki,
138
138
  inertia: !1,
139
139
  pinchZoom: !0,
140
140
  hints: !0,
141
141
  theme: null,
142
142
  hotspotTimelineOnClick: !0,
143
+ aspectRatio: null,
143
144
  // Event callbacks
144
145
  onReady: null,
145
146
  onLoad: null,
@@ -152,36 +153,36 @@ const de = /* @__PURE__ */ ei(bi), M = {
152
153
  onZoomOut: null,
153
154
  onDragStart: null,
154
155
  onDragEnd: null
155
- }, ki = (e) => ({
156
- folder: k(e, "folder", d.folder),
157
- apiVersion: k(e, "api-version", d.apiVersion),
158
- filenameX: k(e, "filename") || k(e, "filename-x") || d.filenameX,
159
- filenameY: k(e, "filename-y", d.filenameY),
160
- imageListX: k(e, "image-list-x", d.imageListX),
161
- imageListY: k(e, "image-list-y", d.imageListY),
162
- indexZeroBase: parseInt(k(e, "index-zero-base", d.indexZeroBase), 10),
163
- amountX: parseInt(k(e, "amount-x", d.amountX), 10),
164
- amountY: parseInt(k(e, "amount-y", d.amountY), 10),
165
- speed: parseInt(k(e, "speed", d.speed), 10),
166
- dragSpeed: parseInt(k(e, "drag-speed", d.dragSpeed), 10),
156
+ }, Ti = (e) => ({
157
+ folder: L(e, "folder", d.folder),
158
+ apiVersion: L(e, "api-version", d.apiVersion),
159
+ filenameX: L(e, "filename") || L(e, "filename-x") || d.filenameX,
160
+ filenameY: L(e, "filename-y", d.filenameY),
161
+ imageListX: L(e, "image-list-x", d.imageListX),
162
+ imageListY: L(e, "image-list-y", d.imageListY),
163
+ indexZeroBase: parseInt(L(e, "index-zero-base", d.indexZeroBase), 10),
164
+ amountX: parseInt(L(e, "amount-x", d.amountX), 10),
165
+ amountY: parseInt(L(e, "amount-y", d.amountY), 10),
166
+ speed: parseInt(L(e, "speed", d.speed), 10),
167
+ dragSpeed: parseInt(L(e, "drag-speed", d.dragSpeed), 10),
167
168
  draggable: X(e, "draggable", d.draggable),
168
169
  swipeable: X(e, "swipeable", d.swipeable),
169
170
  keys: X(e, "keys", d.keys),
170
171
  keysReverse: X(e, "keys-reverse", d.keysReverse),
171
172
  autoplay: X(e, "autoplay", d.autoplay),
172
- autoplayBehavior: k(e, "autoplay-behavior", d.autoplayBehavior),
173
+ autoplayBehavior: L(e, "autoplay-behavior", d.autoplayBehavior),
173
174
  playOnce: X(e, "play-once", d.playOnce),
174
175
  autoplayReverse: X(e, "autoplay-reverse", d.autoplayReverse),
175
- pointerZoom: parseFloat(k(e, "pointer-zoom", d.pointerZoom)),
176
+ pointerZoom: parseFloat(L(e, "pointer-zoom", d.pointerZoom)),
176
177
  fullscreen: X(e, "fullscreen") || X(e, "full-screen", d.fullscreen),
177
- magnifier: parseFloat(k(e, "magnifier", d.magnifier)),
178
+ magnifier: parseFloat(L(e, "magnifier", d.magnifier)),
178
179
  bottomCircleOffset: parseInt(
179
- k(e, "bottom-circle-offset", d.bottomCircleOffset),
180
+ L(e, "bottom-circle-offset", d.bottomCircleOffset),
180
181
  10
181
182
  ),
182
- ciToken: k(e, "responsive", d.ciToken),
183
- ciFilters: k(e, "filters", d.ciFilters),
184
- ciTransformation: k(e, "transformation", d.ciTransformation),
183
+ ciToken: L(e, "responsive", d.ciToken),
184
+ ciFilters: L(e, "filters", d.ciFilters),
185
+ ciTransformation: L(e, "transformation", d.ciTransformation),
185
186
  lazyload: X(e, "lazyload", d.lazyload),
186
187
  dragReverse: X(e, "drag-reverse", d.dragReverse),
187
188
  stopAtEdges: X(e, "stop-at-edges", d.stopAtEdges),
@@ -189,20 +190,21 @@ const de = /* @__PURE__ */ ei(bi), M = {
189
190
  initialIconShown: !Ht(e, "initial-icon"),
190
191
  bottomCircle: !Ht(e, "bottom-circle"),
191
192
  hide360Logo: X(e, "hide-360-logo", d.hide360Logo),
192
- logoSrc: k(e, "logo-src", d.logoSrc),
193
+ logoSrc: L(e, "logo-src", d.logoSrc),
193
194
  inertia: X(e, "inertia", d.inertia),
194
195
  pinchZoom: X(e, "pinch-zoom", d.pinchZoom),
195
196
  hints: !Ht(e, "hints"),
196
- theme: k(e, "theme", d.theme),
197
- hotspotTimelineOnClick: !Ht(e, "hotspot-timeline-on-click")
198
- }), Ti = (e) => {
197
+ theme: L(e, "theme", d.theme),
198
+ hotspotTimelineOnClick: !Ht(e, "hotspot-timeline-on-click"),
199
+ aspectRatio: L(e, "aspect-ratio", d.aspectRatio)
200
+ }), Yi = (e) => {
199
201
  const t = [];
200
202
  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)");
201
203
  const i = ["spin-x", "spin-y", "spin-xy", "spin-yx"];
202
- return e.autoplayBehavior && !i.includes(e.autoplayBehavior) && t.push(`autoplayBehavior should be one of: ${i.join(", ")}`), t.forEach((n) => {
203
- console.warn(`CloudImage 360: ${n}`);
204
+ return e.autoplayBehavior && !i.includes(e.autoplayBehavior) && t.push(`autoplayBehavior should be one of: ${i.join(", ")}`), t.forEach((o) => {
205
+ console.warn(`CloudImage 360: ${o}`);
204
206
  }), t.length === 0;
205
- }, Yi = (e) => (Ti(e), {
207
+ }, Xi = (e) => (Yi(e), {
206
208
  folder: e.folder || d.folder,
207
209
  apiVersion: e.apiVersion || d.apiVersion,
208
210
  filenameX: e.filenameX || e.filename || d.filenameX,
@@ -243,6 +245,7 @@ const de = /* @__PURE__ */ ei(bi), M = {
243
245
  hints: e.hints ?? d.hints,
244
246
  theme: e.theme || d.theme,
245
247
  hotspotTimelineOnClick: e.hotspotTimelineOnClick ?? d.hotspotTimelineOnClick,
248
+ aspectRatio: e.aspectRatio || d.aspectRatio,
246
249
  // Event callbacks
247
250
  onReady: e.onReady ?? d.onReady,
248
251
  onLoad: e.onLoad ?? d.onLoad,
@@ -255,38 +258,38 @@ const de = /* @__PURE__ */ ei(bi), M = {
255
258
  onZoomOut: e.onZoomOut ?? d.onZoomOut,
256
259
  onDragStart: e.onDragStart ?? d.onDragStart,
257
260
  onDragEnd: e.onDragEnd ?? d.onDragEnd
258
- }), k = (e, t, i) => e.getAttribute(t) || e.getAttribute(`data-${t}`) || i, X = (e, t, i) => {
261
+ }), L = (e, t, i) => e.getAttribute(t) || e.getAttribute(`data-${t}`) || i, X = (e, t, i) => {
259
262
  if (!(e.hasAttribute(t) || e.hasAttribute(`data-${t}`))) return i;
260
- const o = k(e, t, null);
261
- return o !== "false" && o !== "0";
262
- }, Ht = (e, t) => k(e, t, null) === "false", Xi = (e = 1) => {
263
+ const s = L(e, t, null);
264
+ return s !== "false" && s !== "0";
265
+ }, Ht = (e, t) => L(e, t, null) === "false", Pi = (e = 1) => {
263
266
  const t = Math.round(window.devicePixelRatio || 1);
264
267
  return parseInt(e) * t;
265
- }, Pi = (e, t, i) => new URL(e).origin.includes("cloudimg") ? e : `https://${t}.cloudimg.io/${i}${e}`, Ri = ({ ciTransformation: e, responsiveWidth: t, ciFilters: i }) => {
266
- const n = `width=${t}`, o = e || n, s = i ? `&f=${i}` : "";
267
- return `${o}${s}`;
268
- }, Ot = (e, t) => {
269
- const { folder: i, apiVersion: n, filename: o = "", ciParams: s } = e, { ciToken: l, ciFilters: r, ciTransformation: a } = s || {}, c = `${i}${o}`;
268
+ }, Ri = (e, t, i) => new URL(e).origin.includes("cloudimg") ? e : `https://${t}.cloudimg.io/${i}${e}`, Mi = ({ ciTransformation: e, responsiveWidth: t, ciFilters: i }) => {
269
+ const o = `width=${t}`, s = e || o, n = i ? `&f=${i}` : "";
270
+ return `${s}${n}`;
271
+ }, Et = (e, t) => {
272
+ const { folder: i, apiVersion: o, filename: s = "", ciParams: n } = e, { ciToken: l, ciFilters: r, ciTransformation: a } = n || {}, c = `${i}${s}`;
270
273
  if (!l) return c;
271
- const h = wi.includes(n) ? null : n, p = h ? `${h}/` : "", f = Xi(t), u = Pi(c, l, p), I = Ri({
274
+ const h = Ii.includes(o) ? null : o, p = h ? `${h}/` : "", f = Pi(t), u = Ri(c, l, p), I = Mi({
272
275
  ciTransformation: a,
273
276
  responsiveWidth: f,
274
277
  ciFilters: r
275
278
  });
276
279
  return `${u}${I ? "?" : ""}${I}`;
277
- }, Mi = (e, t, i) => {
278
- const [n, o] = e.split("?"), s = `${t}=${encodeURIComponent(i)}`;
279
- if (!o)
280
- return `${n}?${s}`;
281
- const l = new URLSearchParams(o);
282
- return l.set(t, i), `${n}?${l.toString()}`;
283
- }, Hi = (e, t) => Mi(e, "width", t), Be = (e, t = 0) => (e += "", e.length >= t ? e : new Array(t - e.length + 1).join("0") + e), Di = (e, { amount: t = 0, indexZeroBase: i = 0 } = {}) => Array.from({ length: t }, (n, o) => e.replace("{index}", Be(o + 1, i))), Zi = ({
280
+ }, Hi = (e, t, i) => {
281
+ const [o, s] = e.split("?"), n = `${t}=${encodeURIComponent(i)}`;
282
+ if (!s)
283
+ return `${o}?${n}`;
284
+ const l = new URLSearchParams(s);
285
+ return l.set(t, i), `${o}?${l.toString()}`;
286
+ }, Di = (e, t) => Hi(e, "width", t), Be = (e, t = 0) => (e += "", e.length >= t ? e : new Array(t - e.length + 1).join("0") + e), Zi = (e, { amount: t = 0, indexZeroBase: i = 0 } = {}) => Array.from({ length: t }, (o, s) => e.replace("{index}", Be(s + 1, i))), Bi = ({
284
287
  imagesUrls: e,
285
288
  onFirstImageLoad: t,
286
289
  onImageLoad: i,
287
- onAllImagesLoad: n,
288
- onError: o,
289
- autoplayReverse: s
290
+ onAllImagesLoad: o,
291
+ onError: s,
292
+ autoplayReverse: n
290
293
  }) => {
291
294
  let l = 0, r = 0;
292
295
  const a = e.length, c = [], h = [], p = (m, b, x = !1) => {
@@ -296,14 +299,14 @@ const de = /* @__PURE__ */ ei(bi), M = {
296
299
  index: b,
297
300
  isFirstImage: x
298
301
  };
299
- h.push(w), r++, o == null || o({
302
+ h.push(w), r++, s == null || s({
300
303
  error: w,
301
304
  errorCount: r,
302
305
  totalImages: a,
303
306
  errors: h
304
307
  });
305
308
  }, f = () => {
306
- l === a && (n == null || n(c, { errorCount: r, errors: h }));
309
+ l === a && (o == null || o(c, { errorCount: r, errors: h }));
307
310
  }, u = (m, b) => {
308
311
  const x = new Image();
309
312
  x.crossOrigin = "anonymous", x.src = m, x.onload = async () => {
@@ -321,7 +324,7 @@ const de = /* @__PURE__ */ ei(bi), M = {
321
324
  }, x.onerror = () => {
322
325
  l++, p(m, b), f();
323
326
  };
324
- }, I = new Image(), g = s ? e.length - 1 : 0, v = e[g];
327
+ }, I = new Image(), g = n ? e.length - 1 : 0, v = e[g];
325
328
  I.crossOrigin = "anonymous", I.src = v, I.onload = async () => {
326
329
  try {
327
330
  const m = await createImageBitmap(I), b = {
@@ -350,14 +353,14 @@ const de = /* @__PURE__ */ ei(bi), M = {
350
353
  cdnPathX: e,
351
354
  cdnPathY: t,
352
355
  configX: i,
353
- configY: n,
354
- onFirstImageLoad: o,
355
- onImageLoad: s,
356
+ configY: o,
357
+ onFirstImageLoad: s,
358
+ onImageLoad: n,
356
359
  onAllImagesLoad: l,
357
360
  onError: r
358
361
  }) => {
359
362
  let a = { x: !1, y: !1 }, c = [], h = [], p = { errorCount: 0, errors: [] }, f = { errorCount: 0, errors: [] };
360
- const u = e || i.imageList.length, I = t || n.imageList.length, g = () => {
363
+ const u = e || i.imageList.length, I = t || o.imageList.length, g = () => {
361
364
  if (a.x && a.y) {
362
365
  const m = {
363
366
  errorCount: p.errorCount + f.errorCount,
@@ -366,20 +369,20 @@ const de = /* @__PURE__ */ ei(bi), M = {
366
369
  l == null || l(c, h, m);
367
370
  }
368
371
  }, v = ({ cdnPath: m, config: b, orientation: x, loadedImages: w, loadStats: C, onFirstImageLoad: y }) => {
369
- const O = x === P.X, S = b.imageList.length ? b.imageList : Di(m, b);
370
- Zi({
372
+ const O = x === P.X, S = b.imageList.length ? b.imageList : Zi(m, b);
373
+ Bi({
371
374
  imagesUrls: S,
372
375
  onFirstImageLoad: y,
373
376
  onImageLoad: (E, A) => {
374
- s == null || s(E, A, x), w[A] = E;
377
+ n == null || n(E, A, x), w[A] = E;
375
378
  },
376
379
  onError: (E) => {
377
380
  r == null || r({ ...E, orientation: x });
378
381
  },
379
382
  onAllImagesLoad: (E, A) => {
380
- w.length = 0, E.forEach((L, R) => {
381
- L && (w[R] = L);
382
- }), C.errorCount = A.errorCount, C.errors = A.errors.map((L) => ({ ...L, orientation: x })), a[O ? "x" : "y"] = !0, g();
383
+ w.length = 0, E.forEach((k, R) => {
384
+ k && (w[R] = k);
385
+ }), C.errorCount = A.errorCount, C.errors = A.errors.map((k) => ({ ...k, orientation: x })), a[O ? "x" : "y"] = !0, g();
383
386
  },
384
387
  autoplayReverse: b.autoplayReverse
385
388
  });
@@ -390,16 +393,16 @@ const de = /* @__PURE__ */ ei(bi), M = {
390
393
  orientation: P.X,
391
394
  loadedImages: c,
392
395
  loadStats: p,
393
- onFirstImageLoad: o
396
+ onFirstImageLoad: s
394
397
  }) : a.x = !0, I ? v({
395
398
  cdnPath: t,
396
- config: n,
399
+ config: o,
397
400
  orientation: P.Y,
398
401
  loadedImages: h,
399
402
  loadStats: f,
400
- onFirstImageLoad: u ? void 0 : o
403
+ onFirstImageLoad: u ? void 0 : s
401
404
  }) : a.y = !0, !u && !I && g();
402
- }, Bi = `
405
+ }, Wi = `
403
406
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1052 156" aria-hidden="true">
404
407
  <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"/>
405
408
  <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"/>
@@ -410,10 +413,10 @@ const de = /* @__PURE__ */ ei(bi), M = {
410
413
  <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"/>
411
414
  </g>
412
415
  </svg>
413
- `, Wi = (e) => {
416
+ `, Fi = (e) => {
414
417
  const t = document.createElement("div");
415
- return t.innerHTML = Bi, t.style.bottom = `${e}%`, t.className = "cloudimage-360-view-360-circle", t;
416
- }, Fi = `
418
+ return t.innerHTML = Wi, t.style.bottom = `${e}%`, t.className = "cloudimage-360-view-360-circle", t;
419
+ }, Ni = `
417
420
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" fill="none" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">
418
421
  <!-- Circular arrows -->
419
422
  <path d="M 75 50 A 25 25 0 1 1 50 25" stroke="currentColor" stroke-width="3"/>
@@ -424,33 +427,33 @@ const de = /* @__PURE__ */ ei(bi), M = {
424
427
  <!-- 360 text -->
425
428
  <text x="50" y="54" text-anchor="middle" font-size="16" font-weight="600" fill="currentColor" stroke="none" font-family="system-ui, -apple-system, sans-serif">360°</text>
426
429
  </svg>
427
- `, Ni = (e) => {
430
+ `, Vi = (e) => {
428
431
  const t = document.createElement("div");
429
- 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 = Fi, t;
430
- }, Vi = (e, t) => {
431
- const { width: i, height: n } = t, o = document.createElement("canvas");
432
- return o.width = i, o.height = n, o.style.width = "100%", o.style.height = "auto", e.appendChild(o), o;
433
- }, ji = () => {
432
+ 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 = Ni, t;
433
+ }, ji = (e, t) => {
434
+ const { width: i, height: o } = t, s = document.createElement("canvas");
435
+ return s.width = i, s.height = o, s.style.width = "100%", s.style.height = "auto", e.appendChild(s), s;
436
+ }, $i = () => {
434
437
  const e = document.createElement("button");
435
438
  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;
436
- }, $i = () => {
439
+ }, zi = () => {
437
440
  const e = document.createElement("button");
438
441
  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;
439
442
  }, ge = (e) => {
440
443
  const t = document.createElement("div");
441
444
  return t.className = "cloudimage-360-icons-container", e.appendChild(t), t;
442
- }, zi = (e) => {
445
+ }, Gi = (e) => {
443
446
  const t = document.createElement("div");
444
447
  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;
445
- }, Gi = () => {
448
+ }, Ui = () => {
446
449
  const e = document.createElement("button");
447
450
  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;
448
- }, Ui = (e) => {
451
+ }, Ki = (e) => {
449
452
  const t = document.createElement("div");
450
453
  t.className = "cloudimage-initial-icon";
451
454
  const i = document.createElement("span");
452
455
  return i.className = "percentage", i.innerText = "0%", t.appendChild(i), e.appendChild(t), t;
453
- }, Ki = (e) => {
456
+ }, _i = (e) => {
454
457
  const t = document.createElement("div");
455
458
  t.className = "cloudimage-360-fullscreen-modal";
456
459
  const i = e.cloneNode();
@@ -458,19 +461,19 @@ const de = /* @__PURE__ */ ei(bi), M = {
458
461
  }, Jt = (e, t) => {
459
462
  const i = e.querySelector(t);
460
463
  i && i.parentNode.removeChild(i);
461
- }, _i = () => {
464
+ }, Ji = () => {
462
465
  const e = document.createElement("div");
463
466
  return e.className = "cloudimage-loading-spinner", e;
464
- }, Ji = () => {
467
+ }, qi = () => {
465
468
  const e = document.createElement("div");
466
469
  return e.className = "cloudimage-360-transition-overlay", e;
467
- }, qi = (e) => {
470
+ }, Qi = (e) => {
468
471
  const t = document.createElement("div");
469
472
  return t.className = "cloudimage-360-hotspot-container", e.appendChild(t), t;
470
- }, Qi = (e) => {
473
+ }, to = (e) => {
471
474
  const t = document.createElement("div");
472
475
  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;
473
- }, tn = (e, t) => {
476
+ }, eo = (e, t) => {
474
477
  e && (e.textContent = "", setTimeout(() => {
475
478
  e.textContent = t;
476
479
  }, 50));
@@ -481,91 +484,91 @@ const de = /* @__PURE__ */ ei(bi), M = {
481
484
  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>',
482
485
  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>',
483
486
  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>'
484
- }, en = {
487
+ }, io = {
485
488
  drag: "Drag to rotate",
486
489
  swipe: "Swipe to rotate",
487
490
  click: "Click to zoom",
488
491
  pinch: "Pinch to zoom",
489
492
  keys: "Use arrow keys",
490
493
  fullscreen: "Click for fullscreen"
491
- }, nn = (e) => {
494
+ }, oo = (e) => {
492
495
  const t = document.createElement("div");
493
496
  return t.className = "cloudimage-360-hint-item", t.innerHTML = `
494
497
  ${We[e]}
495
- <span>${en[e]}</span>
498
+ <span>${io[e]}</span>
496
499
  `, t;
497
500
  }, ye = (e, t = []) => {
498
501
  if (!t || t.length === 0) return null;
499
502
  const i = document.createElement("div");
500
503
  i.className = "cloudimage-360-hints-overlay", i.setAttribute("role", "tooltip"), i.setAttribute("aria-label", "Interaction hints");
501
- const n = document.createElement("div");
502
- return n.className = "cloudimage-360-hints-container", t.forEach((o) => {
503
- We[o] && n.appendChild(nn(o));
504
- }), i.appendChild(n), e.appendChild(i), i;
504
+ const o = document.createElement("div");
505
+ return o.className = "cloudimage-360-hints-container", t.forEach((s) => {
506
+ We[s] && o.appendChild(oo(s));
507
+ }), i.appendChild(o), e.appendChild(i), i;
505
508
  }, be = (e, t) => t ? ["swipe"] : ["drag", "click"], we = (e) => {
506
509
  e && e.classList.add("visible");
507
- }, on = (e) => {
510
+ }, so = (e) => {
508
511
  e && (e.classList.remove("visible"), e.classList.add("hiding"), setTimeout(() => {
509
512
  e.classList.remove("hiding");
510
513
  }, 300));
511
- }, sn = (e) => {
514
+ }, no = (e) => {
512
515
  if (!e || typeof e != "object") return null;
513
- const t = Object.keys(e).map((n) => parseInt(n, 10)).filter((n) => !isNaN(n)).sort((n, o) => n - o);
516
+ const t = Object.keys(e).map((o) => parseInt(o, 10)).filter((o) => !isNaN(o)).sort((o, s) => o - s);
514
517
  if (t.length === 0) return null;
515
518
  const i = Math.floor(t.length / 2);
516
519
  return t[i];
517
- }, rn = (e) => {
520
+ }, ro = (e) => {
518
521
  const t = [];
519
- return !e || !Array.isArray(e) || e.forEach((i, n) => {
520
- const o = sn(i.positions);
521
- o !== null && t.push({
522
- id: i.id || `hotspot-${n}`,
523
- frame: o,
522
+ return !e || !Array.isArray(e) || e.forEach((i, o) => {
523
+ const s = no(i.positions);
524
+ s !== null && t.push({
525
+ id: i.id || `hotspot-${o}`,
526
+ frame: s,
524
527
  label: i.label || null
525
528
  });
526
529
  }), t;
527
- }, an = 400, ln = (e, t, i, n) => {
528
- const o = document.createElement("button");
529
- o.className = "cloudimage-360-hotspot-timeline-dot", o.setAttribute("type", "button"), o.setAttribute("aria-label", n || `Go to hotspot at frame ${t + 1}`), o.setAttribute("data-frame", t.toString()), o.setAttribute("data-hotspot-id", e);
530
- const s = i > 1 ? t / (i - 1) * 100 : 0;
531
- if (o.style.left = `${s}%`, n) {
530
+ }, ao = 400, lo = (e, t, i, o) => {
531
+ const s = document.createElement("button");
532
+ 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);
533
+ const n = i > 1 ? t / (i - 1) * 100 : 0;
534
+ if (s.style.left = `${n}%`, o) {
532
535
  const l = document.createElement("span");
533
- l.className = "cloudimage-360-hotspot-timeline-tooltip", l.textContent = n, o.appendChild(l);
536
+ l.className = "cloudimage-360-hotspot-timeline-tooltip", l.textContent = o, s.appendChild(l);
534
537
  let r = null;
535
- o.addEventListener("mouseenter", () => {
538
+ s.addEventListener("mouseenter", () => {
536
539
  r = setTimeout(() => {
537
540
  l.classList.add("visible");
538
- }, an);
539
- }), o.addEventListener("mouseleave", () => {
541
+ }, ao);
542
+ }), s.addEventListener("mouseleave", () => {
540
543
  r && (clearTimeout(r), r = null), l.classList.remove("visible");
541
- }), o.addEventListener("click", () => {
544
+ }), s.addEventListener("click", () => {
542
545
  r && (clearTimeout(r), r = null), l.classList.remove("visible");
543
546
  });
544
547
  }
545
- return o;
546
- }, cn = (e, t, i) => {
547
- const n = rn(i);
548
- if (n.length === 0) return null;
549
- const o = document.createElement("div");
550
- o.className = "cloudimage-360-hotspot-timeline", o.setAttribute("role", "navigation"), o.setAttribute("aria-label", "Hotspot timeline navigation");
548
+ return s;
549
+ }, co = (e, t, i) => {
550
+ const o = ro(i);
551
+ if (o.length === 0) return null;
551
552
  const s = document.createElement("div");
552
- s.className = "cloudimage-360-hotspot-timeline-track";
553
+ s.className = "cloudimage-360-hotspot-timeline", s.setAttribute("role", "navigation"), s.setAttribute("aria-label", "Hotspot timeline navigation");
554
+ const n = document.createElement("div");
555
+ n.className = "cloudimage-360-hotspot-timeline-track";
553
556
  const l = document.createElement("div");
554
- return l.className = "cloudimage-360-hotspot-timeline-indicator", n.forEach(({ id: r, frame: a, label: c }) => {
555
- const h = ln(r, a, t, c);
556
- s.appendChild(h);
557
- }), s.appendChild(l), o.appendChild(s), e.appendChild(o), {
558
- element: o,
557
+ return l.className = "cloudimage-360-hotspot-timeline-indicator", o.forEach(({ id: r, frame: a, label: c }) => {
558
+ const h = lo(r, a, t, c);
559
+ n.appendChild(h);
560
+ }), n.appendChild(l), s.appendChild(n), e.appendChild(s), {
561
+ element: s,
559
562
  indicator: l,
560
- hotspotFrames: n
563
+ hotspotFrames: o
561
564
  };
562
- }, hn = (e, t, i) => {
565
+ }, ho = (e, t, i) => {
563
566
  if (!e) return;
564
- const n = i > 1 ? t / (i - 1) * 100 : 0;
565
- e.style.left = `${n}%`;
566
- }, dn = (e) => {
567
+ const o = i > 1 ? t / (i - 1) * 100 : 0;
568
+ e.style.left = `${o}%`;
569
+ }, uo = (e) => {
567
570
  e && e.classList.add("visible");
568
- }, un = (e) => {
571
+ }, po = (e) => {
569
572
  e && e.classList.remove("visible");
570
573
  }, qt = (e, t = []) => {
571
574
  if (!e) return t;
@@ -574,49 +577,49 @@ const de = /* @__PURE__ */ ei(bi), M = {
574
577
  } catch (i) {
575
578
  return console.warn("CloudImage 360: Failed to parse JSON:", i.message), t;
576
579
  }
577
- }, pn = (e, t) => {
578
- const [i, n] = e.split("?");
579
- if (!n) return e;
580
- const o = new RegExp(`^${t}=|&${t}=`), s = n.split("&").filter((l) => !o.test(l)).join("&");
581
- return s ? `${i}?${s}` : i;
582
- }, fn = (e) => {
583
- const t = pn(e, "width"), i = t.includes("?") ? "&" : "?";
580
+ }, fo = (e, t) => {
581
+ const [i, o] = e.split("?");
582
+ if (!o) return e;
583
+ const s = new RegExp(`^${t}=|&${t}=`), n = o.split("&").filter((l) => !s.test(l)).join("&");
584
+ return n ? `${i}?${n}` : i;
585
+ }, mo = (e) => {
586
+ const t = fo(e, "width"), i = t.includes("?") ? "&" : "?";
584
587
  return `${t}${i}width=${150 * devicePixelRatio}`;
585
- }, mn = (e) => {
588
+ }, vo = (e) => {
586
589
  const t = {
587
590
  root: null,
588
591
  rootMargin: "0px",
589
592
  threshold: 0.1
590
- }, i = (o) => {
591
- const s = o.getAttribute("data-src");
592
- s && (o.src = s);
593
+ }, i = (s) => {
594
+ const n = s.getAttribute("data-src");
595
+ n && (s.src = n);
593
596
  };
594
- new IntersectionObserver((o, s) => {
595
- o.forEach((l) => {
596
- l.isIntersecting && (i(l.target), s.unobserve(l.target));
597
+ new IntersectionObserver((s, n) => {
598
+ s.forEach((l) => {
599
+ l.isIntersecting && (i(l.target), n.unobserve(l.target));
597
600
  });
598
601
  }, t).observe(e);
599
- }, vn = (e, t) => {
602
+ }, go = (e, t) => {
600
603
  const i = Be(1, t);
601
604
  return e.replace("{index}", i);
602
- }, gn = (e, t) => {
603
- const [i] = e, n = /(https?):\/\//i.test(i);
604
- return Ot({
605
+ }, yo = (e, t) => {
606
+ const [i] = e, o = /(https?):\/\//i.test(i);
607
+ return Et({
605
608
  ...t,
606
- folder: n ? "" : t.folder,
609
+ folder: o ? "" : t.folder,
607
610
  filename: i
608
611
  });
609
- }, yn = (e, t) => {
610
- const { imageList: i, indexZeroBase: n } = t;
612
+ }, bo = (e, t) => {
613
+ const { imageList: i, indexZeroBase: o } = t;
611
614
  if (i.length) {
612
- const o = qt(i, null);
613
- if (o)
614
- return gn(o, t);
615
+ const s = qt(i, null);
616
+ if (s)
617
+ return yo(s, t);
615
618
  }
616
- return vn(e, n);
619
+ return go(e, o);
617
620
  }, Ie = (e, t, i) => {
618
- const n = new Image();
619
- return n.setAttribute(t ? "data-src" : "src", e), n.className = i, n.style.cssText = `
621
+ const o = new Image();
622
+ return o.setAttribute(t ? "data-src" : "src", e), o.className = i, o.style.cssText = `
620
623
  position: ${t ? "absolute" : "static"};
621
624
  width: 100%;
622
625
  inset: 0;
@@ -624,10 +627,10 @@ const de = /* @__PURE__ */ ei(bi), M = {
624
627
  object-fit: contain;
625
628
  object-position: center;
626
629
  filter: blur(10px);
627
- `, n;
630
+ `, o;
628
631
  }, xe = (e, t, i) => {
629
- const { innerBox: n, imageList: o, lazyload: s } = t || {}, [l] = o, r = l || yn(e, t), a = fn(r), c = Ie(a, s, "cloudimage-lazy"), h = Ie(a, !1, "cloudimage-360-placeholder"), p = (f) => {
630
- Jt(n, ".cloudimage-lazy"), i && i({
632
+ const { innerBox: o, imageList: s, lazyload: n } = t || {}, [l] = s, r = l || bo(e, t), a = mo(r), c = Ie(a, n, "cloudimage-lazy"), h = Ie(a, !1, "cloudimage-360-placeholder"), p = (f) => {
633
+ Jt(o, ".cloudimage-lazy"), i && i({
631
634
  event: f,
632
635
  width: c.width,
633
636
  height: c.height,
@@ -636,107 +639,107 @@ const de = /* @__PURE__ */ ei(bi), M = {
636
639
  src: a
637
640
  });
638
641
  };
639
- c.onload = p, n.appendChild(c), n.appendChild(h), mn(c);
640
- }, bn = (e, t, i) => {
641
- const n = new Image();
642
- n.src = e, n.onload = (o) => {
642
+ c.onload = p, o.appendChild(c), o.appendChild(h), vo(c);
643
+ }, wo = (e, t, i) => {
644
+ const o = new Image();
645
+ o.src = e, o.onload = (s) => {
643
646
  t && t({
644
- event: o,
645
- width: n.width,
646
- height: n.height,
647
- naturalWidth: n.naturalWidth,
648
- naturalHeight: n.naturalHeight,
647
+ event: s,
648
+ width: o.width,
649
+ height: o.height,
650
+ naturalWidth: o.naturalWidth,
651
+ naturalHeight: o.naturalHeight,
649
652
  src: e
650
653
  });
651
- }, n.onerror = (o) => {
652
- const s = new Error(`Failed to load image: ${e}`);
653
- s.url = e, s.event = o, i ? i(s) : console.error(s.message);
654
+ }, o.onerror = (s) => {
655
+ const n = new Error(`Failed to load image: ${e}`);
656
+ n.url = e, n.event = s, i ? i(n) : console.error(n.message);
654
657
  };
655
- }, wn = (e, t) => {
656
- const i = t.getBoundingClientRect(), n = e.touches ? e.touches[0].clientX : e.clientX, o = e.touches ? e.touches[0].clientY : e.clientY;
658
+ }, Io = (e, t) => {
659
+ const i = t.getBoundingClientRect(), o = e.touches ? e.touches[0].clientX : e.clientX, s = e.touches ? e.touches[0].clientY : e.clientY;
657
660
  return {
658
- x: n - i.left,
659
- y: o - i.top
661
+ x: o - i.left,
662
+ y: s - i.top
660
663
  };
661
664
  }, _t = (e, t, i) => {
662
- const { container: n, w: o, h: s, zoom: l, bw: r, offsetX: a, offsetY: c } = t, h = wn(e, n);
665
+ const { container: o, w: s, h: n, zoom: l, bw: r, offsetX: a, offsetY: c } = t, h = Io(e, o);
663
666
  let p = h.x, f = h.y;
664
- p = Math.max(o / l, Math.min(p, n.offsetWidth - o / l)), f = Math.max(s / l, Math.min(f, n.offsetHeight - s / l)), i.style.left = `${p - o}px`, i.style.top = `${f - s}px`;
665
- const u = (p - a) * l - o + r, I = (f - c) * l - s + r;
667
+ 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`;
668
+ const u = (p - a) * l - s + r, I = (f - c) * l - n + r;
666
669
  i.style.backgroundPosition = `-${u}px -${I}px`;
667
- }, In = (e, t, i, n, o, s) => {
668
- const { x: l = 0, y: r = 0 } = i || {}, a = (t.offsetWidth - l * 2) * s, c = (t.offsetHeight - r * 2) * s;
669
- if (!o) return;
670
- o.setAttribute("class", "cloudimage-360-img-magnifier-glass"), t.prepend(o), o.style.backgroundImage = `url('${n.src}')`, o.style.backgroundSize = `${a}px ${c}px`;
671
- const h = 3, p = o.offsetWidth / 2, f = o.offsetHeight / 2, u = {
670
+ }, xo = (e, t, i, o, s, n) => {
671
+ const { x: l = 0, y: r = 0 } = i || {}, a = (t.offsetWidth - l * 2) * n, c = (t.offsetHeight - r * 2) * n;
672
+ if (!s) return;
673
+ s.setAttribute("class", "cloudimage-360-img-magnifier-glass"), t.prepend(s), s.style.backgroundImage = `url('${o.src}')`, s.style.backgroundSize = `${a}px ${c}px`;
674
+ const h = 3, p = s.offsetWidth / 2, f = s.offsetHeight / 2, u = {
672
675
  container: t,
673
676
  w: p,
674
677
  h: f,
675
- zoom: s,
678
+ zoom: n,
676
679
  bw: h,
677
680
  offsetX: l,
678
681
  offsetY: r
679
682
  };
680
- _t(e, u, o);
683
+ _t(e, u, s);
681
684
  const I = (v) => {
682
- _t(v, u, o);
685
+ _t(v, u, s);
683
686
  }, g = (v) => {
684
- v.preventDefault(), _t(v, u, o);
687
+ v.preventDefault(), _t(v, u, s);
685
688
  };
686
- o.addEventListener("mousemove", I), t.addEventListener("mousemove", I), t.addEventListener("touchmove", g);
687
- }, xn = (e, t, i) => {
688
- const { clientX: n, clientY: o } = e, s = t.getBoundingClientRect(), l = t.width / (s.width * i), r = t.height / (s.height * i), a = (n - s.left) * l, c = (o - s.top) * r;
689
+ s.addEventListener("mousemove", I), t.addEventListener("mousemove", I), t.addEventListener("touchmove", g);
690
+ }, Co = (e, t, i) => {
691
+ const { clientX: o, clientY: s } = e, n = t.getBoundingClientRect(), l = t.width / (n.width * i), r = t.height / (n.height * i), a = (o - n.left) * l, c = (s - n.top) * r;
689
692
  return { offsetX: a, offsetY: c };
690
693
  }, Ce = (e, { bottom: t, top: i }) => {
691
694
  e ? t() : i();
692
695
  }, Oe = (e, { left: t, right: i }) => {
693
696
  e ? t() : i();
694
- }, Cn = ({ autoplayBehavior: e, spinY: t, reversed: i, loopTriggers: n }) => {
697
+ }, Oo = ({ autoplayBehavior: e, spinY: t, reversed: i, loopTriggers: o }) => {
695
698
  switch (e) {
696
699
  case M.SPIN_XY:
697
700
  case M.SPIN_YX:
698
- t ? Ce(i, n) : Oe(i, n);
701
+ t ? Ce(i, o) : Oe(i, o);
699
702
  break;
700
703
  case M.SPIN_Y:
701
- Ce(i, n);
704
+ Ce(i, o);
702
705
  break;
703
706
  case M.SPIN_X:
704
707
  default:
705
- Oe(i, n);
708
+ Oe(i, o);
706
709
  }
707
- }, On = ({
710
+ }, Eo = ({
708
711
  autoplayBehavior: e,
709
712
  activeImageX: t,
710
713
  activeImageY: i,
711
- amountX: n,
712
- amountY: o,
713
- autoplayReverse: s
714
+ amountX: o,
715
+ amountY: s,
716
+ autoplayReverse: n
714
717
  }) => {
715
718
  const l = (r, a) => {
716
719
  const c = a - 1;
717
- return s ? r === 0 : r === c;
720
+ return n ? r === 0 : r === c;
718
721
  };
719
722
  switch (e) {
720
723
  case M.SPIN_XY:
721
724
  case M.SPIN_Y:
722
- return l(i, o);
725
+ return l(i, s);
723
726
  case M.SPIN_X:
724
727
  case M.SPIN_YX:
725
728
  default:
726
- return l(t, n);
729
+ return l(t, o);
727
730
  }
728
- }, En = ({
731
+ }, So = ({
729
732
  autoplayBehavior: e,
730
733
  activeImageX: t,
731
734
  activeImageY: i,
732
- amountX: n,
733
- amountY: o,
734
- autoplayReverse: s,
735
+ amountX: o,
736
+ amountY: s,
737
+ autoplayReverse: n,
735
738
  spinDirection: l
736
739
  }) => {
737
- const r = t === (s ? 0 : n - 1), a = i === (s ? 0 : o - 1);
740
+ const r = t === (n ? 0 : o - 1), a = i === (n ? 0 : s - 1);
738
741
  return e === M.SPIN_XY || e === M.SPIN_YX ? l === "x" && r || l === "y" && a : !1;
739
- }, Sn = (e, t, i) => {
742
+ }, Ao = (e, t, i) => {
740
743
  if (!i) return "x";
741
744
  if (!t) return "y";
742
745
  switch (e) {
@@ -750,21 +753,21 @@ const de = /* @__PURE__ */ ei(bi), M = {
750
753
  default:
751
754
  return "x";
752
755
  }
753
- }, An = (e) => e === "x" ? "y" : "x", Ee = (e, t) => {
754
- const i = [...Ii];
755
- return t ? [...i, ...xi].includes(e) : i.includes(e);
756
- }, Se = ({ deltaX: e, deltaY: t, reversed: i, allowSpinX: n, allowSpinY: o, threshold: s = 0 }) => {
757
- const l = n && !o || o && !n ? 0 : s, r = Math.abs(e), a = Math.abs(t);
758
- return n && r - l > a ? i ? e > 0 ? "left" : "right" : e > 0 ? "right" : "left" : o && a - l > r ? i ? t > 0 ? "up" : "down" : t > 0 ? "down" : "up" : null;
759
- }, Ln = () => "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0, kn = (e, t = 150) => {
756
+ }, Lo = (e) => e === "x" ? "y" : "x", Ee = (e, t) => {
757
+ const i = [...xi];
758
+ return t ? [...i, ...Ci].includes(e) : i.includes(e);
759
+ }, Se = ({ deltaX: e, deltaY: t, reversed: i, allowSpinX: o, allowSpinY: s, threshold: n = 0 }) => {
760
+ const l = o && !s || s && !o ? 0 : n, r = Math.abs(e), a = Math.abs(t);
761
+ return o && r - l > a ? i ? e > 0 ? "left" : "right" : e > 0 ? "right" : "left" : s && a - l > r ? i ? t > 0 ? "up" : "down" : t > 0 ? "down" : "up" : null;
762
+ }, ko = () => "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0, To = (e, t = 150) => {
760
763
  let i;
761
- return function(...n) {
764
+ return function(...o) {
762
765
  clearTimeout(i), i = setTimeout(() => {
763
- e.apply(this, n);
766
+ e.apply(this, o);
764
767
  }, t);
765
768
  };
766
- }, Fe = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHY9KHQsYSxlKT0+e2NvbnN0IHM9dC9lLG49YS9lO3JldHVybnt6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpufX0sej0oe3BvaW50ZXJYOnQscG9pbnRlclk6YSxpbWFnZURhdGE6ZSx6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpuLGRyYXdXaWR0aDppLGRyYXdIZWlnaHQ6Y30pPT57Y29uc3R7bmF0dXJhbFdpZHRoOmcsbmF0dXJhbEhlaWdodDp1fT1lO2xldCBmPXQvaSpnLXMvMixtPWEvYyp1LW4vMjtjb25zdCB4PU1hdGgubWF4KDAsZy1zKSxPPU1hdGgubWF4KDAsdS1uKTtyZXR1cm4gZj1NYXRoLm1heCgwLE1hdGgubWluKGYseCkpLG09TWF0aC5tYXgoMCxNYXRoLm1pbihtLE8pKSx7em9vbU9mZnNldFg6Zix6b29tT2Zmc2V0WTptfX07bGV0IG8saCxyLGQsbCx3O3NlbGYub25tZXNzYWdlPWFzeW5jIHQ9Pntjb25zdHthY3Rpb246YSxvZmZzY3JlZW46ZSxkZXZpY2VQaXhlbFJhdGlvOnMsaW1hZ2VEYXRhOm4sem9vbVNjYWxlOmkscG9pbnRlclg6Yyxwb2ludGVyWTpnLGltYWdlQXNwZWN0UmF0aW86dSxjb250YWluZXJXaWR0aDpmLGNvbnRhaW5lckhlaWdodDptfT10LmRhdGE7c3dpdGNoKGEpe2Nhc2UiaW5pdENhbnZhcyI6QyhlLHMpO2JyZWFrO2Nhc2UiYWRhcHRDYW52YXNTaXplIjpwKHUsZixtKTticmVhaztjYXNlImRyYXdJbWFnZU9uQ2FudmFzIjpJKG4saSxjLGcpO2JyZWFrfX07Y29uc3QgQz0odCxhKT0+e289dCxoPW8uZ2V0Q29udGV4dCgiMmQiKSxyPWF9LHA9KHQsYSxlKT0+e2NvbnN0IHM9YS9lO3c9dD5zLG8ud2lkdGg9YSpyLG8uaGVpZ2h0PWUqcixoLnNjYWxlKHIsciksdz8oZD1hLGw9YS90KToobD1lLGQ9ZSp0KSxoLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxoLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCJ9LEk9KHQ9e30sYT0xLGU9MCxzPTApPT57Y29uc3R7Yml0bWFwSW1hZ2U6bn09dDtpZighb3x8IW4pcmV0dXJuO2xldCBpLGM7aWYodz8oaT0wLGM9KG8uaGVpZ2h0L3ItbCkvMik6KGk9KG8ud2lkdGgvci1kKS8yLGM9MCksaC5jbGVhclJlY3QoMCwwLG8ud2lkdGgsby5oZWlnaHQpLGEhPT0xKXtjb25zdHtuYXR1cmFsV2lkdGg6ZyxuYXR1cmFsSGVpZ2h0OnV9PXQse3pvb21lZFdpZHRoOmYsem9vbWVkSGVpZ2h0Om19PXYoZyx1LGEpLHt6b29tT2Zmc2V0WDp4LHpvb21PZmZzZXRZOk99PXooe3BvaW50ZXJYOmUscG9pbnRlclk6cyxpbWFnZURhdGE6dCx6b29tZWRXaWR0aDpmLHpvb21lZEhlaWdodDptLGRyYXdXaWR0aDpkLGRyYXdIZWlnaHQ6bH0pO2guZHJhd0ltYWdlKG4seCxPLGYsbSxpLGMsZCxsKX1lbHNlIGguZHJhd0ltYWdlKG4saSxjLGQsbCl9fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FudmFzLndvcmtlci1DZzBma3BEMS5qcy5tYXAK", Tn = (e) => Uint8Array.from(atob(e), (t) => t.charCodeAt(0)), Ae = typeof self < "u" && self.Blob && new Blob([Tn(Fe)], { type: "text/javascript;charset=utf-8" });
767
- function Yn(e) {
769
+ }, Fe = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHY9KHQsYSxlKT0+e2NvbnN0IHM9dC9lLG49YS9lO3JldHVybnt6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpufX0sej0oe3BvaW50ZXJYOnQscG9pbnRlclk6YSxpbWFnZURhdGE6ZSx6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpuLGRyYXdXaWR0aDppLGRyYXdIZWlnaHQ6Y30pPT57Y29uc3R7bmF0dXJhbFdpZHRoOmcsbmF0dXJhbEhlaWdodDp1fT1lO2xldCBmPXQvaSpnLXMvMixtPWEvYyp1LW4vMjtjb25zdCB4PU1hdGgubWF4KDAsZy1zKSxPPU1hdGgubWF4KDAsdS1uKTtyZXR1cm4gZj1NYXRoLm1heCgwLE1hdGgubWluKGYseCkpLG09TWF0aC5tYXgoMCxNYXRoLm1pbihtLE8pKSx7em9vbU9mZnNldFg6Zix6b29tT2Zmc2V0WTptfX07bGV0IG8saCxyLGQsbCx3O3NlbGYub25tZXNzYWdlPWFzeW5jIHQ9Pntjb25zdHthY3Rpb246YSxvZmZzY3JlZW46ZSxkZXZpY2VQaXhlbFJhdGlvOnMsaW1hZ2VEYXRhOm4sem9vbVNjYWxlOmkscG9pbnRlclg6Yyxwb2ludGVyWTpnLGltYWdlQXNwZWN0UmF0aW86dSxjb250YWluZXJXaWR0aDpmLGNvbnRhaW5lckhlaWdodDptfT10LmRhdGE7c3dpdGNoKGEpe2Nhc2UiaW5pdENhbnZhcyI6QyhlLHMpO2JyZWFrO2Nhc2UiYWRhcHRDYW52YXNTaXplIjpwKHUsZixtKTticmVhaztjYXNlImRyYXdJbWFnZU9uQ2FudmFzIjpJKG4saSxjLGcpO2JyZWFrfX07Y29uc3QgQz0odCxhKT0+e289dCxoPW8uZ2V0Q29udGV4dCgiMmQiKSxyPWF9LHA9KHQsYSxlKT0+e2NvbnN0IHM9YS9lO3c9dD5zLG8ud2lkdGg9YSpyLG8uaGVpZ2h0PWUqcixoLnNjYWxlKHIsciksdz8oZD1hLGw9YS90KToobD1lLGQ9ZSp0KSxoLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxoLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCJ9LEk9KHQ9e30sYT0xLGU9MCxzPTApPT57Y29uc3R7Yml0bWFwSW1hZ2U6bn09dDtpZighb3x8IW4pcmV0dXJuO2xldCBpLGM7aWYodz8oaT0wLGM9KG8uaGVpZ2h0L3ItbCkvMik6KGk9KG8ud2lkdGgvci1kKS8yLGM9MCksaC5jbGVhclJlY3QoMCwwLG8ud2lkdGgsby5oZWlnaHQpLGEhPT0xKXtjb25zdHtuYXR1cmFsV2lkdGg6ZyxuYXR1cmFsSGVpZ2h0OnV9PXQse3pvb21lZFdpZHRoOmYsem9vbWVkSGVpZ2h0Om19PXYoZyx1LGEpLHt6b29tT2Zmc2V0WDp4LHpvb21PZmZzZXRZOk99PXooe3BvaW50ZXJYOmUscG9pbnRlclk6cyxpbWFnZURhdGE6dCx6b29tZWRXaWR0aDpmLHpvb21lZEhlaWdodDptLGRyYXdXaWR0aDpkLGRyYXdIZWlnaHQ6bH0pO2guZHJhd0ltYWdlKG4seCxPLGYsbSxpLGMsZCxsKX1lbHNlIGguZHJhd0ltYWdlKG4saSxjLGQsbCl9fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FudmFzLndvcmtlci1DZzBma3BEMS5qcy5tYXAK", Yo = (e) => Uint8Array.from(atob(e), (t) => t.charCodeAt(0)), Ae = typeof self < "u" && self.Blob && new Blob([Yo(Fe)], { type: "text/javascript;charset=utf-8" });
770
+ function Xo(e) {
768
771
  let t;
769
772
  try {
770
773
  if (t = Ae && (self.URL || self.webkitURL).createObjectURL(Ae), !t) throw "";
@@ -785,7 +788,7 @@ function Yn(e) {
785
788
  t && (self.URL || self.webkitURL).revokeObjectURL(t);
786
789
  }
787
790
  }
788
- const Xn = /* @__PURE__ */ new Set([
791
+ const Po = /* @__PURE__ */ new Set([
789
792
  // Basic HTML
790
793
  "p",
791
794
  "span",
@@ -872,78 +875,78 @@ const Xn = /* @__PURE__ */ new Set([
872
875
  clippath: ["id"],
873
876
  mask: ["id"],
874
877
  "*": ["class", "id", "style"]
875
- }, Pn = [
878
+ }, Ro = [
876
879
  /javascript:/gi,
877
880
  /vbscript:/gi,
878
881
  /data:/gi,
879
882
  /on\w+\s*=/gi
880
- ], Rn = (e) => {
883
+ ], Mo = (e) => {
881
884
  if (typeof e != "string")
882
885
  return "";
883
886
  const t = document.createElement("template");
884
887
  t.innerHTML = e;
885
- const i = (n) => {
886
- if (Array.from(n.childNodes).forEach(i), n.nodeType === Node.ELEMENT_NODE) {
887
- const s = n.tagName.toLowerCase();
888
- if (!Xn.has(s)) {
889
- if (s === "script" || s === "style") {
890
- n.remove();
888
+ const i = (o) => {
889
+ if (Array.from(o.childNodes).forEach(i), o.nodeType === Node.ELEMENT_NODE) {
890
+ const n = o.tagName.toLowerCase();
891
+ if (!Po.has(n)) {
892
+ if (n === "script" || n === "style") {
893
+ o.remove();
891
894
  return;
892
895
  }
893
- const a = document.createTextNode(n.textContent);
894
- n.parentNode.replaceChild(a, n);
896
+ const a = document.createTextNode(o.textContent);
897
+ o.parentNode.replaceChild(a, o);
895
898
  return;
896
899
  }
897
900
  const l = [
898
- ...Le[s] || [],
901
+ ...Le[n] || [],
899
902
  ...Le["*"] || []
900
903
  ];
901
- if (Array.from(n.attributes).forEach((a) => {
904
+ if (Array.from(o.attributes).forEach((a) => {
902
905
  const c = a.name.toLowerCase();
903
906
  if (c.startsWith("on")) {
904
- n.removeAttribute(a.name);
907
+ o.removeAttribute(a.name);
905
908
  return;
906
909
  }
907
910
  if (!l.includes(c)) {
908
- n.removeAttribute(a.name);
911
+ o.removeAttribute(a.name);
909
912
  return;
910
913
  }
911
914
  let h = a.value;
912
- Pn.forEach((p) => {
913
- p.test(h) && n.removeAttribute(a.name);
915
+ Ro.forEach((p) => {
916
+ p.test(h) && o.removeAttribute(a.name);
914
917
  });
915
- }), s === "a") {
916
- const a = n.getAttribute("href");
917
- a && (/^(https?:|mailto:|tel:|#|\/)/i.test(a.trim()) || n.removeAttribute("href")), n.getAttribute("target") === "_blank" && n.setAttribute("rel", "noopener noreferrer");
918
+ }), n === "a") {
919
+ const a = o.getAttribute("href");
920
+ a && (/^(https?:|mailto:|tel:|#|\/)/i.test(a.trim()) || o.removeAttribute("href")), o.getAttribute("target") === "_blank" && o.setAttribute("rel", "noopener noreferrer");
918
921
  }
919
- if (s === "img") {
920
- const a = n.getAttribute("src");
921
- a && (/^(https?:|\/|data:image\/)/i.test(a.trim()) || n.removeAttribute("src"));
922
+ if (n === "img") {
923
+ const a = o.getAttribute("src");
924
+ a && (/^(https?:|\/|data:image\/)/i.test(a.trim()) || o.removeAttribute("src"));
922
925
  }
923
926
  }
924
927
  };
925
928
  return i(t.content), t.innerHTML;
926
- }, Mn = (e) => e === "x" ? P.X : P.Y, Hn = (e, t, i) => e.filter(
927
- (n) => Mn(n.orientation) === i && t in n.positions
928
- ), Dn = (e, t) => {
929
+ }, Ho = (e) => e === "x" ? P.X : P.Y, Do = (e, t, i) => e.filter(
930
+ (o) => Ho(o.orientation) === i && t in o.positions
931
+ ), Zo = (e, t) => {
929
932
  const i = document.createElement("button");
930
933
  return i.id = e, i.className = "cloudimage-360-hotspot", i.dataset.hotspotId = e, i.setAttribute("type", "button"), i.setAttribute("aria-label", t || `Hotspot ${e}`), i.setAttribute("aria-haspopup", "true"), i.setAttribute("aria-expanded", "false"), i;
931
- }, Zn = (e) => {
932
- const t = Object.entries(e).sort(([s], [l]) => Number(s) - Number(l));
933
- let i = null, n = null;
934
- const o = {};
935
- for (const [s, l] of t)
934
+ }, Bo = (e) => {
935
+ const t = Object.entries(e).sort(([n], [l]) => Number(n) - Number(l));
936
+ let i = null, o = null;
937
+ const s = {};
938
+ for (const [n, l] of t)
936
939
  if (!l)
937
- o[s] = { x: i, y: n };
940
+ s[n] = { x: i, y: o };
938
941
  else {
939
942
  const { x: r, y: a } = l;
940
- r != null && (i = r), a != null && (n = a), o[s] = {
943
+ r != null && (i = r), a != null && (o = a), s[n] = {
941
944
  x: r || i,
942
- y: a || n
945
+ y: a || o
943
946
  };
944
947
  }
945
- return o;
946
- }, Bn = (e) => [
948
+ return s;
949
+ }, Wo = (e) => [
947
950
  {
948
951
  name: "offset",
949
952
  options: {
@@ -956,28 +959,28 @@ const Xn = /* @__PURE__ */ new Set([
956
959
  boundary: e
957
960
  }
958
961
  }
959
- ], Wn = (e, t) => {
962
+ ], Fo = (e, t) => {
960
963
  const i = document.createElement("div");
961
- 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 = Rn(e) : i.textContent = e, document.body.appendChild(i), i;
962
- }, Fn = (e) => {
964
+ 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 = Mo(e) : i.textContent = e, document.body.appendChild(i), i;
965
+ }, No = (e) => {
963
966
  const t = [...e];
964
- return t.forEach((i, n) => {
965
- const o = { ...Zn(i.positions) };
966
- t[n].initialPositions = o, t[n].positions = o;
967
+ return t.forEach((i, o) => {
968
+ const s = { ...Bo(i.positions) };
969
+ t[o].initialPositions = s, t[o].positions = s;
967
970
  }), t;
968
- }, Nn = ({
971
+ }, Vo = ({
969
972
  newWidth: e,
970
973
  newHeight: t,
971
974
  initialContainerSize: i,
972
- imageAspectRatio: n,
973
- hotspotsConfig: o
975
+ imageAspectRatio: o,
976
+ hotspotsConfig: s
974
977
  }) => {
975
- const [s, l] = i;
978
+ const [n, l] = i;
976
979
  let r = e, a = t, c = 0, h = 0;
977
980
  const p = e / t;
978
- n > p ? (a = e / n, h = (t - a) / 2) : (r = t * n, c = (e - r) / 2);
979
- const u = r / s, I = a / l;
980
- return o.map((g) => {
981
+ o > p ? (a = e / o, h = (t - a) / 2) : (r = t * o, c = (e - r) / 2);
982
+ const u = r / n, I = a / l;
983
+ return s.map((g) => {
981
984
  const v = {};
982
985
  return Object.entries(g.initialPositions).forEach(([m, b]) => {
983
986
  v[m] = {
@@ -987,11 +990,11 @@ const Xn = /* @__PURE__ */ new Set([
987
990
  }), { ...g, positions: v };
988
991
  });
989
992
  };
990
- var H = "top", F = "bottom", N = "right", D = "left", ee = "auto", kt = [H, F, N, D], ut = "start", At = "end", Vn = "clippingParents", Ne = "viewport", Ct = "popper", jn = "reference", ke = /* @__PURE__ */ kt.reduce(function(e, t) {
991
- return e.concat([t + "-" + ut, t + "-" + At]);
992
- }, []), Ve = /* @__PURE__ */ [].concat(kt, [ee]).reduce(function(e, t) {
993
- return e.concat([t, t + "-" + ut, t + "-" + At]);
994
- }, []), $n = "beforeRead", zn = "read", Gn = "afterRead", Un = "beforeMain", Kn = "main", _n = "afterMain", Jn = "beforeWrite", qn = "write", Qn = "afterWrite", to = [$n, zn, Gn, Un, Kn, _n, Jn, qn, Qn];
993
+ var H = "top", F = "bottom", N = "right", D = "left", ee = "auto", Tt = [H, F, N, D], ut = "start", Lt = "end", jo = "clippingParents", Ne = "viewport", Ot = "popper", $o = "reference", ke = /* @__PURE__ */ Tt.reduce(function(e, t) {
994
+ return e.concat([t + "-" + ut, t + "-" + Lt]);
995
+ }, []), Ve = /* @__PURE__ */ [].concat(Tt, [ee]).reduce(function(e, t) {
996
+ return e.concat([t, t + "-" + ut, t + "-" + Lt]);
997
+ }, []), zo = "beforeRead", Go = "read", Uo = "afterRead", Ko = "beforeMain", _o = "main", Jo = "afterMain", qo = "beforeWrite", Qo = "write", ts = "afterWrite", es = [zo, Go, Uo, Ko, _o, Jo, qo, Qo, ts];
995
998
  function $(e) {
996
999
  return e ? (e.nodeName || "").toLowerCase() : null;
997
1000
  }
@@ -1004,7 +1007,7 @@ function B(e) {
1004
1007
  }
1005
1008
  return e;
1006
1009
  }
1007
- function st(e) {
1010
+ function nt(e) {
1008
1011
  var t = B(e).Element;
1009
1012
  return e instanceof t || e instanceof Element;
1010
1013
  }
@@ -1018,17 +1021,17 @@ function ie(e) {
1018
1021
  var t = B(e).ShadowRoot;
1019
1022
  return e instanceof t || e instanceof ShadowRoot;
1020
1023
  }
1021
- function eo(e) {
1024
+ function is(e) {
1022
1025
  var t = e.state;
1023
1026
  Object.keys(t.elements).forEach(function(i) {
1024
- var n = t.styles[i] || {}, o = t.attributes[i] || {}, s = t.elements[i];
1025
- !W(s) || !$(s) || (Object.assign(s.style, n), Object.keys(o).forEach(function(l) {
1026
- var r = o[l];
1027
- r === !1 ? s.removeAttribute(l) : s.setAttribute(l, r === !0 ? "" : r);
1027
+ var o = t.styles[i] || {}, s = t.attributes[i] || {}, n = t.elements[i];
1028
+ !W(n) || !$(n) || (Object.assign(n.style, o), Object.keys(s).forEach(function(l) {
1029
+ var r = s[l];
1030
+ r === !1 ? n.removeAttribute(l) : n.setAttribute(l, r === !0 ? "" : r);
1028
1031
  }));
1029
1032
  });
1030
1033
  }
1031
- function io(e) {
1034
+ function os(e) {
1032
1035
  var t = e.state, i = {
1033
1036
  popper: {
1034
1037
  position: t.options.strategy,
@@ -1042,28 +1045,28 @@ function io(e) {
1042
1045
  reference: {}
1043
1046
  };
1044
1047
  return Object.assign(t.elements.popper.style, i.popper), t.styles = i, t.elements.arrow && Object.assign(t.elements.arrow.style, i.arrow), function() {
1045
- Object.keys(t.elements).forEach(function(n) {
1046
- var o = t.elements[n], s = t.attributes[n] || {}, l = Object.keys(t.styles.hasOwnProperty(n) ? t.styles[n] : i[n]), r = l.reduce(function(a, c) {
1048
+ Object.keys(t.elements).forEach(function(o) {
1049
+ var s = t.elements[o], n = t.attributes[o] || {}, l = Object.keys(t.styles.hasOwnProperty(o) ? t.styles[o] : i[o]), r = l.reduce(function(a, c) {
1047
1050
  return a[c] = "", a;
1048
1051
  }, {});
1049
- !W(o) || !$(o) || (Object.assign(o.style, r), Object.keys(s).forEach(function(a) {
1050
- o.removeAttribute(a);
1052
+ !W(s) || !$(s) || (Object.assign(s.style, r), Object.keys(n).forEach(function(a) {
1053
+ s.removeAttribute(a);
1051
1054
  }));
1052
1055
  });
1053
1056
  };
1054
1057
  }
1055
- const no = {
1058
+ const ss = {
1056
1059
  name: "applyStyles",
1057
1060
  enabled: !0,
1058
1061
  phase: "write",
1059
- fn: eo,
1060
- effect: io,
1062
+ fn: is,
1063
+ effect: os,
1061
1064
  requires: ["computeStyles"]
1062
1065
  };
1063
1066
  function j(e) {
1064
1067
  return e.split("-")[0];
1065
1068
  }
1066
- var ot = Math.max, Wt = Math.min, pt = Math.round;
1069
+ var st = Math.max, Wt = Math.min, pt = Math.round;
1067
1070
  function Qt() {
1068
1071
  var e = navigator.userAgentData;
1069
1072
  return e != null && e.brands && Array.isArray(e.brands) ? e.brands.map(function(t) {
@@ -1075,9 +1078,9 @@ function je() {
1075
1078
  }
1076
1079
  function ft(e, t, i) {
1077
1080
  t === void 0 && (t = !1), i === void 0 && (i = !1);
1078
- var n = e.getBoundingClientRect(), o = 1, s = 1;
1079
- t && W(e) && (o = e.offsetWidth > 0 && pt(n.width) / e.offsetWidth || 1, s = e.offsetHeight > 0 && pt(n.height) / e.offsetHeight || 1);
1080
- var l = st(e) ? B(e) : window, r = l.visualViewport, a = !je() && i, c = (n.left + (a && r ? r.offsetLeft : 0)) / o, h = (n.top + (a && r ? r.offsetTop : 0)) / s, p = n.width / o, f = n.height / s;
1081
+ var o = e.getBoundingClientRect(), s = 1, n = 1;
1082
+ t && W(e) && (s = e.offsetWidth > 0 && pt(o.width) / e.offsetWidth || 1, n = e.offsetHeight > 0 && pt(o.height) / e.offsetHeight || 1);
1083
+ var l = nt(e) ? B(e) : window, r = l.visualViewport, a = !je() && i, c = (o.left + (a && r ? r.offsetLeft : 0)) / s, h = (o.top + (a && r ? r.offsetTop : 0)) / n, p = o.width / s, f = o.height / n;
1081
1084
  return {
1082
1085
  width: p,
1083
1086
  height: f,
@@ -1089,13 +1092,13 @@ function ft(e, t, i) {
1089
1092
  y: h
1090
1093
  };
1091
1094
  }
1092
- function ne(e) {
1093
- var t = ft(e), i = e.offsetWidth, n = e.offsetHeight;
1094
- return Math.abs(t.width - i) <= 1 && (i = t.width), Math.abs(t.height - n) <= 1 && (n = t.height), {
1095
+ function oe(e) {
1096
+ var t = ft(e), i = e.offsetWidth, o = e.offsetHeight;
1097
+ return Math.abs(t.width - i) <= 1 && (i = t.width), Math.abs(t.height - o) <= 1 && (o = t.height), {
1095
1098
  x: e.offsetLeft,
1096
1099
  y: e.offsetTop,
1097
1100
  width: i,
1098
- height: n
1101
+ height: o
1099
1102
  };
1100
1103
  }
1101
1104
  function $e(e, t) {
@@ -1103,23 +1106,23 @@ function $e(e, t) {
1103
1106
  if (e.contains(t))
1104
1107
  return !0;
1105
1108
  if (i && ie(i)) {
1106
- var n = t;
1109
+ var o = t;
1107
1110
  do {
1108
- if (n && e.isSameNode(n))
1111
+ if (o && e.isSameNode(o))
1109
1112
  return !0;
1110
- n = n.parentNode || n.host;
1111
- } while (n);
1113
+ o = o.parentNode || o.host;
1114
+ } while (o);
1112
1115
  }
1113
1116
  return !1;
1114
1117
  }
1115
1118
  function J(e) {
1116
1119
  return B(e).getComputedStyle(e);
1117
1120
  }
1118
- function oo(e) {
1121
+ function ns(e) {
1119
1122
  return ["table", "td", "th"].indexOf($(e)) >= 0;
1120
1123
  }
1121
1124
  function Q(e) {
1122
- return ((st(e) ? e.ownerDocument : (
1125
+ return ((nt(e) ? e.ownerDocument : (
1123
1126
  // $FlowFixMe[prop-missing]
1124
1127
  e.document
1125
1128
  )) || window.document).documentElement;
@@ -1140,36 +1143,36 @@ function Te(e) {
1140
1143
  return !W(e) || // https://github.com/popperjs/popper-core/issues/837
1141
1144
  J(e).position === "fixed" ? null : e.offsetParent;
1142
1145
  }
1143
- function so(e) {
1146
+ function rs(e) {
1144
1147
  var t = /firefox/i.test(Qt()), i = /Trident/i.test(Qt());
1145
1148
  if (i && W(e)) {
1146
- var n = J(e);
1147
- if (n.position === "fixed")
1149
+ var o = J(e);
1150
+ if (o.position === "fixed")
1148
1151
  return null;
1149
1152
  }
1150
- var o = Nt(e);
1151
- for (ie(o) && (o = o.host); W(o) && ["html", "body"].indexOf($(o)) < 0; ) {
1152
- var s = J(o);
1153
- if (s.transform !== "none" || s.perspective !== "none" || s.contain === "paint" || ["transform", "perspective"].indexOf(s.willChange) !== -1 || t && s.willChange === "filter" || t && s.filter && s.filter !== "none")
1154
- return o;
1155
- o = o.parentNode;
1153
+ var s = Nt(e);
1154
+ for (ie(s) && (s = s.host); W(s) && ["html", "body"].indexOf($(s)) < 0; ) {
1155
+ var n = J(s);
1156
+ if (n.transform !== "none" || n.perspective !== "none" || n.contain === "paint" || ["transform", "perspective"].indexOf(n.willChange) !== -1 || t && n.willChange === "filter" || t && n.filter && n.filter !== "none")
1157
+ return s;
1158
+ s = s.parentNode;
1156
1159
  }
1157
1160
  return null;
1158
1161
  }
1159
- function Tt(e) {
1160
- for (var t = B(e), i = Te(e); i && oo(i) && J(i).position === "static"; )
1162
+ function Yt(e) {
1163
+ for (var t = B(e), i = Te(e); i && ns(i) && J(i).position === "static"; )
1161
1164
  i = Te(i);
1162
- return i && ($(i) === "html" || $(i) === "body" && J(i).position === "static") ? t : i || so(e) || t;
1165
+ return i && ($(i) === "html" || $(i) === "body" && J(i).position === "static") ? t : i || rs(e) || t;
1163
1166
  }
1164
- function oe(e) {
1167
+ function se(e) {
1165
1168
  return ["top", "bottom"].indexOf(e) >= 0 ? "x" : "y";
1166
1169
  }
1167
- function Et(e, t, i) {
1168
- return ot(e, Wt(t, i));
1170
+ function St(e, t, i) {
1171
+ return st(e, Wt(t, i));
1169
1172
  }
1170
- function ro(e, t, i) {
1171
- var n = Et(e, t, i);
1172
- return n > i ? i : n;
1173
+ function as(e, t, i) {
1174
+ var o = St(e, t, i);
1175
+ return o > i ? i : o;
1173
1176
  }
1174
1177
  function ze() {
1175
1178
  return {
@@ -1183,53 +1186,53 @@ function Ge(e) {
1183
1186
  return Object.assign({}, ze(), e);
1184
1187
  }
1185
1188
  function Ue(e, t) {
1186
- return t.reduce(function(i, n) {
1187
- return i[n] = e, i;
1189
+ return t.reduce(function(i, o) {
1190
+ return i[o] = e, i;
1188
1191
  }, {});
1189
1192
  }
1190
- var ao = function(t, i) {
1193
+ var ls = function(t, i) {
1191
1194
  return t = typeof t == "function" ? t(Object.assign({}, i.rects, {
1192
1195
  placement: i.placement
1193
- })) : t, Ge(typeof t != "number" ? t : Ue(t, kt));
1196
+ })) : t, Ge(typeof t != "number" ? t : Ue(t, Tt));
1194
1197
  };
1195
- function lo(e) {
1196
- var t, i = e.state, n = e.name, o = e.options, s = i.elements.arrow, l = i.modifiersData.popperOffsets, r = j(i.placement), a = oe(r), c = [D, N].indexOf(r) >= 0, h = c ? "height" : "width";
1197
- if (!(!s || !l)) {
1198
- var p = ao(o.padding, i), f = ne(s), u = a === "y" ? H : D, I = a === "y" ? F : N, g = i.rects.reference[h] + i.rects.reference[a] - l[a] - i.rects.popper[h], v = l[a] - i.rects.reference[a], m = Tt(s), b = m ? a === "y" ? m.clientHeight || 0 : m.clientWidth || 0 : 0, x = g / 2 - v / 2, w = p[u], C = b - f[h] - p[I], y = b / 2 - f[h] / 2 + x, O = Et(w, y, C), S = a;
1199
- i.modifiersData[n] = (t = {}, t[S] = O, t.centerOffset = O - y, t);
1198
+ function cs(e) {
1199
+ var t, i = e.state, o = e.name, s = e.options, n = i.elements.arrow, l = i.modifiersData.popperOffsets, r = j(i.placement), a = se(r), c = [D, N].indexOf(r) >= 0, h = c ? "height" : "width";
1200
+ if (!(!n || !l)) {
1201
+ var p = ls(s.padding, i), f = oe(n), u = a === "y" ? H : D, I = a === "y" ? F : N, g = i.rects.reference[h] + i.rects.reference[a] - l[a] - i.rects.popper[h], v = l[a] - i.rects.reference[a], m = Yt(n), b = m ? a === "y" ? m.clientHeight || 0 : m.clientWidth || 0 : 0, x = g / 2 - v / 2, w = p[u], C = b - f[h] - p[I], y = b / 2 - f[h] / 2 + x, O = St(w, y, C), S = a;
1202
+ i.modifiersData[o] = (t = {}, t[S] = O, t.centerOffset = O - y, t);
1200
1203
  }
1201
1204
  }
1202
- function co(e) {
1203
- var t = e.state, i = e.options, n = i.element, o = n === void 0 ? "[data-popper-arrow]" : n;
1204
- o != null && (typeof o == "string" && (o = t.elements.popper.querySelector(o), !o) || $e(t.elements.popper, o) && (t.elements.arrow = o));
1205
+ function hs(e) {
1206
+ var t = e.state, i = e.options, o = i.element, s = o === void 0 ? "[data-popper-arrow]" : o;
1207
+ s != null && (typeof s == "string" && (s = t.elements.popper.querySelector(s), !s) || $e(t.elements.popper, s) && (t.elements.arrow = s));
1205
1208
  }
1206
- const ho = {
1209
+ const ds = {
1207
1210
  name: "arrow",
1208
1211
  enabled: !0,
1209
1212
  phase: "main",
1210
- fn: lo,
1211
- effect: co,
1213
+ fn: cs,
1214
+ effect: hs,
1212
1215
  requires: ["popperOffsets"],
1213
1216
  requiresIfExists: ["preventOverflow"]
1214
1217
  };
1215
1218
  function mt(e) {
1216
1219
  return e.split("-")[1];
1217
1220
  }
1218
- var uo = {
1221
+ var us = {
1219
1222
  top: "auto",
1220
1223
  right: "auto",
1221
1224
  bottom: "auto",
1222
1225
  left: "auto"
1223
1226
  };
1224
- function po(e, t) {
1225
- var i = e.x, n = e.y, o = t.devicePixelRatio || 1;
1227
+ function ps(e, t) {
1228
+ var i = e.x, o = e.y, s = t.devicePixelRatio || 1;
1226
1229
  return {
1227
- x: pt(i * o) / o || 0,
1228
- y: pt(n * o) / o || 0
1230
+ x: pt(i * s) / s || 0,
1231
+ y: pt(o * s) / s || 0
1229
1232
  };
1230
1233
  }
1231
1234
  function Ye(e) {
1232
- var t, i = e.popper, n = e.popperRect, o = e.placement, s = e.variation, l = e.offsets, r = e.position, a = e.gpuAcceleration, c = e.adaptive, h = e.roundOffsets, p = e.isFixed, f = l.x, u = f === void 0 ? 0 : f, I = l.y, g = I === void 0 ? 0 : I, v = typeof h == "function" ? h({
1235
+ var t, i = e.popper, o = e.popperRect, s = e.placement, n = e.variation, l = e.offsets, r = e.position, a = e.gpuAcceleration, c = e.adaptive, h = e.roundOffsets, p = e.isFixed, f = l.x, u = f === void 0 ? 0 : f, I = l.y, g = I === void 0 ? 0 : I, v = typeof h == "function" ? h({
1233
1236
  x: u,
1234
1237
  y: g
1235
1238
  }) : {
@@ -1239,27 +1242,27 @@ function Ye(e) {
1239
1242
  u = v.x, g = v.y;
1240
1243
  var m = l.hasOwnProperty("x"), b = l.hasOwnProperty("y"), x = D, w = H, C = window;
1241
1244
  if (c) {
1242
- var y = Tt(i), O = "clientHeight", S = "clientWidth";
1243
- if (y === B(i) && (y = Q(i), J(y).position !== "static" && r === "absolute" && (O = "scrollHeight", S = "scrollWidth")), y = y, o === H || (o === D || o === N) && s === At) {
1245
+ var y = Yt(i), O = "clientHeight", S = "clientWidth";
1246
+ if (y === B(i) && (y = Q(i), J(y).position !== "static" && r === "absolute" && (O = "scrollHeight", S = "scrollWidth")), y = y, s === H || (s === D || s === N) && n === Lt) {
1244
1247
  w = F;
1245
1248
  var E = p && y === C && C.visualViewport ? C.visualViewport.height : (
1246
1249
  // $FlowFixMe[prop-missing]
1247
1250
  y[O]
1248
1251
  );
1249
- g -= E - n.height, g *= a ? 1 : -1;
1252
+ g -= E - o.height, g *= a ? 1 : -1;
1250
1253
  }
1251
- if (o === D || (o === H || o === F) && s === At) {
1254
+ if (s === D || (s === H || s === F) && n === Lt) {
1252
1255
  x = N;
1253
1256
  var A = p && y === C && C.visualViewport ? C.visualViewport.width : (
1254
1257
  // $FlowFixMe[prop-missing]
1255
1258
  y[S]
1256
1259
  );
1257
- u -= A - n.width, u *= a ? 1 : -1;
1260
+ u -= A - o.width, u *= a ? 1 : -1;
1258
1261
  }
1259
1262
  }
1260
- var L = Object.assign({
1263
+ var k = Object.assign({
1261
1264
  position: r
1262
- }, c && uo), R = h === !0 ? po({
1265
+ }, c && us), R = h === !0 ? ps({
1263
1266
  x: u,
1264
1267
  y: g
1265
1268
  }, B(i)) : {
@@ -1268,17 +1271,17 @@ function Ye(e) {
1268
1271
  };
1269
1272
  if (u = R.x, g = R.y, a) {
1270
1273
  var T;
1271
- return Object.assign({}, L, (T = {}, T[w] = b ? "0" : "", T[x] = m ? "0" : "", T.transform = (C.devicePixelRatio || 1) <= 1 ? "translate(" + u + "px, " + g + "px)" : "translate3d(" + u + "px, " + g + "px, 0)", T));
1274
+ return Object.assign({}, k, (T = {}, T[w] = b ? "0" : "", T[x] = m ? "0" : "", T.transform = (C.devicePixelRatio || 1) <= 1 ? "translate(" + u + "px, " + g + "px)" : "translate3d(" + u + "px, " + g + "px, 0)", T));
1272
1275
  }
1273
- return Object.assign({}, L, (t = {}, t[w] = b ? g + "px" : "", t[x] = m ? u + "px" : "", t.transform = "", t));
1276
+ return Object.assign({}, k, (t = {}, t[w] = b ? g + "px" : "", t[x] = m ? u + "px" : "", t.transform = "", t));
1274
1277
  }
1275
- function fo(e) {
1276
- var t = e.state, i = e.options, n = i.gpuAcceleration, o = n === void 0 ? !0 : n, s = i.adaptive, l = s === void 0 ? !0 : s, r = i.roundOffsets, a = r === void 0 ? !0 : r, c = {
1278
+ function fs(e) {
1279
+ 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, r = i.roundOffsets, a = r === void 0 ? !0 : r, c = {
1277
1280
  placement: j(t.placement),
1278
1281
  variation: mt(t.placement),
1279
1282
  popper: t.elements.popper,
1280
1283
  popperRect: t.rects.popper,
1281
- gpuAcceleration: o,
1284
+ gpuAcceleration: s,
1282
1285
  isFixed: t.options.strategy === "fixed"
1283
1286
  };
1284
1287
  t.modifiersData.popperOffsets != null && (t.styles.popper = Object.assign({}, t.styles.popper, Ye(Object.assign({}, c, {
@@ -1295,36 +1298,36 @@ function fo(e) {
1295
1298
  "data-popper-placement": t.placement
1296
1299
  });
1297
1300
  }
1298
- const mo = {
1301
+ const ms = {
1299
1302
  name: "computeStyles",
1300
1303
  enabled: !0,
1301
1304
  phase: "beforeWrite",
1302
- fn: fo,
1305
+ fn: fs,
1303
1306
  data: {}
1304
1307
  };
1305
1308
  var Dt = {
1306
1309
  passive: !0
1307
1310
  };
1308
- function vo(e) {
1309
- var t = e.state, i = e.instance, n = e.options, o = n.scroll, s = o === void 0 ? !0 : o, l = n.resize, r = l === void 0 ? !0 : l, a = B(t.elements.popper), c = [].concat(t.scrollParents.reference, t.scrollParents.popper);
1310
- return s && c.forEach(function(h) {
1311
+ function vs(e) {
1312
+ var t = e.state, i = e.instance, o = e.options, s = o.scroll, n = s === void 0 ? !0 : s, l = o.resize, r = l === void 0 ? !0 : l, a = B(t.elements.popper), c = [].concat(t.scrollParents.reference, t.scrollParents.popper);
1313
+ return n && c.forEach(function(h) {
1311
1314
  h.addEventListener("scroll", i.update, Dt);
1312
1315
  }), r && a.addEventListener("resize", i.update, Dt), function() {
1313
- s && c.forEach(function(h) {
1316
+ n && c.forEach(function(h) {
1314
1317
  h.removeEventListener("scroll", i.update, Dt);
1315
1318
  }), r && a.removeEventListener("resize", i.update, Dt);
1316
1319
  };
1317
1320
  }
1318
- const go = {
1321
+ const gs = {
1319
1322
  name: "eventListeners",
1320
1323
  enabled: !0,
1321
1324
  phase: "write",
1322
1325
  fn: function() {
1323
1326
  },
1324
- effect: vo,
1327
+ effect: vs,
1325
1328
  data: {}
1326
1329
  };
1327
- var yo = {
1330
+ var ys = {
1328
1331
  left: "right",
1329
1332
  right: "left",
1330
1333
  bottom: "top",
@@ -1332,65 +1335,65 @@ var yo = {
1332
1335
  };
1333
1336
  function Zt(e) {
1334
1337
  return e.replace(/left|right|bottom|top/g, function(t) {
1335
- return yo[t];
1338
+ return ys[t];
1336
1339
  });
1337
1340
  }
1338
- var bo = {
1341
+ var bs = {
1339
1342
  start: "end",
1340
1343
  end: "start"
1341
1344
  };
1342
1345
  function Xe(e) {
1343
1346
  return e.replace(/start|end/g, function(t) {
1344
- return bo[t];
1347
+ return bs[t];
1345
1348
  });
1346
1349
  }
1347
- function se(e) {
1348
- var t = B(e), i = t.pageXOffset, n = t.pageYOffset;
1350
+ function ne(e) {
1351
+ var t = B(e), i = t.pageXOffset, o = t.pageYOffset;
1349
1352
  return {
1350
1353
  scrollLeft: i,
1351
- scrollTop: n
1354
+ scrollTop: o
1352
1355
  };
1353
1356
  }
1354
1357
  function re(e) {
1355
- return ft(Q(e)).left + se(e).scrollLeft;
1358
+ return ft(Q(e)).left + ne(e).scrollLeft;
1356
1359
  }
1357
- function wo(e, t) {
1358
- var i = B(e), n = Q(e), o = i.visualViewport, s = n.clientWidth, l = n.clientHeight, r = 0, a = 0;
1359
- if (o) {
1360
- s = o.width, l = o.height;
1360
+ function ws(e, t) {
1361
+ var i = B(e), o = Q(e), s = i.visualViewport, n = o.clientWidth, l = o.clientHeight, r = 0, a = 0;
1362
+ if (s) {
1363
+ n = s.width, l = s.height;
1361
1364
  var c = je();
1362
- (c || !c && t === "fixed") && (r = o.offsetLeft, a = o.offsetTop);
1365
+ (c || !c && t === "fixed") && (r = s.offsetLeft, a = s.offsetTop);
1363
1366
  }
1364
1367
  return {
1365
- width: s,
1368
+ width: n,
1366
1369
  height: l,
1367
1370
  x: r + re(e),
1368
1371
  y: a
1369
1372
  };
1370
1373
  }
1371
- function Io(e) {
1372
- var t, i = Q(e), n = se(e), o = (t = e.ownerDocument) == null ? void 0 : t.body, s = ot(i.scrollWidth, i.clientWidth, o ? o.scrollWidth : 0, o ? o.clientWidth : 0), l = ot(i.scrollHeight, i.clientHeight, o ? o.scrollHeight : 0, o ? o.clientHeight : 0), r = -n.scrollLeft + re(e), a = -n.scrollTop;
1373
- return J(o || i).direction === "rtl" && (r += ot(i.clientWidth, o ? o.clientWidth : 0) - s), {
1374
- width: s,
1374
+ function Is(e) {
1375
+ var t, i = Q(e), o = ne(e), s = (t = e.ownerDocument) == null ? void 0 : t.body, n = st(i.scrollWidth, i.clientWidth, s ? s.scrollWidth : 0, s ? s.clientWidth : 0), l = st(i.scrollHeight, i.clientHeight, s ? s.scrollHeight : 0, s ? s.clientHeight : 0), r = -o.scrollLeft + re(e), a = -o.scrollTop;
1376
+ return J(s || i).direction === "rtl" && (r += st(i.clientWidth, s ? s.clientWidth : 0) - n), {
1377
+ width: n,
1375
1378
  height: l,
1376
1379
  x: r,
1377
1380
  y: a
1378
1381
  };
1379
1382
  }
1380
1383
  function ae(e) {
1381
- var t = J(e), i = t.overflow, n = t.overflowX, o = t.overflowY;
1382
- return /auto|scroll|overlay|hidden/.test(i + o + n);
1384
+ var t = J(e), i = t.overflow, o = t.overflowX, s = t.overflowY;
1385
+ return /auto|scroll|overlay|hidden/.test(i + s + o);
1383
1386
  }
1384
1387
  function Ke(e) {
1385
1388
  return ["html", "body", "#document"].indexOf($(e)) >= 0 ? e.ownerDocument.body : W(e) && ae(e) ? e : Ke(Nt(e));
1386
1389
  }
1387
- function St(e, t) {
1390
+ function At(e, t) {
1388
1391
  var i;
1389
1392
  t === void 0 && (t = []);
1390
- var n = Ke(e), o = n === ((i = e.ownerDocument) == null ? void 0 : i.body), s = B(n), l = o ? [s].concat(s.visualViewport || [], ae(n) ? n : []) : n, r = t.concat(l);
1391
- return o ? r : (
1393
+ var o = Ke(e), s = o === ((i = e.ownerDocument) == null ? void 0 : i.body), n = B(o), l = s ? [n].concat(n.visualViewport || [], ae(o) ? o : []) : o, r = t.concat(l);
1394
+ return s ? r : (
1392
1395
  // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
1393
- r.concat(St(Nt(l)))
1396
+ r.concat(At(Nt(l)))
1394
1397
  );
1395
1398
  }
1396
1399
  function te(e) {
@@ -1401,29 +1404,29 @@ function te(e) {
1401
1404
  bottom: e.y + e.height
1402
1405
  });
1403
1406
  }
1404
- function xo(e, t) {
1407
+ function xs(e, t) {
1405
1408
  var i = ft(e, !1, t === "fixed");
1406
1409
  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;
1407
1410
  }
1408
1411
  function Pe(e, t, i) {
1409
- return t === Ne ? te(wo(e, i)) : st(t) ? xo(t, i) : te(Io(Q(e)));
1412
+ return t === Ne ? te(ws(e, i)) : nt(t) ? xs(t, i) : te(Is(Q(e)));
1410
1413
  }
1411
- function Co(e) {
1412
- var t = St(Nt(e)), i = ["absolute", "fixed"].indexOf(J(e).position) >= 0, n = i && W(e) ? Tt(e) : e;
1413
- return st(n) ? t.filter(function(o) {
1414
- return st(o) && $e(o, n) && $(o) !== "body";
1414
+ function Cs(e) {
1415
+ var t = At(Nt(e)), i = ["absolute", "fixed"].indexOf(J(e).position) >= 0, o = i && W(e) ? Yt(e) : e;
1416
+ return nt(o) ? t.filter(function(s) {
1417
+ return nt(s) && $e(s, o) && $(s) !== "body";
1415
1418
  }) : [];
1416
1419
  }
1417
- function Oo(e, t, i, n) {
1418
- var o = t === "clippingParents" ? Co(e) : [].concat(t), s = [].concat(o, [i]), l = s[0], r = s.reduce(function(a, c) {
1419
- var h = Pe(e, c, n);
1420
- return a.top = ot(h.top, a.top), a.right = Wt(h.right, a.right), a.bottom = Wt(h.bottom, a.bottom), a.left = ot(h.left, a.left), a;
1421
- }, Pe(e, l, n));
1420
+ function Os(e, t, i, o) {
1421
+ var s = t === "clippingParents" ? Cs(e) : [].concat(t), n = [].concat(s, [i]), l = n[0], r = n.reduce(function(a, c) {
1422
+ var h = Pe(e, c, o);
1423
+ return a.top = st(h.top, a.top), a.right = Wt(h.right, a.right), a.bottom = Wt(h.bottom, a.bottom), a.left = st(h.left, a.left), a;
1424
+ }, Pe(e, l, o));
1422
1425
  return r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r;
1423
1426
  }
1424
1427
  function _e(e) {
1425
- var t = e.reference, i = e.element, n = e.placement, o = n ? j(n) : null, s = n ? mt(n) : null, l = t.x + t.width / 2 - i.width / 2, r = t.y + t.height / 2 - i.height / 2, a;
1426
- switch (o) {
1428
+ var t = e.reference, i = e.element, o = e.placement, s = o ? j(o) : null, n = o ? mt(o) : null, l = t.x + t.width / 2 - i.width / 2, r = t.y + t.height / 2 - i.height / 2, a;
1429
+ switch (s) {
1427
1430
  case H:
1428
1431
  a = {
1429
1432
  x: l,
@@ -1454,34 +1457,34 @@ function _e(e) {
1454
1457
  y: t.y
1455
1458
  };
1456
1459
  }
1457
- var c = o ? oe(o) : null;
1460
+ var c = s ? se(s) : null;
1458
1461
  if (c != null) {
1459
1462
  var h = c === "y" ? "height" : "width";
1460
- switch (s) {
1463
+ switch (n) {
1461
1464
  case ut:
1462
1465
  a[c] = a[c] - (t[h] / 2 - i[h] / 2);
1463
1466
  break;
1464
- case At:
1467
+ case Lt:
1465
1468
  a[c] = a[c] + (t[h] / 2 - i[h] / 2);
1466
1469
  break;
1467
1470
  }
1468
1471
  }
1469
1472
  return a;
1470
1473
  }
1471
- function Lt(e, t) {
1474
+ function kt(e, t) {
1472
1475
  t === void 0 && (t = {});
1473
- var i = t, n = i.placement, o = n === void 0 ? e.placement : n, s = i.strategy, l = s === void 0 ? e.strategy : s, r = i.boundary, a = r === void 0 ? Vn : r, c = i.rootBoundary, h = c === void 0 ? Ne : c, p = i.elementContext, f = p === void 0 ? Ct : p, u = i.altBoundary, I = u === void 0 ? !1 : u, g = i.padding, v = g === void 0 ? 0 : g, m = Ge(typeof v != "number" ? v : Ue(v, kt)), b = f === Ct ? jn : Ct, x = e.rects.popper, w = e.elements[I ? b : f], C = Oo(st(w) ? w : w.contextElement || Q(e.elements.popper), a, h, l), y = ft(e.elements.reference), O = _e({
1476
+ var i = t, o = i.placement, s = o === void 0 ? e.placement : o, n = i.strategy, l = n === void 0 ? e.strategy : n, r = i.boundary, a = r === void 0 ? jo : r, c = i.rootBoundary, h = c === void 0 ? Ne : c, p = i.elementContext, f = p === void 0 ? Ot : p, u = i.altBoundary, I = u === void 0 ? !1 : u, g = i.padding, v = g === void 0 ? 0 : g, m = Ge(typeof v != "number" ? v : Ue(v, Tt)), b = f === Ot ? $o : Ot, x = e.rects.popper, w = e.elements[I ? b : f], C = Os(nt(w) ? w : w.contextElement || Q(e.elements.popper), a, h, l), y = ft(e.elements.reference), O = _e({
1474
1477
  reference: y,
1475
1478
  element: x,
1476
- placement: o
1477
- }), S = te(Object.assign({}, x, O)), E = f === Ct ? S : y, A = {
1479
+ placement: s
1480
+ }), S = te(Object.assign({}, x, O)), E = f === Ot ? S : y, A = {
1478
1481
  top: C.top - E.top + m.top,
1479
1482
  bottom: E.bottom - C.bottom + m.bottom,
1480
1483
  left: C.left - E.left + m.left,
1481
1484
  right: E.right - C.right + m.right
1482
- }, L = e.modifiersData.offset;
1483
- if (f === Ct && L) {
1484
- var R = L[o];
1485
+ }, k = e.modifiersData.offset;
1486
+ if (f === Ot && k) {
1487
+ var R = k[s];
1485
1488
  Object.keys(A).forEach(function(T) {
1486
1489
  var z = [N, F].indexOf(T) >= 0 ? 1 : -1, G = [H, F].indexOf(T) >= 0 ? "y" : "x";
1487
1490
  A[T] += R[G] * z;
@@ -1489,19 +1492,19 @@ function Lt(e, t) {
1489
1492
  }
1490
1493
  return A;
1491
1494
  }
1492
- function Eo(e, t) {
1495
+ function Es(e, t) {
1493
1496
  t === void 0 && (t = {});
1494
- var i = t, n = i.placement, o = i.boundary, s = i.rootBoundary, l = i.padding, r = i.flipVariations, a = i.allowedAutoPlacements, c = a === void 0 ? Ve : a, h = mt(n), p = h ? r ? ke : ke.filter(function(I) {
1497
+ var i = t, o = i.placement, s = i.boundary, n = i.rootBoundary, l = i.padding, r = i.flipVariations, a = i.allowedAutoPlacements, c = a === void 0 ? Ve : a, h = mt(o), p = h ? r ? ke : ke.filter(function(I) {
1495
1498
  return mt(I) === h;
1496
- }) : kt, f = p.filter(function(I) {
1499
+ }) : Tt, f = p.filter(function(I) {
1497
1500
  return c.indexOf(I) >= 0;
1498
1501
  });
1499
1502
  f.length === 0 && (f = p);
1500
1503
  var u = f.reduce(function(I, g) {
1501
- return I[g] = Lt(e, {
1504
+ return I[g] = kt(e, {
1502
1505
  placement: g,
1503
- boundary: o,
1504
- rootBoundary: s,
1506
+ boundary: s,
1507
+ rootBoundary: n,
1505
1508
  padding: l
1506
1509
  })[j(g)], I;
1507
1510
  }, {});
@@ -1509,17 +1512,17 @@ function Eo(e, t) {
1509
1512
  return u[I] - u[g];
1510
1513
  });
1511
1514
  }
1512
- function So(e) {
1515
+ function Ss(e) {
1513
1516
  if (j(e) === ee)
1514
1517
  return [];
1515
1518
  var t = Zt(e);
1516
1519
  return [Xe(e), t, Xe(t)];
1517
1520
  }
1518
- function Ao(e) {
1519
- var t = e.state, i = e.options, n = e.name;
1520
- if (!t.modifiersData[n]._skip) {
1521
- for (var o = i.mainAxis, s = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !0 : l, a = i.fallbackPlacements, c = i.padding, h = i.boundary, p = i.rootBoundary, f = i.altBoundary, u = i.flipVariations, I = u === void 0 ? !0 : u, g = i.allowedAutoPlacements, v = t.options.placement, m = j(v), b = m === v, x = a || (b || !I ? [Zt(v)] : So(v)), w = [v].concat(x).reduce(function(q, V) {
1522
- return q.concat(j(V) === ee ? Eo(t, {
1521
+ function As(e) {
1522
+ var t = e.state, i = e.options, o = e.name;
1523
+ if (!t.modifiersData[o]._skip) {
1524
+ for (var s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, r = l === void 0 ? !0 : l, a = i.fallbackPlacements, c = i.padding, h = i.boundary, p = i.rootBoundary, f = i.altBoundary, u = i.flipVariations, I = u === void 0 ? !0 : u, g = i.allowedAutoPlacements, v = t.options.placement, m = j(v), b = m === v, x = a || (b || !I ? [Zt(v)] : Ss(v)), w = [v].concat(x).reduce(function(q, V) {
1525
+ return q.concat(j(V) === ee ? Es(t, {
1523
1526
  placement: V,
1524
1527
  boundary: h,
1525
1528
  rootBoundary: p,
@@ -1528,8 +1531,8 @@ function Ao(e) {
1528
1531
  allowedAutoPlacements: g
1529
1532
  }) : V);
1530
1533
  }, []), C = t.rects.reference, y = t.rects.popper, O = /* @__PURE__ */ new Map(), S = !0, E = w[0], A = 0; A < w.length; A++) {
1531
- var L = w[A], R = j(L), T = mt(L) === ut, z = [H, F].indexOf(R) >= 0, G = z ? "width" : "height", Y = Lt(t, {
1532
- placement: L,
1534
+ var k = w[A], R = j(k), T = mt(k) === ut, z = [H, F].indexOf(R) >= 0, G = z ? "width" : "height", Y = kt(t, {
1535
+ placement: k,
1533
1536
  boundary: h,
1534
1537
  rootBoundary: p,
1535
1538
  altBoundary: f,
@@ -1537,21 +1540,21 @@ function Ao(e) {
1537
1540
  }), Z = z ? T ? N : D : T ? F : H;
1538
1541
  C[G] > y[G] && (Z = Zt(Z));
1539
1542
  var rt = Zt(Z), U = [];
1540
- if (s && U.push(Y[R] <= 0), r && U.push(Y[Z] <= 0, Y[rt] <= 0), U.every(function(q) {
1543
+ if (n && U.push(Y[R] <= 0), r && U.push(Y[Z] <= 0, Y[rt] <= 0), U.every(function(q) {
1541
1544
  return q;
1542
1545
  })) {
1543
- E = L, S = !1;
1546
+ E = k, S = !1;
1544
1547
  break;
1545
1548
  }
1546
- O.set(L, U);
1549
+ O.set(k, U);
1547
1550
  }
1548
1551
  if (S)
1549
1552
  for (var at = I ? 3 : 1, vt = function(V) {
1550
1553
  var et = w.find(function(it) {
1551
1554
  var K = O.get(it);
1552
1555
  if (K)
1553
- return K.slice(0, V).every(function(gt) {
1554
- return gt;
1556
+ return K.slice(0, V).every(function(ct) {
1557
+ return ct;
1555
1558
  });
1556
1559
  });
1557
1560
  if (et)
@@ -1560,14 +1563,14 @@ function Ao(e) {
1560
1563
  var lt = vt(tt);
1561
1564
  if (lt === "break") break;
1562
1565
  }
1563
- t.placement !== E && (t.modifiersData[n]._skip = !0, t.placement = E, t.reset = !0);
1566
+ t.placement !== E && (t.modifiersData[o]._skip = !0, t.placement = E, t.reset = !0);
1564
1567
  }
1565
1568
  }
1566
- const Lo = {
1569
+ const Ls = {
1567
1570
  name: "flip",
1568
1571
  enabled: !0,
1569
1572
  phase: "main",
1570
- fn: Ao,
1573
+ fn: As,
1571
1574
  requiresIfExists: ["offset"],
1572
1575
  data: {
1573
1576
  _skip: !1
@@ -1589,12 +1592,12 @@ function Me(e) {
1589
1592
  return e[t] >= 0;
1590
1593
  });
1591
1594
  }
1592
- function ko(e) {
1593
- var t = e.state, i = e.name, n = t.rects.reference, o = t.rects.popper, s = t.modifiersData.preventOverflow, l = Lt(t, {
1595
+ function ks(e) {
1596
+ var t = e.state, i = e.name, o = t.rects.reference, s = t.rects.popper, n = t.modifiersData.preventOverflow, l = kt(t, {
1594
1597
  elementContext: "reference"
1595
- }), r = Lt(t, {
1598
+ }), r = kt(t, {
1596
1599
  altBoundary: !0
1597
- }), a = Re(l, n), c = Re(r, o, s), h = Me(a), p = Me(c);
1600
+ }), a = Re(l, o), c = Re(r, s, n), h = Me(a), p = Me(c);
1598
1601
  t.modifiersData[i] = {
1599
1602
  referenceClippingOffsets: a,
1600
1603
  popperEscapeOffsets: c,
@@ -1605,18 +1608,18 @@ function ko(e) {
1605
1608
  "data-popper-escaped": p
1606
1609
  });
1607
1610
  }
1608
- const To = {
1611
+ const Ts = {
1609
1612
  name: "hide",
1610
1613
  enabled: !0,
1611
1614
  phase: "main",
1612
1615
  requiresIfExists: ["preventOverflow"],
1613
- fn: ko
1616
+ fn: ks
1614
1617
  };
1615
- function Yo(e, t, i) {
1616
- var n = j(e), o = [D, H].indexOf(n) >= 0 ? -1 : 1, s = typeof i == "function" ? i(Object.assign({}, t, {
1618
+ function Ys(e, t, i) {
1619
+ var o = j(e), s = [D, H].indexOf(o) >= 0 ? -1 : 1, n = typeof i == "function" ? i(Object.assign({}, t, {
1617
1620
  placement: e
1618
- })) : i, l = s[0], r = s[1];
1619
- return l = l || 0, r = (r || 0) * o, [D, N].indexOf(n) >= 0 ? {
1621
+ })) : i, l = n[0], r = n[1];
1622
+ return l = l || 0, r = (r || 0) * s, [D, N].indexOf(o) >= 0 ? {
1620
1623
  x: r,
1621
1624
  y: l
1622
1625
  } : {
@@ -1624,20 +1627,20 @@ function Yo(e, t, i) {
1624
1627
  y: r
1625
1628
  };
1626
1629
  }
1627
- function Xo(e) {
1628
- var t = e.state, i = e.options, n = e.name, o = i.offset, s = o === void 0 ? [0, 0] : o, l = Ve.reduce(function(h, p) {
1629
- return h[p] = Yo(p, t.rects, s), h;
1630
+ function Xs(e) {
1631
+ var t = e.state, i = e.options, o = e.name, s = i.offset, n = s === void 0 ? [0, 0] : s, l = Ve.reduce(function(h, p) {
1632
+ return h[p] = Ys(p, t.rects, n), h;
1630
1633
  }, {}), r = l[t.placement], a = r.x, c = r.y;
1631
- t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a, t.modifiersData.popperOffsets.y += c), t.modifiersData[n] = l;
1634
+ t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a, t.modifiersData.popperOffsets.y += c), t.modifiersData[o] = l;
1632
1635
  }
1633
- const Po = {
1636
+ const Ps = {
1634
1637
  name: "offset",
1635
1638
  enabled: !0,
1636
1639
  phase: "main",
1637
1640
  requires: ["popperOffsets"],
1638
- fn: Xo
1641
+ fn: Xs
1639
1642
  };
1640
- function Ro(e) {
1643
+ function Rs(e) {
1641
1644
  var t = e.state, i = e.name;
1642
1645
  t.modifiersData[i] = _e({
1643
1646
  reference: t.rects.reference,
@@ -1645,23 +1648,23 @@ function Ro(e) {
1645
1648
  placement: t.placement
1646
1649
  });
1647
1650
  }
1648
- const Mo = {
1651
+ const Ms = {
1649
1652
  name: "popperOffsets",
1650
1653
  enabled: !0,
1651
1654
  phase: "read",
1652
- fn: Ro,
1655
+ fn: Rs,
1653
1656
  data: {}
1654
1657
  };
1655
- function Ho(e) {
1658
+ function Hs(e) {
1656
1659
  return e === "x" ? "y" : "x";
1657
1660
  }
1658
- function Do(e) {
1659
- var t = e.state, i = e.options, n = e.name, o = i.mainAxis, s = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !1 : l, a = i.boundary, c = i.rootBoundary, h = i.altBoundary, p = i.padding, f = i.tether, u = f === void 0 ? !0 : f, I = i.tetherOffset, g = I === void 0 ? 0 : I, v = Lt(t, {
1661
+ function Ds(e) {
1662
+ var t = e.state, i = e.options, o = e.name, s = i.mainAxis, n = s === void 0 ? !0 : s, l = i.altAxis, r = l === void 0 ? !1 : l, a = i.boundary, c = i.rootBoundary, h = i.altBoundary, p = i.padding, f = i.tether, u = f === void 0 ? !0 : f, I = i.tetherOffset, g = I === void 0 ? 0 : I, v = kt(t, {
1660
1663
  boundary: a,
1661
1664
  rootBoundary: c,
1662
1665
  padding: p,
1663
1666
  altBoundary: h
1664
- }), m = j(t.placement), b = mt(t.placement), x = !b, w = oe(m), C = Ho(w), y = t.modifiersData.popperOffsets, O = t.rects.reference, S = t.rects.popper, E = typeof g == "function" ? g(Object.assign({}, t.rects, {
1667
+ }), m = j(t.placement), b = mt(t.placement), x = !b, w = se(m), C = Hs(w), y = t.modifiersData.popperOffsets, O = t.rects.reference, S = t.rects.popper, E = typeof g == "function" ? g(Object.assign({}, t.rects, {
1665
1668
  placement: t.placement
1666
1669
  })) : g, A = typeof E == "number" ? {
1667
1670
  mainAxis: E,
@@ -1669,90 +1672,90 @@ function Do(e) {
1669
1672
  } : Object.assign({
1670
1673
  mainAxis: 0,
1671
1674
  altAxis: 0
1672
- }, E), L = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, R = {
1675
+ }, E), k = t.modifiersData.offset ? t.modifiersData.offset[t.placement] : null, R = {
1673
1676
  x: 0,
1674
1677
  y: 0
1675
1678
  };
1676
1679
  if (y) {
1677
- if (s) {
1678
- var T, z = w === "y" ? H : D, G = w === "y" ? F : N, Y = w === "y" ? "height" : "width", Z = y[w], rt = Z + v[z], U = Z - v[G], at = u ? -S[Y] / 2 : 0, vt = b === ut ? O[Y] : S[Y], tt = b === ut ? -S[Y] : -O[Y], lt = t.elements.arrow, q = u && lt ? ne(lt) : {
1680
+ if (n) {
1681
+ var T, z = w === "y" ? H : D, G = w === "y" ? F : N, Y = w === "y" ? "height" : "width", Z = y[w], rt = Z + v[z], U = Z - v[G], at = u ? -S[Y] / 2 : 0, vt = b === ut ? O[Y] : S[Y], tt = b === ut ? -S[Y] : -O[Y], lt = t.elements.arrow, q = u && lt ? oe(lt) : {
1679
1682
  width: 0,
1680
1683
  height: 0
1681
- }, V = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : ze(), et = V[z], it = V[G], K = Et(0, O[Y], q[Y]), gt = x ? O[Y] / 2 - at - K - et - A.mainAxis : vt - K - et - A.mainAxis, Vt = x ? -O[Y] / 2 + at + K + it + A.mainAxis : tt + K + it + A.mainAxis, yt = t.elements.arrow && Tt(t.elements.arrow), jt = yt ? w === "y" ? yt.clientTop || 0 : yt.clientLeft || 0 : 0, Yt = (T = L == null ? void 0 : L[w]) != null ? T : 0, $t = Z + gt - Yt - jt, zt = Z + Vt - Yt, Xt = Et(u ? Wt(rt, $t) : rt, Z, u ? ot(U, zt) : U);
1682
- y[w] = Xt, R[w] = Xt - Z;
1684
+ }, V = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : ze(), et = V[z], it = V[G], K = St(0, O[Y], q[Y]), ct = x ? O[Y] / 2 - at - K - et - A.mainAxis : vt - K - et - A.mainAxis, Vt = x ? -O[Y] / 2 + at + K + it + A.mainAxis : tt + K + it + A.mainAxis, gt = t.elements.arrow && Yt(t.elements.arrow), jt = gt ? w === "y" ? gt.clientTop || 0 : gt.clientLeft || 0 : 0, Xt = (T = k == null ? void 0 : k[w]) != null ? T : 0, $t = Z + ct - Xt - jt, zt = Z + Vt - Xt, Pt = St(u ? Wt(rt, $t) : rt, Z, u ? st(U, zt) : U);
1685
+ y[w] = Pt, R[w] = Pt - Z;
1683
1686
  }
1684
1687
  if (r) {
1685
- var Pt, Gt = w === "x" ? H : D, Ut = w === "x" ? F : N, _ = y[C], nt = C === "y" ? "height" : "width", ct = _ + v[Gt], ht = _ - v[Ut], dt = [H, D].indexOf(m) !== -1, bt = (Pt = L == null ? void 0 : L[C]) != null ? Pt : 0, wt = dt ? ct : _ - O[nt] - S[nt] - bt + A.altAxis, It = dt ? _ + O[nt] + S[nt] - bt - A.altAxis : ht, Rt = u && dt ? ro(wt, _, It) : Et(u ? wt : ct, _, u ? It : ht);
1686
- y[C] = Rt, R[C] = Rt - _;
1688
+ var Rt, Gt = w === "x" ? H : D, Ut = w === "x" ? F : N, _ = y[C], ht = C === "y" ? "height" : "width", yt = _ + v[Gt], dt = _ - v[Ut], ot = [H, D].indexOf(m) !== -1, bt = (Rt = k == null ? void 0 : k[C]) != null ? Rt : 0, wt = ot ? yt : _ - O[ht] - S[ht] - bt + A.altAxis, It = ot ? _ + O[ht] + S[ht] - bt - A.altAxis : dt, xt = u && ot ? as(wt, _, It) : St(u ? wt : yt, _, u ? It : dt);
1689
+ y[C] = xt, R[C] = xt - _;
1687
1690
  }
1688
- t.modifiersData[n] = R;
1691
+ t.modifiersData[o] = R;
1689
1692
  }
1690
1693
  }
1691
- const Zo = {
1694
+ const Zs = {
1692
1695
  name: "preventOverflow",
1693
1696
  enabled: !0,
1694
1697
  phase: "main",
1695
- fn: Do,
1698
+ fn: Ds,
1696
1699
  requiresIfExists: ["offset"]
1697
1700
  };
1698
- function Bo(e) {
1701
+ function Bs(e) {
1699
1702
  return {
1700
1703
  scrollLeft: e.scrollLeft,
1701
1704
  scrollTop: e.scrollTop
1702
1705
  };
1703
1706
  }
1704
- function Wo(e) {
1705
- return e === B(e) || !W(e) ? se(e) : Bo(e);
1707
+ function Ws(e) {
1708
+ return e === B(e) || !W(e) ? ne(e) : Bs(e);
1706
1709
  }
1707
- function Fo(e) {
1708
- var t = e.getBoundingClientRect(), i = pt(t.width) / e.offsetWidth || 1, n = pt(t.height) / e.offsetHeight || 1;
1709
- return i !== 1 || n !== 1;
1710
+ function Fs(e) {
1711
+ var t = e.getBoundingClientRect(), i = pt(t.width) / e.offsetWidth || 1, o = pt(t.height) / e.offsetHeight || 1;
1712
+ return i !== 1 || o !== 1;
1710
1713
  }
1711
- function No(e, t, i) {
1714
+ function Ns(e, t, i) {
1712
1715
  i === void 0 && (i = !1);
1713
- var n = W(t), o = W(t) && Fo(t), s = Q(t), l = ft(e, o, i), r = {
1716
+ var o = W(t), s = W(t) && Fs(t), n = Q(t), l = ft(e, s, i), r = {
1714
1717
  scrollLeft: 0,
1715
1718
  scrollTop: 0
1716
1719
  }, a = {
1717
1720
  x: 0,
1718
1721
  y: 0
1719
1722
  };
1720
- return (n || !n && !i) && (($(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
1721
- ae(s)) && (r = Wo(t)), W(t) ? (a = ft(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : s && (a.x = re(s))), {
1723
+ return (o || !o && !i) && (($(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
1724
+ ae(n)) && (r = Ws(t)), W(t) ? (a = ft(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : n && (a.x = re(n))), {
1722
1725
  x: l.left + r.scrollLeft - a.x,
1723
1726
  y: l.top + r.scrollTop - a.y,
1724
1727
  width: l.width,
1725
1728
  height: l.height
1726
1729
  };
1727
1730
  }
1728
- function Vo(e) {
1729
- var t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set(), n = [];
1730
- e.forEach(function(s) {
1731
- t.set(s.name, s);
1731
+ function Vs(e) {
1732
+ var t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set(), o = [];
1733
+ e.forEach(function(n) {
1734
+ t.set(n.name, n);
1732
1735
  });
1733
- function o(s) {
1734
- i.add(s.name);
1735
- var l = [].concat(s.requires || [], s.requiresIfExists || []);
1736
+ function s(n) {
1737
+ i.add(n.name);
1738
+ var l = [].concat(n.requires || [], n.requiresIfExists || []);
1736
1739
  l.forEach(function(r) {
1737
1740
  if (!i.has(r)) {
1738
1741
  var a = t.get(r);
1739
- a && o(a);
1742
+ a && s(a);
1740
1743
  }
1741
- }), n.push(s);
1744
+ }), o.push(n);
1742
1745
  }
1743
- return e.forEach(function(s) {
1744
- i.has(s.name) || o(s);
1745
- }), n;
1746
+ return e.forEach(function(n) {
1747
+ i.has(n.name) || s(n);
1748
+ }), o;
1746
1749
  }
1747
- function jo(e) {
1748
- var t = Vo(e);
1749
- return to.reduce(function(i, n) {
1750
- return i.concat(t.filter(function(o) {
1751
- return o.phase === n;
1750
+ function js(e) {
1751
+ var t = Vs(e);
1752
+ return es.reduce(function(i, o) {
1753
+ return i.concat(t.filter(function(s) {
1754
+ return s.phase === o;
1752
1755
  }));
1753
1756
  }, []);
1754
1757
  }
1755
- function $o(e) {
1758
+ function $s(e) {
1756
1759
  var t;
1757
1760
  return function() {
1758
1761
  return t || (t = new Promise(function(i) {
@@ -1762,13 +1765,13 @@ function $o(e) {
1762
1765
  })), t;
1763
1766
  };
1764
1767
  }
1765
- function zo(e) {
1766
- var t = e.reduce(function(i, n) {
1767
- var o = i[n.name];
1768
- return i[n.name] = o ? Object.assign({}, o, n, {
1769
- options: Object.assign({}, o.options, n.options),
1770
- data: Object.assign({}, o.data, n.data)
1771
- }) : n, i;
1768
+ function zs(e) {
1769
+ var t = e.reduce(function(i, o) {
1770
+ var s = i[o.name];
1771
+ return i[o.name] = s ? Object.assign({}, s, o, {
1772
+ options: Object.assign({}, s.options, o.options),
1773
+ data: Object.assign({}, s.data, o.data)
1774
+ }) : o, i;
1772
1775
  }, {});
1773
1776
  return Object.keys(t).map(function(i) {
1774
1777
  return t[i];
@@ -1782,19 +1785,19 @@ var He = {
1782
1785
  function De() {
1783
1786
  for (var e = arguments.length, t = new Array(e), i = 0; i < e; i++)
1784
1787
  t[i] = arguments[i];
1785
- return !t.some(function(n) {
1786
- return !(n && typeof n.getBoundingClientRect == "function");
1788
+ return !t.some(function(o) {
1789
+ return !(o && typeof o.getBoundingClientRect == "function");
1787
1790
  });
1788
1791
  }
1789
- function Go(e) {
1792
+ function Gs(e) {
1790
1793
  e === void 0 && (e = {});
1791
- var t = e, i = t.defaultModifiers, n = i === void 0 ? [] : i, o = t.defaultOptions, s = o === void 0 ? He : o;
1794
+ var t = e, i = t.defaultModifiers, o = i === void 0 ? [] : i, s = t.defaultOptions, n = s === void 0 ? He : s;
1792
1795
  return function(r, a, c) {
1793
- c === void 0 && (c = s);
1796
+ c === void 0 && (c = n);
1794
1797
  var h = {
1795
1798
  placement: "bottom",
1796
1799
  orderedModifiers: [],
1797
- options: Object.assign({}, He, s),
1800
+ options: Object.assign({}, He, n),
1798
1801
  modifiersData: {},
1799
1802
  elements: {
1800
1803
  reference: r,
@@ -1806,11 +1809,11 @@ function Go(e) {
1806
1809
  state: h,
1807
1810
  setOptions: function(m) {
1808
1811
  var b = typeof m == "function" ? m(h.options) : m;
1809
- g(), h.options = Object.assign({}, s, h.options, b), h.scrollParents = {
1810
- reference: st(r) ? St(r) : r.contextElement ? St(r.contextElement) : [],
1811
- popper: St(a)
1812
+ g(), h.options = Object.assign({}, n, h.options, b), h.scrollParents = {
1813
+ reference: nt(r) ? At(r) : r.contextElement ? At(r.contextElement) : [],
1814
+ popper: At(a)
1812
1815
  };
1813
- var x = jo(zo([].concat(n, h.options.modifiers)));
1816
+ var x = js(zs([].concat(o, h.options.modifiers)));
1814
1817
  return h.orderedModifiers = x.filter(function(w) {
1815
1818
  return w.enabled;
1816
1819
  }), I(), u.update();
@@ -1825,8 +1828,8 @@ function Go(e) {
1825
1828
  var m = h.elements, b = m.reference, x = m.popper;
1826
1829
  if (De(b, x)) {
1827
1830
  h.rects = {
1828
- reference: No(b, Tt(x), h.options.strategy === "fixed"),
1829
- popper: ne(x)
1831
+ reference: Ns(b, Yt(x), h.options.strategy === "fixed"),
1832
+ popper: oe(x)
1830
1833
  }, h.reset = !1, h.placement = h.options.placement, h.orderedModifiers.forEach(function(A) {
1831
1834
  return h.modifiersData[A.name] = Object.assign({}, A.data);
1832
1835
  });
@@ -1848,7 +1851,7 @@ function Go(e) {
1848
1851
  },
1849
1852
  // Async and optimistically optimized update – it will not be executed if
1850
1853
  // not necessary (debounced to run at most once-per-tick)
1851
- update: $o(function() {
1854
+ update: $s(function() {
1852
1855
  return new Promise(function(v) {
1853
1856
  u.forceUpdate(), v(h);
1854
1857
  });
@@ -1885,19 +1888,19 @@ function Go(e) {
1885
1888
  return u;
1886
1889
  };
1887
1890
  }
1888
- var Uo = [go, Mo, mo, no, Po, Lo, Zo, ho, To], Ko = /* @__PURE__ */ Go({
1889
- defaultModifiers: Uo
1891
+ var Us = [gs, Ms, ms, ss, Ps, Ls, Zs, ds, Ts], Ks = /* @__PURE__ */ Gs({
1892
+ defaultModifiers: Us
1890
1893
  });
1891
- class _o {
1892
- constructor(t, i, n) {
1894
+ class _s {
1895
+ constructor(t, i, o) {
1893
1896
  le(this, "updateHotspotPosition", (t, i) => {
1894
1897
  this.currentActiveIndex = t, this.currentOrientation = i;
1895
- const n = Hn(this.hotspotsConfig, t, i);
1896
- this.hideHotspots(), n.forEach((o) => this.updateAndShowHotspot(o, t));
1898
+ const o = Do(this.hotspotsConfig, t, i);
1899
+ this.hideHotspots(), o.forEach((s) => this.updateAndShowHotspot(s, t));
1897
1900
  });
1898
- this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer = qi(this.container), this.hotspotsConfig = Fn(t), this.shouldHidePopper = !0, this.hidePopper = this.hidePopper.bind(this), this.imageAspectRatio = n, this.hotspotElements = /* @__PURE__ */ new Map(), this.popperListeners = [];
1899
- const { containerSize: o } = t[0];
1900
- this.initialContainerSize = o || [i.offsetWidth, i.offsetHeight], this.initHotspots(), this.observeContainerResize();
1901
+ this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer = Qi(this.container), this.hotspotsConfig = No(t), this.shouldHidePopper = !0, this.hidePopper = this.hidePopper.bind(this), this.imageAspectRatio = o, this.hotspotElements = /* @__PURE__ */ new Map(), this.popperListeners = [];
1902
+ const { containerSize: s } = t[0];
1903
+ this.initialContainerSize = s || [i.offsetWidth, i.offsetHeight], this.initHotspots(), this.observeContainerResize();
1901
1904
  }
1902
1905
  observeContainerResize() {
1903
1906
  this.resizeObserver = new ResizeObserver(() => {
@@ -1906,7 +1909,7 @@ class _o {
1906
1909
  }), this.resizeObserver.observe(this.container);
1907
1910
  }
1908
1911
  updateHotspotsForResize(t, i) {
1909
- this.hotspotsConfig = Nn({
1912
+ this.hotspotsConfig = Vo({
1910
1913
  newWidth: t,
1911
1914
  newHeight: i,
1912
1915
  initialContainerSize: this.initialContainerSize,
@@ -1915,17 +1918,17 @@ class _o {
1915
1918
  }), this.updateHotspotPosition(this.currentActiveIndex, this.currentOrientation);
1916
1919
  }
1917
1920
  cleanupPopperListeners() {
1918
- this.popperListeners.forEach(({ element: t, event: i, handler: n }) => {
1919
- t.removeEventListener(i, n);
1921
+ this.popperListeners.forEach(({ element: t, event: i, handler: o }) => {
1922
+ t.removeEventListener(i, o);
1920
1923
  }), this.popperListeners = [];
1921
1924
  }
1922
- showPopper({ hotspotElement: t, content: i, id: n, keepOpen: o }) {
1923
- this.popperInstance && this.popperInstance.instanceId !== n && this.hidePopper();
1924
- const s = {
1925
+ showPopper({ hotspotElement: t, content: i, id: o, keepOpen: s }) {
1926
+ this.popperInstance && this.popperInstance.instanceId !== o && this.hidePopper();
1927
+ const n = {
1925
1928
  placement: "top",
1926
- modifiers: Bn(this.container)
1929
+ modifiers: Wo(this.container)
1927
1930
  };
1928
- this.popper = Wn(i, n), this.popper.setAttribute("data-show", ""), this.currentHotspotElement = t, t.setAttribute("aria-expanded", "true"), t.setAttribute("aria-describedby", `cloudimage-360-popper-${n}`);
1931
+ this.popper = Fo(i, o), this.popper.setAttribute("data-show", ""), this.currentHotspotElement = t, t.setAttribute("aria-expanded", "true"), t.setAttribute("aria-describedby", `cloudimage-360-popper-${o}`);
1929
1932
  const l = () => {
1930
1933
  this.shouldHidePopper = !1;
1931
1934
  }, r = () => {
@@ -1941,16 +1944,16 @@ class _o {
1941
1944
  { element: t, event: "mouseleave", handler: a },
1942
1945
  { element: t, event: "mouseenter", handler: c }
1943
1946
  ), this.popperInstance = {
1944
- ...Ko(t, this.popper, s),
1945
- keepOpen: o,
1946
- instanceId: n
1947
+ ...Ks(t, this.popper, n),
1948
+ keepOpen: s,
1949
+ instanceId: o
1947
1950
  };
1948
1951
  }
1949
1952
  checkAndHidePopper() {
1950
1953
  var t;
1951
1954
  this.shouldHidePopper && !((t = this.popperInstance) != null && t.keepOpen) && (this.hidePopperTimeout = setTimeout(() => {
1952
1955
  this.shouldHidePopper && this.hidePopper();
1953
- }, Oi));
1956
+ }, Ei));
1954
1957
  }
1955
1958
  hidePopper() {
1956
1959
  if (this.cleanupPopperListeners(), this.currentHotspotElement && (this.currentHotspotElement.setAttribute("aria-expanded", "false"), this.currentHotspotElement.removeAttribute("aria-describedby"), this.currentHotspotElement = null), this.popperInstance && (this.popperInstance.destroy(), this.popperInstance = null), this.popper) {
@@ -1958,19 +1961,19 @@ class _o {
1958
1961
  const t = this.popper;
1959
1962
  this.popper = null, setTimeout(() => {
1960
1963
  t.remove();
1961
- }, Ei);
1964
+ }, Si);
1962
1965
  }
1963
1966
  }
1964
1967
  createHotspot(t) {
1965
- const { id: i, content: n, keepOpen: o, onClick: s, label: l } = t, r = Dn(i, l);
1966
- s && (r.style.cursor = "pointer"), r.onclick = (a) => {
1967
- a.stopPropagation(), s == null || s(a, this.popperInstance, i);
1968
- }, n && (r.addEventListener(
1968
+ const { id: i, content: o, keepOpen: s, onClick: n, label: l } = t, r = Zo(i, l);
1969
+ n && (r.style.cursor = "pointer"), r.onclick = (a) => {
1970
+ a.stopPropagation(), n == null || n(a, this.popperInstance, i);
1971
+ }, o && (r.addEventListener(
1969
1972
  "mouseenter",
1970
- () => this.showPopper({ hotspotElement: r, content: n, id: i, keepOpen: o })
1973
+ () => this.showPopper({ hotspotElement: r, content: o, id: i, keepOpen: s })
1971
1974
  ), r.addEventListener(
1972
1975
  "focus",
1973
- () => this.showPopper({ hotspotElement: r, content: n, id: i, keepOpen: o })
1976
+ () => this.showPopper({ hotspotElement: r, content: o, id: i, keepOpen: s })
1974
1977
  ), r.addEventListener("blur", () => {
1975
1978
  this.shouldHidePopper = !0, this.checkAndHidePopper();
1976
1979
  })), this.hotspotsContainer.appendChild(r);
@@ -1981,19 +1984,19 @@ class _o {
1981
1984
  });
1982
1985
  }
1983
1986
  updateAndShowHotspot(t, i) {
1984
- const { positions: n, id: o } = t, { x: s, y: l } = n[i] ?? {}, r = this.hotspotsContainer.querySelector(`[data-hotspot-id="${o}"]`);
1985
- r && (r.style.translate = `${s}px ${l}px`, r.style.opacity = 1, r.style.pointerEvents = "all");
1987
+ const { positions: o, id: s } = t, { x: n, y: l } = o[i] ?? {}, r = this.hotspotsContainer.querySelector(`[data-hotspot-id="${s}"]`);
1988
+ r && (r.style.translate = `${n}px ${l}px`, r.style.opacity = 1, r.style.pointerEvents = "all");
1986
1989
  }
1987
1990
  /**
1988
1991
  * Shows the popper for a specific hotspot by ID
1989
1992
  * @param {string} hotspotId - The ID of the hotspot to show
1990
1993
  */
1991
1994
  showHotspotById(t) {
1992
- const i = this.hotspotsConfig.find((o) => o.id === t);
1995
+ const i = this.hotspotsConfig.find((s) => s.id === t);
1993
1996
  if (!i || !i.content) return;
1994
- const n = this.hotspotsContainer.querySelector(`[data-hotspot-id="${t}"]`);
1995
- n && n.style.opacity === "1" && this.showPopper({
1996
- hotspotElement: n,
1997
+ const o = this.hotspotsContainer.querySelector(`[data-hotspot-id="${t}"]`);
1998
+ o && o.style.opacity === "1" && this.showPopper({
1999
+ hotspotElement: o,
1997
2000
  content: i.content,
1998
2001
  id: t,
1999
2002
  keepOpen: i.keepOpen
@@ -2010,26 +2013,26 @@ class _o {
2010
2013
  }
2011
2014
  }
2012
2015
  class Ft {
2013
- constructor(t, i, n) {
2014
- this.container = t, this.isClicked = !1, this.fullscreenView = !!n, this.imagesX = [], this.imagesY = [], this.devicePixelRatio = Math.round(window.devicePixelRatio || 1), 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 = Ln(), 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.canvasWorker = new Yn(), 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);
2016
+ constructor(t, i, o) {
2017
+ this.container = t, this.isClicked = !1, this.fullscreenView = !!o, this.imagesX = [], this.imagesY = [], this.devicePixelRatio = Math.round(window.devicePixelRatio || 1), 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 = ko(), 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.canvasWorker = new Xo(), 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);
2015
2018
  }
2016
2019
  emit(t, i = {}) {
2017
- const n = this[t];
2018
- typeof n == "function" && n({ ...i, viewerId: this.id });
2020
+ const o = this[t];
2021
+ typeof o == "function" && o({ ...i, viewerId: this.id });
2019
2022
  }
2020
2023
  announce(t) {
2021
- tn(this.ariaLiveRegion, t);
2024
+ eo(this.ariaLiveRegion, t);
2022
2025
  }
2023
2026
  mouseDown(t) {
2024
2027
  if (!this.isReady || this.glass) return;
2025
- const { pageX: i, pageY: n } = t;
2026
- this.hideHints(), this.hideHotspotPopper(), this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null), this.autoplayJustStopped = !1, (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1, this.autoplayJustStopped = !0), this.movementStart = { x: i, y: n }, this.isClicked = !0, this.isDragging = !1, this.inertia && (this.velocityX = 0, this.velocityY = 0, this.lastDragTime = performance.now(), this.lastDragX = i, this.lastDragY = n);
2028
+ const { pageX: i, pageY: o } = t;
2029
+ this.hideHints(), this.hideHotspotPopper(), this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null), this.autoplayJustStopped = !1, (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1, this.autoplayJustStopped = !0), this.movementStart = { x: i, y: o }, this.isClicked = !0, this.isDragging = !1, this.inertia && (this.velocityX = 0, this.velocityY = 0, this.lastDragTime = performance.now(), this.lastDragX = i, this.lastDragY = o);
2027
2030
  }
2028
2031
  mouseUp() {
2029
2032
  this.isReady && (!this.isZoomed && !this.autoplayJustStopped && this.showAllIcons(), this.inertia && this.isDragging && (Math.abs(this.velocityX) > 0.1 || Math.abs(this.velocityY) > 0.1) && this.startInertia(), this.isDragging && (this.emit("onDragEnd"), this.dragJustEnded = !0), this.movementStart = { x: 0, y: 0 }, this.isClicked = !1, this.isDragging = !1, this.innerBox.style.cursor = "grab");
2030
2033
  }
2031
2034
  startInertia() {
2032
- const n = this.fullscreenView ? document.body : this.container, o = this.dragSpeed / fe, s = o * (this.amountX / n.offsetWidth), l = o * (this.amountY / n.offsetHeight), r = () => {
2035
+ const o = this.fullscreenView ? document.body : this.container, s = this.dragSpeed / fe, n = s * (this.amountX / o.offsetWidth), l = s * (this.amountY / o.offsetHeight), r = () => {
2033
2036
  if (this.velocityX *= 0.95, this.velocityY *= 0.95, Math.abs(this.velocityX) < 0.01 && Math.abs(this.velocityY) < 0.01) {
2034
2037
  this.inertiaAnimationId = null;
2035
2038
  return;
@@ -2042,7 +2045,7 @@ class Ft {
2042
2045
  allowSpinY: this.allowSpinY
2043
2046
  });
2044
2047
  if (h) {
2045
- const p = this.allowSpinX ? Math.max(1, Math.abs(Math.round(a * s))) : 0, f = this.allowSpinY ? Math.max(1, Math.abs(Math.round(c * l))) : 0;
2048
+ const p = this.allowSpinX ? Math.max(1, Math.abs(Math.round(a * n))) : 0, f = this.allowSpinY ? Math.max(1, Math.abs(Math.round(c * l))) : 0;
2046
2049
  (p > 0 || f > 0) && this.onMoveHandler(h, p, f);
2047
2050
  }
2048
2051
  this.inertiaAnimationId = requestAnimationFrame(r);
@@ -2051,22 +2054,22 @@ class Ft {
2051
2054
  }
2052
2055
  drag(t, i) {
2053
2056
  if (!this.isReady || !this.isClicked) return;
2054
- const n = t - this.movementStart.x, o = i - this.movementStart.y;
2057
+ const o = t - this.movementStart.x, s = i - this.movementStart.y;
2055
2058
  if (this.inertia) {
2056
2059
  const f = performance.now(), u = f - this.lastDragTime;
2057
2060
  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;
2058
2061
  }
2059
2062
  this.draggingDirection = Se({
2060
- deltaX: n,
2061
- deltaY: o,
2063
+ deltaX: o,
2064
+ deltaY: s,
2062
2065
  reversed: this.dragReverse,
2063
2066
  allowSpinX: this.allowSpinX,
2064
2067
  allowSpinY: this.allowSpinY
2065
2068
  }) || this.draggingDirection;
2066
- const s = this.fullscreenView ? document.body : this.container, l = this.dragSpeed / fe, r = l * (this.amountX / s.offsetWidth), a = l * (this.amountY / s.offsetHeight), c = this.allowSpinX ? Math.abs(Math.round(n * r)) : 0, h = this.allowSpinY ? Math.abs(Math.round(o * a)) : 0;
2069
+ const n = this.fullscreenView ? document.body : this.container, l = this.dragSpeed / fe, r = l * (this.amountX / n.offsetWidth), a = l * (this.amountY / n.offsetHeight), c = this.allowSpinX ? Math.abs(Math.round(o * r)) : 0, h = this.allowSpinY ? Math.abs(Math.round(s * a)) : 0;
2067
2070
  (this.allowSpinX && c !== 0 || this.allowSpinY && h !== 0) && (this.hasInteracted = !0, this.hideHotspotPopper(), this.onMoveHandler(this.draggingDirection, c, h), this.movementStart = { x: t, y: i }, setTimeout(() => {
2068
2071
  this.isDragging || (this.isDragging = !0, this.emit("onDragStart"));
2069
- }, Ci));
2072
+ }, Oi));
2070
2073
  }
2071
2074
  mouseMove(t) {
2072
2075
  !this.isReady || !this.isClicked && !this.isZoomed || this.glass || (this.hideAllIcons(), this.drag(t.pageX, t.pageY), this.isZoomed && this.applyZoom(t));
@@ -2089,16 +2092,16 @@ class Ft {
2089
2092
  }
2090
2093
  }
2091
2094
  loadHigherQualityImages(t, i) {
2092
- const n = Ot(this.srcXConfig, t), o = this.allowSpinY ? Ot(this.srcYConfig, t) : null;
2095
+ const o = Et(this.srcXConfig, t), s = this.allowSpinY ? Et(this.srcYConfig, t) : null;
2093
2096
  ve({
2094
- cdnPathX: n,
2095
- cdnPathY: o,
2097
+ cdnPathX: o,
2098
+ cdnPathY: s,
2096
2099
  configX: this.srcXConfig,
2097
2100
  configY: this.srcYConfig,
2098
- onAllImagesLoad: (s, l) => {
2099
- this.imagesX = s, this.imagesY = l, i();
2101
+ onAllImagesLoad: (n, l) => {
2102
+ this.imagesX = n, this.imagesY = l, i();
2100
2103
  },
2101
- onError: (s) => this.emit("onError", s)
2104
+ onError: (n) => this.emit("onError", n)
2102
2105
  });
2103
2106
  }
2104
2107
  hideHotspots() {
@@ -2128,8 +2131,8 @@ class Ft {
2128
2131
  this.isZoomed && this.removeZoom();
2129
2132
  }
2130
2133
  applyZoom(t) {
2131
- const { offsetX: i, offsetY: n } = xn(t, this.canvas, this.devicePixelRatio);
2132
- this.isZoomed = !0, this.hideAllIcons(), this.hideLoadingSpinner(), this.hideTransitionOverlay(), this.updateView(this.pointerZoom, i, n), this.emit("onZoomIn", { zoomLevel: this.pointerZoom }), this.announce("Zoomed in. Move mouse to pan. Click to zoom out.");
2134
+ const { offsetX: i, offsetY: o } = Co(t, this.canvas, this.devicePixelRatio);
2135
+ this.isZoomed = !0, this.hideAllIcons(), this.hideLoadingSpinner(), this.hideTransitionOverlay(), this.updateView(this.pointerZoom, i, o), this.emit("onZoomIn", { zoomLevel: this.pointerZoom }), this.announce("Zoomed in. Move mouse to pan. Click to zoom out.");
2133
2136
  }
2134
2137
  touchOutside(t) {
2135
2138
  if (!this.glass) return;
@@ -2141,8 +2144,8 @@ class Ft {
2141
2144
  if (i && i.closest && i.closest(".cloudimage-360-button")) return;
2142
2145
  if (this.hideHints(), t.touches.length === 2 && this.pinchZoom && !this.isDragging) {
2143
2146
  t.preventDefault(), this.isPinching = !0, this.isClicked = !1, this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null);
2144
- const s = t.touches[0], l = t.touches[1];
2145
- if (this.initialPinchDistance = this.getPinchDistance(s, l), (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1), !this.isZoomed && this.pinchZoomLevel === 1) {
2147
+ const n = t.touches[0], l = t.touches[1];
2148
+ if (this.initialPinchDistance = this.getPinchDistance(n, l), (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1), !this.isZoomed && this.pinchZoomLevel === 1) {
2146
2149
  const r = (this.fullscreenView ? document.body : this.container).offsetWidth;
2147
2150
  this.hideHotspots(), this.loadHigherQualityImages(r, () => {
2148
2151
  });
@@ -2150,12 +2153,12 @@ class Ft {
2150
2153
  return;
2151
2154
  }
2152
2155
  if (t.touches.length > 1) return;
2153
- const { pageX: n, pageY: o } = t.touches[0];
2154
- this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null), (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1), this.hideAllIcons(), this.hideHotspotPopper(), this.movementStart = { x: n, y: o }, this.isClicked = !0, this.isDragging = !1, this.inertia && (this.velocityX = 0, this.velocityY = 0, this.lastDragTime = performance.now(), this.lastDragX = n, this.lastDragY = o);
2156
+ const { pageX: o, pageY: s } = t.touches[0];
2157
+ this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null), (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1), this.hideAllIcons(), this.hideHotspotPopper(), this.movementStart = { x: o, y: s }, this.isClicked = !0, this.isDragging = !1, this.inertia && (this.velocityX = 0, this.velocityY = 0, this.lastDragTime = performance.now(), this.lastDragX = o, this.lastDragY = s);
2155
2158
  }
2156
2159
  getPinchDistance(t, i) {
2157
- const n = t.pageX - i.pageX, o = t.pageY - i.pageY;
2158
- return Math.sqrt(n * n + o * o);
2160
+ const o = t.pageX - i.pageX, s = t.pageY - i.pageY;
2161
+ return Math.sqrt(o * o + s * s);
2159
2162
  }
2160
2163
  getPinchCenter(t, i) {
2161
2164
  return {
@@ -2184,7 +2187,7 @@ class Ft {
2184
2187
  if (!this.isReady || this.glass) return;
2185
2188
  if (this.isPinching && t.touches.length === 2) {
2186
2189
  t.preventDefault();
2187
- const o = t.touches[0], s = t.touches[1], l = this.getPinchDistance(o, s);
2190
+ const s = t.touches[0], n = t.touches[1], l = this.getPinchDistance(s, n);
2188
2191
  if (this.initialPinchDistance === 0) {
2189
2192
  this.initialPinchDistance = l;
2190
2193
  return;
@@ -2196,29 +2199,29 @@ class Ft {
2196
2199
  return;
2197
2200
  }
2198
2201
  if (!this.isClicked || !t.touches || !t.touches[0]) return;
2199
- const { pageX: i, pageY: n } = t.touches[0];
2202
+ const { pageX: i, pageY: o } = t.touches[0];
2200
2203
  if (t.preventDefault(), this.isZoomed && this.pinchZoomLevel > 1) {
2201
- const o = i - this.movementStart.x, s = n - this.movementStart.y;
2202
- this.panOffsetX -= o * this.devicePixelRatio, this.panOffsetY -= s * this.devicePixelRatio, this.movementStart = { x: i, y: n }, this.updateView(this.pinchZoomLevel, this.panOffsetX, this.panOffsetY);
2204
+ const s = i - this.movementStart.x, n = o - this.movementStart.y;
2205
+ this.panOffsetX -= s * this.devicePixelRatio, this.panOffsetY -= n * this.devicePixelRatio, this.movementStart = { x: i, y: o }, this.updateView(this.pinchZoomLevel, this.panOffsetX, this.panOffsetY);
2203
2206
  return;
2204
2207
  }
2205
- this.drag(i, n);
2208
+ this.drag(i, o);
2206
2209
  }
2207
2210
  keyDown(t) {
2208
2211
  if (!this.isReady) return;
2209
- const { keyCode: i } = t, n = this.keysReverse;
2212
+ const { keyCode: i } = t, o = this.keysReverse;
2210
2213
  switch (this.autoplay && this.stopAutoplay(), Ee(i, this.allowSpinY) && (this.hasInteracted = !0, this.hideAllIcons(), this.hideHints()), i) {
2211
2214
  case 37:
2212
- n ? this.moveLeft() : this.moveRight();
2215
+ o ? this.moveLeft() : this.moveRight();
2213
2216
  break;
2214
2217
  case 39:
2215
- n ? this.moveRight() : this.moveLeft();
2218
+ o ? this.moveRight() : this.moveLeft();
2216
2219
  break;
2217
2220
  case 38:
2218
- this.allowSpinY && (t.preventDefault(), n ? this.moveTop() : this.moveBottom());
2221
+ this.allowSpinY && (t.preventDefault(), o ? this.moveTop() : this.moveBottom());
2219
2222
  break;
2220
2223
  case 40:
2221
- this.allowSpinY && (t.preventDefault(), n ? this.moveBottom() : this.moveTop());
2224
+ this.allowSpinY && (t.preventDefault(), o ? this.moveBottom() : this.moveTop());
2222
2225
  break;
2223
2226
  }
2224
2227
  }
@@ -2250,8 +2253,8 @@ class Ft {
2250
2253
  moveBottom(t, i = 1) {
2251
2254
  t && this.activeImageY <= 0 || (this.moveActiveYIndexDown(i), this.isZoomed || this.updateView());
2252
2255
  }
2253
- onMoveHandler(t, i = 1, n = 1) {
2254
- t === "right" ? this.moveRight(this.stopAtEdges, i) : t === "left" ? this.moveLeft(this.stopAtEdges, i) : t === "up" ? this.moveTop(this.stopAtEdges, n) : t === "down" && this.moveBottom(this.stopAtEdges, n), this.emit("onSpin", {
2256
+ onMoveHandler(t, i = 1, o = 1) {
2257
+ t === "right" ? this.moveRight(this.stopAtEdges, i) : t === "left" ? this.moveLeft(this.stopAtEdges, i) : t === "up" ? this.moveTop(this.stopAtEdges, o) : t === "down" && this.moveBottom(this.stopAtEdges, o), this.emit("onSpin", {
2255
2258
  direction: t,
2256
2259
  activeImageX: this.activeImageX,
2257
2260
  activeImageY: this.activeImageY,
@@ -2259,59 +2262,59 @@ class Ft {
2259
2262
  amountY: this.amountY
2260
2263
  });
2261
2264
  }
2262
- updateView(t, i, n) {
2263
- const o = this.orientation === P.X ? this.activeImageX : this.activeImageY, s = this.orientation === P.X ? this.imagesX[this.activeImageX] : this.imagesY[this.activeImageY];
2264
- this.hotspotsInstance && !this.isZoomed && !this.autoplay && this.hotspotsInstance.updateHotspotPosition(o, this.orientation), this.hotspotTimelineIndicator && this.orientation === P.X && this.updateHotspotTimelinePosition(), this.drawImageOnCanvas(s, t, i, n);
2265
+ updateView(t, i, o) {
2266
+ const s = this.orientation === P.X ? this.activeImageX : this.activeImageY, n = this.orientation === P.X ? this.imagesX[this.activeImageX] : this.imagesY[this.activeImageY];
2267
+ this.hotspotsInstance && !this.isZoomed && !this.autoplay && this.hotspotsInstance.updateHotspotPosition(s, this.orientation), this.hotspotTimelineIndicator && this.orientation === P.X && this.updateHotspotTimelinePosition(), this.drawImageOnCanvas(n, t, i, o);
2265
2268
  }
2266
2269
  updatePercentageInLoader(t = 0) {
2267
2270
  this.loader && (this.loader.innerText = t + "%");
2268
2271
  }
2269
2272
  adaptCanvasSize(t) {
2270
- const { naturalWidth: i, naturalHeight: n } = t;
2271
- this.imageAspectRatio = i / n;
2272
- const o = this.fullscreenView ? window.innerWidth : this.canvas.clientWidth, s = this.fullscreenView ? window.innerHeight : this.canvas.clientHeight;
2273
+ const { naturalWidth: i, naturalHeight: o } = t;
2274
+ this.imageAspectRatio = i / o;
2275
+ const s = this.fullscreenView ? window.innerWidth : this.canvas.clientWidth, n = this.fullscreenView ? window.innerHeight : this.canvas.clientHeight;
2273
2276
  this.canvasWorker.postMessage({
2274
2277
  action: "adaptCanvasSize",
2275
2278
  devicePixelRatio: this.devicePixelRatio,
2276
2279
  imageAspectRatio: this.imageAspectRatio,
2277
- containerWidth: o,
2278
- containerHeight: s
2280
+ containerWidth: s,
2281
+ containerHeight: n
2279
2282
  });
2280
2283
  }
2281
- drawImageOnCanvas(t, i = 1, n = 0, o = 0) {
2284
+ drawImageOnCanvas(t, i = 1, o = 0, s = 0) {
2282
2285
  this.canvasWorker.postMessage({
2283
2286
  action: "drawImageOnCanvas",
2284
2287
  imageData: t,
2285
2288
  zoomScale: i,
2286
- pointerX: n,
2287
- pointerY: o
2289
+ pointerX: o,
2290
+ pointerY: s
2288
2291
  });
2289
2292
  }
2290
- pushImageToSet(t, i, n) {
2291
- n === P.X ? this.imagesX[i] = t : this.imagesY[i] = t;
2293
+ pushImageToSet(t, i, o) {
2294
+ o === P.X ? this.imagesX[i] = t : this.imagesY[i] = t;
2292
2295
  }
2293
2296
  calculatePercentage() {
2294
2297
  const t = this.amountX + this.amountY, i = this.imagesX.length + this.imagesY.length;
2295
2298
  return Math.round(i / t * 100);
2296
2299
  }
2297
- onImageLoad(t, i, n) {
2298
- this.pushImageToSet(t, i, n), this.updatePercentageInLoader(this.calculatePercentage());
2300
+ onImageLoad(t, i, o) {
2301
+ this.pushImageToSet(t, i, o), this.updatePercentageInLoader(this.calculatePercentage());
2299
2302
  }
2300
2303
  onFirstImageLoaded(t, i) {
2301
2304
  this.createContainers(t), this.adaptCanvasSize(i), this.drawImageOnCanvas(i);
2302
2305
  }
2303
2306
  onAllImagesLoaded() {
2304
- 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 _o(this.hotspots, this.innerBox, this.imageAspectRatio), 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) {
2307
+ 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 _s(this.hotspots, this.innerBox, this.imageAspectRatio), 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) {
2305
2308
  const t = this.hints === !0 || this.hints === void 0 ? be(this.viewerConfig, this.touchDevice) : this.hints;
2306
2309
  t && t.length > 0 && (this.hintsOverlay = ye(this.innerBox, t), we(this.hintsOverlay));
2307
2310
  }
2308
- this.autoplay && (this.hideAllIcons(), kn(this.play.bind(this))());
2311
+ this.autoplay && (this.hideAllIcons(), To(this.play.bind(this))());
2309
2312
  }
2310
2313
  magnify(t) {
2311
2314
  t.stopPropagation();
2312
- const { src: i } = this.orientation === P.Y ? this.imagesY[this.activeImageY] : this.imagesX[this.activeImageX], o = (this.fullscreenView ? document.body : this.container).offsetWidth * this.magnifier, s = Hi(i, o);
2313
- this.showLoadingSpinner(), this.createGlass(), bn(s, (a) => {
2314
- this.hideLoadingSpinner(), this.magnified = !0, In(t, this.innerBox, this.offset, a, this.glass, this.magnifier);
2315
+ const { src: i } = this.orientation === P.Y ? this.imagesY[this.activeImageY] : this.imagesX[this.activeImageX], s = (this.fullscreenView ? document.body : this.container).offsetWidth * this.magnifier, n = Di(i, s);
2316
+ this.showLoadingSpinner(), this.createGlass(), wo(n, (a) => {
2317
+ this.hideLoadingSpinner(), this.magnified = !0, xo(t, this.innerBox, this.offset, a, this.glass, this.magnifier);
2315
2318
  }, (a) => {
2316
2319
  this.hideLoadingSpinner(), this.removeGlass(), this.emit("onError", {
2317
2320
  error: { message: a.message, url: a.url },
@@ -2323,7 +2326,7 @@ class Ft {
2323
2326
  }
2324
2327
  openFullscreenModal(t) {
2325
2328
  t.stopPropagation(), window.document.body.style.overflow = "hidden";
2326
- const i = Ki(this.container);
2329
+ const i = _i(this.container);
2327
2330
  new Ft(i, this.viewerConfig, !0), this.emit("onFullscreenOpen"), this.announce("Opened fullscreen mode. Press Escape to exit.");
2328
2331
  }
2329
2332
  closeFullscreenModal(t) {
@@ -2339,7 +2342,7 @@ class Ft {
2339
2342
  bottom: this.moveBottom.bind(this)
2340
2343
  };
2341
2344
  this.loopTimeoutId = window.setInterval(() => {
2342
- if (this.playOnce && On({
2345
+ if (this.playOnce && Eo({
2343
2346
  autoplayBehavior: this.autoplayBehavior,
2344
2347
  activeImageX: this.activeImageX,
2345
2348
  activeImageY: this.activeImageY,
@@ -2350,7 +2353,7 @@ class Ft {
2350
2353
  this.stopAutoplay();
2351
2354
  return;
2352
2355
  }
2353
- En({
2356
+ So({
2354
2357
  autoplayBehavior: this.autoplayBehavior,
2355
2358
  activeImageX: this.activeImageX,
2356
2359
  activeImageY: this.activeImageY,
@@ -2358,11 +2361,11 @@ class Ft {
2358
2361
  amountY: this.amountY,
2359
2362
  autoplayReverse: this.autoplayReverse,
2360
2363
  spinDirection: this.spinDirection
2361
- }) && (this.spinDirection = An(this.spinDirection));
2362
- const s = this.spinDirection === "y";
2363
- Cn({
2364
+ }) && (this.spinDirection = Lo(this.spinDirection));
2365
+ const n = this.spinDirection === "y";
2366
+ Oo({
2364
2367
  autoplayBehavior: this.autoplayBehavior,
2365
- spinY: s,
2368
+ spinY: n,
2366
2369
  reversed: this.autoplayReverse,
2367
2370
  loopTriggers: i
2368
2371
  });
@@ -2378,7 +2381,7 @@ class Ft {
2378
2381
  this.stopAutoplay(), this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null), this.removeEvents(), this.canvasWorker && (this.canvasWorker.terminate(), this.canvasWorker = null), this.hotspotsInstance && this.hotspotsInstance.destroy(), this.hintsOverlay && this.hintsOverlay.parentNode && (this.hintsOverlay.parentNode.removeChild(this.hintsOverlay), this.hintsOverlay = null), this.hotspotTimeline && this.hotspotTimeline.parentNode && (this.hotspotTimeline.parentNode.removeChild(this.hotspotTimeline), this.hotspotTimeline = null, this.hotspotTimelineIndicator = null), this.container && (this.container.classList.remove("ci360-theme-dark"), this.container.innerHTML = "");
2379
2382
  }
2380
2383
  addInitialIcon() {
2381
- this.initialIcon || this.hide360Logo || (this.initialIcon = Ni(this.logoSrc), this.innerBox.appendChild(this.initialIcon));
2384
+ this.initialIcon || this.hide360Logo || (this.initialIcon = Vi(this.logoSrc), this.innerBox.appendChild(this.initialIcon));
2382
2385
  }
2383
2386
  showInitialIcon() {
2384
2387
  !this.initialIcon || this.hasInteracted || (this.initialIcon.style.opacity = 1);
@@ -2393,7 +2396,7 @@ class Ft {
2393
2396
  this.showAllIcons(), this.innerBox.removeChild(this.glass), this.glass = null, this.magnified = !1;
2394
2397
  }
2395
2398
  addMagnifierIcon() {
2396
- this.magnifier && (this.magnifierIcon = Gi(), this.magnifierIcon.onclick = this.magnify.bind(this), this.iconsContainer.appendChild(this.magnifierIcon));
2399
+ this.magnifier && (this.magnifierIcon = Ui(), this.magnifierIcon.onclick = this.magnify.bind(this), this.iconsContainer.appendChild(this.magnifierIcon));
2397
2400
  }
2398
2401
  showMagnifierIcon() {
2399
2402
  this.magnifierIcon && (this.magnifierIcon.style.visibility = "visible", this.magnifierIcon.style.opacity = 1);
@@ -2402,10 +2405,10 @@ class Ft {
2402
2405
  this.magnifierIcon && (this.magnifierIcon.style.visibility = "hidden", this.magnifierIcon.style.opacity = 0);
2403
2406
  }
2404
2407
  addFullscreenIcon() {
2405
- this.fullscreen && (this.fullscreenIcon = $i(), this.fullscreenIcon.onclick = this.openFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenIcon));
2408
+ this.fullscreen && (this.fullscreenIcon = zi(), this.fullscreenIcon.onclick = this.openFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenIcon));
2406
2409
  }
2407
2410
  addCloseFullscreenIcon() {
2408
- this.fullscreenCloseIcon = ji(), this.fullscreenCloseIcon.onclick = this.closeFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenCloseIcon);
2411
+ this.fullscreenCloseIcon = $i(), this.fullscreenCloseIcon.onclick = this.closeFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenCloseIcon);
2409
2412
  }
2410
2413
  showFullscreenIcon() {
2411
2414
  this.fullscreenIcon && (this.fullscreenIcon.style.opacity = 1);
@@ -2414,7 +2417,7 @@ class Ft {
2414
2417
  this.fullscreenIcon && (this.fullscreenIcon.style.opacity = 0);
2415
2418
  }
2416
2419
  add360ViewCircleIcon() {
2417
- this.view360CircleIcon || (this.view360CircleIcon = Wi(this.bottomCircleOffset), this.innerBox.appendChild(this.view360CircleIcon));
2420
+ this.view360CircleIcon || (this.view360CircleIcon = Fi(this.bottomCircleOffset), this.innerBox.appendChild(this.view360CircleIcon));
2418
2421
  }
2419
2422
  show360ViewCircleIcon() {
2420
2423
  this.view360CircleIcon && (this.view360CircleIcon.style.opacity = 1);
@@ -2423,13 +2426,13 @@ class Ft {
2423
2426
  this.view360CircleIcon && (this.view360CircleIcon.style.opacity = 0);
2424
2427
  }
2425
2428
  addLoadingSpinner() {
2426
- this.loadingSpinner = _i(), this.innerBox.appendChild(this.loadingSpinner);
2429
+ this.loadingSpinner = Ji(), this.innerBox.appendChild(this.loadingSpinner);
2427
2430
  }
2428
2431
  showLoadingSpinner() {
2429
2432
  this.loadingSpinner && (this.hideAllIcons(), this.loadingSpinner.style.opacity = 1);
2430
2433
  }
2431
2434
  createTransitionOverlay() {
2432
- this.transitionOverlay = Ji(), this.innerBox.appendChild(this.transitionOverlay);
2435
+ this.transitionOverlay = qi(), this.innerBox.appendChild(this.transitionOverlay);
2433
2436
  }
2434
2437
  showTransitionOverlay() {
2435
2438
  this.transitionOverlay && (this.hideAllIcons(), this.transitionOverlay.style.opacity = 1);
@@ -2441,28 +2444,28 @@ class Ft {
2441
2444
  this.loadingSpinner && (this.loadingSpinner.style.opacity = 0);
2442
2445
  }
2443
2446
  hideHints() {
2444
- !this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0, on(this.hintsOverlay));
2447
+ !this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0, so(this.hintsOverlay));
2445
2448
  }
2446
2449
  addHotspotTimeline() {
2447
2450
  if (!this.hotspots || this.hotspotTimeline) return;
2448
- const t = cn(this.container, this.amountX, this.hotspots);
2451
+ const t = co(this.container, this.amountX, this.hotspots);
2449
2452
  if (!t) return;
2450
- this.hotspotTimeline = t.element, this.hotspotTimelineIndicator = t.indicator, this.hotspotTimeline.querySelectorAll(".cloudimage-360-hotspot-timeline-dot").forEach((n) => {
2451
- n.addEventListener("click", (o) => {
2452
- o.stopPropagation();
2453
- const s = parseInt(n.getAttribute("data-frame"), 10), l = n.getAttribute("data-hotspot-id");
2454
- isNaN(s) || this.animateToFrame(s, l);
2453
+ this.hotspotTimeline = t.element, this.hotspotTimelineIndicator = t.indicator, this.hotspotTimeline.querySelectorAll(".cloudimage-360-hotspot-timeline-dot").forEach((o) => {
2454
+ o.addEventListener("click", (s) => {
2455
+ s.stopPropagation();
2456
+ const n = parseInt(o.getAttribute("data-frame"), 10), l = o.getAttribute("data-hotspot-id");
2457
+ isNaN(n) || this.animateToFrame(n, l);
2455
2458
  });
2456
2459
  }), this.updateHotspotTimelinePosition();
2457
2460
  }
2458
2461
  showHotspotTimeline() {
2459
- dn(this.hotspotTimeline);
2462
+ uo(this.hotspotTimeline);
2460
2463
  }
2461
2464
  hideHotspotTimeline() {
2462
- un(this.hotspotTimeline);
2465
+ po(this.hotspotTimeline);
2463
2466
  }
2464
2467
  updateHotspotTimelinePosition() {
2465
- hn(this.hotspotTimelineIndicator, this.activeImageX, this.amountX);
2468
+ ho(this.hotspotTimelineIndicator, this.activeImageX, this.amountX);
2466
2469
  }
2467
2470
  /**
2468
2471
  * Animates the viewer to a target frame, optionally showing a hotspot popup on arrival
@@ -2475,7 +2478,7 @@ class Ft {
2475
2478
  return;
2476
2479
  }
2477
2480
  this.isAnimatingToFrame = !0, this.hasInteracted = !0, (this.autoplay || this.loopTimeoutId) && (this.stopAutoplay(), this.autoplay = !1), this.inertiaAnimationId && (cancelAnimationFrame(this.inertiaAnimationId), this.inertiaAnimationId = null);
2478
- const n = this.activeImageX, o = (t - n + this.amountX) % this.amountX, s = (n - t + this.amountX) % this.amountX, l = o <= s, r = l ? o : s;
2481
+ const o = this.activeImageX, s = (t - o + this.amountX) % this.amountX, n = (o - t + this.amountX) % this.amountX, l = s <= n, r = l ? s : n;
2479
2482
  if (r === 0) {
2480
2483
  this.isAnimatingToFrame = !1;
2481
2484
  return;
@@ -2510,8 +2513,8 @@ class Ft {
2510
2513
  removeLoader() {
2511
2514
  this.loader && (this.innerBox.removeChild(this.loader), this.loader = null);
2512
2515
  }
2513
- attachEvents(t, i, n) {
2514
- t && this.addMouseEvents(), i && this.addTouchEvents(), n && this.addKeyboardEvents(), this.addEscKeyHandler();
2516
+ attachEvents(t, i, o) {
2517
+ t && this.addMouseEvents(), i && this.addTouchEvents(), o && this.addKeyboardEvents(), this.addEscKeyHandler();
2515
2518
  }
2516
2519
  removeEvents() {
2517
2520
  this.removeMouseEvents(), this.removeTouchEvents(), this.removeKeyboardEvents(), this.removeEscKeyHandler();
@@ -2543,7 +2546,7 @@ class Ft {
2543
2546
  document.removeEventListener("keydown", this.boundKeyDown), document.removeEventListener("keyup", this.boundKeyUp);
2544
2547
  }
2545
2548
  createContainers(t) {
2546
- this.iconsContainer = ge(this.innerBox), this.canvas = Vi(this.innerBox, t), this.loader = Ui(this.innerBox), this.ariaLiveRegion = Qi(this.innerBox);
2549
+ this.iconsContainer = ge(this.innerBox), this.canvas = ji(this.innerBox, t), this.loader = Ki(this.innerBox), this.ariaLiveRegion = to(this.innerBox);
2547
2550
  const i = this.canvas.transferControlToOffscreen();
2548
2551
  this.canvasWorker.postMessage(
2549
2552
  {
@@ -2557,9 +2560,9 @@ class Ft {
2557
2560
  update(t) {
2558
2561
  this.isReady && (this.stopAutoplay(), Jt(this.innerBox, ".cloudimage-360-icons-container"), this.init(this.container, t, !0), this.iconsContainer = ge(this.innerBox), this.onAllImagesLoaded());
2559
2562
  }
2560
- init(t, i, n) {
2561
- const o = i ? Yi(i) : ki(t), {
2562
- folder: s,
2563
+ init(t, i, o) {
2564
+ const s = i ? Xi(i) : Ti(t), {
2565
+ folder: n,
2563
2566
  apiVersion: l,
2564
2567
  filenameX: r,
2565
2568
  filenameY: a,
@@ -2581,7 +2584,7 @@ class Ft {
2581
2584
  fullscreen: S,
2582
2585
  magnifier: E,
2583
2586
  ciToken: A,
2584
- ciFilters: L,
2587
+ ciFilters: k,
2585
2588
  ciTransformation: R,
2586
2589
  lazyload: T,
2587
2590
  dragSpeed: z,
@@ -2599,28 +2602,29 @@ class Ft {
2599
2602
  hints: et,
2600
2603
  theme: it,
2601
2604
  hotspotTimelineOnClick: K = !0,
2605
+ aspectRatio: ct,
2602
2606
  // Event callbacks
2603
- onReady: gt,
2604
- onLoad: Vt,
2605
- onSpin: yt,
2606
- onAutoplayStart: jt,
2607
- onAutoplayStop: Yt,
2608
- onFullscreenOpen: $t,
2609
- onFullscreenClose: zt,
2610
- onZoomIn: Xt,
2611
- onZoomOut: Pt,
2612
- onDragStart: Gt,
2613
- onDragEnd: Ut,
2614
- onError: _
2615
- } = o, nt = { ciToken: A, ciFilters: L, ciTransformation: R }, ct = qt(c, []), ht = qt(h, []);
2616
- if (this.viewerConfig = o, this.amountX = ct.length || f, this.amountY = ht.length || u, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX = O ? this.amountX - 1 : 0, this.activeImageY = O ? this.amountY - 1 : 0, this.bottomCircleOffset = b, this.autoplay = x, this.autoplayBehavior = w, this.playOnce = C, this.speed = y, this.autoplayReverse = O, this.fullscreen = S, this.magnifier = E > 1 ? Math.min(E, Ai) : 0, this.dragSpeed = Math.max(z, Si), this.stopAtEdges = G, this.ciParams = nt, this.apiVersion = l, this.pointerZoom = Y > 1 ? Math.min(Y, me) : null, this.keysReverse = m, this.info = Z, this.keys = v, this.innerBox = this.innerBox ?? zi(this.container), this.initialIconShown = rt, this.bottomCircle = U, this.spinDirection = Sn(this.autoplayBehavior, this.allowSpinX, this.allowSpinY), this.dragReverse = vt, this.hotspots = at, this.hide360Logo = tt, this.logoSrc = lt, this.inertia = q, this.pinchZoom = V, this.hints = et, this.hotspotTimelineOnClick = K, it === "dark" ? this.container.classList.add("ci360-theme-dark") : it === "light" && this.container.classList.remove("ci360-theme-dark"), this.onReady = gt, this.onLoad = Vt, this.onSpin = yt, this.onAutoplayStart = jt, this.onAutoplayStop = Yt, this.onFullscreenOpen = $t, this.onFullscreenClose = zt, this.onZoomIn = Xt, this.onZoomOut = Pt, this.onDragStart = Gt, this.onDragEnd = Ut, this.onError = _, this.srcXConfig = {
2617
- folder: s,
2607
+ onReady: Vt,
2608
+ onLoad: gt,
2609
+ onSpin: jt,
2610
+ onAutoplayStart: Xt,
2611
+ onAutoplayStop: $t,
2612
+ onFullscreenOpen: zt,
2613
+ onFullscreenClose: Pt,
2614
+ onZoomIn: Rt,
2615
+ onZoomOut: Gt,
2616
+ onDragStart: Ut,
2617
+ onDragEnd: _,
2618
+ onError: ht
2619
+ } = s, yt = { ciToken: A, ciFilters: k, ciTransformation: R }, dt = qt(c, []), ot = qt(h, []);
2620
+ if (this.viewerConfig = s, this.amountX = dt.length || f, this.amountY = ot.length || u, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX = O ? this.amountX - 1 : 0, this.activeImageY = O ? this.amountY - 1 : 0, this.bottomCircleOffset = b, this.autoplay = x, this.autoplayBehavior = w, this.playOnce = C, this.speed = y, this.autoplayReverse = O, this.fullscreen = S, this.magnifier = E > 1 ? Math.min(E, Li) : 0, this.dragSpeed = Math.max(z, Ai), this.stopAtEdges = G, this.ciParams = yt, this.apiVersion = l, this.pointerZoom = Y > 1 ? Math.min(Y, me) : null, this.keysReverse = m, this.info = Z, this.keys = v, this.innerBox = this.innerBox ?? Gi(this.container), ct && (this.container.style.aspectRatio = ct), this.initialIconShown = rt, this.bottomCircle = U, this.spinDirection = Ao(this.autoplayBehavior, this.allowSpinX, this.allowSpinY), this.dragReverse = vt, this.hotspots = at, this.hide360Logo = tt, this.logoSrc = lt, this.inertia = q, this.pinchZoom = V, this.hints = et, this.hotspotTimelineOnClick = K, it === "dark" ? this.container.classList.add("ci360-theme-dark") : it === "light" && this.container.classList.remove("ci360-theme-dark"), this.onReady = Vt, this.onLoad = gt, this.onSpin = jt, this.onAutoplayStart = Xt, this.onAutoplayStop = $t, this.onFullscreenOpen = zt, this.onFullscreenClose = Pt, this.onZoomIn = Rt, this.onZoomOut = Gt, this.onDragStart = Ut, this.onDragEnd = _, this.onError = ht, this.srcXConfig = {
2621
+ folder: n,
2618
2622
  filename: r,
2619
- imageList: ct,
2623
+ imageList: dt,
2620
2624
  container: t,
2621
2625
  innerBox: this.innerBox,
2622
2626
  apiVersion: l,
2623
- ciParams: nt,
2627
+ ciParams: yt,
2624
2628
  lazyload: T,
2625
2629
  amount: this.amountX,
2626
2630
  indexZeroBase: p,
@@ -2629,45 +2633,45 @@ class Ft {
2629
2633
  }, this.srcYConfig = {
2630
2634
  ...this.srcXConfig,
2631
2635
  filename: a,
2632
- imageList: ht,
2636
+ imageList: ot,
2633
2637
  orientation: P.Y,
2634
2638
  amount: this.amountY
2635
- }, n && this.removeEvents(), this.attachEvents(I, g, v), n) return;
2636
- const dt = (this.fullscreenView ? document.body : this.container).offsetWidth, bt = this.allowSpinX && !ct.length ? Ot(this.srcXConfig, dt) : null, wt = this.allowSpinY && !ht.length ? Ot(this.srcYConfig, dt) : null, It = (Rt) => {
2639
+ }, o && this.removeEvents(), this.attachEvents(I, g, v), o) return;
2640
+ const bt = (this.fullscreenView ? document.body : this.container).offsetWidth, wt = this.allowSpinX && !dt.length ? Et(this.srcXConfig, bt) : null, It = this.allowSpinY && !ot.length ? Et(this.srcYConfig, bt) : null, xt = (Je) => {
2637
2641
  ve({
2638
- cdnPathX: bt,
2639
- cdnPathY: wt,
2642
+ cdnPathX: wt,
2643
+ cdnPathY: It,
2640
2644
  configX: this.srcXConfig,
2641
2645
  configY: this.srcYConfig,
2642
- onImageLoad: (xt, Je, qe) => this.onImageLoad(xt, Je, qe),
2643
- onFirstImageLoad: (xt) => this.onFirstImageLoaded(Rt, xt),
2646
+ onImageLoad: (Ct, qe, Qe) => this.onImageLoad(Ct, qe, Qe),
2647
+ onFirstImageLoad: (Ct) => this.onFirstImageLoaded(Je, Ct),
2644
2648
  onAllImagesLoad: this.onAllImagesLoaded.bind(this),
2645
- onError: (xt) => this.emit("onError", xt)
2649
+ onError: (Ct) => this.emit("onError", Ct)
2646
2650
  });
2647
2651
  };
2648
- this.allowSpinX ? xe(bt, this.srcXConfig, It) : this.allowSpinY && xe(wt, this.srcYConfig, It);
2652
+ this.allowSpinX ? xe(wt, this.srcXConfig, xt) : this.allowSpinY && xe(It, this.srcYConfig, xt);
2649
2653
  }
2650
2654
  }
2651
- class qo {
2655
+ class qs {
2652
2656
  constructor() {
2653
2657
  this.views = /* @__PURE__ */ new Map(), this.initAll = this.initAll.bind(this), this.getViews = this.getViews.bind(this);
2654
2658
  }
2655
2659
  generateId() {
2656
2660
  return `ci360-${Math.random().toString(36).slice(2, 11)}`;
2657
2661
  }
2658
- init(t, i, n) {
2662
+ init(t, i, o) {
2659
2663
  if (!t) return;
2660
- const o = t.id || this.generateId();
2661
- t.id || (t.id = o);
2662
- const s = new Ft(t, i, n);
2663
- return this.views.set(o, s), s;
2664
+ const s = t.id || this.generateId();
2665
+ t.id || (t.id = s);
2666
+ const n = new Ft(t, i, o);
2667
+ return this.views.set(s, n), n;
2664
2668
  }
2665
2669
  initAll(t = "cloudimage-360") {
2666
- [...document.querySelectorAll(`.${t}`)].filter(Boolean).forEach((n) => {
2667
- const o = n.id || this.generateId();
2668
- n.id || (n.id = o);
2669
- const s = new Ft(n);
2670
- this.views.set(o, s);
2670
+ [...document.querySelectorAll(`.${t}`)].filter(Boolean).forEach((o) => {
2671
+ const s = o.id || this.generateId();
2672
+ o.id || (o.id = s);
2673
+ const n = new Ft(o);
2674
+ this.views.set(s, n);
2671
2675
  });
2672
2676
  }
2673
2677
  destroy(t) {
@@ -2686,15 +2690,15 @@ class qo {
2686
2690
  return Array.from(this.views.values());
2687
2691
  }
2688
2692
  updateView(t, i) {
2689
- const n = this.getViewById(t);
2690
- if (!n) return null;
2691
- const o = { ...n.viewerConfig, ...i };
2692
- n.destroy();
2693
- const s = document.getElementById(t);
2694
- return this.init(s, o);
2693
+ const o = this.getViewById(t);
2694
+ if (!o) return null;
2695
+ const s = { ...o.viewerConfig, ...i };
2696
+ o.destroy();
2697
+ const n = document.getElementById(t);
2698
+ return this.init(n, s);
2695
2699
  }
2696
2700
  }
2697
2701
  export {
2698
- qo as default
2702
+ qs as default
2699
2703
  };
2700
- //# sourceMappingURL=ci360-CbNlMnNZ.mjs.map
2704
+ //# sourceMappingURL=ci360-CJCqgguJ.mjs.map