js-cloudimage-360-view 4.3.0 → 4.3.1

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.
@@ -5,28 +5,28 @@ var Rt = typeof globalThis < "u" ? globalThis : typeof window < "u" ? window : t
5
5
  function ai(e) {
6
6
  return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
7
7
  }
8
- var Ve = "Expected a function", ue = NaN, li = "[object Symbol]", ci = /^\s+|\s+$/g, hi = /^[-+]0x[0-9a-f]+$/i, di = /^0b[01]+$/i, ui = /^0o[0-7]+$/i, pi = parseInt, mi = typeof Rt == "object" && Rt && Rt.Object === Object && Rt, fi = typeof self == "object" && self && self.Object === Object && self, vi = mi || fi || Function("return this")(), gi = Object.prototype, yi = gi.toString, bi = Math.max, wi = Math.min, Kt = function() {
8
+ var Ne = "Expected a function", ue = NaN, li = "[object Symbol]", ci = /^\s+|\s+$/g, hi = /^[-+]0x[0-9a-f]+$/i, di = /^0b[01]+$/i, ui = /^0o[0-7]+$/i, pi = parseInt, mi = typeof Rt == "object" && Rt && Rt.Object === Object && Rt, fi = typeof self == "object" && self && self.Object === Object && self, vi = mi || fi || Function("return this")(), gi = Object.prototype, yi = gi.toString, bi = Math.max, wi = Math.min, Kt = function() {
9
9
  return vi.Date.now();
10
10
  };
11
11
  function Ii(e, t, i) {
12
12
  var s, o, n, l, r, a, c = 0, h = !1, u = !1, f = !0;
13
13
  if (typeof e != "function")
14
- throw new TypeError(Ve);
14
+ throw new TypeError(Ne);
15
15
  t = pe(t) || 0, Wt(i) && (h = !!i.leading, u = "maxWait" in i, n = u ? bi(pe(i.maxWait) || 0, t) : n, f = "trailing" in i ? !!i.trailing : f);
16
16
  function p(m) {
17
- var g = s, x = o;
18
- return s = o = void 0, c = m, l = e.apply(x, g), l;
17
+ var g = s, C = o;
18
+ return s = o = void 0, c = m, l = e.apply(C, g), l;
19
19
  }
20
20
  function I(m) {
21
21
  return c = m, r = setTimeout(O, t), h ? p(m) : l;
22
22
  }
23
23
  function b(m) {
24
- var g = m - a, x = m - c, A = t - g;
25
- return u ? wi(A, n - x) : A;
24
+ var g = m - a, C = m - c, A = t - g;
25
+ return u ? wi(A, n - C) : A;
26
26
  }
27
27
  function v(m) {
28
- var g = m - a, x = m - c;
29
- return a === void 0 || g >= t || g < 0 || u && x >= n;
28
+ var g = m - a, C = m - c;
29
+ return a === void 0 || g >= t || g < 0 || u && C >= n;
30
30
  }
31
31
  function O() {
32
32
  var m = Kt();
@@ -43,7 +43,7 @@ function Ii(e, t, i) {
43
43
  function y() {
44
44
  return r === void 0 ? l : E(Kt());
45
45
  }
46
- function C() {
46
+ function x() {
47
47
  var m = Kt(), g = v(m);
48
48
  if (s = arguments, o = this, a = m, g) {
49
49
  if (r === void 0)
@@ -53,12 +53,12 @@ function Ii(e, t, i) {
53
53
  }
54
54
  return r === void 0 && (r = setTimeout(O, t)), l;
55
55
  }
56
- return C.cancel = w, C.flush = y, C;
56
+ return x.cancel = w, x.flush = y, x;
57
57
  }
58
- function xi(e, t, i) {
58
+ function Ci(e, t, i) {
59
59
  var s = !0, o = !0;
60
60
  if (typeof e != "function")
61
- throw new TypeError(Ve);
61
+ throw new TypeError(Ne);
62
62
  return Wt(i) && (s = "leading" in i ? !!i.leading : s, o = "trailing" in i ? !!i.trailing : o), Ii(e, t, {
63
63
  leading: s,
64
64
  maxWait: t,
@@ -69,11 +69,11 @@ function Wt(e) {
69
69
  var t = typeof e;
70
70
  return !!e && (t == "object" || t == "function");
71
71
  }
72
- function Ci(e) {
72
+ function xi(e) {
73
73
  return !!e && typeof e == "object";
74
74
  }
75
75
  function Oi(e) {
76
- return typeof e == "symbol" || Ci(e) && yi.call(e) == li;
76
+ return typeof e == "symbol" || xi(e) && yi.call(e) == li;
77
77
  }
78
78
  function pe(e) {
79
79
  if (typeof e == "number")
@@ -90,7 +90,7 @@ function pe(e) {
90
90
  var i = di.test(e);
91
91
  return i || ui.test(e) ? pi(e.slice(2), i ? 2 : 8) : hi.test(e) ? ue : +e;
92
92
  }
93
- var Ei = xi;
93
+ var Ei = Ci;
94
94
  const me = /* @__PURE__ */ ai(Ei), R = {
95
95
  SPIN_X: "spin-x",
96
96
  SPIN_Y: "spin-y",
@@ -99,7 +99,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
99
99
  }, Ai = [!1, 0, null, void 0, "false", "0", "null", "undefined"], Y = {
100
100
  X: "x-axis",
101
101
  Y: "y-axis"
102
- }, ki = [37, 39], Si = [38, 40], Ti = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), fe = Ti ? 32 : 10, Li = 150, Ht = 800, Pi = 150, Mi = 200, ve = 50, Yi = 50, Xi = 5, ge = 5, Ri = "https://scaleflex.cloudimg.io/v7/filerobot/js-cloudimage-360-view/360_view.svg", d = {
102
+ }, Si = [37, 39], ki = [38, 40], Ti = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), fe = Ti ? 32 : 10, Li = 150, Ht = 800, Mi = 150, Pi = 200, ve = 50, Yi = 50, Xi = 5, ge = 5, d = {
103
103
  folder: "/",
104
104
  apiVersion: "v7",
105
105
  filenameX: "image-{index}.jpg",
@@ -136,7 +136,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
136
136
  hotspots: null,
137
137
  hotspotTrigger: "hover",
138
138
  hide360Logo: !1,
139
- logoSrc: Ri,
139
+ logoSrc: null,
140
140
  inertia: !1,
141
141
  pinchZoom: !0,
142
142
  hints: !0,
@@ -155,60 +155,60 @@ const me = /* @__PURE__ */ ai(Ei), R = {
155
155
  onZoomOut: null,
156
156
  onDragStart: null,
157
157
  onDragEnd: null
158
- }, Hi = (e) => ({
159
- folder: S(e, "folder", d.folder),
160
- apiVersion: S(e, "api-version", d.apiVersion),
161
- filenameX: S(e, "filename") || S(e, "filename-x") || d.filenameX,
162
- filenameY: S(e, "filename-y", d.filenameY),
163
- imageListX: S(e, "image-list-x", d.imageListX),
164
- imageListY: S(e, "image-list-y", d.imageListY),
165
- indexZeroBase: parseInt(S(e, "index-zero-base", d.indexZeroBase), 10),
166
- amountX: parseInt(S(e, "amount-x", d.amountX), 10),
167
- amountY: parseInt(S(e, "amount-y", d.amountY), 10),
168
- speed: parseInt(S(e, "speed", d.speed), 10),
169
- dragSpeed: parseInt(S(e, "drag-speed", d.dragSpeed), 10),
170
- draggable: M(e, "draggable", d.draggable),
171
- swipeable: M(e, "swipeable", d.swipeable),
172
- keys: M(e, "keys", d.keys),
173
- keysReverse: M(e, "keys-reverse", d.keysReverse),
174
- autoplay: M(e, "autoplay", d.autoplay),
175
- autoplayBehavior: S(e, "autoplay-behavior", d.autoplayBehavior),
176
- playOnce: M(e, "play-once", d.playOnce),
177
- autoplayReverse: M(e, "autoplay-reverse", d.autoplayReverse),
178
- pointerZoom: parseFloat(S(e, "pointer-zoom", d.pointerZoom)),
179
- pointerZoomTrigger: S(e, "pointer-zoom-trigger", d.pointerZoomTrigger),
180
- fullscreen: M(e, "fullscreen") || M(e, "full-screen", d.fullscreen),
181
- magnifier: parseFloat(S(e, "magnifier", d.magnifier)),
158
+ }, Ri = (e) => ({
159
+ folder: k(e, "folder", d.folder),
160
+ apiVersion: k(e, "api-version", d.apiVersion),
161
+ filenameX: k(e, "filename") || k(e, "filename-x") || d.filenameX,
162
+ filenameY: k(e, "filename-y", d.filenameY),
163
+ imageListX: k(e, "image-list-x", d.imageListX),
164
+ imageListY: k(e, "image-list-y", d.imageListY),
165
+ indexZeroBase: parseInt(k(e, "index-zero-base", d.indexZeroBase), 10),
166
+ amountX: parseInt(k(e, "amount-x", d.amountX), 10),
167
+ amountY: parseInt(k(e, "amount-y", d.amountY), 10),
168
+ speed: parseInt(k(e, "speed", d.speed), 10),
169
+ dragSpeed: parseInt(k(e, "drag-speed", d.dragSpeed), 10),
170
+ draggable: P(e, "draggable", d.draggable),
171
+ swipeable: P(e, "swipeable", d.swipeable),
172
+ keys: P(e, "keys", d.keys),
173
+ keysReverse: P(e, "keys-reverse", d.keysReverse),
174
+ autoplay: P(e, "autoplay", d.autoplay),
175
+ autoplayBehavior: k(e, "autoplay-behavior", d.autoplayBehavior),
176
+ playOnce: P(e, "play-once", d.playOnce),
177
+ autoplayReverse: P(e, "autoplay-reverse", d.autoplayReverse),
178
+ pointerZoom: parseFloat(k(e, "pointer-zoom", d.pointerZoom)),
179
+ pointerZoomTrigger: k(e, "pointer-zoom-trigger", d.pointerZoomTrigger),
180
+ fullscreen: P(e, "fullscreen") || P(e, "full-screen", d.fullscreen),
181
+ magnifier: parseFloat(k(e, "magnifier", d.magnifier)),
182
182
  bottomCircleOffset: parseInt(
183
- S(e, "bottom-circle-offset", d.bottomCircleOffset),
183
+ k(e, "bottom-circle-offset", d.bottomCircleOffset),
184
184
  10
185
185
  ),
186
- ciToken: S(e, "responsive", d.ciToken),
187
- ciFilters: S(e, "filters", d.ciFilters),
188
- ciTransformation: S(e, "transformation", d.ciTransformation),
189
- lazyload: M(e, "lazyload", d.lazyload),
190
- dragReverse: M(e, "drag-reverse", d.dragReverse),
191
- stopAtEdges: M(e, "stop-at-edges", d.stopAtEdges),
192
- imageInfo: M(e, "info", d.imageInfo),
186
+ ciToken: k(e, "responsive", d.ciToken),
187
+ ciFilters: k(e, "filters", d.ciFilters),
188
+ ciTransformation: k(e, "transformation", d.ciTransformation),
189
+ lazyload: P(e, "lazyload", d.lazyload),
190
+ dragReverse: P(e, "drag-reverse", d.dragReverse),
191
+ stopAtEdges: P(e, "stop-at-edges", d.stopAtEdges),
192
+ imageInfo: P(e, "info", d.imageInfo),
193
193
  initialIconShown: !Zt(e, "initial-icon"),
194
194
  bottomCircle: !Zt(e, "bottom-circle"),
195
- hide360Logo: M(e, "hide-360-logo", d.hide360Logo),
196
- logoSrc: S(e, "logo-src", d.logoSrc),
197
- inertia: M(e, "inertia", d.inertia),
198
- pinchZoom: M(e, "pinch-zoom", d.pinchZoom),
195
+ hide360Logo: P(e, "hide-360-logo", d.hide360Logo),
196
+ logoSrc: k(e, "logo-src", d.logoSrc),
197
+ inertia: P(e, "inertia", d.inertia),
198
+ pinchZoom: P(e, "pinch-zoom", d.pinchZoom),
199
199
  hints: !Zt(e, "hints"),
200
- theme: S(e, "theme", d.theme),
201
- hotspotTrigger: S(e, "hotspot-trigger", d.hotspotTrigger),
200
+ theme: k(e, "theme", d.theme),
201
+ hotspotTrigger: k(e, "hotspot-trigger", d.hotspotTrigger),
202
202
  hotspotTimelineOnClick: !Zt(e, "hotspot-timeline-on-click"),
203
- aspectRatio: S(e, "aspect-ratio", d.aspectRatio)
204
- }), Zi = (e) => {
203
+ aspectRatio: k(e, "aspect-ratio", d.aspectRatio)
204
+ }), Hi = (e) => {
205
205
  const t = [];
206
206
  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)");
207
207
  const i = ["spin-x", "spin-y", "spin-xy", "spin-yx"];
208
208
  return e.autoplayBehavior && !i.includes(e.autoplayBehavior) && t.push(`autoplayBehavior should be one of: ${i.join(", ")}`), t.forEach((s) => {
209
209
  console.warn(`CloudImage 360: ${s}`);
210
210
  }), t.length === 0;
211
- }, Di = (e) => (Zi(e), {
211
+ }, Zi = (e) => (Hi(e), {
212
212
  folder: e.folder || d.folder,
213
213
  apiVersion: e.apiVersion || d.apiVersion,
214
214
  filenameX: e.filenameX || e.filename || d.filenameX,
@@ -264,20 +264,20 @@ const me = /* @__PURE__ */ ai(Ei), R = {
264
264
  onZoomOut: e.onZoomOut ?? d.onZoomOut,
265
265
  onDragStart: e.onDragStart ?? d.onDragStart,
266
266
  onDragEnd: e.onDragEnd ?? d.onDragEnd
267
- }), S = (e, t, i) => e.getAttribute(t) || e.getAttribute(`data-${t}`) || i, M = (e, t, i) => {
267
+ }), k = (e, t, i) => e.getAttribute(t) || e.getAttribute(`data-${t}`) || i, P = (e, t, i) => {
268
268
  if (!(e.hasAttribute(t) || e.hasAttribute(`data-${t}`))) return i;
269
- const o = S(e, t, null);
269
+ const o = k(e, t, null);
270
270
  return o !== "false" && o !== "0";
271
- }, Zt = (e, t) => S(e, t, null) === "false", Bi = (e = 1) => {
271
+ }, Zt = (e, t) => k(e, t, null) === "false", Di = (e = 1) => {
272
272
  const t = Math.round(window.devicePixelRatio || 1);
273
273
  return parseInt(e) * t;
274
- }, Wi = (e, t, i) => new URL(e).origin.includes("cloudimg") ? e : `https://${t}.cloudimg.io/${i}${e}`, Ni = ({ ciTransformation: e, responsiveWidth: t, ciFilters: i }) => {
274
+ }, Bi = (e, t, i) => new URL(e).origin.includes("cloudimg") ? e : `https://${t}.cloudimg.io/${i}${e}`, Wi = ({ ciTransformation: e, responsiveWidth: t, ciFilters: i }) => {
275
275
  const s = `width=${t}`, o = e || s, n = i ? `&f=${i}` : "";
276
276
  return `${o}${n}`;
277
- }, Ct = (e, t) => {
277
+ }, xt = (e, t) => {
278
278
  const { folder: i, apiVersion: s, filename: o = "", ciParams: n } = e, { ciToken: l, ciFilters: r, ciTransformation: a } = n || {}, c = `${i}${o}`;
279
279
  if (!l || !t) return c;
280
- const h = Ai.includes(s) ? null : s, u = h ? `${h}/` : "", f = Bi(t), p = Wi(c, l, u), I = Ni({
280
+ const h = Ai.includes(s) ? null : s, u = h ? `${h}/` : "", f = Di(t), p = Bi(c, l, u), I = Wi({
281
281
  ciTransformation: a,
282
282
  responsiveWidth: f,
283
283
  ciFilters: r
@@ -289,7 +289,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
289
289
  return `${s}?${n}`;
290
290
  const l = new URLSearchParams(o);
291
291
  return l.set(t, i), `${s}?${l.toString()}`;
292
- }, Vi = (e, t) => Fi(e, "width", t), ze = (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 }, (s, o) => e.replace("{index}", ze(o + 1, i))), ji = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), $i = ji ? 3 : 6, Gi = ({
292
+ }, Vi = (e, t) => Fi(e, "width", t), ze = (e, t = 0) => (e += "", e.length >= t ? e : new Array(t - e.length + 1).join("0") + e), Ni = (e, { amount: t = 0, indexZeroBase: i = 0 } = {}) => Array.from({ length: t }, (s, o) => e.replace("{index}", ze(o + 1, i))), zi = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent), ji = zi ? 3 : 6, $i = ({
293
293
  imagesUrls: e,
294
294
  onFirstImageLoad: t,
295
295
  onImageLoad: i,
@@ -300,12 +300,12 @@ const me = /* @__PURE__ */ ai(Ei), R = {
300
300
  let l = 0, r = 0;
301
301
  const a = e.length, c = [], h = [];
302
302
  let u = 0, f = 0;
303
- const p = [], I = (m, g, x = !1) => {
303
+ const p = [], I = (m, g, C = !1) => {
304
304
  const A = {
305
305
  message: `Failed to load image: ${m}`,
306
306
  url: m,
307
307
  index: g,
308
- isFirstImage: x
308
+ isFirstImage: C
309
309
  };
310
310
  h.push(A), r++, o == null || o({
311
311
  error: A,
@@ -316,47 +316,47 @@ const me = /* @__PURE__ */ ai(Ei), R = {
316
316
  }, b = () => {
317
317
  l === a && (s == null || s(c, { errorCount: r, errors: h }));
318
318
  }, v = () => {
319
- for (; u < $i && f < p.length; ) {
319
+ for (; u < ji && f < p.length; ) {
320
320
  const m = p[f];
321
321
  f++, O(e[m], m);
322
322
  }
323
323
  }, O = (m, g) => {
324
324
  u++;
325
- const x = new Image();
326
- x.crossOrigin = "anonymous", x.src = m, x.onload = async () => {
325
+ const C = new Image();
326
+ C.crossOrigin = "anonymous", C.src = m, C.onload = async () => {
327
327
  try {
328
- const A = await createImageBitmap(x), k = {
328
+ const A = await createImageBitmap(C), S = {
329
329
  src: m,
330
330
  bitmapImage: A,
331
- naturalWidth: x.naturalWidth,
332
- naturalHeight: x.naturalHeight
331
+ naturalWidth: C.naturalWidth,
332
+ naturalHeight: C.naturalHeight
333
333
  };
334
- x.onload = null, x.onerror = null, x.src = "", l++, u--, c[g] = k, i == null || i(k, g), b(), v();
334
+ C.onload = null, C.onerror = null, C.src = "", l++, u--, c[g] = S, i == null || i(S, g), b(), v();
335
335
  } catch {
336
- x.onload = null, x.onerror = null, x.src = "", l++, u--, I(m, g), b(), v();
336
+ C.onload = null, C.onerror = null, C.src = "", l++, u--, I(m, g), b(), v();
337
337
  }
338
- }, x.onerror = () => {
339
- x.onload = null, x.onerror = null, x.src = "", l++, u--, I(m, g), b(), v();
338
+ }, C.onerror = () => {
339
+ C.onload = null, C.onerror = null, C.src = "", l++, u--, I(m, g), b(), v();
340
340
  };
341
341
  }, E = (m) => {
342
342
  for (let g = 0; g < e.length; g++)
343
343
  g !== m && p.push(g);
344
344
  f = 0, v();
345
- }, w = new Image(), y = n ? e.length - 1 : 0, C = e[y];
346
- w.crossOrigin = "anonymous", w.src = C, w.onload = async () => {
345
+ }, w = new Image(), y = n ? e.length - 1 : 0, x = e[y];
346
+ w.crossOrigin = "anonymous", w.src = x, w.onload = async () => {
347
347
  try {
348
348
  const m = await createImageBitmap(w), g = {
349
- src: C,
349
+ src: x,
350
350
  bitmapImage: m,
351
351
  naturalWidth: w.naturalWidth,
352
352
  naturalHeight: w.naturalHeight
353
353
  };
354
354
  w.onload = null, w.onerror = null, w.src = "", c[y] = g, l++, t == null || t(g), i == null || i(g, y), a === 1 ? b() : E(y);
355
355
  } catch {
356
- w.onload = null, w.onerror = null, w.src = "", l++, I(C, y, !0), a === 1 ? b() : E(y);
356
+ w.onload = null, w.onerror = null, w.src = "", l++, I(x, y, !0), a === 1 ? b() : E(y);
357
357
  }
358
358
  }, w.onerror = () => {
359
- w.onload = null, w.onerror = null, w.src = "", l++, I(C, y, !0), a === 1 ? b() : E(y);
359
+ w.onload = null, w.onerror = null, w.src = "", l++, I(x, y, !0), a === 1 ? b() : E(y);
360
360
  };
361
361
  }, ye = ({
362
362
  cdnPathX: e,
@@ -377,21 +377,21 @@ const me = /* @__PURE__ */ ai(Ei), R = {
377
377
  };
378
378
  l == null || l(c, h, O);
379
379
  }
380
- }, v = ({ cdnPath: O, config: E, orientation: w, loadedImages: y, loadStats: C, onFirstImageLoad: m }) => {
381
- const g = w === Y.X, x = E.imageList.length ? E.imageList : zi(O, E);
382
- Gi({
383
- imagesUrls: x,
380
+ }, v = ({ cdnPath: O, config: E, orientation: w, loadedImages: y, loadStats: x, onFirstImageLoad: m }) => {
381
+ const g = w === Y.X, C = E.imageList.length ? E.imageList : Ni(O, E);
382
+ $i({
383
+ imagesUrls: C,
384
384
  onFirstImageLoad: m,
385
- onImageLoad: (A, k) => {
386
- n == null || n(A, k, w), y[k] = A;
385
+ onImageLoad: (A, S) => {
386
+ n == null || n(A, S, w), y[S] = A;
387
387
  },
388
388
  onError: (A) => {
389
389
  r == null || r({ ...A, orientation: w });
390
390
  },
391
- onAllImagesLoad: (A, k) => {
391
+ onAllImagesLoad: (A, S) => {
392
392
  y.length = 0, A.forEach((T, X) => {
393
393
  T && (y[X] = T);
394
- }), C.errorCount = k.errorCount, C.errors = k.errors.map((T) => ({ ...T, orientation: w })), a[g ? "x" : "y"] = !0, b();
394
+ }), x.errorCount = S.errorCount, x.errors = S.errors.map((T) => ({ ...T, orientation: w })), a[g ? "x" : "y"] = !0, b();
395
395
  },
396
396
  autoplayReverse: E.autoplayReverse
397
397
  });
@@ -411,7 +411,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
411
411
  loadStats: f,
412
412
  onFirstImageLoad: p ? void 0 : o
413
413
  }) : a.y = !0, !p && !I && b();
414
- }, Ui = `
414
+ }, Gi = `
415
415
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1052 156" aria-hidden="true">
416
416
  <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"/>
417
417
  <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"/>
@@ -424,48 +424,78 @@ const me = /* @__PURE__ */ ai(Ei), R = {
424
424
  </svg>
425
425
  `, _i = (e) => {
426
426
  const t = document.createElement("div");
427
- return t.innerHTML = Ui, t.style.bottom = `${e}%`, t.className = "cloudimage-360-view-360-circle", t;
428
- }, Ki = `
429
- <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">
430
- <!-- Circular arrows -->
431
- <path d="M 75 50 A 25 25 0 1 1 50 25" stroke="currentColor" stroke-width="3"/>
432
- <path d="M 25 50 A 25 25 0 1 1 50 75" stroke="currentColor" stroke-width="3"/>
433
- <!-- Arrow heads -->
434
- <path d="M 50 25 L 56 31 M 50 25 L 56 19" stroke="currentColor" stroke-width="3"/>
435
- <path d="M 50 75 L 44 69 M 50 75 L 44 81" stroke="currentColor" stroke-width="3"/>
436
- <!-- 360 text -->
437
- <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>
427
+ return t.innerHTML = Gi, t.style.bottom = `${e}%`, t.className = "cloudimage-360-view-360-circle", t;
428
+ }, Ui = `
429
+ <svg width="150" height="87" viewBox="0 0 150 87" xmlns="http://www.w3.org/2000/svg">
430
+ <g clip-path="url(#clip0_751_188)">
431
+ <g filter="url(#filter0_d_751_188)">
432
+ <path d="M112.566 15.2227C112.598 15.706 112.529 16.1906 112.364 16.6458C112.198 17.101 111.94 17.5167 111.605 17.8665C111.27 18.2163 110.866 18.4925 110.418 18.6775C109.971 18.8626 109.489 18.9524 109.005 18.9412C108.532 18.955 108.06 18.871 107.621 18.6944C107.181 18.5178 106.782 18.2524 106.45 17.9148C106.117 17.5772 105.858 17.1747 105.688 16.7323C105.518 16.29 105.442 15.8174 105.463 15.344C105.437 14.8591 105.511 14.374 105.68 13.9188C105.849 13.4635 106.109 13.0477 106.445 12.697C106.781 12.3463 107.186 12.0681 107.633 11.8797C108.081 11.6912 108.562 11.5965 109.048 11.6013C111.213 11.5952 112.566 13.1299 112.566 15.2227ZM106.961 15.2895C106.961 16.7574 107.913 17.825 109.03 17.825C110.146 17.825 111.08 16.8059 111.08 15.2652C111.08 14.1551 110.473 12.7053 109.005 12.7053C107.537 12.7053 106.961 14.0884 106.961 15.2895Z" fill="white"/>
433
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M110.164 12.3811C110.552 12.5859 110.861 12.8886 111.093 13.2348C111.506 13.8535 111.681 14.6156 111.681 15.2652C111.681 16.5122 111.13 17.5742 110.261 18.0908C110.603 17.9385 110.912 17.7212 111.171 17.4507C111.448 17.1612 111.662 16.8172 111.799 16.4404C111.936 16.0637 111.993 15.6626 111.966 15.2626L111.965 15.2427V15.2227C111.965 14.3058 111.67 13.5543 111.182 13.0378C110.913 12.7532 110.573 12.5262 110.164 12.3811ZM108.002 18.1944C107.011 17.7212 106.36 16.5793 106.36 15.2895C106.36 14.6064 106.522 13.8357 106.931 13.2157C107.06 13.021 107.212 12.8427 107.389 12.6885C107.204 12.81 107.033 12.9523 106.88 13.1128C106.6 13.4042 106.384 13.7497 106.244 14.128C106.103 14.5062 106.042 14.9093 106.063 15.3122L106.065 15.3415L106.063 15.3708C106.046 15.7615 106.109 16.1517 106.25 16.5168C106.39 16.882 106.604 17.2143 106.878 17.493C107.153 17.7717 107.482 17.9908 107.845 18.1366C107.897 18.1574 107.949 18.1767 108.002 18.1944ZM109.05 11.0002C108.483 10.9951 107.922 11.1058 107.4 11.3256C106.877 11.5459 106.404 11.8711 106.011 12.2811C105.619 12.6912 105.314 13.1773 105.116 13.7096C104.922 14.2327 104.835 14.7894 104.861 15.3466C104.841 15.8928 104.931 16.4375 105.127 16.9478C105.327 17.4673 105.631 17.9401 106.022 18.3366C106.412 18.7331 106.88 19.0448 107.397 19.2522C107.908 19.4577 108.456 19.5564 109.007 19.5425C109.569 19.5533 110.128 19.448 110.648 19.2331C111.173 19.0162 111.646 18.6924 112.039 18.2823C112.432 17.8722 112.735 17.3848 112.929 16.8512C113.121 16.3239 113.202 15.7628 113.167 15.203C113.163 14.035 112.782 12.9803 112.056 12.2121C111.323 11.4362 110.28 10.9976 109.05 11.0002ZM107.934 13.8783C107.689 14.2501 107.562 14.7714 107.562 15.2895C107.562 16.5291 108.34 17.2239 109.03 17.2239C109.716 17.2239 110.479 16.5808 110.479 15.2652C110.479 14.8047 110.35 14.2869 110.093 13.9031C109.851 13.5403 109.507 13.3065 109.005 13.3065C108.495 13.3065 108.163 13.5319 107.934 13.8783Z" fill="white"/>
434
+ <path d="M94.3617 40.718H95.5396C99.9046 40.718 103.369 37.1844 103.369 32.8193V19.5164C103.369 15.1514 99.8353 11.6871 95.5396 11.6871H94.3617C89.9967 11.6871 86.5324 15.2207 86.5324 19.5164V32.8193C86.4631 37.1844 90.0659 40.718 94.3617 40.718ZM91.1052 19.5164C91.1052 17.715 92.5602 16.26 94.3617 16.26H95.5396C97.341 16.26 98.796 17.715 98.796 19.5164V32.8193C98.796 34.6208 97.341 36.0758 95.5396 36.0758H94.3617C92.5602 36.0758 91.1052 34.6208 91.1052 32.8193V19.5164Z" fill="white"/>
435
+ <path d="M74.6152 40.7179C79.2574 40.7179 82.9988 36.9765 82.9988 32.3343C82.9988 27.6922 79.2574 23.9507 74.6152 23.9507C73.9916 23.9507 73.2988 24.02 72.7445 24.1586C73.9223 21.4564 75.7931 18.685 78.7724 16.4678C79.8117 15.7749 80.0195 14.3199 79.2574 13.2806C78.5645 12.2413 77.1095 12.0335 76.0702 12.7956C67.8944 18.8928 66.578 28.0386 66.3701 31.2258C66.3701 31.2258 66.3701 31.2257 66.3701 31.295C66.3009 31.6415 66.3009 31.9879 66.3009 32.4036C66.2316 36.9072 70.0423 40.7179 74.6152 40.7179ZM74.6152 28.4543C76.6938 28.4543 78.3566 30.1865 78.3566 32.1958C78.3566 34.2051 76.6245 35.9372 74.6152 35.9372C72.6752 35.9372 71.0123 34.3436 70.8737 32.4729C70.8737 32.4036 70.943 32.265 70.943 32.1265C70.943 32.1265 70.943 31.9186 71.0123 31.5722C71.2202 29.84 72.8138 28.4543 74.6152 28.4543Z" fill="white"/>
436
+ <path d="M54.3143 36.0758C52.2358 36.0758 50.5729 34.3436 50.5729 32.3343C50.5729 31.0179 49.5336 30.0479 48.2864 30.0479C46.97 30.0479 46 31.0872 46 32.3343C46 36.9765 49.7414 40.718 54.3836 40.718C59.0258 40.718 62.7672 36.9765 62.7672 32.1958C62.7672 29.84 61.7279 27.6229 60.0651 26.0986C61.7279 24.505 62.7672 22.4264 62.7672 20.0014C62.7672 15.3592 59.0258 11.6178 54.3836 11.6178C49.7414 11.6178 46 15.3592 46 20.0014C46 21.3178 47.0393 22.2879 48.2864 22.2879C49.6029 22.2879 50.5729 21.2486 50.5729 20.0014C50.5729 17.9228 52.305 16.26 54.3143 16.26C56.3236 16.26 58.0558 17.9921 58.0558 20.0014C58.0558 22.0107 56.3236 23.7429 54.3143 23.7429C52.9979 23.7429 52.0279 24.7822 52.0279 26.0293C52.0279 27.3458 53.0672 28.3157 54.3143 28.3157C56.3929 28.3157 58.0558 30.0479 58.0558 32.0572C58.1251 34.3436 56.4622 36.0758 54.3143 36.0758Z" fill="white"/>
437
+ </g>
438
+ <g filter="url(#filter1_d_751_188)">
439
+ <path d="M26.8762 25.5149C27.5172 25.2883 28.1927 25.7659 28.1927 26.4458V33.5925C28.1927 34.0014 27.9493 34.3677 27.5768 34.5364C23.692 36.2966 3.80303 46.5259 37.3945 58.1537C37.3945 58.1537 57.0291 63.5205 76.923 63.6974C77.4752 63.7023 77.9231 63.2541 77.9231 62.7018V57.8317C77.9231 57.0995 78.6841 56.6156 79.3472 56.9261L103.851 68.4011C104.598 68.7507 104.624 69.8027 103.897 70.1897L79.3926 83.2187C78.7265 83.5728 77.9231 83.0901 77.9231 82.3357V75.7982C77.9231 75.2459 77.5039 74.797 76.9517 74.7892C68.3815 74.6673 6 72.8926 6 47.0574C6 47.0574 6 32.8966 26.8762 25.5149Z" fill="white"/>
440
+ <path d="M111.768 58.2062C110.979 57.639 111.335 56.0078 112.271 55.7479C118.431 54.037 131.443 49.0118 131.443 41.6445C131.443 34.2279 126.608 31.5583 124.732 30.8016C124.308 30.6306 124 30.2281 124 29.7708V26.2189C124 25.5882 124.573 25.1253 125.18 25.2967C129.233 26.4408 142.336 31.2278 142.336 45.2982C142.336 45.2982 142.336 58.9459 122.524 65.4395C122.224 65.5379 121.887 65.4876 121.63 65.3031L111.768 58.2062Z" fill="white"/>
441
+ </g>
442
+ </g>
443
+ <defs>
444
+ <filter id="filter0_d_751_188" x="38" y="3" width="83.1749" height="45.718" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
445
+ <feFlood flood-opacity="0" result="BackgroundImageFix"/>
446
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
447
+ <feOffset/>
448
+ <feGaussianBlur stdDeviation="4"/>
449
+ <feComposite in2="hardAlpha" operator="out"/>
450
+ <feColorMatrix type="matrix" values="0 0 0 0 0.133333 0 0 0 0 0.145098 0 0 0 0 0.160784 0 0 0 0.4 0"/>
451
+ <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_751_188"/>
452
+ <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_751_188" result="shape"/>
453
+ </filter>
454
+ <filter id="filter1_d_751_188" x="4" y="25.2607" width="140.336" height="63.0764" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB">
455
+ <feFlood flood-opacity="0" result="BackgroundImageFix"/>
456
+ <feColorMatrix in="SourceAlpha" type="matrix" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0" result="hardAlpha"/>
457
+ <feOffset dy="3"/>
458
+ <feGaussianBlur stdDeviation="1"/>
459
+ <feComposite in2="hardAlpha" operator="out"/>
460
+ <feColorMatrix type="matrix" values="0 0 0 0 0.301961 0 0 0 0 0.360784 0 0 0 0 0.454902 0 0 0 0.4 0"/>
461
+ <feBlend mode="normal" in2="BackgroundImageFix" result="effect1_dropShadow_751_188"/>
462
+ <feBlend mode="normal" in="SourceGraphic" in2="effect1_dropShadow_751_188" result="shape"/>
463
+ </filter>
464
+ <clipPath id="clip0_751_188">
465
+ <rect width="150" height="87" fill="white"/>
466
+ </clipPath>
467
+ </defs>
438
468
  </svg>
439
- `, Ji = (e) => {
469
+ `, Ki = (e) => {
440
470
  const t = document.createElement("div");
441
- 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 = Ki, t;
442
- }, qi = (e, t) => {
471
+ 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 = Ui, t;
472
+ }, Ji = (e, t) => {
443
473
  const { width: i, height: s } = t, o = document.createElement("canvas");
444
474
  return o.width = i, o.height = s, o.style.width = "100%", o.style.height = "auto", e.appendChild(o), o;
445
- }, Qi = () => {
475
+ }, qi = () => {
446
476
  const e = document.createElement("button");
447
477
  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;
448
- }, ts = () => {
478
+ }, Qi = () => {
449
479
  const e = document.createElement("button");
450
480
  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;
451
481
  }, be = (e) => {
452
482
  const t = document.createElement("div");
453
483
  return t.className = "cloudimage-360-icons-container", e.appendChild(t), t;
454
- }, es = (e) => {
484
+ }, ts = (e) => {
455
485
  const t = document.createElement("div");
456
486
  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;
457
- }, is = () => {
487
+ }, es = () => {
458
488
  const e = document.createElement("button");
459
489
  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;
460
- }, ss = () => {
490
+ }, is = () => {
461
491
  const e = document.createElement("button");
462
492
  return e.className = "cloudimage-360-button cloudimage-360-zoom-out-button", e.setAttribute("aria-label", "Zoom out"), e.setAttribute("type", "button"), e.innerHTML = '<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="11" cy="11" r="8"/><path d="m21 21-4.3-4.3"/><path d="M8 11h6"/></svg>', e;
463
- }, os = (e) => {
493
+ }, ss = (e) => {
464
494
  const t = document.createElement("div");
465
- t.className = "cloudimage-initial-icon";
495
+ t.className = "cloudimage-360-loader";
466
496
  const i = document.createElement("span");
467
497
  return i.className = "percentage", i.innerText = "0%", t.appendChild(i), e.appendChild(t), t;
468
- }, ns = (e) => {
498
+ }, os = (e) => {
469
499
  const t = document.createElement("div");
470
500
  t.className = "cloudimage-360-fullscreen-modal";
471
501
  const i = e.cloneNode();
@@ -473,19 +503,19 @@ const me = /* @__PURE__ */ ai(Ei), R = {
473
503
  }, qt = (e, t) => {
474
504
  const i = e.querySelector(t);
475
505
  i && i.parentNode.removeChild(i);
476
- }, rs = () => {
506
+ }, ns = () => {
477
507
  const e = document.createElement("div");
478
508
  return e.className = "cloudimage-loading-spinner", e;
479
- }, as = () => {
509
+ }, rs = () => {
480
510
  const e = document.createElement("div");
481
511
  return e.className = "cloudimage-360-transition-overlay", e;
482
- }, ls = (e) => {
512
+ }, as = (e) => {
483
513
  const t = document.createElement("div");
484
514
  return t.className = "cloudimage-360-hotspot-container", e.appendChild(t), t;
485
- }, cs = (e) => {
515
+ }, ls = (e) => {
486
516
  const t = document.createElement("div");
487
517
  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;
488
- }, hs = (e, t) => {
518
+ }, cs = (e, t) => {
489
519
  e && (e.textContent = "", setTimeout(() => {
490
520
  e.textContent = t;
491
521
  }, 50));
@@ -504,7 +534,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
504
534
  pinch: "Pinch to zoom",
505
535
  keys: "Use arrow keys",
506
536
  fullscreen: "Click for fullscreen"
507
- }, ds = (e, t = {}) => {
537
+ }, hs = (e, t = {}) => {
508
538
  const i = document.createElement("div");
509
539
  i.className = "cloudimage-360-hint-item";
510
540
  let s = we[e];
@@ -518,31 +548,31 @@ const me = /* @__PURE__ */ ai(Ei), R = {
518
548
  s.className = "cloudimage-360-hints-overlay", s.setAttribute("role", "tooltip"), s.setAttribute("aria-label", "Interaction hints");
519
549
  const o = document.createElement("div");
520
550
  return o.className = "cloudimage-360-hints-container", t.forEach((n) => {
521
- je[n] && o.appendChild(ds(n, i));
551
+ je[n] && o.appendChild(hs(n, i));
522
552
  }), s.appendChild(o), e.appendChild(s), s;
523
- }, xe = (e, t) => t ? ["swipe"] : ["drag", "click"], Ce = (e) => {
553
+ }, Ce = (e, t) => t ? ["swipe", "pinch"] : ["drag", "click"], xe = (e) => {
524
554
  e && e.classList.add("visible");
525
- }, us = (e) => {
555
+ }, ds = (e) => {
526
556
  e && (e.classList.remove("visible"), e.classList.add("hiding"), setTimeout(() => {
527
557
  e.classList.remove("hiding");
528
558
  }, 300));
529
- }, ps = (e) => {
559
+ }, us = (e) => {
530
560
  if (!e || typeof e != "object") return null;
531
561
  const t = Object.keys(e).map((s) => parseInt(s, 10)).filter((s) => !isNaN(s)).sort((s, o) => s - o);
532
562
  if (t.length === 0) return null;
533
563
  const i = Math.floor(t.length / 2);
534
564
  return t[i];
535
- }, ms = (e) => {
565
+ }, ps = (e) => {
536
566
  const t = [];
537
567
  return !e || !Array.isArray(e) || e.forEach((i, s) => {
538
- const o = ps(i.positions);
568
+ const o = us(i.positions);
539
569
  o !== null && t.push({
540
570
  id: i.id || `hotspot-${s}`,
541
571
  frame: o,
542
572
  label: i.label || null
543
573
  });
544
574
  }), t;
545
- }, fs = 400, vs = (e, t, i, s) => {
575
+ }, ms = 400, fs = (e, t, i, s) => {
546
576
  const o = document.createElement("button");
547
577
  o.className = "cloudimage-360-hotspot-timeline-dot", o.setAttribute("type", "button"), o.setAttribute("aria-label", s || `Go to hotspot at frame ${t + 1}`), o.setAttribute("data-frame", t.toString()), o.setAttribute("data-hotspot-id", e);
548
578
  const n = i > 1 ? t / (i - 1) * 100 : 0;
@@ -553,7 +583,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
553
583
  o.addEventListener("mouseenter", () => {
554
584
  r = setTimeout(() => {
555
585
  l.classList.add("visible");
556
- }, fs);
586
+ }, ms);
557
587
  }), o.addEventListener("mouseleave", () => {
558
588
  r && (clearTimeout(r), r = null), l.classList.remove("visible");
559
589
  }), o.addEventListener("click", () => {
@@ -561,8 +591,8 @@ const me = /* @__PURE__ */ ai(Ei), R = {
561
591
  });
562
592
  }
563
593
  return o;
564
- }, gs = (e, t, i) => {
565
- const s = ms(i);
594
+ }, vs = (e, t, i) => {
595
+ const s = ps(i);
566
596
  if (s.length === 0) return null;
567
597
  const o = document.createElement("div");
568
598
  o.className = "cloudimage-360-hotspot-timeline", o.setAttribute("role", "navigation"), o.setAttribute("aria-label", "Hotspot timeline navigation");
@@ -570,20 +600,20 @@ const me = /* @__PURE__ */ ai(Ei), R = {
570
600
  n.className = "cloudimage-360-hotspot-timeline-track";
571
601
  const l = document.createElement("div");
572
602
  return l.className = "cloudimage-360-hotspot-timeline-indicator", s.forEach(({ id: r, frame: a, label: c }) => {
573
- const h = vs(r, a, t, c);
603
+ const h = fs(r, a, t, c);
574
604
  n.appendChild(h);
575
605
  }), n.appendChild(l), o.appendChild(n), e.appendChild(o), {
576
606
  element: o,
577
607
  indicator: l,
578
608
  hotspotFrames: s
579
609
  };
580
- }, ys = (e, t, i) => {
610
+ }, gs = (e, t, i) => {
581
611
  if (!e) return;
582
612
  const s = i > 1 ? t / (i - 1) * 100 : 0;
583
613
  e.style.left = `${s}%`;
584
- }, bs = (e) => {
614
+ }, ys = (e) => {
585
615
  e && e.classList.add("visible");
586
- }, ws = (e) => {
616
+ }, bs = (e) => {
587
617
  e && e.classList.remove("visible");
588
618
  }, Qt = (e, t = []) => {
589
619
  if (!e) return t;
@@ -592,13 +622,13 @@ const me = /* @__PURE__ */ ai(Ei), R = {
592
622
  } catch (i) {
593
623
  return console.warn("CloudImage 360: Failed to parse JSON:", i.message), t;
594
624
  }
595
- }, Is = (e, t) => {
625
+ }, ws = (e, t) => {
596
626
  const [i, s] = e.split("?");
597
627
  if (!s) return e;
598
628
  const o = new RegExp(`^${t}=|&${t}=`), n = s.split("&").filter((l) => !o.test(l)).join("&");
599
629
  return n ? `${i}?${n}` : i;
600
- }, xs = (e) => {
601
- const t = Is(e, "width"), i = t.includes("?") ? "&" : "?";
630
+ }, Is = (e) => {
631
+ const t = ws(e, "width"), i = t.includes("?") ? "&" : "?";
602
632
  return `${t}${i}width=${150 * devicePixelRatio}`;
603
633
  }, Cs = (e) => {
604
634
  const t = {
@@ -614,24 +644,24 @@ const me = /* @__PURE__ */ ai(Ei), R = {
614
644
  l.isIntersecting && (i(l.target), n.unobserve(l.target));
615
645
  });
616
646
  }, t).observe(e);
617
- }, Os = (e, t) => {
647
+ }, xs = (e, t) => {
618
648
  const i = ze(1, t);
619
649
  return e.replace("{index}", i);
620
- }, Es = (e, t) => {
650
+ }, Os = (e, t) => {
621
651
  const [i] = e, s = /(https?):\/\//i.test(i);
622
- return Ct({
652
+ return xt({
623
653
  ...t,
624
654
  folder: s ? "" : t.folder,
625
655
  filename: i
626
656
  });
627
- }, As = (e, t) => {
657
+ }, Es = (e, t) => {
628
658
  const { imageList: i, indexZeroBase: s } = t;
629
659
  if (i.length) {
630
660
  const o = Qt(i, null);
631
661
  if (o)
632
- return Es(o, t);
662
+ return Os(o, t);
633
663
  }
634
- return Os(e, s);
664
+ return xs(e, s);
635
665
  }, Oe = (e, t, i) => {
636
666
  const s = new Image();
637
667
  return s.setAttribute(t ? "data-src" : "src", e), s.className = i, s.style.cssText = `
@@ -644,7 +674,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
644
674
  filter: blur(10px);
645
675
  `, s;
646
676
  }, Ee = (e, t, i) => {
647
- const { innerBox: s, imageList: o, lazyload: n } = t || {}, [l] = o, r = l || As(e, t), a = xs(r), c = Oe(a, n, "cloudimage-lazy"), h = Oe(a, !1, "cloudimage-360-placeholder"), u = (f) => {
677
+ const { innerBox: s, imageList: o, lazyload: n } = t || {}, [l] = o, r = l || Es(e, t), a = Is(r), c = Oe(a, n, "cloudimage-lazy"), h = Oe(a, !1, "cloudimage-360-placeholder"), u = (f) => {
648
678
  qt(s, ".cloudimage-lazy"), i && i({
649
679
  event: f,
650
680
  width: c.width,
@@ -655,7 +685,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
655
685
  });
656
686
  };
657
687
  c.onload = u, s.appendChild(c), s.appendChild(h), Cs(c);
658
- }, ks = (e, t, i) => {
688
+ }, As = (e, t, i) => {
659
689
  const s = new Image();
660
690
  s.src = e, s.onload = (o) => {
661
691
  t && t({
@@ -682,7 +712,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
682
712
  u = Math.max(o / l, Math.min(u, s.offsetWidth - o / l)), f = Math.max(n / l, Math.min(f, s.offsetHeight - n / l)), i.style.left = `${u - o}px`, i.style.top = `${f - n}px`;
683
713
  const p = (u - a) * l - o + r, I = (f - c) * l - n + r;
684
714
  i.style.backgroundPosition = `-${p}px -${I}px`;
685
- }, Ts = (e, t, i, s, o, n) => {
715
+ }, ks = (e, t, i, s, o, n) => {
686
716
  const { x: l = 0, y: r = 0 } = i || {}, a = (t.offsetWidth - l * 2) * n, c = (t.offsetHeight - r * 2) * n;
687
717
  if (!o) return;
688
718
  o.setAttribute("class", "cloudimage-360-img-magnifier-glass"), t.prepend(o), o.style.backgroundImage = `url('${s.src}')`, o.style.backgroundSize = `${a}px ${c}px`;
@@ -702,10 +732,10 @@ const me = /* @__PURE__ */ ai(Ei), R = {
702
732
  v.preventDefault(), Jt(v, p, o);
703
733
  };
704
734
  o.addEventListener("mousemove", I), t.addEventListener("mousemove", I), t.addEventListener("touchmove", b);
705
- }, Ls = (e, t, i) => {
735
+ }, Ts = (e, t, i) => {
706
736
  const { clientX: s, clientY: o } = e, n = t.getBoundingClientRect(), l = t.width / (n.width * i), r = t.height / (n.height * i), a = (s - n.left) * l, c = (o - n.top) * r;
707
737
  return { offsetX: a, offsetY: c };
708
- }, Ps = (e, t, i) => {
738
+ }, Ls = (e, t, i) => {
709
739
  const s = e / i, o = t / i;
710
740
  return { zoomedWidth: s, zoomedHeight: o };
711
741
  }, Ms = ({
@@ -723,22 +753,22 @@ const me = /* @__PURE__ */ ai(Ei), R = {
723
753
  return c = Math.max(0, Math.min(c, u)), h = Math.max(0, Math.min(h, f)), { zoomOffsetX: c, zoomOffsetY: h };
724
754
  }, Ae = (e, { bottom: t, top: i }) => {
725
755
  e ? t() : i();
726
- }, ke = (e, { left: t, right: i }) => {
756
+ }, Se = (e, { left: t, right: i }) => {
727
757
  e ? t() : i();
728
- }, Ys = ({ autoplayBehavior: e, spinY: t, reversed: i, loopTriggers: s }) => {
758
+ }, Ps = ({ autoplayBehavior: e, spinY: t, reversed: i, loopTriggers: s }) => {
729
759
  switch (e) {
730
760
  case R.SPIN_XY:
731
761
  case R.SPIN_YX:
732
- t ? Ae(i, s) : ke(i, s);
762
+ t ? Ae(i, s) : Se(i, s);
733
763
  break;
734
764
  case R.SPIN_Y:
735
765
  Ae(i, s);
736
766
  break;
737
767
  case R.SPIN_X:
738
768
  default:
739
- ke(i, s);
769
+ Se(i, s);
740
770
  }
741
- }, Xs = ({
771
+ }, Ys = ({
742
772
  autoplayBehavior: e,
743
773
  activeImageX: t,
744
774
  activeImageY: i,
@@ -759,7 +789,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
759
789
  default:
760
790
  return l(t, s);
761
791
  }
762
- }, Rs = ({
792
+ }, Xs = ({
763
793
  autoplayBehavior: e,
764
794
  activeImageX: t,
765
795
  activeImageY: i,
@@ -770,7 +800,7 @@ const me = /* @__PURE__ */ ai(Ei), R = {
770
800
  }) => {
771
801
  const r = t === (n ? 0 : s - 1), a = i === (n ? 0 : o - 1);
772
802
  return e === R.SPIN_XY || e === R.SPIN_YX ? l === "x" && r || l === "y" && a : !1;
773
- }, Hs = (e, t, i) => {
803
+ }, Rs = (e, t, i) => {
774
804
  if (!i) return "x";
775
805
  if (!t) return "y";
776
806
  switch (e) {
@@ -784,21 +814,21 @@ const me = /* @__PURE__ */ ai(Ei), R = {
784
814
  default:
785
815
  return "x";
786
816
  }
787
- }, Zs = (e) => e === "x" ? "y" : "x", Se = (e, t) => {
788
- const i = [...ki];
789
- return t ? [...i, ...Si].includes(e) : i.includes(e);
817
+ }, Hs = (e) => e === "x" ? "y" : "x", ke = (e, t) => {
818
+ const i = [...Si];
819
+ return t ? [...i, ...ki].includes(e) : i.includes(e);
790
820
  }, Te = ({ deltaX: e, deltaY: t, reversed: i, allowSpinX: s, allowSpinY: o, threshold: n = 0 }) => {
791
821
  const l = s && !o || o && !s ? 0 : n, r = Math.abs(e), a = Math.abs(t);
792
822
  return s && 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;
793
- }, Ds = () => "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0, Bs = (e, t = 150) => {
823
+ }, Zs = () => "ontouchstart" in window || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0, Ds = (e, t = 150) => {
794
824
  let i;
795
825
  return function(...s) {
796
826
  clearTimeout(i), i = setTimeout(() => {
797
827
  e.apply(this, s);
798
828
  }, t);
799
829
  };
800
- }, $e = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHY9KHQsYSxlKT0+e2NvbnN0IHM9dC9lLG49YS9lO3JldHVybnt6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpufX0sej0oe3BvaW50ZXJYOnQscG9pbnRlclk6YSxpbWFnZURhdGE6ZSx6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpuLGRyYXdXaWR0aDppLGRyYXdIZWlnaHQ6Y30pPT57Y29uc3R7bmF0dXJhbFdpZHRoOmcsbmF0dXJhbEhlaWdodDp1fT1lO2xldCBmPXQvaSpnLXMvMixtPWEvYyp1LW4vMjtjb25zdCB4PU1hdGgubWF4KDAsZy1zKSxPPU1hdGgubWF4KDAsdS1uKTtyZXR1cm4gZj1NYXRoLm1heCgwLE1hdGgubWluKGYseCkpLG09TWF0aC5tYXgoMCxNYXRoLm1pbihtLE8pKSx7em9vbU9mZnNldFg6Zix6b29tT2Zmc2V0WTptfX07bGV0IG8saCxyLGQsbCx3O3NlbGYub25tZXNzYWdlPWFzeW5jIHQ9Pntjb25zdHthY3Rpb246YSxvZmZzY3JlZW46ZSxkZXZpY2VQaXhlbFJhdGlvOnMsaW1hZ2VEYXRhOm4sem9vbVNjYWxlOmkscG9pbnRlclg6Yyxwb2ludGVyWTpnLGltYWdlQXNwZWN0UmF0aW86dSxjb250YWluZXJXaWR0aDpmLGNvbnRhaW5lckhlaWdodDptfT10LmRhdGE7c3dpdGNoKGEpe2Nhc2UiaW5pdENhbnZhcyI6QyhlLHMpO2JyZWFrO2Nhc2UiYWRhcHRDYW52YXNTaXplIjpwKHUsZixtKTticmVhaztjYXNlImRyYXdJbWFnZU9uQ2FudmFzIjpJKG4saSxjLGcpO2JyZWFrfX07Y29uc3QgQz0odCxhKT0+e289dCxoPW8uZ2V0Q29udGV4dCgiMmQiKSxyPWF9LHA9KHQsYSxlKT0+e2NvbnN0IHM9YS9lO3c9dD5zLG8ud2lkdGg9YSpyLG8uaGVpZ2h0PWUqcixoLnNjYWxlKHIsciksdz8oZD1hLGw9YS90KToobD1lLGQ9ZSp0KSxoLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxoLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCJ9LEk9KHQ9e30sYT0xLGU9MCxzPTApPT57Y29uc3R7Yml0bWFwSW1hZ2U6bn09dDtpZighb3x8IW4pcmV0dXJuO2xldCBpLGM7aWYodz8oaT0wLGM9KG8uaGVpZ2h0L3ItbCkvMik6KGk9KG8ud2lkdGgvci1kKS8yLGM9MCksaC5jbGVhclJlY3QoMCwwLG8ud2lkdGgsby5oZWlnaHQpLGEhPT0xKXtjb25zdHtuYXR1cmFsV2lkdGg6ZyxuYXR1cmFsSGVpZ2h0OnV9PXQse3pvb21lZFdpZHRoOmYsem9vbWVkSGVpZ2h0Om19PXYoZyx1LGEpLHt6b29tT2Zmc2V0WDp4LHpvb21PZmZzZXRZOk99PXooe3BvaW50ZXJYOmUscG9pbnRlclk6cyxpbWFnZURhdGE6dCx6b29tZWRXaWR0aDpmLHpvb21lZEhlaWdodDptLGRyYXdXaWR0aDpkLGRyYXdIZWlnaHQ6bH0pO2guZHJhd0ltYWdlKG4seCxPLGYsbSxpLGMsZCxsKX1lbHNlIGguZHJhd0ltYWdlKG4saSxjLGQsbCl9fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FudmFzLndvcmtlci1DZzBma3BEMS5qcy5tYXAK", Ws = (e) => Uint8Array.from(atob(e), (t) => t.charCodeAt(0)), Le = typeof self < "u" && self.Blob && new Blob([Ws($e)], { type: "text/javascript;charset=utf-8" });
801
- function Ns(e) {
830
+ }, $e = "KGZ1bmN0aW9uKCl7InVzZSBzdHJpY3QiO2NvbnN0IHY9KHQsYSxlKT0+e2NvbnN0IHM9dC9lLG49YS9lO3JldHVybnt6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpufX0sej0oe3BvaW50ZXJYOnQscG9pbnRlclk6YSxpbWFnZURhdGE6ZSx6b29tZWRXaWR0aDpzLHpvb21lZEhlaWdodDpuLGRyYXdXaWR0aDppLGRyYXdIZWlnaHQ6Y30pPT57Y29uc3R7bmF0dXJhbFdpZHRoOmcsbmF0dXJhbEhlaWdodDp1fT1lO2xldCBmPXQvaSpnLXMvMixtPWEvYyp1LW4vMjtjb25zdCB4PU1hdGgubWF4KDAsZy1zKSxPPU1hdGgubWF4KDAsdS1uKTtyZXR1cm4gZj1NYXRoLm1heCgwLE1hdGgubWluKGYseCkpLG09TWF0aC5tYXgoMCxNYXRoLm1pbihtLE8pKSx7em9vbU9mZnNldFg6Zix6b29tT2Zmc2V0WTptfX07bGV0IG8saCxyLGQsbCx3O3NlbGYub25tZXNzYWdlPWFzeW5jIHQ9Pntjb25zdHthY3Rpb246YSxvZmZzY3JlZW46ZSxkZXZpY2VQaXhlbFJhdGlvOnMsaW1hZ2VEYXRhOm4sem9vbVNjYWxlOmkscG9pbnRlclg6Yyxwb2ludGVyWTpnLGltYWdlQXNwZWN0UmF0aW86dSxjb250YWluZXJXaWR0aDpmLGNvbnRhaW5lckhlaWdodDptfT10LmRhdGE7c3dpdGNoKGEpe2Nhc2UiaW5pdENhbnZhcyI6QyhlLHMpO2JyZWFrO2Nhc2UiYWRhcHRDYW52YXNTaXplIjpwKHUsZixtKTticmVhaztjYXNlImRyYXdJbWFnZU9uQ2FudmFzIjpJKG4saSxjLGcpO2JyZWFrfX07Y29uc3QgQz0odCxhKT0+e289dCxoPW8uZ2V0Q29udGV4dCgiMmQiKSxyPWF9LHA9KHQsYSxlKT0+e2NvbnN0IHM9YS9lO3c9dD5zLG8ud2lkdGg9YSpyLG8uaGVpZ2h0PWUqcixoLnNjYWxlKHIsciksdz8oZD1hLGw9YS90KToobD1lLGQ9ZSp0KSxoLmltYWdlU21vb3RoaW5nRW5hYmxlZD0hMCxoLmltYWdlU21vb3RoaW5nUXVhbGl0eT0iaGlnaCJ9LEk9KHQ9e30sYT0xLGU9MCxzPTApPT57Y29uc3R7Yml0bWFwSW1hZ2U6bn09dDtpZighb3x8IW4pcmV0dXJuO2xldCBpLGM7aWYodz8oaT0wLGM9KG8uaGVpZ2h0L3ItbCkvMik6KGk9KG8ud2lkdGgvci1kKS8yLGM9MCksaC5jbGVhclJlY3QoMCwwLG8ud2lkdGgsby5oZWlnaHQpLGEhPT0xKXtjb25zdHtuYXR1cmFsV2lkdGg6ZyxuYXR1cmFsSGVpZ2h0OnV9PXQse3pvb21lZFdpZHRoOmYsem9vbWVkSGVpZ2h0Om19PXYoZyx1LGEpLHt6b29tT2Zmc2V0WDp4LHpvb21PZmZzZXRZOk99PXooe3BvaW50ZXJYOmUscG9pbnRlclk6cyxpbWFnZURhdGE6dCx6b29tZWRXaWR0aDpmLHpvb21lZEhlaWdodDptLGRyYXdXaWR0aDpkLGRyYXdIZWlnaHQ6bH0pO2guZHJhd0ltYWdlKG4seCxPLGYsbSxpLGMsZCxsKX1lbHNlIGguZHJhd0ltYWdlKG4saSxjLGQsbCl9fSkoKTsKLy8jIHNvdXJjZU1hcHBpbmdVUkw9Y2FudmFzLndvcmtlci1DZzBma3BEMS5qcy5tYXAK", Bs = (e) => Uint8Array.from(atob(e), (t) => t.charCodeAt(0)), Le = typeof self < "u" && self.Blob && new Blob([Bs($e)], { type: "text/javascript;charset=utf-8" });
831
+ function Ws(e) {
802
832
  let t;
803
833
  try {
804
834
  if (t = Le && (self.URL || self.webkitURL).createObjectURL(Le), !t) throw "";
@@ -872,7 +902,7 @@ class Fs {
872
902
  if (!this.canvas || !this.ctx || !n) return;
873
903
  let l, r;
874
904
  if (this.wideImage ? (l = 0, r = (this.canvas.height / this.dpr - this.drawHeight) / 2) : (l = (this.canvas.width / this.dpr - this.drawWidth) / 2, r = 0), this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height), i !== 1) {
875
- const { naturalWidth: a, naturalHeight: c } = t, { zoomedWidth: h, zoomedHeight: u } = Ps(a, c, i), { zoomOffsetX: f, zoomOffsetY: p } = Ms({
905
+ const { naturalWidth: a, naturalHeight: c } = t, { zoomedWidth: h, zoomedHeight: u } = Ls(a, c, i), { zoomOffsetX: f, zoomOffsetY: p } = Ms({
876
906
  pointerX: s,
877
907
  pointerY: o,
878
908
  imageData: t,
@@ -955,7 +985,7 @@ const Vs = /* @__PURE__ */ new Set([
955
985
  "lineargradient",
956
986
  "radialgradient",
957
987
  "stop"
958
- ]), Pe = {
988
+ ]), Me = {
959
989
  a: ["href", "title", "target", "rel"],
960
990
  img: ["src", "alt", "title", "width", "height"],
961
991
  button: ["type", "disabled", "name", "value"],
@@ -983,12 +1013,12 @@ const Vs = /* @__PURE__ */ new Set([
983
1013
  clippath: ["id"],
984
1014
  mask: ["id"],
985
1015
  "*": ["class", "id", "style"]
986
- }, zs = [
1016
+ }, Ns = [
987
1017
  /javascript:/gi,
988
1018
  /vbscript:/gi,
989
1019
  /data:/gi,
990
1020
  /on\w+\s*=/gi
991
- ], js = (e) => {
1021
+ ], zs = (e) => {
992
1022
  if (typeof e != "string")
993
1023
  return "";
994
1024
  const t = document.createElement("template");
@@ -1006,8 +1036,8 @@ const Vs = /* @__PURE__ */ new Set([
1006
1036
  return;
1007
1037
  }
1008
1038
  const l = [
1009
- ...Pe[n] || [],
1010
- ...Pe["*"] || []
1039
+ ...Me[n] || [],
1040
+ ...Me["*"] || []
1011
1041
  ];
1012
1042
  if (Array.from(s.attributes).forEach((a) => {
1013
1043
  const c = a.name.toLowerCase();
@@ -1020,7 +1050,7 @@ const Vs = /* @__PURE__ */ new Set([
1020
1050
  return;
1021
1051
  }
1022
1052
  let h = a.value;
1023
- zs.forEach((u) => {
1053
+ Ns.forEach((u) => {
1024
1054
  u.test(h) && s.removeAttribute(a.name);
1025
1055
  });
1026
1056
  }), n === "a") {
@@ -1034,9 +1064,9 @@ const Vs = /* @__PURE__ */ new Set([
1034
1064
  }
1035
1065
  };
1036
1066
  return i(t.content), t.innerHTML;
1037
- }, $s = (e) => e === "x" ? Y.X : Y.Y, Gs = (e, t, i) => e.filter(
1038
- (s) => $s(s.orientation) === i && t in s.positions
1039
- ), Us = (e, t) => {
1067
+ }, js = (e) => e === "x" ? Y.X : Y.Y, $s = (e, t, i) => e.filter(
1068
+ (s) => js(s.orientation) === i && t in s.positions
1069
+ ), Gs = (e, t) => {
1040
1070
  const i = document.createElement("button");
1041
1071
  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;
1042
1072
  }, _s = (e) => {
@@ -1054,7 +1084,7 @@ const Vs = /* @__PURE__ */ new Set([
1054
1084
  };
1055
1085
  }
1056
1086
  return o;
1057
- }, Ks = (e) => [
1087
+ }, Us = (e) => [
1058
1088
  {
1059
1089
  name: "offset",
1060
1090
  options: {
@@ -1067,16 +1097,16 @@ const Vs = /* @__PURE__ */ new Set([
1067
1097
  boundary: e
1068
1098
  }
1069
1099
  }
1070
- ], Js = (e, t) => {
1100
+ ], Ks = (e, t) => {
1071
1101
  const i = document.createElement("div");
1072
- 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 = js(e) : i.textContent = e, document.body.appendChild(i), i;
1073
- }, qs = (e) => {
1102
+ 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 = zs(e) : i.textContent = e, document.body.appendChild(i), i;
1103
+ }, Js = (e) => {
1074
1104
  const t = [...e];
1075
1105
  return t.forEach((i, s) => {
1076
1106
  const o = { ..._s(i.positions) };
1077
1107
  t[s].initialPositions = o, t[s].positions = o;
1078
1108
  }), t;
1079
- }, Qs = ({
1109
+ }, qs = ({
1080
1110
  newWidth: e,
1081
1111
  newHeight: t,
1082
1112
  initialContainerSize: i,
@@ -1098,11 +1128,11 @@ const Vs = /* @__PURE__ */ new Set([
1098
1128
  }), { ...b, positions: v };
1099
1129
  });
1100
1130
  };
1101
- var H = "top", N = "bottom", F = "right", Z = "left", ie = "auto", St = [H, N, F, Z], mt = "start", At = "end", to = "clippingParents", Ge = "viewport", xt = "popper", eo = "reference", Me = /* @__PURE__ */ St.reduce(function(e, t) {
1131
+ var H = "top", F = "bottom", V = "right", Z = "left", ie = "auto", kt = [H, F, V, Z], mt = "start", At = "end", Qs = "clippingParents", Ge = "viewport", Ct = "popper", to = "reference", Pe = /* @__PURE__ */ kt.reduce(function(e, t) {
1102
1132
  return e.concat([t + "-" + mt, t + "-" + At]);
1103
- }, []), Ue = /* @__PURE__ */ [].concat(St, [ie]).reduce(function(e, t) {
1133
+ }, []), _e = /* @__PURE__ */ [].concat(kt, [ie]).reduce(function(e, t) {
1104
1134
  return e.concat([t, t + "-" + mt, t + "-" + At]);
1105
- }, []), io = "beforeRead", so = "read", oo = "afterRead", no = "beforeMain", ro = "main", ao = "afterMain", lo = "beforeWrite", co = "write", ho = "afterWrite", uo = [io, so, oo, no, ro, ao, lo, co, ho];
1135
+ }, []), eo = "beforeRead", io = "read", so = "afterRead", oo = "beforeMain", no = "main", ro = "afterMain", ao = "beforeWrite", lo = "write", co = "afterWrite", ho = [eo, io, so, oo, no, ro, ao, lo, co];
1106
1136
  function j(e) {
1107
1137
  return e ? (e.nodeName || "").toLowerCase() : null;
1108
1138
  }
@@ -1129,7 +1159,7 @@ function se(e) {
1129
1159
  var t = B(e).ShadowRoot;
1130
1160
  return e instanceof t || e instanceof ShadowRoot;
1131
1161
  }
1132
- function po(e) {
1162
+ function uo(e) {
1133
1163
  var t = e.state;
1134
1164
  Object.keys(t.elements).forEach(function(i) {
1135
1165
  var s = t.styles[i] || {}, o = t.attributes[i] || {}, n = t.elements[i];
@@ -1139,7 +1169,7 @@ function po(e) {
1139
1169
  }));
1140
1170
  });
1141
1171
  }
1142
- function mo(e) {
1172
+ function po(e) {
1143
1173
  var t = e.state, i = {
1144
1174
  popper: {
1145
1175
  position: t.options.strategy,
@@ -1163,32 +1193,32 @@ function mo(e) {
1163
1193
  });
1164
1194
  };
1165
1195
  }
1166
- const fo = {
1196
+ const mo = {
1167
1197
  name: "applyStyles",
1168
1198
  enabled: !0,
1169
1199
  phase: "write",
1170
- fn: po,
1171
- effect: mo,
1200
+ fn: uo,
1201
+ effect: po,
1172
1202
  requires: ["computeStyles"]
1173
1203
  };
1174
1204
  function z(e) {
1175
1205
  return e.split("-")[0];
1176
1206
  }
1177
- var it = Math.max, Nt = Math.min, ft = Math.round;
1207
+ var it = Math.max, Ft = Math.min, ft = Math.round;
1178
1208
  function te() {
1179
1209
  var e = navigator.userAgentData;
1180
1210
  return e != null && e.brands && Array.isArray(e.brands) ? e.brands.map(function(t) {
1181
1211
  return t.brand + "/" + t.version;
1182
1212
  }).join(" ") : navigator.userAgent;
1183
1213
  }
1184
- function _e() {
1214
+ function Ue() {
1185
1215
  return !/^((?!chrome|android).)*safari/i.test(te());
1186
1216
  }
1187
1217
  function vt(e, t, i) {
1188
1218
  t === void 0 && (t = !1), i === void 0 && (i = !1);
1189
1219
  var s = e.getBoundingClientRect(), o = 1, n = 1;
1190
1220
  t && W(e) && (o = e.offsetWidth > 0 && ft(s.width) / e.offsetWidth || 1, n = e.offsetHeight > 0 && ft(s.height) / e.offsetHeight || 1);
1191
- var l = st(e) ? B(e) : window, r = l.visualViewport, a = !_e() && i, c = (s.left + (a && r ? r.offsetLeft : 0)) / o, h = (s.top + (a && r ? r.offsetTop : 0)) / n, u = s.width / o, f = s.height / n;
1221
+ var l = st(e) ? B(e) : window, r = l.visualViewport, a = !Ue() && i, c = (s.left + (a && r ? r.offsetLeft : 0)) / o, h = (s.top + (a && r ? r.offsetTop : 0)) / n, u = s.width / o, f = s.height / n;
1192
1222
  return {
1193
1223
  width: u,
1194
1224
  height: f,
@@ -1226,7 +1256,7 @@ function Ke(e, t) {
1226
1256
  function J(e) {
1227
1257
  return B(e).getComputedStyle(e);
1228
1258
  }
1229
- function vo(e) {
1259
+ function fo(e) {
1230
1260
  return ["table", "td", "th"].indexOf(j(e)) >= 0;
1231
1261
  }
1232
1262
  function Q(e) {
@@ -1235,7 +1265,7 @@ function Q(e) {
1235
1265
  e.document
1236
1266
  )) || window.document).documentElement;
1237
1267
  }
1238
- function Vt(e) {
1268
+ function Nt(e) {
1239
1269
  return j(e) === "html" ? e : (
1240
1270
  // this is a quicker (but less type safe) way to save quite some bytes from the bundle
1241
1271
  // $FlowFixMe[incompatible-return]
@@ -1251,14 +1281,14 @@ function Ye(e) {
1251
1281
  return !W(e) || // https://github.com/popperjs/popper-core/issues/837
1252
1282
  J(e).position === "fixed" ? null : e.offsetParent;
1253
1283
  }
1254
- function go(e) {
1284
+ function vo(e) {
1255
1285
  var t = /firefox/i.test(te()), i = /Trident/i.test(te());
1256
1286
  if (i && W(e)) {
1257
1287
  var s = J(e);
1258
1288
  if (s.position === "fixed")
1259
1289
  return null;
1260
1290
  }
1261
- var o = Vt(e);
1291
+ var o = Nt(e);
1262
1292
  for (se(o) && (o = o.host); W(o) && ["html", "body"].indexOf(j(o)) < 0; ) {
1263
1293
  var n = J(o);
1264
1294
  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")
@@ -1268,17 +1298,17 @@ function go(e) {
1268
1298
  return null;
1269
1299
  }
1270
1300
  function Tt(e) {
1271
- for (var t = B(e), i = Ye(e); i && vo(i) && J(i).position === "static"; )
1301
+ for (var t = B(e), i = Ye(e); i && fo(i) && J(i).position === "static"; )
1272
1302
  i = Ye(i);
1273
- return i && (j(i) === "html" || j(i) === "body" && J(i).position === "static") ? t : i || go(e) || t;
1303
+ return i && (j(i) === "html" || j(i) === "body" && J(i).position === "static") ? t : i || vo(e) || t;
1274
1304
  }
1275
1305
  function ne(e) {
1276
1306
  return ["top", "bottom"].indexOf(e) >= 0 ? "x" : "y";
1277
1307
  }
1278
1308
  function Ot(e, t, i) {
1279
- return it(e, Nt(t, i));
1309
+ return it(e, Ft(t, i));
1280
1310
  }
1281
- function yo(e, t, i) {
1311
+ function go(e, t, i) {
1282
1312
  var s = Ot(e, t, i);
1283
1313
  return s > i ? i : s;
1284
1314
  }
@@ -1298,28 +1328,28 @@ function Qe(e, t) {
1298
1328
  return i[s] = e, i;
1299
1329
  }, {});
1300
1330
  }
1301
- var bo = function(t, i) {
1331
+ var yo = function(t, i) {
1302
1332
  return t = typeof t == "function" ? t(Object.assign({}, i.rects, {
1303
1333
  placement: i.placement
1304
- })) : t, qe(typeof t != "number" ? t : Qe(t, St));
1334
+ })) : t, qe(typeof t != "number" ? t : Qe(t, kt));
1305
1335
  };
1306
- function wo(e) {
1307
- var t, i = e.state, s = e.name, o = e.options, n = i.elements.arrow, l = i.modifiersData.popperOffsets, r = z(i.placement), a = ne(r), c = [Z, F].indexOf(r) >= 0, h = c ? "height" : "width";
1336
+ function bo(e) {
1337
+ var t, i = e.state, s = e.name, o = e.options, n = i.elements.arrow, l = i.modifiersData.popperOffsets, r = z(i.placement), a = ne(r), c = [Z, V].indexOf(r) >= 0, h = c ? "height" : "width";
1308
1338
  if (!(!n || !l)) {
1309
- var u = bo(o.padding, i), f = oe(n), p = a === "y" ? H : Z, I = a === "y" ? N : F, b = i.rects.reference[h] + i.rects.reference[a] - l[a] - i.rects.popper[h], v = l[a] - i.rects.reference[a], O = Tt(n), E = O ? a === "y" ? O.clientHeight || 0 : O.clientWidth || 0 : 0, w = b / 2 - v / 2, y = u[p], C = E - f[h] - u[I], m = E / 2 - f[h] / 2 + w, g = Ot(y, m, C), x = a;
1310
- i.modifiersData[s] = (t = {}, t[x] = g, t.centerOffset = g - m, t);
1339
+ var u = yo(o.padding, i), f = oe(n), p = a === "y" ? H : Z, I = a === "y" ? F : V, b = i.rects.reference[h] + i.rects.reference[a] - l[a] - i.rects.popper[h], v = l[a] - i.rects.reference[a], O = Tt(n), E = O ? a === "y" ? O.clientHeight || 0 : O.clientWidth || 0 : 0, w = b / 2 - v / 2, y = u[p], x = E - f[h] - u[I], m = E / 2 - f[h] / 2 + w, g = Ot(y, m, x), C = a;
1340
+ i.modifiersData[s] = (t = {}, t[C] = g, t.centerOffset = g - m, t);
1311
1341
  }
1312
1342
  }
1313
- function Io(e) {
1343
+ function wo(e) {
1314
1344
  var t = e.state, i = e.options, s = i.element, o = s === void 0 ? "[data-popper-arrow]" : s;
1315
1345
  o != null && (typeof o == "string" && (o = t.elements.popper.querySelector(o), !o) || Ke(t.elements.popper, o) && (t.elements.arrow = o));
1316
1346
  }
1317
- const xo = {
1347
+ const Io = {
1318
1348
  name: "arrow",
1319
1349
  enabled: !0,
1320
1350
  phase: "main",
1321
- fn: wo,
1322
- effect: Io,
1351
+ fn: bo,
1352
+ effect: wo,
1323
1353
  requires: ["popperOffsets"],
1324
1354
  requiresIfExists: ["preventOverflow"]
1325
1355
  };
@@ -1332,7 +1362,7 @@ var Co = {
1332
1362
  bottom: "auto",
1333
1363
  left: "auto"
1334
1364
  };
1335
- function Oo(e, t) {
1365
+ function xo(e, t) {
1336
1366
  var i = e.x, s = e.y, o = t.devicePixelRatio || 1;
1337
1367
  return {
1338
1368
  x: ft(i * o) / o || 0,
@@ -1348,29 +1378,29 @@ function Xe(e) {
1348
1378
  y: b
1349
1379
  };
1350
1380
  p = v.x, b = v.y;
1351
- var O = l.hasOwnProperty("x"), E = l.hasOwnProperty("y"), w = Z, y = H, C = window;
1381
+ var O = l.hasOwnProperty("x"), E = l.hasOwnProperty("y"), w = Z, y = H, x = window;
1352
1382
  if (c) {
1353
- var m = Tt(i), g = "clientHeight", x = "clientWidth";
1354
- if (m === B(i) && (m = Q(i), J(m).position !== "static" && r === "absolute" && (g = "scrollHeight", x = "scrollWidth")), m = m, o === H || (o === Z || o === F) && n === At) {
1355
- y = N;
1356
- var A = u && m === C && C.visualViewport ? C.visualViewport.height : (
1383
+ var m = Tt(i), g = "clientHeight", C = "clientWidth";
1384
+ if (m === B(i) && (m = Q(i), J(m).position !== "static" && r === "absolute" && (g = "scrollHeight", C = "scrollWidth")), m = m, o === H || (o === Z || o === V) && n === At) {
1385
+ y = F;
1386
+ var A = u && m === x && x.visualViewport ? x.visualViewport.height : (
1357
1387
  // $FlowFixMe[prop-missing]
1358
1388
  m[g]
1359
1389
  );
1360
1390
  b -= A - s.height, b *= a ? 1 : -1;
1361
1391
  }
1362
- if (o === Z || (o === H || o === N) && n === At) {
1363
- w = F;
1364
- var k = u && m === C && C.visualViewport ? C.visualViewport.width : (
1392
+ if (o === Z || (o === H || o === F) && n === At) {
1393
+ w = V;
1394
+ var S = u && m === x && x.visualViewport ? x.visualViewport.width : (
1365
1395
  // $FlowFixMe[prop-missing]
1366
- m[x]
1396
+ m[C]
1367
1397
  );
1368
- p -= k - s.width, p *= a ? 1 : -1;
1398
+ p -= S - s.width, p *= a ? 1 : -1;
1369
1399
  }
1370
1400
  }
1371
1401
  var T = Object.assign({
1372
1402
  position: r
1373
- }, c && Co), X = h === !0 ? Oo({
1403
+ }, c && Co), X = h === !0 ? xo({
1374
1404
  x: p,
1375
1405
  y: b
1376
1406
  }, B(i)) : {
@@ -1379,11 +1409,11 @@ function Xe(e) {
1379
1409
  };
1380
1410
  if (p = X.x, b = X.y, a) {
1381
1411
  var L;
1382
- return Object.assign({}, T, (L = {}, L[y] = E ? "0" : "", L[w] = O ? "0" : "", L.transform = (C.devicePixelRatio || 1) <= 1 ? "translate(" + p + "px, " + b + "px)" : "translate3d(" + p + "px, " + b + "px, 0)", L));
1412
+ return Object.assign({}, T, (L = {}, L[y] = E ? "0" : "", L[w] = O ? "0" : "", L.transform = (x.devicePixelRatio || 1) <= 1 ? "translate(" + p + "px, " + b + "px)" : "translate3d(" + p + "px, " + b + "px, 0)", L));
1383
1413
  }
1384
1414
  return Object.assign({}, T, (t = {}, t[y] = E ? b + "px" : "", t[w] = O ? p + "px" : "", t.transform = "", t));
1385
1415
  }
1386
- function Eo(e) {
1416
+ function Oo(e) {
1387
1417
  var t = e.state, i = e.options, s = i.gpuAcceleration, o = s === void 0 ? !0 : s, n = i.adaptive, l = n === void 0 ? !0 : n, r = i.roundOffsets, a = r === void 0 ? !0 : r, c = {
1388
1418
  placement: z(t.placement),
1389
1419
  variation: gt(t.placement),
@@ -1406,17 +1436,17 @@ function Eo(e) {
1406
1436
  "data-popper-placement": t.placement
1407
1437
  });
1408
1438
  }
1409
- const Ao = {
1439
+ const Eo = {
1410
1440
  name: "computeStyles",
1411
1441
  enabled: !0,
1412
1442
  phase: "beforeWrite",
1413
- fn: Eo,
1443
+ fn: Oo,
1414
1444
  data: {}
1415
1445
  };
1416
1446
  var Dt = {
1417
1447
  passive: !0
1418
1448
  };
1419
- function ko(e) {
1449
+ function Ao(e) {
1420
1450
  var t = e.state, i = e.instance, s = e.options, o = s.scroll, n = o === void 0 ? !0 : o, l = s.resize, r = l === void 0 ? !0 : l, a = B(t.elements.popper), c = [].concat(t.scrollParents.reference, t.scrollParents.popper);
1421
1451
  return n && c.forEach(function(h) {
1422
1452
  h.addEventListener("scroll", i.update, Dt);
@@ -1432,10 +1462,10 @@ const So = {
1432
1462
  phase: "write",
1433
1463
  fn: function() {
1434
1464
  },
1435
- effect: ko,
1465
+ effect: Ao,
1436
1466
  data: {}
1437
1467
  };
1438
- var To = {
1468
+ var ko = {
1439
1469
  left: "right",
1440
1470
  right: "left",
1441
1471
  bottom: "top",
@@ -1443,16 +1473,16 @@ var To = {
1443
1473
  };
1444
1474
  function Bt(e) {
1445
1475
  return e.replace(/left|right|bottom|top/g, function(t) {
1446
- return To[t];
1476
+ return ko[t];
1447
1477
  });
1448
1478
  }
1449
- var Lo = {
1479
+ var To = {
1450
1480
  start: "end",
1451
1481
  end: "start"
1452
1482
  };
1453
1483
  function Re(e) {
1454
1484
  return e.replace(/start|end/g, function(t) {
1455
- return Lo[t];
1485
+ return To[t];
1456
1486
  });
1457
1487
  }
1458
1488
  function re(e) {
@@ -1465,11 +1495,11 @@ function re(e) {
1465
1495
  function ae(e) {
1466
1496
  return vt(Q(e)).left + re(e).scrollLeft;
1467
1497
  }
1468
- function Po(e, t) {
1498
+ function Lo(e, t) {
1469
1499
  var i = B(e), s = Q(e), o = i.visualViewport, n = s.clientWidth, l = s.clientHeight, r = 0, a = 0;
1470
1500
  if (o) {
1471
1501
  n = o.width, l = o.height;
1472
- var c = _e();
1502
+ var c = Ue();
1473
1503
  (c || !c && t === "fixed") && (r = o.offsetLeft, a = o.offsetTop);
1474
1504
  }
1475
1505
  return {
@@ -1493,7 +1523,7 @@ function le(e) {
1493
1523
  return /auto|scroll|overlay|hidden/.test(i + o + s);
1494
1524
  }
1495
1525
  function ti(e) {
1496
- return ["html", "body", "#document"].indexOf(j(e)) >= 0 ? e.ownerDocument.body : W(e) && le(e) ? e : ti(Vt(e));
1526
+ return ["html", "body", "#document"].indexOf(j(e)) >= 0 ? e.ownerDocument.body : W(e) && le(e) ? e : ti(Nt(e));
1497
1527
  }
1498
1528
  function Et(e, t) {
1499
1529
  var i;
@@ -1501,7 +1531,7 @@ function Et(e, t) {
1501
1531
  var s = ti(e), o = s === ((i = e.ownerDocument) == null ? void 0 : i.body), n = B(s), l = o ? [n].concat(n.visualViewport || [], le(s) ? s : []) : s, r = t.concat(l);
1502
1532
  return o ? r : (
1503
1533
  // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
1504
- r.concat(Et(Vt(l)))
1534
+ r.concat(Et(Nt(l)))
1505
1535
  );
1506
1536
  }
1507
1537
  function ee(e) {
@@ -1512,23 +1542,23 @@ function ee(e) {
1512
1542
  bottom: e.y + e.height
1513
1543
  });
1514
1544
  }
1515
- function Yo(e, t) {
1545
+ function Po(e, t) {
1516
1546
  var i = vt(e, !1, t === "fixed");
1517
1547
  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;
1518
1548
  }
1519
1549
  function He(e, t, i) {
1520
- return t === Ge ? ee(Po(e, i)) : st(t) ? Yo(t, i) : ee(Mo(Q(e)));
1550
+ return t === Ge ? ee(Lo(e, i)) : st(t) ? Po(t, i) : ee(Mo(Q(e)));
1521
1551
  }
1522
- function Xo(e) {
1523
- var t = Et(Vt(e)), i = ["absolute", "fixed"].indexOf(J(e).position) >= 0, s = i && W(e) ? Tt(e) : e;
1552
+ function Yo(e) {
1553
+ var t = Et(Nt(e)), i = ["absolute", "fixed"].indexOf(J(e).position) >= 0, s = i && W(e) ? Tt(e) : e;
1524
1554
  return st(s) ? t.filter(function(o) {
1525
1555
  return st(o) && Ke(o, s) && j(o) !== "body";
1526
1556
  }) : [];
1527
1557
  }
1528
- function Ro(e, t, i, s) {
1529
- var o = t === "clippingParents" ? Xo(e) : [].concat(t), n = [].concat(o, [i]), l = n[0], r = n.reduce(function(a, c) {
1558
+ function Xo(e, t, i, s) {
1559
+ var o = t === "clippingParents" ? Yo(e) : [].concat(t), n = [].concat(o, [i]), l = n[0], r = n.reduce(function(a, c) {
1530
1560
  var h = He(e, c, s);
1531
- return a.top = it(h.top, a.top), a.right = Nt(h.right, a.right), a.bottom = Nt(h.bottom, a.bottom), a.left = it(h.left, a.left), a;
1561
+ return a.top = it(h.top, a.top), a.right = Ft(h.right, a.right), a.bottom = Ft(h.bottom, a.bottom), a.left = it(h.left, a.left), a;
1532
1562
  }, He(e, l, s));
1533
1563
  return r.width = r.right - r.left, r.height = r.bottom - r.top, r.x = r.left, r.y = r.top, r;
1534
1564
  }
@@ -1541,13 +1571,13 @@ function ei(e) {
1541
1571
  y: t.y - i.height
1542
1572
  };
1543
1573
  break;
1544
- case N:
1574
+ case F:
1545
1575
  a = {
1546
1576
  x: l,
1547
1577
  y: t.y + t.height
1548
1578
  };
1549
1579
  break;
1550
- case F:
1580
+ case V:
1551
1581
  a = {
1552
1582
  x: t.x + t.width,
1553
1583
  y: r
@@ -1579,37 +1609,37 @@ function ei(e) {
1579
1609
  }
1580
1610
  return a;
1581
1611
  }
1582
- function kt(e, t) {
1612
+ function St(e, t) {
1583
1613
  t === void 0 && (t = {});
1584
- var i = t, s = i.placement, o = s === void 0 ? e.placement : s, n = i.strategy, l = n === void 0 ? e.strategy : n, r = i.boundary, a = r === void 0 ? to : r, c = i.rootBoundary, h = c === void 0 ? Ge : c, u = i.elementContext, f = u === void 0 ? xt : u, p = i.altBoundary, I = p === void 0 ? !1 : p, b = i.padding, v = b === void 0 ? 0 : b, O = qe(typeof v != "number" ? v : Qe(v, St)), E = f === xt ? eo : xt, w = e.rects.popper, y = e.elements[I ? E : f], C = Ro(st(y) ? y : y.contextElement || Q(e.elements.popper), a, h, l), m = vt(e.elements.reference), g = ei({
1614
+ var i = t, s = i.placement, o = s === void 0 ? e.placement : s, n = i.strategy, l = n === void 0 ? e.strategy : n, r = i.boundary, a = r === void 0 ? Qs : r, c = i.rootBoundary, h = c === void 0 ? Ge : c, u = i.elementContext, f = u === void 0 ? Ct : u, p = i.altBoundary, I = p === void 0 ? !1 : p, b = i.padding, v = b === void 0 ? 0 : b, O = qe(typeof v != "number" ? v : Qe(v, kt)), E = f === Ct ? to : Ct, w = e.rects.popper, y = e.elements[I ? E : f], x = Xo(st(y) ? y : y.contextElement || Q(e.elements.popper), a, h, l), m = vt(e.elements.reference), g = ei({
1585
1615
  reference: m,
1586
1616
  element: w,
1587
1617
  placement: o
1588
- }), x = ee(Object.assign({}, w, g)), A = f === xt ? x : m, k = {
1589
- top: C.top - A.top + O.top,
1590
- bottom: A.bottom - C.bottom + O.bottom,
1591
- left: C.left - A.left + O.left,
1592
- right: A.right - C.right + O.right
1618
+ }), C = ee(Object.assign({}, w, g)), A = f === Ct ? C : m, S = {
1619
+ top: x.top - A.top + O.top,
1620
+ bottom: A.bottom - x.bottom + O.bottom,
1621
+ left: x.left - A.left + O.left,
1622
+ right: A.right - x.right + O.right
1593
1623
  }, T = e.modifiersData.offset;
1594
- if (f === xt && T) {
1624
+ if (f === Ct && T) {
1595
1625
  var X = T[o];
1596
- Object.keys(k).forEach(function(L) {
1597
- var $ = [F, N].indexOf(L) >= 0 ? 1 : -1, G = [H, N].indexOf(L) >= 0 ? "y" : "x";
1598
- k[L] += X[G] * $;
1626
+ Object.keys(S).forEach(function(L) {
1627
+ var $ = [V, F].indexOf(L) >= 0 ? 1 : -1, G = [H, F].indexOf(L) >= 0 ? "y" : "x";
1628
+ S[L] += X[G] * $;
1599
1629
  });
1600
1630
  }
1601
- return k;
1631
+ return S;
1602
1632
  }
1603
- function Ho(e, t) {
1633
+ function Ro(e, t) {
1604
1634
  t === void 0 && (t = {});
1605
- var i = t, s = i.placement, o = i.boundary, n = i.rootBoundary, l = i.padding, r = i.flipVariations, a = i.allowedAutoPlacements, c = a === void 0 ? Ue : a, h = gt(s), u = h ? r ? Me : Me.filter(function(I) {
1635
+ var i = t, s = i.placement, o = i.boundary, n = i.rootBoundary, l = i.padding, r = i.flipVariations, a = i.allowedAutoPlacements, c = a === void 0 ? _e : a, h = gt(s), u = h ? r ? Pe : Pe.filter(function(I) {
1606
1636
  return gt(I) === h;
1607
- }) : St, f = u.filter(function(I) {
1637
+ }) : kt, f = u.filter(function(I) {
1608
1638
  return c.indexOf(I) >= 0;
1609
1639
  });
1610
1640
  f.length === 0 && (f = u);
1611
1641
  var p = f.reduce(function(I, b) {
1612
- return I[b] = kt(e, {
1642
+ return I[b] = St(e, {
1613
1643
  placement: b,
1614
1644
  boundary: o,
1615
1645
  rootBoundary: n,
@@ -1620,48 +1650,48 @@ function Ho(e, t) {
1620
1650
  return p[I] - p[b];
1621
1651
  });
1622
1652
  }
1623
- function Zo(e) {
1653
+ function Ho(e) {
1624
1654
  if (z(e) === ie)
1625
1655
  return [];
1626
1656
  var t = Bt(e);
1627
1657
  return [Re(e), t, Re(t)];
1628
1658
  }
1629
- function Do(e) {
1659
+ function Zo(e) {
1630
1660
  var t = e.state, i = e.options, s = e.name;
1631
1661
  if (!t.modifiersData[s]._skip) {
1632
- for (var o = i.mainAxis, n = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !0 : l, a = i.fallbackPlacements, c = i.padding, h = i.boundary, u = i.rootBoundary, f = i.altBoundary, p = i.flipVariations, I = p === void 0 ? !0 : p, b = i.allowedAutoPlacements, v = t.options.placement, O = z(v), E = O === v, w = a || (E || !I ? [Bt(v)] : Zo(v)), y = [v].concat(w).reduce(function(q, V) {
1633
- return q.concat(z(V) === ie ? Ho(t, {
1634
- placement: V,
1662
+ for (var o = i.mainAxis, n = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !0 : l, a = i.fallbackPlacements, c = i.padding, h = i.boundary, u = i.rootBoundary, f = i.altBoundary, p = i.flipVariations, I = p === void 0 ? !0 : p, b = i.allowedAutoPlacements, v = t.options.placement, O = z(v), E = O === v, w = a || (E || !I ? [Bt(v)] : Ho(v)), y = [v].concat(w).reduce(function(q, N) {
1663
+ return q.concat(z(N) === ie ? Ro(t, {
1664
+ placement: N,
1635
1665
  boundary: h,
1636
1666
  rootBoundary: u,
1637
1667
  padding: c,
1638
1668
  flipVariations: I,
1639
1669
  allowedAutoPlacements: b
1640
- }) : V);
1641
- }, []), C = t.rects.reference, m = t.rects.popper, g = /* @__PURE__ */ new Map(), x = !0, A = y[0], k = 0; k < y.length; k++) {
1642
- var T = y[k], X = z(T), L = gt(T) === mt, $ = [H, N].indexOf(X) >= 0, G = $ ? "width" : "height", P = kt(t, {
1670
+ }) : N);
1671
+ }, []), x = t.rects.reference, m = t.rects.popper, g = /* @__PURE__ */ new Map(), C = !0, A = y[0], S = 0; S < y.length; S++) {
1672
+ var T = y[S], X = z(T), L = gt(T) === mt, $ = [H, F].indexOf(X) >= 0, G = $ ? "width" : "height", M = St(t, {
1643
1673
  placement: T,
1644
1674
  boundary: h,
1645
1675
  rootBoundary: u,
1646
1676
  altBoundary: f,
1647
1677
  padding: c
1648
- }), D = $ ? L ? F : Z : L ? N : H;
1649
- C[G] > m[G] && (D = Bt(D));
1650
- var ot = Bt(D), U = [];
1651
- if (n && U.push(P[X] <= 0), r && U.push(P[D] <= 0, P[ot] <= 0), U.every(function(q) {
1678
+ }), D = $ ? L ? V : Z : L ? F : H;
1679
+ x[G] > m[G] && (D = Bt(D));
1680
+ var ot = Bt(D), _ = [];
1681
+ if (n && _.push(M[X] <= 0), r && _.push(M[D] <= 0, M[ot] <= 0), _.every(function(q) {
1652
1682
  return q;
1653
1683
  })) {
1654
- A = T, x = !1;
1684
+ A = T, C = !1;
1655
1685
  break;
1656
1686
  }
1657
- g.set(T, U);
1687
+ g.set(T, _);
1658
1688
  }
1659
- if (x)
1660
- for (var nt = I ? 3 : 1, yt = function(V) {
1689
+ if (C)
1690
+ for (var nt = I ? 3 : 1, yt = function(N) {
1661
1691
  var et = y.find(function(at) {
1662
- var _ = g.get(at);
1663
- if (_)
1664
- return _.slice(0, V).every(function(lt) {
1692
+ var U = g.get(at);
1693
+ if (U)
1694
+ return U.slice(0, N).every(function(lt) {
1665
1695
  return lt;
1666
1696
  });
1667
1697
  });
@@ -1674,11 +1704,11 @@ function Do(e) {
1674
1704
  t.placement !== A && (t.modifiersData[s]._skip = !0, t.placement = A, t.reset = !0);
1675
1705
  }
1676
1706
  }
1677
- const Bo = {
1707
+ const Do = {
1678
1708
  name: "flip",
1679
1709
  enabled: !0,
1680
1710
  phase: "main",
1681
- fn: Do,
1711
+ fn: Zo,
1682
1712
  requiresIfExists: ["offset"],
1683
1713
  data: {
1684
1714
  _skip: !1
@@ -1696,14 +1726,14 @@ function Ze(e, t, i) {
1696
1726
  };
1697
1727
  }
1698
1728
  function De(e) {
1699
- return [H, F, N, Z].some(function(t) {
1729
+ return [H, V, F, Z].some(function(t) {
1700
1730
  return e[t] >= 0;
1701
1731
  });
1702
1732
  }
1703
- function Wo(e) {
1704
- var t = e.state, i = e.name, s = t.rects.reference, o = t.rects.popper, n = t.modifiersData.preventOverflow, l = kt(t, {
1733
+ function Bo(e) {
1734
+ var t = e.state, i = e.name, s = t.rects.reference, o = t.rects.popper, n = t.modifiersData.preventOverflow, l = St(t, {
1705
1735
  elementContext: "reference"
1706
- }), r = kt(t, {
1736
+ }), r = St(t, {
1707
1737
  altBoundary: !0
1708
1738
  }), a = Ze(l, s), c = Ze(r, o, n), h = De(a), u = De(c);
1709
1739
  t.modifiersData[i] = {
@@ -1716,18 +1746,18 @@ function Wo(e) {
1716
1746
  "data-popper-escaped": u
1717
1747
  });
1718
1748
  }
1719
- const No = {
1749
+ const Wo = {
1720
1750
  name: "hide",
1721
1751
  enabled: !0,
1722
1752
  phase: "main",
1723
1753
  requiresIfExists: ["preventOverflow"],
1724
- fn: Wo
1754
+ fn: Bo
1725
1755
  };
1726
1756
  function Fo(e, t, i) {
1727
1757
  var s = z(e), o = [Z, H].indexOf(s) >= 0 ? -1 : 1, n = typeof i == "function" ? i(Object.assign({}, t, {
1728
1758
  placement: e
1729
1759
  })) : i, l = n[0], r = n[1];
1730
- return l = l || 0, r = (r || 0) * o, [Z, F].indexOf(s) >= 0 ? {
1760
+ return l = l || 0, r = (r || 0) * o, [Z, V].indexOf(s) >= 0 ? {
1731
1761
  x: r,
1732
1762
  y: l
1733
1763
  } : {
@@ -1736,19 +1766,19 @@ function Fo(e, t, i) {
1736
1766
  };
1737
1767
  }
1738
1768
  function Vo(e) {
1739
- var t = e.state, i = e.options, s = e.name, o = i.offset, n = o === void 0 ? [0, 0] : o, l = Ue.reduce(function(h, u) {
1769
+ var t = e.state, i = e.options, s = e.name, o = i.offset, n = o === void 0 ? [0, 0] : o, l = _e.reduce(function(h, u) {
1740
1770
  return h[u] = Fo(u, t.rects, n), h;
1741
1771
  }, {}), r = l[t.placement], a = r.x, c = r.y;
1742
1772
  t.modifiersData.popperOffsets != null && (t.modifiersData.popperOffsets.x += a, t.modifiersData.popperOffsets.y += c), t.modifiersData[s] = l;
1743
1773
  }
1744
- const zo = {
1774
+ const No = {
1745
1775
  name: "offset",
1746
1776
  enabled: !0,
1747
1777
  phase: "main",
1748
1778
  requires: ["popperOffsets"],
1749
1779
  fn: Vo
1750
1780
  };
1751
- function jo(e) {
1781
+ function zo(e) {
1752
1782
  var t = e.state, i = e.name;
1753
1783
  t.modifiersData[i] = ei({
1754
1784
  reference: t.rects.reference,
@@ -1756,25 +1786,25 @@ function jo(e) {
1756
1786
  placement: t.placement
1757
1787
  });
1758
1788
  }
1759
- const $o = {
1789
+ const jo = {
1760
1790
  name: "popperOffsets",
1761
1791
  enabled: !0,
1762
1792
  phase: "read",
1763
- fn: jo,
1793
+ fn: zo,
1764
1794
  data: {}
1765
1795
  };
1766
- function Go(e) {
1796
+ function $o(e) {
1767
1797
  return e === "x" ? "y" : "x";
1768
1798
  }
1769
- function Uo(e) {
1770
- var t = e.state, i = e.options, s = e.name, o = i.mainAxis, n = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !1 : l, a = i.boundary, c = i.rootBoundary, h = i.altBoundary, u = i.padding, f = i.tether, p = f === void 0 ? !0 : f, I = i.tetherOffset, b = I === void 0 ? 0 : I, v = kt(t, {
1799
+ function Go(e) {
1800
+ var t = e.state, i = e.options, s = e.name, o = i.mainAxis, n = o === void 0 ? !0 : o, l = i.altAxis, r = l === void 0 ? !1 : l, a = i.boundary, c = i.rootBoundary, h = i.altBoundary, u = i.padding, f = i.tether, p = f === void 0 ? !0 : f, I = i.tetherOffset, b = I === void 0 ? 0 : I, v = St(t, {
1771
1801
  boundary: a,
1772
1802
  rootBoundary: c,
1773
1803
  padding: u,
1774
1804
  altBoundary: h
1775
- }), O = z(t.placement), E = gt(t.placement), w = !E, y = ne(O), C = Go(y), m = t.modifiersData.popperOffsets, g = t.rects.reference, x = t.rects.popper, A = typeof b == "function" ? b(Object.assign({}, t.rects, {
1805
+ }), O = z(t.placement), E = gt(t.placement), w = !E, y = ne(O), x = $o(y), m = t.modifiersData.popperOffsets, g = t.rects.reference, C = t.rects.popper, A = typeof b == "function" ? b(Object.assign({}, t.rects, {
1776
1806
  placement: t.placement
1777
- })) : b, k = typeof A == "number" ? {
1807
+ })) : b, S = typeof A == "number" ? {
1778
1808
  mainAxis: A,
1779
1809
  altAxis: A
1780
1810
  } : Object.assign({
@@ -1786,15 +1816,15 @@ function Uo(e) {
1786
1816
  };
1787
1817
  if (m) {
1788
1818
  if (n) {
1789
- var L, $ = y === "y" ? H : Z, G = y === "y" ? N : F, P = y === "y" ? "height" : "width", D = m[y], ot = D + v[$], U = D - v[G], nt = p ? -x[P] / 2 : 0, yt = E === mt ? g[P] : x[P], tt = E === mt ? -x[P] : -g[P], rt = t.elements.arrow, q = p && rt ? oe(rt) : {
1819
+ var L, $ = y === "y" ? H : Z, G = y === "y" ? F : V, M = y === "y" ? "height" : "width", D = m[y], ot = D + v[$], _ = D - v[G], nt = p ? -C[M] / 2 : 0, yt = E === mt ? g[M] : C[M], tt = E === mt ? -C[M] : -g[M], rt = t.elements.arrow, q = p && rt ? oe(rt) : {
1790
1820
  width: 0,
1791
1821
  height: 0
1792
- }, V = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : Je(), et = V[$], at = V[G], _ = Ot(0, g[P], q[P]), lt = w ? g[P] / 2 - nt - _ - et - k.mainAxis : yt - _ - et - k.mainAxis, zt = w ? -g[P] / 2 + nt + _ + at + k.mainAxis : tt + _ + at + k.mainAxis, ct = t.elements.arrow && Tt(t.elements.arrow), jt = ct ? y === "y" ? ct.clientTop || 0 : ct.clientLeft || 0 : 0, Lt = (L = T == null ? void 0 : T[y]) != null ? L : 0, $t = D + lt - Lt - jt, Gt = D + zt - Lt, Pt = Ot(p ? Nt(ot, $t) : ot, D, p ? it(U, Gt) : U);
1793
- m[y] = Pt, X[y] = Pt - D;
1822
+ }, N = t.modifiersData["arrow#persistent"] ? t.modifiersData["arrow#persistent"].padding : Je(), et = N[$], at = N[G], U = Ot(0, g[M], q[M]), lt = w ? g[M] / 2 - nt - U - et - S.mainAxis : yt - U - et - S.mainAxis, zt = w ? -g[M] / 2 + nt + U + at + S.mainAxis : tt + U + at + S.mainAxis, ct = t.elements.arrow && Tt(t.elements.arrow), jt = ct ? y === "y" ? ct.clientTop || 0 : ct.clientLeft || 0 : 0, Lt = (L = T == null ? void 0 : T[y]) != null ? L : 0, $t = D + lt - Lt - jt, Gt = D + zt - Lt, Mt = Ot(p ? Ft(ot, $t) : ot, D, p ? it(_, Gt) : _);
1823
+ m[y] = Mt, X[y] = Mt - D;
1794
1824
  }
1795
1825
  if (r) {
1796
- var Mt, Ut = y === "x" ? H : Z, _t = y === "x" ? N : F, K = m[C], ht = C === "y" ? "height" : "width", Yt = K + v[Ut], Xt = K - v[_t], dt = [H, Z].indexOf(O) !== -1, ut = (Mt = T == null ? void 0 : T[C]) != null ? Mt : 0, pt = dt ? Yt : K - g[ht] - x[ht] - ut + k.altAxis, bt = dt ? K + g[ht] + x[ht] - ut - k.altAxis : Xt, wt = p && dt ? yo(pt, K, bt) : Ot(p ? pt : Yt, K, p ? bt : Xt);
1797
- m[C] = wt, X[C] = wt - K;
1826
+ var Pt, _t = y === "x" ? H : Z, Ut = y === "x" ? F : V, K = m[x], ht = x === "y" ? "height" : "width", Yt = K + v[_t], Xt = K - v[Ut], dt = [H, Z].indexOf(O) !== -1, ut = (Pt = T == null ? void 0 : T[x]) != null ? Pt : 0, pt = dt ? Yt : K - g[ht] - C[ht] - ut + S.altAxis, bt = dt ? K + g[ht] + C[ht] - ut - S.altAxis : Xt, wt = p && dt ? go(pt, K, bt) : Ot(p ? pt : Yt, K, p ? bt : Xt);
1827
+ m[x] = wt, X[x] = wt - K;
1798
1828
  }
1799
1829
  t.modifiersData[s] = X;
1800
1830
  }
@@ -1803,25 +1833,25 @@ const _o = {
1803
1833
  name: "preventOverflow",
1804
1834
  enabled: !0,
1805
1835
  phase: "main",
1806
- fn: Uo,
1836
+ fn: Go,
1807
1837
  requiresIfExists: ["offset"]
1808
1838
  };
1809
- function Ko(e) {
1839
+ function Uo(e) {
1810
1840
  return {
1811
1841
  scrollLeft: e.scrollLeft,
1812
1842
  scrollTop: e.scrollTop
1813
1843
  };
1814
1844
  }
1815
- function Jo(e) {
1816
- return e === B(e) || !W(e) ? re(e) : Ko(e);
1845
+ function Ko(e) {
1846
+ return e === B(e) || !W(e) ? re(e) : Uo(e);
1817
1847
  }
1818
- function qo(e) {
1848
+ function Jo(e) {
1819
1849
  var t = e.getBoundingClientRect(), i = ft(t.width) / e.offsetWidth || 1, s = ft(t.height) / e.offsetHeight || 1;
1820
1850
  return i !== 1 || s !== 1;
1821
1851
  }
1822
- function Qo(e, t, i) {
1852
+ function qo(e, t, i) {
1823
1853
  i === void 0 && (i = !1);
1824
- var s = W(t), o = W(t) && qo(t), n = Q(t), l = vt(e, o, i), r = {
1854
+ var s = W(t), o = W(t) && Jo(t), n = Q(t), l = vt(e, o, i), r = {
1825
1855
  scrollLeft: 0,
1826
1856
  scrollTop: 0
1827
1857
  }, a = {
@@ -1829,14 +1859,14 @@ function Qo(e, t, i) {
1829
1859
  y: 0
1830
1860
  };
1831
1861
  return (s || !s && !i) && ((j(t) !== "body" || // https://github.com/popperjs/popper-core/issues/1078
1832
- le(n)) && (r = Jo(t)), W(t) ? (a = vt(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : n && (a.x = ae(n))), {
1862
+ le(n)) && (r = Ko(t)), W(t) ? (a = vt(t, !0), a.x += t.clientLeft, a.y += t.clientTop) : n && (a.x = ae(n))), {
1833
1863
  x: l.left + r.scrollLeft - a.x,
1834
1864
  y: l.top + r.scrollTop - a.y,
1835
1865
  width: l.width,
1836
1866
  height: l.height
1837
1867
  };
1838
1868
  }
1839
- function tn(e) {
1869
+ function Qo(e) {
1840
1870
  var t = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Set(), s = [];
1841
1871
  e.forEach(function(n) {
1842
1872
  t.set(n.name, n);
@@ -1855,15 +1885,15 @@ function tn(e) {
1855
1885
  i.has(n.name) || o(n);
1856
1886
  }), s;
1857
1887
  }
1858
- function en(e) {
1859
- var t = tn(e);
1860
- return uo.reduce(function(i, s) {
1888
+ function tn(e) {
1889
+ var t = Qo(e);
1890
+ return ho.reduce(function(i, s) {
1861
1891
  return i.concat(t.filter(function(o) {
1862
1892
  return o.phase === s;
1863
1893
  }));
1864
1894
  }, []);
1865
1895
  }
1866
- function sn(e) {
1896
+ function en(e) {
1867
1897
  var t;
1868
1898
  return function() {
1869
1899
  return t || (t = new Promise(function(i) {
@@ -1873,7 +1903,7 @@ function sn(e) {
1873
1903
  })), t;
1874
1904
  };
1875
1905
  }
1876
- function on(e) {
1906
+ function sn(e) {
1877
1907
  var t = e.reduce(function(i, s) {
1878
1908
  var o = i[s.name];
1879
1909
  return i[s.name] = o ? Object.assign({}, o, s, {
@@ -1897,7 +1927,7 @@ function We() {
1897
1927
  return !(s && typeof s.getBoundingClientRect == "function");
1898
1928
  });
1899
1929
  }
1900
- function nn(e) {
1930
+ function on(e) {
1901
1931
  e === void 0 && (e = {});
1902
1932
  var t = e, i = t.defaultModifiers, s = i === void 0 ? [] : i, o = t.defaultOptions, n = o === void 0 ? Be : o;
1903
1933
  return function(r, a, c) {
@@ -1921,7 +1951,7 @@ function nn(e) {
1921
1951
  reference: st(r) ? Et(r) : r.contextElement ? Et(r.contextElement) : [],
1922
1952
  popper: Et(a)
1923
1953
  };
1924
- var w = en(on([].concat(s, h.options.modifiers)));
1954
+ var w = tn(sn([].concat(s, h.options.modifiers)));
1925
1955
  return h.orderedModifiers = w.filter(function(y) {
1926
1956
  return y.enabled;
1927
1957
  }), I(), p.update();
@@ -1936,20 +1966,20 @@ function nn(e) {
1936
1966
  var O = h.elements, E = O.reference, w = O.popper;
1937
1967
  if (We(E, w)) {
1938
1968
  h.rects = {
1939
- reference: Qo(E, Tt(w), h.options.strategy === "fixed"),
1969
+ reference: qo(E, Tt(w), h.options.strategy === "fixed"),
1940
1970
  popper: oe(w)
1941
- }, h.reset = !1, h.placement = h.options.placement, h.orderedModifiers.forEach(function(k) {
1942
- return h.modifiersData[k.name] = Object.assign({}, k.data);
1971
+ }, h.reset = !1, h.placement = h.options.placement, h.orderedModifiers.forEach(function(S) {
1972
+ return h.modifiersData[S.name] = Object.assign({}, S.data);
1943
1973
  });
1944
1974
  for (var y = 0; y < h.orderedModifiers.length; y++) {
1945
1975
  if (h.reset === !0) {
1946
1976
  h.reset = !1, y = -1;
1947
1977
  continue;
1948
1978
  }
1949
- var C = h.orderedModifiers[y], m = C.fn, g = C.options, x = g === void 0 ? {} : g, A = C.name;
1979
+ var x = h.orderedModifiers[y], m = x.fn, g = x.options, C = g === void 0 ? {} : g, A = x.name;
1950
1980
  typeof m == "function" && (h = m({
1951
1981
  state: h,
1952
- options: x,
1982
+ options: C,
1953
1983
  name: A,
1954
1984
  instance: p
1955
1985
  }) || h);
@@ -1959,7 +1989,7 @@ function nn(e) {
1959
1989
  },
1960
1990
  // Async and optimistically optimized update – it will not be executed if
1961
1991
  // not necessary (debounced to run at most once-per-tick)
1962
- update: sn(function() {
1992
+ update: en(function() {
1963
1993
  return new Promise(function(v) {
1964
1994
  p.forceUpdate(), v(h);
1965
1995
  });
@@ -1977,14 +2007,14 @@ function nn(e) {
1977
2007
  h.orderedModifiers.forEach(function(v) {
1978
2008
  var O = v.name, E = v.options, w = E === void 0 ? {} : E, y = v.effect;
1979
2009
  if (typeof y == "function") {
1980
- var C = y({
2010
+ var x = y({
1981
2011
  state: h,
1982
2012
  name: O,
1983
2013
  instance: p,
1984
2014
  options: w
1985
2015
  }), m = function() {
1986
2016
  };
1987
- u.push(C || m);
2017
+ u.push(x || m);
1988
2018
  }
1989
2019
  });
1990
2020
  }
@@ -1996,10 +2026,10 @@ function nn(e) {
1996
2026
  return p;
1997
2027
  };
1998
2028
  }
1999
- var rn = [So, $o, Ao, fo, zo, Bo, _o, xo, No], an = /* @__PURE__ */ nn({
2000
- defaultModifiers: rn
2029
+ var nn = [So, jo, Eo, mo, No, Do, _o, Io, Wo], rn = /* @__PURE__ */ on({
2030
+ defaultModifiers: nn
2001
2031
  });
2002
- class ln {
2032
+ class an {
2003
2033
  /**
2004
2034
  * @param {Array} hotspotsConfig - Hotspot configuration array
2005
2035
  * @param {HTMLElement} container - Container element
@@ -2010,10 +2040,10 @@ class ln {
2010
2040
  constructor(t, i, s, o = {}) {
2011
2041
  de(this, "updateHotspotPosition", (t, i) => {
2012
2042
  this.currentActiveIndex = t, this.currentOrientation = i;
2013
- const s = Gs(this.hotspotsConfig, t, i);
2043
+ const s = $s(this.hotspotsConfig, t, i);
2014
2044
  this.hideHotspots(), s.forEach((o) => this.updateAndShowHotspot(o, t));
2015
2045
  });
2016
- this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer = ls(this.container), this.hotspotsConfig = qs(t), this.shouldHidePopper = !0, this.hidePopper = this.hidePopper.bind(this), this.forceHidePopper = this.forceHidePopper.bind(this), this.imageAspectRatio = s, this.hotspotElements = /* @__PURE__ */ new Map(), this.popperListeners = [], this.trigger = o.trigger || "hover";
2046
+ this.container = i, this.popper = null, this.popperInstance = null, this.hotspotsContainer = as(this.container), this.hotspotsConfig = Js(t), this.shouldHidePopper = !0, this.hidePopper = this.hidePopper.bind(this), this.forceHidePopper = this.forceHidePopper.bind(this), this.imageAspectRatio = s, this.hotspotElements = /* @__PURE__ */ new Map(), this.popperListeners = [], this.trigger = o.trigger || "hover";
2017
2047
  const { containerSize: n } = t[0];
2018
2048
  this.initialContainerSize = n || [i.offsetWidth, i.offsetHeight], this.initHotspots(), this.observeContainerResize();
2019
2049
  }
@@ -2024,7 +2054,7 @@ class ln {
2024
2054
  }), this.resizeObserver.observe(this.container);
2025
2055
  }
2026
2056
  updateHotspotsForResize(t, i) {
2027
- this.hotspotsConfig = Qs({
2057
+ this.hotspotsConfig = qs({
2028
2058
  newWidth: t,
2029
2059
  newHeight: i,
2030
2060
  initialContainerSize: this.initialContainerSize,
@@ -2041,9 +2071,9 @@ class ln {
2041
2071
  this.popperInstance && this.hidePopper();
2042
2072
  const n = {
2043
2073
  placement: "top",
2044
- modifiers: Ks(this.container)
2074
+ modifiers: Us(this.container)
2045
2075
  };
2046
- this.popper = Js(i, s), this.popper.setAttribute("data-show", ""), this.currentHotspotElement = t, t.setAttribute("aria-expanded", "true"), t.setAttribute("aria-describedby", `cloudimage-360-popper-${s}`);
2076
+ this.popper = Ks(i, s), this.popper.setAttribute("data-show", ""), this.currentHotspotElement = t, t.setAttribute("aria-expanded", "true"), t.setAttribute("aria-describedby", `cloudimage-360-popper-${s}`);
2047
2077
  const l = () => {
2048
2078
  this.shouldHidePopper = !1;
2049
2079
  }, r = () => {
@@ -2059,7 +2089,7 @@ class ln {
2059
2089
  { element: t, event: "mouseleave", handler: a },
2060
2090
  { element: t, event: "mouseenter", handler: c }
2061
2091
  ), this.popperInstance = {
2062
- ...an(t, this.popper, n),
2092
+ ...rn(t, this.popper, n),
2063
2093
  keepOpen: o,
2064
2094
  instanceId: s
2065
2095
  };
@@ -2068,7 +2098,7 @@ class ln {
2068
2098
  var t;
2069
2099
  this.shouldHidePopper && !((t = this.popperInstance) != null && t.keepOpen) && (this.hidePopperTimeout = setTimeout(() => {
2070
2100
  this.shouldHidePopper && this.hidePopper();
2071
- }, Pi));
2101
+ }, Mi));
2072
2102
  }
2073
2103
  hidePopper() {
2074
2104
  if (this.hidePopperTimeout && (clearTimeout(this.hidePopperTimeout), this.hidePopperTimeout = null), 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) {
@@ -2076,7 +2106,7 @@ class ln {
2076
2106
  const t = this.popper;
2077
2107
  this.popper = null, setTimeout(() => {
2078
2108
  t.remove();
2079
- }, Mi);
2109
+ }, Pi);
2080
2110
  }
2081
2111
  this.shouldHidePopper = !0;
2082
2112
  }
@@ -2088,7 +2118,7 @@ class ln {
2088
2118
  this.shouldHidePopper = !0, this.popperInstance && (this.popperInstance.keepOpen = !1), this.hidePopper();
2089
2119
  }
2090
2120
  createHotspot(t) {
2091
- const { id: i, content: s, keepOpen: o, onClick: n, label: l } = t, r = Us(i, l);
2121
+ const { id: i, content: s, keepOpen: o, onClick: n, label: l } = t, r = Gs(i, l);
2092
2122
  (n || s && this.trigger === "click") && (r.style.cursor = "pointer"), r.onclick = (a) => {
2093
2123
  var c;
2094
2124
  a.stopPropagation(), s && this.trigger === "click" && (((c = this.popperInstance) == null ? void 0 : c.instanceId) === i ? this.hidePopper() : this.showPopper({ hotspotElement: r, content: s, id: i, keepOpen: o })), n == null || n(a, this.popperInstance, i);
@@ -2138,12 +2168,12 @@ class ln {
2138
2168
  this.hidePopperTimeout && clearTimeout(this.hidePopperTimeout), this.resizeObserver.disconnect(), this.hidePopper(), this.hotspotElements.clear(), this.hotspotsContainer.innerHTML = "";
2139
2169
  }
2140
2170
  }
2141
- const Ne = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
2142
- class Ft {
2171
+ const Fe = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
2172
+ class Vt {
2143
2173
  constructor(t, i, s) {
2144
2174
  this.container = t, this.isClicked = !1, this.fullscreenView = !!s, this.imagesX = [], this.imagesY = [];
2145
2175
  const o = Math.round(window.devicePixelRatio || 1);
2146
- this.devicePixelRatio = Ne ? Math.min(o, 2) : o, 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 = Ds(), this.dragJustEnded = !1, this.isPinching = !1, this.initialPinchDistance = 0, this.pinchZoomLevel = 1, this.pinchZoomEmitted = !1, this.lastEmittedZoom = 1, this.panOffsetX = 0, this.panOffsetY = 0, this.useMainThreadCanvas = Ne, this.canvasWorker = this.useMainThreadCanvas ? new Fs() : new Ns(), 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);
2176
+ this.devicePixelRatio = Fe ? Math.min(o, 2) : o, 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 = Zs(), this.dragJustEnded = !1, this.isPinching = !1, this.initialPinchDistance = 0, this.pinchZoomLevel = 1, this.pinchZoomEmitted = !1, this.lastEmittedZoom = 1, this.panOffsetX = 0, this.panOffsetY = 0, this.useMainThreadCanvas = Fe, this.canvasWorker = this.useMainThreadCanvas ? new Fs() : new Ws(), 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);
2147
2177
  }
2148
2178
  /**
2149
2179
  * Close ImageBitmap objects to free GPU memory
@@ -2160,7 +2190,7 @@ class Ft {
2160
2190
  typeof s == "function" && s({ ...i, viewerId: this.id });
2161
2191
  }
2162
2192
  announce(t) {
2163
- hs(this.ariaLiveRegion, t);
2193
+ cs(this.ariaLiveRegion, t);
2164
2194
  }
2165
2195
  mouseDown(t) {
2166
2196
  if (!this.isReady || this.glass) return;
@@ -2241,7 +2271,7 @@ class Ft {
2241
2271
  i && i.closest && (i.closest(".cloudimage-360-button") || i.closest(".cloudimage-360-hotspot-timeline-dot") || i.closest(".cloudimage-360-hotspot")) || this.pointerZoomTrigger === "dblclick" && this.pointerZoom && !this.glass && !this.touchDevice && this.toggleZoom(t);
2242
2272
  }
2243
2273
  loadHigherQualityImages(t, i) {
2244
- const s = Ct(this.srcXConfig, t), o = this.allowSpinY ? Ct(this.srcYConfig, t) : null;
2274
+ const s = xt(this.srcXConfig, t), o = this.allowSpinY ? xt(this.srcYConfig, t) : null;
2245
2275
  ye({
2246
2276
  cdnPathX: s,
2247
2277
  cdnPathY: o,
@@ -2295,7 +2325,7 @@ class Ft {
2295
2325
  this.isZoomed && this.removeZoom();
2296
2326
  }
2297
2327
  applyZoom(t) {
2298
- const { offsetX: i, offsetY: s } = Ls(t, this.canvas, this.devicePixelRatio);
2328
+ const { offsetX: i, offsetY: s } = Ts(t, this.canvas, this.devicePixelRatio);
2299
2329
  this.isZoomed || (this.isZoomed = !0, this.hideAllIcons(), this.hideLoadingSpinner(), this.hideTransitionOverlay(), this.showZoomOutIcon(), this.emit("onZoomIn", { zoomLevel: this.pointerZoom }), this.announce("Zoomed in. Move mouse to pan. Click to zoom out.")), this.updateView(this.pointerZoom, i, s);
2300
2330
  }
2301
2331
  touchOutside(t) {
@@ -2375,7 +2405,7 @@ class Ft {
2375
2405
  keyDown(t) {
2376
2406
  if (!this.isReady) return;
2377
2407
  const { keyCode: i } = t, s = this.keysReverse;
2378
- switch (this.autoplay && this.stopAutoplay(), Se(i, this.allowSpinY) && (this.hasInteracted = !0, this.hideAllIcons(), this.hideHints()), i) {
2408
+ switch (this.autoplay && this.stopAutoplay(), ke(i, this.allowSpinY) && (this.hasInteracted = !0, this.hideAllIcons(), this.hideHints()), i) {
2379
2409
  case 37:
2380
2410
  s ? this.moveLeft() : this.moveRight();
2381
2411
  break;
@@ -2392,7 +2422,7 @@ class Ft {
2392
2422
  }
2393
2423
  keyUp(t) {
2394
2424
  const { keyCode: i } = t;
2395
- Se(i, this.allowSpinY) && this.showAllIcons();
2425
+ ke(i, this.allowSpinY) && this.showAllIcons();
2396
2426
  }
2397
2427
  moveActiveXIndexUp(t) {
2398
2428
  this.orientation = Y.X, this.activeImageX = (this.activeImageX + t) % this.amountX;
@@ -2474,21 +2504,21 @@ class Ft {
2474
2504
  this.createContainers(t), this.adaptCanvasSize(i), this.drawImageOnCanvas(i);
2475
2505
  }
2476
2506
  onAllImagesLoaded() {
2477
- 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 ln(this.hotspots, this.innerBox, this.imageAspectRatio, {
2507
+ 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 an(this.hotspots, this.innerBox, this.imageAspectRatio, {
2478
2508
  trigger: this.hotspotTrigger
2479
2509
  }), 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) {
2480
- const t = this.hints === !0 || this.hints === void 0 ? xe(this.viewerConfig, this.touchDevice) : this.hints;
2510
+ const t = this.hints === !0 || this.hints === void 0 ? Ce(this.viewerConfig, this.touchDevice) : this.hints;
2481
2511
  t && t.length > 0 && (this.hintsOverlay = Ie(this.innerBox, t, {
2482
2512
  pointerZoomTrigger: this.pointerZoomTrigger
2483
- }), Ce(this.hintsOverlay));
2513
+ }), xe(this.hintsOverlay));
2484
2514
  }
2485
- this.autoplay && (this.hideAllIcons(), Bs(this.play.bind(this))());
2515
+ this.autoplay && (this.hideAllIcons(), Ds(this.play.bind(this))());
2486
2516
  }
2487
2517
  magnify(t) {
2488
2518
  t.stopPropagation();
2489
2519
  const { src: i } = this.orientation === Y.Y ? this.imagesY[this.activeImageY] : this.imagesX[this.activeImageX], o = (this.fullscreenView ? document.body : this.container).offsetWidth * this.magnifier, n = Vi(i, o);
2490
- this.showLoadingSpinner(), this.createGlass(), ks(n, (a) => {
2491
- this.hideLoadingSpinner(), this.magnified = !0, Ts(t, this.innerBox, this.offset, a, this.glass, this.magnifier);
2520
+ this.showLoadingSpinner(), this.createGlass(), As(n, (a) => {
2521
+ this.hideLoadingSpinner(), this.magnified = !0, ks(t, this.innerBox, this.offset, a, this.glass, this.magnifier);
2492
2522
  }, (a) => {
2493
2523
  this.hideLoadingSpinner(), this.removeGlass(), this.emit("onError", {
2494
2524
  error: { message: a.message, url: a.url },
@@ -2500,8 +2530,8 @@ class Ft {
2500
2530
  }
2501
2531
  openFullscreenModal(t) {
2502
2532
  t.stopPropagation(), this.hideHotspotPopper(), this.releaseMemory(), window.document.body.style.overflow = "hidden";
2503
- const i = ns(this.container);
2504
- this.fullscreenInstance = new Ft(i, this.viewerConfig, !0), this.fullscreenInstance.originalViewer = this, this.emit("onFullscreenOpen"), this.announce("Opened fullscreen mode. Press Escape to exit.");
2533
+ const i = os(this.container);
2534
+ this.fullscreenInstance = new Vt(i, this.viewerConfig, !0), this.fullscreenInstance.originalViewer = this, this.emit("onFullscreenOpen"), this.announce("Opened fullscreen mode. Press Escape to exit.");
2505
2535
  }
2506
2536
  closeFullscreenModal(t) {
2507
2537
  t.stopPropagation();
@@ -2523,7 +2553,7 @@ class Ft {
2523
2553
  bottom: this.moveBottom.bind(this)
2524
2554
  };
2525
2555
  this.loopTimeoutId = window.setInterval(() => {
2526
- if (this.playOnce && Xs({
2556
+ if (this.playOnce && Ys({
2527
2557
  autoplayBehavior: this.autoplayBehavior,
2528
2558
  activeImageX: this.activeImageX,
2529
2559
  activeImageY: this.activeImageY,
@@ -2534,7 +2564,7 @@ class Ft {
2534
2564
  this.stopAutoplay();
2535
2565
  return;
2536
2566
  }
2537
- Rs({
2567
+ Xs({
2538
2568
  autoplayBehavior: this.autoplayBehavior,
2539
2569
  activeImageX: this.activeImageX,
2540
2570
  activeImageY: this.activeImageY,
@@ -2542,9 +2572,9 @@ class Ft {
2542
2572
  amountY: this.amountY,
2543
2573
  autoplayReverse: this.autoplayReverse,
2544
2574
  spinDirection: this.spinDirection
2545
- }) && (this.spinDirection = Zs(this.spinDirection));
2575
+ }) && (this.spinDirection = Hs(this.spinDirection));
2546
2576
  const n = this.spinDirection === "y";
2547
- Ys({
2577
+ Ps({
2548
2578
  autoplayBehavior: this.autoplayBehavior,
2549
2579
  spinY: n,
2550
2580
  reversed: this.autoplayReverse,
@@ -2554,10 +2584,10 @@ class Ft {
2554
2584
  }
2555
2585
  stopAutoplay() {
2556
2586
  if (this.showAllIcons(), this.autoplay = !1, window.clearTimeout(this.loopTimeoutId), this.loopTimeoutId = null, this.emit("onAutoplayStop"), this.hints !== !1 && !this.hintsOverlay && !this.hintsHidden) {
2557
- const t = this.hints === !0 ? xe(this.viewerConfig, this.touchDevice) : this.hints;
2587
+ const t = this.hints === !0 ? Ce(this.viewerConfig, this.touchDevice) : this.hints;
2558
2588
  t && t.length > 0 && (this.hintsOverlay = Ie(this.innerBox, t, {
2559
2589
  pointerZoomTrigger: this.pointerZoomTrigger
2560
- }), Ce(this.hintsOverlay));
2590
+ }), xe(this.hintsOverlay));
2561
2591
  }
2562
2592
  }
2563
2593
  destroy() {
@@ -2584,7 +2614,7 @@ class Ft {
2584
2614
  });
2585
2615
  }
2586
2616
  addInitialIcon() {
2587
- this.initialIcon || this.hide360Logo || (this.initialIcon = Ji(this.logoSrc), this.innerBox.appendChild(this.initialIcon));
2617
+ this.initialIcon || this.hide360Logo || (this.initialIcon = Ki(this.logoSrc), this.innerBox.appendChild(this.initialIcon));
2588
2618
  }
2589
2619
  showInitialIcon() {
2590
2620
  !this.initialIcon || this.hasInteracted || (this.initialIcon.style.opacity = 1);
@@ -2599,7 +2629,7 @@ class Ft {
2599
2629
  this.showAllIcons(), this.innerBox.removeChild(this.glass), this.glass = null, this.magnified = !1;
2600
2630
  }
2601
2631
  addMagnifierIcon() {
2602
- this.pointerZoom && (this.magnifierIcon = is(), this.magnifierIcon.onclick = this.zoomIn.bind(this), this.iconsContainer.appendChild(this.magnifierIcon), this.zoomOutIcon = ss(), this.zoomOutIcon.onclick = this.zoomOut.bind(this), this.zoomOutIcon.style.display = "none", this.iconsContainer.appendChild(this.zoomOutIcon));
2632
+ this.pointerZoom && (this.magnifierIcon = es(), this.magnifierIcon.onclick = this.zoomIn.bind(this), this.iconsContainer.appendChild(this.magnifierIcon), this.zoomOutIcon = is(), this.zoomOutIcon.onclick = this.zoomOut.bind(this), this.zoomOutIcon.style.display = "none", this.iconsContainer.appendChild(this.zoomOutIcon));
2603
2633
  }
2604
2634
  showMagnifierIcon() {
2605
2635
  this.magnifierIcon && (this.magnifierIcon.style.display = "", this.magnifierIcon.style.visibility = "visible", this.magnifierIcon.style.opacity = 1);
@@ -2614,10 +2644,10 @@ class Ft {
2614
2644
  this.zoomOutIcon && (this.zoomOutIcon.style.display = "none", this.zoomOutIcon.style.visibility = "hidden", this.zoomOutIcon.style.opacity = 0);
2615
2645
  }
2616
2646
  addFullscreenIcon() {
2617
- this.fullscreen && (this.fullscreenIcon = ts(), this.fullscreenIcon.onclick = this.openFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenIcon));
2647
+ this.fullscreen && (this.fullscreenIcon = Qi(), this.fullscreenIcon.onclick = this.openFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenIcon));
2618
2648
  }
2619
2649
  addCloseFullscreenIcon() {
2620
- this.fullscreenCloseIcon = Qi(), this.fullscreenCloseIcon.onclick = this.closeFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenCloseIcon);
2650
+ this.fullscreenCloseIcon = qi(), this.fullscreenCloseIcon.onclick = this.closeFullscreenModal.bind(this), this.iconsContainer.appendChild(this.fullscreenCloseIcon);
2621
2651
  }
2622
2652
  showFullscreenIcon() {
2623
2653
  this.fullscreenIcon && (this.fullscreenIcon.style.opacity = 1);
@@ -2635,13 +2665,13 @@ class Ft {
2635
2665
  this.view360CircleIcon && (this.view360CircleIcon.style.opacity = 0);
2636
2666
  }
2637
2667
  addLoadingSpinner() {
2638
- this.loadingSpinner = rs(), this.innerBox.appendChild(this.loadingSpinner);
2668
+ this.loadingSpinner = ns(), this.innerBox.appendChild(this.loadingSpinner);
2639
2669
  }
2640
2670
  showLoadingSpinner() {
2641
2671
  this.loadingSpinner && (this.hideAllIcons(), this.loadingSpinner.style.opacity = 1);
2642
2672
  }
2643
2673
  createTransitionOverlay() {
2644
- this.transitionOverlay = as(), this.innerBox.appendChild(this.transitionOverlay);
2674
+ this.transitionOverlay = rs(), this.innerBox.appendChild(this.transitionOverlay);
2645
2675
  }
2646
2676
  showTransitionOverlay() {
2647
2677
  this.transitionOverlay && (this.hideAllIcons(), this.transitionOverlay.style.opacity = 1);
@@ -2653,11 +2683,11 @@ class Ft {
2653
2683
  this.loadingSpinner && (this.loadingSpinner.style.opacity = 0);
2654
2684
  }
2655
2685
  hideHints() {
2656
- !this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0, us(this.hintsOverlay));
2686
+ !this.hintsOverlay || this.hintsHidden || (this.hintsHidden = !0, ds(this.hintsOverlay));
2657
2687
  }
2658
2688
  addHotspotTimeline() {
2659
2689
  if (!this.hotspots || this.hotspotTimeline) return;
2660
- const t = gs(this.container, this.amountX, this.hotspots);
2690
+ const t = vs(this.container, this.amountX, this.hotspots);
2661
2691
  if (!t) return;
2662
2692
  this.hotspotTimeline = t.element, this.hotspotTimelineIndicator = t.indicator, this.hotspotTimeline.querySelectorAll(".cloudimage-360-hotspot-timeline-dot").forEach((s) => {
2663
2693
  s.addEventListener("click", (o) => {
@@ -2668,13 +2698,13 @@ class Ft {
2668
2698
  }), this.updateHotspotTimelinePosition();
2669
2699
  }
2670
2700
  showHotspotTimeline() {
2671
- bs(this.hotspotTimeline);
2701
+ ys(this.hotspotTimeline);
2672
2702
  }
2673
2703
  hideHotspotTimeline() {
2674
- ws(this.hotspotTimeline);
2704
+ bs(this.hotspotTimeline);
2675
2705
  }
2676
2706
  updateHotspotTimelinePosition() {
2677
- ys(this.hotspotTimelineIndicator, this.activeImageX, this.amountX);
2707
+ gs(this.hotspotTimelineIndicator, this.activeImageX, this.amountX);
2678
2708
  }
2679
2709
  /**
2680
2710
  * Animates the viewer to a target frame, optionally showing a hotspot popup on arrival
@@ -2755,7 +2785,7 @@ class Ft {
2755
2785
  document.removeEventListener("keydown", this.boundKeyDown), document.removeEventListener("keyup", this.boundKeyUp);
2756
2786
  }
2757
2787
  createContainers(t) {
2758
- if (this.iconsContainer = be(this.innerBox), this.canvas = qi(this.innerBox, t), this.loader = os(this.innerBox), this.ariaLiveRegion = cs(this.innerBox), this.useMainThreadCanvas)
2788
+ if (this.iconsContainer = be(this.innerBox), this.canvas = Ji(this.innerBox, t), this.loader = ss(this.innerBox), this.ariaLiveRegion = ls(this.innerBox), this.useMainThreadCanvas)
2759
2789
  this.canvasWorker.postMessage({
2760
2790
  action: "initCanvas",
2761
2791
  offscreen: this.canvas,
@@ -2778,7 +2808,7 @@ class Ft {
2778
2808
  this.isReady && (this.stopAutoplay(), qt(this.innerBox, ".cloudimage-360-icons-container"), this.init(this.container, t, !0), this.iconsContainer = be(this.innerBox), this.onAllImagesLoaded());
2779
2809
  }
2780
2810
  init(t, i, s) {
2781
- const o = i ? Di(i) : Hi(t), {
2811
+ const o = i ? Zi(i) : Ri(t), {
2782
2812
  folder: n,
2783
2813
  apiVersion: l,
2784
2814
  filenameX: r,
@@ -2795,30 +2825,30 @@ class Ft {
2795
2825
  bottomCircleOffset: E,
2796
2826
  autoplay: w,
2797
2827
  autoplayBehavior: y,
2798
- playOnce: C,
2828
+ playOnce: x,
2799
2829
  speed: m,
2800
2830
  autoplayReverse: g,
2801
- fullscreen: x,
2831
+ fullscreen: C,
2802
2832
  magnifier: A,
2803
- ciToken: k,
2833
+ ciToken: S,
2804
2834
  ciFilters: T,
2805
2835
  ciTransformation: X,
2806
2836
  lazyload: L,
2807
2837
  dragSpeed: $,
2808
2838
  stopAtEdges: G,
2809
- pointerZoom: P,
2839
+ pointerZoom: M,
2810
2840
  pointerZoomTrigger: D = "dblclick",
2811
2841
  imageInfo: ot = "black",
2812
- initialIconShown: U,
2842
+ initialIconShown: _,
2813
2843
  bottomCircle: nt,
2814
2844
  hotspots: yt,
2815
2845
  hotspotTrigger: tt = "hover",
2816
2846
  dragReverse: rt,
2817
2847
  hide360Logo: q,
2818
- logoSrc: V,
2848
+ logoSrc: N,
2819
2849
  inertia: et,
2820
2850
  pinchZoom: at,
2821
- hints: _,
2851
+ hints: U,
2822
2852
  theme: lt,
2823
2853
  hotspotTimelineOnClick: zt = !0,
2824
2854
  aspectRatio: ct,
@@ -2827,16 +2857,16 @@ class Ft {
2827
2857
  onLoad: Lt,
2828
2858
  onSpin: $t,
2829
2859
  onAutoplayStart: Gt,
2830
- onAutoplayStop: Pt,
2831
- onFullscreenOpen: Mt,
2832
- onFullscreenClose: Ut,
2833
- onZoomIn: _t,
2860
+ onAutoplayStop: Mt,
2861
+ onFullscreenOpen: Pt,
2862
+ onFullscreenClose: _t,
2863
+ onZoomIn: Ut,
2834
2864
  onZoomOut: K,
2835
2865
  onDragStart: ht,
2836
2866
  onDragEnd: Yt,
2837
2867
  onError: Xt
2838
- } = o, dt = { ciToken: k, ciFilters: T, ciTransformation: X }, ut = Qt(c, []), pt = Qt(h, []);
2839
- if (this.viewerConfig = o, this.amountX = ut.length || f, this.amountY = pt.length || p, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX = g ? this.amountX - 1 : 0, this.activeImageY = g ? this.amountY - 1 : 0, this.bottomCircleOffset = E, this.autoplay = w, this.autoplayBehavior = y, this.playOnce = C, this.speed = m, this.autoplayReverse = g, this.fullscreen = x, this.magnifier = A > 1 ? Math.min(A, Xi) : 0, this.dragSpeed = Math.max($, Yi), this.stopAtEdges = G, this.ciParams = dt, this.apiVersion = l, this.pointerZoom = P > 1 ? Math.min(P, ge) : null, this.pointerZoomTrigger = D, this.keysReverse = O, this.info = ot, this.keys = v, this.innerBox = this.innerBox ?? es(this.container), ct && (this.container.style.aspectRatio = ct), this.initialIconShown = U, this.bottomCircle = nt, this.spinDirection = Hs(this.autoplayBehavior, this.allowSpinX, this.allowSpinY), this.dragReverse = rt, this.hotspots = yt, this.hotspotTrigger = tt, this.hide360Logo = q, this.logoSrc = V, this.inertia = et, this.pinchZoom = at, this.hints = _, this.hotspotTimelineOnClick = zt, lt === "dark" ? this.container.classList.add("ci360-theme-dark") : lt === "light" && this.container.classList.remove("ci360-theme-dark"), this.onReady = jt, this.onLoad = Lt, this.onSpin = $t, this.onAutoplayStart = Gt, this.onAutoplayStop = Pt, this.onFullscreenOpen = Mt, this.onFullscreenClose = Ut, this.onZoomIn = _t, this.onZoomOut = K, this.onDragStart = ht, this.onDragEnd = Yt, this.onError = Xt, this.srcXConfig = {
2868
+ } = o, dt = { ciToken: S, ciFilters: T, ciTransformation: X }, ut = Qt(c, []), pt = Qt(h, []);
2869
+ if (this.viewerConfig = o, this.amountX = ut.length || f, this.amountY = pt.length || p, this.allowSpinX = !!this.amountX, this.allowSpinY = !!this.amountY, this.activeImageX = g ? this.amountX - 1 : 0, this.activeImageY = g ? this.amountY - 1 : 0, this.bottomCircleOffset = E, this.autoplay = w, this.autoplayBehavior = y, this.playOnce = x, this.speed = m, this.autoplayReverse = g, this.fullscreen = C, this.magnifier = A > 1 ? Math.min(A, Xi) : 0, this.dragSpeed = Math.max($, Yi), this.stopAtEdges = G, this.ciParams = dt, this.apiVersion = l, this.pointerZoom = M > 1 ? Math.min(M, ge) : null, this.pointerZoomTrigger = D, this.keysReverse = O, this.info = ot, this.keys = v, this.innerBox = this.innerBox ?? ts(this.container), ct && (this.container.style.aspectRatio = ct), this.initialIconShown = _, this.bottomCircle = nt, this.spinDirection = Rs(this.autoplayBehavior, this.allowSpinX, this.allowSpinY), this.dragReverse = rt, this.hotspots = yt, this.hotspotTrigger = tt, this.hide360Logo = q, this.logoSrc = N, this.inertia = et, this.pinchZoom = at, this.hints = U, this.hotspotTimelineOnClick = zt, lt === "dark" ? this.container.classList.add("ci360-theme-dark") : lt === "light" && this.container.classList.remove("ci360-theme-dark"), this.onReady = jt, this.onLoad = Lt, this.onSpin = $t, this.onAutoplayStart = Gt, this.onAutoplayStop = Mt, this.onFullscreenOpen = Pt, this.onFullscreenClose = _t, this.onZoomIn = Ut, this.onZoomOut = K, this.onDragStart = ht, this.onDragEnd = Yt, this.onError = Xt, this.srcXConfig = {
2840
2870
  folder: n,
2841
2871
  filename: r,
2842
2872
  imageList: ut,
@@ -2856,7 +2886,7 @@ class Ft {
2856
2886
  orientation: Y.Y,
2857
2887
  amount: this.amountY
2858
2888
  }, s && this.removeEvents(), this.attachEvents(I, b, v), s) return;
2859
- const bt = (this.fullscreenView ? document.body : this.container).offsetWidth, wt = this.allowSpinX && !ut.length ? Ct(this.srcXConfig, bt) : null, ce = this.allowSpinY && !pt.length ? Ct(this.srcYConfig, bt) : null, he = (ii) => {
2889
+ const bt = (this.fullscreenView ? document.body : this.container).offsetWidth, wt = this.allowSpinX && !ut.length ? xt(this.srcXConfig, bt) : null, ce = this.allowSpinY && !pt.length ? xt(this.srcYConfig, bt) : null, he = (ii) => {
2860
2890
  ye({
2861
2891
  cdnPathX: wt,
2862
2892
  cdnPathY: ce,
@@ -2871,8 +2901,8 @@ class Ft {
2871
2901
  this.allowSpinX ? Ee(wt, this.srcXConfig, he) : this.allowSpinY && Ee(ce, this.srcYConfig, he);
2872
2902
  }
2873
2903
  }
2874
- const Fe = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
2875
- class hn {
2904
+ const Ve = typeof navigator < "u" && /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);
2905
+ class cn {
2876
2906
  constructor() {
2877
2907
  this.views = /* @__PURE__ */ new Map(), this.initAll = this.initAll.bind(this), this.getViews = this.getViews.bind(this), this.memoryObserver = null, this.memoryManagementAutoEnabled = !1;
2878
2908
  }
@@ -2883,16 +2913,16 @@ class hn {
2883
2913
  if (!t) return;
2884
2914
  const o = t.id || this.generateId();
2885
2915
  t.id || (t.id = o);
2886
- const n = new Ft(t, i, s);
2887
- return this.views.set(o, n), Fe && !this.memoryManagementAutoEnabled && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100)), n;
2916
+ const n = new Vt(t, i, s);
2917
+ return this.views.set(o, n), Ve && !this.memoryManagementAutoEnabled && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100)), n;
2888
2918
  }
2889
2919
  initAll(t = "cloudimage-360") {
2890
2920
  [...document.querySelectorAll(`.${t}`)].filter(Boolean).forEach((s) => {
2891
2921
  const o = s.id || this.generateId();
2892
2922
  s.id || (s.id = o);
2893
- const n = new Ft(s);
2923
+ const n = new Vt(s);
2894
2924
  this.views.set(o, n);
2895
- }), Fe && !this.memoryManagementAutoEnabled && this.views.size > 0 && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100));
2925
+ }), Ve && !this.memoryManagementAutoEnabled && this.views.size > 0 && (this.memoryManagementAutoEnabled = !0, setTimeout(() => this.enableMemoryManagement(), 100));
2896
2926
  }
2897
2927
  destroy(t) {
2898
2928
  const i = this.getViewById(t);
@@ -2961,6 +2991,6 @@ class hn {
2961
2991
  }
2962
2992
  }
2963
2993
  export {
2964
- hn as default
2994
+ cn as default
2965
2995
  };
2966
- //# sourceMappingURL=ci360-85fPJbOD.mjs.map
2996
+ //# sourceMappingURL=ci360-CzKohD8_.mjs.map