@car-cutter/react-webplayer 0.5.0 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import ye, { createContext as Ie, useContext as Me, useRef as $, useState as D, useCallback as M, useEffect as Z, useMemo as te, Fragment as Ot } from "react";
1
+ import ye, { createContext as _e, useContext as ze, useRef as Z, useState as W, useCallback as M, useEffect as F, useMemo as re, Fragment as Rt } from "react";
2
2
  import { createRoot as Pt } from "react-dom/client";
3
- var tt = { exports: {} }, xe = {};
3
+ var Qe = { exports: {} }, fe = {};
4
4
  /**
5
5
  * @license React
6
6
  * react-jsx-runtime.production.min.js
@@ -10,28 +10,31 @@ var tt = { exports: {} }, xe = {};
10
10
  * This source code is licensed under the MIT license found in the
11
11
  * LICENSE file in the root directory of this source tree.
12
12
  */
13
- var Xe;
14
- function At() {
15
- if (Xe) return xe;
16
- Xe = 1;
17
- var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, i = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
18
- function c(l, a, w) {
19
- var d, m = {}, f = null, z = null;
20
- w !== void 0 && (f = "" + w), a.key !== void 0 && (f = "" + a.key), a.ref !== void 0 && (z = a.ref);
21
- for (d in a) o.call(a, d) && !u.hasOwnProperty(d) && (m[d] = a[d]);
22
- if (l && l.defaultProps) for (d in a = l.defaultProps, a) m[d] === void 0 && (m[d] = a[d]);
23
- return { $$typeof: r, type: l, key: f, ref: z, props: m, _owner: i.current };
13
+ var $e;
14
+ function Ft() {
15
+ if ($e) return fe;
16
+ $e = 1;
17
+ var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, a = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
18
+ function l(i, s, y) {
19
+ var c, m = {}, g = null, _ = null;
20
+ y !== void 0 && (g = "" + y), s.key !== void 0 && (g = "" + s.key), s.ref !== void 0 && (_ = s.ref);
21
+ for (c in s) o.call(s, c) && !u.hasOwnProperty(c) && (m[c] = s[c]);
22
+ if (i && i.defaultProps) for (c in s = i.defaultProps, s) m[c] === void 0 && (m[c] = s[c]);
23
+ return { $$typeof: r, type: i, key: g, ref: _, props: m, _owner: a.current };
24
24
  }
25
- return xe.Fragment = n, xe.jsx = c, xe.jsxs = c, xe;
25
+ return fe.Fragment = n, fe.jsx = l, fe.jsxs = l, fe;
26
+ }
27
+ Qe.exports = Ft();
28
+ var et = Qe.exports;
29
+ const Fe = "cc-webplayer", Ae = "cc-webplayer-icon", tt = "composition-loading", rt = "composition-loaded", nt = "composition-load-error", ot = "extend-mode-on", st = "extend-mode-off", at = "hotspots-on", it = "hotspots-off", lt = "gallery-open", ct = "gallery-close", At = !1, Dt = !1, Wt = !1, Zt = "quality", Yt = !1, dt = "cc-webplayer:", $t = !1;
30
+ function wn(e, r) {
31
+ return `https://cdn.car-cutter.com/gallery/${e}/${r}/composition_v3.json`;
26
32
  }
27
- tt.exports = At();
28
- var rt = tt.exports;
29
- const Fe = "cc-webplayer", De = "cc-webplayer-icon", nt = "composition-loading", ot = "composition-loaded", st = "composition-load-error", at = "extend-mode-on", it = "extend-mode-off", lt = "hotspots-on", ct = "hotspots-off", dt = "gallery-open", ut = "gallery-close", Zt = !1, Ft = !1, Dt = !1, $t = "quality", Yt = !1, mt = "cc-webplayer:", Wt = !1;
30
33
  function Ut(e, r) {
31
34
  const n = e.split("/"), o = n.pop();
32
35
  return [n.join("/"), r, o].join("/");
33
36
  }
34
- var pt = { exports: {} }, ve = {};
37
+ var ut = { exports: {} }, xe = {};
35
38
  /**
36
39
  * @license React
37
40
  * react-jsx-runtime.production.min.js
@@ -41,37 +44,37 @@ var pt = { exports: {} }, ve = {};
41
44
  * This source code is licensed under the MIT license found in the
42
45
  * LICENSE file in the root directory of this source tree.
43
46
  */
44
- var Be;
47
+ var Ue;
45
48
  function Xt() {
46
- if (Be) return ve;
47
- Be = 1;
48
- var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, i = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
49
- function c(l, a, w) {
50
- var d, m = {}, f = null, z = null;
51
- w !== void 0 && (f = "" + w), a.key !== void 0 && (f = "" + a.key), a.ref !== void 0 && (z = a.ref);
52
- for (d in a) o.call(a, d) && !u.hasOwnProperty(d) && (m[d] = a[d]);
53
- if (l && l.defaultProps) for (d in a = l.defaultProps, a) m[d] === void 0 && (m[d] = a[d]);
54
- return { $$typeof: r, type: l, key: f, ref: z, props: m, _owner: i.current };
49
+ if (Ue) return xe;
50
+ Ue = 1;
51
+ var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, a = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
52
+ function l(i, s, y) {
53
+ var c, m = {}, g = null, _ = null;
54
+ y !== void 0 && (g = "" + y), s.key !== void 0 && (g = "" + s.key), s.ref !== void 0 && (_ = s.ref);
55
+ for (c in s) o.call(s, c) && !u.hasOwnProperty(c) && (m[c] = s[c]);
56
+ if (i && i.defaultProps) for (c in s = i.defaultProps, s) m[c] === void 0 && (m[c] = s[c]);
57
+ return { $$typeof: r, type: i, key: g, ref: _, props: m, _owner: a.current };
55
58
  }
56
- return ve.Fragment = n, ve.jsx = c, ve.jsxs = c, ve;
59
+ return xe.Fragment = n, xe.jsx = l, xe.jsxs = l, xe;
57
60
  }
58
- pt.exports = Xt();
59
- var t = pt.exports;
61
+ ut.exports = Xt();
62
+ var t = ut.exports;
60
63
  async function Bt(e) {
61
64
  const r = await fetch(e);
62
65
  if (!r.ok)
63
66
  throw new Error(`Failed to fetch composition: ${r.statusText}`);
64
67
  return await r.json();
65
68
  }
66
- const Pe = /* @__PURE__ */ new Map(), Gt = (e) => {
67
- const [r, n] = D({
69
+ const Oe = /* @__PURE__ */ new Map(), Gt = (e) => {
70
+ const [r, n] = W({
68
71
  status: "pending",
69
72
  isSuccess: !1
70
73
  });
71
- return Z(() => {
72
- const o = (u) => n({ status: "success", data: u, isSuccess: !0 }), i = Pe.get(e);
73
- if (i && !(i instanceof Promise)) {
74
- o(i);
74
+ return F(() => {
75
+ const o = (u) => n({ status: "success", data: u, isSuccess: !0 }), a = Oe.get(e);
76
+ if (a && !(a instanceof Promise)) {
77
+ o(a);
75
78
  return;
76
79
  }
77
80
  n({
@@ -80,11 +83,11 @@ const Pe = /* @__PURE__ */ new Map(), Gt = (e) => {
80
83
  }), async function() {
81
84
  try {
82
85
  let u;
83
- if (i)
84
- u = await i;
86
+ if (a)
87
+ u = await a;
85
88
  else {
86
- const c = Bt(e);
87
- Pe.set(e, c), u = await c, Pe.set(e, u);
89
+ const l = Bt(e);
90
+ Oe.set(e, l), u = await l, Oe.set(e, u);
88
91
  }
89
92
  o(u);
90
93
  } catch (u) {
@@ -96,44 +99,44 @@ const Pe = /* @__PURE__ */ new Map(), Gt = (e) => {
96
99
  }
97
100
  }();
98
101
  }, [e]), r;
99
- }, ht = Ie(null), re = () => {
100
- const e = Me(ht);
102
+ }, mt = _e(null), ne = () => {
103
+ const e = ze(mt);
101
104
  if (!e)
102
105
  throw new Error(
103
106
  "useCompositionContext must be used within a CompositionContextProvider"
104
107
  );
105
108
  return e;
106
109
  }, Kt = ({ composition: e, children: r }) => {
107
- const { aspectRatio: n, categories: o } = e, i = te(
108
- () => o.flatMap(({ items: c }) => c),
110
+ const { aspectRatio: n, categories: o } = e, a = re(
111
+ () => o.flatMap(({ items: l }) => l),
109
112
  [o]
110
113
  ), u = {
111
114
  aspectRatio: n.replace(":", " / ")
112
115
  };
113
116
  return /* @__PURE__ */ t.jsx(
114
- ht.Provider,
117
+ mt.Provider,
115
118
  {
116
119
  value: {
117
120
  ...e,
118
- items: i,
121
+ items: a,
119
122
  aspectRatioStyle: u
120
123
  },
121
124
  children: r
122
125
  }
123
126
  );
124
- }, ft = 500, Ze = 0.75, ze = 1 + Ze * 2;
125
- function se(e, r, n) {
127
+ }, pt = 500, Pe = 0.75, Le = 1 + Pe * 2;
128
+ function ae(e, r, n) {
126
129
  return Math.min(Math.max(e, r), n);
127
130
  }
128
- const _e = (e, r, n) => e + (r - e) * n, Ge = (e, r) => (e % r + r) % r, gt = Ie(null), J = () => {
129
- const e = Me(gt);
131
+ const Ne = (e, r, n) => e + (r - e) * n, Xe = (e, r) => (e % r + r) % r, ht = _e(null), J = () => {
132
+ const e = ze(ht);
130
133
  if (!e)
131
134
  throw new Error(
132
135
  "useGlobalContext must be used within a GlobalContextProvider"
133
136
  );
134
137
  return e;
135
- }, qt = ({ children: e, ...r }) => /* @__PURE__ */ t.jsx(gt.Provider, { value: r, children: e }), xt = Ie(null), q = () => {
136
- const e = Me(xt);
138
+ }, qt = ({ children: e, ...r }) => /* @__PURE__ */ t.jsx(ht.Provider, { value: r, children: e }), gt = _e(null), q = () => {
139
+ const e = ze(gt);
137
140
  if (!e)
138
141
  throw new Error(
139
142
  "useControlsContext must be used within a ControlsContextProvider"
@@ -146,192 +149,190 @@ const _e = (e, r, n) => e + (r - e) * n, Ge = (e, r) => (e % r + r) % r, gt = Ie
146
149
  infiniteCarrousel: r,
147
150
  preventFullScreen: n,
148
151
  emitEvent: o,
149
- isFullScreen: i,
152
+ isFullScreen: a,
150
153
  requestFullscreen: u,
151
- exitFullscreen: c
152
- } = J(), { categories: l, items: a } = re(), [w, d] = D(a.map(() => null)), m = M(
153
- (P, Q) => {
154
- d(
155
- (de) => de.map((fe, ge) => ge === P ? Q : fe)
154
+ exitFullscreen: l
155
+ } = J(), { categories: i, items: s } = ne(), [y, c] = W(s.map(() => null)), m = M(
156
+ (P, ee) => {
157
+ c(
158
+ (ge) => ge.map((oe, Ot) => Ot === P ? ee : oe)
156
159
  );
157
160
  },
158
161
  []
159
- ), [f, z] = D(0), [v, g] = D(null), I = v ?? f, x = a[I], T = w[I], [b, p] = D(
162
+ ), [g, _] = W(0), [w, x] = W(null), E = w ?? g, C = s[E], z = y[E], [f, p] = W(
160
163
  null
161
- ), h = !!b, k = M(() => p(null), []), L = M(() => {
162
- if (h || v !== null)
164
+ ), v = !!f, j = M(() => p(null), []), T = M(() => {
165
+ if (v || w !== null)
163
166
  return;
164
- const P = f - 1;
165
- P >= 0 ? g(P) : r && (p("first_to_last"), g(a.length - 1));
167
+ const P = g - 1;
168
+ P >= 0 ? x(P) : r && (p("first_to_last"), x(s.length - 1));
166
169
  }, [
167
- h,
168
170
  v,
169
- f,
171
+ w,
172
+ g,
170
173
  r,
171
- a.length
174
+ s.length
172
175
  ]), R = M(() => {
173
- if (h || v !== null)
176
+ if (v || w !== null)
174
177
  return;
175
- const P = f + 1;
176
- P < a.length ? g(P) : r && (p("last_to_first"), g(0));
178
+ const P = g + 1;
179
+ P < s.length ? x(P) : r && (p("last_to_first"), x(0));
177
180
  }, [
178
- h,
179
181
  v,
180
- f,
181
- a.length,
182
+ w,
183
+ g,
184
+ s.length,
182
185
  r
183
- ]), V = M(
186
+ ]), S = M(
184
187
  (P) => {
185
- const Q = Math.min(f, P), de = Math.max(f, P);
186
- w.slice(Q, de + 1).filter((fe) => fe === null).length > 2 && p("instant"), g(P);
188
+ const ee = Math.min(g, P), ge = Math.max(g, P);
189
+ y.slice(ee, ge + 1).filter((oe) => oe === null).length > 2 && p("instant"), x(P);
187
190
  },
188
- [f, w]
189
- ), y = te(() => {
190
- for (const P of l)
191
- if (P.items.includes(x))
191
+ [g, y]
192
+ ), N = re(() => {
193
+ for (const P of i)
194
+ if (P.items.includes(C))
192
195
  return P.id;
193
196
  throw new Error("Current item not found in any category");
194
- }, [l, x]), E = M(
197
+ }, [i, C]), L = M(
195
198
  (P) => {
196
- var Q;
197
- const de = (Q = l.find(({ id: ge }) => ge === P)) == null ? void 0 : Q.items[0];
198
- if (de === void 0)
199
+ const ee = i.find(({ id: oe }) => oe === P)?.items[0];
200
+ if (ee === void 0)
199
201
  throw new Error("Failed to find target category");
200
- const fe = a.findIndex((ge) => ge === de);
201
- V(fe);
202
+ const ge = s.findIndex((oe) => oe === ee);
203
+ S(ge);
202
204
  },
203
- [l, a, V]
204
- ), _ = te(() => {
205
- var P;
206
- switch (x.type) {
205
+ [i, s, S]
206
+ ), I = re(() => {
207
+ switch (C.type) {
207
208
  case "image":
208
- return !!((P = x.hotspots) != null && P.length);
209
+ return !!C.hotspots?.length;
209
210
  case "360":
210
- return T === "running";
211
+ return z === "running";
211
212
  case "video":
212
213
  return !1;
213
214
  }
214
- }, [x, T]), [S, O] = D(!0), C = M(() => {
215
- const P = !S;
216
- O(P), o(P ? lt : ct);
217
- }, [o, S]), s = te(() => {
218
- switch (x.type) {
215
+ }, [C, z]), [H, h] = W(!0), V = M(() => {
216
+ const P = !H;
217
+ h(P), o(P ? at : it);
218
+ }, [o, H]), d = re(() => {
219
+ switch (C.type) {
219
220
  case "image":
220
221
  case "360":
221
222
  return !0;
222
223
  case "video":
223
- return T !== "running";
224
+ return z !== "running";
224
225
  }
225
- }, [x, T]), [j, N] = D(!1), H = M(() => {
226
- const P = !j;
227
- N(P), o(P ? dt : ut);
228
- }, [o, j]), [F, Y] = D(null), W = M(() => Y(null), []), G = !!F, X = te(() => {
229
- switch (x.type) {
226
+ }, [C, z]), [b, k] = W(!1), A = M(() => {
227
+ const P = !b;
228
+ k(P), o(P ? lt : ct);
229
+ }, [o, b]), [D, Y] = W(null), $ = M(() => Y(null), []), X = !!D, B = re(() => {
230
+ switch (C.type) {
230
231
  case "image":
231
232
  return !0;
232
233
  case "360":
233
- return T === "running";
234
+ return z === "running";
234
235
  case "video":
235
236
  return !1;
236
237
  }
237
- }, [x.type, T]), [B, ne] = D(1), je = B !== 1, pe = B < ze, ke = B > 1, ae = M((P) => {
238
- ne((Q) => se(Q + P, 1, ze));
239
- }, []), he = M(() => ne(1), []), Te = M(() => ae(Ze), [ae]), St = M(() => ae(-Ze), [ae]), Ve = M(() => {
240
- he(), W();
241
- }, [he, W]), [ie, Rt] = D(!1), [Se, We] = D(), [Re, Ue] = D(!1), le = M(
238
+ }, [C.type, z]), [G, Q] = W(1), pe = G !== 1, be = G < Le, Ie = G > 1, ie = M((P) => {
239
+ Q((ee) => ae(ee + P, 1, Le));
240
+ }, []), he = M(() => Q(1), []), Tt = M(() => ie(Pe), [ie]), St = M(() => ie(-Pe), [ie]), Me = M(() => {
241
+ he(), $();
242
+ }, [he, $]), [le, Vt] = W(!1), [Te, Ze] = W(), [Se, Ye] = W(!1), ce = M(
242
243
  async (P) => {
243
- Ve(), Rt(P), o(P ? at : it);
244
+ Me(), Vt(P), o(P ? ot : st);
244
245
  },
245
- [o, Ve]
246
- ), ce = M(() => {
247
- clearTimeout(Se);
246
+ [o, Me]
247
+ ), de = M(() => {
248
+ clearTimeout(Te);
248
249
  const P = setTimeout(() => {
249
- We(void 0);
250
- }, ft);
251
- We(P);
252
- }, [Se]), He = M(async () => {
253
- if (ce(), !n) {
250
+ Ze(void 0);
251
+ }, pt);
252
+ Ze(P);
253
+ }, [Te]), Ve = M(async () => {
254
+ if (de(), !n) {
254
255
  const P = await u();
255
- if (Ue(!P), P)
256
+ if (Ye(!P), P)
256
257
  return;
257
258
  }
258
- le(!0);
259
+ ce(!0);
259
260
  }, [
260
261
  n,
261
- le,
262
+ ce,
262
263
  u,
263
- ce
264
- ]), Oe = M(async () => {
265
- ce(), !(!n && (Ue(!1), await c())) && le(!1);
264
+ de
265
+ ]), He = M(async () => {
266
+ de(), !(!n && (Ye(!1), await l())) && ce(!1);
266
267
  }, [
267
268
  n,
268
- le,
269
- c,
270
- ce
269
+ ce,
270
+ l,
271
+ de
271
272
  ]), Ht = M(() => {
272
- ie ? Oe() : He();
273
- }, [Oe, He, ie]);
274
- return Z(() => {
275
- n || Re && ie || i !== ie && (ce(), le(i));
273
+ le ? He() : Ve();
274
+ }, [He, Ve, le]);
275
+ return F(() => {
276
+ n || Se && le || a !== le && (de(), ce(a));
276
277
  }, [
277
278
  n,
279
+ ce,
278
280
  le,
279
- ie,
280
- Re,
281
- i,
282
- ce
281
+ Se,
282
+ a,
283
+ de
283
284
  ]), /* @__PURE__ */ t.jsx(
284
- xt.Provider,
285
+ gt.Provider,
285
286
  {
286
287
  value: {
287
288
  setItemInteraction: m,
288
- slidable: a.length > 1,
289
- carrouselItemIndex: f,
290
- setCarrouselItemIndex: z,
291
- itemIndexCommand: v,
292
- setItemIndexCommand: g,
293
- masterItemIndex: I,
294
- specialCommand: b,
295
- isRunningSpecialCommand: h,
296
- finishSpecialCommand: k,
297
- prevItem: L,
289
+ slidable: s.length > 1,
290
+ carrouselItemIndex: g,
291
+ setCarrouselItemIndex: _,
292
+ itemIndexCommand: w,
293
+ setItemIndexCommand: x,
294
+ masterItemIndex: E,
295
+ specialCommand: f,
296
+ isRunningSpecialCommand: v,
297
+ finishSpecialCommand: j,
298
+ prevItem: T,
298
299
  nextItem: R,
299
- scrollToItemIndex: V,
300
- displayedCategoryId: y,
301
- changeCategory: E,
302
- enableHotspotsControl: _,
303
- showHotspots: S,
304
- toggleHotspots: C,
305
- showGalleryControls: s,
306
- showGallery: j,
307
- toggleGallery: H,
308
- shownDetails: F,
309
- isShowingDetails: G,
300
+ scrollToItemIndex: S,
301
+ displayedCategoryId: N,
302
+ changeCategory: L,
303
+ enableHotspotsControl: I,
304
+ showHotspots: H,
305
+ toggleHotspots: V,
306
+ showGalleryControls: d,
307
+ showGallery: b,
308
+ toggleGallery: A,
309
+ shownDetails: D,
310
+ isShowingDetails: X,
310
311
  setShownDetails: Y,
311
- resetShownDetails: W,
312
- showZoomControls: X,
313
- zoom: B,
314
- isZooming: je,
315
- setZoom: ne,
312
+ resetShownDetails: $,
313
+ showZoomControls: B,
314
+ zoom: G,
315
+ isZooming: pe,
316
+ setZoom: Q,
316
317
  resetZoom: he,
317
- canZoomIn: pe,
318
- zoomIn: Te,
319
- canZoomOut: ke,
318
+ canZoomIn: be,
319
+ zoomIn: Tt,
320
+ canZoomOut: Ie,
320
321
  zoomOut: St,
321
- resetView: Ve,
322
- extendMode: ie,
323
- enableExtendMode: He,
324
- disableExtendMode: Oe,
322
+ resetView: Me,
323
+ extendMode: le,
324
+ enableExtendMode: Ve,
325
+ disableExtendMode: He,
325
326
  toggleExtendMode: Ht,
326
- extendTransition: !!Se,
327
- fakeFullScreen: Re
327
+ extendTransition: !!Te,
328
+ fakeFullScreen: Se
328
329
  },
329
330
  children: e
330
331
  }
331
332
  );
332
- }, vt = ["left", "center", "right", "fullW"], wt = ["top", "middle", "bottom", "fullH"], Qt = [
333
- ...vt,
334
- ...wt,
333
+ }, ft = ["left", "center", "right", "fullW"], xt = ["top", "middle", "bottom", "fullH"], Qt = [
334
+ ...ft,
335
+ ...xt,
335
336
  "top-left",
336
337
  "top-center",
337
338
  "top-right",
@@ -350,10 +351,10 @@ const _e = (e, r, n) => e + (r - e) * n, Ge = (e, r) => (e % r + r) % r, gt = Ie
350
351
  "fullW-fullW"
351
352
  ];
352
353
  function er(e) {
353
- return vt.includes(e);
354
+ return ft.includes(e);
354
355
  }
355
356
  function tr(e) {
356
- return wt.includes(e);
357
+ return xt.includes(e);
357
358
  }
358
359
  function rr(e) {
359
360
  return Qt.includes(e);
@@ -363,7 +364,7 @@ function nr(e) {
363
364
  throw new Error(`Invalid position: ${e}`);
364
365
  return tr(e) ? [e, void 0] : er(e) ? [void 0, e] : e.split("-");
365
366
  }
366
- function A(...e) {
367
+ function O(...e) {
367
368
  return e.filter((r) => !!r).map((r) => r.trim()).join(" ");
368
369
  }
369
370
  function or(e) {
@@ -378,7 +379,7 @@ function or(e) {
378
379
  return "inset-x-1 small:inset-x-2";
379
380
  }
380
381
  }
381
- function bt(e) {
382
+ function vt(e) {
382
383
  switch (e) {
383
384
  case "top":
384
385
  return "top-1 small:top-2";
@@ -395,57 +396,57 @@ function sr({
395
396
  positionY: r
396
397
  }) {
397
398
  const n = new Array();
398
- return e && n.push(or(e)), r && n.push(bt(r)), n.join(" ");
399
+ return e && n.push(or(e)), r && n.push(vt(r)), n.join(" ");
399
400
  }
400
401
  function ue(e) {
401
402
  const [r, n] = nr(e);
402
403
  return sr({ positionX: n, positionY: r });
403
404
  }
404
- const yt = Ie(null), jt = () => Me(yt), $e = () => {
405
- const e = jt();
405
+ const wt = _e(null), yt = () => ze(wt), De = () => {
406
+ const e = yt();
406
407
  if (!e)
407
408
  throw new Error(
408
409
  "useCustomizationContext must be used within a CustomizationContextProvider"
409
410
  );
410
411
  return e;
411
412
  }, ar = ({ children: e }) => {
412
- const [r, n] = D(
413
+ const [r, n] = W(
413
414
  /* @__PURE__ */ new Map()
414
415
  ), o = M(
415
- (c) => {
416
- const l = r.get(c);
417
- if (l)
418
- return l;
419
- const a = document.querySelector(
420
- `${De}[name="${c}"]`
416
+ (l) => {
417
+ const i = r.get(l);
418
+ if (i)
419
+ return i;
420
+ const s = document.querySelector(
421
+ `${Ae}[name="${l}"]`
421
422
  );
422
- if (!a)
423
+ if (!s)
423
424
  return;
424
- const w = a.getAttribute("color") ?? void 0, d = a.innerHTML, m = d ? /* @__PURE__ */ t.jsx(
425
+ const y = s.getAttribute("color") ?? void 0, c = s.innerHTML, m = c ? /* @__PURE__ */ t.jsx(
425
426
  "div",
426
427
  {
427
428
  className: "size-full",
428
- dangerouslySetInnerHTML: { __html: d }
429
+ dangerouslySetInnerHTML: { __html: c }
429
430
  }
430
431
  ) : void 0;
431
- if (!(!w && !m))
432
- return { Icon: m, color: w };
432
+ if (!(!y && !m))
433
+ return { Icon: m, color: y };
433
434
  },
434
435
  [r]
435
- ), i = M(
436
- (c, l) => {
437
- n((a) => new Map(a.set(c, l)));
436
+ ), a = M(
437
+ (l, i) => {
438
+ n((s) => new Map(s.set(l, i)));
438
439
  },
439
440
  []
440
- ), u = M((c) => {
441
- n((l) => (l.delete(c), new Map(l)));
441
+ ), u = M((l) => {
442
+ n((i) => (i.delete(l), new Map(i)));
442
443
  }, []);
443
444
  return /* @__PURE__ */ t.jsx(
444
- yt.Provider,
445
+ wt.Provider,
445
446
  {
446
447
  value: {
447
448
  getIconConfig: o,
448
- setIconConfig: i,
449
+ setIconConfig: a,
449
450
  resetIconConfig: u
450
451
  },
451
452
  children: e
@@ -456,13 +457,13 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
456
457
  className: r = "",
457
458
  children: n
458
459
  }) => {
459
- const { getIconConfig: o } = $e(), i = o(e);
460
- return i ? /* @__PURE__ */ t.jsx(
460
+ const { getIconConfig: o } = De(), a = o(e);
461
+ return a ? /* @__PURE__ */ t.jsx(
461
462
  "div",
462
463
  {
463
464
  className: r,
464
- style: { color: i == null ? void 0 : i.color },
465
- children: (i == null ? void 0 : i.Icon) ?? n
465
+ style: { color: a?.color },
466
+ children: a?.Icon ?? n
466
467
  }
467
468
  ) : n;
468
469
  }, ir = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_CLOSE", children: /* @__PURE__ */ t.jsx(
@@ -498,24 +499,29 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
498
499
  variant: e = "fill",
499
500
  shape: r = "button",
500
501
  color: n = "primary",
501
- className: o = "",
502
- children: i,
502
+ className: o,
503
+ children: a,
503
504
  ...u
504
505
  }) => {
505
- const c = lr[e][n], l = cr[r];
506
+ const l = lr[e][n], i = cr[r];
506
507
  return /* @__PURE__ */ t.jsx(
507
508
  "button",
508
509
  {
509
- className: `${c} ${l} flex items-center justify-center rounded-ui text-sm transition disabled:opacity-60 ${o}`,
510
+ className: O(
511
+ "flex items-center justify-center rounded-ui text-sm transition-all disabled:opacity-60",
512
+ l,
513
+ i,
514
+ o
515
+ ),
510
516
  ...u,
511
- children: i
517
+ children: a
512
518
  }
513
519
  );
514
- }, kt = ({ className: e = "", ...r }) => /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", className: e, ...r, children: /* @__PURE__ */ t.jsx(ir, { className: "size-full" }) }), Ct = ({
520
+ }, bt = (e) => /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", ...e, children: /* @__PURE__ */ t.jsx(ir, { className: "size-full" }) }), jt = ({
515
521
  title: e,
516
522
  error: r,
517
523
  children: n
518
- }) => (Z(() => {
524
+ }) => (F(() => {
519
525
  console.error(e, r);
520
526
  }, [r, e]), /* @__PURE__ */ t.jsxs("div", { className: "space-y-2", children: [
521
527
  /* @__PURE__ */ t.jsx("div", { className: "text-xl", children: e }),
@@ -527,7 +533,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
527
533
  sm: "size-4 border",
528
534
  md: "size-8 border-2",
529
535
  lg: "size-12 border-4"
530
- }, Et = ({
536
+ }, Ct = ({
531
537
  color: e = "neutral",
532
538
  size: r = "md"
533
539
  }) => {
@@ -543,77 +549,77 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
543
549
  className: r,
544
550
  onLoad: n,
545
551
  imgInPlayerWidthRatio: o = 1,
546
- onlyThumbnail: i,
552
+ onlyThumbnail: a,
547
553
  fadeIn: u,
548
- ...c
554
+ ...l
549
555
  }) => {
550
556
  const {
551
- minImageWidth: l,
552
- maxImageWidth: a,
553
- imageLoadStrategy: w,
554
- playerInViewportWidthRatio: d
555
- } = J(), { imageHdWidth: m, imageSubWidths: f } = re(), [z, v] = te(() => {
556
- const x = f.concat(m).sort((p, h) => p - h).filter((p) => !(l && p < l || a && p > a));
557
- if (x.length === 0)
557
+ minImageWidth: i,
558
+ maxImageWidth: s,
559
+ imageLoadStrategy: y,
560
+ playerInViewportWidthRatio: c
561
+ } = J(), { imageHdWidth: m, imageSubWidths: g } = ne(), [_, w] = re(() => {
562
+ const C = g.concat(m).sort((p, v) => p - v).filter((p) => !(i && p < i || s && p > s));
563
+ if (C.length === 0)
558
564
  throw new Error("No image widths available for the given constraints");
559
- const T = x.map((p) => `${p !== m ? Ut(e, p) : e} ${p}w`);
560
- let b;
561
- if (i)
562
- b = [`${x.shift()}px`];
565
+ const z = C.map((p) => `${p !== m ? Ut(e, p) : e} ${p}w`);
566
+ let f;
567
+ if (a)
568
+ f = [`${C.shift()}px`];
563
569
  else {
564
- const p = 1 / (o * d);
565
- if (w === "quality") {
566
- const h = x.pop();
567
- b = x.map(
568
- (k) => `(max-width: ${p * k}px) ${k}px`
569
- ), b.push(`${h}px`);
570
+ const p = 1 / (o * c);
571
+ if (y === "quality") {
572
+ const v = C.pop();
573
+ f = C.map(
574
+ (j) => `(max-width: ${p * j}px) ${j}px`
575
+ ), f.push(`${v}px`);
570
576
  } else {
571
- const h = x.shift();
572
- b = x.reverse().map(
573
- (k) => `(min-width: ${p * k}px) ${k}px`
574
- ), b.push(`${h}px`);
577
+ const v = C.shift();
578
+ f = C.reverse().map(
579
+ (j) => `(min-width: ${p * j}px) ${j}px`
580
+ ), f.push(`${v}px`);
575
581
  }
576
582
  }
577
- return [T.join(", "), b.join(", ")];
583
+ return [z.join(", "), f.join(", ")];
578
584
  }, [
579
585
  m,
580
- w,
581
- f,
586
+ y,
587
+ g,
582
588
  o,
583
- a,
584
- l,
589
+ s,
585
590
  i,
586
- d,
591
+ a,
592
+ c,
587
593
  e
588
- ]), [g, I] = D();
589
- return Z(() => {
590
- if (g === !0)
594
+ ]), [x, E] = W();
595
+ return F(() => {
596
+ if (x === !0)
591
597
  return;
592
- const x = setTimeout(() => {
593
- I((T) => T ?? !1);
598
+ const C = setTimeout(() => {
599
+ E((z) => z ?? !1);
594
600
  }, 30);
595
- return () => clearTimeout(x);
596
- }, [g]), /* @__PURE__ */ t.jsx(
601
+ return () => clearTimeout(C);
602
+ }, [x]), /* @__PURE__ */ t.jsx(
597
603
  "img",
598
604
  {
599
605
  src: e,
600
- srcSet: z,
601
- sizes: v,
602
- className: A(
606
+ srcSet: _,
607
+ sizes: w,
608
+ className: O(
603
609
  r,
604
- u && A(
605
- g !== void 0 && "transition-opacity duration-200",
606
- g === !1 && "opacity-0",
607
- g === !0 && "opacity-100"
610
+ u && O(
611
+ x !== void 0 && "transition-opacity duration-200",
612
+ x === !1 && "opacity-0",
613
+ x === !0 && "opacity-100"
608
614
  )
609
615
  ),
610
- onLoad: (x) => {
611
- I(!0), n == null || n(x);
616
+ onLoad: (C) => {
617
+ E(!0), n?.(C);
612
618
  },
613
- ...c
619
+ ...l
614
620
  }
615
621
  );
616
- }, Ye = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PLAY", children: /* @__PURE__ */ t.jsx(
622
+ }, We = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PLAY", children: /* @__PURE__ */ t.jsx(
617
623
  "svg",
618
624
  {
619
625
  className: e,
@@ -625,7 +631,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
625
631
  strokeLinejoin: "round",
626
632
  children: /* @__PURE__ */ t.jsx("polygon", { points: "6 3 20 12 6 21 6 3" })
627
633
  }
628
- ) }), Nt = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_360", children: /* @__PURE__ */ t.jsxs(
634
+ ) }), kt = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_360", children: /* @__PURE__ */ t.jsxs(
629
635
  "svg",
630
636
  {
631
637
  className: e,
@@ -680,14 +686,14 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
680
686
  /* @__PURE__ */ t.jsx("defs", { children: /* @__PURE__ */ t.jsx("clipPath", { id: "clip0_134_843", children: /* @__PURE__ */ t.jsx("rect", { width: "56", height: "56", fill: "white" }) }) })
681
687
  ]
682
688
  }
683
- ) }), Ke = ({
689
+ ) }), Be = ({
684
690
  children: e
685
691
  }) => {
686
692
  const { extendMode: r } = q();
687
693
  return /* @__PURE__ */ t.jsx(
688
694
  "div",
689
695
  {
690
- className: A(
696
+ className: O(
691
697
  "flex aspect-square h-3/4 items-center justify-center rounded-full bg-foreground/50 p-1",
692
698
  r && "large:h-3/5 large:p-2"
693
699
  ),
@@ -695,412 +701,401 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
695
701
  }
696
702
  );
697
703
  }, mr = ({ item: e }) => {
698
- const { permanentGallery: r } = J(), { aspectRatioStyle: n } = re(), { type: o } = e;
699
- let i;
704
+ const { permanentGallery: r } = J(), { aspectRatioStyle: n } = ne(), { type: o } = e;
705
+ let a;
700
706
  switch (o) {
701
707
  case "360":
702
- i = e.images[0].src;
708
+ a = e.images[0].src;
703
709
  break;
704
710
  case "image":
705
- i = e.src;
711
+ a = e.src;
706
712
  break;
707
713
  case "video":
708
- i = e.poster;
714
+ a = e.poster;
709
715
  break;
710
716
  }
711
717
  const u = /* @__PURE__ */ t.jsx(
712
718
  me,
713
719
  {
714
720
  className: "size-full object-cover",
715
- src: i,
721
+ src: a,
716
722
  onlyThumbnail: !0,
717
723
  fadeIn: !r
718
724
  }
719
725
  );
720
- let c;
726
+ let l;
721
727
  switch (o) {
722
728
  case "360":
723
- c = /* @__PURE__ */ t.jsx(Ke, { children: /* @__PURE__ */ t.jsx(Nt, { className: "size-full text-primary" }) });
729
+ l = /* @__PURE__ */ t.jsx(Be, { children: /* @__PURE__ */ t.jsx(kt, { className: "size-full text-primary-light" }) });
724
730
  break;
725
731
  case "video":
726
- c = /* @__PURE__ */ t.jsx(Ke, { children: /* @__PURE__ */ t.jsx(Ye, { className: "size-full p-0.5 text-background" }) });
732
+ l = /* @__PURE__ */ t.jsx(Be, { children: /* @__PURE__ */ t.jsx(We, { className: "size-full p-0.5 text-background" }) });
727
733
  break;
728
734
  }
729
- return /* @__PURE__ */ t.jsxs(
730
- "div",
731
- {
732
- className: "relative overflow-hidden rounded-gallery bg-foreground/30",
733
- style: n,
734
- children: [
735
- u,
736
- c && /* @__PURE__ */ t.jsx("div", { className: "absolute inset-0 flex items-center justify-center bg-foreground/25", children: c })
737
- ]
738
- }
739
- );
735
+ return /* @__PURE__ */ t.jsxs("div", { className: "relative bg-foreground/30", style: n, children: [
736
+ u,
737
+ l && /* @__PURE__ */ t.jsx("div", { className: "absolute inset-0 flex items-center justify-center bg-foreground/25", children: l })
738
+ ] });
740
739
  }, pr = {
741
740
  primary: "bg-primary/50",
742
741
  neutral: "bg-neutral/50",
743
742
  background: "bg-background/50",
744
743
  foreground: "bg-foreground/50"
745
- }, Lt = ({
744
+ }, Et = ({
746
745
  color: e = "neutral",
747
746
  orientation: r = "horizontal"
748
747
  }) => {
749
748
  const n = pr[e], o = r === "horizontal" ? "h-px w-full" : "w-px h-full";
750
- return /* @__PURE__ */ t.jsx("div", { className: A(n, o) });
751
- }, _t = ({
749
+ return /* @__PURE__ */ t.jsx("div", { className: O(n, o) });
750
+ }, Nt = ({
752
751
  className: e = "",
753
752
  containerClassName: r = ""
754
753
  }) => {
755
- const { flatten: n, infiniteCarrousel: o, permanentGallery: i, isFullScreen: u } = J(), { categories: c, items: l, aspectRatioStyle: a } = re(), {
756
- extendMode: w,
757
- extendTransition: d,
754
+ const { hideCategories: n, infiniteCarrousel: o, permanentGallery: a, isFullScreen: u } = J(), { categories: l, items: i, aspectRatioStyle: s } = ne(), {
755
+ extendMode: y,
756
+ extendTransition: c,
758
757
  masterItemIndex: m,
759
- prevItem: f,
760
- nextItem: z,
761
- scrollToItemIndex: v,
762
- resetView: g
763
- } = q(), I = te(() => {
758
+ prevItem: g,
759
+ nextItem: _,
760
+ scrollToItemIndex: w,
761
+ resetView: x
762
+ } = q(), E = re(() => {
764
763
  if (n)
765
764
  return [];
766
- const y = new Array();
767
- let E = 0;
768
- for (let _ = 0; _ < c.length - 1; _++) {
769
- const S = c[_].items.length;
770
- y.push(E + S), E += S;
765
+ const N = new Array();
766
+ let L = 0;
767
+ for (let I = 0; I < l.length - 1; I++) {
768
+ const H = l[I].items.length;
769
+ N.push(L + H), L += H;
771
770
  }
772
- return y;
773
- }, [c, n]), x = $(null), T = M(() => {
774
- if (!x.current)
771
+ return N;
772
+ }, [l, n]), C = Z(null), z = M(() => {
773
+ if (!C.current)
775
774
  throw new Error("slider.current is null");
776
- return x.current;
777
- }, []), b = $(!1), p = $(
775
+ return C.current;
776
+ }, []), f = Z(!1), p = Z(
778
777
  null
779
- ), [h, k] = D(!1), L = M(
780
- (y, E) => {
781
- const _ = T(), S = _.clientWidth, O = _.scrollWidth / l.length, C = (y + 1 / 2) * O - S / 2, s = _.scrollWidth - _.clientWidth;
782
- _.scrollTo({
783
- left: se(C, 0, s),
784
- behavior: E
778
+ ), [v, j] = W(!1), T = M(
779
+ (N, L) => {
780
+ const I = z(), H = I.clientWidth, h = I.scrollWidth / i.length, V = (N + 1 / 2) * h - H / 2, d = I.scrollWidth - I.clientWidth;
781
+ I.scrollTo({
782
+ left: ae(V, 0, d),
783
+ behavior: L
785
784
  });
786
785
  },
787
- [l.length, T]
786
+ [i.length, z]
788
787
  );
789
- Z(() => {
790
- const y = x.current;
791
- if (!y)
788
+ F(() => {
789
+ const N = C.current;
790
+ if (!N)
792
791
  return;
793
- const E = (O) => {
794
- O.preventDefault(), b.current = !0, p.current = {
795
- x: O.pageX - y.offsetLeft,
796
- scrollLeft: y.scrollLeft
792
+ const L = (h) => {
793
+ h.preventDefault(), f.current = !0, p.current = {
794
+ x: h.pageX - N.offsetLeft,
795
+ scrollLeft: N.scrollLeft
797
796
  };
798
- }, _ = (O) => {
799
- if (!b.current)
797
+ }, I = (h) => {
798
+ if (!f.current)
800
799
  return;
801
800
  if (p.current === null)
802
801
  throw new Error("[onMouseMove] scrollStart is null");
803
- const C = O.pageX - y.offsetLeft - p.current.x;
804
- if (!h && Math.abs(C) < 5)
802
+ const V = h.pageX - N.offsetLeft - p.current.x;
803
+ if (!v && Math.abs(V) < 5)
805
804
  return;
806
- const s = p.current.scrollLeft - C;
807
- k(!0), requestAnimationFrame(() => {
808
- y.scrollLeft = s;
805
+ const d = p.current.scrollLeft - V;
806
+ j(!0), requestAnimationFrame(() => {
807
+ N.scrollLeft = d;
809
808
  });
810
- }, S = () => {
811
- b.current && (b.current = !1, requestAnimationFrame(() => {
812
- k(!1);
809
+ }, H = () => {
810
+ f.current && (f.current = !1, requestAnimationFrame(() => {
811
+ j(!1);
813
812
  }));
814
813
  };
815
- return y.addEventListener("mousedown", E), document.addEventListener("mousemove", _), document.addEventListener("mouseleave", S), document.addEventListener("mouseup", S), document.addEventListener("contextmenu", S), () => {
816
- y.removeEventListener("mousedown", E), document.removeEventListener("mousemove", _), document.removeEventListener("mouseleave", S), document.removeEventListener("mouseup", S), document.removeEventListener("contextmenu", S);
814
+ return N.addEventListener("mousedown", L), document.addEventListener("mousemove", I), document.addEventListener("mouseleave", H), document.addEventListener("mouseup", H), document.addEventListener("contextmenu", H), () => {
815
+ N.removeEventListener("mousedown", L), document.removeEventListener("mousemove", I), document.removeEventListener("mouseleave", H), document.removeEventListener("mouseup", H), document.removeEventListener("contextmenu", H);
817
816
  };
818
- }, [h]);
819
- const R = $(m);
820
- Z(() => {
821
- x.current && (L(m, "smooth"), R.current = m);
822
- }, [m, L]), Z(() => {
823
- x.current && L(R.current, "instant");
817
+ }, [v]);
818
+ const R = Z(m);
819
+ F(() => {
820
+ C.current && (T(m, "smooth"), R.current = m);
821
+ }, [m, T]), F(() => {
822
+ C.current && T(R.current, "instant");
824
823
  }, [
825
- L,
824
+ T,
826
825
  // - Run the effect when those values change
827
826
  u,
828
- w,
829
- d
827
+ y,
828
+ c
830
829
  ]);
831
- const V = (y, E) => {
832
- h || (o && E === l.length - 1 && m === 0 ? f() : o && E === 0 && m === l.length - 1 ? z() : v(E), g());
830
+ const S = (N, L) => {
831
+ v || (o && L === i.length - 1 && m === 0 ? g() : o && L === 0 && m === i.length - 1 ? _() : w(L), x());
833
832
  };
834
833
  return /* @__PURE__ */ t.jsx(
835
834
  "div",
836
835
  {
837
- ref: x,
838
- className: A(
836
+ ref: C,
837
+ className: O(
839
838
  "relative w-full overflow-x-auto no-scrollbar",
840
- h ? "cursor-grab" : "cursor-grabbing",
839
+ v ? "cursor-grab" : "cursor-grabbing",
841
840
  e
842
841
  ),
843
842
  children: /* @__PURE__ */ t.jsx(
844
843
  "div",
845
844
  {
846
- className: A(
845
+ className: O(
847
846
  "flex h-10 w-fit gap-1 small:h-12 small:gap-2",
848
- w && "large:h-20 large:gap-4",
847
+ y && "large:h-20 large:gap-4",
849
848
  r
850
849
  ),
851
- children: l.map((y, E) => /* @__PURE__ */ t.jsxs(Ot, { children: [
852
- I.includes(E) && /* @__PURE__ */ t.jsx("div", { className: "my-2", children: /* @__PURE__ */ t.jsx(
853
- Lt,
850
+ children: i.map((N, L) => /* @__PURE__ */ t.jsxs(Rt, { children: [
851
+ E.includes(L) && /* @__PURE__ */ t.jsx("div", { className: "my-2", children: /* @__PURE__ */ t.jsx(
852
+ Et,
854
853
  {
855
- color: i && !u ? "neutral" : "background",
854
+ color: a && !u ? "neutral" : "background",
856
855
  orientation: "vertical"
857
856
  }
858
857
  ) }),
859
858
  /* @__PURE__ */ t.jsx(
860
859
  "div",
861
860
  {
862
- className: A(
863
- "relative h-full rounded-gallery ",
864
- !h && "cursor-pointer",
865
- "after:absolute after:inset-0 after:rounded-gallery after:border-2 after:border-primary after:transition-opacity",
866
- E === m ? "after:opacity-100" : "after:opacity-0 hover:after:opacity-70"
861
+ className: O(
862
+ "relative h-full overflow-hidden rounded-gallery transition-radius",
863
+ !v && "cursor-pointer",
864
+ "after:absolute after:inset-0 after:rounded-gallery after:border-2 after:border-primary after:transition-all",
865
+ L === m ? "after:opacity-100" : "after:opacity-0 hover:after:opacity-70"
867
866
  ),
868
- style: a,
869
- onClick: () => V(y, E),
870
- children: /* @__PURE__ */ t.jsx(mr, { item: y })
867
+ style: s,
868
+ onClick: () => S(N, L),
869
+ children: /* @__PURE__ */ t.jsx(mr, { item: N })
871
870
  }
872
871
  )
873
- ] }, E))
872
+ ] }, L))
874
873
  }
875
874
  )
876
875
  }
877
876
  );
878
- }, zt = (e) => 1 - Math.pow(1 - e, 2), hr = ({ currentIndex: e, maxIndex: r }) => /* @__PURE__ */ t.jsxs("div", { className: "space-x-0.5 rounded-ui bg-foreground/40 px-1.5 py-0.5 text-xs text-background/75 small:space-x-1 small:px-2 small:py-1 small:text-sm", children: [
879
- /* @__PURE__ */ t.jsx("span", { children: e + 1 }),
880
- /* @__PURE__ */ t.jsx("span", { children: "/" }),
881
- /* @__PURE__ */ t.jsx("span", { children: r + 1 })
882
- ] }), qe = (e, r) => Math.sqrt(
877
+ }, Lt = (e) => 1 - Math.pow(1 - e, 2), Ge = (e, r) => Math.sqrt(
883
878
  (e.clientX - r.clientX) ** 2 + (e.clientY - r.clientY) ** 2
884
- ), fr = ({
879
+ ), hr = ({
885
880
  onlyPreload: e,
886
881
  ...r
887
882
  }) => {
888
- const { zoom: n, isZooming: o, setZoom: i } = q(), u = $(null), c = $(null), l = M((b) => {
889
- if (!c.current)
883
+ const { zoom: n, isZooming: o, setZoom: a } = q(), u = Z(null), l = Z(null), i = M((f) => {
884
+ if (!l.current)
890
885
  throw new Error(
891
- `[${b ?? "getTransformElementOrThrow"}] transformElementRef.current is null`
886
+ `[${f ?? "getTransformElementOrThrow"}] transformElementRef.current is null`
892
887
  );
893
- return c.current;
894
- }, []), a = $(!1), w = $(null), d = $(/* @__PURE__ */ new Map()), m = $({ x: 0, y: 0, scale: 1 }), f = $(null), z = M(
895
- (b) => {
896
- const p = l("setTransformStyle"), {
897
- x: h,
898
- y: k,
899
- scale: L
888
+ return l.current;
889
+ }, []), s = Z(!1), y = Z(null), c = Z(/* @__PURE__ */ new Map()), m = Z({ x: 0, y: 0, scale: 1 }), g = Z(null), _ = M(
890
+ (f) => {
891
+ const p = i("setTransformStyle"), {
892
+ x: v,
893
+ y: j,
894
+ scale: T
900
895
  } = {
901
896
  ...m.current,
902
- ...b
903
- }, R = se(L, 1, ze), V = p.clientWidth, y = p.clientHeight, E = V * R, _ = y * R, S = se(h, -(E - V), 0), O = se(k, -(_ - y), 0);
904
- m.current = { x: S, y: O, scale: R }, p.style.transform = `translate(${S}px, ${O}px) scale(${R})`;
897
+ ...f
898
+ }, R = ae(T, 1, Le), S = p.clientWidth, N = p.clientHeight, L = S * R, I = N * R, H = ae(v, -(L - S), 0), h = ae(j, -(I - N), 0);
899
+ m.current = { x: H, y: h, scale: R }, p.style.transform = `translate(${H}px, ${h}px) scale(${R})`;
905
900
  },
906
- [l]
907
- ), v = M(
908
- (b, p) => {
901
+ [i]
902
+ ), w = M(
903
+ (f, p) => {
909
904
  const {
910
- x: h,
911
- y: k,
912
- scale: L
905
+ x: v,
906
+ y: j,
907
+ scale: T
913
908
  } = m.current, {
914
909
  x: R,
915
- y: V,
916
- scale: y
910
+ y: S,
911
+ scale: N
917
912
  } = {
918
913
  ...m.current,
919
- ...b
914
+ ...f
920
915
  };
921
- f.current && (cancelAnimationFrame(f.current), f.current = null);
922
- const E = () => {
923
- z({ x: R, y: V, scale: y }), i(y);
924
- }, _ = Math.abs(R - h) < 1 && Math.abs(V - k) < 1 && Math.abs(y - L) < 5e-3;
925
- if (!p || _) {
926
- E();
916
+ g.current && (cancelAnimationFrame(g.current), g.current = null);
917
+ const L = () => {
918
+ _({ x: R, y: S, scale: N }), a(N);
919
+ }, I = Math.abs(R - v) < 1 && Math.abs(S - j) < 1 && Math.abs(N - T) < 5e-3;
920
+ if (!p || I) {
921
+ L();
927
922
  return;
928
923
  }
929
- const S = (/* @__PURE__ */ new Date()).getTime(), O = () => {
930
- const C = () => {
931
- const s = (/* @__PURE__ */ new Date()).getTime() - S;
932
- if (s >= p) {
933
- E(), f.current = null;
924
+ const H = (/* @__PURE__ */ new Date()).getTime(), h = () => {
925
+ const V = () => {
926
+ const d = (/* @__PURE__ */ new Date()).getTime() - H;
927
+ if (d >= p) {
928
+ L(), g.current = null;
934
929
  return;
935
930
  }
936
- const j = Math.min(s / p, 1), N = zt(j), H = _e(h, R, N), F = _e(k, V, N), Y = _e(L, y, N);
937
- z({ x: H, y: F, scale: Y }), O();
931
+ const b = Math.min(d / p, 1), k = Lt(b), A = Ne(v, R, k), D = Ne(j, S, k), Y = Ne(T, N, k);
932
+ _({ x: A, y: D, scale: Y }), h();
938
933
  };
939
- f.current = requestAnimationFrame(C);
934
+ g.current = requestAnimationFrame(V);
940
935
  };
941
- O();
936
+ h();
942
937
  },
943
- [z, i]
944
- ), g = M(
945
- (b, p) => {
946
- let { x: h, y: k } = m.current;
947
- b.x && (h += b.x), b.y && (k += b.y), v(
938
+ [_, a]
939
+ ), x = M(
940
+ (f, p) => {
941
+ let { x: v, y: j } = m.current;
942
+ f.x && (v += f.x), f.y && (j += f.y), w(
948
943
  {
949
- x: h,
950
- y: k
944
+ x: v,
945
+ y: j
951
946
  },
952
947
  p
953
948
  );
954
949
  },
955
- [v]
956
- ), I = M(
957
- (b, p, h) => {
958
- const k = m.current.scale, L = se(b, 1, ze), R = L / k, { x: V, y } = m.current, { x: E, y: _ } = p, S = -V + E, O = -y + _, C = S * R, s = O * R, j = C - E, N = s - _, H = -j, F = -N;
959
- v(
950
+ [w]
951
+ ), E = M(
952
+ (f, p, v) => {
953
+ const j = m.current.scale, T = ae(f, 1, Le), R = T / j, { x: S, y: N } = m.current, { x: L, y: I } = p, H = -S + L, h = -N + I, V = H * R, d = h * R, b = V - L, k = d - I, A = -b, D = -k;
954
+ w(
960
955
  {
961
- x: H,
962
- y: F,
963
- scale: L
956
+ x: A,
957
+ y: D,
958
+ scale: T
964
959
  },
965
- h
960
+ v
966
961
  );
967
962
  },
968
- [v]
969
- ), x = M(
970
- (b) => {
971
- const p = l(
963
+ [w]
964
+ ), C = M(
965
+ (f) => {
966
+ const p = i(
972
967
  "shiftZoomFromButton"
973
- ), h = p.clientWidth, k = p.clientHeight;
974
- I(
975
- b,
968
+ ), v = p.clientWidth, j = p.clientHeight;
969
+ E(
970
+ f,
976
971
  {
977
- x: h / 2,
978
- y: k / 2
972
+ x: v / 2,
973
+ y: j / 2
979
974
  },
980
975
  200
981
976
  );
982
977
  },
983
- [l, I]
984
- ), T = M(
985
- (b, p, h) => {
986
- const { scale: k } = m.current;
987
- I(
988
- k + b,
978
+ [i, E]
979
+ ), z = M(
980
+ (f, p, v) => {
981
+ const { scale: j } = m.current;
982
+ E(
983
+ j + f,
989
984
  p,
990
- h
985
+ v
991
986
  );
992
987
  },
993
- [I]
988
+ [E]
994
989
  );
995
- return Z(() => {
996
- e || c.current && x(n);
997
- }, [e, x, n]), Z(() => {
990
+ return F(() => {
991
+ e || l.current && C(n);
992
+ }, [e, C, n]), F(() => {
998
993
  if (e || !o)
999
994
  return;
1000
- const b = c.current;
1001
- if (!b)
995
+ const f = l.current;
996
+ if (!f)
1002
997
  return;
1003
- const p = (L) => {
1004
- L.preventDefault(), L.stopPropagation(), a.current = !0, w.current = {
1005
- x: L.clientX,
1006
- y: L.clientY
998
+ const p = (T) => {
999
+ T.preventDefault(), T.stopPropagation(), s.current = !0, y.current = {
1000
+ x: T.clientX,
1001
+ y: T.clientY
1007
1002
  };
1008
- }, h = (L) => {
1009
- if (!a.current)
1003
+ }, v = (T) => {
1004
+ if (!s.current)
1010
1005
  return;
1011
- if (!w.current)
1006
+ if (!y.current)
1012
1007
  throw new Error("mouseStartXY.current is null");
1013
- L.stopPropagation();
1014
- const R = L.clientX - w.current.x, V = L.clientY - w.current.y;
1015
- g({
1008
+ T.stopPropagation();
1009
+ const R = T.clientX - y.current.x, S = T.clientY - y.current.y;
1010
+ x({
1016
1011
  x: R,
1017
- y: V
1018
- }), w.current = {
1019
- x: L.clientX,
1020
- y: L.clientY
1012
+ y: S
1013
+ }), y.current = {
1014
+ x: T.clientX,
1015
+ y: T.clientY
1021
1016
  };
1022
- }, k = () => {
1023
- a.current = !1;
1017
+ }, j = () => {
1018
+ s.current = !1;
1024
1019
  };
1025
- return b.addEventListener("mousedown", p), document.addEventListener("mousemove", h), document.addEventListener("mouseleave", k), document.addEventListener("mouseup", k), document.addEventListener("contextmenu", k), () => {
1026
- b.removeEventListener("mousedown", p), document.removeEventListener("mousemove", h), document.removeEventListener("mouseleave", k), document.removeEventListener("mouseup", k), document.removeEventListener("contextmenu", k);
1020
+ return f.addEventListener("mousedown", p), document.addEventListener("mousemove", v), document.addEventListener("mouseleave", j), document.addEventListener("mouseup", j), document.addEventListener("contextmenu", j), () => {
1021
+ f.removeEventListener("mousedown", p), document.removeEventListener("mousemove", v), document.removeEventListener("mouseleave", j), document.removeEventListener("mouseup", j), document.removeEventListener("contextmenu", j);
1027
1022
  };
1028
- }, [o, g, e]), Z(() => {
1023
+ }, [o, x, e]), F(() => {
1029
1024
  if (e)
1030
1025
  return;
1031
- const b = u.current;
1032
- if (!b)
1026
+ const f = u.current;
1027
+ if (!f)
1033
1028
  return;
1034
- const p = (h) => {
1035
- const { ctrlKey: k, clientX: L, clientY: R, deltaX: V, deltaY: y } = h;
1036
- if (k) {
1037
- if (!o && y >= 0)
1029
+ const p = (v) => {
1030
+ const { ctrlKey: j, clientX: T, clientY: R, deltaX: S, deltaY: N } = v;
1031
+ if (j) {
1032
+ if (!o && N >= 0)
1038
1033
  return;
1039
- const { left: E, top: _ } = b.getBoundingClientRect(), S = L - E, O = R - _;
1040
- T(-0.01 * y, {
1041
- x: S,
1042
- y: O
1034
+ const { left: L, top: I } = f.getBoundingClientRect(), H = T - L, h = R - I;
1035
+ z(-0.01 * N, {
1036
+ x: H,
1037
+ y: h
1043
1038
  });
1044
1039
  } else {
1045
1040
  if (!o)
1046
1041
  return;
1047
- g({
1048
- x: -2 * V,
1049
- y: -2 * y
1042
+ x({
1043
+ x: -2 * S,
1044
+ y: -2 * N
1050
1045
  });
1051
1046
  }
1052
- h.preventDefault();
1047
+ v.preventDefault();
1053
1048
  };
1054
- return b.addEventListener("wheel", p), () => {
1055
- b.removeEventListener("wheel", p);
1049
+ return f.addEventListener("wheel", p), () => {
1050
+ f.removeEventListener("wheel", p);
1056
1051
  };
1057
- }, [o, g, T, e]), Z(() => {
1058
- const b = u.current, p = c.current;
1059
- if (!b || !p)
1052
+ }, [o, x, z, e]), F(() => {
1053
+ const f = u.current, p = l.current;
1054
+ if (!f || !p)
1060
1055
  return;
1061
- const h = d.current, k = (V) => {
1062
- for (let y = 0; y < V.changedTouches.length; y++) {
1063
- const E = V.changedTouches[y];
1064
- h.set(E.identifier, E);
1056
+ const v = c.current, j = (S) => {
1057
+ for (let N = 0; N < S.changedTouches.length; N++) {
1058
+ const L = S.changedTouches[N];
1059
+ v.set(L.identifier, L);
1065
1060
  }
1066
- }, L = (V) => {
1067
- for (let y = 0; y < V.changedTouches.length; y++) {
1068
- const E = V.changedTouches[y];
1069
- h.delete(E.identifier);
1061
+ }, T = (S) => {
1062
+ for (let N = 0; N < S.changedTouches.length; N++) {
1063
+ const L = S.changedTouches[N];
1064
+ v.delete(L.identifier);
1070
1065
  }
1071
- }, R = (V) => {
1072
- const y = V.touches.length;
1073
- if (y === 1) {
1066
+ }, R = (S) => {
1067
+ const N = S.touches.length;
1068
+ if (N === 1) {
1074
1069
  if (!o)
1075
1070
  return;
1076
- V.preventDefault();
1077
- const E = V.touches[0], _ = h.get(E.identifier);
1078
- if (!_)
1071
+ S.preventDefault();
1072
+ const L = S.touches[0], I = v.get(L.identifier);
1073
+ if (!I)
1079
1074
  throw new Error("touchStart is null");
1080
- const S = E.clientX - _.clientX, O = E.clientY - _.clientY;
1081
- g({
1082
- x: S,
1083
- y: O
1084
- }), h.set(E.identifier, E);
1085
- } else if (y === 2) {
1086
- V.preventDefault();
1087
- const [E, _] = V.touches, S = h.get(E.identifier), O = h.get(_.identifier);
1088
- if (!S || !O)
1075
+ const H = L.clientX - I.clientX, h = L.clientY - I.clientY;
1076
+ x({
1077
+ x: H,
1078
+ y: h
1079
+ }), v.set(L.identifier, L);
1080
+ } else if (N === 2) {
1081
+ S.preventDefault();
1082
+ const [L, I] = S.touches, H = v.get(L.identifier), h = v.get(I.identifier);
1083
+ if (!H || !h)
1089
1084
  throw new Error("intialTouch1 or intialTouch2 is null");
1090
- const C = qe(
1091
- S,
1092
- O
1093
- ), s = qe(E, _) / C, { left: j, top: N } = b.getBoundingClientRect();
1094
- T(s - 1, {
1095
- x: (E.clientX + _.clientX) / 2 - j,
1096
- y: (E.clientY + _.clientY) / 2 - N
1097
- }), h.set(E.identifier, E), h.set(_.identifier, _);
1085
+ const V = Ge(
1086
+ H,
1087
+ h
1088
+ ), d = Ge(L, I) / V, { left: b, top: k } = f.getBoundingClientRect();
1089
+ z(d - 1, {
1090
+ x: (L.clientX + I.clientX) / 2 - b,
1091
+ y: (L.clientY + I.clientY) / 2 - k
1092
+ }), v.set(L.identifier, L), v.set(I.identifier, I);
1098
1093
  }
1099
1094
  };
1100
- return p.addEventListener("touchstart", k), p.addEventListener("touchmove", R), p.addEventListener("touchend", L), p.addEventListener("touchcancel", L), () => {
1101
- p.removeEventListener("touchstart", k), p.removeEventListener("touchmove", R), p.removeEventListener("touchend", L), p.removeEventListener("touchcancel", L);
1095
+ return p.addEventListener("touchstart", j), p.addEventListener("touchmove", R), p.addEventListener("touchend", T), p.addEventListener("touchcancel", T), () => {
1096
+ p.removeEventListener("touchstart", j), p.removeEventListener("touchmove", R), p.removeEventListener("touchend", T), p.removeEventListener("touchcancel", T);
1102
1097
  };
1103
- }, [o, g, T]), /* @__PURE__ */ t.jsx(
1098
+ }, [o, x, z]), /* @__PURE__ */ t.jsx(
1104
1099
  "div",
1105
1100
  {
1106
1101
  ref: u,
@@ -1108,7 +1103,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1108
1103
  children: /* @__PURE__ */ t.jsx(
1109
1104
  "div",
1110
1105
  {
1111
- ref: c,
1106
+ ref: l,
1112
1107
  className: "origin-top-left",
1113
1108
  children: /* @__PURE__ */ t.jsx(
1114
1109
  me,
@@ -1127,9 +1122,9 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1127
1122
  d: "M9.5 2.5V9.5H2.5V2.5H9.5ZM9.5 1.5H2.5C1.95 1.5 1.5 1.95 1.5 2.5V9.5C1.5 10.05 1.95 10.5 2.5 10.5H9.5C10.05 10.5 10.5 10.05 10.5 9.5V2.5C10.5 1.95 10.05 1.5 9.5 1.5ZM7.07 5.93L5.57 7.865L4.5 6.57L3 8.5H9L7.07 5.93Z",
1128
1123
  fill: "currentColor"
1129
1124
  }
1130
- ) }) }), xr = ({ hotspot: e }) => {
1131
- const { title: r, icon: n, description: o, position: i, detail: u } = e, { getIconConfig: c } = $e(), l = n ? c(n) : void 0, { extendMode: a, setShownDetails: w } = q(), d = !!u, m = (u == null ? void 0 : u.type) === "image", f = !!r || !!o, z = m ? /* @__PURE__ */ t.jsx(gr, { className: "size-4" }) : /* @__PURE__ */ t.jsx("div", { className: "size-1" }), v = () => {
1132
- m && w({
1125
+ ) }) }), fr = ({ hotspot: e }) => {
1126
+ const { title: r, icon: n, description: o, position: a, detail: u } = e, { getIconConfig: l } = De(), i = n ? l(n) : void 0, { extendMode: s, setShownDetails: y } = q(), c = !!u, m = u?.type === "image", g = !!r || !!o, _ = m ? /* @__PURE__ */ t.jsx(gr, { className: "size-4" }) : /* @__PURE__ */ t.jsx("div", { className: "size-1" }), w = () => {
1127
+ m && y({
1133
1128
  src: u.src,
1134
1129
  title: r,
1135
1130
  text: o
@@ -1138,21 +1133,21 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1138
1133
  return /* @__PURE__ */ t.jsxs(
1139
1134
  "div",
1140
1135
  {
1141
- className: A(
1136
+ className: O(
1142
1137
  "group absolute z-hotspot -translate-x-1/2 -translate-y-1/2 hover:z-hotspot-hover",
1143
- d ? "cursor-pointer" : "cursor-help"
1138
+ c ? "cursor-pointer" : "cursor-help"
1144
1139
  ),
1145
1140
  style: {
1146
1141
  top: `${100 * e.position.y}%`,
1147
1142
  left: `${100 * e.position.x}%`
1148
1143
  },
1149
- onClick: v,
1144
+ onClick: w,
1150
1145
  children: [
1151
1146
  /* @__PURE__ */ t.jsxs(
1152
1147
  "div",
1153
1148
  {
1154
1149
  className: "relative flex items-center justify-center rounded-full border-2 border-background bg-primary text-primary-foreground",
1155
- style: { backgroundColor: l == null ? void 0 : l.color },
1150
+ style: { backgroundColor: i?.color },
1156
1151
  children: [
1157
1152
  /* @__PURE__ */ t.jsx(
1158
1153
  "div",
@@ -1160,18 +1155,18 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1160
1155
  className: "pointer-events-none absolute -z-20 size-8 animate-hotspot-ping rounded-full border-2 border-background"
1161
1156
  }
1162
1157
  ),
1163
- l != null && l.Icon ? /* @__PURE__ */ t.jsx("div", { className: "size-5", children: l.Icon }) : /* @__PURE__ */ t.jsx("div", { className: "p-1", children: z })
1158
+ i?.Icon ? /* @__PURE__ */ t.jsx("div", { className: "size-5", children: i.Icon }) : /* @__PURE__ */ t.jsx("div", { className: "p-1", children: _ })
1164
1159
  ]
1165
1160
  }
1166
1161
  ),
1167
- !m && f && /* @__PURE__ */ t.jsx(
1162
+ !m && g && /* @__PURE__ */ t.jsx(
1168
1163
  "div",
1169
1164
  {
1170
- className: A(
1165
+ className: O(
1171
1166
  "absolute -z-10 w-max max-w-40 text-pretty rounded-ui bg-background p-2 small:max-w-48",
1172
- a && "large:max-w-56",
1173
- i.y < 0.55 ? "-top-1" : "-bottom-1",
1174
- i.x < 0.55 ? "-left-1 pl-6 small:pl-8" : "-right-1 pr-4 small:pr-6",
1167
+ s && "large:max-w-56",
1168
+ a.y < 0.55 ? "-top-1" : "-bottom-1",
1169
+ a.x < 0.55 ? "-left-1 pl-6 small:pl-8" : "-right-1 pr-4 small:pr-6",
1175
1170
  "pointer-events-none opacity-0 transition-opacity duration-200 group-hover:pointer-events-auto group-hover:opacity-100"
1176
1171
  ),
1177
1172
  children: /* @__PURE__ */ t.jsxs("div", { className: "space-y-1 text-pretty", children: [
@@ -1183,7 +1178,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1183
1178
  ]
1184
1179
  }
1185
1180
  );
1186
- }, vr = ({ hotspot: e }) => {
1181
+ }, xr = ({ hotspot: e }) => {
1187
1182
  const { icon: r, detail: n } = e;
1188
1183
  let o;
1189
1184
  switch (r) {
@@ -1208,223 +1203,223 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1208
1203
  );
1209
1204
  break;
1210
1205
  default:
1211
- o = /* @__PURE__ */ t.jsx(xr, { hotspot: e });
1206
+ o = /* @__PURE__ */ t.jsx(fr, { hotspot: e });
1212
1207
  break;
1213
1208
  }
1214
- switch (n == null ? void 0 : n.type) {
1209
+ switch (n?.type) {
1215
1210
  case "link":
1216
1211
  case "pdf":
1217
1212
  return /* @__PURE__ */ t.jsx("a", { href: n.src, target: "_blank", rel: "noreferrer", children: o });
1218
1213
  default:
1219
1214
  return o;
1220
1215
  }
1221
- }, It = ({
1216
+ }, _t = ({
1222
1217
  hotspots: e,
1223
1218
  itemIndex: r,
1224
1219
  className: n,
1225
1220
  onLoad: o,
1226
- ...i
1221
+ ...a
1227
1222
  }) => {
1228
- const { isShowingDetails: u, showHotspots: c, setItemInteraction: l } = q();
1229
- return /* @__PURE__ */ t.jsx("div", { className: A("relative size-full overflow-hidden", n), children: /* @__PURE__ */ t.jsxs(
1223
+ const { isShowingDetails: u, showHotspots: l, setItemInteraction: i } = q();
1224
+ return /* @__PURE__ */ t.jsx("div", { className: O("relative size-full overflow-hidden", n), children: /* @__PURE__ */ t.jsxs(
1230
1225
  "div",
1231
1226
  {
1232
- className: A(
1227
+ className: O(
1233
1228
  "size-full duration-details",
1234
1229
  u ? "scale-105" : "scale-100"
1235
1230
  ),
1236
1231
  children: [
1237
1232
  /* @__PURE__ */ t.jsx(
1238
- fr,
1233
+ hr,
1239
1234
  {
1240
- className: "size-full",
1241
- onLoad: (a) => {
1242
- r !== void 0 && l(r, "ready"), o == null || o(a);
1235
+ className: "size-full object-cover",
1236
+ onLoad: (s) => {
1237
+ r !== void 0 && i(r, "ready"), o?.(s);
1243
1238
  },
1244
- ...i
1239
+ ...a
1245
1240
  }
1246
1241
  ),
1247
- c && (e == null ? void 0 : e.map((a, w) => /* @__PURE__ */ t.jsx(vr, { hotspot: a }, w)))
1242
+ l && e?.map((s, y) => /* @__PURE__ */ t.jsx(xr, { hotspot: s }, y))
1248
1243
  ]
1249
1244
  }
1250
1245
  ) });
1251
- }, we = 10, wr = 15, br = ({
1246
+ }, ve = 10, vr = 15, wr = ({
1252
1247
  images: e,
1253
1248
  onlyPreload: r
1254
1249
  }) => {
1255
- const { reverse360: n } = J(), { isShowingDetails: o, isZooming: i } = q(), u = i || o, c = $(null), l = $(null), [a, w] = D(0), d = e.length, m = M(() => {
1256
- w((z) => (z - 1 + d) % d);
1257
- }, [d]), f = M(() => {
1258
- w((z) => (z + 1) % d);
1259
- }, [d]);
1260
- return Z(() => {
1250
+ const { reverse360: n } = J(), { isShowingDetails: o, isZooming: a } = q(), u = a || o, l = Z(null), i = Z(null), [s, y] = W(0), c = e.length, m = M(() => {
1251
+ y((_) => (_ - 1 + c) % c);
1252
+ }, [c]), g = M(() => {
1253
+ y((_) => (_ + 1) % c);
1254
+ }, [c]);
1255
+ return F(() => {
1261
1256
  if (u)
1262
1257
  return;
1263
- const z = c.current, v = l.current;
1264
- if (!z || !v)
1258
+ const _ = l.current, w = i.current;
1259
+ if (!_ || !w)
1265
1260
  return;
1266
- let g = null, I = [], x = null;
1267
- const T = (s) => {
1268
- I.push(s), I.length > 20 && I.shift();
1269
- }, b = () => {
1270
- const s = Date.now(), j = (() => {
1271
- const Y = Date.now(), W = I.filter(
1272
- (B) => Y - B.timestamp < 50
1261
+ let x = null, E = [], C = null;
1262
+ const z = (d) => {
1263
+ E.push(d), E.length > 20 && E.shift();
1264
+ }, f = () => {
1265
+ const d = Date.now(), b = (() => {
1266
+ const Y = Date.now(), $ = E.filter(
1267
+ (G) => Y - G.timestamp < 50
1273
1268
  );
1274
- if (W.length < 2)
1269
+ if ($.length < 2)
1275
1270
  return 0;
1276
- const G = W[0], X = W[W.length - 1];
1277
- return (X.value - G.value) / (1e-3 * Math.max(X.timestamp - G.timestamp, 1));
1271
+ const X = $[0], B = $[$.length - 1];
1272
+ return (B.value - X.value) / (1e-3 * Math.max(B.timestamp - X.timestamp, 1));
1278
1273
  })();
1279
- let N = 0, H = s;
1280
- const F = () => {
1281
- x = requestAnimationFrame(() => {
1282
- const Y = Date.now(), W = (Y - s) / 1e3, G = Math.pow(0.05, W), X = j * G, B = (Y - H) / 1e3;
1283
- if (N += X * B, Math.abs(X) < 5 * we && Math.abs(N) < we) {
1284
- x = null;
1274
+ let k = 0, A = d;
1275
+ const D = () => {
1276
+ C = requestAnimationFrame(() => {
1277
+ const Y = Date.now(), $ = (Y - d) / 1e3, X = Math.pow(0.05, $), B = b * X, G = (Y - A) / 1e3;
1278
+ if (k += B * G, Math.abs(B) < 5 * ve && Math.abs(k) < ve) {
1279
+ C = null;
1285
1280
  return;
1286
1281
  }
1287
- Math.abs(N) >= we && (N > 0 !== n ? f() : m(), N = 0), H = Y, F();
1282
+ Math.abs(k) >= ve && (k > 0 !== n ? g() : m(), k = 0), A = Y, D();
1288
1283
  });
1289
1284
  };
1290
- F();
1285
+ D();
1291
1286
  }, p = () => {
1292
- x && (cancelAnimationFrame(x), x = null);
1293
- }, h = (s) => {
1294
- if (s.button !== 0)
1287
+ C && (cancelAnimationFrame(C), C = null);
1288
+ }, v = (d) => {
1289
+ if (d.button !== 0)
1295
1290
  return;
1296
- s.preventDefault(), s.stopPropagation(), p();
1297
- const j = s.clientX;
1298
- g = j, I = [{ timestamp: Date.now(), value: j }];
1299
- }, k = (s) => {
1300
- if (g === null)
1291
+ d.preventDefault(), d.stopPropagation(), p();
1292
+ const b = d.clientX;
1293
+ x = b, E = [{ timestamp: Date.now(), value: b }];
1294
+ }, j = (d) => {
1295
+ if (x === null)
1301
1296
  return;
1302
- s.stopPropagation();
1303
- const { clientX: j } = s;
1304
- T({ timestamp: Date.now(), value: j });
1305
- const N = j - g;
1306
- Math.abs(N) < we || (N > 0 !== n ? f() : m(), g = j);
1307
- }, L = () => {
1308
- g !== null && (g = null, b());
1297
+ d.stopPropagation();
1298
+ const { clientX: b } = d;
1299
+ z({ timestamp: Date.now(), value: b });
1300
+ const k = b - x;
1301
+ Math.abs(k) < ve || (k > 0 !== n ? g() : m(), x = b);
1302
+ }, T = () => {
1303
+ x !== null && (x = null, f());
1309
1304
  };
1310
- z.addEventListener("mousedown", h), document.addEventListener("mousemove", k), document.addEventListener("mouseleave", L), document.addEventListener("mouseup", L), document.addEventListener("contextmenu", L);
1311
- const R = () => v.getBoundingClientRect().width, V = () => v.scrollWidth / 2 - R() / 2, y = () => {
1312
- const s = V();
1313
- v.scrollLeft = s;
1305
+ _.addEventListener("mousedown", v), document.addEventListener("mousemove", j), document.addEventListener("mouseleave", T), document.addEventListener("mouseup", T), document.addEventListener("contextmenu", T);
1306
+ const R = () => w.getBoundingClientRect().width, S = () => w.scrollWidth / 2 - R() / 2, N = () => {
1307
+ const d = S();
1308
+ w.scrollLeft = d;
1314
1309
  };
1315
- y();
1316
- const E = () => {
1317
- const s = v.scrollLeft - V();
1318
- Math.abs(s) < wr || (s < 0 !== n ? f() : m(), y());
1310
+ N();
1311
+ const L = () => {
1312
+ const d = w.scrollLeft - S();
1313
+ Math.abs(d) < vr || (d < 0 !== n ? g() : m(), N());
1319
1314
  };
1320
- v.addEventListener("scroll", E);
1321
- let _ = null;
1322
- const S = (s) => {
1323
- if (_ !== null || s.changedTouches.length !== 1)
1315
+ w.addEventListener("scroll", L);
1316
+ let I = null;
1317
+ const H = (d) => {
1318
+ if (I !== null || d.changedTouches.length !== 1)
1324
1319
  return;
1325
1320
  p();
1326
- const { identifier: j, clientX: N } = s.changedTouches[0];
1327
- _ = j, g = N, I = [{ timestamp: Date.now(), value: N }];
1328
- }, O = (s) => {
1329
- if (!g)
1321
+ const { identifier: b, clientX: k } = d.changedTouches[0];
1322
+ I = b, x = k, E = [{ timestamp: Date.now(), value: k }];
1323
+ }, h = (d) => {
1324
+ if (!x)
1330
1325
  return;
1331
- const j = Array.from(s.changedTouches).find(
1332
- ({ identifier: F }) => F === _
1326
+ const b = Array.from(d.changedTouches).find(
1327
+ ({ identifier: D }) => D === I
1333
1328
  );
1334
- if (!j)
1329
+ if (!b)
1335
1330
  return;
1336
- s.preventDefault();
1337
- const { clientX: N } = j;
1338
- T({ timestamp: Date.now(), value: N });
1339
- const H = N - g;
1340
- Math.abs(H) < we || (H > 0 !== n ? f() : m(), g = N);
1341
- }, C = (s) => {
1342
- !g || !Array.from(s.changedTouches).some(
1343
- ({ identifier: j }) => j === _
1344
- ) || (_ = null, g = null, b());
1331
+ d.preventDefault();
1332
+ const { clientX: k } = b;
1333
+ z({ timestamp: Date.now(), value: k });
1334
+ const A = k - x;
1335
+ Math.abs(A) < ve || (A > 0 !== n ? g() : m(), x = k);
1336
+ }, V = (d) => {
1337
+ !x || !Array.from(d.changedTouches).some(
1338
+ ({ identifier: b }) => b === I
1339
+ ) || (I = null, x = null, f());
1345
1340
  };
1346
- return v.addEventListener("touchstart", S), v.addEventListener("touchmove", O), v.addEventListener("touchend", C), v.addEventListener("touchcancel", C), () => {
1347
- z.removeEventListener("mousedown", h), document.removeEventListener("mousemove", k), document.removeEventListener("mouseleave", L), document.removeEventListener("mouseup", L), document.removeEventListener("contextmenu", L), v.removeEventListener("scroll", E), v.removeEventListener("touchstart", S), v.removeEventListener("touchmove", O), v.removeEventListener("touchend", C), v.removeEventListener("touchcancel", C);
1341
+ return w.addEventListener("touchstart", H), w.addEventListener("touchmove", h), w.addEventListener("touchend", V), w.addEventListener("touchcancel", V), () => {
1342
+ _.removeEventListener("mousedown", v), document.removeEventListener("mousemove", j), document.removeEventListener("mouseleave", T), document.removeEventListener("mouseup", T), document.removeEventListener("contextmenu", T), w.removeEventListener("scroll", L), w.removeEventListener("touchstart", H), w.removeEventListener("touchmove", h), w.removeEventListener("touchend", V), w.removeEventListener("touchcancel", V);
1348
1343
  };
1349
- }, [f, m, u, n]), /* @__PURE__ */ t.jsx("div", { ref: c, className: "cursor-ew-resize", children: /* @__PURE__ */ t.jsxs("div", { ref: l, className: "overflow-x-scroll no-scrollbar", children: [
1344
+ }, [g, m, u, n]), /* @__PURE__ */ t.jsx("div", { ref: l, className: "cursor-ew-resize", children: /* @__PURE__ */ t.jsxs("div", { ref: i, className: "overflow-x-scroll no-scrollbar", children: [
1350
1345
  /* @__PURE__ */ t.jsxs("div", { className: "sticky left-0 top-0", children: [
1351
- e.map((z) => /* @__PURE__ */ t.jsx(
1346
+ e.map((_) => /* @__PURE__ */ t.jsx(
1352
1347
  me,
1353
1348
  {
1354
- src: z.src,
1349
+ src: _.src,
1355
1350
  className: "pointer-events-none !absolute left-0 top-0 -z-10"
1356
1351
  },
1357
- z.src
1352
+ _.src
1358
1353
  )),
1359
- /* @__PURE__ */ t.jsx(It, { ...e[a], onlyPreload: r })
1354
+ /* @__PURE__ */ t.jsx(_t, { ...e[s], onlyPreload: r })
1360
1355
  ] }),
1361
1356
  /* @__PURE__ */ t.jsx("div", { className: "pointer-events-none -mt-px h-px w-[calc(100%+1024px)]" })
1362
1357
  ] }) });
1363
1358
  }, yr = ({ images: e, onPlaceholderImageLoaded: r, onSpinImagesLoaded: n, onError: o }) => {
1364
- const i = te(() => e.map(({ src: d }) => d), [e]), [u, c] = D(null), l = u ? [...u.values()].filter((d) => d).length / e.length * 100 : null, a = M(() => {
1365
- l === null && c(new Map(i.map((d) => [d, !1])));
1366
- }, [i, l]), w = M((d) => {
1367
- c((m) => {
1368
- const f = new Map(m);
1369
- return f.set(d, !0), f;
1359
+ const a = re(() => e.map(({ src: c }) => c), [e]), [u, l] = W(null), i = u ? [...u.values()].filter((c) => c).length / e.length * 100 : null, s = M(() => {
1360
+ i === null && l(new Map(a.map((c) => [c, !1])));
1361
+ }, [a, i]), y = M((c) => {
1362
+ l((m) => {
1363
+ const g = new Map(m);
1364
+ return g.set(c, !0), g;
1370
1365
  });
1371
1366
  }, []);
1372
- return Z(() => {
1373
- l === 100 && n();
1374
- }, [l, n]), /* @__PURE__ */ t.jsxs("div", { className: "relative size-full", children: [
1375
- l !== null && l !== 100 && // Add images to DOM to preload them
1376
- /* @__PURE__ */ t.jsx("div", { className: "hidden", children: i.map((d) => /* @__PURE__ */ t.jsx(
1367
+ return F(() => {
1368
+ i === 100 && n();
1369
+ }, [i, n]), /* @__PURE__ */ t.jsxs("div", { className: "relative size-full", children: [
1370
+ i !== null && i !== 100 && // Add images to DOM to preload them
1371
+ /* @__PURE__ */ t.jsx("div", { className: "hidden", children: a.map((c) => /* @__PURE__ */ t.jsx(
1377
1372
  me,
1378
1373
  {
1379
- src: d,
1380
- onLoad: () => w(d),
1374
+ src: c,
1375
+ onLoad: () => y(c),
1381
1376
  onError: o
1382
1377
  },
1383
- d
1378
+ c
1384
1379
  )) }),
1385
1380
  /* @__PURE__ */ t.jsx(
1386
1381
  me,
1387
1382
  {
1388
1383
  className: "size-full",
1389
- src: i[0],
1384
+ src: a[0],
1390
1385
  onLoad: r
1391
1386
  }
1392
1387
  ),
1393
1388
  /* @__PURE__ */ t.jsxs("div", { className: "absolute inset-0 flex flex-col items-center justify-center gap-y-4 bg-foreground/35", children: [
1394
- /* @__PURE__ */ t.jsx(Nt, { className: "size-20 text-primary" }),
1395
- /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", onClick: a, children: /* @__PURE__ */ t.jsx(Ye, { className: "size-full" }) }),
1389
+ /* @__PURE__ */ t.jsx(kt, { className: "size-20 text-primary-light" }),
1390
+ /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", onClick: s, children: /* @__PURE__ */ t.jsx(We, { className: "size-full" }) }),
1396
1391
  /* @__PURE__ */ t.jsx(
1397
1392
  "div",
1398
1393
  {
1399
- className: A(
1394
+ className: O(
1400
1395
  "relative h-1 w-3/5 overflow-hidden rounded-full bg-background",
1401
- l === null && "invisible"
1396
+ i === null && "invisible"
1402
1397
  ),
1403
1398
  children: /* @__PURE__ */ t.jsx(
1404
1399
  "div",
1405
1400
  {
1406
1401
  className: "h-full bg-primary transition-[width]",
1407
- style: { width: `${l ?? 0}%` }
1402
+ style: { width: `${i ?? 0}%` }
1408
1403
  }
1409
1404
  )
1410
1405
  }
1411
1406
  )
1412
1407
  ] })
1413
1408
  ] });
1414
- }, jr = (e) => {
1415
- const { itemIndex: r } = e, { setItemInteraction: n } = q(), [o, i] = D();
1416
- return Z(() => {
1409
+ }, br = (e) => {
1410
+ const { itemIndex: r } = e, { setItemInteraction: n } = q(), [o, a] = W();
1411
+ return F(() => {
1417
1412
  o === null || o === "error" || n(r, o === "spin" ? "running" : "ready");
1418
- }, [r, n, o]), o === "error" ? /* @__PURE__ */ t.jsx(Ct, { title: "Failed to fetch 360" }) : o !== "spin" ? /* @__PURE__ */ t.jsx(
1413
+ }, [r, n, o]), o === "error" ? /* @__PURE__ */ t.jsx(jt, { title: "Failed to fetch 360" }) : o !== "spin" ? /* @__PURE__ */ t.jsx(
1419
1414
  yr,
1420
1415
  {
1421
1416
  ...e,
1422
- onPlaceholderImageLoaded: () => i("placeholder"),
1423
- onSpinImagesLoaded: () => i("spin"),
1424
- onError: () => i("error")
1417
+ onPlaceholderImageLoaded: () => a("placeholder"),
1418
+ onSpinImagesLoaded: () => a("spin"),
1419
+ onError: () => a("error")
1425
1420
  }
1426
- ) : /* @__PURE__ */ t.jsx(br, { ...e });
1427
- }, kr = ({ className: e = "", ...r }) => /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", className: e, ...r, children: /* @__PURE__ */ t.jsx(Ye, { className: "size-full" }) }), Cr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PAUSE", children: /* @__PURE__ */ t.jsx(
1421
+ ) : /* @__PURE__ */ t.jsx(wr, { ...e });
1422
+ }, jr = (e) => /* @__PURE__ */ t.jsx(K, { color: "neutral", shape: "icon", ...e, children: /* @__PURE__ */ t.jsx(We, { className: "size-full" }) }), Cr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PAUSE", children: /* @__PURE__ */ t.jsx(
1428
1423
  "svg",
1429
1424
  {
1430
1425
  className: e,
@@ -1441,7 +1436,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1441
1436
  }
1442
1437
  )
1443
1438
  }
1444
- ) }), Er = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_VOLUME", children: /* @__PURE__ */ t.jsx(
1439
+ ) }), kr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_VOLUME", children: /* @__PURE__ */ t.jsx(
1445
1440
  "svg",
1446
1441
  {
1447
1442
  className: e,
@@ -1458,7 +1453,7 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1458
1453
  }
1459
1454
  )
1460
1455
  }
1461
- ) }), Nr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_VOLUME_OFF", children: /* @__PURE__ */ t.jsx(
1456
+ ) }), Er = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_VOLUME_OFF", children: /* @__PURE__ */ t.jsx(
1462
1457
  "svg",
1463
1458
  {
1464
1459
  className: e,
@@ -1475,135 +1470,135 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1475
1470
  }
1476
1471
  )
1477
1472
  }
1478
- ) }), Je = ({ progress: e }) => /* @__PURE__ */ t.jsx("div", { className: "h-1 w-full overflow-hidden rounded-ui-sm bg-background/25", children: /* @__PURE__ */ t.jsx(
1473
+ ) }), Ke = ({ progress: e }) => /* @__PURE__ */ t.jsx("div", { className: "h-1 w-full overflow-hidden rounded-ui-sm bg-background/25", children: /* @__PURE__ */ t.jsx(
1479
1474
  "div",
1480
1475
  {
1481
1476
  className: "size-full rounded-ui-sm bg-background transition-transform",
1482
1477
  style: { transform: `translateX(-${100 * (1 - e)}%)` }
1483
1478
  }
1484
- ) }), Lr = 3e3, _r = ({ src: e, poster: r, itemIndex: n }) => {
1485
- const { carrouselItemIndex: o, setItemInteraction: i } = q(), u = $(null), c = $(null), l = M(() => {
1486
- if (!c.current)
1479
+ ) }), Nr = 3e3, Lr = ({ src: e, poster: r, itemIndex: n }) => {
1480
+ const { carrouselItemIndex: o, setItemInteraction: a } = q(), u = Z(null), l = Z(null), i = M(() => {
1481
+ if (!l.current)
1487
1482
  throw new Error("videoRef.current is null");
1488
- return c.current;
1483
+ return l.current;
1489
1484
  }, []);
1490
- Z(() => {
1491
- i(n, "ready");
1492
- }, [n, i]);
1493
- const a = M(() => {
1494
- l().play();
1495
- }, [l]), w = M(() => {
1496
- l().pause();
1497
- }, [l]);
1498
- Z(() => {
1499
- o === n || w();
1500
- }, [o, n, w]);
1501
- const [d, m] = D(!1), [f, z] = D(!0), v = () => {
1502
- m(!0), i(n, "running");
1503
- }, g = () => {
1504
- m(!1), i(n, "ready");
1505
- }, I = () => {
1506
- z(!1);
1485
+ F(() => {
1486
+ a(n, "ready");
1487
+ }, [n, a]);
1488
+ const s = M(() => {
1489
+ i().play();
1490
+ }, [i]), y = M(() => {
1491
+ i().pause();
1492
+ }, [i]);
1493
+ F(() => {
1494
+ o === n || y();
1495
+ }, [o, n, y]);
1496
+ const [c, m] = W(!1), [g, _] = W(!0), w = () => {
1497
+ m(!0), a(n, "running");
1507
1498
  }, x = () => {
1508
- z(!0);
1509
- }, [T, b] = D(null), p = (s) => {
1510
- const j = l(), N = s.currentTarget.getBoundingClientRect(), H = (s.clientX - N.left) / N.width, F = Math.min(1, Math.max(0, H));
1511
- j.volume = F, j.muted = !1;
1512
- }, h = (s) => {
1513
- const j = l();
1514
- j.muted = s;
1499
+ m(!1), a(n, "ready");
1500
+ }, E = () => {
1501
+ _(!1);
1502
+ }, C = () => {
1503
+ _(!0);
1504
+ }, [z, f] = W(null), p = (d) => {
1505
+ const b = i(), k = d.currentTarget.getBoundingClientRect(), A = (d.clientX - k.left) / k.width, D = Math.min(1, Math.max(0, A));
1506
+ b.volume = D, b.muted = !1;
1507
+ }, v = (d) => {
1508
+ const b = i();
1509
+ b.muted = d;
1515
1510
  };
1516
- Z(() => {
1517
- const s = c.current;
1518
- if (!s)
1511
+ F(() => {
1512
+ const d = l.current;
1513
+ if (!d)
1519
1514
  return;
1520
- const j = () => {
1521
- b({
1522
- volume: s.volume,
1523
- isMuted: s.muted
1515
+ const b = () => {
1516
+ f({
1517
+ volume: d.volume,
1518
+ isMuted: d.muted
1524
1519
  });
1525
1520
  };
1526
- return j(), s.addEventListener("volumechange", j), () => {
1527
- s.removeEventListener("volumechange", j);
1521
+ return b(), d.addEventListener("volumechange", b), () => {
1522
+ d.removeEventListener("volumechange", b);
1528
1523
  };
1529
1524
  }, []);
1530
- const [k, L] = D(null), R = k ? k.currentTime / k.duration : 0;
1531
- Z(() => {
1532
- const s = c.current;
1533
- if (!s) return;
1534
- const j = () => {
1535
- const N = s.currentTime, H = s.duration;
1536
- isNaN(N) || isNaN(H) || L({
1537
- currentTime: N,
1538
- duration: H
1525
+ const [j, T] = W(null), R = j ? j.currentTime / j.duration : 0;
1526
+ F(() => {
1527
+ const d = l.current;
1528
+ if (!d) return;
1529
+ const b = () => {
1530
+ const k = d.currentTime, A = d.duration;
1531
+ isNaN(k) || isNaN(A) || T({
1532
+ currentTime: k,
1533
+ duration: A
1539
1534
  });
1540
1535
  };
1541
- return j(), s.addEventListener("timeupdate", j), () => {
1542
- s.removeEventListener("timeupdate", j);
1536
+ return b(), d.addEventListener("timeupdate", b), () => {
1537
+ d.removeEventListener("timeupdate", b);
1543
1538
  };
1544
1539
  }, []);
1545
- const V = (s) => {
1546
- const j = l(), N = s.currentTarget.getBoundingClientRect(), H = (s.clientX - N.left) / N.width, F = j.duration * H;
1547
- j.currentTime = F;
1548
- }, y = (s) => {
1549
- const j = Math.floor(s % 3600 / 60), N = Math.floor(s % 60);
1550
- return `${j}:${N.toString().padStart(2, "0")}`;
1551
- }, [E, _] = D(!1), S = $(void 0), O = M(
1552
- () => clearTimeout(S.current),
1540
+ const S = (d) => {
1541
+ const b = i(), k = d.currentTarget.getBoundingClientRect(), A = (d.clientX - k.left) / k.width, D = b.duration * A;
1542
+ b.currentTime = D;
1543
+ }, N = (d) => {
1544
+ const b = Math.floor(d % 3600 / 60), k = Math.floor(d % 60);
1545
+ return `${b}:${k.toString().padStart(2, "0")}`;
1546
+ }, [L, I] = W(!1), H = Z(void 0), h = M(
1547
+ () => clearTimeout(H.current),
1553
1548
  []
1554
- ), C = M(() => {
1555
- O(), S.current = setTimeout(() => {
1556
- _(!1);
1557
- }, Lr);
1558
- }, [O]);
1559
- return Z(() => {
1560
- const s = u.current, j = c.current;
1561
- if (!s || !j)
1549
+ ), V = M(() => {
1550
+ h(), H.current = setTimeout(() => {
1551
+ I(!1);
1552
+ }, Nr);
1553
+ }, [h]);
1554
+ return F(() => {
1555
+ const d = u.current, b = l.current;
1556
+ if (!d || !b)
1562
1557
  return;
1563
- const N = () => {
1564
- C(), _(!0);
1565
- }, H = () => {
1566
- O(), _(!1);
1558
+ const k = () => {
1559
+ V(), I(!0);
1560
+ }, A = () => {
1561
+ h(), I(!1);
1567
1562
  };
1568
- let F = !1;
1563
+ let D = !1;
1569
1564
  const Y = () => {
1570
- F = !0;
1571
- }, W = () => {
1572
- F && (F = !1, w());
1573
- }, G = () => {
1574
- F = !1, N();
1575
- }, X = (B) => {
1576
- B.preventDefault(), B.touches.length === 1 && (C(), _((ne) => !ne));
1565
+ D = !0;
1566
+ }, $ = () => {
1567
+ D && (D = !1, y());
1568
+ }, X = () => {
1569
+ D = !1, k();
1570
+ }, B = (G) => {
1571
+ G.preventDefault(), G.touches.length === 1 && (V(), I((Q) => !Q));
1577
1572
  };
1578
- return s.addEventListener("mousedown", Y), s.addEventListener("mouseup", W), s.addEventListener("mouseenter", N), s.addEventListener("mousemove", G), s.addEventListener("mouseleave", H), j.addEventListener("touchstart", X), () => {
1579
- s.removeEventListener("mousedown", Y), s.removeEventListener("mouseup", W), s.removeEventListener("mouseenter", N), s.removeEventListener("mousemove", N), s.removeEventListener("mouseleave", H), j.removeEventListener("touchstart", X);
1573
+ return d.addEventListener("mousedown", Y), d.addEventListener("mouseup", $), d.addEventListener("mouseenter", k), d.addEventListener("mousemove", X), d.addEventListener("mouseleave", A), b.addEventListener("touchstart", B), () => {
1574
+ d.removeEventListener("mousedown", Y), d.removeEventListener("mouseup", $), d.removeEventListener("mouseenter", k), d.removeEventListener("mousemove", k), d.removeEventListener("mouseleave", A), b.removeEventListener("touchstart", B);
1580
1575
  };
1581
- }, [O, w, C]), /* @__PURE__ */ t.jsxs("div", { ref: u, className: "relative size-full", children: [
1576
+ }, [h, y, V]), /* @__PURE__ */ t.jsxs("div", { ref: u, className: "relative size-full", children: [
1582
1577
  /* @__PURE__ */ t.jsx(
1583
1578
  "video",
1584
1579
  {
1585
- ref: c,
1580
+ ref: l,
1586
1581
  className: "size-full",
1587
1582
  src: e,
1588
1583
  poster: r,
1589
1584
  disablePictureInPicture: !0,
1590
1585
  playsInline: !0,
1591
- onPlay: v,
1592
- onPause: g,
1593
- onEnded: g,
1594
- onCanPlay: I,
1595
- onWaiting: x
1586
+ onPlay: w,
1587
+ onPause: x,
1588
+ onEnded: x,
1589
+ onCanPlay: E,
1590
+ onWaiting: C
1596
1591
  }
1597
1592
  ),
1598
- d ? /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1593
+ c ? /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1599
1594
  /* @__PURE__ */ t.jsxs(
1600
1595
  "div",
1601
1596
  {
1602
- className: A(
1597
+ className: O(
1603
1598
  "absolute inset-x-0 bottom-0 cursor-auto space-y-2 bg-gradient-to-t from-foreground to-transparent p-4 pr-12 pt-8 transition-opacity duration-300",
1604
- E ? "pointer-events-auto opacity-100" : "pointer-events-none opacity-0"
1599
+ L ? "pointer-events-auto opacity-100" : "pointer-events-none opacity-0"
1605
1600
  ),
1606
- onMouseDownCapture: (s) => s.stopPropagation(),
1601
+ onMouseDownCapture: (d) => d.stopPropagation(),
1607
1602
  children: [
1608
1603
  /* @__PURE__ */ t.jsxs("div", { className: "flex items-center justify-between text-background", children: [
1609
1604
  /* @__PURE__ */ t.jsxs(
@@ -1617,20 +1612,20 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1617
1612
  shape: "icon",
1618
1613
  variant: "ghost",
1619
1614
  color: "neutral",
1620
- onClick: w,
1615
+ onClick: y,
1621
1616
  children: /* @__PURE__ */ t.jsx(Cr, { className: "size-full" })
1622
1617
  }
1623
1618
  ),
1624
- k && /* @__PURE__ */ t.jsxs("span", { className: "text-sm", children: [
1625
- y(k.currentTime),
1619
+ j && /* @__PURE__ */ t.jsxs("span", { className: "text-sm", children: [
1620
+ N(j.currentTime),
1626
1621
  " /",
1627
1622
  " ",
1628
- y(k.duration)
1623
+ N(j.duration)
1629
1624
  ] })
1630
1625
  ]
1631
1626
  }
1632
1627
  ),
1633
- T && /* @__PURE__ */ t.jsxs(
1628
+ z && /* @__PURE__ */ t.jsxs(
1634
1629
  "div",
1635
1630
  {
1636
1631
  className: "group/volume flex items-center gap-x-4 rounded-ui-md p-2 transition-colors hover:bg-foreground/25",
@@ -1638,17 +1633,17 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1638
1633
  /* @__PURE__ */ t.jsx(
1639
1634
  "div",
1640
1635
  {
1641
- className: `w-12 cursor-pointer py-1 opacity-0 transition-opacity ${T.isMuted ? "group-hover/volume:opacity-50" : "group-hover/volume:opacity-100"}`,
1636
+ className: `w-12 cursor-pointer py-1 opacity-0 transition-opacity ${z.isMuted ? "group-hover/volume:opacity-50" : "group-hover/volume:opacity-100"}`,
1642
1637
  onClick: p,
1643
- children: /* @__PURE__ */ t.jsx(Je, { progress: T.volume })
1638
+ children: /* @__PURE__ */ t.jsx(Ke, { progress: z.volume })
1644
1639
  }
1645
1640
  ),
1646
1641
  /* @__PURE__ */ t.jsx(
1647
1642
  "div",
1648
1643
  {
1649
1644
  className: "size-5 cursor-pointer",
1650
- onClick: () => h(!T.isMuted),
1651
- children: T.isMuted ? /* @__PURE__ */ t.jsx(Nr, { className: "size-full" }) : /* @__PURE__ */ t.jsx(Er, { className: "size-full" })
1645
+ onClick: () => v(!z.isMuted),
1646
+ children: z.isMuted ? /* @__PURE__ */ t.jsx(Er, { className: "size-full" }) : /* @__PURE__ */ t.jsx(kr, { className: "size-full" })
1652
1647
  }
1653
1648
  )
1654
1649
  ]
@@ -1659,44 +1654,44 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1659
1654
  "div",
1660
1655
  {
1661
1656
  className: "cursor-pointer py-1",
1662
- onClick: V,
1663
- children: /* @__PURE__ */ t.jsx(Je, { progress: R })
1657
+ onClick: S,
1658
+ children: /* @__PURE__ */ t.jsx(Ke, { progress: R })
1664
1659
  }
1665
1660
  )
1666
1661
  ]
1667
1662
  }
1668
1663
  ),
1669
- f && /* @__PURE__ */ t.jsx(
1664
+ g && /* @__PURE__ */ t.jsx(
1670
1665
  "div",
1671
1666
  {
1672
1667
  className: "pointer-events-none absolute inset-0 flex items-center justify-center bg-foreground/25",
1673
- children: /* @__PURE__ */ t.jsx(Et, { size: "lg" })
1668
+ children: /* @__PURE__ */ t.jsx(Ct, { size: "lg" })
1674
1669
  }
1675
1670
  )
1676
1671
  ] }) : /* @__PURE__ */ t.jsx(
1677
1672
  "div",
1678
1673
  {
1679
1674
  className: "absolute inset-0 flex items-center justify-center bg-foreground/25",
1680
- children: /* @__PURE__ */ t.jsx(kr, { onClick: a })
1675
+ children: /* @__PURE__ */ t.jsx(jr, { onClick: s })
1681
1676
  }
1682
1677
  )
1683
1678
  ] });
1684
- }, zr = ({ index: e, item: r, isShown: n, lazy: o }) => {
1685
- const { type: i } = r;
1679
+ }, _r = ({ index: e, item: r, isShown: n, lazy: o }) => {
1680
+ const { type: a } = r;
1686
1681
  let u;
1687
1682
  if (o)
1688
1683
  u = null;
1689
- else
1690
- switch (i) {
1684
+ else {
1685
+ switch (a) {
1691
1686
  case "image":
1692
- u = /* @__PURE__ */ t.jsx(It, { itemIndex: e, onlyPreload: !n, ...r });
1687
+ u = /* @__PURE__ */ t.jsx(_t, { itemIndex: e, onlyPreload: !n, ...r });
1693
1688
  break;
1694
1689
  case "video":
1695
- u = /* @__PURE__ */ t.jsx(_r, { itemIndex: e, ...r });
1690
+ u = /* @__PURE__ */ t.jsx(Lr, { itemIndex: e, ...r });
1696
1691
  break;
1697
1692
  case "360":
1698
1693
  u = /* @__PURE__ */ t.jsx(
1699
- jr,
1694
+ br,
1700
1695
  {
1701
1696
  itemIndex: e,
1702
1697
  onlyPreload: !n,
@@ -1705,9 +1700,11 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1705
1700
  );
1706
1701
  break;
1707
1702
  }
1703
+ u = /* @__PURE__ */ t.jsx("div", { className: O("-ml-px h-full w-[calc(100%+2px)]"), children: u });
1704
+ }
1708
1705
  return u;
1709
- }, Ir = (e) => {
1710
- Z(() => {
1706
+ }, zr = (e) => {
1707
+ F(() => {
1711
1708
  const r = (n) => {
1712
1709
  n.key === "Escape" && e();
1713
1710
  };
@@ -1716,10 +1713,14 @@ const yt = Ie(null), jt = () => Me(yt), $e = () => {
1716
1713
  };
1717
1714
  }, [e]);
1718
1715
  };
1719
- function Mr(e) {
1716
+ function Ir(e) {
1720
1717
  return e.target === e.currentTarget;
1721
1718
  }
1722
- const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_ARROW_RIGHT", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1719
+ const Mr = ({ currentIndex: e, maxIndex: r }) => /* @__PURE__ */ t.jsxs("div", { className: "space-x-0.5 rounded-ui bg-foreground/40 px-1.5 py-0.5 text-xs text-background/75 transition-radius small:space-x-1 small:px-2 small:py-1 small:text-sm", children: [
1720
+ /* @__PURE__ */ t.jsx("span", { children: e + 1 }),
1721
+ /* @__PURE__ */ t.jsx("span", { children: "/" }),
1722
+ /* @__PURE__ */ t.jsx("span", { children: r + 1 })
1723
+ ] }), qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_ARROW_RIGHT", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1723
1724
  "path",
1724
1725
  {
1725
1726
  d: "M4.07666 13.4868L5.25666 14.6668L11.9233 8.00016L5.25666 1.3335L4.07666 2.5135L9.56333 8.00016L4.07666 13.4868Z",
@@ -1731,13 +1732,13 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1731
1732
  d: "M4.66683 9.3335H3.3335V12.6668H6.66683V11.3335H4.66683V9.3335ZM3.3335 6.66683H4.66683V4.66683H6.66683V3.3335H3.3335V6.66683ZM11.3335 11.3335H9.3335V12.6668H12.6668V9.3335H11.3335V11.3335ZM9.3335 3.3335V4.66683H11.3335V6.66683H12.6668V3.3335H9.3335Z",
1732
1733
  fill: "currentColor"
1733
1734
  }
1734
- ) }) }), Vr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_GALLERY", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1735
+ ) }) }), Sr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_GALLERY", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1735
1736
  "path",
1736
1737
  {
1737
1738
  d: "M13.3334 2.66683V10.6668H5.33337V2.66683H13.3334ZM13.3334 1.3335H5.33337C4.60004 1.3335 4.00004 1.9335 4.00004 2.66683V10.6668C4.00004 11.4002 4.60004 12.0002 5.33337 12.0002H13.3334C14.0667 12.0002 14.6667 11.4002 14.6667 10.6668V2.66683C14.6667 1.9335 14.0667 1.3335 13.3334 1.3335ZM7.66671 7.78016L8.79337 9.28683L10.4467 7.22016L12.6667 10.0002H6.00004L7.66671 7.78016ZM1.33337 4.00016V13.3335C1.33337 14.0668 1.93337 14.6668 2.66671 14.6668H12V13.3335H2.66671V4.00016H1.33337Z",
1738
1739
  fill: "currentColor"
1739
1740
  }
1740
- ) }) }), Sr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_HOTSPOTS", children: /* @__PURE__ */ t.jsxs(
1741
+ ) }) }), Vr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_HOTSPOTS", children: /* @__PURE__ */ t.jsxs(
1741
1742
  "svg",
1742
1743
  {
1743
1744
  className: e,
@@ -1757,7 +1758,7 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1757
1758
  /* @__PURE__ */ t.jsx("defs", { children: /* @__PURE__ */ t.jsx("clipPath", { id: "clip0_418_982", children: /* @__PURE__ */ t.jsx("rect", { width: "12", height: "12", fill: "white" }) }) })
1758
1759
  ]
1759
1760
  }
1760
- ) }), Rr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_MINUS", children: /* @__PURE__ */ t.jsx(
1761
+ ) }), Hr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_MINUS", children: /* @__PURE__ */ t.jsx(
1761
1762
  "svg",
1762
1763
  {
1763
1764
  className: e,
@@ -1774,7 +1775,7 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1774
1775
  }
1775
1776
  )
1776
1777
  }
1777
- ) }), Hr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PLUS", children: /* @__PURE__ */ t.jsx(
1778
+ ) }), Or = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_PLUS", children: /* @__PURE__ */ t.jsx(
1778
1779
  "svg",
1779
1780
  {
1780
1781
  className: e,
@@ -1791,7 +1792,7 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1791
1792
  }
1792
1793
  )
1793
1794
  }
1794
- ) }), Or = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_REDUCE", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1795
+ ) }), Rr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_REDUCE", children: /* @__PURE__ */ t.jsx("svg", { className: e, viewBox: "0 0 16 16", fill: "none", children: /* @__PURE__ */ t.jsx(
1795
1796
  "path",
1796
1797
  {
1797
1798
  d: "M3.33325 10.6668H5.33325V12.6668H6.66659V9.3335H3.33325V10.6668ZM5.33325 5.3335H3.33325V6.66683H6.66659V3.3335H5.33325V5.3335ZM9.33325 12.6668H10.6666V10.6668H12.6666V9.3335H9.33325V12.6668ZM10.6666 5.3335V3.3335H9.33325V6.66683H12.6666V5.3335H10.6666Z",
@@ -1802,11 +1803,11 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1802
1803
  onToggle: r,
1803
1804
  label: n,
1804
1805
  className: o,
1805
- children: i
1806
+ children: a
1806
1807
  }) => /* @__PURE__ */ t.jsxs(
1807
1808
  "label",
1808
1809
  {
1809
- className: A(
1810
+ className: O(
1810
1811
  "flex cursor-pointer items-center justify-center gap-x-2",
1811
1812
  o
1812
1813
  ),
@@ -1824,25 +1825,25 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1824
1825
  /* @__PURE__ */ t.jsx(
1825
1826
  "div",
1826
1827
  {
1827
- className: A(
1828
+ className: O(
1828
1829
  "flex h-5 w-8 items-center justify-center rounded-full transition-colors",
1829
1830
  e ? "bg-primary" : "bg-background/60"
1830
1831
  ),
1831
1832
  children: /* @__PURE__ */ t.jsx(
1832
1833
  "div",
1833
1834
  {
1834
- className: A(
1835
+ className: O(
1835
1836
  "flex size-4 items-center justify-center rounded-full p-0.5 transition",
1836
1837
  e ? "translate-x-1.5 bg-primary-foreground text-primary" : "-translate-x-1.5 bg-background text-foreground"
1837
1838
  ),
1838
- children: i
1839
+ children: a
1839
1840
  }
1840
1841
  )
1841
1842
  }
1842
1843
  )
1843
1844
  ]
1844
1845
  }
1845
- ), Ar = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_BURGER", children: /* @__PURE__ */ t.jsx(
1846
+ ), Fr = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, customizationKey: "UI_BURGER", children: /* @__PURE__ */ t.jsx(
1846
1847
  "svg",
1847
1848
  {
1848
1849
  className: e,
@@ -1859,24 +1860,24 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1859
1860
  }
1860
1861
  )
1861
1862
  }
1862
- ) }), Zr = ({ sharedClassName: e }) => {
1863
- const { categories: r } = re(), { displayedCategoryId: n, changeCategory: o } = q(), [i, u] = D(!1), c = () => {
1864
- u(!i);
1865
- }, l = () => {
1863
+ ) }), Ar = ({ sharedClassName: e }) => {
1864
+ const { categories: r } = ne(), { displayedCategoryId: n, changeCategory: o } = q(), [a, u] = W(!1), l = () => {
1865
+ u(!a);
1866
+ }, i = () => {
1866
1867
  u(!1);
1867
1868
  };
1868
1869
  return /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1869
- i && /* @__PURE__ */ t.jsx(
1870
+ a && /* @__PURE__ */ t.jsx(
1870
1871
  "div",
1871
1872
  {
1872
- className: A(e, "inset-0 small:hidden"),
1873
- onClick: l
1873
+ className: O(e, "inset-0 small:hidden"),
1874
+ onClick: i
1874
1875
  }
1875
1876
  ),
1876
1877
  /* @__PURE__ */ t.jsxs(
1877
1878
  "div",
1878
1879
  {
1879
- className: A(
1880
+ className: O(
1880
1881
  e,
1881
1882
  ue("top-left"),
1882
1883
  "flex gap-x-2 small:hidden"
@@ -1886,24 +1887,24 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1886
1887
  K,
1887
1888
  {
1888
1889
  shape: "icon",
1889
- color: i ? "primary" : "neutral",
1890
- onClick: c,
1891
- children: /* @__PURE__ */ t.jsx(Ar, {})
1890
+ color: a ? "primary" : "neutral",
1891
+ onClick: l,
1892
+ children: /* @__PURE__ */ t.jsx(Fr, {})
1892
1893
  }
1893
1894
  ),
1894
- i && /* @__PURE__ */ t.jsx("div", { className: "rounded-ui-md bg-background", children: /* @__PURE__ */ t.jsx("ul", { className: "space-y-0.5 p-1", children: r.map(({ id: a, title: w }) => /* @__PURE__ */ t.jsx(
1895
+ a && /* @__PURE__ */ t.jsx("div", { className: "rounded-ui-md bg-background transition-radius", children: /* @__PURE__ */ t.jsx("ul", { className: "space-y-0.5 p-1", children: r.map(({ id: s, title: y }) => /* @__PURE__ */ t.jsx(
1895
1896
  "li",
1896
1897
  {
1897
- className: A(
1898
- "cursor-pointer rounded-ui px-2 py-1 text-sm font-bold transition-colors hover:bg-primary/30",
1899
- a === n && "bg-primary/50"
1898
+ className: O(
1899
+ "cursor-pointer rounded-ui px-2 py-1 text-sm font-bold transition-all hover:bg-primary/30",
1900
+ s === n && "bg-primary/50"
1900
1901
  ),
1901
1902
  onClick: () => {
1902
- o(a), u(!1);
1903
+ o(s), u(!1);
1903
1904
  },
1904
- children: w
1905
+ children: y
1905
1906
  },
1906
- a
1907
+ s
1907
1908
  )) }) })
1908
1909
  ]
1909
1910
  }
@@ -1911,70 +1912,91 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1911
1912
  /* @__PURE__ */ t.jsx(
1912
1913
  "div",
1913
1914
  {
1914
- className: A(
1915
+ className: O(
1915
1916
  e,
1916
- bt("top"),
1917
+ vt("top"),
1917
1918
  "w-full overflow-x-auto max-small:hidden"
1918
1919
  ),
1919
- children: /* @__PURE__ */ t.jsx("div", { className: "mx-auto flex w-fit gap-x-1 rounded-ui-md bg-background p-1 shadow", children: r.map(({ id: a, title: w }) => /* @__PURE__ */ t.jsx(
1920
+ children: /* @__PURE__ */ t.jsx("div", { className: "mx-auto flex w-fit gap-x-1 rounded-ui-md bg-background p-1 shadow", children: r.map(({ id: s, title: y }) => /* @__PURE__ */ t.jsx(
1920
1921
  K,
1921
1922
  {
1922
- variant: a === n ? "fill" : "ghost",
1923
- onClick: () => o(a),
1924
- children: w
1923
+ variant: s === n ? "fill" : "ghost",
1924
+ onClick: () => o(s),
1925
+ children: y
1925
1926
  },
1926
- a
1927
+ s
1927
1928
  )) })
1928
1929
  }
1929
1930
  )
1930
1931
  ] });
1931
- }, Fr = () => {
1932
- const { flatten: e, infiniteCarrousel: r, permanentGallery: n } = J(), {
1932
+ }, Dr = () => {
1933
+ const { hideCategories: e, infiniteCarrousel: r, permanentGallery: n } = J(), {
1933
1934
  items: { length: o },
1934
- aspectRatioStyle: i
1935
- } = re(), {
1935
+ aspectRatioStyle: a
1936
+ } = ne(), {
1936
1937
  slidable: u,
1937
- masterItemIndex: c,
1938
- prevItem: l,
1939
- nextItem: a,
1940
- showGalleryControls: w,
1941
- enableHotspotsControl: d,
1942
- showHotspots: m,
1943
- toggleHotspots: f,
1944
- showGallery: z,
1945
- toggleGallery: v,
1946
- extendMode: g,
1947
- toggleExtendMode: I,
1948
- shownDetails: x,
1949
- isShowingDetails: T,
1950
- resetShownDetails: b,
1951
- showZoomControls: p,
1952
- isZooming: h,
1953
- canZoomIn: k,
1954
- zoomIn: L,
1955
- canZoomOut: R,
1956
- zoomOut: V,
1957
- resetView: y
1958
- } = q(), E = M(
1959
- (O) => {
1960
- Mr(O) && b();
1938
+ carrouselItemIndex: l,
1939
+ masterItemIndex: i,
1940
+ prevItem: s,
1941
+ nextItem: y,
1942
+ showGalleryControls: c,
1943
+ enableHotspotsControl: m,
1944
+ showHotspots: g,
1945
+ toggleHotspots: _,
1946
+ showGallery: w,
1947
+ toggleGallery: x,
1948
+ extendMode: E,
1949
+ toggleExtendMode: C,
1950
+ shownDetails: z,
1951
+ isShowingDetails: f,
1952
+ resetShownDetails: p,
1953
+ showZoomControls: v,
1954
+ isZooming: j,
1955
+ canZoomIn: T,
1956
+ zoomIn: R,
1957
+ canZoomOut: S,
1958
+ zoomOut: N,
1959
+ resetView: L
1960
+ } = q(), I = M(
1961
+ (h) => {
1962
+ Ir(h) && p();
1961
1963
  },
1962
- [b]
1964
+ [p]
1963
1965
  );
1964
- Ir(b);
1965
- const _ = "absolute z-overlay", S = `transition-opacity ${w ? "opacity-100" : "opacity-0 !pointer-events-none"}`;
1966
+ zr(p);
1967
+ const H = "absolute z-overlay";
1966
1968
  return /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1967
- !e && !h && /* @__PURE__ */ t.jsx(Zr, { sharedClassName: _ }),
1968
- u && !h && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1969
+ !e && /* @__PURE__ */ t.jsx(
1970
+ Ar,
1971
+ {
1972
+ sharedClassName: O(
1973
+ H,
1974
+ "transition-opacity",
1975
+ j ? "!pointer-events-none opacity-0" : "opacity-100"
1976
+ )
1977
+ }
1978
+ ),
1979
+ u && !j && /* @__PURE__ */ t.jsx("div", { className: O(H, ue("top-right")), children: /* @__PURE__ */ t.jsx(
1980
+ Mr,
1981
+ {
1982
+ currentIndex: l,
1983
+ maxIndex: o - 1
1984
+ }
1985
+ ) }),
1986
+ u && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
1969
1987
  /* @__PURE__ */ t.jsx(
1970
1988
  K,
1971
1989
  {
1972
1990
  shape: "icon",
1973
1991
  color: "neutral",
1974
- className: A(_, ue("middle-left")),
1975
- onClick: l,
1976
- disabled: !r && c <= 0,
1977
- children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_ARROW_LEFT", children: /* @__PURE__ */ t.jsx(Qe, { className: "size-full rotate-180" }) })
1992
+ className: O(
1993
+ H,
1994
+ ue("middle-left"),
1995
+ j ? "!pointer-events-none opacity-0" : "opacity-100"
1996
+ ),
1997
+ onClick: s,
1998
+ disabled: !r && i <= 0,
1999
+ children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_ARROW_LEFT", children: /* @__PURE__ */ t.jsx(qe, { className: "size-full rotate-180" }) })
1978
2000
  }
1979
2001
  ),
1980
2002
  /* @__PURE__ */ t.jsx(
@@ -1982,39 +2004,45 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
1982
2004
  {
1983
2005
  shape: "icon",
1984
2006
  color: "neutral",
1985
- className: A(_, ue("middle-right")),
1986
- onClick: a,
1987
- disabled: !r && c >= o - 1,
1988
- children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_ARROW_RIGHT", children: /* @__PURE__ */ t.jsx(Qe, { className: "size-full" }) })
2007
+ className: O(
2008
+ H,
2009
+ ue("middle-right"),
2010
+ j ? "!pointer-events-none opacity-0" : "opacity-100"
2011
+ ),
2012
+ onClick: y,
2013
+ disabled: !r && i >= o - 1,
2014
+ children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_ARROW_RIGHT", children: /* @__PURE__ */ t.jsx(qe, { className: "size-full" }) })
1989
2015
  }
1990
2016
  )
1991
2017
  ] }),
1992
2018
  /* @__PURE__ */ t.jsxs(
1993
2019
  "div",
1994
2020
  {
1995
- className: A(
1996
- _,
2021
+ className: O(
2022
+ H,
1997
2023
  ue("bottom-fullW"),
1998
2024
  "pointer-events-none grid grid-cols-[auto,1fr,auto] items-end *:pointer-events-auto small:gap-x-2"
1999
2025
  ),
2000
2026
  children: [
2001
- !n && o > 1 && !h && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
2027
+ !n && u && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
2002
2028
  /* @__PURE__ */ t.jsx(
2003
2029
  K,
2004
2030
  {
2005
- className: S,
2031
+ className: c && !j ? "opacity-100" : "!pointer-events-none opacity-0",
2006
2032
  variant: "fill",
2007
- color: z ? "primary" : "neutral",
2033
+ color: w ? "primary" : "neutral",
2008
2034
  shape: "icon",
2009
- onClick: v,
2010
- children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_GALLERY", children: /* @__PURE__ */ t.jsx(Vr, { className: "size-full" }) })
2035
+ onClick: x,
2036
+ children: /* @__PURE__ */ t.jsx(U, { customizationKey: "CONTROLS_GALLERY", children: /* @__PURE__ */ t.jsx(Sr, { className: "size-full" }) })
2011
2037
  }
2012
2038
  ),
2013
- z && /* @__PURE__ */ t.jsx(
2014
- _t,
2039
+ w && /* @__PURE__ */ t.jsx(
2040
+ Nt,
2015
2041
  {
2016
- className: A(
2017
- S,
2042
+ className: O(
2043
+ "transition-opacity",
2044
+ c && !j ? "opacity-100" : "!pointer-events-none opacity-0",
2045
+ // Left & Right gradient mask to fade the gallery
2018
2046
  "[mask-image:linear-gradient(to_left,transparent_0px,black_4px,black_calc(100%-4px),transparent_100%)]"
2019
2047
  ),
2020
2048
  containerClassName: "mx-1"
@@ -2022,29 +2050,40 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2022
2050
  )
2023
2051
  ] }),
2024
2052
  /* @__PURE__ */ t.jsxs("div", { className: "col-start-3 flex flex-col items-end gap-y-1 small:gap-y-2", children: [
2025
- d && !h && /* @__PURE__ */ t.jsx(Pr, { enabled: m, onToggle: f, children: /* @__PURE__ */ t.jsx(Sr, { className: "size-full" }) }),
2026
- p && /* @__PURE__ */ t.jsxs("div", { className: "max-small:hidden", children: [
2053
+ m && /* @__PURE__ */ t.jsx(
2054
+ Pr,
2055
+ {
2056
+ className: O(
2057
+ "transition-opacity",
2058
+ j ? "!pointer-events-none opacity-0" : "opacity-100"
2059
+ ),
2060
+ enabled: g,
2061
+ onToggle: _,
2062
+ children: /* @__PURE__ */ t.jsx(Vr, { className: "size-full" })
2063
+ }
2064
+ ),
2065
+ v && /* @__PURE__ */ t.jsxs("div", { className: "max-small:hidden", children: [
2027
2066
  /* @__PURE__ */ t.jsx(
2028
2067
  K,
2029
2068
  {
2030
2069
  className: "rounded-b-none",
2031
2070
  color: "neutral",
2032
2071
  shape: "icon",
2033
- disabled: !k,
2034
- onClick: L,
2035
- children: /* @__PURE__ */ t.jsx(Hr, { className: "size-full" })
2072
+ disabled: !T,
2073
+ onClick: R,
2074
+ children: /* @__PURE__ */ t.jsx(Or, { className: "size-full" })
2036
2075
  }
2037
2076
  ),
2038
- /* @__PURE__ */ t.jsx(Lt, { color: "background" }),
2077
+ /* @__PURE__ */ t.jsx(Et, { color: "background" }),
2039
2078
  /* @__PURE__ */ t.jsx(
2040
2079
  K,
2041
2080
  {
2042
2081
  className: "rounded-t-none",
2043
2082
  color: "neutral",
2044
2083
  shape: "icon",
2045
- disabled: !R,
2046
- onClick: V,
2047
- children: /* @__PURE__ */ t.jsx(Rr, { className: "size-full" })
2084
+ disabled: !S,
2085
+ onClick: N,
2086
+ children: /* @__PURE__ */ t.jsx(Hr, { className: "size-full" })
2048
2087
  }
2049
2088
  )
2050
2089
  ] }),
@@ -2052,10 +2091,10 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2052
2091
  K,
2053
2092
  {
2054
2093
  variant: "fill",
2055
- color: g ? "primary" : "neutral",
2094
+ color: E ? "primary" : "neutral",
2056
2095
  shape: "icon",
2057
- onClick: I,
2058
- children: g ? /* @__PURE__ */ t.jsx(Or, { className: "size-full" }) : /* @__PURE__ */ t.jsx(Tr, { className: "size-full" })
2096
+ onClick: C,
2097
+ children: E ? /* @__PURE__ */ t.jsx(Rr, { className: "size-full" }) : /* @__PURE__ */ t.jsx(Tr, { className: "size-full" })
2059
2098
  }
2060
2099
  )
2061
2100
  ] })
@@ -2065,55 +2104,55 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2065
2104
  /* @__PURE__ */ t.jsx(
2066
2105
  "div",
2067
2106
  {
2068
- className: A(
2069
- _,
2107
+ className: O(
2108
+ H,
2070
2109
  "inset-0 flex justify-end overflow-hidden bg-foreground/60 transition-opacity duration-details",
2071
- T ? "opacity-100" : "pointer-events-none opacity-0"
2110
+ f ? "opacity-100" : "pointer-events-none opacity-0"
2072
2111
  ),
2073
- onClick: E,
2112
+ onClick: I,
2074
2113
  children: /* @__PURE__ */ t.jsx(
2075
2114
  "div",
2076
2115
  {
2077
- className: A(
2116
+ className: O(
2078
2117
  "h-full w-3/5 bg-background transition-transform duration-details",
2079
- T ? "translate-x-0" : "translate-x-full"
2118
+ f ? "translate-x-0" : "translate-x-full"
2080
2119
  ),
2081
- children: !!x && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
2120
+ children: !!z && /* @__PURE__ */ t.jsxs(t.Fragment, { children: [
2082
2121
  /* @__PURE__ */ t.jsx(
2083
2122
  me,
2084
2123
  {
2085
2124
  className: "w-full bg-foreground/65",
2086
- style: i,
2087
- src: x.src,
2125
+ style: a,
2126
+ src: z.src,
2088
2127
  imgInPlayerWidthRatio: 0.6
2089
2128
  }
2090
2129
  ),
2091
2130
  /* @__PURE__ */ t.jsxs(
2092
2131
  "div",
2093
2132
  {
2094
- className: A(
2133
+ className: O(
2095
2134
  "space-y-1 px-2 py-1 small:p-3",
2096
- g && "large:p-4"
2135
+ E && "large:p-4"
2097
2136
  ),
2098
2137
  children: [
2099
- x.title && /* @__PURE__ */ t.jsx(
2138
+ z.title && /* @__PURE__ */ t.jsx(
2100
2139
  "span",
2101
2140
  {
2102
- className: A(
2141
+ className: O(
2103
2142
  "text-sm font-semibold small:text-base small:font-bold",
2104
- g && "large:text-lg"
2143
+ E && "large:text-lg"
2105
2144
  ),
2106
- children: x.title
2145
+ children: z.title
2107
2146
  }
2108
2147
  ),
2109
- x.text && /* @__PURE__ */ t.jsx(
2148
+ z.text && /* @__PURE__ */ t.jsx(
2110
2149
  "p",
2111
2150
  {
2112
- className: A(
2151
+ className: O(
2113
2152
  "text-xs text-foreground/65 small:text-sm",
2114
- g && "large:text-base"
2153
+ E && "large:text-base"
2115
2154
  ),
2116
- children: x.text
2155
+ children: z.text
2117
2156
  }
2118
2157
  )
2119
2158
  ]
@@ -2124,222 +2163,224 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2124
2163
  )
2125
2164
  }
2126
2165
  ),
2127
- (h || T) && /* @__PURE__ */ t.jsx(
2128
- kt,
2166
+ (j || f) && /* @__PURE__ */ t.jsx(
2167
+ bt,
2129
2168
  {
2130
- className: A(_, ue("top-right")),
2131
- onClick: y
2169
+ className: O(H, ue("top-right")),
2170
+ onClick: L
2132
2171
  }
2133
2172
  )
2134
2173
  ] });
2135
- }, Dr = ({ className: e = "" }) => {
2136
- const { infiniteCarrousel: r, isFullScreen: n } = J(), { items: o, aspectRatioStyle: i } = re(), {
2174
+ }, Wr = ({ className: e = "" }) => {
2175
+ const { infiniteCarrousel: r, isFullScreen: n } = J(), { items: o, aspectRatioStyle: a } = ne(), {
2137
2176
  slidable: u,
2138
- carrouselItemIndex: c,
2139
- setCarrouselItemIndex: l,
2140
- itemIndexCommand: a,
2141
- setItemIndexCommand: w,
2142
- specialCommand: d,
2177
+ carrouselItemIndex: l,
2178
+ setCarrouselItemIndex: i,
2179
+ itemIndexCommand: s,
2180
+ setItemIndexCommand: y,
2181
+ specialCommand: c,
2143
2182
  isRunningSpecialCommand: m,
2144
- finishSpecialCommand: f,
2145
- extendMode: z,
2146
- extendTransition: v,
2147
- isZooming: g
2148
- } = q(), I = $(null), x = M((C) => {
2149
- if (!I.current)
2150
- throw new Error(`[${C ?? "sliderOrThrow"}] slider.current is null`);
2151
- return I.current;
2152
- }, []), T = $(!1), b = $(null), p = $(null), h = $(null), k = M(() => {
2153
- h.current && cancelAnimationFrame(h.current);
2154
- }, []), L = M(() => {
2155
- const C = x("computeClosestSnapIndex"), s = Array.from(C.children), j = C.scrollLeft, N = s.reduce(
2156
- (H, F, Y) => {
2157
- const W = F.offsetLeft;
2158
- return Math.abs(W - j) < Math.abs(s[H].offsetLeft - j) ? Y : H;
2183
+ finishSpecialCommand: g,
2184
+ extendMode: _,
2185
+ extendTransition: w
2186
+ } = q(), x = Z(null), E = M((h) => {
2187
+ if (!x.current)
2188
+ throw new Error(`[${h ?? "sliderOrThrow"}] slider.current is null`);
2189
+ return x.current;
2190
+ }, []), C = Z(!1), z = Z(null), f = Z(null), p = Z(null), v = M(() => {
2191
+ p.current && cancelAnimationFrame(p.current);
2192
+ }, []), j = M(() => {
2193
+ const h = E("computeClosestSnapIndex"), V = Array.from(h.children), d = h.scrollLeft, b = V.reduce(
2194
+ (k, A, D) => {
2195
+ const Y = A.offsetLeft;
2196
+ return Math.abs(Y - d) < Math.abs(V[k].offsetLeft - d) ? D : k;
2159
2197
  },
2160
2198
  0
2161
2199
  );
2162
- return d === "first_to_last" ? Ge(N, o.length) : d === "last_to_first" ? Ge(N - 1, o.length) : N;
2163
- }, [d, x, o.length]), R = M(
2164
- (C) => {
2165
- const s = x("setStyleCursor");
2166
- s.style.cursor = C;
2200
+ return c === "first_to_last" ? Xe(b, o.length) : c === "last_to_first" ? Xe(b - 1, o.length) : b;
2201
+ }, [c, E, o.length]), T = M(
2202
+ (h) => {
2203
+ const V = E("setStyleCursor");
2204
+ V.style.cursor = h;
2167
2205
  },
2168
- [x]
2169
- ), V = M(
2170
- (C) => {
2171
- const s = x("setStyleSnapState");
2172
- C === "mandatory" ? s.style.scrollSnapType = "x mandatory" : s.style.scrollSnapType = "none";
2206
+ [E]
2207
+ ), R = M(
2208
+ (h) => {
2209
+ const V = E("setStyleSnapState");
2210
+ h === "mandatory" ? V.style.scrollSnapType = "x mandatory" : V.style.scrollSnapType = "none";
2173
2211
  },
2174
- [x]
2175
- ), y = M(
2176
- (C, s, j) => {
2177
- k();
2178
- const N = x("scrollToIndex"), H = Array.from(N.children), F = N.scrollLeft, Y = H[C].offsetLeft, W = (pe) => {
2179
- N.scrollTo({
2212
+ [E]
2213
+ ), S = M(
2214
+ (h, V, d) => {
2215
+ v();
2216
+ const b = E("scrollToIndex"), k = Array.from(b.children), A = b.scrollLeft, D = k[h].offsetLeft, Y = (pe) => {
2217
+ b.scrollTo({
2180
2218
  left: pe,
2181
2219
  behavior: "instant"
2182
2220
  });
2183
- }, G = () => {
2184
- W(Y), V("mandatory"), j == null || j();
2185
- }, X = Math.abs(F - Y);
2186
- if (X < 1 || s === "instant") {
2187
- G();
2221
+ }, $ = () => {
2222
+ Y(D), R("mandatory"), d?.();
2223
+ }, X = Math.abs(A - D);
2224
+ if (X < 1 || V === "instant") {
2225
+ $();
2188
2226
  return;
2189
2227
  }
2190
- const B = se(X / 2.5, 300, 1e3), ne = (/* @__PURE__ */ new Date()).getTime();
2191
- V("none");
2192
- const je = () => {
2228
+ const B = ae(X / 2.5, 300, 1e3), G = (/* @__PURE__ */ new Date()).getTime();
2229
+ R("none");
2230
+ const Q = () => {
2193
2231
  const pe = () => {
2194
- const ke = (/* @__PURE__ */ new Date()).getTime() - ne;
2195
- if (ke >= B) {
2196
- G();
2232
+ const be = (/* @__PURE__ */ new Date()).getTime() - G;
2233
+ if (be >= B) {
2234
+ $();
2197
2235
  return;
2198
2236
  }
2199
- const ae = Math.min(ke / B, 1), he = zt(ae), Te = _e(F, Y, he);
2200
- W(Te), je();
2237
+ const Ie = Math.min(be / B, 1), ie = Lt(Ie), he = Ne(A, D, ie);
2238
+ Y(he), Q();
2201
2239
  };
2202
- h.current = requestAnimationFrame(pe);
2240
+ p.current = requestAnimationFrame(pe);
2203
2241
  };
2204
- je();
2242
+ Q();
2205
2243
  },
2206
- [k, x, V]
2207
- ), [E, _] = D(), S = !!E;
2208
- Z(() => {
2209
- const C = () => {
2210
- clearTimeout(E);
2211
- const s = setTimeout(() => {
2212
- _(void 0);
2213
- }, ft);
2214
- _(s);
2244
+ [v, E, R]
2245
+ ), [N, L] = W(), I = !!N;
2246
+ F(() => {
2247
+ const h = () => {
2248
+ clearTimeout(N);
2249
+ const V = setTimeout(() => {
2250
+ L(void 0);
2251
+ }, pt);
2252
+ L(V);
2215
2253
  };
2216
- return addEventListener("resize", C), document.addEventListener("fullscreenchange", C), () => {
2217
- removeEventListener("resize", C), document.removeEventListener("fullscreenchange", C);
2254
+ return addEventListener("resize", h), document.addEventListener("fullscreenchange", h), () => {
2255
+ removeEventListener("resize", h), document.removeEventListener("fullscreenchange", h);
2218
2256
  };
2219
- }, [E]), Z(() => {
2220
- const C = L();
2221
- Number.isNaN(C) || C !== c && y(c, "instant");
2257
+ }, [N]), F(() => {
2258
+ const h = j();
2259
+ Number.isNaN(h) || h !== l && S(l, "instant");
2222
2260
  }, [
2223
- c,
2224
- y,
2225
- L,
2261
+ l,
2262
+ S,
2263
+ j,
2226
2264
  // - Run the effect when those values change
2227
2265
  o,
2228
- E,
2266
+ N,
2229
2267
  n,
2230
- z,
2231
- v
2232
- ]), Z(() => {
2268
+ _,
2269
+ w
2270
+ ]), F(() => {
2233
2271
  if (!u || m) {
2234
- R("auto");
2272
+ T("auto");
2235
2273
  return;
2236
2274
  }
2237
- const C = I.current;
2238
- if (!C)
2275
+ const h = x.current;
2276
+ if (!h)
2239
2277
  return;
2240
- R("grab"), V("mandatory");
2241
- const s = (H) => {
2242
- H.button === 0 && (H.preventDefault(), H.stopPropagation(), k(), T.current = !0, b.current = H.pageX - C.offsetLeft, p.current = C.scrollLeft, R("grabbing"));
2243
- }, j = (H) => {
2244
- if (!T.current)
2278
+ T("grab"), R("mandatory");
2279
+ const V = (k) => {
2280
+ k.button === 0 && (k.preventDefault(), k.stopPropagation(), v(), C.current = !0, z.current = k.pageX - h.offsetLeft, f.current = h.scrollLeft, T("grabbing"));
2281
+ }, d = (k) => {
2282
+ if (!C.current)
2245
2283
  return;
2246
- if (b.current === null)
2284
+ if (z.current === null)
2247
2285
  throw new Error("[onMouseMove] startX is null");
2248
- V("none");
2249
- const F = H.pageX - C.offsetLeft - b.current;
2286
+ R("none");
2287
+ const A = k.pageX - h.offsetLeft - z.current;
2250
2288
  requestAnimationFrame(() => {
2251
- if (p.current === null)
2289
+ if (f.current === null)
2252
2290
  throw new Error("[onMouseMove] scrollLeft is null");
2253
- C.scrollLeft = p.current - F;
2291
+ h.scrollLeft = f.current - A;
2254
2292
  });
2255
- }, N = () => {
2256
- if (!T.current)
2293
+ }, b = () => {
2294
+ if (!C.current)
2257
2295
  return;
2258
- T.current = !1, R("grab");
2259
- const H = L();
2260
- y(H, "smooth");
2296
+ C.current = !1, T("grab");
2297
+ const k = j();
2298
+ S(k, "smooth");
2261
2299
  };
2262
- return C.addEventListener("mousedown", s), document.addEventListener("mousemove", j), document.addEventListener("mouseleave", N), document.addEventListener("mouseup", N), document.addEventListener("contextmenu", N), () => {
2263
- C.removeEventListener("mousedown", s), document.removeEventListener("mousemove", j), document.removeEventListener("mouseleave", N), document.removeEventListener("mouseup", N), document.removeEventListener("contextmenu", N);
2300
+ return h.addEventListener("mousedown", V), document.addEventListener("mousemove", d), document.addEventListener("mouseleave", b), document.addEventListener("mouseup", b), document.addEventListener("contextmenu", b), () => {
2301
+ h.removeEventListener("mousedown", V), document.removeEventListener("mousemove", d), document.removeEventListener("mouseleave", b), document.removeEventListener("mouseup", b), document.removeEventListener("contextmenu", b);
2264
2302
  };
2265
2303
  }, [
2266
- k,
2267
- L,
2304
+ v,
2305
+ j,
2268
2306
  m,
2269
- y,
2307
+ S,
2308
+ T,
2270
2309
  R,
2271
- V,
2272
2310
  u
2273
- ]), Z(() => {
2274
- if (v || S)
2311
+ ]), F(() => {
2312
+ if (w || I)
2275
2313
  return;
2276
- const C = I.current;
2277
- if (!C)
2314
+ const h = x.current;
2315
+ if (!h)
2278
2316
  return;
2279
- const s = () => {
2280
- const j = L();
2281
- Number.isNaN(j) || (l(j), j === a && w(null));
2317
+ const V = () => {
2318
+ const d = j();
2319
+ Number.isNaN(d) || (i(d), d === s && y(null));
2282
2320
  };
2283
- return C.addEventListener("scroll", s), () => {
2284
- C.removeEventListener("scroll", s);
2321
+ return h.addEventListener("scroll", V), () => {
2322
+ h.removeEventListener("scroll", V);
2285
2323
  };
2286
2324
  }, [
2287
- L,
2288
- v,
2325
+ j,
2326
+ w,
2289
2327
  m,
2290
- S,
2291
- a,
2328
+ I,
2329
+ s,
2292
2330
  o.length,
2293
- l,
2294
- w
2295
- ]), Z(() => {
2296
- if (a === null)
2331
+ i,
2332
+ y
2333
+ ]), F(() => {
2334
+ if (s === null)
2297
2335
  return;
2298
- const C = () => f();
2299
- switch (d) {
2336
+ const h = () => g();
2337
+ switch (c) {
2300
2338
  case "first_to_last":
2301
- y(o.length, "instant"), y(o.length - 1, "smooth", C);
2339
+ S(o.length, "instant"), S(o.length - 1, "smooth", h);
2302
2340
  break;
2303
2341
  case "last_to_first":
2304
- y(0, "instant"), y(1, "smooth", C);
2342
+ S(0, "instant"), S(1, "smooth", h);
2305
2343
  break;
2306
2344
  case "instant":
2307
- y(a, "instant", C);
2345
+ S(s, "instant", h);
2308
2346
  break;
2309
2347
  default:
2310
- y(a, "smooth");
2348
+ S(s, "smooth");
2311
2349
  break;
2312
2350
  }
2313
2351
  }, [
2314
- d,
2315
- f,
2316
- a,
2352
+ c,
2353
+ g,
2354
+ s,
2317
2355
  o.length,
2318
- y
2356
+ S
2319
2357
  ]);
2320
- const O = () => /* @__PURE__ */ t.jsx("div", { className: "h-full", style: i });
2358
+ const H = () => /* @__PURE__ */ t.jsx("div", { className: "h-full", style: a });
2321
2359
  return /* @__PURE__ */ t.jsxs(
2322
2360
  "div",
2323
2361
  {
2324
- className: A("relative overflow-hidden rounded-carrousel", e),
2325
- style: i,
2362
+ className: O(
2363
+ "relative overflow-hidden rounded-carrousel transition-radius",
2364
+ e
2365
+ ),
2366
+ style: a,
2326
2367
  children: [
2327
2368
  /* @__PURE__ */ t.jsxs(
2328
2369
  "div",
2329
2370
  {
2330
- ref: I,
2371
+ ref: x,
2331
2372
  className: `flex size-full ${u ? "overflow-x-auto no-scrollbar *:snap-start *:snap-always" : "justify-center"}`,
2332
2373
  children: [
2333
- d === "last_to_first" && /* @__PURE__ */ t.jsx(O, {}),
2334
- o.map((C, s) => {
2335
- const j = C.type === "360" ? C.images[0] : C.src, N = s === c, H = s === 0, F = c === o.length - 1, Y = s === o.length - 1, W = c === 0, G = Math.abs(s - c) > 1 && // Not next to the current one
2336
- !(r && H && F) && // Not the last one when the first one is shown (only for infinite carrousel)
2337
- !(r && Y && W), X = (() => {
2338
- if (d === "first_to_last" && H)
2374
+ c === "last_to_first" && /* @__PURE__ */ t.jsx(H, {}),
2375
+ o.map((h, V) => {
2376
+ const d = h.type === "360" ? h.images[0] : h.src, b = V === l, k = V === 0, A = l === o.length - 1, D = V === o.length - 1, Y = l === 0, $ = Math.abs(V - l) > 1 && // Not next to the current one
2377
+ !(r && k && A) && // Not the last one when the first one is shown (only for infinite carrousel)
2378
+ !(r && D && Y), X = (() => {
2379
+ if (c === "first_to_last" && k)
2339
2380
  return {
2340
2381
  transform: `translateX(${100 * o.length}%)`
2341
2382
  };
2342
- if (d === "last_to_first" && Y)
2383
+ if (c === "last_to_first" && D)
2343
2384
  return {
2344
2385
  transform: `translateX(-${100 * o.length}%)`
2345
2386
  };
@@ -2347,114 +2388,110 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2347
2388
  return /* @__PURE__ */ t.jsx(
2348
2389
  "div",
2349
2390
  {
2350
- className: "relative h-full bg-foreground/50",
2351
- style: { ...i, ...X },
2391
+ className: O(
2392
+ "h-full bg-foreground/50",
2393
+ l === V && "z-1"
2394
+ // Give high-ground to the shown item (to avoid 1px vertical line)
2395
+ ),
2396
+ style: { ...a, ...X },
2352
2397
  children: /* @__PURE__ */ t.jsx(
2353
- zr,
2398
+ _r,
2354
2399
  {
2355
- index: s,
2356
- item: C,
2357
- isShown: N,
2358
- lazy: G
2400
+ index: V,
2401
+ item: h,
2402
+ isShown: b,
2403
+ lazy: $
2359
2404
  }
2360
2405
  )
2361
2406
  },
2362
- `${s}_${j}`
2407
+ `${V}_${d}`
2363
2408
  );
2364
2409
  }),
2365
- d === "first_to_last" && /* @__PURE__ */ t.jsx(O, {})
2410
+ c === "first_to_last" && /* @__PURE__ */ t.jsx(H, {})
2366
2411
  ]
2367
2412
  }
2368
2413
  ),
2369
- u && !g && /* @__PURE__ */ t.jsx("div", { className: `absolute ${ue("top-right")}`, children: /* @__PURE__ */ t.jsx(
2370
- hr,
2371
- {
2372
- currentIndex: c,
2373
- maxIndex: o.length - 1
2374
- }
2375
- ) }),
2376
- /* @__PURE__ */ t.jsx(Fr, {})
2414
+ /* @__PURE__ */ t.jsx(Dr, {})
2377
2415
  ]
2378
2416
  }
2379
2417
  );
2380
- }, $r = () => {
2381
- const { permanentGallery: e } = J(), { aspectRatioStyle: r } = re(), {
2418
+ }, Zr = () => {
2419
+ const { permanentGallery: e } = J(), { aspectRatioStyle: r } = ne(), {
2382
2420
  prevItem: n,
2383
2421
  nextItem: o,
2384
- isShowingDetails: i,
2422
+ isShowingDetails: a,
2385
2423
  resetShownDetails: u,
2386
- extendMode: c,
2387
- disableExtendMode: l,
2388
- isZooming: a,
2389
- resetZoom: w,
2390
- fakeFullScreen: d
2391
- } = q(), m = $(null), f = $(null), z = $(null);
2392
- return Z(() => {
2393
- if (!c)
2424
+ extendMode: l,
2425
+ disableExtendMode: i,
2426
+ isZooming: s,
2427
+ resetZoom: y,
2428
+ fakeFullScreen: c
2429
+ } = q(), m = Z(null), g = Z(null), _ = Z(null);
2430
+ return F(() => {
2431
+ if (!l)
2394
2432
  return;
2395
- const v = m.current, g = f.current, I = z.current;
2396
- if (!v || !g || !I)
2433
+ const w = m.current, x = g.current, E = _.current;
2434
+ if (!w || !x || !E)
2397
2435
  return;
2398
- let x = !1;
2399
- const T = (h) => [v, g, I].includes(h.target), b = (h) => {
2400
- x = T(h);
2401
- }, p = (h) => {
2402
- x && (T(h) && l(), x = !1);
2436
+ let C = !1;
2437
+ const z = (v) => [w, x, E].includes(v.target), f = (v) => {
2438
+ C = z(v);
2439
+ }, p = (v) => {
2440
+ C && (z(v) && i(), C = !1);
2403
2441
  };
2404
- return v.addEventListener("mousedown", b), v.addEventListener("mouseup", p), () => {
2405
- v.removeEventListener("mousedown", b), v.removeEventListener("mouseup", p);
2442
+ return w.addEventListener("mousedown", f), w.addEventListener("mouseup", p), () => {
2443
+ w.removeEventListener("mousedown", f), w.removeEventListener("mouseup", p);
2406
2444
  };
2407
- }, [l, c]), Z(() => {
2408
- const v = (g) => {
2409
- g.key === "Escape" && (a ? w() : i ? u() : l());
2445
+ }, [i, l]), F(() => {
2446
+ const w = (x) => {
2447
+ x.key === "Escape" && (s ? y() : a ? u() : i());
2410
2448
  };
2411
- return addEventListener("keydown", v), () => {
2412
- removeEventListener("keydown", v);
2449
+ return addEventListener("keydown", w), () => {
2450
+ removeEventListener("keydown", w);
2413
2451
  };
2414
2452
  }, [
2415
- l,
2416
2453
  i,
2417
2454
  a,
2455
+ s,
2418
2456
  o,
2419
2457
  n,
2420
2458
  u,
2421
- w
2459
+ y
2422
2460
  ]), /* @__PURE__ */ t.jsxs(
2423
2461
  "div",
2424
2462
  {
2425
2463
  ref: m,
2426
- className: A(
2427
- "relative",
2428
- c && "flex size-full items-center justify-center bg-foreground/75",
2429
- d && "fixed inset-0 z-overlay"
2464
+ className: O(
2465
+ c ? "fixed inset-0 z-overlay" : "relative",
2466
+ l && "flex size-full items-center justify-center bg-foreground/75"
2430
2467
  ),
2431
2468
  children: [
2432
2469
  /* @__PURE__ */ t.jsxs(
2433
2470
  "div",
2434
2471
  {
2435
- ref: f,
2436
- className: c ? "flex size-full flex-col justify-center gap-y-2 small:gap-y-4" : "space-y-2",
2472
+ ref: g,
2473
+ className: l ? "flex size-full flex-col justify-center gap-y-2 small:gap-y-4" : "space-y-2",
2437
2474
  children: [
2438
2475
  /* @__PURE__ */ t.jsx(
2439
2476
  "div",
2440
2477
  {
2441
- ref: z,
2442
- className: A(
2443
- c && "mx-auto flex min-h-0 w-full max-w-[1600px] justify-center"
2478
+ ref: _,
2479
+ className: O(
2480
+ l && "mx-auto flex min-h-0 w-full max-w-[1600px] justify-center"
2444
2481
  ),
2445
2482
  style: r,
2446
- children: /* @__PURE__ */ t.jsx(Dr, { className: A(c && "h-full min-w-0") })
2483
+ children: /* @__PURE__ */ t.jsx(Wr, { className: O(l && "h-full min-w-0") })
2447
2484
  }
2448
2485
  ),
2449
- e && /* @__PURE__ */ t.jsx(_t, { className: A(c && "my-2 shrink-0 small:my-4") })
2486
+ e && /* @__PURE__ */ t.jsx(Nt, { className: O(l && "my-2 shrink-0 small:my-4") })
2450
2487
  ]
2451
2488
  }
2452
2489
  ),
2453
- c && /* @__PURE__ */ t.jsx(
2454
- kt,
2490
+ l && /* @__PURE__ */ t.jsx(
2491
+ bt,
2455
2492
  {
2456
2493
  className: "absolute right-2 top-2 small:right-4 small:top-4",
2457
- onClick: l
2494
+ onClick: i
2458
2495
  }
2459
2496
  )
2460
2497
  ]
@@ -2466,76 +2503,76 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2466
2503
  const { emitEvent: r } = J(), {
2467
2504
  data: n,
2468
2505
  status: o,
2469
- isSuccess: i,
2506
+ isSuccess: a,
2470
2507
  error: u
2471
2508
  } = Gt(e);
2472
- return Z(() => {
2473
- u ? r(st, u) : o === "fetching" ? r(nt, e) : i && r(ot, n);
2474
- }, [n, e, r, u, i, o]), u ? /* @__PURE__ */ t.jsx(Ct, { title: "Failed to fetch composition", error: u }) : i ? /* @__PURE__ */ t.jsx(Kt, { composition: n, children: /* @__PURE__ */ t.jsx(Jt, { children: /* @__PURE__ */ t.jsx($r, {}) }) }) : /* @__PURE__ */ t.jsxs("div", { className: "flex aspect-video size-full flex-col items-center justify-center gap-y-4", children: [
2509
+ return F(() => {
2510
+ u ? r(nt, u) : o === "fetching" ? r(tt, e) : a && r(rt, n);
2511
+ }, [n, e, r, u, a, o]), u ? /* @__PURE__ */ t.jsx(jt, { title: "Failed to fetch composition", error: u }) : a ? /* @__PURE__ */ t.jsx(Kt, { composition: n, children: /* @__PURE__ */ t.jsx(Jt, { children: /* @__PURE__ */ t.jsx(Zr, {}) }) }) : /* @__PURE__ */ t.jsxs("div", { className: "flex aspect-video size-full flex-col items-center justify-center gap-y-4", children: [
2475
2512
  /* @__PURE__ */ t.jsx("div", { className: "text-xl", children: "Loading WebPlayer..." }),
2476
- /* @__PURE__ */ t.jsx(Et, { color: "primary" })
2513
+ /* @__PURE__ */ t.jsx(Ct, { color: "primary" })
2477
2514
  ] });
2478
- }, Wr = ({
2515
+ }, $r = ({
2479
2516
  compositionUrl: e,
2480
- flatten: r = Zt,
2481
- infiniteCarrousel: n = Ft,
2482
- permanentGallery: o = Dt,
2483
- imageLoadStrategy: i = $t,
2517
+ hideCategories: r = At,
2518
+ infiniteCarrousel: n = Dt,
2519
+ permanentGallery: o = Wt,
2520
+ imageLoadStrategy: a = Zt,
2484
2521
  preventFullScreen: u = Yt,
2485
- eventPrefix: c = mt,
2486
- reverse360: l = Wt,
2487
- children: a,
2522
+ eventPrefix: l = dt,
2523
+ reverse360: i = $t,
2524
+ children: s,
2488
2525
  // NOTE: use to customize the player, not to display the content
2489
- ...w
2526
+ ...y
2490
2527
  }) => {
2491
- const d = $(null), [m, f] = D(), [z, v] = D(0.5), [g, I] = D(!1), x = M(
2492
- (p, h) => {
2493
- const k = c + p, L = new CustomEvent(k, { detail: h });
2494
- document.dispatchEvent(L);
2528
+ const c = Z(null), [m, g] = W(0.5), [_, w] = W(!1), x = M(
2529
+ (z, f) => {
2530
+ const p = l + z, v = new CustomEvent(p, { detail: f });
2531
+ document.dispatchEvent(v);
2495
2532
  },
2496
- [c]
2533
+ [l]
2497
2534
  );
2498
- Z(() => {
2499
- if (g) {
2500
- v(1);
2535
+ F(() => {
2536
+ if (_) {
2537
+ g(1);
2501
2538
  return;
2502
2539
  }
2503
- if (!d.current)
2540
+ if (!c.current)
2504
2541
  return;
2505
- const p = d.current, h = () => {
2506
- const k = window.innerWidth, L = getComputedStyle(p), R = p.getBoundingClientRect().width + parseFloat(L.marginLeft) + parseFloat(L.marginRight);
2507
- f(R), v(R / k);
2542
+ const z = c.current, f = () => {
2543
+ const p = window.innerWidth, v = z.clientWidth;
2544
+ g(v / p);
2508
2545
  };
2509
- return h(), addEventListener("resize", h), () => {
2510
- removeEventListener("resize", h);
2546
+ return f(), addEventListener("resize", f), () => {
2547
+ removeEventListener("resize", f);
2511
2548
  };
2512
- }, [g]), Z(() => {
2549
+ }, [_]), F(() => {
2513
2550
  if (u)
2514
2551
  return;
2515
- const p = d.current;
2516
- if (!p)
2552
+ const z = c.current;
2553
+ if (!z)
2517
2554
  throw new Error("Wrapper not found");
2518
- const h = () => {
2519
- const { fullscreenElement: k } = document;
2520
- I(
2521
- k === p || // NOTE: For custom element, the web browser is making the whole custom element full-screen and not only the wrapper
2522
- (k == null ? void 0 : k.localName) === Fe
2555
+ const f = () => {
2556
+ const { fullscreenElement: p } = document;
2557
+ w(
2558
+ p === z || // NOTE: For custom element, the web browser is making the whole custom element full-screen and not only the wrapper
2559
+ p?.localName === Fe
2523
2560
  );
2524
2561
  };
2525
- return document.addEventListener("fullscreenchange", h), () => {
2526
- document.removeEventListener("fullscreenchange", h);
2562
+ return document.addEventListener("fullscreenchange", f), () => {
2563
+ document.removeEventListener("fullscreenchange", f);
2527
2564
  };
2528
2565
  }, [u]);
2529
- const T = M(async () => {
2530
- const p = d.current;
2531
- if (!p)
2566
+ const E = M(async () => {
2567
+ const z = c.current;
2568
+ if (!z)
2532
2569
  throw new Error("Wrapper not found");
2533
2570
  try {
2534
- return await p.requestFullscreen(), !0;
2571
+ return await z.requestFullscreen(), !0;
2535
2572
  } catch {
2536
2573
  return !1;
2537
2574
  }
2538
- }, []), b = M(async () => {
2575
+ }, []), C = M(async () => {
2539
2576
  try {
2540
2577
  return await document.exitFullscreen(), !0;
2541
2578
  } catch {
@@ -2545,49 +2582,45 @@ const Qe = ({ className: e }) => /* @__PURE__ */ t.jsx(U, { className: e, custom
2545
2582
  return /* @__PURE__ */ t.jsx(
2546
2583
  qt,
2547
2584
  {
2548
- ...w,
2549
- reverse360: l,
2550
- imageLoadStrategy: i,
2551
- flatten: r,
2585
+ ...y,
2586
+ reverse360: i,
2587
+ imageLoadStrategy: a,
2588
+ hideCategories: r,
2552
2589
  infiniteCarrousel: n,
2553
2590
  preventFullScreen: u,
2554
2591
  permanentGallery: o,
2555
2592
  emitEvent: x,
2556
- playerInViewportWidthRatio: z,
2557
- isFullScreen: g,
2558
- requestFullscreen: T,
2559
- exitFullscreen: b,
2593
+ playerInViewportWidthRatio: m,
2594
+ isFullScreen: _,
2595
+ requestFullscreen: E,
2596
+ exitFullscreen: C,
2560
2597
  children: /* @__PURE__ */ t.jsxs(ar, { children: [
2561
2598
  /* @__PURE__ */ t.jsx(
2562
2599
  "div",
2563
2600
  {
2564
2601
  id: "cc-webplayer-wrapper",
2565
- ref: d,
2602
+ ref: c,
2566
2603
  className: "select-none text-foreground",
2567
- style: {
2568
- marginInline: "auto",
2569
- maxWidth: m && Math.floor(m)
2570
- },
2571
2604
  children: /* @__PURE__ */ t.jsx(Yr, { compositionUrl: e })
2572
2605
  }
2573
2606
  ),
2574
- a
2607
+ s
2575
2608
  ] })
2576
2609
  }
2577
2610
  );
2578
2611
  }, Ur = ({ name: e, color: r, children: n }) => {
2579
- const { setIconConfig: o, resetIconConfig: i } = $e();
2580
- return Z(() => {
2612
+ const { setIconConfig: o, resetIconConfig: a } = De();
2613
+ return F(() => {
2581
2614
  if (!(!n && !r))
2582
2615
  return o(e, {
2583
2616
  Icon: n,
2584
2617
  color: r
2585
2618
  }), () => {
2586
- i(e);
2619
+ a(e);
2587
2620
  };
2588
- }, [n, r, e, i, o]), null;
2589
- }, Xr = (e) => jt() ? /* @__PURE__ */ t.jsx(Ur, { ...e }) : /* @__PURE__ */ t.jsx("slot", {}), Br = '*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}#cc-webplayer-wrapper{--background: var(--cc-webplayer-background, 0 0% 100%);--foreground: var(--cc-webplayer-foreground, 240 10% 3.9%);--primary: var(--cc-webplayer-primary, 216 100% 52%);--primary-foreground: var( --cc-webplayer-primary-foreground, var(--background) );--neutral: var(--cc-webplayer-neutral, 0 0% 39%);--neutral-foreground: var( --cc-webplayer-neutral-foreground, var(--foreground) );--radius-ui: var(--cc-webplayer-radius-ui, 1rem);--radius-carrousel: var(--cc-webplayer-radius-carrousel, 0);--radius-gallery: var(--cc-webplayer-radius-gallery, 0)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\\!container{width:100%!important}.container{width:100%}@media (min-width: 1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\\!pointer-events-none{pointer-events:none!important}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.fixed{position:fixed}.\\!absolute{position:absolute!important}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-x-1{left:.25rem;right:.25rem}.inset-y-1{top:.25rem;bottom:.25rem}.-bottom-1{bottom:-.25rem}.-left-1{left:-.25rem}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.left-1{left:.25rem}.left-1\\/2{left:50%}.right-1{right:.25rem}.right-2{right:.5rem}.top-0{top:0}.top-1{top:.25rem}.top-1\\/2{top:50%}.top-2{top:.5rem}.-z-10{z-index:-10}.-z-20{z-index:-20}.z-hotspot{z-index:10}.z-overlay{z-index:30}.z-zoomed-image{z-index:20}.col-start-3{grid-column-start:3}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-mt-px{margin-top:-1px}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-1{width:.25rem;height:.25rem}.size-12{width:3rem;height:3rem}.size-20{width:5rem;height:5rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-8{width:2rem;height:2rem}.size-full{width:100%;height:100%}.h-1{height:.25rem}.h-10{height:2.5rem}.h-3\\/4{height:75%}.h-5{height:1.25rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.min-h-0{min-height:0px}.w-12{width:3rem}.w-3\\/5{width:60%}.w-8{width:2rem}.w-\\[calc\\(100\\%\\+1024px\\)\\]{width:calc(100% + 1024px)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-40{max-width:10rem}.max-w-\\[1600px\\]{max-width:1600px}.shrink-0{flex-shrink:0}.origin-top-left{transform-origin:top left}.-translate-x-1\\.5{--tw-translate-x: -.375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\.5{--tw-translate-x: .375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes hotspot-ping{0%{transform:scale(0)}25%{opacity:1}75%,to{transform:scale(1.5);opacity:0}}.animate-hotspot-ping{animation:hotspot-ping 3s cubic-bezier(0,0,.2,1) infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-rotation{animation:rotation 1s linear infinite}.cursor-auto{cursor:auto}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-\\[auto\\,1fr\\,auto\\]{grid-template-columns:auto 1fr auto}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.space-x-0\\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.125rem * var(--tw-space-x-reverse));margin-left:calc(.125rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-scroll{overflow-x:scroll}.text-pretty{text-wrap:pretty}.rounded-carrousel{border-radius:var(--radius-carrousel)}.rounded-full{border-radius:9999px}.rounded-gallery{border-radius:var(--radius-gallery)}.rounded-ui{border-radius:var(--radius-ui)}.rounded-ui-md{border-radius:calc(var(--radius-ui) + .125rem)}.rounded-ui-sm{border-radius:calc(var(--radius-ui) - .125rem)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-background{border-color:hsl(var(--background))}.border-primary{border-color:hsl(var(--primary))}.border-b-transparent{border-bottom-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-background\\/25{background-color:hsl(var(--background) / .25)}.bg-background\\/50{background-color:hsl(var(--background) / .5)}.bg-background\\/60{background-color:hsl(var(--background) / .6)}.bg-foreground\\/25{background-color:hsl(var(--foreground) / .25)}.bg-foreground\\/30{background-color:hsl(var(--foreground) / .3)}.bg-foreground\\/35{background-color:hsl(var(--foreground) / .35)}.bg-foreground\\/40{background-color:hsl(var(--foreground) / .4)}.bg-foreground\\/50{background-color:hsl(var(--foreground) / .5)}.bg-foreground\\/60{background-color:hsl(var(--foreground) / .6)}.bg-foreground\\/65{background-color:hsl(var(--foreground) / .65)}.bg-foreground\\/75{background-color:hsl(var(--foreground) / .75)}.bg-neutral\\/50{background-color:hsl(var(--neutral) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}.bg-primary\\/50{background-color:hsl(var(--primary) / .5)}.bg-transparent{background-color:transparent}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-foreground{--tw-gradient-from: hsl(var(--foreground)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--foreground) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.pl-6{padding-left:1.5rem}.pr-12{padding-right:3rem}.pr-4{padding-right:1rem}.pt-8{padding-top:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-background{color:hsl(var(--background))}.text-background\\/75{color:hsl(var(--background) / .75)}.text-foreground{color:hsl(var(--foreground))}.text-foreground\\/65{color:hsl(var(--foreground) / .65)}.text-neutral-foreground{color:hsl(var(--neutral-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-details{transition-duration:.35s}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}.\\[mask-image\\:linear-gradient\\(to_left\\,transparent_0px\\,black_4px\\,black_calc\\(100\\%-4px\\)\\,transparent_100\\%\\)\\]{-webkit-mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%);mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%)}.\\*\\:pointer-events-auto>*{pointer-events:auto}.\\*\\:snap-start>*{scroll-snap-align:start}.\\*\\:snap-always>*{scroll-snap-stop:always}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:inset-0:after{content:var(--tw-content);top:0;right:0;bottom:0;left:0}.after\\:rounded-gallery:after{content:var(--tw-content);border-radius:var(--radius-gallery)}.after\\:border-2:after{content:var(--tw-content);border-width:2px}.after\\:border-primary:after{content:var(--tw-content);border-color:hsl(var(--primary))}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:opacity-100:after{content:var(--tw-content);opacity:1}.after\\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\\:z-hotspot-hover:hover{z-index:11}.hover\\:bg-foreground\\/25:hover{background-color:hsl(var(--foreground) / .25)}.hover\\:bg-primary\\/25:hover{background-color:hsl(var(--primary) / .25)}.hover\\:bg-primary\\/30:hover{background-color:hsl(var(--primary) / .3)}.hover\\:opacity-80:hover{opacity:.8}.hover\\:after\\:opacity-70:hover:after{content:var(--tw-content);opacity:.7}.disabled\\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\\:pointer-events-auto{pointer-events:auto}.group\\/volume:hover .group-hover\\/volume\\:opacity-100{opacity:1}.group\\/volume:hover .group-hover\\/volume\\:opacity-50{opacity:.5}.group:hover .group-hover\\:opacity-100{opacity:1}@media ((orientation: portrait) and (max-width: 767px)) or ((orientation: landscape) and (max-width: 1023px)){.max-small\\:hidden{display:none}}@media ((orientation: portrait) and (min-width: 768px)) or ((orientation: landscape) and (min-width: 1024px)){.small\\:inset-x-2{left:.5rem;right:.5rem}.small\\:inset-y-2{top:.5rem;bottom:.5rem}.small\\:bottom-2{bottom:.5rem}.small\\:left-2{left:.5rem}.small\\:right-2{right:.5rem}.small\\:right-4{right:1rem}.small\\:top-2{top:.5rem}.small\\:top-4{top:1rem}.small\\:my-4{margin-top:1rem;margin-bottom:1rem}.small\\:hidden{display:none}.small\\:h-12{height:3rem}.small\\:max-w-48{max-width:12rem}.small\\:gap-2{gap:.5rem}.small\\:gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.small\\:gap-y-2{row-gap:.5rem}.small\\:gap-y-4{row-gap:1rem}.small\\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.small\\:p-3{padding:.75rem}.small\\:px-2{padding-left:.5rem;padding-right:.5rem}.small\\:py-1{padding-top:.25rem;padding-bottom:.25rem}.small\\:pl-8{padding-left:2rem}.small\\:pr-6{padding-right:1.5rem}.small\\:text-base{font-size:1rem;line-height:1.5rem}.small\\:text-sm{font-size:.875rem;line-height:1.25rem}.small\\:font-bold{font-weight:700}}@media (min-width: 1280px){.large\\:h-20{height:5rem}.large\\:h-3\\/5{height:60%}.large\\:max-w-56{max-width:14rem}.large\\:gap-4{gap:1rem}.large\\:p-2{padding:.5rem}.large\\:p-4{padding:1rem}.large\\:text-base{font-size:1rem;line-height:1.5rem}.large\\:text-lg{font-size:1.125rem;line-height:1.75rem}}';
2590
- var Mt = { exports: {} }, be = {};
2621
+ }, [n, r, e, a, o]), null;
2622
+ }, Xr = (e) => yt() ? /* @__PURE__ */ t.jsx(Ur, { ...e }) : /* @__PURE__ */ t.jsx("slot", {}), Br = '*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:currentColor}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}#cc-webplayer-wrapper{--background: var(--cc-webplayer-background, 0 0% 100%);--foreground: var(--cc-webplayer-foreground, 240 10% 3.9%);--primary: var(--cc-webplayer-primary, 216 100% 52%);--primary-foreground: var( --cc-webplayer-primary-foreground, var(--background) );--primary-light: var(--cc-webplayer-primary-light, var(--primary));--neutral: var(--cc-webplayer-neutral, 0 0% 39%);--neutral-foreground: var( --cc-webplayer-neutral-foreground, var(--foreground) );--radius-ui: var(--cc-webplayer-radius-ui, 1rem);--radius-carrousel: var(--cc-webplayer-radius-carrousel, 0);--radius-gallery: var(--cc-webplayer-radius-gallery, 0)}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.\\!container{width:100%!important}.container{width:100%}@media (min-width: 1280px){.\\!container{max-width:1280px!important}.container{max-width:1280px}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.\\!pointer-events-none{pointer-events:none!important}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.fixed{position:fixed}.\\!absolute{position:absolute!important}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{left:0;right:0}.inset-x-1{left:.25rem;right:.25rem}.inset-y-1{top:.25rem;bottom:.25rem}.-bottom-1{bottom:-.25rem}.-left-1{left:-.25rem}.-right-1{right:-.25rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-1{bottom:.25rem}.left-0{left:0}.left-1{left:.25rem}.left-1\\/2{left:50%}.right-1{right:.25rem}.right-2{right:.5rem}.top-0{top:0}.top-1{top:.25rem}.top-1\\/2{top:50%}.top-2{top:.5rem}.-z-10{z-index:-10}.-z-20{z-index:-20}.z-1{z-index:1}.z-hotspot{z-index:10}.z-overlay{z-index:30}.z-zoomed-image{z-index:20}.col-start-3{grid-column-start:3}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.-ml-px{margin-left:-1px}.-mt-px{margin-top:-1px}.inline-block{display:inline-block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-1{width:.25rem;height:.25rem}.size-12{width:3rem;height:3rem}.size-20{width:5rem;height:5rem}.size-4{width:1rem;height:1rem}.size-5{width:1.25rem;height:1.25rem}.size-8{width:2rem;height:2rem}.size-full{width:100%;height:100%}.h-1{height:.25rem}.h-10{height:2.5rem}.h-3\\/4{height:75%}.h-5{height:1.25rem}.h-8{height:2rem}.h-full{height:100%}.h-px{height:1px}.min-h-0{min-height:0px}.w-12{width:3rem}.w-3\\/5{width:60%}.w-8{width:2rem}.w-\\[calc\\(100\\%\\+1024px\\)\\]{width:calc(100% + 1024px)}.w-\\[calc\\(100\\%\\+2px\\)\\]{width:calc(100% + 2px)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.max-w-40{max-width:10rem}.max-w-\\[1600px\\]{max-width:1600px}.shrink-0{flex-shrink:0}.origin-top-left{transform-origin:top left}.-translate-x-1\\.5{--tw-translate-x: -.375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-1\\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-1\\.5{--tw-translate-x: .375rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-full{--tw-translate-x: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-100{--tw-scale-x: 1;--tw-scale-y: 1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes hotspot-ping{0%{transform:scale(0)}25%{opacity:1}75%,to{transform:scale(1.5);opacity:0}}.animate-hotspot-ping{animation:hotspot-ping 3s cubic-bezier(0,0,.2,1) infinite}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-rotation{animation:rotation 1s linear infinite}.cursor-auto{cursor:auto}.cursor-ew-resize{cursor:ew-resize}.cursor-grab{cursor:grab}.cursor-grabbing{cursor:grabbing}.cursor-help{cursor:help}.cursor-move{cursor:move}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-\\[auto\\,1fr\\,auto\\]{grid-template-columns:auto 1fr auto}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-x-1{-moz-column-gap:.25rem;column-gap:.25rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.gap-y-2{row-gap:.5rem}.gap-y-4{row-gap:1rem}.space-x-0\\.5>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.125rem * var(--tw-space-x-reverse));margin-left:calc(.125rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0\\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-scroll{overflow-x:scroll}.text-pretty{text-wrap:pretty}.rounded-carrousel{border-radius:var(--radius-carrousel)}.rounded-full{border-radius:9999px}.rounded-gallery{border-radius:var(--radius-gallery)}.rounded-ui{border-radius:var(--radius-ui)}.rounded-ui-md{border-radius:calc(var(--radius-ui) + .125rem)}.rounded-ui-sm{border-radius:calc(var(--radius-ui) - .125rem)}.rounded-b-none{border-bottom-right-radius:0;border-bottom-left-radius:0}.rounded-t-none{border-top-left-radius:0;border-top-right-radius:0}.border{border-width:1px}.border-2{border-width:2px}.border-4{border-width:4px}.border-background{border-color:hsl(var(--background))}.border-primary{border-color:hsl(var(--primary))}.border-b-transparent{border-bottom-color:transparent}.bg-background{background-color:hsl(var(--background))}.bg-background\\/25{background-color:hsl(var(--background) / .25)}.bg-background\\/50{background-color:hsl(var(--background) / .5)}.bg-background\\/60{background-color:hsl(var(--background) / .6)}.bg-foreground\\/25{background-color:hsl(var(--foreground) / .25)}.bg-foreground\\/30{background-color:hsl(var(--foreground) / .3)}.bg-foreground\\/35{background-color:hsl(var(--foreground) / .35)}.bg-foreground\\/40{background-color:hsl(var(--foreground) / .4)}.bg-foreground\\/50{background-color:hsl(var(--foreground) / .5)}.bg-foreground\\/60{background-color:hsl(var(--foreground) / .6)}.bg-foreground\\/65{background-color:hsl(var(--foreground) / .65)}.bg-foreground\\/75{background-color:hsl(var(--foreground) / .75)}.bg-neutral\\/50{background-color:hsl(var(--neutral) / .5)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary-foreground{background-color:hsl(var(--primary-foreground))}.bg-primary\\/50{background-color:hsl(var(--primary) / .5)}.bg-transparent{background-color:transparent}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-foreground{--tw-gradient-from: hsl(var(--foreground)) var(--tw-gradient-from-position);--tw-gradient-to: hsl(var(--foreground) / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.to-transparent{--tw-gradient-to: transparent var(--tw-gradient-to-position)}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-4{padding:1rem}.px-1\\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.py-0\\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.pl-6{padding-left:1.5rem}.pr-12{padding-right:3rem}.pr-4{padding-right:1rem}.pt-8{padding-top:2rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.text-background{color:hsl(var(--background))}.text-background\\/75{color:hsl(var(--background) / .75)}.text-foreground{color:hsl(var(--foreground))}.text-foreground\\/65{color:hsl(var(--foreground) / .65)}.text-neutral-foreground{color:hsl(var(--neutral-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-primary-light{color:hsl(var(--primary-light))}.opacity-0{opacity:0}.opacity-100{opacity:1}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\\[width\\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-radius{transition-property:border-radius;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-details{transition-duration:.35s}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}.\\[mask-image\\:linear-gradient\\(to_left\\,transparent_0px\\,black_4px\\,black_calc\\(100\\%-4px\\)\\,transparent_100\\%\\)\\]{-webkit-mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%);mask-image:linear-gradient(to left,transparent 0px,black 4px,black calc(100% - 4px),transparent 100%)}.\\*\\:pointer-events-auto>*{pointer-events:auto}.\\*\\:snap-start>*{scroll-snap-align:start}.\\*\\:snap-always>*{scroll-snap-stop:always}.after\\:absolute:after{content:var(--tw-content);position:absolute}.after\\:inset-0:after{content:var(--tw-content);inset:0}.after\\:rounded-gallery:after{content:var(--tw-content);border-radius:var(--radius-gallery)}.after\\:border-2:after{content:var(--tw-content);border-width:2px}.after\\:border-primary:after{content:var(--tw-content);border-color:hsl(var(--primary))}.after\\:opacity-0:after{content:var(--tw-content);opacity:0}.after\\:opacity-100:after{content:var(--tw-content);opacity:1}.after\\:transition-all:after{content:var(--tw-content);transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.hover\\:z-hotspot-hover:hover{z-index:11}.hover\\:bg-foreground\\/25:hover{background-color:hsl(var(--foreground) / .25)}.hover\\:bg-primary\\/25:hover{background-color:hsl(var(--primary) / .25)}.hover\\:bg-primary\\/30:hover{background-color:hsl(var(--primary) / .3)}.hover\\:opacity-80:hover{opacity:.8}.hover\\:after\\:opacity-70:hover:after{content:var(--tw-content);opacity:.7}.disabled\\:opacity-60:disabled{opacity:.6}.group:hover .group-hover\\:pointer-events-auto{pointer-events:auto}.group\\/volume:hover .group-hover\\/volume\\:opacity-100{opacity:1}.group\\/volume:hover .group-hover\\/volume\\:opacity-50{opacity:.5}.group:hover .group-hover\\:opacity-100{opacity:1}@media ((orientation: portrait) and (max-width: 767px)) or ((orientation: landscape) and (max-width: 1023px)){.max-small\\:hidden{display:none}}@media ((orientation: portrait) and (min-width: 768px)) or ((orientation: landscape) and (min-width: 1024px)){.small\\:inset-x-2{left:.5rem;right:.5rem}.small\\:inset-y-2{top:.5rem;bottom:.5rem}.small\\:bottom-2{bottom:.5rem}.small\\:left-2{left:.5rem}.small\\:right-2{right:.5rem}.small\\:right-4{right:1rem}.small\\:top-2{top:.5rem}.small\\:top-4{top:1rem}.small\\:my-4{margin-top:1rem;margin-bottom:1rem}.small\\:hidden{display:none}.small\\:h-12{height:3rem}.small\\:max-w-48{max-width:12rem}.small\\:gap-2{gap:.5rem}.small\\:gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.small\\:gap-y-2{row-gap:.5rem}.small\\:gap-y-4{row-gap:1rem}.small\\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.small\\:p-3{padding:.75rem}.small\\:px-2{padding-left:.5rem;padding-right:.5rem}.small\\:py-1{padding-top:.25rem;padding-bottom:.25rem}.small\\:pl-8{padding-left:2rem}.small\\:pr-6{padding-right:1.5rem}.small\\:text-base{font-size:1rem;line-height:1.5rem}.small\\:text-sm{font-size:.875rem;line-height:1.25rem}.small\\:font-bold{font-weight:700}}@media (min-width: 1280px){.large\\:h-20{height:5rem}.large\\:h-3\\/5{height:60%}.large\\:max-w-56{max-width:14rem}.large\\:gap-4{gap:1rem}.large\\:p-2{padding:.5rem}.large\\:p-4{padding:1rem}.large\\:text-base{font-size:1rem;line-height:1.5rem}.large\\:text-lg{font-size:1.125rem;line-height:1.75rem}}';
2623
+ var zt = { exports: {} }, we = {};
2591
2624
  /**
2592
2625
  * @license React
2593
2626
  * react-jsx-runtime.production.min.js
@@ -2597,22 +2630,22 @@ var Mt = { exports: {} }, be = {};
2597
2630
  * This source code is licensed under the MIT license found in the
2598
2631
  * LICENSE file in the root directory of this source tree.
2599
2632
  */
2600
- var et;
2633
+ var Je;
2601
2634
  function Gr() {
2602
- if (et) return be;
2603
- et = 1;
2604
- var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, i = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
2605
- function c(l, a, w) {
2606
- var d, m = {}, f = null, z = null;
2607
- w !== void 0 && (f = "" + w), a.key !== void 0 && (f = "" + a.key), a.ref !== void 0 && (z = a.ref);
2608
- for (d in a) o.call(a, d) && !u.hasOwnProperty(d) && (m[d] = a[d]);
2609
- if (l && l.defaultProps) for (d in a = l.defaultProps, a) m[d] === void 0 && (m[d] = a[d]);
2610
- return { $$typeof: r, type: l, key: f, ref: z, props: m, _owner: i.current };
2635
+ if (Je) return we;
2636
+ Je = 1;
2637
+ var e = ye, r = Symbol.for("react.element"), n = Symbol.for("react.fragment"), o = Object.prototype.hasOwnProperty, a = e.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner, u = { key: !0, ref: !0, __self: !0, __source: !0 };
2638
+ function l(i, s, y) {
2639
+ var c, m = {}, g = null, _ = null;
2640
+ y !== void 0 && (g = "" + y), s.key !== void 0 && (g = "" + s.key), s.ref !== void 0 && (_ = s.ref);
2641
+ for (c in s) o.call(s, c) && !u.hasOwnProperty(c) && (m[c] = s[c]);
2642
+ if (i && i.defaultProps) for (c in s = i.defaultProps, s) m[c] === void 0 && (m[c] = s[c]);
2643
+ return { $$typeof: r, type: i, key: g, ref: _, props: m, _owner: a.current };
2611
2644
  }
2612
- return be.Fragment = n, be.jsx = c, be.jsxs = c, be;
2645
+ return we.Fragment = n, we.jsx = l, we.jsxs = l, we;
2613
2646
  }
2614
- Mt.exports = Gr();
2615
- var Ce = Mt.exports, Kr = Object.defineProperty, qr = (e, r, n) => r in e ? Kr(e, r, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[r] = n, Ee = (e, r, n) => (qr(e, typeof r != "symbol" ? r + "" : r, n), n);
2647
+ zt.exports = Gr();
2648
+ var je = zt.exports, Kr = Object.defineProperty, qr = (e, r, n) => r in e ? Kr(e, r, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[r] = n, Ce = (e, r, n) => (qr(e, typeof r != "symbol" ? r + "" : r, n), n);
2616
2649
  const Jr = {
2617
2650
  stringify: (e) => e,
2618
2651
  parse: (e) => e
@@ -2636,7 +2669,7 @@ const Jr = {
2636
2669
  }, rn = {
2637
2670
  stringify: (e) => JSON.stringify(e),
2638
2671
  parse: (e) => JSON.parse(e)
2639
- }, Ae = {
2672
+ }, Re = {
2640
2673
  string: Jr,
2641
2674
  number: Qr,
2642
2675
  boolean: en,
@@ -2649,71 +2682,71 @@ function nn(e) {
2649
2682
  (r, n, o) => `${n}-${o.toLowerCase()}`
2650
2683
  );
2651
2684
  }
2652
- const Ne = Symbol.for("r2wc.render"), Le = Symbol.for("r2wc.connected"), oe = Symbol.for("r2wc.context"), ee = Symbol.for("r2wc.props");
2685
+ const ke = Symbol.for("r2wc.render"), Ee = Symbol.for("r2wc.connected"), se = Symbol.for("r2wc.context"), te = Symbol.for("r2wc.props");
2653
2686
  function on(e, r, n) {
2654
- var o, i, u;
2687
+ var o, a, u;
2655
2688
  r.props || (r.props = e.propTypes ? Object.keys(e.propTypes) : []);
2656
- const c = Array.isArray(r.props) ? r.props.slice() : Object.keys(r.props), l = {}, a = {}, w = {};
2657
- for (const m of c) {
2658
- l[m] = Array.isArray(r.props) ? "string" : r.props[m];
2659
- const f = nn(m);
2660
- a[m] = f, w[f] = m;
2689
+ const l = Array.isArray(r.props) ? r.props.slice() : Object.keys(r.props), i = {}, s = {}, y = {};
2690
+ for (const m of l) {
2691
+ i[m] = Array.isArray(r.props) ? "string" : r.props[m];
2692
+ const g = nn(m);
2693
+ s[m] = g, y[g] = m;
2661
2694
  }
2662
- class d extends HTMLElement {
2695
+ class c extends HTMLElement {
2663
2696
  constructor() {
2664
- super(), Ee(this, o, !0), Ee(this, i), Ee(this, u, {}), Ee(this, "container"), r.shadow ? this.container = this.attachShadow({
2697
+ super(), Ce(this, o, !0), Ce(this, a), Ce(this, u, {}), Ce(this, "container"), r.shadow ? this.container = this.attachShadow({
2665
2698
  mode: r.shadow
2666
- }) : this.container = this, this[ee].container = this.container;
2667
- for (const f of c) {
2668
- const z = a[f], v = this.getAttribute(z), g = l[f], I = g ? Ae[g] : null;
2669
- I != null && I.parse && v && (this[ee][f] = I.parse(v, z, this));
2699
+ }) : this.container = this, this[te].container = this.container;
2700
+ for (const g of l) {
2701
+ const _ = s[g], w = this.getAttribute(_), x = i[g], E = x ? Re[x] : null;
2702
+ E != null && E.parse && w && (this[te][g] = E.parse(w, _, this));
2670
2703
  }
2671
2704
  }
2672
2705
  static get observedAttributes() {
2673
- return Object.keys(w);
2706
+ return Object.keys(y);
2674
2707
  }
2675
2708
  connectedCallback() {
2676
- this[Le] = !0, this[Ne]();
2709
+ this[Ee] = !0, this[ke]();
2677
2710
  }
2678
2711
  disconnectedCallback() {
2679
- this[Le] = !1, this[oe] && n.unmount(this[oe]), delete this[oe];
2712
+ this[Ee] = !1, this[se] && n.unmount(this[se]), delete this[se];
2680
2713
  }
2681
- attributeChangedCallback(f, z, v) {
2682
- const g = w[f], I = l[g], x = I ? Ae[I] : null;
2683
- g in l && x != null && x.parse && v && (this[ee][g] = x.parse(v, f, this), this[Ne]());
2714
+ attributeChangedCallback(g, _, w) {
2715
+ const x = y[g], E = i[x], C = E ? Re[E] : null;
2716
+ x in i && C != null && C.parse && w && (this[te][x] = C.parse(w, g, this), this[ke]());
2684
2717
  }
2685
- [(o = Le, i = oe, u = ee, Ne)]() {
2686
- this[Le] && (this[oe] ? n.update(this[oe], this[ee]) : this[oe] = n.mount(
2718
+ [(o = Ee, a = se, u = te, ke)]() {
2719
+ this[Ee] && (this[se] ? n.update(this[se], this[te]) : this[se] = n.mount(
2687
2720
  this.container,
2688
2721
  e,
2689
- this[ee]
2722
+ this[te]
2690
2723
  ));
2691
2724
  }
2692
2725
  }
2693
- for (const m of c) {
2694
- const f = a[m], z = l[m];
2695
- Object.defineProperty(d.prototype, m, {
2726
+ for (const m of l) {
2727
+ const g = s[m], _ = i[m];
2728
+ Object.defineProperty(c.prototype, m, {
2696
2729
  enumerable: !0,
2697
2730
  configurable: !0,
2698
2731
  get() {
2699
- return this[ee][m];
2732
+ return this[te][m];
2700
2733
  },
2701
- set(v) {
2702
- this[ee][m] = v;
2703
- const g = z ? Ae[z] : null;
2704
- if (g != null && g.stringify) {
2705
- const I = g.stringify(v, f, this);
2706
- this.getAttribute(f) !== I && this.setAttribute(f, I);
2734
+ set(w) {
2735
+ this[te][m] = w;
2736
+ const x = _ ? Re[_] : null;
2737
+ if (x != null && x.stringify) {
2738
+ const E = x.stringify(w, g, this);
2739
+ this.getAttribute(g) !== E && this.setAttribute(g, E);
2707
2740
  } else
2708
- this[Ne]();
2741
+ this[ke]();
2709
2742
  }
2710
2743
  });
2711
2744
  }
2712
- return d;
2745
+ return c;
2713
2746
  }
2714
2747
  function sn(e, r, n) {
2715
- const o = Pt(e), i = ye.createElement(r, n);
2716
- return o.render(i), {
2748
+ const o = Pt(e), a = ye.createElement(r, n);
2749
+ return o.render(a), {
2717
2750
  root: o,
2718
2751
  ReactComponent: r
2719
2752
  };
@@ -2725,7 +2758,7 @@ function an({ root: e, ReactComponent: r }, n) {
2725
2758
  function ln({ root: e }) {
2726
2759
  e.unmount();
2727
2760
  }
2728
- function Tt(e, r = {}) {
2761
+ function It(e, r = {}) {
2729
2762
  return on(e, r, { mount: sn, update: an, unmount: ln });
2730
2763
  }
2731
2764
  function cn(e) {
@@ -2740,14 +2773,14 @@ function dn(e) {
2740
2773
  r[cn(n)] = o.toString();
2741
2774
  }), r;
2742
2775
  }
2743
- const un = (e) => /* @__PURE__ */ Ce.jsxs(Ce.Fragment, { children: [
2744
- /* @__PURE__ */ Ce.jsx("style", { children: Br }),
2745
- /* @__PURE__ */ Ce.jsx(Wr, { ...e })
2746
- ] }), mn = Tt(un, {
2776
+ const un = (e) => /* @__PURE__ */ je.jsxs(je.Fragment, { children: [
2777
+ /* @__PURE__ */ je.jsx("style", { children: Br }),
2778
+ /* @__PURE__ */ je.jsx($r, { ...e })
2779
+ ] }), mn = It(un, {
2747
2780
  shadow: "open",
2748
2781
  props: {
2749
2782
  compositionUrl: "string",
2750
- flatten: "boolean",
2783
+ hideCategories: "boolean",
2751
2784
  infiniteCarrousel: "boolean",
2752
2785
  permanentGallery: "boolean",
2753
2786
  minImageWidth: "number",
@@ -2757,86 +2790,87 @@ const un = (e) => /* @__PURE__ */ Ce.jsxs(Ce.Fragment, { children: [
2757
2790
  eventPrefix: "string",
2758
2791
  reverse360: "boolean"
2759
2792
  }
2760
- }), pn = (e) => dn(e), hn = Tt(Xr, {
2793
+ }), pn = (e) => dn(e), hn = It(Xr, {
2761
2794
  shadow: "closed",
2762
2795
  props: {
2763
2796
  name: "string",
2764
2797
  color: "string"
2765
2798
  }
2766
2799
  });
2767
- function fn() {
2768
- return !!customElements.get(Fe) && !!customElements.get(De);
2769
- }
2770
2800
  function gn() {
2771
- customElements.define(Fe, mn), customElements.define(De, hn);
2801
+ return !!customElements.get(Fe) && !!customElements.get(Ae);
2802
+ }
2803
+ function fn() {
2804
+ customElements.define(Fe, mn), customElements.define(Ae, hn);
2772
2805
  }
2773
- function Vt() {
2774
- fn() || gn();
2806
+ function Mt() {
2807
+ gn() || fn();
2775
2808
  }
2776
- Vt();
2777
- const wn = ({
2809
+ Mt();
2810
+ const yn = ({
2778
2811
  onCompositionLoading: e,
2779
2812
  onCompositionLoaded: r,
2780
2813
  onCompositionLoadError: n,
2781
2814
  onExtendModeOn: o,
2782
- onExtendModeOff: i,
2815
+ onExtendModeOff: a,
2783
2816
  onHotspotsOn: u,
2784
- onHotspotsOff: c,
2785
- onGalleryOpen: l,
2786
- onGalleryClose: a,
2787
- ...w
2817
+ onHotspotsOff: l,
2818
+ onGalleryOpen: i,
2819
+ onGalleryClose: s,
2820
+ ...y
2788
2821
  }) => {
2789
- const d = pn(w);
2790
- return Z(() => {
2791
- const m = w.eventPrefix ?? mt, f = (g) => `${m}${g}`, z = {
2792
- [nt]: e,
2793
- [ot]: r,
2794
- [st]: n,
2795
- [at]: o,
2796
- [it]: i,
2797
- [lt]: u,
2798
- [ct]: c,
2799
- [dt]: l,
2800
- [ut]: a
2801
- }, v = /* @__PURE__ */ new Map();
2802
- return Object.entries(z).forEach(([g, I]) => {
2803
- if (!I)
2822
+ const c = pn(y);
2823
+ return F(() => {
2824
+ const m = y.eventPrefix ?? dt, g = (x) => `${m}${x}`, _ = {
2825
+ [tt]: e,
2826
+ [rt]: r,
2827
+ [nt]: n,
2828
+ [ot]: o,
2829
+ [st]: a,
2830
+ [at]: u,
2831
+ [it]: l,
2832
+ [lt]: i,
2833
+ [ct]: s
2834
+ }, w = /* @__PURE__ */ new Map();
2835
+ return Object.entries(_).forEach(([x, E]) => {
2836
+ if (!E)
2804
2837
  return;
2805
- const x = f(g), T = (b) => I(b.detail);
2806
- v.set(x, T), document.addEventListener(x, T);
2838
+ const C = g(x), z = (f) => E(f.detail);
2839
+ w.set(C, z), document.addEventListener(C, z);
2807
2840
  }), () => {
2808
- v.forEach((g, I) => {
2809
- document.removeEventListener(I, g);
2841
+ w.forEach((x, E) => {
2842
+ document.removeEventListener(E, x);
2810
2843
  });
2811
2844
  };
2812
2845
  }, [
2813
- w.eventPrefix,
2846
+ y.eventPrefix,
2814
2847
  e,
2815
2848
  r,
2816
2849
  n,
2817
2850
  o,
2818
- i,
2851
+ a,
2819
2852
  u,
2820
- c,
2821
2853
  l,
2822
- a
2823
- ]), /* @__PURE__ */ rt.jsx("cc-webplayer", { ...d });
2854
+ i,
2855
+ s
2856
+ ]), /* @__PURE__ */ et.jsx("cc-webplayer", { ...c });
2824
2857
  };
2825
- Vt();
2826
- const bn = ({ name: e, color: r }) => /* @__PURE__ */ rt.jsx("cc-webplayer-icon", { name: e, color: r });
2858
+ Mt();
2859
+ const bn = ({ name: e, color: r }) => /* @__PURE__ */ et.jsx("cc-webplayer-icon", { name: e, color: r });
2827
2860
  export {
2828
- mt as DEFAULT_EVENT_PREFIX,
2829
- ot as EVENT_COMPOSITION_LOADED,
2830
- nt as EVENT_COMPOSITION_LOADING,
2831
- st as EVENT_COMPOSITION_LOAD_ERROR,
2832
- it as EVENT_EXTEND_MODE_OFF,
2833
- at as EVENT_EXTEND_MODE_ON,
2834
- ut as EVENT_GALLERY_CLOSE,
2835
- dt as EVENT_GALLERY_OPEN,
2836
- ct as EVENT_HOTSPOTS_OFF,
2837
- lt as EVENT_HOTSPOTS_ON,
2838
- De as WEB_PLAYER_ICON_WC_TAG,
2861
+ dt as DEFAULT_EVENT_PREFIX,
2862
+ rt as EVENT_COMPOSITION_LOADED,
2863
+ tt as EVENT_COMPOSITION_LOADING,
2864
+ nt as EVENT_COMPOSITION_LOAD_ERROR,
2865
+ st as EVENT_EXTEND_MODE_OFF,
2866
+ ot as EVENT_EXTEND_MODE_ON,
2867
+ ct as EVENT_GALLERY_CLOSE,
2868
+ lt as EVENT_GALLERY_OPEN,
2869
+ it as EVENT_HOTSPOTS_OFF,
2870
+ at as EVENT_HOTSPOTS_ON,
2871
+ Ae as WEB_PLAYER_ICON_WC_TAG,
2839
2872
  Fe as WEB_PLAYER_WC_TAG,
2840
- wn as WebPlayer,
2841
- bn as WebPlayerIcon
2873
+ yn as WebPlayer,
2874
+ bn as WebPlayerIcon,
2875
+ wn as generateCompositionUrl
2842
2876
  };